mesterséges intelligencia - nyíregyházi...

210
Mesterséges intelligencia PTI BSc levelező 2009-10. ősz Előadás, gyakorlat: Vályi Sándor mailto:[email protected] Az email tárgy(subject): mezője a „mestint” szóval kezdődjék

Upload: others

Post on 30-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Mesterséges intelligencia

PTI BSc levelező2009-10. ősz

Előadás, gyakorlat: Vályi Sándormailto:[email protected]

Az email tárgy(subject): mezője a „mestint” szóval kezdődjék

Page 2: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Az órák időpontja• 1. előadás: szept. 5, Szo, 8:00-11:23, [hely: D

6ea]• 1. gyakorlat: szept. 18, P, 8:00-11:30 (A) ill.

13:00-16:30 (B) [hely: E016]• 2. előadás: nov. 20, P, 8:00-11:23, D 7ea• 2. gyakorlat: dec. 11, P, 8:00-11:30 (A) ill.

13:00-16:30 (B) [hely: E014]

Page 3: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy kódja PMB1212 • Meghirdetés féléve 5 • Kreditpont 5 • Heti kontakt óraszám (elm.+gyak.) 2+2 – nappalin, 7+8

levelezőn• Félévi követelmény kollokvium • Előfeltétel (tantárgyi kód) PMB1205 (prog 2) • Tantárgyfelelős neve és beosztása Dr. Várterész Magda,

főiskolai tanár

Page 4: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A tantárgy elsajátításának célja

• A mesterséges intelligencia alapvető reprezentációs technikáinak és megoldáskereső eljárásainak a megismerése, programozása

Page 5: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Tantárgyi program• A mesterséges intelligencia kutatási területei, módszerei,

eredményei. • Problémák reprezentálása állapottéren, példák. A

gráfreprezentáció. • Megoldást kereső rendszerek felépítése, csoportosítása. Nem

módosítható stratégiák. • A backtrack algoritmus. Gráfkereső eljárások: szélességi,

mélységi, optimális keresések.• Heurisztikus gráfkeresők: a best-first és az A algoritmusok. Az A

algoritmus teljessége. • Probléma-redukciós feladatmegoldás, reprezentálása ÉS/VAGY

gráffal. Megoldás az ÉS/VAGY gráfban. Keresési stratégiák ÉS/VAGY gráfban: szélességi, mélységi, AO algoritmus. A terminálás figyelése címkézéssel.

• Kétszemélyes játékok, ábrázolásuk játékfával. A nyerő stratégia létezése. A minimax eljárás, az alfa-béta vágás.

Page 6: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Évközi követelmények• Évközben a hallgatók 3 fős csoportokban (esetleg 2) két MI

feladatot számítógépes program készítésével megoldanak és dokumentálva benyújtanak. A két feladat kiválasztása az 1. gyakorlatig email-ben vagy az 1. gyakorlaton lehetséges, a feladatok megoldása a 2. gyakorlat időpontjáig lehetséges.

• A feladatok típusa:1. problémareprezentációs/megoldáskeresős2 kétszemélyes játékban lépésajánló

• A bemutatók feladatokban való mély ismereteikről személyes beszámoló során számolnak be, nem együtt, hanem külön-külön. A két feladatra összesen 50 pontot lehet kapni, aláírás 30 ponttól. Ez alapján kapnak aláírást.

• Az elért pontokat beszámítom az A és B vizsga eredményébe, csak ebben a szemeszterben. Vizsgázni a feladatmegoldások elfogadása után lehet (az aláírás birtokában), írásban. Itt még 50 pontot lehet szerezni. A következő összefüggést használom a vizsgajegyek megállapításához, ahol az összesített pontszám P és a jegy J:

• P>=50 → J>=2 és P>=70 → J>=3 és P>=80 → J>=4 és P>=90 → J=5 és P<60 → J=1.

Page 7: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A vizsga anyaga

• Egy adott probléma szövegesen megadott változatából állapottér-reprezentáció leírását készíteni, s megadott algoritmust objektumorientált nyelven implementálni, gép mellett.

• Plusz néhány tesztkérdés.

Page 8: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Választható problémareprezen-tációs-megoldáskeresős feladatok

• http://www.inf.unideb.hu/~jeszy/download/mestint/feladatok.pdf

• http://www.inf.unideb.hu/~jeszy/download/mestint/jatekok.pdf

Választható kétszemélyesjáték-feladatok

Page 9: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Időpontok a vizsgaidőszakban

• 3 lesz a vizsgaidőszakban

Page 10: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Vizsga tananyaga

• Előadás vázlata, internetről letölthető– Elég a Várterész Magda tanárnő-féle rész

• Az előadáson elhangzott kiegészítések• Russel-Norvig: Mesterséges intelligencia

modern megközelítésben (adatai az irodalomnál), a 244. oldalig (I-II. rész)

Page 11: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Ajánlott(***) és kötelező irodalom

• ***Futó Iván (szerk.): Mesterséges intelligencia, Aula Kiadó,Budapest, 1999.

• Stuart J. Russell, Peter Norvig : Mesterséges intelligencia modern megközelítésben, Panem- Prentice Hall, Budapest, 2000.

Page 12: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Forrás

• Fő forrás: Nagyon sok helyen direkt beképeztem a Várterész tanárnő nappalisoknak tartott előadásának anyagát.

• Közötte saját anyag, Jeszenszky Péter ismeretreprezentációs anyagai és a Russel-Norvig könyvhöz ajánlott prezentációs anyag.

Page 13: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

1. Állapottér alapú ismeretreprezentáció

Page 14: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Intelligens ágensek problémájaA cél: a világ állapotainak egy halmaza, azon állapotoké, amiben a cél igaz. (A cél tehát a világ objektumainak egy leíró tulajdonsága, állítás.)Problémamegoldás: a világ állapotainak olyan sorozatát megalkotni, ami–Elvezet a célhoz–Az egyes lépéseket már meg tudom tenni

Page 15: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Problémamegoldás =Útkeresés

• (Ezen gondolatmenet szerint)• Az ilyenféle, jól leírható állapotokkal modellezett

problémák az ún. jóldefiniált problémák – számítási problémával megfogalmazhatók (nem biztos, hogy a megoldó algoritmus könnyű is, vagy egyáltalán létezik!)

Page 16: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Példa: Romániai útkeresés Vakáción Erdélyben és Romániában; jelenleg Aradon.

Holnap indul a repülőnk Bukarestből Fogalmazzuk meg a célt:

Bukaresten teremni holnap 11.00-re Fogalmazzuk meg az állapotokat:

állapotok: a különböző városok akciók: egyik városból a másikba átmenni kocsival

A megoldás formája: Városok egy sorozata, pl., Arad, Nagyszeben, Fogaras,

Bukarest (megfeleltethető akciók sorozatának)

Page 17: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Példa gráfra: Erdély és Ó-Románia néhány városa és köztük utak

Page 18: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Állapottérrel (state space) megfogalmazott probléma

Egy problémát 4 dolog definiál:1. kezdeti állapot, pl. "Aradon vagyok"2. Akciók(operátorok) S(x) = x-ben alkalmazható akció-állapot

párok 3. célteszt, lehet

explicit, pl., x = "Bukarestben" implicit, pl., sakkjáték-programban „Matt” – egy feltétel

1. útköltség, ami az egyes lépések költségeiből adódik össze (additív) pl., a távolságok összegeEgy megoldás: akcióknak egy olyan sorozata, amely a céltesztet teljesítő ún. célállapotba visz

Page 19: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

AZ ÁLLAPOTTÉR MEGVÁLASZTÁSA

A valódi világ minden emberileg leírhatónál bonyolultabb (számomra biztosan) az állapottér csak egy absztrakciója, ami éppen releváns a problémánk szempontjából

(Absztrakt) állapot = sok valódi állapot összefogva (Absztrakt) akció = valós akciók bonyolult kombinációja

pl., "Arad Nagyzerénd" maga is egy lehetséges utak halmazát reprezentálja, navigálok Aradon, megállok-e útközben az étteremben,…

Az absztrakt akciók „könnyebbek” legyenek, mint a probléma, amit modellezünk A megfelelő absztrakciós szintű akciókat és állapotokat vegyük fel:

pl., az "Arad Nagyzerénd„ akcióhoz ne modellezzük a kormánymozdulatokat, megállásokat, fékezéseket, jelzőtáblákat, ezek irreleváns részletek az útkereső ágensünk esetén, bár, ha taxisofőr ágenst készítenénk, nyilván már nem ez lenne a helyzet.

Page 20: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A porszívóvilág állapottere

Állapotok? Akciók? célteszt? Útköltség?

Page 21: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

állapotok? <melyik szobában van, ott van-e kosz> actions? Balra, Jobbra, Szívás célteszt? Nincs kosz sehol élköltség? 1 per akció

A porszívóvilág állapottere

Page 22: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Példa: 8-as csúszkajáték

Állapotok? Akciók? célteszt? Útköltség?

Page 23: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Példa: 8-as csúszkajáték (8-puzzle)

Állapotok? 0..8 számok sorozata (0: luk) Akciók? A luk le/fel/balra/jobbra célteszt? Explicit: [0,1,2,3,4,5,6,7,8] Útköltség? 1/tolás

Page 24: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Példa: dobozvilág robotkarral

Page 25: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Példa: dobozvilág robotkarral

• állapot?: a robot „ízületeinek” állása, a dobozok pozíciója (néhány valós szám együttese) akciók?: a robot ízületeinek folytonos mozgása célteszt?: a végső összeszerelése a céltárgynak útköltség?: idő, ami alatt összerakja, fogyasztott árammennyiség, adott gyártási útra várható

selejtátlag

Page 26: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Ismeretreprezentációs feladatok • A 8-as játék állapottere két diszjunkt halmazból

áll (nem elérhetők úttal egymásból). Keressük meg, mi a leírása ennek a két halmaznak és adjunk programozható eljárást két állapotról eldöntendő, egy csoportba tartoznak-e.

• 8 királynőt kell elhelyezni a 8x8-as sakktáblán. Állapotreprezentáció, Akciók, célteszt, élköltség? Az akció egy királylány (királynő-jelölt:-) felpakolása legyen.

Page 27: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Feladat• Adjon állapot-halmazt, kiinduló állapotot,

célfeltételt, élköltség-függvényt a következő problémák-hoz:egy N részre vonatkozó területfelosztás azzal van definiálva, melyik helyrajzi számú telek szomszédos a másikkal. 4 növényt kell telepíteni úgy, hogy szomszédos területekre nem lehet azonosat. Keressünk helyes telepítést. (Térképszínezési probléma)

Page 28: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Feladat: állapotok, cél, kiindulás, operátorok?

• 1 m-es majom egy szobában van, ahol van még két darab 1 m-es doboz (egymásra pakolhatók, rá lehet mászni). 2,5 m magasan van egy banán. A cél a banán elérése lenne.

• Van 3 permetezőszer-tároló edénye van: egy 12 l-es, egy 8 l-es és egy 3 l-es. Meg egy nagy permetlé tartálya, ahonnan bármelyiket éppen telemerítheti. Pontosan 1 l-t kell kimernie.

Page 29: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 30: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 31: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 32: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 33: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 34: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 35: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 36: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 37: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 38: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 39: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 40: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 41: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 42: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 43: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A 8-puzzle-játék C nyelvi reprezentációja

• typedef Allapot byte[3][3];int kenyszerfeltetel(Allapot x){int nincsazonos=1; for(int i1=0;i1<=2;i1++) for(int j1=i1+1;j1<=2;j1++) for(int i2=0;i2<=2;i2++) for(int j2=i2+1;j2<=2;j2++) {if (x[i1][j1]==x[i2][j2] && ~(i1==i2 && j1==j2)) nincsazonos=0;}return nincsazonos;} const Allapot kezdo = {{1,2,0},{4,6,3},{7,5,8}};int celallapot(Allapot x) {. . .}int operatorok_szama; //a 4 operátort számokkal ábrázoljukint alkalmazhato(Allapot x, int op) {. . .} Allapot alkalmaz(Allapot x, int op) {. . .}

Page 44: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

• A következő anyag forrása: Jeszenszky Péter (http://www.inf.unideb.hu/~jeszy)

• Minta a beadandó házi feladat dokumentációs részéhez!

Page 45: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 46: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 47: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 48: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 49: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 50: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 51: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 52: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 53: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 54: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 55: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 56: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 57: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 58: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 59: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 60: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 61: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

• Például a 3x3-as tilitoli probléma ábrázolása esetén, ha nem kötjük ki azt a kényszerfeltételt, hogy a 9 pozíción más-más szám áll, akkor nem 9!, hanem 9^9 állapot keletkezik.

Page 62: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A 8-puzzle probléma állapottér-gráfjának fa-alakja

Forrás: Artificial Intelligence: a new synthesis  szerző: Nils J. Nilsson

Page 63: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Mi a fagráf?Összefüggő, körmentes gráf. Az

állapottér-gráf átalakítása fagráffá: pl. az odavezető utak lesznek az új csúcspontok.

Page 64: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

2. Megoldást kereső módszerek

Page 65: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 66: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 67: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 68: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 69: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 70: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 71: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Példa előre és hátrafelé haladó megoldáskeresésre

• Logikai tételbizonyítás – természetes levezetéssel: a célból indulunk ki – mit kell még megcsinálnunk: visszafelé haladó vagy célvezérelt megoldáskeresés

• Generatív nyelvtanban CYK és Early-algoritmus: felsorolni, miket tudunk elvezetni – az meglévő adatainkból kiindulva tudjuk-e levezetni a kívánt célt: előrefelé haladó vagy adatvezérelt megoldáskeresés

Page 72: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

• Heurisztikus keresés: informált keresés• Példák:

– labirintusban bolyongani– Labirintust szisztematikusan bejárni, térképet

készíteni– Minotauruszt szag alapján keresni – Meglévő térkép alapján utat tervezni

• Más példák tipikus informált keresésre:– Robotok cselekvés-tervezése– Sakkjáték-program, HA: tanult sémákat is

használ a keresés

Page 73: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 74: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 75: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 76: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 77: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 78: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 79: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Tárigény: konstans, az állapottérgráf méretébenIdőigény: nem értelmezhető, mert nem teljes

Page 80: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Heurisztikák a 8-puzzle esetén

• Egy állapot jóságának lehetséges mértékei:– hány négyzet van a helyén?– hány tolás kellene, ha minden négyzet szabadon

egymásra tolható lenne (Manhattan-heurisztika)?• Ezek a heurisztikák „nem pontosak”, nincs

mindig olyan kirakás, ahol a jóság monoton módon növekszik

Page 81: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Hill-climbing (hegymászó) keresés

• „Felmászni a Mont Blancra ködben, amnéziával"

Page 82: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Hegymászó keresés

• Probléma: csak lokális maximumot garantál, csapdába eshet egy ilyen helyen

1-dimenziós függvény maximumhelyének keresésére egyszerűsített példa

Page 83: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Hegymászó keresés: 8-királynő probléma

• h = azon királynő-párok száma, amelyek ütik egymást (még ha éppen most takarásban is állnak)

• h = 17 itt

Page 84: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Hegymászó keresés:

• Egy lokális minimum h = 1• értékkel

Page 85: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Egy szemléltető animáció

• http://www.ndsu.nodak.edu/instruct/juell/vp/cs724s00/hill_climbing/

Page 86: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Egyéb neminformált keresési módszerek

Page 87: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Szimulált hűtéses keresés• Ötlet: a lokális maximumokból való kiszökés

céljából megengedünk véletlenszerű „rossz” irányba tett véletlenszerűen nagy lépéseket; de csökkentve ezen lépések gyakoriságát.

• http://216.239.116.64/reference/Simulated_annealing

Page 88: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A szimulált hűtéses keresés tulajdonsága

• Bizonyítani lehet: Ha T elég lassan növekszik, akkor a sz. h. k. 1 valószínűséggel megtalálja az optimumot. Itt az aláhúzott rész pontosabb specifikációt is kaphat. Sikeres, nagy projektek:

• VLSI tervezés• repülőjáratok scheduling-ja, időzítése

Page 89: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 90: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 91: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 92: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 93: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 94: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Tárigény: O(|V|), ha V az állapottérgráf csúcsainak halmaza.

Page 95: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 96: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Itt a differencia!

Page 97: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 98: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 99: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 100: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 101: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 102: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Az ismétlődő állapotok felismerése nélkül

Egy lineáris időben megoldható feladatot exponenciálissá tehet.

Page 103: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 104: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 105: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 106: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 107: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 108: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 109: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 110: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Erősen nemdeterminisztikus!

Lehet, hogy célállapot bekerül, de mégsem választjuk sose!

Page 111: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 112: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 113: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 114: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 115: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 116: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 117: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 118: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Fában kereső algoritmusok Alapötlet:

Az állapottér bejárása, mindig a már felderített állapotok rákövetkezőit generálva

Peremnek nevezzük a már felfedezett, de ki nem próbált csúcsokat

Page 119: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Keresés fában - példa

Csúcspont mélysége: amilyen messze van a fa gyökerétől

Sekélyebb csúcspont

Page 120: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Keresés fában - példa

A fehér belsejű karika jelzi a perembeli csúcsokat.

A szürke belsejű a már kipróbált csúcsokat jelzi.

Page 121: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Keresés fában - példa

Page 122: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Implementáció: állapotok vs. csúcsok

Egy állapot egy fizikai konfiguráció (reprezentációja) Egy csúcs pedig egy olyan összetett adat, ami a keresési fának képezi

részét és tartalmaz: állapotot, szülőcsúcsot, akciót, útköltséget g(x), mélységet.

Az Expand függvény új csúcsokat képez egy csúcsból

Page 123: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Szélességi(Breadth-first) keresés

A gyökérhez legközelebbi (legsekélyebb) csúcsot terjeszti ki Implementácó:

A perem egy FIFO-sor (first-in-first-out), azaz amelyik elsőnek jött a sorba, elsőnek vesszük is ki

A perem: [A]

Page 124: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Szélességi keresés

A perem: [B,C]

Page 125: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Breadth-first search (szélességi keresés) munkamódszere

Mindig a(z egyik) legsekélyebb csúcspontot terjeszti ki. Implementáció:

A perem egy FIFO-sor, azaz: az újonnan képbe kerülő csúcsok a sor végére kerülnek.

A perem: [D,E,C]

Page 126: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Szélességi keresés• A perem: [D,E,F,G]

Page 127: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A szélességi keresés tulajdonságai Teljes? igen (ha b véges) Idő? 1+b+b2+b3+… +bd + b(bd-1) = O(bd+1 ) Tár? O(bd+1 ) (minden csúcs a memóriában, esetleg törölhetők,

amelyek összes utódja már a peremben van) Optimális? Igen (ha költség=1)

A tárigény alig kielégíthető

Jelölje b azt, hogy egy csúcsnak hány fia lehet maximum. d a megoldás mélységét jelöli.

Page 128: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Mélységi keresés Mindig választunk egyet a legmélyebb, még nem

kiterjesztett csúcsok közül, s azt terjesztjük ki. Implementáció:

perem = LIFO-sor, azaz verem, az újonnan érkezetteket a sor elejére tesszük

Page 129: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Mélységi keresés(Depth-first search)

• A perem: [B,C], továbbfeldologzásra kijelölt: B

Page 130: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Mélységi keresés• A perem: [D,E,C], továbbfeldolgozásra

kijelölt: D

Page 131: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Mélységi keresés• A perem: [H,I,E,C], továbbfeldolgozásra

kijelölt: H

Page 132: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

• A perem: [I,E,C], továbbfeldolgozásra kijelölt: I

Mélységi keresés

Page 133: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Depth-first search• A perem: [E,C], továbbfeldolgozásra

kijelölt: E

Page 134: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

• A perem: [J,K,C], továbbfeldolgozásra kijelölt: J

Mélységi keresés

Page 135: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

• A perem: [K,C], továbbfeldolgozásra kijelölt: K

Mélységi keresés

Page 136: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A perem: [C], továbbfeldolgozásra kijelölt: C

Mélységi keresés

Page 137: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

• A perem: [F,G], továbbfeldolgozásra kijelölt: F

Mélységi keresés

Page 138: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A perem: [L,M,G], továbbfeldolgozásra kijelölt: L

Mélységi keresés

Page 139: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

• A perem: [M,G], továbbfeldolgozásra kijelölt: M

Mélységi keresés

Page 140: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

• A perem: [M,G], továbbfeldolgozásra kijelölt: M

Mélységi keresés

Page 141: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A mélységi keresés tulajdonságai Teljes? Nem. Hibádzik végtelen állapottéren,sőt, végesben is, ha vannak hurkok az

állapottérben; Módosíthatjuk úgy, hogy minden tárolt csúcshoz tároljuk azt is, hogyan jutottunk oda.

ekkor teljes, legalábbis véges állapottéren.

Idő? O(bm): nagy, ha m sokkal nagyobb, mint d de ha az állapottérben sűrűn vannak a megoldások, sokkal gyorsabb lehet, mint a szélességi

Tár? O(bm), i.e., lineáris tár! Optimális? Nem

Page 142: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Folyton mélyülő keresés

Először 1 mélységű szélességi keresés, aztán 2 mélységű, …

Ez megint teljes, egyenlő útköltség mellett.

Page 143: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Folyton mélyülő szélességi keresés

Page 144: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Folyton mélyülő szélességi keresés

Page 145: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Folyton mélyülő szélességi keresés

Page 146: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Folyton mélyülő szélességi keresés

Page 147: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Folyton mélyülő szélességi keresés - tulajdonságok

Teljes? Igen Idő? (d+1)b0 + d b1 + (d-1)b2 + … + bd = O(bd) Memóriaigény? O(bd) Optimális? Igen, ha az élköltségek egységesen

= 1

Page 148: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 149: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 150: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 151: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 152: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 153: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 154: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 155: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 156: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 157: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Best-first keresés• Ötlet: minden n csúcsponthoz hozzárendelünk egy f(n) kiértékelő

függvényértéket. – Az előnyösség becslése, általában a kisebb érték a jobb ( a céltól való

távolságot becsli <<nem méri!!!>>)– Ha mérné, akkor a keresés nem is volna keresés!– Egyelőre nem foglalkozunk vele, honnan beszerezhető ez az f függvény A legígéretesebb még nem kiterjesztett csúcsot terjesztjük ki

• Implementáció:Az aktuális peremen lévő csúcsokat az előnyösség szerint csökkenő sorrendben használjuk

• Speciális esetei:– mohó best-first keresés– A* keresés

Page 158: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Erdély és Románia térképvázlata

Page 159: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Best-first keresés példa

Page 160: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

best-first keresés példa

Page 161: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

best-first keresés példa

Page 162: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

best-first keresés példa

Page 163: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A best-first keresés tulajdonságai

• Teljes-e? Nem – végtelen ciklusba eshet, pl., Iasi Neamt Iasi Neamt ( Russel-Norvig szerint. Szerintem nem!)

• Idő? Rossz heurisztikával O(bm), de egy jó heurisztikával drámai javulás

• Memória? O(bm) – minden csúcs a memiában• Optimális? Nem (Arad – NSzeben – Rimniu – Pitesti –

Bukarest olcsóbb)

Page 164: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 165: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 166: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 167: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 168: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 169: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 170: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 171: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 172: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 173: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 174: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 175: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 176: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 177: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 178: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 179: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 180: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 181: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 182: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 183: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy
Page 184: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A* keresés• Ötlet: kerüljük azokat az utakat, amelyek már eddig is

drágák. • Evaluation function f(n) = g(n) + h(n)• g(n) = n eléréséhez elhasznált költség• h(n) = n-ből a célba jutás becsült költsége• f(n) = az n-en keresztüli út becsült költsége• Vagyis ez is egyfajta best-first keresés.

Page 185: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A* keresés példa

Page 186: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A* keresés példa

Page 187: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A* keresés példa

Page 188: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A* keresés példa

Page 189: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A* keresés példa

Page 190: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A* keresés példa

Page 191: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Feladath(S-G)=10h(A-G)=7h(D-G)=1h(F-G)=1h(B-G)=10h(E-G)=8h(C-G)=20

A heurisztika.

Hogy jutunk el S-ből G-be az A* algoritmussal?

Page 192: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A* keresés• Ötlet: kerüljük azokat az utakat, amelyek már eddig is

drágák. • Evaluation function f(n) = g(n) + h(n)• g(n) = n eléréséhez elhasznált költség• h(n) = n-ből a célba jutás becsült költsége• f(n) = az n-en keresztüli út becsült költsége• Vagyis ez is egyfajta best-first keresés.

Page 193: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A* keresés példa

Page 194: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A* keresés példa

Page 195: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A* keresés példa

Page 196: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A* keresés példa

Page 197: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A* keresés példa

Page 198: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A* keresés példa

Page 199: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Feladath(S-G)=10h(A-G)=7h(D-G)=1h(F-G)=1h(B-G)=10h(E-G)=8h(C-G)=20

A heurisztika.

Hogy jutunk el S-ből G-be az A* algoritmussal?

Page 200: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Elfogadható heurisztikák• Egy h(n) heurisztika elfogadható, ha minden n

csúcsra h(n) ≤ h*(n) teljesül, ahol h*(n) az n csúcs igazi (még nem tudott) költsége.

• Az elfogadható heurisztika sosem becsli túl a cél elérésének költségét, azaz optimista.

• Például a légvonal szerinti távolság ilyen a térképen.

• Állítás: Ha h(n) elfogadható, akkor az A* algoritmus h-t használó példánya optimális.

Page 201: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Konzisztens heurisztikák• Egy heurisztika konzisztens: ha minden n csúcsra, minden a akcióra és

annak bármely n' lehetséges eredménycsúcsára:

h(n) ≤ c(n,a,n') + h(n'), ahol c az n-ből n’-be a akcióval való eljutás költsége.

• Ebben az esetben teljesül:f(n') = g(n') + h(n') = g(n) + c(n,a,n') + h(n') ≥ g(n) + h(n) = f(n)

• Állítás: Ha h(n) konzisztens, akkor az A* keresés g-t és h-t használva optimális.

Page 202: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A* optimalitása

• A* a csúcsokat a növekvő f érték szerint rendezve terjeszti ki.

• Fokozatosan ad egyre növekvő x értékekkel "f(n)<=x" környezeteit a kiindulásnak

Page 203: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

A* tulajdonságok

• Teljes? Igen (hacsak nincs végtelen sok csúcs f ≤ f(G)-e teljesítően )

• Idő? Exponenciális• Tár? Minden kiterjesztett csúcs tárban• Optimális? Igen•••

Egy A*-demo URL-je: http://www.vision.ee.ethz.ch/~cvcourse/astar/AStar.html

JAVA-t igényel.

Page 204: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Elérhető heurisztikák -- példákA 8-as csúszka játékhoz:• h1(n) = a rosszul elhelyezett lapocskák száma

• h2(n) = teljes Manhattan-távolság (az egyes lapocskák üres táblán való helyrecsúsztatásának lépésszámai összegezve)

• h1(Start) = ?

• h2(Start) = ?

Page 205: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Elérhető heurisztikák -- példákA 8-as csúszka játékhoz:• h1(n) = a rosszul elhelyezett lapocskák száma

• h2(n) = teljes Manhattan-távolság (az egyes lapocskák üres táblán való helyrecsúsztatásának lépésszámai összegezve)

• h1(Start) = 8• h2(Start) = 3+1+2+2+2+3+3+2 = 18

Page 206: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Javasoljon néhány heurisztikát (és előtte adatábrázolási módot, célt):

• Egy kikísérletezendő AIDS-gyógyító gyógyszermolekula számára

• Egy kikísérletezendő tápanyagösszeállítás számára 2-3 hónapos borjak számára

• Egy összeállítandó osztály-ültetési rendre a gimis osztályban

• Utazó ügynök problémára• Párizsban térkép nélkül megtalálni gyalog az Eiffel

tornyot, kérdezni tudunk franciául, de csak az igen/nem választ értjük meg; az emberek 60%-a tudja a választ, csak egy összetett kérdést tehetünk fel

Page 207: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Dominancia• Ha h2(n) ≥ h1(n) minden n-re, de mindkettő elfogadható heurisztika,

• akkor h2 dominálja h1--et

• h2-val jobb keresni

• Tipikus keresési költség (a csúcsok számában mérve, d a mélység):

• d=12 IDS = 3,644,035 nodesA*(h1) = 227 nodes A*(h2) = 73 nodes

• d=24 IDS = too many nodesA*(h1) = 39,135 nodes A*(h2) = 1,641 nodes

••

Page 208: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Relaxált problémák • Egy probléma, amiben az eredetihez képest kevesebb

megszorítást tehetünk az adott állapotban végrehajtható akciókra: az eredetihez képest relaxált probléma

• A relaxált probléma megoldásához szükséges lépésszámmal adunk egy elfogadható heurisztikát az eredeti probléma A*-kereséséhez.

• Pl. a 8-as csúszkajátékban azt a kitételt elengedjük, hogy csak szomszédos lukba lehet elmozgatni lapocskát, hanem akárhová, akkor a h1(n) adja a legrövidebb megoldást.

• Ha minden szomszéd mezőbe tudnánk menni, akkor h2(n) heurisztika keletkezik ebből a relaxált problémából az eredeti számára.

Page 209: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

Keresési algoritmusok interaktív gyakorlása

http://aispace.org (JAVA RE-et igényel a böngészőben)

Page 210: Mesterséges intelligencia - Nyíregyházi Főiskolazeus.nyf.hu/~valyis/2009-osz/mestint/mestintea01.pdf · TANTÁRGYLEÍRÁS • Tantárgy neve Mesterséges intelligencia • Tantárgy

KÖSZÖNÖM A FIGYELMÜKET!