1. AZ MI FOGALMA. I. Bevezetés. Ers mesterséges intelligencia (EMI) Gyenge mesterséges intelligencia. MI története. Els szakasz (60-as évek)

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

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

2. Visszalépéses stratégia

Modellezés Gregorics Tibor Mesterséges intelligencia

II. Állapottér-reprezentáció

II. Állapottér-reprezentáció

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

2. Visszalépéses keresés

Keresések Gregorics Tibor Mesterséges intelligencia

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 2010/2011 1/363

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

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

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

Bevezetés az informatikába

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

Evolúciós algoritmusok

3. Gráfkeres stratégia

Mesterséges intelligencia

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

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

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

Bevezetés az informatikába

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

Mesterséges intelligencia 2. laborgyakorlat

Intelligens Rendszerek Elmélete IRE 4/32/1

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

Mesterséges Intelligencia MI

Bevezetés az informatikába

22. GRÁFOK ÁBRÁZOLÁSA

INFORMATIKA javítókulcs 2016

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

Visszalépéses keresés

Debreceni Egyetem Matematikai és Informatikai Intézet. 13. Védelem

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.

Tuesday, March 6, 12. Hasító táblázatok

A programozás alapjai előadás. Amiről szólesz: A tárgy címe: A programozás alapjai

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

Funkcionális és logikai programozás. { Márton Gyöngyvér, 2012} { Sapientia, Erdélyi Magyar Tudományegyetem }

MestInt gyakorlat visszalépéses keresés

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

1. Alapfogalmak Algoritmus Számítási probléma Specifikáció Algoritmusok futási ideje

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

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

Java II. I A Java programozási nyelv alapelemei

PROGRAMOZÁS tantárgy. Gregorics Tibor egyetemi docens ELTE Informatikai Kar

MESTERSÉGES INTELLIGENCIA DR. KOVÁSZNAI GERGELY JEGYZETE. Verziószám: május 19.

Kétszemélyes játékok

Bánsághi Anna 2014 Bánsághi Anna 1 of 68

Informatika 1 2. el adás: Absztrakt számítógépek

Programozási módszertan

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

1. AZ MI FOGALMA. I. Bevezetés ELIZA. Első szakasz (60-as évek) Második szakasz (70-es évek) Harmadik szakasz (80-as évek)

Programozási módszertan. Mohó algoritmusok

Iványi Antal alkotó szerkeszt INFORMATIKAI ALGORITMUSOK

A SIKER KOVÁCSA, VAGY A KUDARC KÓDJA?

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

GONDOLKODÁS ÉS NYELV

A MESTERSÉGES INTELLIGENCIA KÉRDÉSEI A KÖZÉPISKOLAI OKTATÁSBAN

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

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

Formális módszerek GM_IN003_1 Program verifikálás, formalizmusok

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

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

Programozás Minta programterv a 2. házi feladathoz 1.

Java II. I A Java programozási nyelv alapelemei

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

ZH feladatok megoldásai

Algoritmusok Tervezése. 6. Előadás Algoritmusok 101 Dr. Bécsi Tamás

angolul: greedy algorithms, románul: algoritmi greedy

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

Bánsághi Anna 2014 Bánsághi Anna 1 of 33

Feladat. Ternáris fa. Típusspecikáció. Reprezentáció. Absztrakt implementáció. Érdi Gerg EAF II. 4/3.

Rasmusen, Eric: Games and Information (Third Edition, Blackwell, 2001)

Mesterséges intelligencia Gergely Kovásznay Gábor Kusper

Programozási nyelvek a közoktatásban alapfogalmak I. előadás

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

ALAPFOGALMAK 1. A reláció az program programfüggvénye, ha. Azt mondjuk, hogy az feladat szigorúbb, mint az feladat, ha

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

Sztöchiometriai egyenletrendszerek minimális számú aktív változót tartalmazó megoldásainak meghatározása a P-gráf módszertan alkalmazásával

Automatikus tesztgenerálás modell ellenőrző segítségével

Kriptográfia 0. A biztonság alapja. Számítás-komplexitási kérdések

Programozási nyelvek 6. előadás

8. Komponens elvű programfejlesztés. Ágens, akció, cél, kontraktus.

Struktúra nélküli adatszerkezetek

Mesterséges Intelligencia MI

Eloadó: Dr. Várterész Magdolna

A MESTERSÉGES INTELLIGENCIA KÉRDÉSEI A KÖZÉPISKOLAI OKTATÁSBAN DR. KOVÁSZNAI GERGELY GÁBOR ÉS DR. KUSPER JEGYZETE

Megerősítéses tanulási módszerek és alkalmazásaik

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

SZTE Eötvös Loránd Kollégium. 2. Móra György: Információkinyerés természetes nyelvű szövegekből

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

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

Diszkrét matematika 2.C szakirány

Specifikáció alapú teszttervezési módszerek

Mesterséges intelligencia 1 előadások

Visszalépéses felsoroló

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

Specifikáció alapú teszttervezési módszerek

Átírás:

1. AZ MI FOGALMA I. Bevezetés 1. A mesterséges intelligencia (MI) fogalma 2. Probléma modellezés 3. Keres rendszerek az MI-ben 1956 nyár. Darthmouth College-i konferencia Kezdeti cél: Az emberi gondolkodás számítógép segítségével történ reprodukálása. 1 2 Ers mesterséges intelligencia (EMI) Gyenge mesterséges intelligencia szélsséges redukcionizmus Church-Turing tézis Neumann-elv számítógép Az emberi gondolkodás reprodukálható egy mköd programmal Cél: Az MI az emberi gondolkodás számítógépes reprodukálása szempontjából hasznos elveket, módszereket, technikákat kutatja, rendszerezi, fejleszti. Az MI az informatikának a gondolkodási-tudományos elrse. 3 4 MI története 60-as évek: általános feladatok, általános technikák 70-es évek: feladatosztályok, speciális módszerek 80-as évek: konkrét feladatok, szakért rendszerek 90-es évek: újrafelfedezett módszerek, hibrid rendszerek, matematikai háttér Els szakasz (60-as évek) Eredmények: kétszemélyes játékok (dáma, sakk), beszélget program (ELIZA,1966) 5 6 1

ELIZA Els szakasz (60-as évek) Illesztési szabályok <a> ön <b> engem <c>. Miért gondolja, hogy ön <a> én <b> <c>? Úgy érzem, hogy ön mostanában engem un. Miért gondolja, hogy ön úgy érzi, hogy én mostanában unom? Emlékezési szabályok Folytatási szabályok Eredmények: kétszemélyes játékok (dáma, sakk), beszélget program (ELIZA,1966) Módszerek, eszközök: GPS, rezolúció (1966), LISP(1958), mesterséges neuronhálózatok (1969), evolúciós algoritmusok (1959) Kudarcok: DOCTOR-PARRY, nyelvi fordítók, kombinatorikus robbanás 7 8 Második szakasz (70-es évek) Eredmények: SHRDLU (1972), BACON, AM, EURISKO Módszerek, eszközök: Prolog, heurisztikus keresési technikák, tudásábrázolási módszerek (kognitív modellek) Kudarcok: MI fejldési trendje, meseíró program Harmadik szakasz (80-as évek) Eredmények: DENDRAL (1969-78), MYCIN(1976), PROSPECTOR(1979), XCON (1982) Módszerek, eszközök: tudásalapú szakért rendszerek, shell-ek, módszertanok, nem klasszikus logikák, bizonytalanság kezelése Kudarcok: rendszerek elkészítése lassabb, mint a gyorsan változó programozási környezet 9 10 Negyedik szakasz (90-as évektl) Eredmények: logisztika, rkutatás, Deep Blue, döntés támogató rendszerek, nyelvi fordítók, robotika (beszélgetés, gépi látás, tervgenerálás, gépi tanulás) Módszerek, eszközök: elosztott tudás reprezentálása (mesterséges neuron háló, evolúciós algoritmus, ágens szemlélet), döntéselmélet (valószínségi hálók), beszédfelismerés (rejtett Markov modellek) A MI egy mszaki tudomány: adott mködés minél jobb minség számítógépes reprodukálása. MI helye Az MI-vel szemben a kognitív pszichológia: emberi gondolkodás természetének megismeréséhez tervez számítógépes modelleket. 11 12 2

A megoldandó feladatról Mirl ismerhet fel a mesterséges intelligencia? A számítógéppel nem megoldható feladatokat akarunk számítógéppel megoldani Példa: orvosi diagnózis, sakk játék, természetes nyelv megértése Ellenpélda: telefonkönyv nyilvántartó program A megoldó algoritmusról Turing teszt 13 MI tárgya Azon feladatok számítógépes megoldása, amelyek megoldása nehéz az embertl is kell szakértelmet, kreativitást és intuíciót kíván (szemléletmód váltások) megoldásukban ma többnyire az ember a jobb /medve/ 14 a probléma tere (lehetséges válaszok száma) nagy, az összes lehetség kipróbálása szisztematikus úton nem lehetséges, /n-királyn/ a válasz sokszor elemi tevékenységek sorozatával írható le, amely elre nem rögzíthet, hanem több lehetséges sorozat közül kell kiválasztani. irányított keresésre van szükség. / Rubik kocka / 15 16 2. PROBLÉMA MODELLEZÉS Problématér: összes lehetséges válasz halmaza Cél: a problémára adható helyes választ (megoldást) kell megtalálni a problématérben A keresés a problématérben problématér szkítése hasznos válaszok kijelölésével - a válaszok közötti szomszédsági kapcsolatok megadásával egy sajátos szerkezetet kap a problématér - kiinduló pont (kiinduló válasz) rögzítése - Adott lépésben választható válaszok rangsorolása Keresés a lehetséges válaszok között Keresés különféle szerkezet problématerekben: véletlenszer egyértelm, de hosszú választani kell a lehetségek között 17 18 3

Általános útkeresési probléma A problématér megfeleltethet egy irányított gráfnak: lehetséges válaszok ~ irányított gráf csúcsai kiinduló válasz ~ startcsúcs helyes válasz ~ célcsúcs szomszédsági kapcsolatok ~ irányított élek A helyes válasz megadása annak az irányított útnak a megkeresése, amelyik a kiinduló választól a helyes válaszig vezet. a helyes válasz nem az irányított út, hanem az út végpontja. Az út a helyes válasz megtalálását szimbolizálja. 19 Speciális útkeresési probléma Amikor egy lehetséges válasz elemi lépések sorozataként áll el. két ilyen sorozat között szomszédsági kapcsolatot definiál az, hogy a kezd lépéseik milyen hosszan egyeznek meg; az üres sorozat a keresés kezdpontja Ekkor egy olyan másféle irányított gráffal is szemléltethet a probléma, ahol az irányított élek elemi lépéseket szimbolizálnak. egy rögzített startcsúcsból kivezet utak jelölik a lehetséges válaszokat; a helyes választ szimbolizáló út hossza a megoldás minségére utal. 20 Gráf fogalmak 1. csúcsok, ir. élek N, A N N (számosság) él n-bl m-be (n,m) A (n,m N) n utódai, szülei Γ(n), Π(n), π(n) irányított gráf R=(N,A) σ-tulajdonság {(n,m) A m N} <σ n N élköltség c:a R, c(n,m) (n,m) A δ-tulajdonság c(n,m) δ > 0 (n,m) A δ-gráf δ, σ -tulajdonságú élsúlyozott irányított gráf 21 irányított út n-bl kiinduló utak ir. út hossza Gráf fogalmak 2. α=(n,n 1 ),(n 1,n 2 ),...,(n k-1,m) (n,n 1,n 2,...,n k-1,m), n α m, n m {n m}, {n M} α ir. út költsége c α (n,m):=σ i c(n i-1,n i ) opt. költség c * (n,m):=min α {n m} c α (n,m) opt. költség út n * m, n * M 22 irányított kör (n n) Gráf fogalmak 3. s gyöker irányított fa (olyan irányított gráf, amelynek s csúcsából minden más csúcs pontosan egy irányított út mentén érhet el) irányított gráf s gyöker irányított feszítfája (a gráf minden csúcsát és gráf nem feltétlenül összes élét tartalmazó s gyöker irányított fa) irányított gráf s gyöker optimális irányított feszítfája (amelynek bármelyik s n útjára az irányított gráfban teljesül, hogy c(s,n)=c * (s,n) 23 Gráfreprezentáció fogalma Egy útkeresési probléma gráfreprezentációja egy (R,s,T) hármas, amelyben R=(N,A,c) δ-gráf az un. reprezentációs gráf, amely a probléma teret szimbolizálja, az s N startcsúcs a kiinduló pont, a T N halmazbeli célcsúcsok. A feladat megoldása: többnyire egy s T, esetleg egy s * T optimális út megtalálása néha egy t T cél megtalálása 24 4

Reprezentációs modellek Állapottér-reprezentáció állapottér Általános probléma modell dekomp. útkeresési probléma játék logikai strukturált objektum alapú Ez egy széles körben (nemcsak a MI-ban) használt modell, amely segítségével egy problémát specifikálhatunk. Jellegzetessége, hogy a problémák megoldását mveletek sorozataként fogalmazza meg, ennél fogva az állapottér-reprezentáció alkalmazása egy útkeresési problémát (többnyire speciális útkeresési problémát) ad meg. 25 26 Állapottér-reprezentáció modellje n-királyn probléma 1. Állapottér (domináns típusérték-halmaz) invariáns Mveletek (elemi lépés az állapottérben) elfeltétel, hatás Kezd állapot(ok) vagy elfeltétel Célállapot(ok) vagy utófeltétel 27 általános állapot célfeltétel= Tábla = mátrix([1..n,1..n];{k, SZ}) invariáns: királynk száma = n Áthelyez(x,y,u,v):Tábla Tábla (a:tábla) HA (a[x,y]=k) és (a[u,v]=sz) AKKOR a[x,y] a[u,v] 28 állapot mvelet hatása mvelet költsége kezd állapot célállapotok mveletsorozat hatása Állapottér-reprezentáció állapot gráfja csúcs irányított él élköltség startcsúcs célcsúcsok irányított út 29 n-királyn probléma 2. kezdállapot célfeltétel = Tábla = mátrix([1..n,1..n];{k, SZ}) invariáns: királynk száma n Elhelyez(sor,oszlop):Tábla Tábla (a:tábla) HA a[sor,oszlop]=sz és királynk száma < n AKKOR a[sor,oszlop] K 30 5

Megjegyzés Mindkét eddig látott reprezentáció - az els egy általános, a második egy speciális - útkeresési problémát definiál: 1. reprezentáció 2. reprezentáció Célcsúcsot keresünk Célcsúcsba vezet utat Nincs megadva keresünk a startcsúcsból startcsúcs indulva problématér = problématér állapottér állapottér válasz = csúcs válasz = n hosszú út szomszéd = él szomszéd = közös kezd részút 31 n-királyn probléma 3a. Tábla = mátrix([1..n,1..n];{k, SZ}) invariáns: királynk száma n els valahány sorban, de egy sorban csak egy királyn Helyez(oszlop):Tábla Tábla (a:tábla) HA a sor az els olyan sor, ahol nincs K AKKOR a[sor,oszlop] K 32 n-királyn probléma 3b. Megjegyzés Tábla =rec( m:mátrix([1..n,1..n];{k, SZ}), sor:n) invariáns: sor n 1-tl sor-ig egy-egy királyn kezd állapotnál: sor = 0 Helyez(oszlop):Tábla Tábla (a:tábla) HA AKKOR a.sor < n a.sor a.sor+1 a.m[a.sor,oszlop] K 33 Sok modellje lehet ugyanannak a feladatnak. Mvelet elfeltételének (szomszédsági kapcsolatnak) megváltoztatásával csökken az állapottér mérete, azaz az utak (a megengedett válaszok) száma. A mveleti elfeltétel ellenrzése ügyesebb reprezentáció mellett - például az állapottér átalakításával - hatékonyabb lehet. 34 n-királyn probléma 4a. n-királyn probléma 4b. Tábla =rec( m:mátrix([1..n,1..n];{k, SZ}), sor:n) invariáns: nincs ütés és sor n 1-tl sor-ig egy-egy királyn kezdáll.: sor = 0 céláll.: sor = n Helyez(oszlop):Tábla Tábla (a:tábla) HA AKKOR a.sor < n és az új királyn nem üt a.sor a.sor+1 a.m[a.sor,oszlop] K 35 Tábla= rec(m:mátrix([1..n,1..n];{k, Ü, SZ }), sor:n) invariáns: nincs ütés és sor n 1-tl sor-ig egy-egy királyn kezdáll.: sor = 0 céláll.: sor = n Helyez(oszlop):Tábla Tábla (a:tábla) HA a. sor < n és a.m[a.sor+1, oszlop]=sz AKKOR a.sor a.sor+1 a.m[a.sor,oszlop] K minden megfelel i,j -re: a.m[i,j] Ü 36 6

class Table { int n; int** matrix; // 0-Sz; 1-K; 2-Ü int row; public: }; Table(); n-királyn probléma C++ osztálya // matrix=0, row=-1 // copy constructor, destructor, etc. bool Put(const int col); bool Goal() const {return row==n-1;} 37 n-királyn probléma mveletének C++ metódusa bool Table::Put(const int col){ if(!(col>=0 && col<=n-1 && row<n-1 && matrix[row+1][col]==0 ) )return false; row++; matrix[row][col] = 1; for(int i=row+1;i<n;i++) matrix[i][col] = 2; for(int i=row+1;i<n && col-row+i<n;i++) matrix[i][col-row+i] = 2; for(int i=row+1;i<n && col-(i-row)>=0;i++) matrix[i][col-(i-row)] = 2; return true; } 38 Állapot gráf Tologató játék 2 8 1 6 7 3 1 2 3 4 8 4 5 Tábla=rec(mátrix, üreshely pozíciója) Tol(irány):Tábla Tábla (a:tábla) HA a.üreshely+irány egy érvényes pozíció AKKOR a.mátrix[a.üreshely] a.mátrix[a.üreshely+irány] a.üreshely a.üreshely+irány 40 Megjegyzés Az útkeresés hatékonysága a reprezentációs gráf (itt állapot gráf) bonyolultságát (csúcsok, élek számát, körök gyakoriságát, körök hosszát) meghatározó reprezentáción múlik. A reprezentációs gráfnak csak a startcsúcsból elérhet része érdekel bennünket. Ha egy keresés nem végez körfigyelést, csak a megelz csúcsba történ visszalépést zárja ki, akkor tulajdonképpen nem az eredeti gráfon, hanem annak úgynevezett fává egyenesített változatában dolgozik. 41 Irányított gráf fává egyenesítése Elméletben el is készíthetjük ezt a fát, amely a startcsúcsból kivezet utakat tartalmazza Oda-vissza irányuló élek közül a start csúcs felé irányulót elhagyjuk. (kett hosszú körök törldnek). Egy több úton is elérhet csúcsot megsokszorozzuk, így a körök végtelen hosszú úttá egyenesednek ki. (Véges gráf végtelen fa) a d a d c b b c b c c b a 42 7

1 6 4 7 5 1 6 4 7 5 1 4 1 6 4 7 5 Hanoi tornyai probléma 6 4 1 7 5 8 3 2 6 4 6 4 1 7 5 1 7 5 8 3 2 3 2 6 4 6 8 4 6 4 6 7 4 1 7 5 1 7 5 1 7 5 1 5 8 3 8 1 3 1 2 3 1 2 3 2 1 4 2 4 8 4 7 8 4 6 5 8 1 3 8 1 3 8 1 3 2 4 2 4 2 6 4 7 5 1 3 8 1 3 8 2 4 7 2 4 6 5 1 3 8 2 4 1 3 1 2 3 8 2 4 8 4 8 3 2 1 4 8 3 2 1 4 2 3 1 4 1 8 4 1 4 7 1 4 6 5 7 1 4 6 5 2 3 1 8 4 1 2 3 8 4 2 3 1 8 4 2 3 4 1 8 célállapot 2 8 1 4 3 2 8 1 4 3 1 4 5 1 5 7 6 7 4 6 1 5 7 4 6 1 4 5 7 6 1 4 5 7 6 2 3 1 8 5 7 4 6 2 3 1 6 1 6 8 7 5 4 7 5 4 1 5 7 4 6 1 5 6 7 4 1 6 7 5 4 2 8 1 6 1 6 3 7 5 4 7 5 4 1 5 6 7 4 duplikált állapot 1 5 6 7 4 2 3 1 6 3 7 5 4 1 5 7 4 6 1 2 3 1 2 3 C BA A B C [3,3,3] [1,1,1] Állás=vektor( [A,B,C];{1,2,3}) Rak(honnan, hová):állás Állás (a:állás) HA a-ban a honnan nem üres, és a hová üres vagy a hová fels korongja nagyobb, mint honnan fels korongja AKKOR a[honnan fels korongja] hová 44 Implementáció [3,3,3] Állapot gráf [2,3,3] [1,3,3] Rak(honnan, hová):állás Állás (a:állás) l1,i=linker(a..c, a[i]=honnan) i-t akarjuk mozgatni l2,j=linker(a..c, a[j]=hová) j-re akarunk rakni HA l1 és ( l2 vagy i<j) AKKOR a[ i] hová [2,1,3] [1,2,3] [1,1,3] [2,2,3] [3,1,3] [3,2,3] [1,1,2] [2,2,1] [3,1,2] [2,1,2] [1,2,1] [3,2,1] [3,2,2] [2,3,2] [1,3,1] [3,1,1] 45 [2,2,2] [1,2,2] [1,3,2] [3,3,2] [3,3,1] [2,3,1] [2,1,1] [1,1,1] 3. KERES RENDSZEREK útkeresési probléma Gráfreprezentáció A különféle megoldó algoritmusok egy közös algoritmus-sémából származtathatók, hiszen a problémák többnyire ugyanarra az alapfeladatra vezethetk vissza: keresünk egy irányított utat a reprezentációs gráfban A f különbség az egyes keres algoritmusok között az, hogy általános vagy speciális útkeresési problémát oldanak-e meg, illetve hogy a keresett megoldást optimalizálják-e valamilyen szempontból. 47 állapottér keres alg. Konkrét reprezentációs modellek dekomp. játék logikai Modell specifikus megoldó algoritmusok alfabéta alg. Keres rendszer rezolúció strukt. obj. szabalapú követk. 8

Keres rendszer sémája A KR részei Procedure KR 1. ADAT kezdeti érték 2. while terminálási feltételt(adat) loop 3. select SZ from alkalmazható szabályok 4. ADAT SZ(ADAT) 5. endloop end globális munkaterület ADAT keres rendszer szabályai SZ a keresés során megszerzett és megrzött (deklaratív) ismeret kezdeti érték, terminálási feltétel globális munkaterületet megváltoztató operátorok (procedurális ismeret) hatás, értelmezési tartomány A reprezentációs gráf feletti keresés, amely a gráf egy részét (ADAT) látja, azt változtatja meg (SZ) az általa meghatározott (select) módon. 49 vezérlési stratégia select végrehajtható szabályt kiválasztó általános elv + a konkrét feladattól származó vezérlési ismeret 50 Vezérlési vagy keresési stratégia Elsdleges stratégiák osztályozása Elsdleges stratégia: teljesen független a feladattól. Másodlagos stratégia: a reprezentációs modelltl függ, de a modellben rögzített konkrét ismeretektl nem. Vezérlési ismeret (heurisztika): A feladattal kapcsolatos, a reprezentációban nem rögzített konkrét ismeret, amelytl a jó eredményt, és a megfelel hatékonyságot várjuk. Sorrendi: alkalmazható szabályok közül választ Vágó: alkalmazható szabályok számát szkíti Elsdleges vezérlési stratégiák nemmódosítható visszalépéses módosítható gráfkeres 51 52 A heurisztika hatása a KR mködésére A KR futási ideje heurisztika költség eredmény futási id hatékonyság memóriaigény 53 alkalmazott szabályok száma futási id szabály kiválasztásának ideje informáltság teljes 54 9