Umělá inteligence

Transkript

Umělá inteligence
Expertní Systémy
Umělá inteligence
Věda, jejímž úkolem je naučit stroje, aby dělaly věci, které vyžadují
inteligenci, jsou-li prováděny člověkem.
Marvin Minsky
1950 Alan Turing: Computing Machinery and Intelligence.
Mind 59, 1950, s.433-460
Turingův test: úkolem stroje je v komunikaci s experimentátorem
předstírat, že je člověk.
od roku 1991 Loebnerova cena pro program, který nejlépe uspěje v
redukované podobě Turingova testu
www.loebner.net/Prizef/loebner-prize.html
Petr Berka, 2004
1
Expertní Systémy
ELIZA
1965, J. Weizenbaum, imitace chování psychiatra
pacient: Ahoj.
Eliza: AHOJ, JAK SE CÍTÍŠ ?
pacient: Cítím se strašně.
Eliza: CO TÍM PŘESNĚ MYSLÍŠ ?
pacient: Jsem v depresi.
Eliza: PROČ SI MYSLÍŠ, ŽE JSI V DEPRESI.
pacient: Protože je mi smutno.
Eliza: ŽIJEŠ S RODINOU ?
pacient: Ne.
Eliza: MÁŠ PŘÁTELE ?
pacient: Celkem ne.
Eliza: PROČ ?
pacient: Nevím.
Eliza: OPRAVDU NEVÍŠ NEBO SE JEN VYHÝBÁŠ ODPOVĚDI ?
pacient: Dřív jsem přátele měl.
Eliza: KDY ?
pacient: Než jsem se oženil.
Eliza: NEŘEKL JSI MI, ŽE SES OŽENIL.
pacient: Už jsem se zase rozvedl.
Eliza: POVĚZ MI O SVÉM ROZVODU.
. . .
Petr Berka, 2004
2
Expertní Systémy
Směry umělé inteligence
• psychologický
• inženýrský
Oblasti
•
•
•
•
hraní her
dokazování teorémů
obecné řešení úloh
percepce
• řeč
• vidění
• porozumění přirozenému jazyku
• tvorba expertních systémů
• strojové učení
Etapy
• 50.-60. léta: hledání univerzálního řešícího postupu
• 70.-90. léta: otázka reprezentace znalostí
• 90.- léta: učení a adaptace, komunikace
Klasická vs. nová umělá inteligence
je pro inteligenci důležitá reprezentace znalostí a usuzování ?
Petr Berka, 2004
3
Expertní Systémy
Mezníky v historii AI
rok
1943
1950
1956
1957
1958
1965
1968
1969
1970
1971
1973
1975
1976
1977
1978
1979
1981
1982
1983
1984
událost
model neuronu; McCulloch, Pitts
Turingův test; Turing
Dartmouthská konference; Minsky, McCarthy, Simon, Newell
Perceptron; Rosenblatt
GPS (General Problem Solver); Newell, Simon, Shaw
formální gramatiky; Chomsky
LISP; McCarthy
DENDRAL; Feigenbaum, Buchanan
fuzzy logika; Zadeh
rezoluční princip; Robinson
sémantické sítě; Quillian
SHRDLU; Winograd
kniha Perceptrons; Minsky, Papert
PROLOG; Colmerauer, Roussell
HEARSAY I ; Lesser
MYCIN; Shortliffe, Buchanan
rámce; Minsky
Dempster-Shaferova teorie; Dempster, Shafer
PROSPECTOR; Duda, Hart
OPS; Forgy
R1/XCON; McDermott
ReTe algoritmus; Forgy
japonský projekt počítačů páté generace
Hopfieldova neuronová síť; Hopfield
KEE; IntelliCorp
CyC; Lenat
Petr Berka, 2004
4
Expertní Systémy
Meze klasické umělé inteligence
Churchova teze: Použitelnost počítačů je omezena na ty činnosti,
které lze přesně popsat v přirozeném resp. umělém jazyce (algoritmu).
Godelova věta o úplnosti: Formule je logicky platná v teorii T právě
když je dokazatelná v teorii T.
Věta o rozhodnutelnosti: Pro každou formuli v teorii T lze algoritmicky rozhodnout, zda formule je nebo není dokazatelná.
• Výrokový počet je úplný a rozhodnutelný.
• Predikátový počet je úplný ale nerozhodnutelný.
Petr Berka, 2004
5
Expertní Systémy
Práce se znalostmi
• polovina 70. let - expertní systémy v té době mělo získávání
znalostí podobu transferu znalostí
• přelom 80. a 90. let - získávání znalostí jako modelování
znalostí = tvorba přehledných a opakovaně použitelných modelů
dané úlohy metodika CommonKADS
• současnost - ontologie = domluvená terminologie pro určitou aplikační oblast, která umožňuje sdílení znalostí z této oblasti:
– generické ontologie - zachycují obecné zákonitosti platící napříč
různými aplikačními oblastmi (projekt CyC, Lenat, 1990)
– doménové ontologie - jejich předmětem je určitá specifická
věcná oblast (Enterprise Ontology)
projekt Semantic Web zaměřený na přidání sémantiky k webovým
stránkám (v podobě metadat)
Petr Berka, 2004
6
Expertní Systémy
Práce s neurčitostí
• polovina 70. let - ad hoc přístupy v expertních systémech
• později - využití propracovaných teorií:
– teorie pravděpodobnosti (17. století) - v umělé inteligenci
např. bayesovské sítě,
– fuzzy teorie
– teorie možnosti (possibility theory)
• v současné umělé inteligenci oblast nazývaná soft computing
= označení pro metody, které umožňují rychle nalézat řešení (byť
ne zcela optimální) vágně a neúplně popsaných problémů (Zadeh,
1995):
– fuzzy logika
– neuronové sítě
– genetické algoritmy
– pravděpodobnostní metody
– teorie chaosu
Petr Berka, 2004
7
Expertní Systémy
Učení a adaptace
• 50 a 60. léta - učení a adaptace v kybernetice (teorii řízení) v
umělé inteligenci neuronové sítě
• 80. léta - oblast strojového učení = vývoj algoritmů pro automatizované získáváné znalostí z dat (rozhodovací stromy a pravidla,
neuronové sítě, genetické algoritmy, případové usuzování . . .)
• 90. léta - dobývání znalostí z databází = netriviální extrakce
implicitních, dříve neznámých a potenciálně užitečných informací
z dat (Fayyad a kol. 1996)
• v současnosti snahy vybavit učící se systémy rysy adaptivity:
– inkrementální učení (průběžné doučování na základě nových
dat),
– učení a zapomínání (schopnost rozpoznat změnu konceptu a
této změně se přizpůsobit),
– integrace znalostí (schopnost kombinovat více zdrojů znalostí),
– meta-učení (schopnost kombinovat více modelů znalostí v průběhu rozhodování),
– revize znalostí (schopnost aktualizovat používané znalosti),
– využívání analogií.
Petr Berka, 2004
8
Expertní Systémy
Komunikace a kooperace
• pol. 80. let – komunikace jako jeden z principů umělé inteligence (Minski,
Society of Mind, 1986)
– ”nová” umělá inteligence jako inteligence bez reprezentace znalostí a bez uvažování, vznikající ze vzájemné interakce jednoduchých, takzvaných reaktivních agentů (Brooks, 1991).
• v současné klasické” umělé inteligenci distribuovaná umělá inteligence a multiagentní systémy.
Racionální agent (agent schopný se rozhodnout o následné akci co
nejoptimálnějším způsobem) je charakterizován:
– autonomností (schopnost nezávisle pracovat),
– reaktivitou (schopnost průběžně reagovat na změny prostředí),
– intencionalitou (schopnost uvažovat o svých dlouhodobých cílech),
– sociální inteligencí (schopnost komunikovat s ostatními agenty).
Petr Berka, 2004
9
Expertní Systémy
Hanojská věž
zadání [111]
[112]
[113]
. . .
řešení [333]
Petr Berka, 2004
10
Expertní Systémy
Stavový prostor
1.
2.
3.
4.
množina stavů S = {s}
množina přechodů mezi stavy Φ = {φ}
počáteční stav s0
množina koncových stavů G = {g}
Petr Berka, 2004
11
Expertní Systémy
Prohledávání stavového prostoru
Nalezení cesty z počátečního stavu do některého z koncových
stavů
1. slepé - úplné prohledávání nevyužívající žádné dodatečné
informace
• do šířky
• do hloubky
2. heuristické - úplné nebo částečné prohledávání využívající
hodnocení zvolené cesty,
• paprskové (beam search)
• gradientní (hill-climbing)
• uspořádané (best-first)
• A*
3. náhodné
Petr Berka, 2004
12
Expertní Systémy
Prohledávání do šířky
Při tomto způsobu prohledávání máme jistotu, že vždy nalezneme
koncový stav, musíme ale projít značně velký počet uzlů (procházíme
všechny uzly, které mají hloubku menší, než je hloubka koncového
uzlu). Každý uzel v grafu navštívíme nejvýše jednou.
Petr Berka, 2004
13
Expertní Systémy
Algoritmus prohledávání do šířky
NEROZVIN := poč. stav
'
?
NEROZVIN
+ prázdný ?
&
-
$
%
?
přesuň první uzel z NEROZVIN
(označ N) do ROZVIN
?
rozviň N, všechny následníky
ulož do NEROZVIN na konec
'
?
$
některý uzel
+ z NEROZVIN je cíl ?
&
%
Petr Berka, 2004
14
Expertní Systémy
Prohledávání do hloubky
Tento způsob prohledávání může vést k cíli mnohem rychleji, než
prohledávání do šířky (zvláště když se vydáme správným směrem),
ale nemáme zaručeno (v případě nekonečné větve), že vždy nalezneme
koncový stav. Na rozdíl od prohledávání do šířky můžeme některými
uzly procházet vícekrát, neboť se často musíme navracet.
Petr Berka, 2004
15
Expertní Systémy
Algoritmus prohledávání do hloubky
NEROZVIN := poč. stav
'
?
NEROZVIN
+ prázdný ?
&
-
$
%
?
přesuň první uzel z NEROZVIN
(označ N) do ROZVIN
?
rozviň N, všechny následníky
ulož do NEROZVIN na začátek
'
?
$
některý uzel
+ z NEROZVIN je cíl ?
&
%
Petr Berka, 2004
16
Expertní Systémy
Paprskové prohledávání
heuristické omezené prohledávání do šířky - heuristikou je
odhad vzdálenosti ke koncovému stavu
NEROZVIN := poč. stav
'
+
?
NEROZVIN
prázdný ?
&
-
$
%
?
přesuň všechny uzly z NEROZVIN
(označ Ni ) do ROZVIN
?
rozviň Ni , všechny následníky
ulož do NEROZVIN na konec
?
uspořádej NEROZVIN dle heuristiky
?
kromě prvních p odstraň
z NEROZVIN všechny uzly
'
?
$
některý uzel
+ z NEROZVIN je cíl ?
&
%
Petr Berka, 2004
17
Expertní Systémy
Gradientní prohledávání
úplné heuristické prohledávání do hloubky - heuristikou je
odhad vzdálenosti ke koncovému stavu
NEROZVIN := poč. stav
'
+
?
NEROZVIN
prázdný ?
&
-
$
%
?
přesuň první uzel z NEROZVIN
(označ N) do ROZVIN
?
rozviň N, všechny následníky
uspořádej dle heuristiky a
ulož do NEROZVIN na začátek
'
?
$
některý uzel
+ z NEROZVIN je cíl ?
&
%
Petr Berka, 2004
18
Expertní Systémy
Uspořádané prohledávání
úplné heuristické prohledávání do hloubky - doplnění gradientního prohledávání o paměť
NEROZVIN := poč. stav
'
+
?
NEROZVIN
prázdný ?
&
-
$
%
?
přesuň první uzel z NEROZVIN
(označ N ) do ROZVIN
?
rozviň N , všechny následníky
ulož do NEROZVIN
?
uspořádej NEROZVIN dle heuristiky
'
?
$
některý uzel
+ z NEROZVIN je cíl ?
&
%
Petr Berka, 2004
19
Expertní Systémy
Algoritmus A*
cena přechodu z počátečního stavu přes stav s do koncového stavu
f (s) = g(s) + h(s)
heuristika h(s) jako dolní odhad ceny přechodu z s do koncového stavu,
pro h(s) = 0 provádí A* prohledávání do šířky
NEROZVIN := poč. stav
'
?
NEROZVIN
+ prázdný ?
&
-
$
%
?
přesuň první uzel z NEROZVIN
(označ N ) do ROZVIN
?
rozviň N , všechny následníky N*
ulož do NEROZVIN
?
je-li v NEROZVIN uzel N*
s vyšší hodnotou g(N*) odstraň jej
?
uspořádej NEROZVIN dle funkce f
'
?
$
některý uzel
+ z NEROZVIN je cíl ?
&
%
Petr Berka, 2004
20
Expertní Systémy
Fuzzy množiny
Na rozdíl od “klasických” množin, kdy o každém objektu lze jednoznačně říci, zda je nebo není prvkem množiny (např. množina všech
sudých čísel), je v případě fuzzy množin příslušnost k množině vyjádřena
charakteristickou funkcí µ(x) ∈ [0, 1].
6
µ(x)
1
0
35
36
37
38
39
x-
Figure 1: Zvýšená teplota
Petr Berka, 2004
21
Expertní Systémy
LISP
Programovací jazyk pro manipulaci se symbolickými výrazy (LISt Processor) vytvořený na přelomu padesátých a šedesátých let na MIT
skupinou kolem J. McCarthyho.
Data - S-výrazy:
• atomy (nečíselné, číselné, T, NIL)
• seznamy - jsou-li s1 , s2 S-výrazy, je i (s1 s2 ) S-výraz
Funkce (f s1 s2 ... sn )
• (CONS s1 s2 ) - funkce, která ze dvou vstupních S-výrazů s1 a s2
vytvoří S-výraz (s1 s2 )
• (CAR s) - funkce, jejíž hodnotou je první prvek seznamu s
• (CDR s) - funkce, jejíž hodnotou je zbytek seznamu po oddělení
prvního prvku
• (EQ s1 s2 ) - funkce, která testuje shodu svých argumentů. Je
definována pouze pro atomy
• (ATOM s) - funkce, která má hodnotu T , je-li S atom
Nové funkce se definují pomocí funkčních výrazů (λ-výrazů)
(LAM BDA(x1 x2 ... xn )e).
Petr Berka, 2004
22
Expertní Systémy
Hanojská věž - LISP
(DEFUN HANOJ (LAMBDA (N)
(PRESUN_VEZ N ’A ’B ’C) ))
(DEFUN PRESUN_VEZ (LAMBDA (K X Y Z)
((EQ K 0))
(PRESUN_VEZ (DIFFERENCE K 1) X Z Y)
(TAH X Z)
(PRESUN_VEZ (DIFFERENCE K 1) Y X Z) ))
(DEFUN TAH (LAMBDA (X Z)
(PRIN1 "Presun disk z ")
(PRIN1 X)
(PRIN1 " na ")
(PRIN1 Z))
Petr Berka, 2004
23

Podobné dokumenty

Umělá inteligence

Umělá inteligence 70.-90. léta: otázka reprezentace znalostí 90.- léta: učení a adaptace, komunikace

Více

Expertní systém role expertního systému • expert • kolega

Expertní systém role expertního systému • expert • kolega znalostí o abnormálním chování a je známo pouze, jak vypadá chování normální (např. diagnostikování nového stroje). Při tomto způsobu diagnostikování se pozorované chování porovnává s chováním oček...

Více

Umělá inteligence I Roman Barták, KTIML

Umělá inteligence I Roman Barták, KTIML jak lidé a zvířata myslí a konají? behaviorismus Počítačové inženýrství (1940 -) jak postavit efektivní počítač? stroje na zpracování informací Teorie řízení (1948 -) jak se mohou artefakty sami ří...

Více

handout 5

handout 5 intelektuálních oblastech. Kde bychom měli začít? I to je obtížné rozhodnutí. Mnoho lidí se domnívá, že velmi abstraktní aktivita jako např. hraní šachů by byla nejlepší. Můžeme také uvažovat o tom...

Více

Znalostní technologie – proč a jak?

Znalostní technologie – proč a jak? zařazené jako povinný předmět předcházející předmětům ZT1 a ZT2, které v podobě praktických cvičení v jazyce Prolog dalo možnost tvůrčí práce při řešení konkrétních úloh, zaměřených na práci se zna...

Více

diplomka

diplomka Je obtíÏné zaãínat první kapitolu práce termínem, kter˘ je jejím cílem a shrnutím.VyÏaduje znalost kapitol následujících. Pfiesto je nutné zmínit pojem inteligence hned na poãátku. V této práci se j...

Více

Rozhodování a rozhodovací procesy v ošetřovatelství

Rozhodování a rozhodovací procesy v ošetřovatelství každý den množství rozhodnutí. Jsou ovlivněny organizačními, profesionálními a regulačními rámci, dle kterých musí pracovat (Peate, 2006). Nejčastěji jsou zmiňovaná klinická rozhodování, etická roz...

Více

Kognitivní kontrarevoluce? - Filosofie dnes

Kognitivní kontrarevoluce? - Filosofie dnes svržení behaviorismu znamenalo odstranění některých zcela nejapných metodologických omezení, které na studium mysli behavioristé uvalili, a v tomto smyslu skutečně otevřelo prostor pro nové a plodn...

Více