Mesterséges Intelligencia MI

Hasonló dokumentumok
Mesterséges Intelligencia MI

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

Mesterséges intelligencia 2. laborgyakorlat

Mesterséges Intelligencia MI

Intelligens Rendszerek Elmélete IRE 4/32/1

Mesterséges Intelligencia MI

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

Mesterséges Intelligencia MI

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

Mesterséges Intelligencia MI

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

Mesterséges Intelligencia MI

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

Mesterséges Intelligencia MI

2. Visszalépéses stratégia

Mesterséges Intelligencia MI

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

Mesterséges intelligencia 3. laborgyakorlat

2. Visszalépéses keresés

Mesterséges Intelligencia MI

Mesterséges Intelligencia MI

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

Algoritmusok bonyolultsága

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

Mesterséges intelligencia 1 előadások

, , A

Mesterséges Intelligencia MI

Adatszerkezetek 7a. Dr. IványiPéter

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

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

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

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

Kiegészítő részelőadás 1. Az algoritmusok hatékonyságának mérése

A modellellenőrzés érdekes alkalmazása: Tesztgenerálás modellellenőrzővel

Intelligens Rendszerek I. Problémamegoldás kereséssel: informált kereső eljárások (Heurisztikus keresés)

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

ULTIMATE TIC TAC TOE. Serfőző Péter

Adatszerkezetek 2. Dr. Iványi Péter

SZÁLLÍTÁSI FELADAT KÖRUTAZÁSI MODELL WINDOWS QUANTITATIVE SUPPORT BUSINESS PROGRAMMAL (QSB) JEGYZET Ábragyűjtemény Dr. Réger Béla LÉPÉSRŐL - LÉPÉSRE

Mesterséges Intelligencia MI

A számítástudomány alapjai

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

9. előadás. Programozás-elmélet. Programozási tételek Elemi prog. Sorozatszámítás Eldöntés Kiválasztás Lin. keresés Megszámolás Maximum.

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

SZOFTVERES SZEMLÉLTETÉS A MESTERSÉGES INTELLIGENCIA OKTATÁSÁBAN _ Jeszenszky Péter Debreceni Egyetem, Informatikai Kar jeszenszky.peter@inf.unideb.

Függvények növekedési korlátainak jellemzése

Intelligens ágensek Mesterséges Intelligencia rendszertechnikai gyökerei

Teljesítmény Mérés. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) Teljesítmény Mérés / 20

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

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

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

angolul: greedy algorithms, románul: algoritmi greedy

A mesterséges intelligencia alapjai

Adatszerkezetek. Nevezetes algoritmusok (Keresések, rendezések)

Korlátos modellellenőrzés. dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

Adatszerkezetek II. 2. előadás

Összetett programozási tételek Rendezések Keresések PT egymásra építése. 10. előadás. Programozás-elmélet. Programozás-elmélet 10.

Gráfok bejárása. Szlávi Péter, Zsakó László: Gráfok II :17

Mesterséges Intelligencia 1

Euler tétel következménye 1:ha G összefüggő síkgráf és legalább 3 pontja van, akkor: e 3

Térinformatikai algoritmusok Elemi algoritmusok

Megerősítéses tanulás 2. előadás

Mesterséges Intelligencia I. (I602, IB602)

A szimplex tábla. p. 1

GONDOLKODÁS ÉS NYELV

Programozási módszertan. Mohó algoritmusok

Nagyságrendek. Kiegészítő anyag az Algoritmuselmélet tárgyhoz. Friedl Katalin BME SZIT február 1.

A modellellenőrzés érdekes alkalmazása: Tesztgenerálás modellellenőrzővel

Mesterséges Intelligencia MI

1: Bevezetés: Internet, rétegmodell Alapok: aszimptótika, gráfok. HálózatokII, 2007

Összefoglalás és gyakorlás







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.

Adaptív dinamikus szegmentálás idősorok indexeléséhez

Elérhetőségi analízis Petri hálók dinamikus tulajdonságai

Modellellenőrzés. dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

MŰSZAKKIOSZTÁSI PROBLÉMÁK A KÖZÖSSÉGI KÖZLEKEDÉSBEN

Programozási nyelvek 6. előadás

Operációkutatás vizsga

Informatikai tehetséggondozás:

Térinformatikai algoritmusok Elemi algoritmusok

Adaptív menetrendezés ADP algoritmus alkalmazásával

bármely másikra el lehessen jutni. A vállalat tudja, hogy tetszőlegesen adott

Mesterséges Intelligencia MI

Hálózati Folyamok Alkalmazásai. Mályusz Levente BME Építéskivitelezési és Szervezési Tanszék

Példa Hajtsuk végre az 1 pontból a Dijkstra algoritmust az alábbi gráfra. (A mátrixban a c i j érték az (i, j) él hossza, ha nincs él.

Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 4. kurzus. 3. Előadás: A mohó algoritmus

24. MINIMÁLIS KÖLTSÉGŰ UTAK I.

Mit tudunk már? Programozás alapjai C nyelv 4. gyakorlat. Legnagyobb elem keresése. Feltételes operátor (?:) Legnagyobb elem keresése (3)

Információ megjelenítés Számítógépes ábrázolás. Dr. Iványi Péter

Miskolci Egyetem Gépészmérnöki és Informatikai Kar Informatikai Intézet Alkalmazott Informatikai Intézeti Tanszék

Programozás alapjai C nyelv 4. gyakorlat. Mit tudunk már? Feltételes operátor (?:) Típus fogalma char, int, float, double

Kétszemélyes játékok

Totális Unimodularitás és LP dualitás. Tapolcai János

Átírás:

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

Legyen pl. az a probléma, hogy...

Milyen utat találunk meg? Így?

Milyen utat találunk meg? Vagy úgy?

Formalizált probléma Kezdeti állapot = Arad Célállapot = Bukarest Operátorok: IF (X és (X > Y)) THEN Y Útköltség = k x táv(x,y) + Célállapot teszt: Y = Célállapot? Nehézségek becslése:??? Adatbázis: (Arad > Nagyzerend) táv(arad,nagyzerend) = 75 (Arad > Temesvár) táv(arad,temesvár) = 118...

Keresési stratégiák avagy miből gazdálkodhatunk? mire vagyunk képesek? (saját modell) milyen körülöttünk a környezet? (cél-, távolsági modellek) Nem informált keresések (un. gyenge, vagy vak keresések) tudjuk: hogy néz ki a célállapot esetleg: mibe kerül cselekedni egyáltalán nem: milyen költségű az aktuálisból a célállapotba vezető út Informált keresések = heurisztikus keresések tudjuk: hogy néz ki a célállapot tudjuk: milyen költségű lehet az aktuális állapotból a célállapotba vezető út esetleg: mibe kerül cselekedni... útkereső probléma: Aradból kiindulva 3 cselekvés 3 állapotba vezet: Szebenbe, Temesvárra és Nagyzerendre... nem informált keresés: nincs különbség, merre... informált, okosabb ágens: Szeben a célállapot irányában fekszik... A vak keresési stratégiákat a csomópontok kifejtési sorrendje különbözteti meg. Ez a különbség óriási jelentőséggel bírhat.

Mélységi keresés (Ro-Melysegi-K.pdf) rohanás előre, egy ág mentén, de a visszalépés lehetőségével Szélességi keresés (Ro-SzelessegiK.pdf) szisztematikus feltárás széles fronton, a visszalépésre nincs szükség (nincs mihez) Mélységkorlátozott keresés (Ro-MelysegKorlatosK.pdf) az utak maximális mélységére egy vágási korlátot ad. Románia térképe: 20 város. Ha létezik egy megoldás, az maximálisan 19 lépés hosszú lehet. Minden város bármelyik városból legfeljebb 9 lépésben elérhető: az állapottér átmérője = jobb mélységkorlát. A mélységi levágásnál a keresés visszalép. A megoldás, amennyiben létezik és a mélységkorlátnál sekélyebben fekszik, garantáltan megtaláljuk. De semmi garancia nincs arra, hogy a legrövidebb megoldást találjuk meg. Amennyiben túl kis mélységkorlátot választunk, akkor a mélységkorlátozott keresés még csak teljes sem lesz.

Iteratívan mélyülő keresés Slate és Atkin (1977): CHESS 4.5 sakkprogram. (Ro-IterativMelyulo-K.pdf) - mélységkorlátozott keresés - egy jó mélységkorlát megválasztása? A legtöbb esetben azonban mindaddig nem tudunk jó mélységkorlátot adni, amíg meg nem oldottuk a problémát. A legjobb mélységkorlát kiválasztása: - kipróbálja az összes lehetséges mélységkorlátot: először 0, majd 1, majd 2, stb. - mélységkorláttal végez mélységkorlátozott keresést.

Iteratívan mélyülő keresés gyakorlatilag ötvözi a szélességi és mélységi keresés előnyös tulajdonságait A szélességi kereséshez hasonlóan optimális és teljes, de csak a mélységi keresés szerény memória igényével rendelkezik. De bizonyos állapotokat az algoritmus többször is kifejt! Tékozló? - egy exponenciális keresési fában majdnem az összes csomópont a legmélyebb szinten található d mélység, b elágazási tényező: szélességi keresésnél a kifejtések száma: 1 + b + b 2 +... + b d-2 + b d-1 + b d pl. b =10 és d = 5 esetén ez a szám: 1 + 10 + 100 +... + 100000 = 111111 az iteratívan mélyülő keresésnél a kifejtések teljes száma: (d+1)1 + (d)b + (d -1)b 2 +... + 3b d-2 + 2b d-1 + 1b d b = 10 és d = 5 esetén: 6 + 50 +400 +... + 100000 = 123456 minél nagyobb az elágazási tényező, annál kisebb a többletmunka (max. b = 2, 200%)

Kétirányú keresés (Ro-Ketiranyu-K.pdf) - egyszerre előrefelé a kiinduló állapotból, illetve hátrafelé a cél állapotból - a keresés akkor fejeződik be, ha a két keresés valahol találkozik O(2 x b d/2 )=O(b d/2 ) b = 10, d = 6: a szélességi keresés = 1111111 csomópont, a kétirányú keresés mindkét irányban 3 mélységnél ér célba = 2222 csomópontot generál. Elméletben nagyon jól, az implementálás nem triviális. - cél állapotból hátrafelé keresni? Az n csomópont előd csomópontjai azon csomópontok, amelyek követő csomópontja n. A hátrafelé keresés a cél csomópontból indulva az előd csomópontok egymást követő generálását jelenti.

Ha az összes operátor reverzibilis, akkor az előd és követő halmazok azonosak. Néhány probléma esetén azonban az elődök meghatározása nagyon nehéz. Mi van, ha nagyon sok cél állapot létezik? a cél állapotok egy explicit listája a cél állapotok egy leírása A sakkban mik a sakk-matt célállapotot megelőző állapotai? Hatékony módszer arra, hogy: egy frissen generált csomópont megjelenik-e már a másik fél keresési fájában. El kell tudni dönteni, hogy az egyes félrészekben milyen keresésre fog sor kerülni. - O(b d/2 ) komplexitás feltételezi, hogy a két hullámfront metszésének megállapítása konstans idő alatt elvégezhető(?) - Hogy a két keresés találkozzon, legalább az egyik keresés összes csomópontját memóriában kell tartani = tár O(b d/2 ).

Egyenletes költségű keresés (Dijkstra) (Ro-EgyenletesKoltsegu-DK.pdf) szélességi keresés módosítása: a hullámfront g(n) útköltség függvénnyel mért legkisebb költségű csomópontját fejti ki először, nem pedig a legkisebb mélységű csomópontot. szélességi keresés is egyenletes költségű keresés, amelyben: g(n) = Mélység(n), vagyis a csomópont mélysége. Az egyenletes költségű keresés a legolcsóbb megoldást találja meg, feltéve ha: az út költség egy út bejárása során nem csökkenhet: g(követő(n)) g(n) minden egyes n csomópontra.

A neminformált keresési stratégiák összehasonlítása b - elágazási tényező, d - a megoldás mélysége, m - a keresési fa maximális mélysége, l - a mélység korlát. Krit. SzK EgyKK MK MKK IMK KK Idő igény Tár igény b d b d b m b l b d b d/2 b d b d bm bl bd b d/2 Opt.? Igen Igen Nem Nem Igen Igen Teljes? Igen Igen Nem Igen, ha l d Igen Igen

A neminformált keresési stratégiák összehasonlítása b - elágazási tényező, d - a megoldás mélysége, m - a keresési fa maximális mélysége, l - a mélység korlát. Krit. SzK EgyKK MK MKK IMK KK Idő igény Tár igény b d b d b m b l b d b d/2 b d b d bm bl bd b d/2 Opt.? Igen Igen Nem Nem Igen Igen Teljes? Igen Igen Nem Igen, ha l d Igen Igen