Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Magyar Matematika-Informatika Intézet Babeş Bolyai Tudományegyetem, Kolozsvár 2015/2016 1/370

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Magyar Matematika-Informatika Intézet Babeş Bolyai Tudományegyetem, Kolozsvár 2015/2016 1/370"

Átírás

1 1/370 Magyar Matematika-Informatika Intézet Babeş Bolyai Tudományegyetem, Kolozsvár 2015/2016

2 Az Előadások Témái 1 Tudnivalók Bevezető Fejlődés Könyvészet Eredmények Bevezető: mi a mesterséges intelligencia 1 Tudás reprezentáció 2 Gráfkeresési stratégiák 3 Szemantikus hálók / Keretrendszerek 4 Játékok modellezése 5 Bizonytalanság kezelése 6 Grafikus modellek és a D.S. modell 7 Fuzzy rendszerek 8 Tanuló rendszerek 9 Szimulált kifűtés, Genetikus algoritmusok 10 Neurális hálók, a perceptron modell 11 Többrétegű hálók, Önszerveződés 12, 13 2/370 Gépi tanulás 14

3 3/370 Admin trívia 1 Vizsga Szóbeli (60%) + Gyakorlat (40%) Tudnivalók Bevezető Fejlődés Könyvészet Eredmények Laborgyakorlatok: 1 Gráfok ábrázolása - dedukciós algoritmus 18% 2 Játékelmélet 10% 3 Matlab - tanulási algoritmus 12% 4 Opcionális feladatok - max. 3/személy sok% Bemutatók (5 20 pont) Alkalmazások bemutatása, melyek adaptív, gépi tanulásos vagy mestint módszereket alkalmaznak.

4 4/370 A mesterséges intelligencia 1 Nincs pontos definíció. Tudnivalók Bevezető Fejlődés Könyvészet Eredmények Elvárások intelligens viselkedés racionális viselkedés gondolkodó rendszer cselekvő rendszer Cog.Bot.Lab München J. Schmidthuber

5 Turing-teszt 1 Tudnivalók Bevezető Fejlődés Könyvészet Egy megfigyelő tesztel egy rendszert, melyről nem tudja, hogy ember vagy gép. Feladat, hogy a feltett kérdések nyomán találjuk ki, hogy a rendszert gép vagy ember vezérli.? M.I. rendszer Eredmények 5/370 Kérdésfelvetés: Alan Turing Képessé tehető programozható a számítógép a gondolkodás műveletére? Neumann János A fogalmak eléggé pontos specifikálása esetén a gép intelligens lesz.

6 Turing-teszt 1 Tudnivalók Bevezető Fejlődés Könyvészet Egy megfigyelő tesztel egy rendszert, melyről nem tudja, hogy ember vagy gép. Feladat, hogy a feltett kérdések nyomán találjuk ki, hogy a rendszert gép vagy ember vezérli.? M.I. rendszer Eredmények 5/370 Kérdésfelvetés: Alan Turing Képessé tehető programozható a számítógép a gondolkodás műveletére? Neumann János A fogalmak eléggé pontos specifikálása esetén a gép intelligens lesz.

7 6/370 Bevezető fogalmak 1 Tudnivalók Bevezető Fejlődés Könyvészet Eredmények A.I. Emberhez hasonlóan gondolkodó rendszerek Bellman: döntéshozatal, problémamegoldás, tanulás automatizálása. Emberhez hasonlóan cselekvő rendszerek Rich: Végeztetni dolgokat, melyeket az emberek jobban tudnak. Racionálisan gondolkodó rendszerek Charniak: Mentális képességek tanulmányozása. Racionálisan cselekvő rendszerek Schalkoff: Utánozni és magyarázni az intelligens viselkedést. Russell, 1996

8 Az M.I. fejlődése 1 Tudnivalók Bevezető Fejlődés Könyvészet Eredmények 1956 első M.I. konferencia Darthmouth-ban. Alapítók : Minsky (Logo, Neurális háló), McCarthy (Lisp), Shannon (információ-elmélet) Fejlődési területek: szimbolikus M.I. szakértői rendszerek dedukciós algoritmusok konnekcionista megközelítések neurális hálók Boltzmann gépek evolúciós algoritmusok Ezekkel párhuzamosan: kognitív tudományok - cognitive neuroscience (CNS) Fuzzy algoritmusok 7/370

9 M.I. fejlődésgrafikon 1 Tudnivalók Bevezető Fejlődés Könyvészet Eredmények Fejlődési grafikon cikkek száma, konferenciák látogatottsága... Bonyolultságelmélet /370 kezdetek - elméleti háttér: dedukciós algoritmusok, feladatok meghatározása, 80-as években nagyon nagy a támogatottsága, később az érdeklődés csökkent, de 1997-ben a DEEP BLUE nyer a sakk-világbajnok ellen

10 M.I. fejlődése évszámokban 1 Tudnivalók Bevezető Fejlődés Könyvészet Eredmények 50 Turing: Computing Machinery and Intelligence ; 56 Dartmouth: ; Look, Ma, no hands! 1 ; 50 Sakk Samuel, logika Newell & Simon, Geometry Engine Gelernter; 65 logikai következtető algoritmus Robinson; Bonyolultságelmélet csökkenő támogatottság; Tudásalapú rendszerek; 80 M.I. ipari ágazat; 86 Neurális háló modellek újra népszerűek; 87 M.I. tudományág; 9/370 1 vicc utolsó előtti sora. Utolsó: Look, Ma, no teeth!

11 10/370 M.I. jelen időben I 1 Tudnivalók Modern AI focuses on practical engineering tasks Egy pragmatikus megközelítés. Bevezető Fejlődés Könyvészet Eredmények Tudományterületek, melyek kiváltak: Felismerő rendszerek: minta-, beszéd-, OCR; Szakértői rendszerek; Gépi fordítás; Robotika; Játékelmélet; Dedukciós algoritmusok Maple, Mathematica a Fermat tétel bizonyítása, stb.

12 11/370 M.I. jelen időben II 1 Tudnivalók Bevezető Fejlődés Könyvészet Eredmények Cinikusan: M.I. feladat Sikerek: = egyelőre jó megoldás nem ismert; = bizonyított, hogy a megoldáshoz nagyon hosszú idő kell. Deep Blue, 1997 Gary Kasparov-ot legyőzi (rendszerek, melyek legyőzik a Deep Blue-t), Robbins sejtés bizonyítása, tervezés ütemezés az 1991-es iraki háborúban: egység koordinálása, Proverb keresztrejtvények megfejtése.

13 12/370 Könyvészet I 1 Tudnivalók Bevezető Fejlődés Könyvészet Eredmények S.J. Russell, P. Norvig intelligencia modern közelítésben. (második kiadás) Panem, I. Futó (szerk) intelligencia. Aula, S.J. Russell, P. Norvig Artificial Intelligence: a Modern Approach. Prentice Hall, T.M. Mitchell Machine Learning. McGraw-Hill, C.M. Bishop Pattern Recognition and Machine Learning. Springer Verlag, 2006.

14 Könyvészet II 1 Tudnivalók Bevezető Fejlődés Könyvészet Eredmények C.M. Bishop Neural Networks for Pattern Recognition. Oxford University Press, M.A. Arbib The Handbook of Brain Theory and Neural Networks. The MIT Press, Könyvészet olvasása kötelező Az előadás anyaga csupán útmutató a tanuláshoz és segít a jegyzetelés megkönnyítésében. 13/370 Könyvészet olvasása kötelező II A vetített anyag nem elégséges a vizsgához.

15 14/370 M.I. algoritmusok gyakorlatban I 1 Tudnivalók Bevezető Fejlődés Könyvészet Eredmények Index - 05 okt. 2 Nyelveket tanul a szoftver Automatic DIstillation Of Structures (ADIOS) Cél az agyban lévő szintaktikus és szemantikus ismeretek... számítógépes modellezése. A rendszer nyers adatokból (szöveg, beszéd, aminósav, hangjegy) SZABÁLYOKAT határoz meg.

16 15/370 M.I. algoritmusok gyakorlatban II 1 Tudnivalók 05 szept. 19 Pontosan utánoz a műkéz A Southampton-i Egyetem mesterséges végtagja Bevezető Fejlődés Könyvészet Eredmények A Remedi-Hand (Rehabilitation and Medical Research Trust) parányi feldolgozó egységen keresztül kapcsolódik a karizmokkal. A készüléket a csuklót mozgató izmok összehúzódásai vezérlik.

17 16/370 M.I. algoritmusok gyakorlatban III szept. 16 Tökéletes ujjlenyomatok Genetikus algoritmusok a bűnüldözésben Tudnivalók Bevezető Fejlődés Könyvészet Eredmények Ujjlenyomatokról készült képek tömörítésekor nagyon óvatosan kell eljárni: a legcsekélyebb torzulás is hasznavehetetlenné teheti az ujjlemyonat képét.

18 M.I. algoritmusok gyakorlatban IV 1 Tudnivalók Bevezető Fejlődés Könyvészet Eredmények yahoo.com 05 okt. 9 Stanford Volkswagen Wins $2M Robot Race Defense Advanced Research Projects Agency, DARPA director Dr. Tony Tether, sets a medal on Stanford Racing Team s Stanley #03. Sebastian Thrun 17/370

19 18/370 Let s Talk! The computer can translate V 1 Tudnivalók Bevezető Fejlődés Könyvészet Eredmények mouthing words in Mandarin 11 electrodes attached on face and neck computer program to figure out what he was saying Fontos kérdések az implementáció folyamán: Milyen modellek, rendszerek, algoritmusok voltak használva.

20 19/370 Feladat?házi? 1 Tudnivalók Bevezető Fejlődés Találjatok a fentiekhez hasonló példákat, ahol a mesterséges intelligens eszközök sikeresek voltak. Könyvészet Eredmények +5 pont - kis bemutató

21 Az Előadások Témái 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok 20/370 Bevezető: mi a mesterséges intelligencia 1 Tudás reprezentáció 2 Gráfkeresési stratégiák 3 Szemantikus hálók / Keretrendszerek 4 Játékok modellezése 5 Bizonytalanság kezelése 6 Grafikus modellek és a D.S. modell 7 Fuzzy rendszerek 8 Tanuló rendszerek 9 Szimulált kifűtés, Genetikus algoritmusok 10 Neurális hálók, a perceptron modell 11 Többrétegű hálók, Önszerveződés 12, 13 Gépi tanulás 14

22 21/370 Admin trívia 2 Vizsga Szóbeli (60%) + Gyakorlat (40%) Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok Laborgyakorlatok: 1 Gráfok ábrázolása - dedukciós algoritmus 18% 2 Játékelmélet 10% 3 Matlab - tanulási algoritmus 12% 4 Opcionális feladatok - max. 3/személy sok% Bemutatók (5 20 pont) Alkalmazások bemutatása, melyek adaptív, gépi tanulásos vagy mestint módszereket alkalmaznak.

23 22/370 Hogyan írjunk jól angolul? I 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok A WhiteSmoke szövegértő szoftvere. Előfordul, hogy jól beszélünk angolul, ám fontos leveleinkbe becsúsznak hibák és a címzett az eredeti szándéktól különbözőnek olvashatja mondandónkat. Egy izraeli szoftver a helyesíráson és a nyelvtanon túlmutató megoldást kínál. Míg például a Word helyesírási és nyelvtani ellenőrzője csak e két területen hatékony, addig jelen szoftver lényegesen többet tud: a szöveget mesterséges intelligencia segítségével fürkészi át, majd azt pontosabbá, egyértelműbbé és folyékonyabbá tevő javaslatokkal áll elő. (azaz?kozmetikáz?) agent.ai

24 23/370 Hogyan írjunk jól angolul? II 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok

25 24/370 Tudás reprezentáció 2 Ismeretek számítógépes formában való tárolása Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok vagy: Hanoi tornyok feladata 1 2 3

26 25/370 Tudás reprezentáció 2 Hanoi tornyok feladata Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok = kezdeti vég Állapotok (3, 3, 3) = (1, 1, 1) Szabály: nem helyezhető egy korong egy nála kisebb korong tetejére. Szabály = Állapottér

27 Állapottér 2 Állapottér: szabályos lépések sorozata. (2,3,3) (3,3,3) (1,3,3) Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Ábrázolási mód: irányítatlan gráf, minden lépés megfordítható. (2,1,3) (1,1,3) (3,1,3) (3,2,3) (1,2,3) (2,2,3) Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Csúcs állapot Él lépés (1,1,2) (3,1,2) (3,2,2) (2,1,2) (2,3,2) (1,2,1) (1,3,1) (2,2,1) (3,2,1) (3,1,1) Gráfkeresés Gráf Visszalépés Feladatok (2,2,2) (1,2,2) (1,3,2) (3,3,2) (3,3,1) (2,3,1) (2,1,1) (1,1,1) 26/370

28 Feladat 2 Állapot-repr Keresés Hill-climbing Backtracking Feladat: a kezdeti állapotból: (3, 3, 3) a cél-állapotba (1, 1, 1) eljutni. (3,3,3) (2,3,3) Kezdő (1,3,3) (1,2,3) Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfkiterjesztés költséges Gráfok Irányított gráfok Irányított utak (3,2,1) Optimális út Irányított fa ÉS/VAGY gráfok Példák (3,1,1) Gráfkeresés Visszalépés Feladatok (2,3,1) (2,1,1) Cél (1,1,1) 27/370

29 28/370 Megoldáskeresés az állapottérben 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Hegymászó módszer Heurisztika: az állapotokhoz rendel egy numerikus függvényt, mely maximum a kezdeti állapotban és minimum a vég állapotban. Val(CS) = k kezdeti = 9 vég = 3 Poz k Feladatok

30 Megoldás a hegymászó módszerrel 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok 29/370 Hegymászó módszer (Hill climbing) Hegymászó: ÁLLAPOT kezdőállapot Amíg ÁLLAPOT CÉLÁLLAPOT Válassz ÚJ_ÁLLAPOT-ot ÁLLAPOT ÚJ_ÁLLAPOT A következő lépés: A Val(CS) legkisebb szülőtől különböző csúcs. (2,3,3) (3,3,3) (1,3,3) (1,2,3) (2,2,3) (3,2,3) (2,2,1) (1,2,1) (3,2,1) (1,3,1) (3,1,1) (3,3,1) (2,3,1) (2,1,1) (1,1,1)

31 Hegymászó módszer ( ) 2 ( ) ( ) Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Jellemzők: Heurisztika nem bizonyítható a konvergencia, Nem kerüli el a ciklusokat, függ a paraméterezéstől: például a (2, 2, 2)-be nem írható algoritmus. ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) Gráfkeresés Visszalépés Feladatok ( ) ( ) ( ) ( ) 30/370

32 Backtracking I 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok 31/370 Visszalépéses keresés Visszalép: ÚT kezdőállapot Amíg ÚT vég nem CÉL Válassz SZ az út végére alkalmazható műveletek v. visszalép ÚT SZ(ÚT) A választásnál lehet a definiált célfüggvényt használni. SZ = szabály (2,3,3) (3,3,3) (3,3,2) (1,3,3) (1,2,3) (2,2,3) (3,2,3) (2,2,1) (1,2,1) (3,2,1) (1,3,1) (3,1,1) (3,3,1) (2,3,1) (2,1,1) (1,1,1)

33 Backtracking Összefoglaló 2 Visszalépéses keresés (2,3,3) (3,3,3) (1,3,3) Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Fontos: a heurisztika hatékonyság, maximális úthossz korlátozás, jobb megoldás de nem optimális. (1,2,3) (2,2,3) (3,2,3) (2,2,1) (1,2,1) (3,2,1) (1,3,1) (3,1,1) Feladatok (3,3,2) (3,3,1) (2,3,1) (2,1,1) (1,1,1) 32/370

34 Gráfkeresés I 2 Keresés gráfban Algoritmus: (2,3,3) (3,3,3) 1 2 (1,3,3) Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út GRÁF kezdőállapot Amíg GRÁF CÉL Válassz SZ GRÁF-ra alkalmazható műveletek GRÁF SZ(GRÁF) 3 (1,2,3) 4 (2,2,3) (3,2,3) 5 (2,2,1) 6 8 (1,2,1) (3,2,1) Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés A választásnál lehet a definiált célfüggvényt használni. 7 (1,3,1) 9 (3,1,1) Visszalépés Feladatok SZ = szabály (3,3,1) (2,3,1) (2,1,1) (1,1,1) 33/370

35 Gráfkeresés II 2 Keresés gráfban (2,3,3) (3,3,3) 1 2 (1,3,3) Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Felépíti a gráfot, A legköltségesebb, nem találja meg a legrövidebb utat; Elérhetjük a célcsúcsot úgy is, hogy olyan csúcso(ka)t hagyunk ki, melyek a legrövidebb út részei lennének. 3 (1,2,3) 4 (2,2,3) (3,2,3) 5 (2,2,1) 6 8 (1,2,1) (3,2,1) 7 9 (1,3,1) (3,1,1) Feladatok (3,3,1) (2,3,1) (2,1,1) (1,1,1) 34/370

36 35/370 Feladat dekompozíció I 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok Rekurzív függvényhívás iskolapéldája Jelölje: n, i, j, k a műveletet, melyben a legfelső n korongot az i-edik rúdról a j-edik rúdra helyezzük a k-adik rúd segítségével A feladat dekomponálható: n, i, j, k n 1, i, k, j 1, i, j, k n 1, k, j, i ha n > 1 n = 1 nem kell tovább bontani a feladatot

37 Feladat dekompozíció II 2 3, 3, 1, 2 2, 3, 2, 1 1, 3, 1, _ 2, 2, 1, 3 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok 1, 3, 1, _ 1, 3, 2, _ 1, 1, 2, _ 36/370 ÉS/VAGY gráf: csúcs = probléma 1, 2, 3, _ 1, 2, 1, _ 1, 3, 1, _ köteg - a részfeladatok, melyeket meg kell oldani a feladat megoldásához. Itt nincs VAGY csúcs. megoldás = részgráf, melyben minden részprobléma csupa megoldható problémára vezethető vissza.

38 37/370 Predikátumkalkulus I 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok Szabályalapú következtetés t(i, j) legfelső korong i j mozgatása. A feladat megoldása mozgatások sorozata lista Lista: a.b.c.nil Lista axiómái: (1) A(nil, r, r) (2) A(u, v, w) A(s.u, v, s.w) A(,, ) append (1) Üres lista nem változtat az eredményen (2) Ha w az u és v összetétele, ez érvényes egy s előtaggal is.

39 Predikátumkalkulus II 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok Hanoi tornyai axiómái: (3) H(1, i, j, k, t(i, j).nil) (4) H(n 1, i, k, j, y) H(1, i, j, k, t(i, j).nil) H(n 1, k, j, i, z) A(y, t(i, j).z, x) H(n, i, j, k, x) (3) 1 elemet átteszünk: t(i, j) (4) n elem áttételéhez előbb n 1 elemet mozgatunk y sorozattal, egy elemet t(i, j)-vel, majd n 1-et vissza. Kérdés: (5) ( x) H(2, 1, 2, 3, x) (5) azon mozgatások, melyek megvalósítják 2 korong mozgatását. 38/370

40 39/370 Predikátumkalkulus III 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok Algoritmus: GRÁF = célállítás Amíg GRÁF-ban nincs ellentmondásmentes levezetés Válassz SZ a GRÁF-hoz alkalmazható illesztések vagy visszalépés GRÁF = SZ(GRÁF) Egy ÉS/VAGY gráfot járunk be és keresünk egy gráfot, mely tényekben végződik és nem ellentmondóak az illesztések.

41 Rezolúció I 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Két elemű Hanoi-toronyra a kérdés: ( x) H(2, 1, 2, 3, x) Rezolúció: bizonyítani, hogy az axiómákból következik a célállítás. Módszer: Tagadjuk a kijelentést és bizonyítjuk, hogy ez utóbbi hamis. A B A B A B (1) (2) (3) (4) (5) kielégíthetetlen Feladatok 40/370 (5) = ( x) H(2, 1, 2, 3, x)

42 Rezolúció II 2 Bizonyítás: ellentmondásos axiómarendszer: (1) ( r) A(nil, r, r) Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok 41/370 (2) (...) A(u, v, w) A(s.u, v, s.w) (3) (...) H(1, i, j, k, t(i, j).nil) (4) (...) H(n 1, i, k, j, y) H(1, i, j, k, t(i, j).nil) H(n 1, k, j, i, z) A(y, t(i, j).z, x) H(n, i, j, k, x) (5) ( x) H(2, 1, 2, 3, x) Cáfolati gráf: létezik út, melyre fennáll az (1) (4) és (5). Figyeljük meg az univerzális kvantorokat!

43 42/370 Rezolúció Példa 2 H(2, 1, 2, 3, x) H(n, i, j, k, x) Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok H(1, 1, 3, 2, y) H(1, 1, 2, 3, t(1, 2).nil) H(1, 3, 2, 1, z) y=t(1,3).nil H(1, i, j, k, t(i, j).nil) z=t(3,2).nil H(1, i, j, k, t(i, j).nil) H(1, i, j, k, t(i, j).nil) A(nil, r, r) A(y, t(1, 2).z, x) A(s.u, v, s.w) s=t(1,3) v=t(1,2).z A(nil, t(1, 2).z, w) w=t(1,2).z A(nil, r, r)

44 42/370 Rezolúció Példa 2 H(2, 1, 2, 3, x) H(n, i, j, k, x) Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok H(1, 1, 3, 2, y) H(1, 1, 2, 3, t(1, 2).nil) H(1, 3, 2, 1, z) y=t(1,3).nil H(1, i, j, k, t(i, j).nil) z=t(3,2).nil H(1, i, j, k, t(i, j).nil) H(1, i, j, k, t(i, j).nil) A(nil, r, r) A(y, t(1, 2).z, x) A(s.u, v, s.w) s=t(1,3) v=t(1,2).z A(nil, t(1, 2).z, w) w=t(1,2).z A(nil, r, r)

45 42/370 Rezolúció Példa 2 H(2, 1, 2, 3, x) H(n, i, j, k, x) Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok H(1, 1, 3, 2, y) H(1, 1, 2, 3, t(1, 2).nil) H(1, 3, 2, 1, z) y=t(1,3).nil H(1, i, j, k, t(i, j).nil) z=t(3,2).nil H(1, i, j, k, t(i, j).nil) H(1, i, j, k, t(i, j).nil) A(nil, r, r) A(y, t(1, 2).z, x) A(s.u, v, s.w) s=t(1,3) v=t(1,2).z A(nil, t(1, 2).z, w) w=t(1,2).z A(nil, r, r)

46 42/370 Rezolúció Példa 2 H(2, 1, 2, 3, x) H(n, i, j, k, x) Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok H(1, 1, 3, 2, y) H(1, 1, 2, 3, t(1, 2).nil) H(1, 3, 2, 1, z) y=t(1,3).nil H(1, i, j, k, t(i, j).nil) z=t(3,2).nil H(1, i, j, k, t(i, j).nil) H(1, i, j, k, t(i, j).nil) A(nil, r, r) A(y, t(1, 2).z, x) A(s.u, v, s.w) s=t(1,3) v=t(1,2).z A(nil, t(1, 2).z, w) w=t(1,2).z A(nil, r, r)

47 42/370 Rezolúció Példa 2 H(2, 1, 2, 3, x) H(n, i, j, k, x) Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok H(1, 1, 3, 2, y) H(1, 1, 2, 3, t(1, 2).nil) H(1, 3, 2, 1, z) y=t(1,3).nil H(1, i, j, k, t(i, j).nil) z=t(3,2).nil H(1, i, j, k, t(i, j).nil) H(1, i, j, k, t(i, j).nil) A(nil, r, r) A(y, t(1, 2).z, x) A(s.u, v, s.w) s=t(1,3) v=t(1,2).z A(nil, t(1, 2).z, w) w=t(1,2).z A(nil, r, r)

48 42/370 Rezolúció Példa 2 H(2, 1, 2, 3, x) H(n, i, j, k, x) Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok H(1, 1, 3, 2, y) H(1, 1, 2, 3, t(1, 2).nil) H(1, 3, 2, 1, z) y=t(1,3).nil H(1, i, j, k, t(i, j).nil) z=t(3,2).nil H(1, i, j, k, t(i, j).nil) H(1, i, j, k, t(i, j).nil) A(nil, r, r) A(y, t(1, 2).z, x) A(s.u, v, s.w) s=t(1,3) v=t(1,2).z A(nil, t(1, 2).z, w) w=t(1,2).z A(nil, r, r)

49 42/370 Rezolúció Példa 2 H(2, 1, 2, 3, x) H(n, i, j, k, x) Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok H(1, 1, 3, 2, y) H(1, 1, 2, 3, t(1, 2).nil) H(1, 3, 2, 1, z) y=t(1,3).nil H(1, i, j, k, t(i, j).nil) z=t(3,2).nil H(1, i, j, k, t(i, j).nil) H(1, i, j, k, t(i, j).nil) A(nil, r, r) A(y, t(1, 2).z, x) A(s.u, v, s.w) s=t(1,3) v=t(1,2).z A(nil, t(1, 2).z, w) w=t(1,2).z A(nil, r, r)

50 42/370 Rezolúció Példa 2 H(2, 1, 2, 3, x) H(n, i, j, k, x) Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok H(1, 1, 3, 2, y) H(1, 1, 2, 3, t(1, 2).nil) H(1, 3, 2, 1, z) y=t(1,3).nil H(1, i, j, k, t(i, j).nil) z=t(3,2).nil H(1, i, j, k, t(i, j).nil) H(1, i, j, k, t(i, j).nil) A(nil, r, r) A(y, t(1, 2).z, x) A(s.u, v, s.w) s=t(1,3) v=t(1,2).z A(nil, t(1, 2).z, w) w=t(1,2).z A(nil, r, r)

51 42/370 Rezolúció Példa 2 Állapot-repr H(2, 1, 2, 3, x) x=t(1,3).t(1,2).t(3,2).nil H(n, i, j, k, x) x=y.t(1,2).z Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok H(1, 1, 3, 2, y) H(1, 1, 2, 3, t(1, 2).nil) H(1, 3, 2, 1, z) y=t(1,3).nil H(1, i, j, k, t(i, j).nil) z=t(3,2).nil H(1, i, j, k, t(i, j).nil) H(1, i, j, k, t(i, j).nil) A(nil, r, r) A(y, t(1, 2).z, x) A(s.u, v, s.w) s=t(1,3) v=t(1,2).z A(nil, t(1, 2).z, w) w=t(1,2).z A(nil, r, r)

52 43/370 Keresőrendszerek I 2 Keresőrendszerek (Production systems) Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Különválasztják a feladat adatait ; az adatokon értelmezett műveleteket ; a vezérlést, mely a műveleteket algoritmussá szervezi. Keresőrendszer: (Adat,Szabály,Vezérlés) Feladatok

53 Keresőrendszerek II 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok 44/370 Általános stratégia: ADAT Kezdeti adatbázis AMÍG ADAT nem terminális Válassz SZ az ADAT-ra alkalmazható szabályok közül, ADAT SZ(ADAT) Keresési stratégia: az alkalmazható szabályok közül egyet kiválaszt. Keresési stratégia: előrehaladó visszafelé haladó kétirányú bidirectional hegymászó, visszalépés, gráf szabályalapú

54 Keresőrendszerek II 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok 44/370 Általános stratégia: ADAT Kezdeti adatbázis AMÍG ADAT nem terminális Válassz SZ az ADAT-ra alkalmazható szabályok közül, ADAT SZ(ADAT) Keresési stratégia: az alkalmazható szabályok közül egyet kiválaszt. Keresési stratégia: előrehaladó visszafelé haladó kétirányú bidirectional hegymászó, visszalépés, gráf szabályalapú

55 Keresőrendszerek II 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok 44/370 Általános stratégia: ADAT Kezdeti adatbázis AMÍG ADAT nem terminális Válassz SZ az ADAT-ra alkalmazható szabályok közül, ADAT SZ(ADAT) Keresési stratégia: az alkalmazható szabályok közül egyet kiválaszt. Keresési stratégia: előrehaladó visszafelé haladó kétirányú bidirectional hegymászó, visszalépés, gráf szabályalapú

56 45/370 Ismeretábrázolás 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Ismeretek osztályozása: deklaratív ismeret procedurális ismeret vezérlési ismeret állapot,részprobléma,axiómák művelet, dekompozíció VAL függvény Közös vonás: gráf = gráfreprezentáció. ADAT = a reprezentációs gráf egy részgráfja. = Ablak, melyet a szabályok módosítanak, egy csúcs, egy részgráf. Feladatok

57 46/370 Keresési stratégiák 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Gráfkeresési stratégiák: Elsődleges stratégia nem-módosítható stratégia (hegymászó, rezolúció) módosítható stratégia (szabályok választása) másodlagos stratégia figyelembe veszi az adott reprezentációt. Módosítható stratégiák: visszalépéses keresés BackTracking gráfkereső GraphSearch Feladatok

58 A heurisztika szerepe 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok 47/370 Költség Szabályalkalmazás No free lunch. Futási idő Választás költsége Információ Nehéz a futási időt optimizálni. Közelítő megoldások javasoltak.

59 48/370 Gráfkereső stratégiák 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Egy korai M.I. terület - külön tudományággá fejlődött Nagyon sok feladatot lehet gráfokkal reprezentálni: a gráfreprezentáció az algoritmusok keresési tere. 1 irányított gráfok 2 ÉS/VAGY gráfok Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok Példák: Hanoi tornyok Irányított gráf? reverzibilis lépések irányítatlan gráf

60 49/370 Irányított GRÁFOK 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Jelölés: N csúcsok (nodes) A élek A N N (adjacency) szülő 1 a 2-nek utód... c(n, m) költség Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Tulajdonságok: σ-tulajdonság: σ n {m (n, m) A} σ δ-tulajdonság: δ > 0 (n, m) A c(n, m) δ Feladatok hyper

61 50/370 Gráfok ábrázolása 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok δ-gráfok = a δ és σ tulajdonsággal rendelkező gráfok Konvenció: amennyiben nem specifikáljuk, az élek bejárásának a költsége

62 51/370 Irányított utak 2 Irányított út út: az n-ből az m-be Ha n 1,..., n k úgy hogy {(n, n 1 ),..., (n k, m)} A. Állapot-repr Keresés Hill-climbing Backtracking Út: α = (n = n 0, n 1,..., n k = m) 1 Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Út költsége c α (n, m) = k c(n j 1, n j ) j= Gráfkeresés Visszalépés Feladatok Példa: α = (6, 5, 7, 3, 4, 3, 4, 7, 5, 1, 2) költsége 10.

63 51/370 Irányított utak 2 Irányított út út: az n-ből az m-be Ha n 1,..., n k úgy hogy {(n, n 1 ),..., (n k, m)} A. Állapot-repr Keresés Hill-climbing Backtracking Út: α = (n = n 0, n 1,..., n k = m) 1 Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Út költsége c α (n, m) = k c(n j 1, n j ) j= Gráfkeresés Visszalépés Feladatok Példa: α = (6, 5, 7, 3, 4, 3, 4, 7, 5, 1, 2) költsége 10.

64 52/370 Optimális út 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok Optimális költség: az n-ből az m-be c (n, m) = Optimális út: az n-ből az m-be? min α {n m} cα (n, m) α (n, m) = arg min α {n m} cα (n, m) Létezik mindig optimális út? Amennyiben igen, egyedi? nem. Ekkor az út hossza nem

65 52/370 Optimális út 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok Optimális költség: az n-ből az m-be c (n, m) = Optimális út: az n-ből az m-be? min α {n m} cα (n, m) α (n, m) = arg min α {n m} cα (n, m) Létezik mindig optimális út? Amennyiben igen, egyedi? nem. Ekkor az út hossza nem

66 52/370 Optimális út 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok Optimális költség: az n-ből az m-be c (n, m) = Optimális út: az n-ből az m-be? min α {n m} cα (n, m) α (n, m) = arg min α {n m} cα (n, m) Létezik mindig optimális út? Amennyiben igen, egyedi? nem. Ekkor az út hossza nem

67 52/370 Optimális út 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok Optimális költség: az n-ből az m-be c (n, m) = Optimális út: az n-ből az m-be? min α {n m} cα (n, m) α (n, m) = arg min α {n m} cα (n, m) Létezik mindig optimális út? Amennyiben igen, egyedi? nem. Ekkor az út hossza nem

68 53/370 Irányított Fa 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok Irányított fa: gráf, melyben egy kitüntetett csúcsból - a gyökérből minden más csúcsba csak egy út vezet. A gyökérbe nem vezet él. Levél csúcs, melyből nem vezet ki él. Tulajdonságok: Bejárása egyszerű; Nem minden feladat ábrázolható faként.

69 ÉS/VAGY gráfok 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok ÉS/VAGY gráfok Olyan irányított hipergráfok, melyekben egy hiperél egy csúcsból egy csúcshalmazba vezet. R(N, A) ahol A {(n, M) N 2 N 0 M } Hiperélek: (1, {2, 3}) (1, {4}) (2, {5, 6}) (3, {7}) (4, {6, 7}) (7, {6}) Élköltség: c(n, M) Kérdés: σ és δ tulajdonságok G 54/

70 55/370 Hiperutak ÉS/VAGY gráfokban 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok Irányított hiperút (n, M) között Részgráf, melyben mindegyik csúcsból legfeljebb egy hiperél indul ki. M-ből nem indul hiperél. Hiperutak 1 {5, 6}: (1, {2, 3}), (2, {5, 6}) (1, {2, 3}), (3, {6}), (1, {4}), (4, {5})

71 ÉS/VAGY gráfok átalakítása 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció ÉS/VAGY gráfok kezelése nehézkes. Utak keresése esetén átalakíthatóak irányított gráfokká. Új csúcsok bevezetése: utódcsúcs = átalakítandó hiperél utódainak halmaza. A fenti műveletet kiterjesszük a kezdőcsúcstól a célig. 1 Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok Feladat: az 1 {5, 6} egy hiperútjának megfelelő gráfátalakítás /370

72 57/370 8-as kirakós játék I 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Kódolás: 9 hely 9! = lehetőség. Üres hely mozgatása meghatároz egy állapotgráfot. Gráfkeresés Visszalépés Feladatok

73 58/370 8-as kirakós játék II Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok

74 59/370 4 királynő 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés 4 4-es táblán 4 királynőt elhelyezni. Állapottér: sakk állások 1 4 királynővel. Művelet: egy királynő egy mezőre helyezése. Kezdőállapot: üres sakktábla. Célállapot: 4 királynőt tartalmazó sakktábla. Feladatok

75 Gráfkereső algoritmusok I 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok 60/370 Nem-módosítható keresések: Egy lépést szabályt nem lehet visszavonni. 1 Hegymászó algoritmus (hill-climbing) kritérium-függvény, mely vezérli az algoritmust. nem-determinisztikus gond a lokális minimum jelenléte 2 Kommutatív rendszerek (commutative systems) a D-re alkalmazható szabályok alkalmazhatóak a D leszármazottjaira is. a D-ből előállított adatbázis független a műveletek sorrendjétől felcserélhető. ha a D kielégíti a terminálási feltételt, akkor annak minden leszármazottja is. Nincs bonyolult stratégia. Heurisztika = hatékonyság.

76 61/370 Visszalépés I 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok Egy utat tart nyilván a reprezentációs gráfból. Induló érték: start-csúcs. Vezérlési stratégia visszalépés alkalmazása ha: 1 nincs több él zsákutca; 2 nincs több jó út vágás; 3 minden továbbvezető útról visszaléptünk torkolat; 4 egy már bejárt csúcshoz jutunk kör; 5 túl hosszú a bejárt út mélységi korlát.

77 62/370 Visszalépés II 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Visszalépés ha 1 nincs több él zsákutca; 2 nincs több jó út vágás; 3 minden továbbvezető útról visszaléptünk torkolat; 4 egy már bejárt csúcshoz jutunk kör; 5 túl hosszú a bejárt út mélységi korlát. Tétel A visszalépéses algoritmus az (1) és (2) feltételekkel terminál véges és körmentes gráfokon. Gráfkeresés Visszalépés Feladatok

78 62/370 Visszalépés II 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Visszalépés ha 1 nincs több él zsákutca; 2 nincs több jó út vágás; 3 minden továbbvezető útról visszaléptünk torkolat; 4 egy már bejárt csúcshoz jutunk kör; 5 túl hosszú a bejárt út mélységi korlát. Tétel A visszalépéses algoritmus az (1) (5) feltételekkel mindig terminál. Ha létezik a mélységi korlátnál nem hosszabb megoldás, megtalálja azt. Feladatok

79 63/370 Bűvös négyzetek I 1. laborfeladat 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok Feladat: ábrázoljuk a bűvös négyzetek keresését gráf-kiterjesztési feladatként: építsük fel a feladat állapotterét; defniáljunk egy gráfot a helyes megoldásokat eredményező kitöltések folyamataként; definiáljunk egy gráfkiterjesztési procedúrát; keressük meg az összes lehetséges megoldást gráfkereső (?backtracking?) módszerrel. Bűvös négyzet: az az N N-es négyzet, melyben az elemek száma megegyezik sorok és oszlopok szerint. S sor = 1 N 2 n = 1 ( N N N2 N ) = N ( N ) 2 2 n=1

80 64/370 Bűvös négyzetek II 1. laborfeladat 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok Követelmények: Dokumentáció, mely tartalmazza a 1 paraméterterét a feladatnak, 2 a gráfkiterjesztés lépéseit, 3 a gráfbejárás sorrendjét. Program, mely az N szám ismeretében kiírja (pl. egy TXT állományba) az összes megoldást valamint kiírja a képernyőre a megoldások számát.. A bemutatás személyesen történik valamely futtatási környezetben úgy, hogy a programban módosítani lehessen paramétereket. (8 pont) Kötelező feladat

81 Bűvös négyzetek II Példa 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok Example: /370

82 Sudoku 2. laborfeladat 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok 66/370 A sudoku-ban számokat helyezünk el egy n 2 n 2 méretű négyzetrácsban. Az {1,..., n 2 } számokat úgy helyezzük el n 2 -szer úgy, hogy egy oszlopban, egy sorban és minden kisebb négyzetben egy szám egyszer szerepeljen (lásd ábra). Az n = 2-re mi a paraméter tér? 1p. Jelenítsük meg szépen a megoldásokat az n = 2 és n = 3 esetekre. 1p. Az n = 2 esetre generáljuk az összes megoldást. 1p. Találjuk meg egy részlegesen kitöltött feladat kitöltött változatát. 3p. Generáljunk egy sudoku rejtvényt: egy részlegesen kitöltött feladat, melynek csak egy megoldása van. 4p. (10 pont) Kötelező feladat

83 Négyes hanoi torony Opc. feladat 2 Állapot-repr Keresés Hill-climbing Backtracking Gráfkeresés Dekompozíció Predikátumkalkulus Rezolúció Keresőrendszerek Gráfok Irányított gráfok Irányított utak Optimális út Irányított fa ÉS/VAGY gráfok Példák Gráfkeresés Visszalépés Feladatok A háromoszlopos hanoi toronynál az első oszlop korongjait kell egyenként áthelyezni a második oszlopra úgy, hogy mindhárom oszlopon a korongok lentről felfele csökkenő sorrendben legyenek Három oszlop esetében N korong áthelyezéséhez szükséges lépések száma 2 N 1. Negy oszlopos Hanoi torony 1e10 Hanoi 3 A feladatot módosítjuk úgy, hogy egy 1e9 Kettot levesz negyedik oszlopra is pakolhatunk. Ekkor a lépések száma 1e8 1e7 csökken. 67/370 Feladat Írjunk programot mely a négy-oszlopos Hanoi tornyokat kevés lépésszámmal oldja meg (5 pont) Opcionális feladat 1e6 1e5

84 Az Előadások Témái 3 Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális Bevezető: mi a mesterséges intelligencia 1 Tudás reprezentáció 2 Gráfkeresési stratégiák 3 Szemantikus hálók / Keretrendszerek 4 Játékok modellezése 5 Bizonytalanság kezelése 6 Grafikus modellek és a D.S. modell 7 Fuzzy rendszerek 8 Tanuló rendszerek 9 Szimulált kifűtés, Genetikus algoritmusok 10 Neurális hálók, a perceptron modell 11 Többrétegű hálók, Önszerveződés 12, 13 68/370 Gépi tanulás 14

85 69/370 Admin trívia 3 Vizsga Szóbeli (60%) + Gyakorlat (40%) Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Laborgyakorlatok: 1 Gráfok ábrázolása - dedukciós algoritmus 18% 2 Játékelmélet 10% 3 Matlab - tanulási algoritmus 12% 4 Opcionális feladatok - max. 3/személy sok% Opcionális Bemutatók (5 20 pont) Alkalmazások bemutatása, melyek adaptív, gépi tanulásos vagy mestint módszereket alkalmaznak.

86 Bioinformatika 3 Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális A számítástudomány és a molekuláris biológia között 2 David Haussler & Judea Pearl Kifejlesztették az emberi genomot feltérképező programokat. A lehetőséget a számítógéptechnológia és a biokémia fejlődése biztosította. A genom biológiai összetevőinek felderítését és elemzését a tudós által kidolgozott valószínűségi megközelítés alapozta meg. Az emberi génállomány mintegy hárommilliárd alappárt képez: a kettős spirál-alakú DNS négy alap-nukleotidból (A, C, G, T) épül fel; Minden egyes nukleotid része egy párnak. A mennyiség nagyon nagy, a munka csak számítógépes módszerekkel végezhető el. agent.ai 70/370 2 Pearl J (2000):Causality: Models, Reasoning, and Inference, The CUP Press

87 71/370 Bioinformatika 3 Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális júliusában közölték a módszer vázlatait, majd az emberi és egyéb organizmusok (egér, patkány, stb.) génszekvenciáit elemző, jegyzetekkel ellátott interaktív webalapú keresőket fejlesztettek. Tudományos fórumot teremtettek, míg programjaikat gyakran használják különböző biomedikális kutatásoknál, kísérleteknél. A gének evolúciója A CBSE kutatásai az interdiszciplináris megközelítés jegyében folynak. Biológia, információs és nanotechnológia fúziójára, minél kisebb szerkezetek létrehozására törekednek. Az emberi genom evolúciójának jobb megértése az egyik fo"irány: a cél érdekében permanensen fejlesztik az új statisztikai és algoritmikus módszereket.

88 72/370 Gráfkereső alapalgoritmus 3 Alapalgoritmus Általános algoritmus Példák Mélységi Feladatok: egy megoldás megtalálása minimális út keresése Szélességi Egyenletes Előretekintő A alg Módszerek: 5 7 A* és Ac Összefoglaló Opcionális Heurisztika Visszalépés A algoritmus

89 73/370 Alapalgoritmus I 3 Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális ( Futó:, 73.o) Visszalépés backtracking hátránya, hogy nem találja meg az optimális utat. Gráfkereső algoritmus: a startcsúcsból indul feltárja a reprezentációs gráfot 1 kiválaszt egy csúcsot, melynek utódai n NYILT nem ismertek, 2 kiterjeszti a választott csúcsot G G Γ(n) s G NYILT NYILT \ {n} NYILT NYILT Γ(n) addig keres, amíg egy célcsúcsot nem talál és van kiterjeszthető csúcs.

90 74/370 Alapalgoritmus II 3 Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális Kommutatív rendszer a kiterjesztések bármilyen sorrendben végrehajthatók. = A vezérlési stratégia nem informatív, Másodlagos stratégia továbblépés. Módosítás: n argmin f(m) m NYILT ahol f : NYILT R kiértékelő függvény, amely egy csúcs jósága, pl. az s-ből m-be vivő legkisebb út hossza. dinamikus függvény. (felületes def.)

91 75/370 Alapalgoritmus III 3 Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális Bevezetjük: kitüntetett szülő csúcsot (parent) (az s-ből egy utat specifikál). költségfüggvényt: g(m) az s-ből m-be vivő út költsége. Az n csúcs minden k utód-csúcsára k Γ(n): Ha k új csúcs, vagy Ha nem új és g(k) > g(n) + c(n, k), akkor p(k) n g(k) g(n) + c(n, k) p : G G p(s) = nil g : G R k G k G

92 Alapalgoritmus IV 3 Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális Probléma: ha k zárt, korábban megkerestük utódjait és rövidebb utat találtunk, a g,p függvények nem helyesek a k utódain; a feszítőfa nem optimális. Megoldások: 1 k összes leszármazottját újraértékeljük; 2 a k csúcsot visszatesszük a NYILT halmazba. Hátrány: Nagyobb futási idő; p nem mindig optimális. 76/370 3 Olyan f választása, mely garantálja, hogy nem lesz ilyen k.

93 Alapalgoritmus IV 3 Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális Probléma: ha k zárt, korábban megkerestük utódjait és rövidebb utat találtunk, a g,p függvények nem helyesek a k utódain; a feszítőfa nem optimális. Megoldások: 1 k összes leszármazottját újraértékeljük; 2 a k csúcsot visszatesszük a NYILT halmazba. Hátrány: Nagyobb futási idő; p nem mindig optimális. 76/370 3 Olyan f választása, mely garantálja, hogy nem lesz ilyen k.

94 77/370 Általános algoritmus 3 Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális G {s}, NYILT {s}, g(s) 0, p(s) nil. While nem ures(nyilt ), n arg min m NYILT f(m) If cél(n) then kilép. NYILT NYILT \ {n} For k Γ(n) If k G or g(k) > g(n) + c(n, k) p(k) n g(k) g(n) + c(n, k) NYILT NYILT {k} endfor G G Γ(n) endwhile

95 78/370 Az általános algoritmus tulajdonságai 3 Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális Tulajdonságok Az általános gráfkereső algoritmus egy csúcsot véges sokszor terjeszt ki; véges gráfban mindig terminál; mindegyik n NYILT csúcs kiterjesztése előtt s n van m csúcs az optimális úton, mely 1 m NYILT, 2 g(m) = g (m), 3 minden m-et előző csúcs az úton zárt; Egy véges gráfban, ha létezik megoldás, akkor az algoritmus egy célcsúcs megtalálásával terminál. Csökkenő kiértékelőfüggvény használata mellett optimális és konzisztens a feszítőfa. Bizonyítás

96 79/370 Nevezetes gráfkereső algoritmusok 3 Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális Futó: pp. 83 Nem-informált gráfkeresések 1 Mélységi keresés 2 Szélességi keresés 3 Egyenletes keresés Heurisztikus keresések 1 Előretekintő keresés 2 A algoritmus 3 A algoritmus 4 A c algoritmus

97 80/370 Példa gráfkeresésre k l nyílt csúcsok zárt csúcsok 3 p() szülő Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális

98 80/370 Példa gráfkeresésre k l nyílt csúcsok zárt csúcsok 3 p() szülő Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális

99 80/370 Példa gráfkeresésre k l nyílt csúcsok zárt csúcsok 3 p() szülő Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális

100 80/370 Példa gráfkeresésre k l nyílt csúcsok zárt csúcsok 3 p() szülő Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális

101 80/370 Példa gráfkeresésre k l nyílt csúcsok zárt csúcsok 3 p() szülő Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális

102 80/370 Példa gráfkeresésre k l nyílt csúcsok zárt csúcsok 3 p() szülő Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális

103 80/370 Példa gráfkeresésre k l nyílt csúcsok zárt csúcsok 3 p() szülő Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális

104 Példa gráfkeresésre 3 Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális 80/ A harmadik iteráció végén tehát 3 a zárt csúcsok halmaza {1, 4, 5}; a nyílt csúcsok halmaza {2, 3, 6, 7, 8}; k l nyílt csúcsok zárt csúcsok p() szülő a szülő-függvény (z, p(z)) párok: {(2, 1), (3, 1), (4, 1), (5, 4), (6, 4), (7, 5), (8, 5)}

105 80/370 Példa gráfkeresésre 3 Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális k l nyílt csúcsok zárt csúcsok p() szülő A következő csúcs kiválasztása a nyílt halmazból bármilyen kritérium alapján történhet. A kritérium alapja az f( ) függvény. A függvény megválasztásával különböző keresési stratégiákhoz jutunk.

106 81/370 Mélységi keresés 3 Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális Mindig a legmélyebben fekvő nyílt csúcsot választjuk, Ha minden él költsége ugyanannyi (pl. c(m, n) = 1), akkor a kiértékelő függvény: f(n) = g(n) n NYILT, Szükséges (? mikor) a mélységi korlát bevezetése, Az algoritmus nem mindig talál megoldást, Iteratív növelése a mélységi korlátnak megoldást talál (?optimális?).

107 82/370 Mélységi keresés Példák Kiterjesztési sorrend: Ellenpélda: 3 Alapalgoritmus Általános algoritmus Példák D B F A C G E Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális Ha megjegyezzük a csúcsokat: A, B, D, F, E, C, G; Ha nem: A, B, F, E, A, B,...

108 82/370 Mélységi keresés Példák Kiterjesztési sorrend: Ellenpélda: 3 Alapalgoritmus Általános algoritmus Példák D B F A C G E Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális Ha megjegyezzük a csúcsokat: A, B, D, F, E, C, G; Ha nem: A, B, F, E, A, B,...

109 Szélességi keresés 3 Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló A mélységi keresés ellentettje, Mindig a legmagasabban fekvő nyílt csúcsot választjuk, Ha minden él költsége ugyanannyi (pl. c(m, n) = 1), akkor a kiértékelő függvény: 8 Opcionális f(n) = g(n) n NYILT 83/370 Az algoritmus mindig talál megoldást amennyiben ez létezik.

110 84/370 Egyenletes keresés 3 Súlyozott változata a szélességi keresésnek, Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális A kiértékelő függvény (általános c(m, n) esetén): f(n) = g(n) n NYILT Az algoritmus mindig talál megoldást amennyiben ez létezik, Dijkstra algoritmusa (1959).

111 85/370 Előretekintő keresés 3 Alapalgoritmus Heurisztikus kereső algoritmus, A kiértékelő függvény csak a heurisztika: f(n) = h(n) n NYILT Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális h(n) heurisztikus függvény. pl. f(n) = W(n) a 8 as kirakójátékban; A keresőgráf kisebb, mint az egyenletes keresés esetében; A keresőgráf nem optimális; Erősen függ a választott keresőfüggvénytől.

112 86/370 A algoritmus 3 Futó: pp ötvözi az egyenletes keresés óvatosságát az előretekintő keresés célratörésével, egyesítve előnyös tulajdonságaikat. Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális Kiértékelő függvény: ahol h(n) > 0. f(n) = g(n) + h(n) n NYILT h(n) becsüli az n-ből a cél csúcsba vivő optimális út költségét.

113 87/370 A algoritmus tulajdonságai 3 Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális Tulajdonságok f (n) = g (n) + h (n) - a startból a célba az n-en keresztül vivő optimális út költségének a becslése. Ha az A algoritmus nem terminál, akkor minden NYILT halmazba került csúcs véges sok lépés után kiterjesztésre kerül. Az A algoritmus mindig talál megoldást feltéve, hogy létezik megoldás.

114 A* algoritmus 3 Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális 88/370 A algoritmus kiértékelő függvénye, ahol A heurisztikus függvény bármely csúcsban alulról becsüli a a célba vezető optimális út költségét, azaz h(n) < h (n) n G A fenti kritérium a heurisztika megengedhetősége. Egy gráfkereső algoritmus megengedhető, ha megoldás A tulajdonságai létezése esetén megtalálja az optimális megoldást. Bármely kiterjesztésre választott csúcsra f(n) f (n). Mindig optimális megoldással terminál, feltéve ha az létezik.

115 89/370 A c algoritmus 3 Korlátozás a heurisztikus függvényre: h(n) kielégíti a monoton megszorítás (monotone restriction) feltételét, ha Alapalgoritmus Általános algoritmus h(n) h(m) c(n, m) (n, m) A Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Egy n csúcs nem kedvezőtlen, ha egy utód m csúcs nagyon kedvező. Opcionális A c algoritmus: az olyan A algoritmus, ahol h(n) monoton megszorításos és h(t) = 0 minden terminális csúcsra.

116 90/370 A c algoritmus tulajdonságai 3 Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló A c tulajdonságai Ha teljesül a monoton megszorítás, akkor egy n csúcsba vezető optimális út mentén a g + h növekvő. Bármely n kiterjesztésre választott csúcshoz az optimális út van megjelölve: g(n) = g (n) Opcionális Mindig optimális megoldással terminál, feltéve ha az létezik.

117 91/370 Gráfkereső összefoglaló 3 Alapalgoritmus a heurisztika nagyon fontos egy algoritmus alkalmazhatósága a választott heurisztikán áll vagy bukik. Általános algoritmus Heurisztikus Nem-informált Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális A A A C Egyenletes Szélességi Előretekintő Mélységi

118 92/370 Opcionális feladatok 3 Alapalgoritmus Általános algoritmus Példák Mélységi Szélességi Egyenletes Előretekintő A alg A* és Ac Összefoglaló Opcionális Gyakorló feladatok gráfokkal Az A algoritmust használva jussunk el egy I 1 I 2 I 3 számból egy J 1 J 2 J 3 számba. Keressük meg az {1,..., N} halmaz k részbe való felosztását. Fejtsük meg a SEND + MORE = MONEY feladatot.. (10 pont) Írjunk programot, mely megoldja a háromszög-kirakós játékot.. (12 pont) Rubik-kígyó megoldása.. (10 pont)

119 Az Előadások Témái 4 Szemantikus halok Definiciós hálók Keretrendszerek Bevezető: mi a mesterséges intelligencia 1 Tudás reprezentáció 2 Gráfkeresési stratégiák 3 Szemantikus hálók / Keretrendszerek 4 Játékok modellezése 5 Bizonytalanság kezelése 6 Grafikus modellek és a D.S. modell 7 Fuzzy rendszerek 8 Tanuló rendszerek 9 Szimulált kifűtés, Genetikus algoritmusok 10 Neurális hálók, a perceptron modell 11 Többrétegű hálók, Önszerveződés 12, 13 93/370 Gépi tanulás 14

120 94/370 Admin trívia 4 Vizsga Szóbeli (60%) + Gyakorlat (40%) Szemantikus halok Definiciós hálók Keretrendszerek Laborgyakorlatok: 1 Gráfok ábrázolása - dedukciós algoritmus 18% 2 Játékelmélet 10% 3 Matlab - tanulási algoritmus 12% 4 Opcionális feladatok - max. 3/személy sok% Bemutatók (5 20 pont) Alkalmazások bemutatása, melyek adaptív, gépi tanulásos vagy mestint módszereket alkalmaznak.

121 Blogbányászat 4 Szemantikus halok Definiciós hálók Keretrendszerek Ok-okozati viszonyokat tanul a gép Amerikai kutatók 3 blogok elemzésére tanítják rendszerüket, mely történetmesélésre összpontosítva, nyelvi jegyek alapján szelektál közülük. A gyűjtött adatokból a kialakuló trendekre és viselkedésformákra következtet a rendszer. A tanítás menete: 1 Blog-bejegyzéseket osztályoztak manuálisan a történet / nem történet osztályokba.. Eredmény: a narratívák azonosítása. 2 A történetek elemei között az oksági kapcsolatok keresése. Pl: késő volt, lefeküdtem.. Eredmény: tények + oksági kapcsolatok. A rendszer sosem unatkozik Távlati cél egy rendszer kidolgozása, mely napi rendszerességgel gyűjt és rendszerez adatokat.ez fontos, mert más forrásokból hozzáférhetetlen, működése hasonló Google sertésinfluenza-követő programjához. Mire jó a blogbányászat? A blog-ok általában azonnali reagálást jelentenek, ezért garantált a gyűjtött bányászott információ aktualitása. Az élet legkülönbözőbb területeit érintik: filmek, könyvek, termékek, nemzetiségi-, vallási ellentétek, kábítószer-kereskedelem... 95/370 3 Andrew Gordon Kreatív Technológiák Intézete Link

122 96/370 Szemantikus hálók 4 Szemantikus halok Definiciós hálók Keretrendszerek Szemantikus háló: Futó:, pp. 186 az emberi információtárolás és keresés modellezése (Quillian & Collins); gyakori név az asszociatív háló. kognitív pszichológiai kísérletek az alapjai ; Tulajdonságok: objektumokhoz tulajdonságokat rendelünk; hierarchia az objektumok szintjén absztrakció a tulajdonságok a legfelsőbb szinten asszociálódnak.

123 97/370 Quillian és Collins kísérlete: 4 Szemantikus halok Definiciós hálók Keretrendszerek Kísérlet: kérdések a madarakról és a reakcióidők mérése. Kérdések: 1 Tud-e a kanári énekelni? 1.3mp 2 Tud-e a kanári repülni? 1.4mp 3 Van-e a kanárinak bőre? 1.5mp Hosszabb asszociációs lánc az utolsó kérdésnél. Magyarázat: egy szemantikus hálóban a bőre és az énekel tulajdonságok nem egyforma távolságra vannak a kanári-tól.

124 98/370 Szemantikus hálók 4 Szemantikus halok Definiciós hálók Keretrendszerek Szemantikus háló: Futó:, pp. 186 az emberi információtárolás és keresés modellezése (Quillian & Collins); gyakori név az asszociatív háló. kognitív pszichológiai kísérletek az alapjai ; Tulajdonságok: objektumokhoz tulajdonságokat rendelünk; hierarchia az objektumok szintjén absztrakció a tulajdonságok a legfelsőbb szinten asszociálódnak.

125 99/370 Kanári szemantikus háló 4 Szemantikus halok Definiciós hálók Keretrendszerek Szemantikus háló: Irányított gráf, ahol Csúcsok: objektumok, objektumosztályok és tulajdonságok értékei; Élek: a csúcsok közötti kapcsolat neve. egy Madár Állat Kanári Strucc tud van tud repülni tud van szárnya egy egy van tollazata tud tud nem_tud méret lélegezni bõre mozogni énekelni repülni repülni nagy

126 100/370 Wordnet Nagy szemantikus háló 4 Szemantikus halok Definiciós hálók Keretrendszerek

127 101/370 Feladatmegoldás szemantikus hálókkal 4 Szemantikus halok Definiciós hálók Keretrendszerek Feladat: lekérdezés megválaszolása adott tárgyköri tudással. Tárgyköri tudás: egy taxonomikus hierarchia azaz egymásba ágyazott objektumok halmaza számítógépes reprezentációja. Adatbázis Lekérdezés: egy célháló illesztése a szemantikus hálóba. Illesztés

128 102/370 Milyen feladatokra megfelelő 4 Szemantikus halok Definiciós hálók Klasszikus logika nyelvén: x ( x MADARAK x REPUL ) egy Állat Keretrendszerek Kivételek kezelése (strucc) nehézkes. Madár tud repülni Melyik alkalmazás modellezhető szemantikus hálóval: játékok, osztályozás, vízelemző rendszerek, nyelvelemzés rendszerkonfigurálás?.

129 103/370 Összefoglaló szemantikus hálók 4 Fogalmak és kapcsolataik modellezése. Szemantikus halok Definiciós hálók Keretrendszerek Asszociatív memóriák. Információk egyszerű reprezentációja!smiley! programozási paradigma jött létre. Ezt használjuk információ reprezentálására? Történelem Keretrendszerek

130 104/370 Definíciós hálók Kitérő 4 Szemantikus halok Definiciós hálók Keretrendszerek Porfirius (i.sz. 300 körül) - magyarázata Arisztotelész Kategóriá jához. Típus és különbözőség szerint rajzolt egy definiciós hálót, ahol alá- és fölérendelt kategóriákat különböztetett meg.

131 105/370 Keretrendszerek 4 Szemantikus halok Definiciós hálók Keretrendszerek Keretalapú Ismeretreprezentáció Futó. pp Minsky - látás egy pszichológiai modelljének a leírása. A tanulmányozott világ fizikai vagy fogalmi entitásainak egy strukturált szimbolikus modellje. hasonlít a szemantikus hálókhoz annak továbbfejlesztése. Új elem a procedurális reprezentáció. Majdnem OOP - a különbség, hogy az OOP keretrendszer célja a kódolás és nem a tudásreprezentáció. Level 5 Object

132 106/370 FRAME-rendszerek I 4 a Frame egy adatstruktúra, mely információt tartalmaz egy objektumról vagy entitásról; Szemantikus halok Definiciós hálók Keretrendszerek keret, melyben egy objektum statikus és funkcionális tulajdonságait tároljuk; Egy Frame-rendszer az egyedi Frame-ek kapcsolt rendszere. Minsky definiálta 1975-ben. Az általa adott név: Data-structures for representing stereotyped situations

133 106/370 FRAME-rendszerek I 4 a Frame egy adatstruktúra, mely információt tartalmaz egy objektumról vagy entitásról; Szemantikus halok Definiciós hálók Keretrendszerek keret, melyben egy objektum statikus és funkcionális tulajdonságait tároljuk; Egy Frame-rendszer az egyedi Frame-ek kapcsolt rendszere. Minsky definiálta 1975-ben. Az általa adott név: Data-structures for representing stereotyped situations

134 106/370 FRAME-rendszerek I 4 a Frame egy adatstruktúra, mely információt tartalmaz egy objektumról vagy entitásról; Szemantikus halok Definiciós hálók Keretrendszerek keret, melyben egy objektum statikus és funkcionális tulajdonságait tároljuk; Egy Frame-rendszer az egyedi Frame-ek kapcsolt rendszere. Minsky definiálta 1975-ben. Az általa adott név: Data-structures for representing stereotyped situations

135 106/370 FRAME-rendszerek I 4 a Frame egy adatstruktúra, mely információt tartalmaz egy objektumról vagy entitásról; Szemantikus halok Definiciós hálók Keretrendszerek keret, melyben egy objektum statikus és funkcionális tulajdonságait tároljuk; Egy Frame-rendszer az egyedi Frame-ek kapcsolt rendszere. Minsky definiálta 1975-ben. Az általa adott név: Data-structures for representing stereotyped situations

136 FRAME-reprezentáció II 4 Szemantikus halok Definiciós hálók Keretrendszerek frame Személy instance-of: Class azonosító: személyi vezetéknév: keresztnév: end frame Főiskolás is-a: Személy közös-cím: hallg@foisk.hu levél-cím: end frame Kosárcsapat instance-of: Class edző: Személy játékosok: collection-of Személy end frame Főiskolás-kosárcsapat instance-of: Kosárcsapat edző: Oktató játékosok: collection-of Főiskolás frame Szöcskék instance-of: Főiskolás-kosárcsapat frame Kosarazó játékosok: Péter, Tamás,... is-a: Személy end havi-juttatás: end frame Péter instance-of: Főiskolás instane-of: Kosár-center levél-cím: peter@foisk.hu frame Kosár-center is-a: Kosárlabdázó end magasság: 193 havi-juttatás: end 107/370

137 108/370 Démonok 4 Szemantikus halok Definiciós hálók Keretrendszerek Démonok Eljárások, melyeket osztályokhoz illetve azok attribútumaihoz lehet hozzárendelni. paraméterezés : mikor lépjenek működésbe (milyen esemény bekövetkeztekor). when-needed-demon when-changed-demon when-deleted-demon when-added-demon Frame-rendszer működése: rendszer összes démonának együttes működése (pl. útkereszteződés működtetése).

138 109/370 FRAME-ek tulajdonságai 4 Szemantikus halok Definiciós hálók Keretrendszerek Egy keret vagy osztály vagy példány. Különbség az is-a illetve az instance-of között. Többszörös öröklődés - amikor egy osztály lehet több osztálynak az utóda. Példányok a hierarchia alján - nem lehet tovább példányosítani. Mi történik egy hiányos osztályleírás esetén? A rendszer a megszorítások alapján kiegészíti vagy nem a hiányzó információkat (pl. Péter nem főiskolás).

139 Az Előadások Témái 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Bevezető: mi a mesterséges intelligencia 1 Tudás reprezentáció 2 Gráfkeresési stratégiák 3 Szemantikus hálók / Keretrendszerek 4 Játékok modellezése 5 Bizonytalanság kezelése 6 Grafikus modellek és a D.S. modell 7 Fuzzy rendszerek 8 Tanuló rendszerek 9 Szimulált kifűtés, Genetikus algoritmusok 10 Neurális hálók, a perceptron modell 11 Többrétegű hálók, Önszerveződés 12, /370 Gépi tanulás 14

140 111/370 Admin trívia 5 Vizsga Szóbeli (60%) + Gyakorlat (40%) Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Laborgyakorlatok: 1 Gráfok ábrázolása - dedukciós algoritmus 18% 2 Játékelmélet 10% 3 Matlab - tanulási algoritmus 12% 4 Opcionális feladatok - max. 3/személy sok% Bemutatók (5 20 pont) Alkalmazások bemutatása, melyek adaptív, gépi tanulásos vagy mestint módszereket alkalmaznak.

141 112/370 Játékelmélet Futó, pp problems arising when we try to plan ahead in presence of hostile agents... Russell&Norvig, pp. 122 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Babbage (1846) - gépet tervez, mely Tic-tac-toe-t játszik, Leonardo Torres y Quevedo (1890) - sakk végjáték, von Neumann & Morgenstern (1944) - Theory of games and Economic Behaviour Shannon és Turing (1950) - sakkprogram, mert 1 intelligencia szükséges a játékhoz, 2 egyszerű szabályok, 3 teljes informáltság, McCarthy (1956) - vágások.

142 113/370 Játékok és keresés 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Ismeretlen ellenfél: Nem ismerjük a lépéseit, Feltételezzük, hogy nyerni akar. Válasz: egy stratégia, mely az ellenfél minden lehetséges lépését figyelembe veszi. Sakk-program esetében: nincs lehetőség az összes lehetőség vizsgálatára szükségesek a közelítések, heurisztikák. Mit közelítünk?

143 114/370 Játékok típusai 5 Determinisztikus Valószínűségi Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Teljes információs Mono- Table, poly Sakk, Go, Dáma Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Részleges információs battleship bridge, póker?? Kupacos játék - Maya.

144 115/370 Kétszemélyes játékok I 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Kétszemélyes teljes információs játékok: két játékos lép felváltva, adott szabályok szerint; a játékosok minden információval rendelkeznek; minden állapotban véges számú lépés létezik; véges a játszma ideje; az egyik játékos mindig nyer (esetenként lehetséges döntetlen...) Ezzel a játékosztállyal foglalkozunk.

145 Kétszemélyes játékok II 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Formális definíció: Két játékos, legyen MAX illetve MIN; MAX kezd; ismert kezdőállapot; műveletek, melyek leírják a lehetséges lépéseket; játék végének a tesztje; nyereség-függvény; Stratégia: szabály az egyik MAX játékos optimális lépéseinek megadására. 116/370

146 117/370 Nim játék 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Nim = nip + muster Játék: gyufaszálak több sorban; adott gyufaszál minden sorban; [n 1,..., n m ] lépés = egy sorból i valahány gyufaszál elvétele; 0 n i < n i játék vége: elfogynak a gyufaszálak; i; n i = 0 veszít az a játékos, mely már nem tud gyufaszálat felvenni. m Változatok: vesztes az utolsó gyufaszálat felvevő; nem lehet tetszőleges számú elemet felvenni, etc.

147 118/370 Nim játék 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló A játék állásai: Nyerő ha a játékos tud úgy lépni, hogy az ellenfél lépéseitől függetlenül nyer; Vesztő ha nincs nyerő lépés. Nyerő stratégia: = = = (XOR) Állítás: azon állások vesztők, melyekre az XOR csupa nullát eredményez.

148 119/370 Nim játék tulajdonságai 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Állítás: azon állások vesztők, melyekre az XOR csupa nullát eredményez. 1. Lemma Ha egy állásban az XOR nem csupa nullát eredményez, akkor van lépés, mely az XOR szerint nullát eredményez. 2. Lemma Ha egy állapotban az XOR csupa nulla, akkor nincs lépés, mely eredményeként az XOR nulla lesz. Nyerő stratégia Ha XOR nem nulla, akkor le tudjuk nullázni és az ellenfél nem tud olyat lépni, hogy számunkra megint nulla legyen. = nyerő stratégia.

149 119/370 Nim játék tulajdonságai 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Állítás: azon állások vesztők, melyekre az XOR csupa nullát eredményez. 1. Lemma Ha egy állásban az XOR nem csupa nullát eredményez, akkor van lépés, mely az XOR szerint nullát eredményez. 2. Lemma Ha egy állapotban az XOR csupa nulla, akkor nincs lépés, mely eredményeként az XOR nulla lesz. Nyerő stratégia Ha XOR nem nulla, akkor le tudjuk nullázni és az ellenfél nem tud olyat lépni, hogy számunkra megint nulla legyen. = nyerő stratégia.

150 119/370 Nim játék tulajdonságai 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Állítás: azon állások vesztők, melyekre az XOR csupa nullát eredményez. 1. Lemma Ha egy állásban az XOR nem csupa nullát eredményez, akkor van lépés, mely az XOR szerint nullát eredményez. 2. Lemma Ha egy állapotban az XOR csupa nulla, akkor nincs lépés, mely eredményeként az XOR nulla lesz. Nyerő stratégia Ha XOR nem nulla, akkor le tudjuk nullázni és az ellenfél nem tud olyat lépni, hogy számunkra megint nulla legyen. = nyerő stratégia.

151 120/370 Nim játék példa 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Kezdeti állapot: = = = (XOR) Válasszuk az utolsó (8 elemes) sort. Ahhoz, hogy mindenhol 0 legyen = 6 kell maradjon, tehát 2 elemet kell elvenni. Az új pozíció vesztes.

152 121/370 Nim játék gráfja 5 1, 2 A lép Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése játék gráfja véges mélységű; 0, 2 B lép 1, 1 B lép 1, 0 B lép Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Nyerő stratégia: mindig van legalább egy olyan lépés, melyből győzni tud; függetlenül attól, hogy az ellenfél mit lép; 0, 1 A lép 0, 0 A lép 1, 0 A lép 0, 0 B lép

153 122/370 Tic-Tac-Toe amőba 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló MAX(X) MIN(O) MAX(X) MIN(O) Vég A játék gráfja Jutalom: 1 0 1

154 123/370 Nyerő stratégia létezése 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Tétel Egy teljes információjú kétszemélyes játék esetén mindig létezik egy játékos számára nyerő stratégia (ha nincs döntetlen).. MAX Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Bizonyítás: Az élek címkézése lentről felfelé. Ha B lép,... MIN ág, mely B-vel van címkézve, akkor B, ellenkező esetben A. B B A B A A MAX

155 124/370 Majdnem NIM Példa 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Kuglizás ahol az összes bábú egy sorban van, tehát csak egy vagy két egymásmelletti bábút tudunk leütni. Vesztes, akinek először nem marad bábúja. Feladat: Határozzuk meg a játék állapotterét k = 3 szomszédos bábúra; Határozzuk meg, hogy az kezdő játékos nyer vagy veszít. Számítsuk ki, hogy a kezdő játékos nyertes-e k = 5 egymás-melletti bábú esetén. Írjunk programot, mely meghatározza, hogy a kezdő játékos nyer-e tetszőleges konfigurációnál.

156 125/370 Stratégiák keresése 5 Stratégia nem kereshető mert a teljes gráf nem fér el a memóriában; Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló túl sok állapot. Sakk: 45 lépés tehát 90 mélységű fa, 35 lehetőség; = levél összes elektron Deep Blue 32CPU 8 dedikált sakk-processzor (13-30 mélységig; 30 milliárd lépés/perc)

157 126/370 Minimax algoritmus 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Minimax algoritmus: bonyolultabb játékok esetén használják; nem építhető meg a teljes játékfa; nem talál biztosan nyerő stratégiát; erős vagy elég jó lépés; Közelítéseket adunk a nyerő/vesztes értékelés helyett.

158 127/370 Minimax algoritmus játékfákon 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Játékfa építése adott mélységig; Levelek címkézése: kiértékelő függvény Értékek visszaterjesztése lásd Nyerő stratégia ; A gyökér-címke értékű lépés megtétele; MAX MIN MAX

159 127/370 Minimax algoritmus játékfákon 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Játékfa építése adott mélységig; Levelek címkézése: kiértékelő függvény Értékek visszaterjesztése lásd Nyerő stratégia ; A gyökér-címke értékű lépés megtétele; MAX MIN MAX

160 127/370 Minimax algoritmus játékfákon 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Játékfa építése adott mélységig; Levelek címkézése: kiértékelő függvény Értékek visszaterjesztése lásd Nyerő stratégia ; A gyökér-címke értékű lépés megtétele; MAX MIN MAX

161 127/370 Minimax algoritmus játékfákon 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Játékfa építése adott mélységig; Levelek címkézése: kiértékelő függvény Értékek visszaterjesztése lásd Nyerő stratégia ; A gyökér-címke értékű lépés megtétele; MAX MIN MAX

162 128/370 Negamax algoritmus 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló A minimax algoritmusnál a különböző játékosok lépéseinél minimumot vagy maximumot kerestünk; A negamax algoritmus egyesíti a kétfajta optimális lépést: minden lépésben maximumot számol, ellenben az előző szint negált értékei szerint. a javasolt lépés a csúcs negált értékű utódjába történő lépés;

163 129/370 Negamax algoritmus működése 5 3 -MAX Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló MAX MAX

164 129/370 Negamax algoritmus működése 5 3 -MAX Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló MAX MAX

165 129/370 Negamax algoritmus működése 5 3 -MAX Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló MAX MAX

166 129/370 Negamax algoritmus működése 5 3 -MAX Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló MAX MAX

167 Minimax/Negamax tulajdonságok 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Tulajdonságok: Teljesség megtalálja az optimális lépést, ha ilyen létezik? Ha a játékfa véges. igen Optimalitás a legjobb lépést találja meg? Ha az ellenfél is racionális. Bonyolultság: O(b m ) Memóriaigény: O(bm) igen kimenő élek b kiértékelés mélysége m Sakk-program: b 35, m 100, Hatékonyság növelése: VÁGÁSOK 130/ = levél v.ö: összes elektron

168 Minimax/Negamax tulajdonságok 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Tulajdonságok: Teljesség megtalálja az optimális lépést, ha ilyen létezik? Ha a játékfa véges. igen Optimalitás a legjobb lépést találja meg? Ha az ellenfél is racionális. Bonyolultság: O(b m ) Memóriaigény: O(bm) igen kimenő élek b kiértékelés mélysége m Sakk-program: b 35, m 100, Hatékonyság növelése: VÁGÁSOK 130/ = levél v.ö: összes elektron

169 Minimax/Negamax tulajdonságok 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Tulajdonságok: Teljesség megtalálja az optimális lépést, ha ilyen létezik? Ha a játékfa véges. igen Optimalitás a legjobb lépést találja meg? Ha az ellenfél is racionális. Bonyolultság: O(b m ) Memóriaigény: O(bm) igen kimenő élek b kiértékelés mélysége m Sakk-program: b 35, m 100, Hatékonyság növelése: VÁGÁSOK 130/ = levél v.ö: összes elektron

170 Minimax/Negamax tulajdonságok 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Tulajdonságok: Teljesség megtalálja az optimális lépést, ha ilyen létezik? Ha a játékfa véges. igen Optimalitás a legjobb lépést találja meg? Ha az ellenfél is racionális. Bonyolultság: O(b m ) Memóriaigény: O(bm) igen kimenő élek b kiértékelés mélysége m Sakk-program: b 35, m 100, Hatékonyság növelése: VÁGÁSOK 130/ = levél v.ö: összes elektron

171 Minimax/Negamax tulajdonságok 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Tulajdonságok: Teljesség megtalálja az optimális lépést, ha ilyen létezik? Ha a játékfa véges. igen Optimalitás a legjobb lépést találja meg? Ha az ellenfél is racionális. Bonyolultság: O(b m ) Memóriaigény: O(bm) igen kimenő élek b kiértékelés mélysége m Sakk-program: b 35, m 100, Hatékonyság növelése: VÁGÁSOK 130/ = levél v.ö: összes elektron

172 Minimax/Negamax tulajdonságok 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Tulajdonságok: Teljesség megtalálja az optimális lépést, ha ilyen létezik? Ha a játékfa véges. igen Optimalitás a legjobb lépést találja meg? Ha az ellenfél is racionális. Bonyolultság: O(b m ) Memóriaigény: O(bm) igen kimenő élek b kiértékelés mélysége m Sakk-program: b 35, m 100, Hatékonyság növelése: VÁGÁSOK 130/ = levél v.ö: összes elektron

173 Alfa-béta vágás I 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Minimax/negamax algoritmus költséges mert nagyon sok csúcsot kell generálni; azonban Tudjuk, hogy az értékelés a minimax szabály szerint történik; Az alfa-béta vágások módszere figyelembe veszi a már kiszámított csúcsok értékét (McCarthy 1956 sakk) és csak olyan csúcsokat nem értékel ki, ahova racionális játék során nem jutunk el. Kiértékelés során bevezetett változók: α MAX szint utódjainak maximuma; csak növekedhet. β MIN szint utódjainak minimuma; csak csökkenhet. 131/370

174 132/370 Alfa-béta vágás II 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Vágás: művelet, melynek eredményeként nem értékeljük ki egy csúcshoz tartozó többi utódcsúcsot. Vágási kritériumok: MIN csúcs alatt vágunk, ha az egyik őséhez rendelt α érték nagyobb, mint a csúcs β értéke. alfa vágás MAX csúcs alatt vágunk, ha az egyik őséhez rendelt β érték kisebb, mint a csúcs α értéke. béta vágás Egy kiértékelést abba lehet hagyni, ha: α β

175 133/370 Alfa-béta vágás példa 5 3 MAX Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax < 3 MIN Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló X X MAX

176 133/370 Alfa-béta vágás példa 5 3 MAX Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax < 3 MIN Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló X X MAX

177 133/370 Alfa-béta vágás példa 5 3 MAX Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax < 3 MIN Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló X X MAX

178 133/370 Alfa-béta vágás példa 5 3 MAX Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta < 3 < 14 MIN Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló X X MAX

179 133/370 Alfa-béta vágás példa 5 3 MAX Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax < 3 < 5 MIN Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló X X MAX

180 133/370 Alfa-béta vágás példa 5 3 MAX Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax < 3 2 MIN Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló X X MAX

181 133/370 Alfa-béta vágás példa MAX Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta < 3 2 < 5 < 14 MIN Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló X X MAX

182 134/370 Alfa-béta algoritmus tulajdonságai 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló a vágások nem módosítják a megoldások minőségét; hatékony vágások (első eset) megvalósítása a csúcsok rendezésével: idő-komplexitás: O(b m/2 ) Fontos a tudás hol lehet jó csúcsokat találni kódolása.

183 135/370 Létező játékprogramok: 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Dáma Chinook program 40 éves nyerési sorozatot szakított meg... Sakk Deep Blue 1997-ben megverte Kasparov-ot. Reversi nem játszanak: gép... mindig nyer. Go nem játszanak: gép... mindig veszít.

184 136/370 Játékelmélet Neumann János 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Jellemzők: két játékos van: a sor illetve az oszlop játékos. a sor-játékos a számára elérhető m stratégia közül pontosan egyet választ. az oszlop-játékos a számára elérhető n stratégia közül pontosan egyet választ. A választások egymástól függetlenek. Ha a sor játékos az i opciót, az oszlop játékos a j opciót választotta, a sor játékos nyeresége a ij. Stratégia: szabályrendszer, mely előírja, hogy egy játékos mit kell lépjen. Neumann János tétele - kevert stratégiákra null-összegű játékokon.

185 137/370 Stratégia játékokban Példa 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Két játékos, mindegyiknek van valahány stratégiája, melyek közül választhat (A 3, illetve B 4). Nyereségmátrix az A számára; veszteség B-nek. B.1 B.2 B.3 B.4 A A A ? Ha A nem tudja, hogy B mit fog lépni, melyik a legjobb lépés?

186 Minimax tulajdonság 5 Jatekelmelet Kétszemélyes játékok NIM Nyereségmátrix: (a sor játékos számára) Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Azon stratégiát válassza, mely a legkisebb nyereségek maximumát adja. Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Minimax játékos: ( max i min M ij j ) ( ) min max M ij j i azaz: az A legalább min max-ot nyer. 138/370

187 Minimax tulajdonság 5 Jatekelmelet Kétszemélyes játékok NIM Nyereségmátrix: (a sor játékos számára) Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Azon stratégiát válassza, mely a legkisebb nyereségek maximumát adja. Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Minimax játékos: ( max i min M ij j ) ( ) min max M ij j i azaz: az A legalább min max-ot nyer. A sor-játékos az első sort választja 1 nyereséggel 138/370

188 139/370 Kevert stratégia 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Nyereségmátrix: De: vannak a nyereségmátrixnak sokkal nagyobb elemei is, tehát kell legyen jobb választás; Kevert stratégiával játszunk: a sorjátékos válassza: x 1 valószínűséggel az első sort; x 2 valószínűséggel a második sort; x 3 valószínűséggel a harmadik sort (x 3 = 1 x 1 x 2 ); Az oszlop játékos ugyanígy választhat. Feltételezzük, hogy sokszor játsszuk ugyanazon mátrix szerint.

189 140/370 Kevert stratégia létezési tétele 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Neumann-tétel Minden nulla-összegű játék esetén létezik egy olyan keveréke a stratégiáknak, mely minimax tulajdonsággal rendelkezik. Bizonyítás: x = [x 1,..., x n ] Π n y Π m Átlagnyereség: x T My max min x T My = m Π m x Π n V = V }{{} = min m Π m max x Π n x T My teljes biz. Finta - operációs kutatások

190 140/370 Kevert stratégia létezési tétele 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Neumann-tétel Minden nulla-összegű játék esetén létezik egy olyan keveréke a stratégiáknak, mely minimax tulajdonsággal rendelkezik. Bizonyítás: x = [x 1,..., x n ] Π n y Π m Átlagnyereség: x T My max min x T My = m Π m x Π n V = V }{{} = min m Π m max x Π n x T My teljes biz. Finta - operációs kutatások

191 Minimax tétel 5 Példa: [ ] T [ ] 0 1 x y 2 0 Arányokkal: M 1 x 1 y XMAPLE KÓD Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló A nyeresége maximális, ha 2/3 valószínűséggel az első, 1/3-dal a második stratégia szerint játszik. 141/370

192 142/370 Olló papír kő 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Szabályok: két játékos játszik egyszerre mutatnak egy... papírt követ ollót papír: becsomagolja a követ; kő: kicsorbítja az ollót; olló: elvágja a papírt Teljes szimmetria nincs optimális stratégia. Optimális kevert stratégia: [1/3, 1/3, 1/3].

193 143/370 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Egy paradoxon Stratégiák Székely J.G.: Paradoxonok a véletlen matematikájában. Ketten játszanak: Q és R. Egy vagy két ujjat mutatnak fel; Páros ujj-szám esetén Q fizet R-nek, ellenkező esetben fordítva; annyit nyernek/veszítenek, ahány ujjat felmutattak. Ismételt játékok esetén mi a nyerő stratégia? Nyereség mátrix: Q.1 Q.2 R R r T M q = 2r 1 q 1 3r 1 q 2 3r 2 q 1 + 4r 2 q 2 Mindegyik játékos úgy játszik, hogy az eredmény ne függjön a másik játékostól, valamint tudva, hogy p 2 = 1 p 1 és q 2 = 1 q 1, a játék értéke: V = (12r 1 7)q 1 + (4 7r 1 ) R választása: 12r 1 7 = 0. A megoldás: r 1 = 7/12, r 2 = 5/12, q 1 = 7/12, q 2 = 5/12 Átlagnyereség: 1/12

194 144/370 Tizenegyes-rúgások Példa 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Tizenegyes rúgásn: a játékos rúg, a kapus véd. A kapus a lövés előtt elmozdul. A játékos szintén a lövés előtt dönt. Milyen stratégiát kövessenek? B K J B K J A bűntetőt Balra, Középre, vagy Jobbra lehet lőni, a kapus is erre vetődhet. Kevert stratégiákat keresünk. Játékos x = [x 1, x 2, 1 x 1 x 2 ] és kapus y = [y 1, y 2, 1 y 1 y 2 ]. x T M y = 8y 1 x 1 4y 1 x 2 + 4y 1 7y 2 x 2 + 3y 2 + 4x 1 4x 1 y 2 + 3x = x 1 (8y 1 + 4y 2 4) x 2 (4y 1 + 7y 2 3) + 4y 1 + 3y Innen: y 1 = 2/5 ; y 2 = 1/5 y 3 = 2/5. (szimmetria okán a kapus ugyanígy kell eljárjon.)

195 144/370 Tizenegyes-rúgások Példa 5 Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Tizenegyes rúgásn: a játékos rúg, a kapus véd. A kapus a lövés előtt elmozdul. A játékos szintén a lövés előtt dönt. Milyen stratégiát kövessenek? B K J B K J A bűntetőt Balra, Középre, vagy Jobbra lehet lőni, a kapus is erre vetődhet. Kevert stratégiákat keresünk. Játékos x = [x 1, x 2, 1 x 1 x 2 ] és kapus y = [y 1, y 2, 1 y 1 y 2 ]. x T M y = 8y 1 x 1 4y 1 x 2 + 4y 1 7y 2 x 2 + 3y 2 + 4x 1 4x 1 y 2 + 3x = x 1 (8y 1 + 4y 2 4) x 2 (4y 1 + 7y 2 3) + 4y 1 + 3y Innen: y 1 = 2/5 ; y 2 = 1/5 y 3 = 2/5. (szimmetria okán a kapus ugyanígy kell eljárjon.)

196 145/370 Játékok összefoglaló 5 Játékok fontos szemléltető eszközök: Nincs tökéletes megoldás, tehát közelítenünk kell; Jatekelmelet Kétszemélyes játékok NIM Tic Tac Toe Nyerő Stratégia Strat. keresése Minimax alg. Negamax Alfabéta Játékprogramok Ismétlődő játékok Null-összegű játékok Neumann tétel Példa Összefoglaló Formalizálás: jó ötlet azon gondolkodni, hogy min kell gondolkodni ; Játékok: mint a Formula 1 az autók számára.

197 Az Előadások Témái 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Bevezető: mi a mesterséges intelligencia 1 Tudás reprezentáció 2 Gráfkeresési stratégiák 3 Szemantikus hálók / Keretrendszerek 4 Játékok modellezése 5 Bizonytalanság kezelése 6 Grafikus modellek és a D.S. modell 7 Fuzzy rendszerek 8 Tanuló rendszerek 9 Szimulált kifűtés, Genetikus algoritmusok 10 Neurális hálók, a perceptron modell 11 Többrétegű hálók, Önszerveződés 12, /370 Gépi tanulás 14

198 147/370 Admin trívia 6 Vizsga Szóbeli (60%) + Gyakorlat (40%) Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Laborgyakorlatok: 1 Gráfok ábrázolása - dedukciós algoritmus 18% 2 Játékelmélet 10% 3 Matlab - tanulási algoritmus 12% 4 Opcionális feladatok - max. 3/személy sok% Bemutatók (5 20 pont) Alkalmazások bemutatása, melyek adaptív, gépi tanulásos vagy mestint módszereket alkalmaznak.

199 Fellendülőben az MI 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány MI-divat? Az MI célja, hogy a gépek emberre jellemző tulajdonságokkal rendelkezzenek: nyelvhasználat, fogalomalkotás, elvonatkoztatás, nem triviális problémák megoldása, öntökéletesítés. (McCarthy, Minsky, Shannon) Grafikus modellek GM feladatok Irányítatlan GM-ek MI a mindennapokban A kifejezetten mérnöki munka és alkalmazott tudományok terén elért eredményeket figyelembe véve, a gépi tanulás technikáinak különböző problémákra (webes keresés, pénzügyek, molekuláris rendszerek megértése) történt alkalmazása a legsikeresebb MI részterület. Terry Winograd szerint. Ezek az eredmények, és más területek, például a robotika fejlődése intelligensebb gépekhez vezetnek. Winograd home 148/370

200 149/370 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Bizonytalanság Russell & Norvig, 1995, 415. o. In which we see what an agent should do when not all is crystal clear. Futó et.al Ezidáig: következtetések olyan esetekben, ahol tudtuk egy esemény tény bekövetkezését. ismertük az események közötti kapcsolatrendszert: ok okozat Problémamegoldás során a tudásunk: hiányos nem tudunk/akarunk válaszolni; nem megbízható tudjuk, hogy max. 70%... nem precíz nincs megfelelő formalizmus a leíráshoz; ellentmondásos több forrás konfliktus;

201 150/370 Bizonytalanság típusai 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Hiányzó adat Rosszul kitöltött kérdőív Bizonytalan A betegség csak valószínűsíthető adat Bizonytalan fogalmak Pl. gyorsan hajtott Ellentmondások Összegzésnél egymásnak ellentmondó adatok

202 151/370 Bizonytalanság kezelése 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Numerikus modellek Bayes-modell, Bayes-hálók, Dempster Shafer: megbízhatóságelmélet, Fuzzy modell Szimbolikus modellek nem-monoton rendszerek

203 Cardano és Galilei 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Gerolamo Cardano ( ): Liber de ludo aleae Olasz matematikus, természettudós, csillagász és hazárdjátékos. Először írja le a tífuszt. Legismertebbek az algebrában elért eredményei: megoldotta a harmad- és negyedfokú egyenleteket Ars Magna és a megoldás során felismerte az imaginárius rész szükségességét. Termodinamikai megfontolások alapján tagadta az örökmozgók létezését. Mindig pénzszűkében volt?? sakkozott és kockázott. Az játékokról írt könyve először foglalkozik a valószínűség fogalmával. Galileo Galilei ( ) Olasz természettudós, matematikus, csillagász és filozófus, a tudományos forradalom úttörője. S. Hawking: Galileo a modern tudományok úttörője. Javított a teleszkópok képességein, tökéletesítette a körzőt, bevezette a kinematikát, az asztronómiát, először írta le a Vénusz fázisait. Kijelentette, hogy a természet törvényei matematikai jellegűek, valamint azt, hogy a Föld forog a Nap körül, (majdnem megégett). 152/370 Cardano wiki Galileo wiki

204 Bayes modell I 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek A legrégebbi modell, legjobban definiált technika (kockajáték); Alapja a valószínűségszámítás; Első modellt Cardano 4 alkotta; illetve Galilei 1660 körül, majd Borel és Kolmogorov a XX. században; Valószínűségszámítás: véletlen kísérletek; Kísérletek eredményei: elemi események; Eseménytér: összes esemény Ω teljes esemény T = Ω, üres esemény T =, ellentett esemény A = Ω \ A, egymást kizáró események ha A B =, 153/370 4 Gerolamo Cardano ( ): De Ludo Aleae (1663)

205 154/370 Thomas Bayes presbiteriánus lelkész 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Thomas Bayes ( ): angol matematikus és lelkész, a nevéről elnevezett tétel egy specifikus alakját alkotta meg. Műve: An Essay towards solving a Problem in the Doctrine of Chances halála után, 1763-ban jelent meg. Neve után: Bayes-módszer a valószínűségszámítás keretei között megalapozottan hozott következtetések alkalmazása döntési rendszereknél. A Bayes-alapú valószínűségi döntések nagyon pontosak, a döntési algoritmusok nagyon sikeresek. Bayes wiki

206 155/370 Bayes modell II 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Valószínűség: P : 2 Ω [0, 1] függvény, melyre P(T) = 1 P(F) = 0 T teljes esemény; F üres esemény; P(A B) = P(A) + P(B) ha A és B egymást kizáró események. P(A) az A esemény bekövetkeztének a valószínűsége ha semmi információ nem áll rendelkezésünkre más események bekövetkeztéről. Tulajdonság: P(A) + P(A) = 1.

207 156/370 Bayes modell III 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Teljes eseményrendszer azon {A 1,..., A N }, N > 0 halmazok, melyekre A 1 A 2 A N = Ω és A i A j = i j Tétel: minden {A 1,..., A N } teljes eseményrendszer esetén P(A 1 )+P(A 2 )+ +P(A N ) = P(A 1 A 2 A N ) = P(Ω) = 1 Jelölés: A B def = AB és P(A B) def = P(AB). Feltételes valószínűség: B esemény hatása az A-ra: P(A B)

208 Bayes modell IV 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Bayes szabály: feltételes valószínűség szabálya azaz P(A B) = P(AB) P(B) Tipikus felírás: P(B A)P(A) P(A B) = P(B A)P(A) + P(B A)P(A) ha P(B) 0 ha P(B) 0 Általános Bayes-szabály Egy {A 1,..., A N } teljes eseményrendszer esetén P(A i B) = P(B A i)p(a i ) j P(B A j)p(a j ) ha P(B) 0 157/370

209 158/370 Bayes modell V 6 P(A i B) = P(B A i)p(a i ) j P(B A j)p(a j ) ha P(B) 0 Numerikus modellek Bayes modell Bayes hálók Esettanulmány A B eseményből következtetünk az A i esemény feltételes valószínűségére. Grafikus modellek GM feladatok Irányítatlan GM-ek Ismernünk kell az elsődleges valószínűségeket a priori valószínűségeket: P(A j ); P(B A j ) feltételes valószínűségeket.

210 Bayes modell példa 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Adott a következő szabály: Ha a beteg megfázott, akkor lázas. (75%) Kérdés: Ha a beteg lázas, akkor megfázott.??% Jelölés: M a beteg megfázott L a beteg lázas Szükségesek: P(M) = 0.2 megfázott P(L M) = 0.75 lázas, feltéve, hogy megfázott P(L M) = 0.2 lázas, feltéve, hogy nem fázott meg Ekkor: P(L M)P(M) P(M L) = P(L M)P(M) + P(L M)P(M) ha P(L) 0 Azaz P(M L) = 0.15/0.31 = /370

211 160/370 Bayes modell összefoglaló 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Alkalmazható, ha minden információval rendelkezünk. Gyakorlatban az egymást kizáró eseményrendszer ritka... Előnyök: Elméleti alap, Jól definiált szemantika; Hátrányok: nagyon sok valószínűséget kell megadni, valószínűséget megadása nehéz, változ(tat)ások követése nehéz.

212 161/370 Bayes hálók I 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Bayes modell hátránya a nagy valószínűségi tábla specifikálása, Bayes háló (vélekedésháló, belief network) egyszerűsíti ezt a feladatot, Eszköze az oksági kapcsolatok leírása. Bayes háló Egy adott feladat változóinak oksági struktúráját leíró irányított körmentes gráf. Csomópontok az állítások, élek a kapcsolatok. Élekhez rendelünk feltételes valószínűségi táblákat: összegzik a szülő változó hatását.

213 162/370 Bayes hálók II 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány M L P(M) 0.2 M P(L M) Kiegészíthető: T - tüdőgyulladásos a beteg P(M) 0.2 M P(T) 0.03 T Grafikus modellek GM feladatok Irányítatlan GM-ek Fordítva: M L P(M L) L P(L) 0.31 MT P(L M, T) L

214 162/370 Bayes hálók II 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány M L P(M) 0.2 M P(L M) Kiegészíthető: T - tüdőgyulladásos a beteg P(M) 0.2 M P(T) 0.03 T Grafikus modellek GM feladatok Irányítatlan GM-ek Fordítva: M L P(M L) L P(L) 0.31 MT P(L M, T) L

215 162/370 Bayes hálók II 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány M L P(M) 0.2 M P(L M) Kiegészíthető: T - tüdőgyulladásos a beteg P(M) 0.2 M P(T) 0.03 T Grafikus modellek GM feladatok Irányítatlan GM-ek Fordítva: M L P(M L) L P(L) 0.31 MT P(L M, T) L

216 163/370 Bayes hálók III 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Bayes háló egy adott terület teljes körű leírása. Algoritmus : 1 A területet leíró változók meghatározása; 2 Írjuk fel a többi változótól független csomópontokat tehát gyökérváltozók; 3 Amíg vannak csomópont nélküli változók: 1 Válasszunk egy olyant, mely csak a már leírt változóktól függ. 2 Képezzük azt a minimális halmazt, melyek mind közvetlenül hatnak az új csomópontra; 3 Rajzoljuk be az új éleket és töltsük ki a felt.val. táblát;

217 164/370 Bayes hálók IV 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Háló építésének az alapja P(v 1, v 2,..., v N ) = P(v 1 v 2,..., v N )P(v 2,..., v N ) Az indirekt függőségek kiesnek. A felt.val. törvénye érvényes bármely rendezésre: P(v π1, v π2,..., v πn ) = P(v π1 v π2,..., v πn )P(v π2,..., v πn ) ahol π egy permutáció. Jó könnyen értelmezhető Bayes hálónál fontos az építés sorrendje.

218 165/370 Bayes hálók Példa I 6 P(B) 0.01 Betörés P(F) 0.02 Russell & Norvig pp. 437 Földrengés Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek BF P(R B, F) Riasztó R P(J R) János hívás R P(M R) Mária hívás Sorrend a háló építésénél: B, F, R, M, J.

219 166/370 Bayes hálók Példa II 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek János hívás Riasztó Mária hívás János hívás Földrengés Mária hívás Betörés Riasztó Sorrend: J, M, R, B, F. Földrengés Sorrend: J, M, F, B, R. Betörés

220 166/370 Bayes hálók Példa II 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek János hívás Riasztó Mária hívás János hívás Földrengés Mária hívás Betörés Riasztó Sorrend: J, M, R, B, F. Földrengés Sorrend: J, M, F, B, R. Betörés

221 Bayes hálók Felhasználások 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Diagnosztizáló: hatásokból az okokra; Oksági kapcsolatokat vizsgáló; Kölcsönös kapcsolatokat vizsgáló; Egyszerű műveletek, ha a háló egyszeresen összekötött. Példa: Számoljuk ki a betörés (B) valószínűségét ha János hívott (J): P(B J) illetve akkor, ha hallottuk, hogy földmozgás is volt (F): P(B J, F) Grafikus modelleknél visszatérünk 167/370

222 Bayes hálók Felhasználások 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Diagnosztizáló: hatásokból az okokra; Oksági kapcsolatokat vizsgáló; Kölcsönös kapcsolatokat vizsgáló; Egyszerű műveletek, ha a háló egyszeresen összekötött. Példa: Számoljuk ki a betörés (B) valószínűségét ha János hívott (J): P(B J) illetve akkor, ha hallottuk, hogy földmozgás is volt (F): P(B J, F) Grafikus modelleknél visszatérünk 167/370

223 Bayes hálók Felhasználások 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Diagnosztizáló: hatásokból az okokra; Oksági kapcsolatokat vizsgáló; Kölcsönös kapcsolatokat vizsgáló; Egyszerű műveletek, ha a háló egyszeresen összekötött. Példa: Számoljuk ki a betörés (B) valószínűségét ha János hívott (J): P(B J) illetve akkor, ha hallottuk, hogy földmozgás is volt (F): P(B J, F) Grafikus modelleknél visszatérünk 167/370

224 Bayes hálók Felhasználások 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Diagnosztizáló: hatásokból az okokra; Oksági kapcsolatokat vizsgáló; Kölcsönös kapcsolatokat vizsgáló; Egyszerű műveletek, ha a háló egyszeresen összekötött. Példa: Számoljuk ki a betörés (B) valószínűségét ha János hívott (J): P(B J) illetve akkor, ha hallottuk, hogy földmozgás is volt (F): P(B J, F) Grafikus modelleknél visszatérünk 167/370

225 168/370 Esettanulmány PathFinder I 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek PATHFINDER: szakértői rendszer nyirokmirigy-gyulladások diagnosztizálására; Fejlesztője D. Heckermann; Stanford Medical Computer Science 80-as években; > 60 betegségtípus és > 100 szimptóma illetve teszt-eredmények. Russell & Norvig, pp

226 PATHFINDER IV jobb, mint az azt alkotó szakértők. 169/370 Esettanulmány PathFinder II 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Verziók: I szabályalapú rendszer, bizonytalanság beépítése nélkül; II kísérletek különböző modellekkel: Bayes háló a legjobb (10%). III Az alig-valószínű események. IV Valószínűségi háló Belief Net használata. 8 óra szótár meghatározása; 35 óra háló meghatározása; 40 óra val.-ek becslése (1400 val.g).

227 Grafikus modellek I 6 Grafikus modellek (probabilistic graphical models - PGM) Kevin Murphy Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek A gráfelmélet és a valószínűségszámítás ötvözése. gráf, mely egy rendszer függőségeit ábrázolja; csúcsokhoz rendelt függvények, melyek a változók közötti kapcsolatot írják le; Minden grafikus modell szemléletmód 5 Bayes háló irányított aciklikus gráfú PGM; Markov modell irányítatlan PGM /370 minden feladat szeg, ha egy kalapácsot tartunk a kezünkben...

228 171/370 Grafikus modellek (GM) II 6 Irányított GM Irányítatlan GM X Y W Numerikus modellek X Y Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Z Z Irányítatlan GM-ek feltételes függetlenség; kauzális relációk; feltételes függetlenség; szimmetrikus; (láttuk) X Y X Y {W, Z} W Z {X, Y}

229 172/370 GM feladattípusok I 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Feladatok adott GM struktúrára: események (felt.) val.-nek kiszámítása; állapítsuk meg két csúcs (feltételes) függetlenségét; adatok alapján építsünk optimális gráfot (indukció). Inferencia P(X 13 X 7, X 8, X 9, X 16 ) X 1 X 2 X 3 X 4 X 5 X 6 X 7 X 8 X 9 X 10 Optimális struktúra keresése X 11 X 12 X 13 X 14 X 15 X 16 X 17 X 18

230 172/370 GM feladattípusok I 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Feladatok adott GM struktúrára: események (felt.) val.-nek kiszámítása; állapítsuk meg két csúcs (feltételes) függetlenségét; adatok alapján építsünk optimális gráfot (indukció). Inferencia P(X 13 X 7, X 8, X 9, X 16 ) X 1 X 2 X 3 X 4 X 5 X 6 X 7 X 8 X 9 X 10 Optimális struktúra keresése X 11 X 12 X 13 X 14 X 15 Inference X 16 X 17 X 18 D

231 Irányított GM I 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Bayes labda algoritmus: feltételes függetlenség teszt. d-szeparáltság Egy grafikus modellben X az Y-tól d-szeparált a Z ismeretében, ha minden X-et és Y-t összekötő irányítatlan úton létezik w úgy, hogy: vagy w és a w vagy utódai nincsenek a Z-ben; vagy w nem w és w Z. X Y X Y Z Z 173/370 X Y X Y

232 174/370 Irányított GM Példa 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok X 1 X 2 X 3 X 4 X 5 X 6 X 7 X 8 X 9 X 10 X 11 X 12 X 13 Irányítatlan GM-ek X 14 X 15 Kérdések? X 1 X 10 {X 7, X 8, X 9 } nem? X 1 X 10 igen? X 1 X 15 {X 5, X 6, X 13 } igen

233 174/370 Irányított GM Példa 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok X 1 X 2 X 3 X 4 X 5 X 6 X 7 X 8 X 9 X 10 X 11 X 12 X 13 Irányítatlan GM-ek X 14 X 15 Kérdések? X 1 X 10 {X 7, X 8, X 9 } nem? X 1 X 10 igen? X 1 X 15 {X 5, X 6, X 13 } igen

234 174/370 Irányított GM Példa 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok X 1 X 2 X 3 X 4 X 5 X 6 X 7 X 8 X 9 X 10 X 11 X 12 X 13 Irányítatlan GM-ek X 14 X 15 Kérdések? X 1 X 10 {X 7, X 8, X 9 } nem? X 1 X 10 igen? X 1 X 15 {X 5, X 6, X 13 } igen

235 174/370 Irányított GM Példa 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok X 1 X 2 X 3 X 4 X 5 X 6 X 7 X 8 X 9 X 10 X 11 X 12 X 13 Irányítatlan GM-ek X 14 X 15 Kérdések? X 1 X 10 {X 7, X 8, X 9 } nem? X 1 X 10 igen? X 1 X 15 {X 5, X 6, X 13 } igen

236 175/370 Irányítatlan GM I 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Különbség: X 1 X 2 X 3 X 5 X 6 X 7 X 8 X 11 X 12 X 13 a gráf éleinek nincs iránya; szimmetrikus kapcsolat modellezés.?paraméterezés: felt. val.-gek: nem jók;? Nem konszisztens P(Xi Szomszed i ) Függetlenség: gráfon. Pl: Helyette Φ(Xi, Szomszed i ) {X 1, X 2 } {X 11, X 12, X 13 } {X 5, X 6 } klikkek jellemzése.

237 175/370 Irányítatlan GM I 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Különbség: X 1 X 2 X 3 X 5 X 6 X 7 X 8 X 11 X 12 X 13 a gráf éleinek nincs iránya; szimmetrikus kapcsolat modellezés.?paraméterezés: felt. val.-gek: nem jók;? Nem konszisztens P(Xi Szomszed i ) Függetlenség: gráfon. Pl: Helyette Φ(Xi, Szomszed i ) {X 1, X 2 } {X 11, X 12, X 13 } {X 5, X 6 } klikkek jellemzése.

238 175/370 Irányítatlan GM I 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Különbség: X 1 X 2 X 3 X 5 X 6 X 7 X 8 X 11 X 12 X 13 a gráf éleinek nincs iránya; szimmetrikus kapcsolat modellezés.?paraméterezés: felt. val.-gek: nem jók;? Nem konszisztens P(Xi Szomszed i ) Függetlenség: gráfon. Pl: Helyette Φ(Xi, Szomszed i ) {X 1, X 2 } {X 11, X 12, X 13 } {X 5, X 6 } klikkek jellemzése.

239 175/370 Irányítatlan GM I 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Különbség: X 1 X 2 X 3 X 5 X 6 X 7 X 8 X 11 X 12 X 13 a gráf éleinek nincs iránya; szimmetrikus kapcsolat modellezés.?paraméterezés: felt. val.-gek: nem jók;? Nem konszisztens P(Xi Szomszed i ) Függetlenség: gráfon. Pl: Helyette Φ(Xi, Szomszed i ) {X 1, X 2 } {X 11, X 12, X 13 } {X 5, X 6 } klikkek jellemzése.

240 Irányítatlan GM II 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Klikkek: teljesen összekötött csúcsok. P(X) = 1 φ c (x c ) Z = Z c Klikkek X ahol φ c (x c ) c Klikkek φ c (x c ) 0 potenciál-függvény Z partíciós függvény Gibbs eloszlás Egy eloszlás, mely ábrázolható egy H gráffal és {φ c } c potenciálfüggvényekkel, H fölötti Gibbs eloszlásnak nevezünk. 176/370

241 177/370 Irányítatlan GM III 6 X Y Z Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek A gráf alapján X Z Y P(X, Y, Z) = P(X Y)P(Y, Z) = φ xy (X, Y)φ yz (Y, Z) P(X, Y, Z) = P(Z Y)P(X, Y) = φ yz (Y, Z)φ xy (X, Y) φ c potenciálfüggvények kompatibilitást, összeférhetőséget jelölnek; nem eloszlásfüggvények.

242 178/370 Irányítatlan GM IV 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Exponenciális eloszláscsalád: P(X) = 1 Z φ c (x c ) c Klikkek [ = exp log Z(θ) + f i (x ci ) i I ] Irányítatlan GM-ek ahol f i def = log φ ci I index-halmaz Példa: Gaussz-eloszlás (teljes kapcsolat) [ ] P(X) = exp d log(2π) + log Σ + XT Σ 1 X 2

243 179/370 Irányítatlan GM Feladat 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek X, Y, Z, W { 0, 1 } Ismerjük: [ φxw, φ yw, φ xz, φ yz ] Számítsuk ki: p(y = 1 W = 1) W φ xw(x, W) φ yw(y, W) X Y φ xz(x, Z) φ xz(x, Z) Z Milyen esetekben jók/nem jók a GM-ek?

244 Nagy Bayes-modellek? I 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek 180/370

245 Nagy Bayes-modellek? I 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Learning Hierarchical Bayesian Networks: Automatic Construction of Large-Scale Bayesian Network 180/370

246 181/370 Nagy Bayes-modell II 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek

247 181/370 Nagy Bayes-modell II 6 Numerikus modellek Bayes modell Bayes hálók Esettanulmány Grafikus modellek GM feladatok Irányítatlan GM-ek Számítsuk ki becsüljük meg a modell teljes specifikációjához szükséges elemi és feltételes valószínűségeknek a számát. Feltételezzük, hogy az összes változó bináris.

248 Az Előadások Témái 7 D-S modell D-S definíció Példa D-S logika Bevezető: mi a mesterséges intelligencia 1 Tudás reprezentáció 2 Gráfkeresési stratégiák 3 Szemantikus hálók / Keretrendszerek 4 Játékok modellezése 5 Bizonytalanság kezelése 6 Grafikus modellek és a D.S. modell 7 Fuzzy rendszerek 8 Tanuló rendszerek 9 Szimulált kifűtés, Genetikus algoritmusok 10 Neurális hálók, a perceptron modell 11 Többrétegű hálók, Önszerveződés 12, /370 Gépi tanulás 14

249 183/370 Admin trívia 7 Vizsga Szóbeli (60%) + Gyakorlat (40%) D-S modell D-S definíció Példa D-S logika Laborgyakorlatok: 1 Gráfok ábrázolása - dedukciós algoritmus 18% 2 Játékelmélet 10% 3 Matlab - tanulási algoritmus 12% 4 Opcionális feladatok - max. 3/személy sok% Bemutatók (5 20 pont) Alkalmazások bemutatása, melyek adaptív, gépi tanulásos vagy mestint módszereket alkalmaznak.

250 184/370 Trollok ellen Mestint-tel 7 D-S modell D-S definíció Példa D-S logika Algoritmusok a trollok ellen ( ) Cornell Google együttműködés Leírás: a rosszindulatú komment-elők nagyon zavaróak a web-oldalak működtetői számára (troll-oknak nevezi a szakzsargon).

251 Trollok ellen Mestint-tel 7 D-S modell D-S definíció Példa D-S logika Algoritmusok a trollok ellen ( ) Cornell Google együttműködés Leírás: a rosszindulatú komment-elők nagyon zavaróak a web-oldalak működtetői számára (troll-oknak nevezi a szakzsargon). Cél: a troll módra viselkedő ágensek automatikus azonosítása és törlése. A CNN, az IGN játékoldal, és a Breitbart politikai oldal hozzászólói életútját vizsgálták. Rendelkezésre állt a kitiltott egyéneknek is a viselkedési mintája, más, normális kommentelővel összehasonlítva. Megoldás: automatizált kitiltó rendszer, mely hasonlóságokon alapul. 184/370 The Stack magazine ( )

252 185/370 Dempster Shafer modell Bevezető I 7 Motiváció: szeretnénk döntéseket hozni akkor is, ha az események valószínűségeit nem ismerjük. D-S modell D-S definíció Példa D-S logika Például: Pacino-t meggyilkoltatta a maffia. A rendőrség a következő tényeket gyűjtötte össze: három bérgyilkos van: Tom, John, illetve Angie; a gyilkos kiválasztása a következő volt: ha egy dobás fej, akkor Tom, ellenkező esetben John vagy Angie; DNS-vizsgálatok eredménye 80%-ban férfit valószínűsít. Kérdés: Mekkora az egyes személyek bűnösségének a valószínűsége?

253 186/370 Dempster Shafer modell Bevezető II 7 D-S modell D-S definíció Példa D-S logika Nincs megfelelő valószínűségi modell, mely egyesíteni tudná a két állítást. Bizonytalanság: A tények ismeretében nem tudunk személyt azonosítani. Ábrázolás: a két tényhalmazt ábrázoljuk mértékekkel (e 1 és e 2 arányban megbízható információ) : Első: e 1 m(t) = e 1 50% és m(j, A) = e 1 50% Második: e 2 m(t, J) = e 2 80% és m(a) = e 2 20% Ismerethiány: nem tudunk valószínűségi modellt építeni, melyben ábrázolhatjuk mindkét forrást.

254 187/370 Dempster Shafer modell Bevezető III 7 D-S modell D-S definíció Példa D-S logika Dempster-Shafer modell Egy módja a többféle információ forrás összetételének. Amennyiben e 1 + e 2 = 1 m(t) + m(j, A) + m(t, J) + m(a) = 1 Ha e 1 = e 2 = 50%, tudjuk a halmazok valószínűségét. Nem tudjuk a személyek valószínűségeit. Szeretnénk a fenti információkkal műveleteket végezni.

255 188/370 Dempster Shafer modell I 7 D-S modell D-S definíció Példa D-S logika Cél: megkülönböztetni a bizonytalanságot (uncertainty) az ismerethiánytól (ignorance). Egy atomi B esemény valószínűségét nem ismerjük; A valószínűség-tábla: m(t) m(j, A) m(t, J) m(a) 25% 25% 40% 10% Például: a fentiek alapján tudjuk, hogy p(t) 25%, ugyanakkor p(t) 65%.

256 189/370 Dempster Shafer modell II 7 D-S modell D-S definíció Példa D-S logika Nyilvántartjuk azt, hogy mennyire támogatunk egy állítást Bel(F); (belief) mennyire esélyes az állítás Pl(F); (plausibility) Példa: egy érme szabályossága a vizsgálat előtt: Bel(F) = 0 illetve Bel(F) = 0 de ha 90%-ban megállapítottuk, hogy szabályos, akkor Bel(F) = illetve Bel(F) = A fennmaradó 10% a bizonytalanságot tükrözi.

257 190/370 Dempster Shafer modell III 7 D-S modell D-S definíció Példa D-S logika Példa folyt.: intervallum-logika vizsgálat előtt: p(f) [0, 1]; vizsgálat után: p(f) [0.45, 0.55]; Dempster-Shafer modell: intervallumok kombinálása. Bayes analógia: alsó- illetve felső korlátai egy esemény valószínűségének. Segédfüggvények bevezetése: Bel(A i ) alsó korlát; Pl(A i ) felső korlát; Belief Plausibility

258 191/370 Dempster Shafer modell IV 7 D-S modell D-S definíció Példa D-S logika Belief Bel (A 1 A 2 ) 2 i=1 Bel(A i ) Bel(A 1 A 2 ) Plausibility Pl (A 1 A 2 ) 2 Pl(A i ) Pl(A 1 A 2 ) i=1 A Bel és Pl függvények jellemzése: Egy m : 2 Ω [0, 1] függvény segítségével, melyre m( ) = 0, m(a) = 1 Bel(A) = B A A Ω m(b), Pl(A) = B A m(b)

259 Dempster Shafer modell Tulajdonságok 7 D-S modell D-S definíció Példa D-S logika Bel(A) = B A m(b), Pl(A) = m(b) B A bármely A halmazra Bel(A) Pl(A) B A B A bármely A halmazra Bel(A) = 1 Pl(A) a Bel függvény szubadditív: Bel(A B) Bel(A) + Bel(B) a Pl függvény szuperadditív: Pl(A B) Pl(A) + Pl(B) B A B A B A B A = C A C B C A B 192/370

260 193/370 Dempster Shafer Példa 7 D-S modell D-S definíció Példa D-S logika Jellemezzük az érménket megfigyelés előtt: legyen m({f, I}) = 1 és minden másra m(b) = 0; ekkor Bel(F) = m({f}) = 0 és Pl(F) = m({f}) + m({f, I}) = 1. Megfigyelések után: m({f}) = m({i}) = 0.45 és m({f, I}) = 0.1; az összeg 1; ezért: 1 Bel(F) = m({f}) = 0.45, illetve 2 Pl(F) = m({f}) + m({f, I}) = 0.55; azonosítani tudjuk a határozatlan részt: m({f, I}) = 0.1

261 194/370 Dempster Shafer modell Logikai műveletek 7 D-S modell D-S definíció Példa D-S logika Logikai műveletek definíciója: logikai és: Bel(A 1 A 2 ) = Pl(A 1 A 2 ) = logikai vagy: Bel(A 1 A 2 ) = Pl(A 1 A 2 ) = m(b); B (A 1 A 2 ) B (A 1 A 2 ) m(b); m(b); B (A 1 A 2 ) B (A 1 A 2 ) m(b); Általánosított entrópia: ( AU(Bel) = max ) p x log p x, Bel(A) p x p x x Ω x A

262 195/370 Dempster Shafer modell Kondicionálás 7 D-S modell D-S definíció Példa D-S logika Feltételes Bel és Pl függvények Amennyiben megfigyelünk egy eseményt, a halmazokhoz rendelt súly változik: Ha C igaz, akkor csak a C-t tartalmazó halmazok maradnak, melyekből a C-t töröljük, mint véletlen eseményt: 1 a súlyokat újraszámoljuk; 2 normalizáljuk a rendszert. Egy más univerzum keletkezik. A C nem teljesül, akkor csak C-t nem tartalmazó halmazokat használjuk.

263 196/370 Dempster Shafer modell alkalmazása 7 Használják:... D-S modell D-S definíció Példa D-S logika

264 197/370 Dempster Shafer modell Összefoglaló 7 Konzisztens keretrendszer, mellyel lehet számításokat végezni; D-S modell D-S definíció Példa D-S logika A Bel( ) és Pl( ) függvények definíciója természetes ; Könnyű bizonytalanságot rendelni az eseményekhez ignorancia; Megfigyelt események kezelése kondicionálás nagyon nehéz, újra kell számolni a függvények értelmezési tartományát.

265 Az Előadások Témái 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat Bevezető: mi a mesterséges intelligencia 1 Tudás reprezentáció 2 Gráfkeresési stratégiák 3 Szemantikus hálók / Keretrendszerek 4 Játékok modellezése 5 Bizonytalanság kezelése 6 Grafikus modellek és a D.S. modell 7 Fuzzy rendszerek 8 Tanuló rendszerek 9 Szimulált kifűtés, Genetikus algoritmusok 10 Neurális hálók, a perceptron modell 11 Többrétegű hálók, Önszerveződés 12, /370 Gépi tanulás 14

266 199/370 Admin trívia 8 Vizsga Szóbeli (60%) + Gyakorlat (40%) Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat Laborgyakorlatok: 1 Gráfok ábrázolása - dedukciós algoritmus 18% 2 Játékelmélet 10% 3 Matlab - tanulási algoritmus 12% 4 Opcionális feladatok - max. 3/személy sok% Bemutatók (5 20 pont) Alkalmazások bemutatása, melyek adaptív, gépi tanulásos vagy mestint módszereket alkalmaznak.

267 Jobb gépi fordítás METIS II 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat A gépi fordítás annak ellenére, hogy régóta vizsgált tudományág nem versenyezhet a tolmácsokkal. Még akkor sem, ha az egyértelmű szókészlettel rendelkező, kifejezetten formális szövegeket produkáló területeken például a repülőgép-gyártásban figyelemreméltó eredményeket érnek el. Korpusz Nagy-mennyiségű strukturált, elektronikusan tárolt szövegbázis; Egy adott nyelvet reprezentál, akár több tízmillió szóból is állhat; Általában alterületen használják: statisztikai elemzésekre, illetve nyelvi törvények érvényességének vizsgálatára. A gyűjtemény lehet egyetlen (monolingual) vagy két (több) nyelvű (multilingual). A rendszer így tanulja meg, hogy egy nyelv szavai és kifejezései miként kapcsolódnak egy másik nyelv kifejezéseihez és szavaihoz. A METISII a korábbi szabályalapú évtizedes fejlesztés utáni piacvezető rendszerrel is felveszi a versenyt /370 ICT project

268 201/370 Fuzzy rendszerek Bevezető 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat Döntések bizonytalan helyzetekben a D.S. rendszerhez hasonlóan akkor, amikor a valószínűség szabályai nem alkalmazhatóak. Tipikusan: Tények gyorsan hajtott, magas ember, kb. 180 cm, olajos ruha,... Szabályok ha gyorsan hajt és lassan lélegzik akkor lassítson az elektronika... Szükség van egy keretrendszerre, mely a fentieket képes programozni: 1 Szabályokat tudunk megadni; 2 Információt adatokat tudunk bevinni; 3 Következtetéseket tudunk levonni döntéshozatal;

269 202/370 Fuzzy rendszerek Bevezető II 8 Egy fuzzy rendszer építésének logikai sémája: Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat Megrendelő Fejlesztő X In Fuzzyfikálás Fuzzy Szabályok Fuzzy motor, következtetések Defuzzyfikálás Z Out

270 202/370 Fuzzy rendszerek Bevezető II 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat Egy fuzzy rendszer építésének logikai sémája: A megrendelő közli a fejlesztővel a változókat szabályokat a fejlesztő Megrendelő a szabályokat átírja a fuzzy logika szerint; a szabályok köré építi a következtetőt, ami a rendszert eredményezi. Fejlesztő X In Fuzzyfikálás Fuzzy Szabályok Fuzzy motor, következtetések Defuzzyfikálás Z Out

271 203/370 Fuzzy rendszerek Bevezető III 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat Egy fuzzy rendszer működéséhez Szükségünk van: Keretrendszerre, mely a szabályokat értelmezni tudja; Fuzzyfikáló modulra, mely a megfigyeléseket átalakítja a fuzzy logika nyelvére; Következtető modulra; De-fuzzyfikáló modulra. Eszköz Fuzzy halmazelmélet; Fuzzy logika.

272 204/370 Történelmi visszatekintő 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat Fuzzy: homályos, zavaros, bizonytalan, kócos 65 Zadeh: Fuzzy Sets ; 70 Fuzzy elmélet robotikai alkalmazása; 75 Japán Empirikus vizsgálatok és széles körű alkalmazások; Technológiai standard, Lotfi A. Zadeh Felhasználás: Ha magas a hőmérséklet, akkor a nyomás is magas;

273 204/370 Történelmi visszatekintő 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat Fuzzy: homályos, zavaros, bizonytalan, kócos 65 Zadeh: Fuzzy Sets ; 70 Fuzzy elmélet robotikai alkalmazása; 75 Japán Empirikus vizsgálatok és széles körű alkalmazások; Technológiai standard, Lotfi A. Zadeh Felhasználás: Ha magas a hőmérséklet, akkor a nyomás is magas;

274 205/370 Fuzzy halmazok I 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat Fuzzy halmazelmélet Eszköz annak a leírására, hogy egy objektum milyen mértékben illeszkedik egy bizonytalan tényhez; Alkalmas bizonytalan kijelentések formalizálására. Nem valószínűségi modell. Döntések hozatala igazság-értékek alapján. Fuzzy halmazok: nem teljes hozzátartozás specifikálása.

275 Fuzzy halmazok II 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat Klasszikus logika Egy kijelentés igaz: 1; vagy hamis 0. Egy A halmazra: { 1 ha x A I A (x) = 0 ha x / A Fuzzy logika Egy kijelentés igazságértéke µ(p) [0, 1] µ A (x) [0, 1] x Ω Egy halmaz= µ A Például: M magas hőmérséklet µ µ M (t) 206/ T - hőmérséklet

276 207/370 Fuzzy halmazok III 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat A definíciós intervallumot általában felosztjuk több fuzzy halmazra: Alacsony Közepes Magas 1 T Egy fuzzy halmaz tehát függvény, µ K : Ω [0, 1]: 1 ha x [50, 70] (x 40)/10 ha x [40, 50] µ K (x) = (90 x)/20 ha x [70, 90] 0 ha x 40 vagy x 90

277 208/370 Fuzzy logika 0 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat A logikai műveletek halmaz műveletekre vezethetők vissza: a logikai vagy az egyesítés: A B def = A B a logikai és a metszet: a logikai negáció a komplementer: A B def = A B A def = Ω \ A A fuzzy logikai műveletek fuzzy halmazok egyesítése, metszete, illetve komplementere. A három logikai művelet redundáns: A B = A B A B = A B Csak a konjunkciót és a negációt kell specifikálnunk.

278 209/370 Fuzzy logika I 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat A fuzzy rendszerekben a konjunkciót és a negációt specifikáljuk. A konjunkció egy T-norma: T : [0, 1] [0, 1] [0, 1] A T(1, 1) = 1 kivételével minden sarokpontban az értéke 0 kell, hogy legyen (hogy kapjuk vissza a klasszikus logikát). A negáció egy-argumentumú függvény: C : [0, 1] [0, 1] A sarokfeltételek: C(0) = 1, illetve C(1) = 0. A diszjunkciót a De-Morgan reláció alapján számoljuk ki (S-konormának nevezzük): S : [0, 1] [0, 1] [0, 1] S(a, b) = C ( T (C(a), C(b)) )

279 210/370 Fuzzy logika II 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat Példa: A konjunkciónak megfelelő T-norma: T(a, b) = min(a, b) T(0, 0) = T(0, 1) = T(1, 0) = 0, illetve T(1, 1) = 1. A negáció legyen: C(1) = 0, illetve C(0) = 1. C(x) = 1 x A diszjunkció meghatározása: S(a, b) = 1 T(1 a, 1 b) S(a, b) = 1 T(1 a, 1 b) = 1 min(1 a, 1 b) = 1 + max( 1 + a, 1 + b) = max(1 1 + a, b) = max(a, b)

280 211/370 Fuzzy logika III 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Logikai szabályok: µ A B (x) = min [µ A (x), µ B (x)] µ A B (x) = max [µ A (x), µ B (x)] µ A (x) = 1 µ A (x) Matlab feladat

281 212/370 Fuzzy logika IV 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat Logikai szabályok: a, b {0, 1} ÉS = 1 csak ha a = 1 és b = 1 VAGY = 0 csak ha a = 0 és b = 0 Alternatív formák: µ A B (x) = µ A (x) µ B (x), µ A (x) = 1 µ A (x) µ A B (x) = µ A (x) + µ B (x) µ A (x) µ B (x)

282 Fuzzy logika -! - 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat Fuzzy logika inkonzisztens x vagy A-nak vagy A-nak eleme, azaz µ A A = 1. 1 klasszikusan µ A A (x) = max [µ A (x), 1 µ A (x)] fuzzy logika 1 def. 1 µ A (x) [1 µ A (x)] fuzzy logika 2 def. Ugyanígy: szeretnénk, hogy µ A A = 0. Helyette: 0 klasszikusan µ A A (x) = min [µ A (x), 1 µ A (x)] fuzzy logika 1 def. µ A (x) [1 µ A (x)] fuzzy logika 2 def. 213/370 vizsga feladattípus: határozzuk meg a modus ponens szabály fuzzy változatát.

283 214/370 Fuzzy logika Feladat I 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat A negációt szeretnénk úgy meghatározni, hogy legyen folytonos, bijektív; teljesüljön a negált negáltja önmaga, azaz C(C(x)) = x legyen C(0) = 1 és C(1) = 0 A C(x) bijektív, alkalmazva a z = C(x) x = C 1 (x): C(z) = C 1 (z) azaz a C( ) függvény a főátló szerint szimmetrikus. A C(x) = 1 x egy megoldás. Egy megoldás-család pozitív q értékekre a C q(x) = q 1 x q

284 215/370 Fuzzy logika Feladat II 8 A C q (x) = q 1 x q grafikus képei a q = {1/3, 1/2, 1, 2, 3} értékekre: Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat C(x) x

285 216/370 Fuzzy szabályok 0 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat Érthető formában írják le egy rendszer működését: Könnyű megfogalmazni; Könnyen ellenőrizhető; Módosításokhoz nem kell az egész rendszert átírni. Használják a fuzzy logika következtetési mechanizmusait; Logikai szabályok alapján; Fuzzy változók értékeit számolják; De-fuzzyfikálás után az eredmény jó kontroll-változó.

286 Fuzzy szabályok I 8 Példa: Ha magas a hőmérséklet, akkor a nyomás is magas; Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Fuzzy [ szabályok: ] HA X alacsony ÉS Y magas AKKOR Z közepes Matlab feladat Definiáljuk az alacsony, magas és közepes halmazokat: µ µ alacsony µ kozepes µ magas T - hőmérséklet 217/370

287 218/370 Fuzzy szabályok II 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat Fuzzy szabályok: X Y Alacsony Közepes Magas Alacsony Közepes Alacsony Közepes Magas Közepes Magas Közepes Magas Alacsony nem megengedett állapot Szabályok alkalmazása: Megfigyelt értékek: x = 50, y = Fuzzyfikálás fuzzy halmazokra való áttérés: X szerint csak az Alacsony csoportot kell vizsgálni. Y szerint a Közepes és Magas csoportokat.

288 219/370 Fuzzy szabályok III 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat µ al (x) = 1 illetve Kombinálás: VAGY= max µ µ mag (y) = 0.75; µ koz (y) = 0.25; µ z T - hőmérséklet Kontroll esetén Egy érték kiírása: súlyozott közép Z = 53.

289 220/370 Fuzzy rendszer I Alkalmazás 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat Mitsubishi légkondicionáló rendszer Ipari légkondicionáló mely rugalmasan reagál a környezeti változásokra. Megvalósítás: 50 fuzzy szabály 6 nyelvi változó, közöttük a szoba és a fal hőmérséklete, illetve ezek időbeli változásai; 4 nap prototípus; 20 nap teszt/integrálás; 80 nap tesztelés; mikrokontroller implementálás. Előnyök: kevesebb szenzor, változó környezet, 24%-kal kisebb fogyasztás;

290 221/370 Fuzzy rendszer II Alkalmazás 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat Alkalmazások: Erőművek kontrollja (Tokio); Egyszerűsített robot-kontroll (Fuji, Toshiba, Omron); Fényképezőgép automata irányítása (Omron); Motor-fogyasztás, irányítás (Nissan,Subaru); Gyártósorok szilícium-lapkáinak vágása (Canon); Rák diagnózis (Kawasaki Med. School); Jogi eljárások szimulációja (Meihi Gakuin Univ, Nagoya Univ.)... Matsushita, Sony, Canon, Minolta, Sanyo, Hitachi, Ricoh, Fujitech, Toshiba,....

291 222/370 Fuzzy rendszerek Összefoglaló 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat Fuzzy rendszerek: Főként kontroll feladatokra használjuk. Ajánlottak ha: komplex rendszerek esetén, nincs matematikai modell; nemlineáris modellek esetén; szakértői tudás bevitelére. Nem ajánlottak ha: hagyományos kontroll megfelelő; létező egyszerű matematikai modell; nincs megoldás. Más alkalmazások: Sony PalmTop fuzzy döntési fa implementálása karakterfelismerésre (Kanji).

292 223/370 Osztályozás USPS I 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat

293 Osztályozás USPS II 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat 224/370 USPS adatok Feladat: United States Postal Service; kézzel írott számjegyek os bit-térképe; 7200 tanulási- és 2000 teszt-adat; Bináris osztályozás: válasszuk el a négyeseket (4) a hetesektől (7). Írjunk egy osztályozási algoritmust a következők közül: Döntési fa; Neurális háló; SVM; Bayes osztályozó. Értékeljük az algoritmust a következők szerint: osztályozási hiba tanulási adatokon; osztályozási hiba teszt-adatokon 10% alatt!; tanulási idő; vizsgáljuk meg a rosszul osztályozott pontokat ;

294 225/370 Osztályozás III 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat

295 Osztályozás IV 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat Osztályozó algoritmus: Tanulás: θ 0 kezdőértékek tanulási adatok Program (θ) ±1 Tesztelés: θ post használata; új adatokra: D = { (x 1, y 1 ),..., (x N, y N ) } D test =... Becslés: θ 1... θ post. Közben: tanulási hiba mérése. 226/370 hiba mérése tesztadatokon.

296 Osztályozás IV 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat Osztályozó algoritmus: Tanulás: θ 0 kezdőértékek tanulási adatok Program (θ) ±1 Tesztelés: θ post használata; új adatokra: D = { (x 1, y 1 ),..., (x N, y N ) } D test =... Becslés: θ 1... θ post. Közben: tanulási hiba mérése. 226/370 hiba mérése tesztadatokon.

297 227/370 Osztályozás V 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat Program + dokumentáció: (dolg...) Algoritmus kiválasztása; Tanulás paraméterek becslése; tanulási adatok beolvasása; adatok transzformációja pre processzálás; algoritmus paramétereinek inicializálása; paraméterek tanulása. Tesztelés; teszt-adatok beolvasása függetlenek a tanulási mintáktól!; adatok transzformációja pre processzálás; algoritmus paramétereinek beolvasása tanulási eredmény; hiba mérése. Dokumentálás: algoritmus, módszer, statisztika

298 Osztályozás Program binclass.m 8 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat clear all; % data generation ntr = 200; nte = 400; [dx dy] = cl_data(ntr,[],0); ii_1 = find(dy==1); d1 = dx(ii_1,:); d2 = dx(setdiff([1:ntr],ii_1),:); N_1 = size(d1,1); N_2 = size(d2,1); pi1 =N_1/nTr; pi2 = N_2/nTr; mu1 = sum(d1,1)/n_1; % class means mu2 = sum(d2,1)/n_2; d = d1 - repmat(mu1,[n_1 1]); sig1 = d *d/n_1; sig1inv = sig1^(-1); d = d2 - repmat(mu2,[n_2 1]); sig2 = d *d/n_2; sig2inv = sig2^(-1); % generating nte test data [dx, dy] = cl_data(nte,[],0); ii_1 = find(dy==1); data1 = dx(ii_1,:); data2 = dx(setdiff([1:nte],ii_1),:); N_1 = size(data1,1); N_2 = size(data2,1); % performing classification log_sig1 = log(det(sig1))-log(pi1); log_sig2 = log(det(sig2))-log(pi2); % classification for data1 p_1=data1-repmat(mu1,[length(data1) 1]); p_1=sum(((p_1*sig1inv).*p_1),2); p_2=data1-repmat(mu2,[length(data1) 1]); p_2=sum(((p_2*sig2inv).*p_2),2); class(1,1) = length(... find(-p_1+p_2 > log_sig1-log_sig2) ); class(1,2) = N_1 - class(1,1); % SIMILARLY for the second dataset p_1=data2-repmat(mu2,[length(data2) 1]); p_1=sum(((p_1*sig2inv).*p_1),2); p_2=data2-repmat(mu1,[length(data2) 1]); p_2=sum(((p_2*sig1inv).*p_2),2); class(2,2) = length(... find( -p_1+p_2 > log_sig2-log_sig1)); class(2,1) = N_2 - class(2,2); % the confusion matrix: class... grafikus ábrázolás /370

299 Osztályozás Eredmény binclass.m Eredmény: Class-cond. prob. C Class-cond. prob. C 2 Fuzzy rendszerek Tört. visszatekintés Fuzzy halmazok Fuzzy logika Fuzzy szabályok Matlab feladat Posterior probability Classification boundary /

300 Az Előadások Témái 9 Tanulás Indukció Cross-validation Döntési Fák Netlab Bevezető: mi a mesterséges intelligencia 1 Tudás reprezentáció 2 Gráfkeresési stratégiák 3 Szemantikus hálók / Keretrendszerek 4 Játékok modellezése 5 Bizonytalanság kezelése 6 Grafikus modellek és a D.S. modell 7 Fuzzy rendszerek 8 Tanuló rendszerek 9 Szimulált kifűtés, Genetikus algoritmusok 10 Neurális hálók, a perceptron modell 11 Többrétegű hálók, Önszerveződés 12, /370 Gépi tanulás 14

301 231/370 Admin trívia 9 Vizsga Szóbeli (60%) + Gyakorlat (40%) Tanulás Indukció Cross-validation Döntési Fák Netlab Laborgyakorlatok: 1 Gráfok ábrázolása - dedukciós algoritmus 18% 2 Játékelmélet 10% 3 Matlab - tanulási algoritmus 12% 4 Opcionális feladatok - max. 3/személy sok% Bemutatók (5 20 pont) Alkalmazások bemutatása, melyek adaptív, gépi tanulásos vagy mestint módszereket alkalmaznak.

302 Tanuló számítógép Tanulás Indukció Cross-validation Döntési Fák Netlab 232/370

303 Tanuló számítógép 9 Tanulás Indukció Cross-validation Döntési Fák Netlab Tudnak tanulni a számítógépek az elemzett képekből? A NEIL rendszer Never Ending Image Learner képeket elemez. A képekben talált objektumokat azonosít, azokat csoportosítja, majd a csoportokhoz címkéket rendel. Sebesség: 2013 júliusa és novembere között félmillió képet dolgozott fel. 232/370

304 Tanuló számítógép Tanulás Indukció Cross-validation Döntési Fák Netlab 232/370

305 233/370 9 Tanulás Indukció Cross-validation Döntési Fák Netlab Tanuló rendszerek pp. 525 Russell & Norvig, 1995 Agents that can improve their behaviour through diligent study of their own experiences. Algoritmus változtatható állapottérrel, mely működése során az újabb ugyanolyan típusú feladatokat jobban oldja meg. Példák: genetikus algoritmus, neurális hálók, stb. Machine Learning Gépi tanulás. Induktív rendszerek inferencia.

306 234/370 Indukció I Dedukció 9 Tanulás Indukció Cross-validation Döntési Fák Netlab Induktív megoldás Modell feltételezése: f(z, θ), Adatok halmaza: D = {z 1,..., z N } Illesztő hiba függvény: L (f(z)) optimális modell : θ Deduktív megoldás Nincs modell, Adatok: D = {z 1,..., z N } Illesztési művelet egy z új mintára, használunk minden adatot. Predikció: f(z, θ ).

307 235/370 Indukció II Dedukció 9 Tanulás Indukció Induktív megoldás Ḋ Deduktív megoldás Ḋ x Cross-validation Döntési Fák Netlab ^θ f(x ^θ) x???? g(x ) f(x ^θ) Levezetjük a g függvény x -hoz tartozó értékét.

308 235/370 Indukció II Dedukció 9 Tanulás Indukció Induktív megoldás Ḋ Deduktív megoldás Ḋ x Cross-validation Döntési Fák Netlab ^θ f(x ^θ) x???? g(x ) f(x ^θ) Levezetjük a g függvény x -hoz tartozó értékét.

309 235/370 Indukció II Dedukció 9 Tanulás Indukció Induktív megoldás Ḋ Deduktív megoldás Ḋ x Cross-validation Döntési Fák Netlab ^θ f(x ^θ) x???? g(x ) f(x ^θ) Levezetjük a g függvény x -hoz tartozó értékét.

310 235/370 Indukció II Dedukció 9 Tanulás Indukció Induktív megoldás Ḋ Deduktív megoldás Ḋ x Cross-validation Döntési Fák Netlab ^θ f(x ^θ) x???? g(x ) f(x ^θ) Levezetjük a g függvény x -hoz tartozó értékét.

311 235/370 Indukció II Dedukció 9 Tanulás Indukció Induktív megoldás Ḋ Deduktív megoldás Ḋ x Cross-validation Döntési Fák Netlab ^θ f(x ^θ) x???? g(x ) f(x ^θ) Levezetjük a g függvény x -hoz tartozó értékét.

312 236/370 Indukció III Dedukció 9 Tanulás Indukció Cross-validation Döntési Fák Netlab Becslés egy modell ismeretében. Modell-osztály; Modellek közötti preferencia ^θ; Predikció a modell alapján; Pl: lineáris becslések, neurális hálók; Döntési/regressziós fák; Rejtett változós modellek A cél egy ismert adatra egy választ fogalmazni; A válasz: kategoriális, folytonos... K-nn: K legközelebbi szomszéd alapján történő közelítés; Rezolúció: egy ismert predikátumról eldönteni, hogy igaz vagy hamis. A továbbiakban Induktív módszerekkel foglalkozunk.

313 Induktív módszerek I 9 Tanulás Indukció Cross-validation Döntési Fák Netlab adatokból információt vonnak ki; 6 Inductive learning methods Systematically produce intensional concept descriptions from extensional concept descriptions. I.e, from the specific knowledge provided by domain examples, obtain general domain knowledge. Információ induktív rendszereknél Egy indukció folyamán az adatokból nyert információt a modell paraméterei tárolják. Egy F def = {f(x θ), θ Ω} modell esetén a D adatokat az optimális ^θ paraméter helyettesíti. 237/370 6 Hogyan definiáljuk az információ fogalmát?

314 238/370 Induktív módszerek II 9 Tanulás Indukció Cross-validation Döntési Fák Netlab Információ - ^θ: egy f(x θ) függvényt keresünk. ^θ az optimális függvény koordinátája. Nem ismerjük az adatokat generáló függvényt Melyik paraméter jobb? Tesztelési módszer: az adatokat kettéosztjuk: tanulási- illetve teszt-adathalmaz; az optimális ^θ meghatározásához csak a tanuló-adatokat használjuk; Tesztelés: hiba mérése a teszt-adathalmazon.

315 239/370 Paraméterek jóságának a mérése I 9 Tanulás Indukció Cross-validation Döntési Fák Netlab Cross-validation: módszer, mely méri a tanulási folyamat eredményességét; olyan esetekben használatos, ahol nincs modell illetve külön teszt-adat; Módszer: a teljes adat felosztása: K részre; tanulási-, illetve teszt-adatok definiálása: j-dik rész a teszt-adat; {1..K} \ j tanulási adatok. minden j-re mérjük a teszt-hibákat. (összegezzük / átlagoljuk)

316 240/370 Paraméterek jóságának a mérése II 9 Cross-validation Előnye: Tanulás Indukció Cross-validation Döntési Fák Netlab nem függ a hibafüggvénytől illetve az adatok típusától (diszkrét, folytonos, strukturált); könnyen kódolható. Hátránya: Nagy adathalmazra sokáig fut; Nem alkalmazható paraméterek becslésére.

317 241/370 Döntési/Regressziós fák 9 Tanulás Indukció Cross-validation Döntési Fák Netlab Regresszió: f : Ω R Osztályozás: f : Ω {Igen, Nem} Definíció: fa formájában tárol egy függvényt; leszármazottak nélküli csúcs - levél; másképp belső csúcs; minden belső csúcshoz van egy predikátum rendelve; Például: Kor < 20, Fogl {Diak, Tanar}. szabályok megállapítására szolgál; általánosítások extrapolálás; Nem fontos az adatok diszkrét/folytonos léte;

318 242/370 Döntési fák I 9 Tanulás Indukció Cross-validation Döntési Fák Netlab sorrend-függő az eredmény; szomszédság/topológia meghatározása: modellezési kérdés. Sok adat = nagy fa, redundáns modellezés. Logikai bemenő adatok esetén: Bináris fa természetes; Folytonos bemenő adatok esetén: El kell dönteni egy-egy ág érvényességét; Diszkretizálni kell a teret; Modellezési feladat

319 243/370 Döntési fa építése 9 Tanulás Indukció Cross-validation Döntési Fák Netlab Döntési fa építése Rekurzívan: Vizsgáljuk meg az adatokat és állapítsuk meg a legjobb vágást; Osszuk ketté az adatokat a vágás szerint;? Kérdések? Megállás; Legjobb vágás keresése; Vágások minősége: CART (Classification And Regression Trees) algoritmus.

320 244/370 Netlab I 9 Tanulás Indukció Cross-validation Döntési Fák Netlab Ian T. Nabney: NETLAB Algorithms for Pattern Recognition Springer Matlab függvény-gyűjtemény Ingyenesen letölthető; egyszerűen kezelhető; Nagyon sok modell és algoritmus tesztelhető anélkül, hogy a modelleket implementálni kellene; Implementált modellek és algoritmusok: (módosítható demó-k) Regresszió Bayes-módszerek Osztályozás Klaszterezés Optimalizálás Mintavételezés

321 Netlab II 9 Tanulás Indukció Cross-validation Döntési Fák Netlab Netlab használata: Példa: Installálás: letöltés és: Demók indítása: Programozás a demók módosításával, pl. %data generation. ndata = 20; noise = 0.2; x = {0:1/(ndata - 1):1} ; t = sin(2*pi*x) + noise*randn(ndata, 1); % Set up network parameters. nin = 1; % Number of inputs. nhidden = 3; % Number of hidden units. nout = 1; % Number of outputs. alpha = 0.01;% weight-decay prior. % Initialisation net = mlp(nin, nhidden, nout, linear, alpha); addpath( _netlab_path_ ) demnlab demmlp1 % Option vector intialisation options = zeros(1,18); options(1) = 1; % display error values. options(14) = 100;% Number of training cycles. % Train using scaled conjugate gradients. {net, options} = netopt(net, options, x, t, scg ); % Plot for TEST data plotvals = {0:0.01:1} ; y = mlpfwd(net, plotvals); 245/370 A Netlab programmal egyszerűen megoldható a laborfeladat.

322 Az Előadások Témái 10 Ann. / G.A. Bevezető Annealing G.A. G.P. Bevezető: mi a mesterséges intelligencia 1 Tudás reprezentáció 2 Gráfkeresési stratégiák 3 Szemantikus hálók / Keretrendszerek 4 Játékok modellezése 5 Bizonytalanság kezelése 6 Grafikus modellek és a D.S. modell 7 Fuzzy rendszerek 8 Tanuló rendszerek 9 Szimulált kifűtés, Genetikus algoritmusok 10 Neurális hálók, a perceptron modell 11 Többrétegű hálók, Önszerveződés 12, /370 Gépi tanulás 14

323 247/370 Admin trívia 10 Vizsga Szóbeli (60%) + Gyakorlat (40%) Ann. / G.A. Bevezető Annealing G.A. G.P. Laborgyakorlatok: 1 Gráfok ábrázolása - dedukciós algoritmus 18% 2 Játékelmélet 10% 3 Matlab - tanulási algoritmus 12% 4 Opcionális feladatok - max. 3/személy sok% Bemutatók (5 20 pont) Alkalmazások bemutatása, melyek adaptív, gépi tanulásos vagy mestint módszereket alkalmaznak.

324 248/370 Nehéz feladatok 10 Ann. / G.A. Bevezető Annealing G.A. G.P. Néha NEM lehet a gradiens-szabályokat alkalmazni mert: Túl bonyolult a modellben a paraméter kimenet kapcsolat. Pl. A paraméterek nem numerikusak. Pl. szemantikus hálók vagy Bayes-hálók tanulása. Azonban: képesek vagyunk a θ paraméter jóságának a mérésére, Van egy szomszédság-reláció a paraméterek között,

325 A paraméter tér bejárására szolgál összekötött halmazoknál jó. 249/370 Szimulált kifűtés I 10 Ann. / G.A. Bevezető Annealing G.A. G.P. Hibafüggvény: Méri az F modellcsalád egy elemének az f(x θ) függvénynek a jóságát. Például - négyzetes hiba: L(D, f( θ), F) = n (y n f(x n θ)) 2 Egy D adathalmaz hibája empirikus hiba Szomszédság: A θ Ω paraméterek (pl. fák) esetén: θ δ ɛ (θ) ha d(θ, θ ) < ɛ

326 Szimulált kifűtés II 10 Eloszlás: p(θ β) exp [ 1 ] L(D, f( θ), F) β Ann. / G.A. Bevezető Annealing G.A. G.P. p(θ β) = [ exp 1 β ] L(D, f( θ), F) [ θ Ω exp 1 βl(d, f( θ), F) ] p(x) 250/370 Az f(x, ^θ) modell optimális a legnagyobb p(^θ) nál; β hőmérséklet paraméter; β kezdőértéke nagy nincsenek nagy különbségek; β 0 - egy állapot választódik ki. 3 β = 1/9 2 1 β = x

327 251/370 Szimulált kifűtés III 10 Ann. / G.A. Bevezető Annealing G.A. G.P. Gyakorlatban nehezen kivitelezhető, mert: Nem lehet felsorolni az Ω összes elemét; Nem könnyű egy modell hibájának a kiszámítása gyakran műszeres mérésekről van szó; = Közelítő módszerek alkalmazása a szomszédság felhasználásával: θ 0 θ 1 θ T ahol az iterációk alatt javul a θ illeszkedése az adatokhoz.

328 252/370 Szimulált kifűtés IV 10 Ann. / G.A. Bevezető Annealing G.A. G.P. Általában a hűtést szabályozzuk: {β t } 1. Algoritmus: 1 Adat-beolvasás: D; t = 0; Inicializálás: θ 0 ; Számítjuk: L(D, f(x θ t )); 2 Választunk a szomszédság alapján: θ δ ɛ (θ t ) Számítjuk: L(D, f(x θ )) p(θ β t ); 3 Ha p(θ β t ) > p(θ t β t ), akkor θ t+1 = θ, 4 ellenkező esetben a [0, 1] véletlen szám ha a p(θ β t )/p(θ t β t ) akkor θ t+1 = θ másképp θ t+1 = θ t 5 t = t + 1 Goto 2

329 253/370 Szimulált kifűtés Összefoglaló 10 Ann. / G.A. Bevezető Annealing G.A. G.P. Használható esetekben, ahol van hibafüggvény; nem folytonos a paraméterhalmaz; nincs gradiens információ vagy nem használható; Például: VLSI-design. használata könnyű nem igényel sok kódolást vagy tanulmányozást; nem hatékony a futási idő nagyon nagy egyszerű feladatoknál is.

330 Genetikus algoritmusok 0 10 Ann. / G.A. Bevezető Annealing G.A. G.P. 254/370 John R. Koza - Stanford University

331 255/370 Genetikus algoritmusok I 10 Ann. / G.A. Bevezető Annealing G.A. G.P. A szimulált kifűtés továbbfejlesztése: 1 Nem egyetlen paramétert optimizál; populáció t{θ (t) k }K k=1 2 Definiálja a genetikus operátorokat. kereszteződés cr(θ (t) k, θ(t) l ) = θ (t+1) m mutáció m(θ (t) k ) = θ(t+1) m az operátorok az egyedek szintjén működnek. Az iterációs séma hasonló {θ (0) k }K k=1 {θ (1) k }K k=1 {θ (T) k }K k=1

332 256/370 Genetikus algoritmusok II 10 Ann. / G.A. Bevezető Annealing G.A. G.P. Genetikus algoritmusok működése természetes szelekció; genetikus operátorok a paraméter-tér bejárására. Algoritmus: (minden t időpontban) [ {θ (t) k }K k=1 f(t) k = exp 1 ] L(D, f( θ(t) β k )) Következő generáció létrehozása: 1 Az [f (t) k ] k fitnessz faktorral arányosan választunk szülőket: θ (t) l, θ (t) l 2 Bemásoljuk azokat a populációba vagy 3 alkalmazzuk a genetikus operátorokat: kereszteződés, mutáció;

333 G.A. Fitnessz 10 Ann. / G.A. Bevezető Annealing G.A. G.P. Fitnessz -függvény méri az egyedek megfelelését jóságát Fordítottan arányos az L( ) hibával [ {θ (t) k }K k=1 f(t) k = exp 1 ] L(D, f( θ(t) β k )) 257/370 a cél, hogy minél több egyed legyen, melynek nagy a fitnessz -értéke; β - hőmérséklet-paraméter 1 a relatív érzékenységet modulálja; 2 nagy hőmérséklet = különbségek nem jelentősek; 3 kis hőmérséklet β 0 a leg- fittebb egyed sokkal jobb, mint bármely más;

334 G.A. Szelekció 10 Ann. / G.A. Bevezető Annealing G.A. G.P. Szelekció garantálja a következő populáció optimalitását; csak a kiválasztott szelektált egyedek részei a következő generációnak; véletlen, de súlyozott választás; Szelekciós algoritmus: 1 Számoljuk ki: F(t) = k f(t) k 2 generáljuk a = rand(0, 1) 3 l = 0, s = 0 4 amíg s < a F(t) l = l + 1 s = s + f (t) l 258/370 miért maradnak csak a jobb egyedek?

335 259/370 G.A. Operátorok I 10 Ann. / G.A. Bevezető Annealing G.A. G.P. Operátorok kereszteződés és mutáció Kereszteződés a szülők tulajdonságait kombinálja; a gyerekek közel lesznek a szülőkhöz; Kereszteződés születnek egyedek, melyek halmozzák a jó tulajdonságokat; Mutáció Mutáció szelekció nyomán csak a jó egyedek maradnak fent; ez a genetikus operátor biztosítja a változatosságot; olyan értékek is kiválasztódnak, melyek nem voltak a korábbi generációkban; radikális változás, mely esetenként jobb eredményhez vezet;

336 260/370 G.A. Operátorok II 10 Genetikus operátorok: folyamatos paramétertér Ann. / G.A Bevezető Annealing G.A. G.P keresztezodes mutacio Mutáció: ha θ R m Kereszteződés: m(θ) def = θ + δ cr(θ 1, θ 2 ) def = (θ 1 + θ 2 ) /2

337 261/ G.A. Operátorok III 10 Kereszteződés / mutáció :! heurisztikák! Ann. / G.A Bevezető Annealing G.A. G.P keresztezodes Heurisztika: Nem mindig működik; Jobb eredményeket remélünk, garancia nélkül.

338 262/370 G.A. TSP I 10 Ann. / G.A. Bevezető Annealing G.A. G.P. Genetikus algoritmusok az operátorok definíciója; Numerikus esetek kevésbé érdekesek; Példa: Utazóügynök (Travelling SalesPerson TSP) Városokat bejárni úgy, hogy a megtett út minimális legyen. Egzakt megoldás: nagyon időigényes; NP-teljes feladat. Genetikus algoritmus: nem garantálja a legrövidebb út megtalálását; azonban egy közel-optimális utat gyorsan megtalál;

339 G.A. TSP II 10 Ann. / G.A. Bevezető Annealing G.A. G.P. Kódolás: az utak egy permutációja. Pl. [1, 2, 5, 3, 4, 6, 7, 8, 10, 9, 11, 12] Genetikus operátorok: Mutáció: Kereszteződés: /

340 264/370 Genetikus programozás 10 Ann. / G.A. Bevezető Annealing G.A. G.P. x a populáció egyedei programok; programok egy függvényt implementálnak; genetikus operátorok a programok terén értelmezettek; program = függvény. * y + sin + sin x y x / 1 + * sqr y exp x y

341 265/370 Genetikus Összefoglaló 10 Ann. / G.A. Bevezető Annealing G.A. G.P. Genetikus algoritmusok populációkkal operálnak; szelekciós és reprodukciós operátorok használata; genetikus operátorok gyorsítják a keresést; szükséges a program-/paraméter-tér ismerete. a fitnessz -érték irányadó optimizálás; Genetikus Algoritmus általános optimum-keresési módszerek, szomszédság -ismerete elégséges; ha a fitnessz-függvény differenciálható, numerikus módszerek használata ajánlott;

342 Az Előadások Témái NHk 11 Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló Bevezető: mi a mesterséges intelligencia 1 Tudás reprezentáció 2 Gráfkeresési stratégiák 3 Szemantikus hálók / Keretrendszerek 4 Játékok modellezése 5 Bizonytalanság kezelése 6 Grafikus modellek és a D.S. modell 7 Fuzzy rendszerek 8 Tanuló rendszerek 9 Szimulált kifűtés, Genetikus algoritmusok 10 Neurális hálók, a perceptron modell 11 Többrétegű hálók, Önszerveződés 12, /370 Gépi tanulás 14

343 267/370 Admin trívia 11 Vizsga Szóbeli (60%) + Gyakorlat (40%) NHk Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló Laborgyakorlatok: 1 Gráfok ábrázolása - dedukciós algoritmus 18% 2 Játékelmélet 10% 3 Matlab - tanulási algoritmus 12% 4 Opcionális feladatok - max. 3/személy sok% Bemutatók (5 20 pont) Alkalmazások bemutatása, melyek adaptív, gépi tanulásos vagy mestint módszereket alkalmaznak.

344 268/370 ET look and disposition Robotika NHk 11 Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló Twendy-One, a Wendy robot 21.-edik századi reinkarnációja. A robot képes törékeny tárgyak hordozására valamint emberek segítésére a leülés illetve felállás műveleteiben. Érzékelőin keresztül válaszol az emberi érintésekre. Képes egy szelet kenyér megfogására, ugyanakkor képes embereket kisegíteni az ágyukból. Az első ennyire nagyfokú integrációval rendelkező robot. mondta Shigeki Sugano, a Waseda Egyetem tanára, a Twendy-One projekt vezetője. pcworld hír ABCnews hír

345 Will we ever Will we ever... build robots that pass the Turing Test? NHk Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló A Turing-teszt modern neve a Löbner díj, melyet annak a rendszernek osztanak ki, mely egy - sok, mindegyik - humán megfigyelővel képes elhitetni, hogy nem gép. Turing jóslata az volt, hogy a 2000-es évek körül ez be fog következni. Nem igaz. Mikor fog bekövetkezni? 269/370

346 Történeti áttekintő IdegSejt 11 NHk Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló Ramon y Cajal 270/ közötti időszakban; idegrendszer vizsgálata; építőegység azonosítása: neuron; idegsejt mint az idegrendszer építőeleme

347 271/370 Történeti áttekintő I Neuron 11 Ramon y Cajal Nobel díj 1906 NHk Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló The cerebellar cortex (a kitten cerebellum). The letter A marks the Purkinje cells with dendritic ramifications.

348 272/370 Történeti áttekintő II Neuron 11 Idegsejt fényképe: NHk Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló

349 Történeti áttekintő III Neuron 11 NHk Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló Neuron alkotóelemei Szóma (sejtmag) az információ feldolgozása; Dendrit az információ összegyűjtése; Axon az információ terjesztése; mi az információ? 273/

350 274/370 Történeti áttekintő IV Modell 11 Neuron x 1 w 1 NHk Történelem Perceptron Lin.szep Konv.Tétel Matlab x 2 x 3 w 2 w 3 N i=1 w ix i z f(z) y Összefoglaló w N x N Ahol: x i bemeneti értékek; w i súlyok (dendritek); összegző (szóma); f(z) átalakító; kapcsolatok (axonok);

351 275/370 Történeti áttekintő V Modell NHk 11 Történelem Perceptron Lin.szep Konv.Tétel X w w w w w w w w w Y Matlab Összefoglaló w w w w w aszinkron működés; nagyon sok kapcsolat;?hogyan? kreáljunk/töröljünk kapcsolatokat;

352 276/370 Történeti áttekintő VI Modell 11 NHk Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló X w w w w w w w w w w w w Y szinkron ciklusos működés; rétegek korlátolt számú kapcsolat;

353 277/370 Történeti áttekintő Összefoglaló NHk 11 Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló Idegrendszer = információ-feldolgozó egység. Kérdések (nincsenek kellően tisztázva): Mi az információ, Hogyan történik a feldolgozás. biológiai neuronok aszinkron-működésűek: miért jó a mesterséges neuron szinkronizált jellege. mesterséges neuronok egymáshoz kapcsolódása csekély: a biológiai rendszerek nagyságrendekkel több kapcsolatot kezelnek.

354 278/370 Perceptron I NHk 11 Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló Egyszerűsített természetes neuron-modell: x 1 x 2 x 3 x N w 1 w 2 w 3 w N x 0 = 1 w 0 = b N i=1 w ix i z y Korai neuron-modell: McCullogh-Pitts 1958; x i és y értékek binárisak; Aktivációs függvény a lépcsőfüggvény: { 1 ha z < 0 H(z) = +1 ha z 0

355 279/370 Perceptron II NHk 11 Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló Perceptron ON/OFF neuron állapotok A neuronok vagy aktívak vagy nem, mint a bináris logikában rezolució-szerű működés Tanulási szabály: ha (x (n), y (n) )-en hiba történt, akkor w i (t + 1) w i (t) + x (n) i y (n) ahol w ij súly, x (n) bemeneti minta, y (n) a minta osztálya. Konvergencia-tétel: Ha a { tanulási minták (x (n), y (n) ) } N n=1 elválaszthatóak, def (osztályozási feladat) akkor a perceptron konvergál.

356 280/370 Elválaszthatóság I NHk 11 Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló kék osztály kódja legyen +1; piros osztály kódja legyen 1; w T x + b Szeparáló hipersík a {w, b} vektorral illetve valós szám által meghatározott felület, ha w T x i + b > 0 i ; y i > 0. w T x i + b < 0 i ; y i < 0.

357 vissza 281/370 Elválaszthatóság II 11 NHk Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló w T x + b Szeparáló hipersík: ) y i (w T x i + b > 0 i = 1, N. ahol x i - i-edik mintavektor és y i az ahhoz tartozó osztály kódja.

358 Perceptron Konvergenciatétel NHk 11 Konvergenciatétel A tanulási szabály alkalmazásával a perceptron véges idő alatt konvergál. Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló Biz: Módszer: találjunk felső és alsó korlátot a lépések számának. 1 Újradefiniáljuk a bemeneti adatokat: ^x i x i def = [x i, 1] T R d+1 w def = [w, b] T R d+1 def = y i^x i 282/370

359 283/370 Konvergenciatétel II NHk 11 Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló 2 Újradefiniált feladat Találjunk egy (1) w R d+1 értéket úgy, hogy i ; w T x i > 0 minden x i -re (már tartalmazzák a címkéket is). 3 Tanítási szabály Ha hiba történt, akkor módosítjuk a perceptron súlyait: w i (t + 1) w i (t) + x (n) i (rekurzívan visszafejtve: w(t + 1) = x x t ) 4 Hiba w T (t)x (n) < 0. (1) Amennyiben van egy érték, akkor nagyon sok elfogadható érték létezik.

360 284/370 Konvergenciatétel III NHk 11 Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló 5 Feltételezzük, hogy létezik szeparáló hipersík: w 0 R d+1 i ; w T 0 x(n) α > 0 6 Vizsgáljuk a w T 0w(t + 1) skaláris szorzatot: w T 0 w(t + 1) = wt 0 x1 + + w T 0 xt tα 7 Cauchy-Schwartz egyenlőtlenség a 2 b 2 ( a T b ) 2 alkalmazzuk: ( ) 2 w 0 2 w(t + 1) 2 w T 0 w(t) (tα) 2 vagyis w(t + 1) 2 (tα)2 w 0 2

361 285/370 Konvergenciatétel IV NHk 11 Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló Másrészt - minden tanuló lépésnél: 8 w(t + 1) = w(t) + x (t), tehát: w(t + 1) 2 = w(t) + x (t) 2 = w(t) 2 + 2w(t)x (t) + x (t) 2 w(t) 2 + x (t) 2 = tβ 2 Ahol β 2 = max { x (n) 2 ; n = 1..N } 9 Van tehát két egyenlőtlenség, melyből kiszámítható a t maximális értéke: t max x w 0 2 β 2 α 2 Tehát a perceptron konvergál

362 286/370 Matlab Demó I NHk 11 Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló Kódoljuk a perceptron algoritmust: generáljuk az adatokat. Specifikáljuk: az adatok dimenzióját, számát; az elválasztó hipersíkot; generáljuk a bemeneti mintákat illetve az azokhoz tartozó kimeneti osztálykódokat. Transzformálunk a konvergenciatétel szerint. Inicializáljuk a perceptront zeró értékekkel. Futtatjuk az algoritmust: mérjük a hibajavító lépéseket; mérjük a ciklusok számát.

363 287/370 Matlab Demó II NHk 11 Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló Matlab kód: 1 % ADATOK parameterei dim = 9; N = 200; % az elvalaszto hipersik w_0 = [1;-3; 4;-1; 2;-6;-5; 5; 3]; 6 b = 2; % adatgeneralas X = sign(rand(n,dim) - 0.5); % cimkek generalasa Y = sign(x*w_0 + b); 11 % hatar-mintak szurese idx = find(~y); idx = setdiff([1:n],idx); X = X(idx,:); Y=Y(idx); N = length(y);

364 288/370 Matlab Demó III NHk 11 Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló %% Perceptron tanulas %%%%%% % 1 mintak atalakitasa X = [ X ones(n,1)]; % 2 5 XX= diag(y) * X; %% Tanulas -- lokalis valtozok beallitasa w = zeros(dim+1,1); Term = 0; steps = 0; sweeps = 0;

365 289/370 Matlab Demó IV NHk 11 Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló 1 while ~Term; Term = 1; for ii=1:n; if XX(ii,:) * w <= 0 6 w = w + XX(ii,:) ; steps = steps + 1; fprintf( %d:,steps); % megj. fprintf( %4d,w);fprintf( \n ); Term = 0; 11 end; end; sweeps = sweeps +1; end;

366 290/370 Matlab Demó V NHk 11 Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló Kiíratjuk a statisztikákat: 1 fprintf( \nteljes bejarasok szama: %d\n,sweeps); fprintf( Eredmeny: ); fprintf( %4d,w); fprintf( \n ); fprintf( Kezdo hipersik: ); fprintf( %4d,[w_0;b]); fprintf( \n );

367 Összefoglaló NHk 11 Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló 60-as évek tanulási paradigmája; Logikai függvényeket keres bemenet és kimenet binárisak; Cél a gondolkodás modellezése Nem tudja szeparálni az XOR művelet kimeneteit (Minsky és Papert 62) Feladat: találjunk konfigurációt, mely az XOR-t helyesen osztályozza. x 1 w 11 w 12 w 21 w 22 b 1 h 1 b 2 v 1 v 2 b 3 y x 2 h 2 291/370

368 Perceptron történelem EAR MODELS FOR CLASSIFICATION 11 Bishop: Pattern Recognition and Machine Learning, 196. o NHk Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló tion of the Mark 1 perceptron hardware. The photograph on the left shows how the inputs g a simple camera system in which an input scene, in this case a printed character, was rful lights, and an image focussed onto a array of cadmium sulphide photocells, 00 pixel image. The perceptron also had a patch board, shown in the middle photograph, rent configurationsa of perceptron-t input features Rosenblatt to be tried. implementálta Often thesea 60-as were wired években. up atarandom fenti to ility of the perceptron fénykép to learn a perceptron without the hardver-es need for precise implementálása, wiring, in contrast jobb oldalon to a modern he photograph on the right shows one of the racks of adaptive weights. Each weight was a rotary variable állítható resistor, potenciométerekkel. also called a potentiometer, driven by an electric motor thereby f the weight to be adjusted automatically by the learning algorithm. 292/370

369 293/370 Perceptron Kitekintő NHk 11 Történelem Perceptron Lin.szep Konv.Tétel Matlab Összefoglaló A perceptron egy black-box fekete doboz módszer; Valós életből vett feladatok megoldására lehet használni: 1 Gyűjtünk adatokat, 2 Építünk modellt, 3 Tanítjuk a modellt, 4 Paraméterek = modell kiválasztása. A későbbi neurális háló modellek jó példái a fenti automatizált feladatmegoldási paradigmának. A neurális hálózat modelleket nagyon sokáig ma is használ(j)ták modellezésre.

370 Az Előadások Témái M.L.P B.P. 12 Deep Learning Bevezető: mi a mesterséges intelligencia 1 Tudás reprezentáció 2 Gráfkeresési stratégiák 3 Szemantikus hálók / Keretrendszerek 4 Játékok modellezése 5 Bizonytalanság kezelése 6 Grafikus modellek és a D.S. modell 7 Fuzzy rendszerek 8 Tanuló rendszerek 9 Szimulált kifűtés, Genetikus algoritmusok 10 Neurális hálók, a perceptron modell 11 Többrétegű hálók, Önszerveződés 12, /370 Gépi tanulás 14

371 295/370 Admin trívia 12 Vizsga Szóbeli (60%) + Gyakorlat (40%) M.L.P B.P. Deep Learning Laborgyakorlatok: 1 Gráfok ábrázolása - dedukciós algoritmus 18% 2 Játékelmélet 10% 3 Matlab - tanulási algoritmus 12% 4 Opcionális feladatok - max. 3/személy sok% Bemutatók (5 20 pont) Alkalmazások bemutatása, melyek adaptív, gépi tanulásos vagy mestint módszereket alkalmaznak.

372 Robotasszisztens a Stanford-tól STAIR 12 M.L.P B.P. Deep Learning A robotok programozásánál nem volt lehetséges speciális előprogramozás nélkül összeszedni a mosatlant vagy megetetni a cicákat. A robotok hagyományosan 3D-s modellt készítenek környezetükről. Erre általában két kamerát használtak, a távolságokat idő és számítási kapacitás-igényes munkával, az adott tárgy pontjainak tömege alapján határozták meg. A STAIR alternatív megoldást kínál: pontok sokasága helyett az algoritmus az adott tárgy megfogható részének a középpontját azonosítja. Élek hosszúságát számolja ki, majd az eredményt az adatbázisban levő statisztikailag hasonló tárgyakkal veti össze. A szoftver ezek alapján hozza létre a háromdimenziós modelleket; lényegesen gyorsabban és kevesebb munkával, mint a régi megközelítésben. 296/370 Stanford STAIR agens.ai

373 297/370 Többrétegű Hálók I M.L.P B.P. 12 Deep Learning Az információ számok a bemeneti X rétegből a kimeneti Y réteg fele halad. Egy mintára kiszámítjuk a kimeneti értéket, minden neuron értékét kiszámítva. Feltételezzük, hogy minden adat és súly folytonos. X Y MLP NEM Bayes-háló A neurális hálók kapcsolatai kommunikációt, a Bayes-hálók kapcsolatai függőséget jelentenek.

374 298/370 Többrétegű Hálók II M.L.P B.P. 12 Deep Learning x 1 x 2 x 3 Y x 4 W h 1 h 2 h 3 h 4 h 5 MI az információ? V Formálisan : A neuronháló csúcsai az információt feldolgozzák. y ki def = f akt (x be ) Az élek: a csúcsok közötti kapcsolatok. x (i) be def = A fenti lépések ismétlődnek. j w ij x (j) ki definíció szerint x ki R k

375 298/370 Többrétegű Hálók II M.L.P B.P. 12 Deep Learning x 1 x 2 x 3 Y x 4 W h 1 h 2 h 3 h 4 h 5 MI az információ? V Formálisan : A neuronháló csúcsai az információt feldolgozzák. y ki def = f akt (x be ) Az élek: a csúcsok közötti kapcsolatok. x (i) be def = A fenti lépések ismétlődnek. j w ij x (j) ki definíció szerint x ki R k

376 298/370 Többrétegű Hálók II M.L.P B.P. 12 Deep Learning x 1 x 2 x 3 Y x 4 W h 1 h 2 h 3 h 4 h 5 MI az információ? V Formálisan : A neuronháló csúcsai az információt feldolgozzák. y ki def = f akt (x be ) Az élek: a csúcsok közötti kapcsolatok. x (i) be def = A fenti lépések ismétlődnek. j w ij x (j) ki definíció szerint x ki R k

377 298/370 Többrétegű Hálók II M.L.P B.P. 12 Deep Learning x 1 x 2 x 3 Y x 4 W h 1 h 2 h 3 h 4 h 5 MI az információ? V Formálisan : A neuronháló csúcsai az információt feldolgozzák. y ki def = f akt (x be ) Az élek: a csúcsok közötti kapcsolatok. x (i) be def = A fenti lépések ismétlődnek. j w ij x (j) ki definíció szerint x ki R k

378 299/370 Többrétegű Hálók III M.L.P B.P. 12 Deep Learning A bemenő aktivitás: y j = i w ijx i + b j. A perceptron tanulási algoritmushoz hasonlóan: előbb: x i = [x 1,..., x d, 1] T w j = [w 1,..., w d, b] T 1 f(z b) 0 b 1 2 f(z) = sgn(z) Univerzális approximáció A következő rendszer: f M (z w, b) = M w m f(z b m ) m=1 univerzális approximátor, azaz δ > 0 g L 2 (R d ) M, w, b ú.h. g f M (z w, b) L2 δ

379 300/370 Többrétegű Hálók IV M.L.P B.P. 12 Deep Learning Univerzális approximátor: bizonyítás a szint-halmazokon alapszik (lásd Lebesgue integrálás). Vizualizálás: Mintavételezés a %Generatorfuggvenyek MATLAB kód: f = inline( ((x>0)-0.5).*2 ); g = inline( 2./(1+exp(-2*x))-1 ); % komponensek szama 5 mcomp = 10; % fv.-nyek szama nf = 6; % X tengely xx=-10:0.05:10; 10 xd=repmat(xx,[mcomp,1]); % plot init clf; hf = subplot(1,2,1); set(gca,... Position,[ ], YTick,[], XTick,[]); hold on; box on; ylim([-25,25]); set(gca,... Position,[ ],... YTick,[], XTick,[]); 20 hold on; box on; ylim([-25,25]); w és b értékekből hg = subplot(1,2,2); % megjelenitesi stilus style = { b, r, k, m, c, g }; % F.v.-nyek generalasa 5 for ii=1:nf; % egyutthatok ss=(2*rand(mcomp,1) -1)*6; ww=(2*rand(mcomp,1) -1)*6; bb=(2*rand(mcomp,1) -1)*10; 10 bd=diag(bb)*ones(size(xd)); y_f = sum(diag(ww) * f(diag(ss)*xd + bd)); y_g = sum(diag(ww) * g(diag(ss)*xd + bd)); % megjelenites 15 plot(hf,xx,y_f,style{ii}, LineWidth,3); plot(hg,xx,y_g,style{ii}, LineWidth,3); end; % nyomtatas print -depsc2 rand_fn.eps

380 301/370 Aktivációs függvények M.L.P B.P Aktivacios fugveny F. Derivaltja Aktivacios fuggveny F. Derivaltja Deep Learning Véletlen függvények a függvényosztályokból:

381 302/370 Backpropagation I M.L.P B.P. 12 Deep Learning Nem bináris függvényt közelít. A bemeneti/kimeneti értékek folytonosak. f NN : R d R Folytonos esetben használható a négyzetes hibafüggvény: E(w NN ) = 1 2 N ( yn f NN (x n ) ) 2 n=1 ahol w NN a neuronháló paraméterei. Differenciálható akt. függvényeknél a gradiens szabály alkalmazható backpropagation szabály.

382 303/370 Backpropagation II M.L.P B.P. 12 Deep Learning Error back-propagation négyzetes hiba visszaterjesztése Egy adott tanulási halmazhoz és egy w NN neurális hálóhoz rendelt négyzetes hiba E(w NN ) = 1 2 N ( yn f NN (x n ) ) 2 n=1 akkor zéró, ha a neurális háló minden adatot jól közelít. Egy adott w (0) NN hálónál jobban közelítő hálót kapunk ha egy kis lépést végzünk a negatív gradiens irányába.

383 Backpropagation III M.L.P B.P. 12 Deep Learning Képletesen w (t+1) NN w(t) NN ) w (t) NN NN α E(w(t) w (t) NN α we(w (t) NN ) ahol α tanulási együttható; w E(w (t) NN ) a hiba gradiense (vektorok!). Kérdés: milyen α értékek megfelelőek? Local optimum Kis lépések hosszú konvergencia. Nagy lépések nem konvergál. w 2 w 1 w 0 304/370

384 305/370 Backpropagation IV M.L.P B.P. 12 Deep Learning Differenciálás szabálya: f(g 1 (w i ),..., g k (w i )) = f(g 1,..., g k ) g j w i g g j w i j Neuronháló függvénye: ( ( ) ) y =, f j h i w ij, i h 1 w i1 h 2 w i2 h N w in wij E( ) = ( ) fj E( ) wij f j w ij h i j i f j ( i h iw ij )

385 306/370 Backpropagation V M.L.P 12 (folyt) wij E( ) = fj E( ) wij f j ( Nn=1 w ij h i ) = h i f j ( Nn=1 w ij h i ) fj E( ) B.P. Deep Learning A bemeneti érték és a kimeneti hiba szorzódnak. ( ) ) És fj E( ) = fj E (..., g k j v jkf j,... Lánc-deriválás szerint: fj E( ) = k v jk gk E( )g k ( ) f j ( ) v j1... Az egyéni hibák súlyozottan összeadódnak. v jk

386 307/370 Backpropagation VI M.L.P B.P. 12 Deep Learning (folyt) Tehát: amíg a működésnél a jel előre terjed, a tanulás folyamán a hiba visszafele; a kimeneti réteg felől a háló bemenete felé terjed. Hiba-visszaterjesztés (BP) = azaz az osztópontok összegzővé alakulnak; = azaz az összegző csomópontok meg hiba-elosztóvá.

387 Backpropagation Összefoglaló M.L.P B.P. 12 Deep Learning A BP algoritmus a gradiens szabály alkalmazása a neuronhálókra; Az alap a négyzetes hiba; Egyszerűen implementálható; Nagyon sok alkalmazás; w 2 w 1 Local optimum w 0 Hátrányok: Mivel gradiens, lassú nagyon sokáig tarthat a tanulás. Más módszerekkel állítani be a súlyokat: Newton, Konjugált gradiens. Nincs a becsült mennyiségre konfidencia valószínűségi módszerek szükségesek. 308/370 Rosenbrock

388 Backpropagation Példa I 12 Feladat: keressük a h(x 1, x 2 ) = 100 ( x 2 x 2 1) 2 + (1 x1 ) 2 függvény minimumát a gradiens szabály használatával. M.L.P B.P. Deep Learning 1 h( ) = 400(x 2 x 2 1 )x 1 + 2(x 1 1) 2 h( ) = 200(x 2 x 2 1 ) A második egyenlet x 2 = x 1 Behelyettesítve x 1 = 1. Induljunk a ( 1, 1) pontból. 309/370

389 Backpropagation Példa II M.L.P B.P. 12 Deep Learning BP szabály = gradiens általában nagyon lassú. Rosenbrock fv. optimizálás Gradient Descent Scaled Conjugate Gra Quasi Newton Conjugate Gradients /370 0

390 M.L.P. Összefoglaló M.L.P B.P. 12 Deep Learning Neurális hálók fekete-doboz módszerek: 1 minden feladat megoldására potenciálisan alkalmazhatóak; 2 jó eredményekhez (majdnem mindig) kell egy kis igazítás a módszeren; 3 siker függ a tapasztalattól; 7 BackPropagation = gradiens tanulás 1 általában nagyon lassú; 2 fejlett módszerek: konjugált gradiens módszerek, quasi-newton, etc. gyorsítanak a konvergencián. 3 lokális optimumok elkerülésére többszálú optimizálás, pl. mintavételezéssel kijelölni a kezdőértékeket. 311/370 7 Érdemes tehát tovább tanulni.

391 312/370 A Deep Learning modell 12 M.L.P B.P. Deep Learning

392 Az Előadások Témái Hebb 13 Self. Org. Hebb-hálók S.O.M. Bevezető: mi a mesterséges intelligencia 1 Tudás reprezentáció 2 Gráfkeresési stratégiák 3 Szemantikus hálók / Keretrendszerek 4 Játékok modellezése 5 Bizonytalanság kezelése 6 Grafikus modellek és a D.S. modell 7 Fuzzy rendszerek 8 Tanuló rendszerek 9 Szimulált kifűtés, Genetikus algoritmusok 10 Neurális hálók, a perceptron modell 11 Többrétegű hálók, Önszerveződés 12, /370 Gépi tanulás 14

393 314/370 Admin trívia 13 Vizsga Szóbeli (60%) + Gyakorlat (40%) Hebb Self. Org. Hebb-hálók S.O.M. Laborgyakorlatok: 1 Gráfok ábrázolása - dedukciós algoritmus 18% 2 Játékelmélet 10% 3 Matlab - tanulási algoritmus 12% 4 Opcionális feladatok - max. 3/személy sok% Bemutatók (5 20 pont) Alkalmazások bemutatása, melyek adaptív, gépi tanulásos vagy mestint módszereket alkalmaznak.

394 D.O. Hebb I 13 D.O. Hebb The organization of behavior Hebb Self. Org. Hebb-hálók S.O.M. 315/370 A neurális moduláció alapelvei: Két neuron között a kapcsolat erőssége arányos a neuronok pre-, illetve poszt-szinaptikus tevékenységével; Azon neuron csoportok, melyek általában egyszerre tüzelnek, egy egységet alkotnak; (modularitás) A gondolkodás folyamata ezen sejt-csoportok szekvenciális aktivációja;

395 D.O. Hebb II Hebb 13 Self. Org. Hebb-hálók S.O.M. Organization of Behavior: When an axon of cell A is near enough to excite B and repeatedly or persistently takes part in firing it, some growth process or metabolic change takes place in one or both cells such that A s efficiency, as one of the cells firing B, is increased. Neuroscience Hebb synapse Hebb szabály (p. 62) w ij = αa i a j 316/370 Ahol a i, a j neuronok aktivitásai; w ij az összekötő szinapszis erőssége; α tanulási együttható.

396 Önszervező Hálók I Hebb 13 Self. Org. Hebb-hálók S.O.M. Cél: Haykin: Neural Networks A comprehensive foundation, IEEE press, 1994 Struktúrák felfedezése az adatokban; Felügyelet nélküli működés önszervezés. Tanulási szabályok: lokális szabályok, melyek sok neuronra alkalmazva egy globális függvényt határoznak meg. Alapja (Turing 1952): Global order can arise from local interactions. 317/370

397 318/370 Önszervező Hálók II Hebb 13 Self. Org. Önszervező rendszerek alapelvei (von der Malsburg): A szinapszisok önmegerősítőek A pre-, illetve posztszinaptikus neuronok egyidejű aktivációja erősíti a szinapszist (lásd Hebb). Hebb-hálók S.O.M. A szinapszisok versengenek az erőforrásokért A legerősebb szinapszis biztos, hogy túléli. Ez a többi rovására történik (winner-takes-all). A szinapszisok változásai koordináltak Egy szinapszis nem kódol robusztusan, ezért egy régió neuronjai majdnem azonos bemenet kimenet kapcsolatot kódolnak.

398 Önszervező Hálók III Hebb 13 Self. Org. Hebb-hálók S.O.M. X 319/370 Önszervező tanulás Struktúra-felismerés A vizuális rendszer önszervező: fejlődésének elején csak a felismerésre való képesség van jelen; a működés során egyes kép-csoportok klaszterek együttesen lesznek ábrázolva; A származtatott fogalmak ábrázolása a hierarchia egy felsőbb szintjén történik. Y Példa: neurális rendszer pixelcsoportokat keres. némely pixelcsoport gyakori; ezen csoportok rözgülnek a rendszerben. a felső szinten a rendszer címkézést végez.

399 320/370 Hebb-féle tanulás I Hebb 13 Self. Org. Hebb-hálók S.O.M. Hebb tanulás - auto-asszociatív rendszerek A rendszer bemenete egy minta - nincs kimeneti jel. A kimeneten vagy: az eredeti mintát; vagy egy csoportosítást, sűrített ábrázolást szeretnénk visszakapni. csoportosításkor a kimeneti neuronok versengenek: ^y j = x i w ij i { 1 l = k y l = 0 l k ahol k = argmax ^y j j

400 Hebb-féle tanulás II 13 y l = { 1 l = k 0 l k ahol k = argmax ^y j j Hebb Self. Org. Hebb-hálók S.O.M. Végleges kimeneti érték az argmax művelet után. Versengés a bemeneti mintákért. y 1 y 2 y 3 y 4 y 5 W x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 Feltételezve egy kezdő W véletlen súlyvektort, a v minta bemutatása után csak a w 4 súlyok változnak a kompetitív tanulás során. v 1 v 2 v 3 v 4 v 5 v 6 v 7 v 8 v 9 321/370

401 Hebb-féle tanulás II 13 y l = { 1 l = k 0 l k ahol k = argmax ^y j j Hebb Self. Org. Hebb-hálók S.O.M. Végleges kimeneti érték az argmax művelet után. Versengés a bemeneti mintákért. y 1 y 2 y 3 y 4 y 5 W x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 Feltételezve egy kezdő W véletlen súlyvektort, a v minta bemutatása után csak a w 4 súlyok változnak a kompetitív tanulás során. v 1 v 2 v 3 v 4 v 5 v 6 v 7 v 8 v 9 321/370

402 Hebb-féle tanulás III Hebb 13 Self. Org. Hebb-hálók S.O.M. minden y k neuron attraktorként működik. w ij = αx i y j receptív mezők alakulnak ki α 0 tanulási mód, pl. Y 4 Y Y 2 1 Y 3 Y 5 α t = K t az asszociatív háló konvergál (lásd). X 2 X 1 322/370 ami nincs: kapcsolatok a kimeneti neuronok között: Kohonen-hálók

403 323/370 Kohonen hálók I Hebb 13 Self. Org. Hebb-hálók S.O.M. Teuvo Kohonen Since the 1960 s, introduced several new concepts to neural computing: theories of distributed associative memory and optimal associative mappings, the self-organizing feature maps (SOMs), the learning vector quantization (LVQ),... the Adaptive-Subspace SOM (ASSOM) in which invariant-feature filters emerge... A new SOM architecture WEBSOM has been developed in his laboratory for exploratory textual data mining. Wikipedia link

404 Kohonen hálók II Hebb 13 Self. Org. Hebb-hálók Jellemzők: kétrétegű háló, egy bemeneti és egy kimeneti réteggel; (mint előbb) S.O.M. kompetitív háló: csak egy neuron lesz aktív; (mint előbb) a kimeneti rétegen topológia van értelmezve (ÚJ) 324/370

405 Kohonen hálók Topológia 13 Topológia szomszédságot jelent Hebb Self. Org. Hebb-hálók S.O.M. segít a tanulásban: a szomszédok is tanulnak kevésbé... értelmezhető eredmény: n 14 n 13 n 24 n 23 n 34 n 33 n 44 n 43 a szomszédok aktivitása is aktivitása alapján pontosabb n 12 n 22 n 32 n 42 rekonstrukció a kimeneti n ij neuronok megcímkézhetőek: n 11 n 21 n 31 n 41 Kohonen:... fonéma annotáció 325/370

406 326/370 Kohonen hálók Tanulás I Hebb 13 Self. Org. Hebb-hálók S.O.M. Az algoritmus iteratív: 1 minták egyenként; a t-edik időpontban legyen x t 2 kiszámtítjuk a kimeneti neuronok aktivitását: y j = w ij x i (t) = Wx(t) i 3 megkeressük a nyertes kimeneti neuront: k def = argmax j 4 Az összes szomszédos neuron súlyát módosítjuk: y j w ij (t + 1) = w ij (t) + α η(j, k)x i (t) Normáljuk a súlyokat w j w j / w j 5 GOTO 1

407 327/370 Kohonen hálók Tanulás II Hebb 13 Self. Org. Hebb-hálók S.O.M. Szavakban: a nyertes neuron aktivizálódik ; A nyertes neuront és szomszédait közelebb hozzuk a bemenethez; Mindegyik neuron specializálódik a mintákra: arra lesz a legnagyobb a kimenete;

408 327/370 Kohonen hálók Tanulás II Hebb 13 Self. Org. Hebb-hálók S.O.M. Szavakban: a nyertes neuron aktivizálódik ; A nyertes neuront és szomszédait közelebb hozzuk a bemenethez; Mindegyik neuron specializálódik a mintákra: arra lesz a legnagyobb a kimenete; x t

409 327/370 Kohonen hálók Tanulás II Hebb 13 Self. Org. Hebb-hálók S.O.M. Szavakban: a nyertes neuron aktivizálódik ; A nyertes neuront és szomszédait közelebb hozzuk a bemenethez; Mindegyik neuron specializálódik a mintákra: arra lesz a legnagyobb a kimenete; x t

410 Eredmény: a neuronok elhelyezkedését a bemeneti minták sűrűségfüggvénye határozza meg több neuron kerül a sűrűbb régiókba. 328/370 Kohonen hálók Tanulás III Hebb 13 x t Self. Org. Hebb-hálók S.O.M.

411 Eredmény: a neuronok elhelyezkedését a bemeneti minták sűrűségfüggvénye határozza meg több neuron kerül a sűrűbb régiókba. 328/370 Kohonen hálók Tanulás III Hebb 13 x t Self. Org. Hebb-hálók S.O.M.

412 329/370 Önszervező rendszerek Összefoglaló Hebb 13 Self. Org. Hebb-hálók Az adatokhoz nincs kimeneti érték rendelve; A rendszer általában az adatok egy csoportosítását valósítja meg; S.O.M. Ez implicit módon a bemeneti adatok terének a felosztását jelenti; Zajszűrés/Sűrítés: a teljes bemeneti adatok helyett a hozzá tartozó osztály kódját küldjük.

413 Példa Térképészgép Hebb 13 Self. Org. Hebb-hálók S.O.M. Walter Bischof, Jun Zhou (U. Alberta) és Terry Caelli (Australian N.U) a kartográfiát (részben) automatizáló programmal álltak elő. A program embertől tanulja, miként fedezzen fel és azonosítson légi felvételeken korábban nem szereplő vagy megváltozott elemeket: utakat, vasutakat, épületeket. Ágens portál Walter Bischof projektek Működése: Egyre többet tud meg okosabb lesz. Kellő mennyiségű gyakorlás után az operátor rábízza a munkát. Bayes-féle következtetést használ: korábbi mérések alapján végez új becsléseket. A legjobbakból állapítja meg az adott országút soron következő pontjait, és ezt mindaddig folytatja, amíg az új elemek pozíciója megfelel az elvárásoknak. 330/370

414 Az Előadások Témái 14 Gépi Tanulás Adatmodellezés Rejtett változók Becslések ML MAP Bayes Grafikus modellek Bevezető: mi a mesterséges intelligencia 1 Tudás reprezentáció 2 Gráfkeresési stratégiák 3 Szemantikus hálók / Keretrendszerek 4 Játékok modellezése 5 Bizonytalanság kezelése 6 Grafikus modellek és a D.S. modell 7 Fuzzy rendszerek 8 Tanuló rendszerek 9 Szimulált kifűtés, Genetikus algoritmusok 10 Neurális hálók, a perceptron modell 11 Többrétegű hálók, Önszerveződés 12, /370 Gépi tanulás 14

415 332/370 Admin trívia 14 Vizsga Szóbeli (60%) + Gyakorlat (40%) Gépi Tanulás Adatmodellezés Rejtett változók Becslések ML MAP Bayes Grafikus modellek Laborgyakorlatok: 1 Gráfok ábrázolása - dedukciós algoritmus 18% 2 Játékelmélet 10% 3 Matlab - tanulási algoritmus 12% 4 Opcionális feladatok - max. 3/személy sok% Bemutatók (5 20 pont) Alkalmazások bemutatása, melyek adaptív, gépi tanulásos vagy mestint módszereket alkalmaznak.

416 Példa Ágensek filmvásznon 14 Gépi Tanulás Adatmodellezés Rejtett változók Becslések ML MAP Bayes Grafikus modellek A Massive céggel a Gyűrük Ura trilógiában találkozhattunk 2001-ben. Az összes csatajelenet az ő programjukkal készült. Nem véletlen, hogy a tavalyi (2005) King Kong-ban statiszták helyett a Massive ágenseit használták. Aitia 333/370 Ágens portál Walter Bischof projektek Hangya-kolónia szimuláció egy kedvelt M.I. téma. A buta hangya-ágensek feromon nyomokat hagynak maguk után; ezek alapján mozognak. Nincs globális információ a környezetről: csak a feromon-nyomot követik. A kolónia intelligens viselkedést mutat: megtalálja a legrövidebb utat a fészek és az élelemforrás között.

417 334/370 Gépi tanulás 14 Gépi Tanulás Adatmodellezés Történelmi háttér / Motiváció: nagyon nagy mennyiségű adat, melyet szeretnénk automatikusan feldolgozni; Rejtett változók Becslések ML MAP Bayes Grafikus modellek A matematikai modellek általánosak nem egy adott feladatra vannak kiélezve, Szükség van esetenkénti tanulmányozására egy-egy feladattípusnak tudomány ág, mely a modelleket a feladatokhoz idomítja.

418 Gépi tanulás Meghatározás 14 Gépi Tanulás Adatmodellezés Rejtett változók Becslések ML MAP Bayes Grafikus modellek Gépi tanulás Módszerek statisztikai, valószínűségi gyűjteménye valós feladatok megoldására. Például: Zajszűrés: (nem )lineáris regresszió és (nem )normális zajt feltételezve; Osztályozás: bináris, több osztályos, illetve Részlegesen címkézett adatokra; Klaszterezés adatok csoportosítása, Függvényinverzió, Sűrűségbecslés, Kakukktojások felfedezése novelty detection. Szükséges az adatok modellezése. 335/370

419 336/370 Gépi tanulás Mitchell 14 Gépi Tanulás Adatmodellezés Rejtett változók Becslések ML MAP Bayes Grafikus modellek T. Mitchell: Machine Learning (ML), textbook... is concerned with the question of how to construct programs that automatically improve with experience. In recent years (1997) successful ML algorithms have been developed in data-mining fraud detection, filtering for user s preferences, vehicles that learn to drive on highways; advances in the theory and algorithms that form the foundations of tis field. Thomas Mitchell Tanuló rendszer olyan számítógépes program, melyek képességei a működés során javulnak.

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008 Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 007/008 Az Előadások Témái Bevezető: mi a mesterséges intelligencia... Tudás reprezentáció i stratégiák Szemantikus hálók / Keretrendszerek

Részletesebben

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363 1/6 Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 Az Előadások Témái 46/6 Bevezető: mi a mesterséges intelligencia... Tudás reprezentáció stratégiák Szemantikus hálók

Részletesebben

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008 Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008 Az Előadások Témái Bevezető: mi a mesterséges intelligencia... Tudás reprezentáció Gráfkeresési stratégiák Szemantikus hálók

Részletesebben

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/364

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/364 /364 Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 200/20 Az Előadások Témái 2/364 : mi a mesterséges intelligencia... Tudás reprezentáció Gráfkeresési stratégiák Szemantikus hálók

Részletesebben

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008 Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008 Az Előadások Témái : mi a mesterséges intelligencia... Tudás reprezentáció Gráfkeresési stratégiák Szemantikus hálók / Keretrendszerek

Részletesebben

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363 1/363 Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 Az Előadások Témái 69/363 Bevezető: mi a mesterséges intelligencia... Tudás reprezentáció Gráfkeresési stratégiák

Részletesebben

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008 Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008 Az Előadások Témái Bevezető: mi a mesterséges intelligencia... Tudás reprezentáció stratégiák Szemantikus hálók / Keretrendszerek

Részletesebben

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/364

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/364 1/364 Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 Az Előadások Témái 1 Tudnivalók Bevezető Fejlődés Könyvészet Eredmények 2/364 Bevezető: mi a mesterséges intelligencia...

Részletesebben

Az Előadások Témái. Mesterséges Intelligencia. A mesterséges intelligencia. ... trívia. Vizsga. Laborgyakorlatok: Bemutatók (5 20 pont)

Az Előadások Témái. Mesterséges Intelligencia. A mesterséges intelligencia. ... trívia. Vizsga. Laborgyakorlatok: Bemutatók (5 20 pont) Az Előadások Témái Mesterséges ntelligencia Csató Lehel Matematika-nformatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 Bevezető: mi a mesterséges intelligencia... Tudás reprezentáció Gráfkeresési

Részletesebben

A TANTÁRGY ADATLAPJA

A TANTÁRGY ADATLAPJA A TANTÁRGY ADATLAPJA 1. A képzési program adatai 1.1 Felsőoktatási intézmény Babeș Bolyai Tudományegyetem 1.2 Kar Matematika és Informatika Kar 1.3 Intézet Magyar Matematika és Informatika Intézet 1.4

Részletesebben

za TANTÁRGY ADATLAPJA

za TANTÁRGY ADATLAPJA za TANTÁRGY ADATLAPJA 1. A képzési program adatai 1.1 Felsőoktatási intézmény Babeș Bolyai Tudományegyetem 1.2 Kar Matematika és Informatika Kar 1.3 Intézet Magyar Matematika és Informatika Intézet 1.4

Részletesebben

2. Visszalépéses keresés

2. Visszalépéses keresés 2. Visszalépéses keresés Visszalépéses keresés A visszalépéses keresés egy olyan KR, amely globális munkaterülete: egy út a startcsúcsból az aktuális csúcsba (az útról leágazó még ki nem próbált élekkel

Részletesebben

2. Visszalépéses stratégia

2. Visszalépéses stratégia 2. Visszalépéses stratégia A visszalépéses keres rendszer olyan KR, amely globális munkaterülete: út a startcsúcsból az aktuális csúcsba (ezen kívül a még ki nem próbált élek nyilvántartása) keresés szabályai:

Részletesebben

Mesterséges intelligencia. Gregorics Tibor people.inf.elte.hu/gt/mi

Mesterséges intelligencia. Gregorics Tibor people.inf.elte.hu/gt/mi people.inf.elte.hu/gt/mi Szakirodalom Könyvek Fekete István - - Nagy Sára: Bevezetés a mesterséges intelligenciába, LSI Kiadó, Budapest, 1990, 1999. ELTE-Eötvös Kiadó, Budapest, 2006. Russel, J. S., Norvig,

Részletesebben

A TANTÁRGY ADATLAPJA

A TANTÁRGY ADATLAPJA A TANTÁRGY ADATLAPJA 1. A képzési program adatai 1.1 Felsőoktatási intézmény Babeș Bolyai Tudományegyetem 1.2 Kar Matematika és Informatika Kar 1.3 Intézet Magyar Matematika és Informatika Intézet 1.4

Részletesebben

Kereső algoritmusok a diszkrét optimalizálás problémájához

Kereső algoritmusok a diszkrét optimalizálás problémájához Kereső algoritmusok a diszkrét optimalizálás problémájához A. Grama, A. Gupta, G. Karypis és V. Kumar: Introduction to Parallel Computing, Addison Wesley, 2003. könyv anyaga alapján A kereső eljárások

Részletesebben

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363 1/363 Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 20/2011 Az Előadások Témái 226/363 Bevezető: mi a mesterséges intelligencia... Tudás reprezentáció Gráfkeresési stratégiák Szemantikus

Részletesebben

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363 1/363 Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 Az Előadások Témái 206/363 Bevezető: mi a mesterséges intelligencia... Tudás reprezentáció Gráfkeresési stratégiák

Részletesebben

Kereső algoritmusok a diszkrét optimalizálás problémájához

Kereső algoritmusok a diszkrét optimalizálás problémájához Kereső algoritmusok a diszkrét optimalizálás problémájához A. Grama, A. Gupta, G. Karypis és V. Kumar: Introduction to Parallel Computing, Addison Wesley, 2003. könyv anyaga alapján A kereső eljárások

Részletesebben

Modellezés Gregorics Tibor Mesterséges intelligencia

Modellezés Gregorics Tibor Mesterséges intelligencia Modellezés 1. Állapottér-reprezentáció Állapottér: a probléma leírásához szükséges adatok által felvett érték-együttesek (azaz állapotok) halmaza az állapot többnyire egy összetett szerkezetű érték gyakran

Részletesebben

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363 1/363 Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 Az Előadások Témái 94/363 Bevezető: mi a mesterséges intelligencia... Tudás reprezentáció Gráfkeresési stratégiák

Részletesebben

Keresések Gregorics Tibor Mesterséges intelligencia

Keresések Gregorics Tibor Mesterséges intelligencia Keresések ADAT := kezdeti érték while terminálási feltétel(adat) loop SELECT SZ FROM alkalmazható szabályok ADAT := SZ(ADAT) endloop KR vezérlési szintjei vezérlési stratégia általános modellfüggő heurisztikus

Részletesebben

1. Milyen hatással van a heurisztika általában a keresõ rendszerek mûködésére?

1. Milyen hatással van a heurisztika általában a keresõ rendszerek mûködésére? 2012. 06. 20. 1. Milyen hatással van a heurisztika általában a keresõ rendszerek mûködésére? A heurisztika olyan, a feladathoz kapcsolódó ötlet, amelyet közvetlenül építünk be egy algoritmusba, azért,

Részletesebben

V. Kétszemélyes játékok

V. Kétszemélyes játékok Teljes információjú, véges, zéró összegű kétszemélyes játékok V. Kétszemélyes játékok Két játékos lép felváltva adott szabályok szerint. Mindkét játékos ismeri a maga és az ellenfele összes választási

Részletesebben

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363 1/33 Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 Az Előadások Témái 110/33 Bevezető: mi a mesterséges intelligencia... Tudás reprezentáció Gráfkeresési stratégiák Szemantikus

Részletesebben

Opcionális feladat 5p. A négyoszlopos hanoi tornyok feladata

Opcionális feladat 5p. A négyoszlopos hanoi tornyok feladata 1. Laborfeladat Opcionális feladat 5p. A négyoszlopos hanoi tornyok feladata % harom oszloppal hanoi(1,i,j,_,[i >J]) :!. hanoi(d,i,j,k,leplista) : D1 is D 1, hanoi(d1,i,k,j,l1), hanoi(1,i,j,k,egylep),

Részletesebben

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363 1/363 Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 Az Előadások Témái 262/363 Bevezető: mi a mesterséges intelligencia... Tudás reprezentáció Gráfkeresési stratégiák

Részletesebben

Intelligens Rendszerek Elmélete IRE 4/32/1

Intelligens Rendszerek Elmélete IRE 4/32/1 Intelligens Rendszerek Elmélete 4 IRE 4/32/1 Problémamegoldás kereséssel http://nik.uni-obuda.hu/mobil IRE 4/32/2 Egyszerű lények intelligenciája? http://www.youtube.com/watch?v=tlo2n3ymcxw&nr=1 IRE 4/32/3

Részletesebben

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008 Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008 Az Előadások Témái Bevezető: mi a mesterséges intelligencia... Tudás reprezentáció Gráfkeresési stratégiák Szemantikus hálók

Részletesebben

ÖSSZEFOGLALÁS a Bsc záróvizsga mesterséges intelligenciáról szóló témaköréhez

ÖSSZEFOGLALÁS a Bsc záróvizsga mesterséges intelligenciáról szóló témaköréhez ÖSSZEFOGLALÁS a Bsc záróvizsga mesterséges intelligenciáról szóló témaköréhez Az MI az informatikának az a területe, amelyik az intelligens gondolkodás számítógépes reprodukálása szempontjából hasznos

Részletesebben

Kétszemélyes játékok Gregorics Tibor Mesterséges intelligencia

Kétszemélyes játékok Gregorics Tibor Mesterséges intelligencia Kétszemélyes játékok Kétszemélyes, teljes információjú, véges, determinisztikus,zéró összegű játékok Két játékos lép felváltva adott szabályok szerint, amíg a játszma véget nem ér. Mindkét játékos ismeri

Részletesebben

Gráfkeresések A globális munkaterületén a startcsúcsból kiinduló már feltárt utak találhatók (ez az ún. kereső gráf), külön megjelölve az utak azon

Gráfkeresések A globális munkaterületén a startcsúcsból kiinduló már feltárt utak találhatók (ez az ún. kereső gráf), külön megjelölve az utak azon ÖSSZEFOGLALÁS Az MI az intelligens gondolkodás számítógépes reprodukálása szempontjából hasznos elveket, módszereket, technikákat kutatja, fejleszti, rendszerezi. Miről ismerhető fel az MI? Megoldandó

Részletesebben

1. AZ MI FOGALMA. I. Bevezetés. Tulajdonságok. Kezdet ELIZA. Első szakasz (60-as évek)

1. AZ MI FOGALMA. I. Bevezetés. Tulajdonságok. Kezdet ELIZA. Első szakasz (60-as évek) 1. AZ MI FOGALMA I. Bevezetés Nincs pontos definíció Emberi gondolkodás számítógépes reprodukálása Intelligens viselkedésű programok Az ember számára is nehéz problémák számítógépes megoldása Intellektuálisan

Részletesebben

Mesterséges intelligencia

Mesterséges intelligencia Mesterséges intelligencia Problémák és az útkeresések kapcsolata Az MI problémái, hogy a megoldandó feladatai nehezek, hatalmas a lehetséges válaszok tere (problématér), a helyes válaszok megtalálása intuíciót,

Részletesebben

Az optimális megoldást adó algoritmusok

Az optimális megoldást adó algoritmusok Az optimális megoldást adó algoritmusok shop ütemezés esetén Ebben a fejezetben olyan modellekkel foglalkozunk, amelyekben a munkák több műveletből állnak. Speciálisan shop ütemezési problémákat vizsgálunk.

Részletesebben

Amortizációs költségelemzés

Amortizációs költségelemzés Amortizációs költségelemzés Amennyiben műveleteknek egy M 1,...,M m sorozatának a futási idejét akarjuk meghatározni, akkor egy lehetőség, hogy külön-külön minden egyes művelet futási idejét kifejezzük

Részletesebben

Számítógépes döntéstámogatás. Genetikus algoritmusok

Számítógépes döntéstámogatás. Genetikus algoritmusok BLSZM-10 p. 1/18 Számítógépes döntéstámogatás Genetikus algoritmusok Werner Ágnes Villamosmérnöki és Információs Rendszerek Tanszék e-mail: werner.agnes@virt.uni-pannon.hu BLSZM-10 p. 2/18 Bevezetés 1950-60-as

Részletesebben

Bevezetés az informatikába

Bevezetés az informatikába Bevezetés az informatikába 9. előadás Dr. Istenes Zoltán Eötvös Loránd Tudományegyetem Informatikai Kar Programozáselmélet és Szoftvertechnológiai Tanszék Matematikus BSc - I. félév / 2008 / Budapest Dr.

Részletesebben

III. Szabályalapú logikai következtetés

III. Szabályalapú logikai következtetés Speciális szabályalapú következtetés III. Szabályalapú logikai következtetés Ismeretek (tények, szabályok, cél) elsőrendű logikai formulák. Ezek az állítások eredeti formájukat megőrzik, ami másodlagos

Részletesebben

Algoritmuselmélet. Mélységi keresés és alkalmazásai. Katona Gyula Y.

Algoritmuselmélet. Mélységi keresés és alkalmazásai. Katona Gyula Y. Algoritmuselmélet Mélységi keresés és alkalmazásai Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem 9. előadás Katona Gyula Y. (BME SZIT) Algoritmuselmélet

Részletesebben

Mesterséges intelligencia 2. laborgyakorlat

Mesterséges intelligencia 2. laborgyakorlat Mesterséges intelligencia 2. laborgyakorlat Keresési módszerek A legtöbb feladatot meg lehet határozni keresési feladatként: egy ún. állapottérben, amely tartalmazza az összes lehetséges állapotot fogjuk

Részletesebben

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363 1/363 Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 Az Előadások Témái 146/363 Bevezető: mi a mesterséges intelligencia... Tudás reprezentáció Gráfkeresési stratégiák

Részletesebben

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363 1/363 Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 Az Előadások Témái 169/363 Bevezető: mi a mesterséges intelligencia... Tudás reprezentáció Gráfkeresési stratégiák

Részletesebben

Modellkiválasztás és struktúrák tanulása

Modellkiválasztás és struktúrák tanulása Modellkiválasztás és struktúrák tanulása Szervezőelvek keresése Az unsupervised learning egyik fő célja Optimális reprezentációk Magyarázatok Predikciók Az emberi tanulás alapja Általános strukturális

Részletesebben

A félév során előkerülő témakörök

A félév során előkerülő témakörök A félév során előkerülő témakörök rekurzív algoritmusok rendező algoritmusok alapvető adattípusok, adatszerkezetek, és kapcsolódó algoritmusok dinamikus programozás mohó algoritmusok gráf algoritmusok

Részletesebben

Algoritmizálás, adatmodellezés tanítása 7. előadás

Algoritmizálás, adatmodellezés tanítása 7. előadás Algoritmizálás, adatmodellezés tanítása 7. előadás Oszd meg és uralkodj! Több részfeladatra bontás, amelyek hasonlóan oldhatók meg, lépései: a triviális eset (amikor nincs rekurzív hívás) felosztás (megadjuk

Részletesebben

30. ERŐSEN ÜSSZEFÜGGŐ KOMPONENSEK

30. ERŐSEN ÜSSZEFÜGGŐ KOMPONENSEK 30. ERŐSEN ÜSSZEFÜGGŐ KOMPONENSEK A gráfos alkalmazások között is találkozunk olyan problémákkal, amelyeket megoldását a részekre bontott gráfon határozzuk meg, majd ezeket alkalmas módon teljes megoldássá

Részletesebben

Visszalépéses keresés

Visszalépéses keresés Visszalépéses keresés Backtracking előadás http://nik.uni-obuda.hu/prog2 Szénási Sándor szenasi.sandor@nik.uni-obuda.hu Óbudai Egyetem,Neumann János Informatikai Kar Alapvető működése Továbbfejlesztési

Részletesebben

Gráfok 2. Legrövidebb utak, feszítőfák. Szoftvertervezés és -fejlesztés II. előadás. Szénási Sándor

Gráfok 2. Legrövidebb utak, feszítőfák. Szoftvertervezés és -fejlesztés II. előadás.   Szénási Sándor Gráfok 2. Legrövidebb utak, feszítőfák előadás http://nik.uni-obuda.hu/sztf2 Szénási Sándor Óbudai Egyetem,Neumann János Informatikai Kar Legrövidebb utak keresése Minimális feszítőfa keresése Gráfok 2

Részletesebben

angolul: greedy algorithms, románul: algoritmi greedy

angolul: greedy algorithms, románul: algoritmi greedy Mohó algoritmusok angolul: greedy algorithms, románul: algoritmi greedy 1. feladat. Gazdaságos telefonhálózat építése Bizonyos városok között lehet direkt telefonkapcsolatot kiépíteni, pl. x és y város

Részletesebben

Mesterséges Intelligencia MI

Mesterséges Intelligencia MI Mesterséges Intelligencia MI Problémamegoldás kereséssel ha sötétben tapogatózunk Dobrowiecki Tadeusz Eredics Péter, és mások BME I.E. 437, 463-28-99 dobrowiecki@mit.bme.hu, http://www.mit.bme.hu/general/staff/tade

Részletesebben

A TANTÁRGY ADATLAPJA

A TANTÁRGY ADATLAPJA A TANTÁRGY ADATLAPJA 1. A képzési program adatai 1.1 Felsőoktatási intézmény Babeș Bolyai Tudományegyetem 1.2 Kar Matematika és Informatika Kar 1.3 Intézet Magyar Matematika és Informatika Intézet 1.4

Részletesebben

Mesterséges Intelligencia MI

Mesterséges Intelligencia MI Mesterséges Intelligencia MI Problémamegoldás kereséssel - csak lokális információra alapozva Pataki Béla BME I.E. 414, 463-26-79 pataki@mit.bme.hu, http://www.mit.bme.hu/general/staff/pataki Lokálisan

Részletesebben

Navigáci. stervezés. Algoritmusok és alkalmazásaik. Osváth Róbert Sorbán Sámuel

Navigáci. stervezés. Algoritmusok és alkalmazásaik. Osváth Róbert Sorbán Sámuel Navigáci ció és s mozgástervez stervezés Algoritmusok és alkalmazásaik Osváth Róbert Sorbán Sámuel Feladat Adottak: pálya (C), játékos, játékos ismerethalmaza, kezdőpont, célpont. Pálya szerkezete: akadályokkal

Részletesebben

Felvételi vizsga mintatételsor Informatika írásbeli vizsga

Felvételi vizsga mintatételsor Informatika írásbeli vizsga BABEȘ BOLYAI TUDOMÁNYEGYETEM MATEMATIKA ÉS INFORMATIKA KAR A. tételsor (30 pont) Felvételi vizsga mintatételsor Informatika írásbeli vizsga 1. (5p) Egy x biten tárolt egész adattípus (x szigorúan pozitív

Részletesebben

Permutáció n = 3 esetében: Eredmény: permutációk száma: P n = n! romámul: permutări, angolul: permutation

Permutáció n = 3 esetében: Eredmény: permutációk száma: P n = n! romámul: permutări, angolul: permutation Visszalépéses módszer (Backtracking) folytatás Permutáció n = 3 esetében: 1 2 3 2 3 1 3 1 2 Eredmény: 3 2 3 1 2 1 123 132 213 231 312 321 permutációk száma: P n = n! romámul: permutări, angolul: permutation

Részletesebben

Ellenőrző kérdések. 36. Ha t szintű indexet használunk, mennyi a keresési költség blokkműveletek számában mérve? (1 pont) log 2 (B(I (t) )) + t

Ellenőrző kérdések. 36. Ha t szintű indexet használunk, mennyi a keresési költség blokkműveletek számában mérve? (1 pont) log 2 (B(I (t) )) + t Ellenőrző kérdések 2. Kis dolgozat kérdései 36. Ha t szintű indexet használunk, mennyi a keresési költség blokkműveletek számában mérve? (1 pont) log 2 (B(I (t) )) + t 37. Ha t szintű indexet használunk,

Részletesebben

5/1. tétel: Optimalis feszítőfák, Prim és Kruskal algorithmusa. Legrövidebb utak graphokban, negatív súlyú élek, Dijkstra és Bellman Ford algorithmus.

5/1. tétel: Optimalis feszítőfák, Prim és Kruskal algorithmusa. Legrövidebb utak graphokban, negatív súlyú élek, Dijkstra és Bellman Ford algorithmus. 5/1. tétel: Optimalis feszítőfák, Prim és Kruskal algorithmusa. Legrövidebb utak graphokban, negatív súlyú élek, Dijkstra és Bellman Ford algorithmus. Optimalis feszítőfák Egy összefüggő, irányítatlan

Részletesebben

Algoritmizálás, adatmodellezés tanítása 8. előadás

Algoritmizálás, adatmodellezés tanítása 8. előadás Algoritmizálás, adatmodellezés tanítása 8. előadás Elágazás és korlátozás A backtrack alkalmas-e optimális megoldás keresésére? Van költség, és a legkisebb költségű megoldást szeretnénk előállítani. Van

Részletesebben

Eloadó: Dr. Várterész Magdolna

Eloadó: Dr. Várterész Magdolna Eloadó: Dr. Várterész Magdolna Tartalomjegyzék: 1. Bevezetés 1.1. A jegyzet megtekintéséhez ajánlott környezet 1.2. Információ a mesterséges intelligencia kurzusról 1.3. Röviden a mesterséges intelligenciáról

Részletesebben

Algoritmuselmélet. 2-3 fák. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem. 8.

Algoritmuselmélet. 2-3 fák. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem. 8. Algoritmuselmélet 2-3 fák Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem 8. előadás Katona Gyula Y. (BME SZIT) Algoritmuselmélet 8. előadás

Részletesebben

Új típusú döntési fa építés és annak alkalmazása többtényezős döntés területén

Új típusú döntési fa építés és annak alkalmazása többtényezős döntés területén Új típusú döntési fa építés és annak alkalmazása többtényezős döntés területén Dombi József Szegedi Tudományegyetem Bevezetés - ID3 (Iterative Dichotomiser 3) Az ID algoritmusok egy elemhalmaz felhasználásával

Részletesebben

Diszkrét matematika 2.C szakirány

Diszkrét matematika 2.C szakirány Diszkrét matematika 2.C szakirány 2015. ősz 1. Diszkrét matematika 2.C szakirány 3. előadás Nagy Gábor nagygabr@gmail.com nagy@compalg.inf.elte.hu compalg.inf.elte.hu/ nagy Komputeralgebra Tanszék 2015.

Részletesebben

Diszkrét matematika 2. estis képzés

Diszkrét matematika 2. estis képzés Diszkrét matematika 2. estis képzés 2018. tavasz 1. Diszkrét matematika 2. estis képzés 10. előadás Nagy Gábor nagygabr@gmail.com nagy@compalg.inf.elte.hu compalg.inf.elte.hu/ nagy Komputeralgebra Tanszék

Részletesebben

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363 1/363 Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 Az Előadások Témái 288/363 Bevezető: mi a mesterséges intelligencia... Tudás reprezentáció Gráfkeresési stratégiák

Részletesebben

Elektronikus Almanach

Elektronikus Almanach Mesterséges Intelligencia Elektronikus Almanach Mesterséges intelligencia modern megközel zelítésben 1 Miért éppen ez a könyv? Egy kis történelem BME: 1998-1999 - MI lekerül alapképzés szintjére, hallgatói

Részletesebben

4. Előfeltételek (ha vannak) 4.1 Tantervi Nincs 4.2 Kompetenciabeli Feladatok kijelentéseinek megértése

4. Előfeltételek (ha vannak) 4.1 Tantervi Nincs 4.2 Kompetenciabeli Feladatok kijelentéseinek megértése A TANTÁRGY ADATLAPJA 1. A képzési program adatai 1.1 Felsőoktatási intézmény Babeș Bolyai Tudományegyetem 1.2 Kar Matematika és Informatika 1.3 Intézet Magyar Matematika és Informatika 1.4 Szakterület

Részletesebben

22. GRÁFOK ÁBRÁZOLÁSA

22. GRÁFOK ÁBRÁZOLÁSA 22. GRÁFOK ÁBRÁZOLÁSA A megoldandó feladatok, problémák modellezése során sokszor gráfokat alkalmazunk. A gráf fogalmát a matematikából ismertnek vehetjük. A modellezés során a gráfok több változata is

Részletesebben

Algoritmuselmélet. Bonyolultságelmélet. Katona Gyula Y.

Algoritmuselmélet. Bonyolultságelmélet. Katona Gyula Y. Algoritmuselmélet Bonyolultságelmélet Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem 12. előadás Katona Gyula Y. (BME SZIT) Algoritmuselmélet

Részletesebben

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363 1/363 Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 Az Előadások Témái -hálók 306/363 Bevezető: mi a mesterséges intelligencia... Tudás reprezentáció Gráfkeresési stratégiák

Részletesebben

3. Gráfkeres stratégia

3. Gráfkeres stratégia 3. Gráfkeres stratégia A gráfkeres rendszer olyan KR, amelynek globális munkaterülete a startcsúcsból kiinduló már feltárt utakat (részgráfot) tárolja kiinduló értéke: a startcsúcs, terminálási feltétel:

Részletesebben

A digitális számítás elmélete

A digitális számítás elmélete A digitális számítás elmélete 8. előadás ápr. 16. Turing gépek és nyelvtanok A nyelvosztályok áttekintése Turing gépek és a természetes számokon értelmezett függvények Áttekintés Dominó Bizonyítások: L

Részletesebben

Mesterséges Intelligencia Elektronikus Almanach. Konzorciumi partnerek

Mesterséges Intelligencia Elektronikus Almanach. Konzorciumi partnerek Mesterséges Intelligencia Elektronikus Almanach Konzorciumi partnerek 1 Konzorcium Budpesti Mőszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar Méréstechnika és Információs Rendszerek

Részletesebben

Diszkrét matematika 2.C szakirány

Diszkrét matematika 2.C szakirány Diszkrét matematika 2.C szakirány 2017. tavasz 1. Diszkrét matematika 2.C szakirány 3. előadás Nagy Gábor nagygabr@gmail.com nagy@compalg.inf.elte.hu compalg.inf.elte.hu/ nagy Komputeralgebra Tanszék 2017.

Részletesebben

Osztott jáva programok automatikus tesztelése. Matkó Imre BBTE, Kolozsvár Informatika szak, IV. Év 2007 január

Osztott jáva programok automatikus tesztelése. Matkó Imre BBTE, Kolozsvár Informatika szak, IV. Év 2007 január Osztott jáva programok automatikus tesztelése Matkó Imre BBTE, Kolozsvár Informatika szak, IV. Év 2007 január Osztott alkalmazások Automatikus tesztelés Tesztelés heurisztikus zaj keltés Tesztelés genetikus

Részletesebben

Algoritmuselmélet. Legrövidebb utak, Bellmann-Ford, Dijkstra. Katona Gyula Y.

Algoritmuselmélet. Legrövidebb utak, Bellmann-Ford, Dijkstra. Katona Gyula Y. Algoritmuselmélet Legrövidebb utak, Bellmann-Ford, Dijkstra Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem 3. előadás Katona Gyula Y. (BME

Részletesebben

Gráfok, definíciók. Gráfok ábrázolása. Az adott probléma megoldásához ténylegesen mely műveletek szükségesek. Ábrázolások. Példa:

Gráfok, definíciók. Gráfok ábrázolása. Az adott probléma megoldásához ténylegesen mely műveletek szükségesek. Ábrázolások. Példa: Gráfok, definíciók Irányítatlan gráf: G = (V,E), ahol E rendezetlen (a,b),a,b V párok halmaza. Irányított gráf: G = (V,E) E rendezett (a,b) párok halmaza; E V V. Címkézett (súlyozott) gráf: G = (V,E,C)

Részletesebben

Programozási módszertan. Mohó algoritmusok

Programozási módszertan. Mohó algoritmusok PM-08 p. 1/17 Programozási módszertan Mohó algoritmusok Werner Ágnes Villamosmérnöki és Információs Rendszerek Tanszék e-mail: werner.agnes@virt.uni-pannon.hu PM-08 p. 2/17 Bevezetés Dinamikus programozás

Részletesebben

Melykeres(G) for(u in V) {szin(u):=feher Apa(u):=0} for(u in V) {if szin(u)=feher then MBejar(u)}

Melykeres(G) for(u in V) {szin(u):=feher Apa(u):=0} for(u in V) {if szin(u)=feher then MBejar(u)} Mélységi keresés Ez az algoritmus a gráf pontjait járja be, eredményképpen egy mélységi feszítőerdőt ad vissza az Apa függvény által. A pontok bejártságát színekkel kezeljük, fehér= érintetlen, szürke=meg-

Részletesebben

end function Az A vektorban elõforduló legnagyobb és legkisebb értékek indexeinek különbségét.. (1.5 pont) Ha üres a vektor, akkor 0-t..

end function Az A vektorban elõforduló legnagyobb és legkisebb értékek indexeinek különbségét.. (1.5 pont) Ha üres a vektor, akkor 0-t.. A Név: l 2014.04.09 Neptun kód: Gyakorlat vezető: HG BP MN l 1. Adott egy (12 nem nulla értékû elemmel rendelkezõ) 6x7 méretû ritka mátrix hiányos 4+2 soros reprezentációja. SOR: 1 1 2 2 2 3 3 4 4 5 6

Részletesebben

Algoritmuselmélet 1. előadás

Algoritmuselmélet 1. előadás Algoritmuselmélet 1. előadás Katona Gyula Y. Budapesti Műszaki és Gazdaságtudományi Egyetem Számítástudományi Tsz. I. B. 137/b kiskat@cs.bme.hu 2002 Február 11. ALGORITMUSELMÉLET 1. ELŐADÁS 1 Források

Részletesebben

Algoritmusokfelülnézetből. 1. ELŐADÁS Sapientia-EMTE

Algoritmusokfelülnézetből. 1. ELŐADÁS Sapientia-EMTE Algoritmusokfelülnézetből 1. ELŐADÁS Sapientia-EMTE 2015-16 Algoritmus Az algoritmus kifejezés a bagdadi arab tudós, al-hvárizmi(780-845) nevének eltorzított, rosszul latinra fordított változatából ered.

Részletesebben

Mit látnak a robotok? Bányai Mihály Matemorfózis, 2017.

Mit látnak a robotok? Bányai Mihály Matemorfózis, 2017. Mit látnak a robotok? Bányai Mihály Matemorfózis, 2017. Vizuális feldolgozórendszerek feladatai Mesterséges intelligencia és idegtudomány Mesterséges intelligencia és idegtudomány Párhuzamos problémák

Részletesebben

Tartalomjegyzék. Tartalomjegyzék... 3 Előszó... 9

Tartalomjegyzék. Tartalomjegyzék... 3 Előszó... 9 ... 3 Előszó... 9 I. Rész: Evolúciós számítások technikái, módszerei...11 1. Bevezetés... 13 1.1 Evolúciós számítások... 13 1.2 Evolúciós algoritmus alapfogalmak... 14 1.3 EC alkalmazásokról általában...

Részletesebben

III. Gráfok. 1. Irányítatlan gráfok:

III. Gráfok. 1. Irányítatlan gráfok: III. Gráfok 1. Irányítatlan gráfok: Jelölés: G=(X,U), X a csomópontok halmaza, U az élek halmaza X={1,2,3,4,5,6}, U={[1,2], [1,4], [1,6], [2,3], [2,5], [3,4], [3,5], [4,5],[5,6]} Értelmezések: 1. Fokszám:

Részletesebben

Kereső algoritmusok a diszkrét optimalizálás problémájához

Kereső algoritmusok a diszkrét optimalizálás problémájához Többszálú, többmagos architektúrák és programozásuk Óbudai Egyetem, Neumann János Informatikai Kar Kereső algoritmusok a diszkrét optimalizálás problémájához A diszkrét optimalizálási probléma Soros megoldás

Részletesebben

Fuzzy rendszerek és neurális hálózatok alkalmazása a diagnosztikában

Fuzzy rendszerek és neurális hálózatok alkalmazása a diagnosztikában Budapesti Műszaki és Gazdaságtudományi Egyetem Fuzzy rendszerek és neurális hálózatok alkalmazása a diagnosztikában Cselkó Richárd 2009. október. 15. Az előadás fő témái Soft Computing technikák alakalmazásának

Részletesebben

TARTALOMJEGYZÉK. TARTALOMJEGYZÉK...vii ELŐSZÓ... xiii BEVEZETÉS A lágy számításról A könyv célkitűzése és felépítése...

TARTALOMJEGYZÉK. TARTALOMJEGYZÉK...vii ELŐSZÓ... xiii BEVEZETÉS A lágy számításról A könyv célkitűzése és felépítése... TARTALOMJEGYZÉK TARTALOMJEGYZÉK...vii ELŐSZÓ... xiii BEVEZETÉS...1 1. A lágy számításról...2 2. A könyv célkitűzése és felépítése...6 AZ ÖSSZETEVŐ LÁGY RENDSZEREK...9 I. BEVEZETÉS...10 3. Az összetevő

Részletesebben

Előfeltétel: legalább elégséges jegy Diszkrét matematika II. (GEMAK122B) tárgyból

Előfeltétel: legalább elégséges jegy Diszkrét matematika II. (GEMAK122B) tárgyból ÜTEMTERV Programozás-elmélet c. tárgyhoz (GEMAK233B, GEMAK233-B) BSc gazdaságinformatikus, programtervező informatikus alapszakok számára Óraszám: heti 2+0, (aláírás+kollokvium, 3 kredit) 2019/20-es tanév

Részletesebben

Interaktív, grafikus környezet. Magasszintû alkalmazási nyelv (KAL) Integrált grafikus interface könyvtár. Intelligens kapcsolat más szoftverekkel

Interaktív, grafikus környezet. Magasszintû alkalmazási nyelv (KAL) Integrált grafikus interface könyvtár. Intelligens kapcsolat más szoftverekkel Készítette: Szabó Gábor, 1996 Az Az IntelliCorp IntelliCorp stratégiája: stratégiája: Kifinomult, Kifinomult, objektum-orientált objektum-orientált környezetet környezetet biztosít biztosít tervezéséhez,

Részletesebben

Rekurzív logikai játékok

Rekurzív logikai játékok Rekurzív logikai játékok Vígh Viktor SZTE Bolyai Intézet 2014. december 11. Szent László Gimnázium, Budapest Hanoi tornyai Forrás: http://ordoglakat.blog.hu/2011/03/20/hanoi_tornyai Hanoi tornyai Szabály:

Részletesebben

Programozási módszertan

Programozási módszertan 1 Programozási módszertan 1. Alapfogalmak Feldhoffer Gergely 2012 Féléves tananyag terve 2 Program helyességének bizonyítása Reprezentáció Logikai-matematikai eszköztár Programozási tételek bizonyítása

Részletesebben

Számítógép és programozás 2

Számítógép és programozás 2 Számítógép és programozás 2 6. Előadás Problémaosztályok http://digitus.itk.ppke.hu/~flugi/ Emlékeztető A specifikáció egy előfeltételből és utófeltételből álló leírása a feladatnak Léteznek olyan feladatok,

Részletesebben

Algoritmuselmélet. Gráfok megadása, szélességi bejárás, összefüggőség, párosítás. Katona Gyula Y.

Algoritmuselmélet. Gráfok megadása, szélességi bejárás, összefüggőség, párosítás. Katona Gyula Y. Algoritmuselmélet Gráfok megadása, szélességi bejárás, összefüggőség, párosítás Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem 2. előadás

Részletesebben

Kétszemélyes játékok

Kétszemélyes játékok Mesterséges Intelligencia alapjai, gyakorlat Eötvös Loránd Tudományegyetem Informatikai Kar Programozáselmélet és Szoftvertechnológiai Tanszék 2010 / udapest Kétszemélyes teljes információjú játékok két

Részletesebben

A számítástudomány alapjai. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem

A számítástudomány alapjai. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem A számítástudomány alapjai Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem Bináris keresőfa, kupac Katona Gyula Y. (BME SZIT) A számítástudomány

Részletesebben

Problémamegoldás kereséssel. Mesterséges intelligencia március 7.

Problémamegoldás kereséssel. Mesterséges intelligencia március 7. Problémamegoldás kereséssel Mesterséges intelligencia 2014. március 7. Bevezetés Problémamegoldó ágens Kívánt állapotba vezető cselekvéseket keres Probléma megfogalmazása Megoldás megfogalmazása Keresési

Részletesebben

2. forduló. MEGOLDÁSOK Pontszerző Matematikaverseny 2014/2015 tanév. 1. Számkeresztrejtvény:

2. forduló. MEGOLDÁSOK Pontszerző Matematikaverseny 2014/2015 tanév. 1. Számkeresztrejtvény: 1. Számkeresztrejtvény: MEGOLDÁSOK Pontszerző Matematikaverseny 2014/2015 tanév 2. forduló Az alábbi keresztrejtvény ábra abban különbözik a hagyományos keresztrejtvényektől, hogy a négyzet alakú mezőkbe

Részletesebben

Diszkrét matematika 2.C szakirány

Diszkrét matematika 2.C szakirány Diszkrét matematika 2.C szakirány 2017. ősz 1. Diszkrét matematika 2.C szakirány 2. előadás Nagy Gábor nagygabr@gmail.com nagy@compalg.inf.elte.hu compalg.inf.elte.hu/ nagy Komputeralgebra Tanszék 2017.

Részletesebben

- Adat, információ, tudás definíciói, összefüggéseik reprezentációtípusok Részletesebben a téma az AI alapjai című tárgyban

- Adat, információ, tudás definíciói, összefüggéseik reprezentációtípusok Részletesebben a téma az AI alapjai című tárgyban I. Intelligens tervezőrendszerek - Adat, információ, tudás definíciói, összefüggéseik reprezentációtípusok Részletesebben a téma az AI alapjai című tárgyban Adat = struktúrálatlan tények, amelyek tárolhatók,

Részletesebben