90 likes | 191 Views
MESTERSÉGES INTELLIGENCIA (ARTIFICIAL INTELLIGENCE). Kivonat. Nagy Sára Fekete István Gregorics Tibor munkái alapján. reprezentáció állapot – egy állás (N x N-es mátrix) állapottér – lehetséges állások 1..N királynővel – mezők megcímkézése (KN, ütésben, szabad)
E N D
MESTERSÉGES INTELLIGENCIA(ARTIFICIAL INTELLIGENCE) Kivonat Nagy Sára Fekete István Gregorics Tibor munkái alapján
reprezentáció állapot – egy állás (N x N-es mátrix) állapottér – lehetséges állások 1..N királynővel – mezők megcímkézése (KN, ütésben, szabad) nem lehetnek ütésben álló KN-k KN=N esetén célállapot művelet – 1 KN elhelyezése ütésben álló mezők száma nő korlátozás kielégítés (constraint satisfaction) költség – minden megoldás költsége azonos (N hosszú műveletsorozat) kezdőállapot – üres tábla célállapot – N királynő a táblán N királynő probléma
N királynő probléma reprezentációs gráf – inkrementális megfogalmazás
Heurisztikákaz n-királynő problémára 1. 3. reprezentáció mellett Neminformált: Diagonális és ptl-ps heurisztika Diagonális heurisztika: * 4 3 3 4 4 3 3 4 * * * * * * * 3 * 4 4 3 3 4 4 3 * * * * * * * * 3 4 4 3 3 4 4 3 * * * * * * 4 * 3 3 4 4 3 3 4 22 visszalépés 2 visszalépés 0 visszalépés
Visszalépéses keresés • visszalépés feltételei: • zsákutca, azaz végpontjából nem vezet tovább út • zsákutca torkolat, azaz végpontjából kivezető utak nem vezettek célba • kör, azaz végpontja megegyezik az út egy megelőző csúcsával • mélységi korlátnál hosszabb • terminálási feltétel: • az aktuális út végén megjelenik egy célcsúcs, vagy ha a startcsúcsból vissza akarunk lépni • sorrendi heurisztika, vágó heurisztika Ariadne fonala
Visszalépéses keresés CSÚCS, ÚJCSÚCS:reprezentációs gráf. 1-1- csúcsa SZABÁLYOK:lista kezdetben az összes szabály, de az AlkalmazhatóSzabályok operátor hozza létre NIL:Üres lista Első:Lista elő eleme Vége:Lista maradéka Fűz1 elemet fűz a lista elé Rekurzív eljárás visszalépés1(CSÚCS) • HA cél(CSÚCS) akkor visszatér(NIL) • Szabályok :=AlkalmazhatóSzabályok(CSÚCS) • Talált:=hamis • Ciklus amíg nem (üres(Szabályok) vagy Talált) • R :=elso(szabályok); szabályok :=vége(szabályok) • Újcsúcs :=R(CSÚCS) • Szablista :=visszalépés1(Újcsúcs) • ha szablista ≠hiba akkor Talált :=igaz • Ciklus vége • Ha Talált akkor visszatér(fűz(R,Szablista)) • különben visszatér(hiba) • Eljárás vége
Visszalépéses keresés Meghívása:visszalépés1(STARTCSÚCS) Rekurzív eljárás visszalépés1(CSÚCS) • HA cél(CSÚCS) akkor visszatér(NIL) • Szabályok :=AlkalmazhatóSzabályok(CSÚCS) • Talált:=hamis • Ciklus amíg nem ( üres(Szabályok) vagy Talált ) • R :=elso(szabályok); szabályok :=vége(szabályok) • Újcsúcs :=R(CSÚCS) • Szablista :=visszalépés1(Újcsúcs) • ha szablista ≠hiba akkor Talált :=igaz • Ciklus vége • Ha Talált akkor visszatér(fűz(R,Szablista)) • különben visszatér(hiba) • Eljárás vége
Visszalépéses keresés 2. • A visszalépés1 algoritmus terminálása nem garantált • végtelen, vagy • kört tartalmazó gráfon • Javítás: • Mélységi korlát bevezetése • Csak be nem járt csúcsok vizsgálata