2012. 06. 20. 1. Milyen hatással van a heurisztika általában a keresõ rendszerek mûködésére? A heurisztika olyan, a feladathoz kapcsolódó ötlet, amelyet közvetlenül építünk be egy algoritmusba, azért, hogy annak eredményessége és hatékonysága javuljon, habár erre általában semmi garanciát nem ad. 2. Írja le a hegymászó algoritmust! Minden lépésben az aktuális(n) csúcs legjobb gyermekére lép, amelyik nem a szülõje. 3. Mit tesz az általános gráfkeresõ algoritmus akkor, amikor egy már korábban felfedezett csúcshoz talál minden addiginál olcsóbb utat? Ha M ϵ G, és g(n) + c(n,m) < g(m), akkor π(m) := n, g(m) := g(n) + c(n,m) 4. Mit tartalmaz egy probléma dekompozíciós reprezentációja? A dekompozíció általánosítása a redukciónak: egy feladatot több részfeladatra bontunk, majd azokat tovább részletezzük, amíg nyilvánvalóan megoldható feladatokat nem kapunk. 5. Adjon példát legalább három rekombinációs operátorra! --- I. Fekete-fehér kirakó állapottér-reprezentációja. Problématér és állapotér méretének becslése. Állapottér: Sin = rec(v: vektor[1..n+m+1]; {B, W, _}), poz: [1...n+m+1]) Poz: üres hely indexe, n darab B és m darab W Mûveletek: TolBal, TolJobb, UgrikBal, UgrikJobb: Sin -> Sin Pl.: TolBal (üres helyet toljuk balra) Ha a.poz!= 1, AKKOR a.v[a.poz-1] <-> a.v[a.poz]; a.poz := a.poz-1 Kezdõállapot: [B,...,B, W,...,W,_] Célállapot: Minden i,j ϵ [1..n+m+1], i < j: nem(a.v[i]=b és a.v[j] = W)
II. Szemléltesse az A algoritmus mûködését! (Meg volt adva egy gráf, egy hisztogram, egy táblázat. A hisztogramot és a táblázatot kellett megfelelõen kitölteni) Azt a GK-t nevezzük A algoritmusnak, amelyre az f(n)=g(n)+h(n) minden n eleme NYÍLT (additív) h(n)>=0 minden nϵn (nemnegatív) 2012. 06. 13. 1. Melyik problémáját küszöböli ki a tabu keresés a hegymászó módszernek + probléma jellemzése + tabu megoldásának jellemzése Probléma: könnyen körbe került Az aktuális csúcson (n) kívül nyilvántartja még Optimális csúcs (n*): az eddigi legjobb csúcs Tabu halmaz: az utolsó néhány érintett csúcsot Minden lépésben Az aktuális csúcs legjobb gyermekére lép, kivéve a tabu halmazban levõket ha n jobb, mint az n*, akkor n*-ot lecseréli n-re frissíti n-nel a sorszerkezetû tabu halmazt 2. Visszalépéses ker. munkaterülete, keresési szabályai, vezérlési stratégia globális munkaterülete: próbált élek) egy út a startcsúcsból az aktuális csúcsba (ezen kívül az útról leágazó még ki nem Kezdetben a startcsúcsot tartalmazó nulla hosszúságú út terminálás célcsúccsal vagy startcsúcsból való visszalépéssel keresés szabályai: a nyilvántartott út végéhez egy új (ki nem próbált) él hozzáfûzése, vagy az legutolsó él törlése (visszalépés szabálya) vezérlés stratégiája a visszalépés szabályát csak a legvégsõ esetben alkalmazza 3. Általános gráf ker. eredményei
A GK delta-gráfban a mûködése során egy csúcsot legfeljebb véges sokszor terjeszt ki. (a körökre nem érzékeny) -> A GK véges delta-gráfban mindig terminál. -> ha létezik megoldás akkor megtalálja 4. Mi a hiperút A hiperút egyértelmû haladási irányt kijelölõ hiperélek halmaza, azaz egy véges részgráf (nad alfa->m), amelyben M csúcsaiból nem indul hiperél, a többi csúcsból egy hiperél indul, bármelyik részgráfbeli csúcs elérhetõ az n csúcsból közönséges úton 5. Mikor jó egy szelekció? + példa Célja: a rátermett egyedek kiválasztása úgy, hogy a rosszabbak kiválasztása is kapjon esélyt. Pl.: Versengõ: véletlenül kiválasztott egyedcsoportok (pl. párok) legjobb egyedét választja ki. I. Állapottér rep. SAT problémára II. Minimax Állapottér: I = vektor( [1..n];{igaz, hamis}) Mûvelet: Vált(i): I -> I (a : I) a[i] := nem a[i] Kezdõállapot: tetszõleges interpretáció Célállapot: F-nek a célállapot szerinti interpretációja igaz A játékfának az adott állás csúcsából leágazó részfáját felépítjük néhány szintig. A részfa leveleit kiértékeljük aszerint, hogy azok számunkra kedvezõ, vagy kedvezõtlen állások. Az értékeket felfuttatjuk a fában. (Saját szintjeink csúcsaihoz azok gyermekeinek maximumát, ellenfél csúcsaihoz azok gyermekeinek minimumát rendeljük.) Soron következõ lépésünk ahhoz az álláshoz vezet, ahonnan a gyökérhez felkerült a legnagyobb érték. 2012. 06. 06. 1. Milyen eredményre képes a visszalépéses keresés elsõ, illetve második változata? A VL1 véges körmentes irányított gráfokon (itt nem kell delta-gráf) mindig terminál, és ha létezik megoldás, akkor talál egy megoldást.
A VL2 delta-gráfban mindig terminál. Ha létezik a mélységi korlátnál nem hosszabb megoldás, akkor megtalál egy megoldást. 2. Mikor nevezünk egy gráfkeresõ algoritmust szélességi keresésnek? Milyen állítást mondhatunk ki vele kapcsolatban? f = g, c(n,m) = 1 optimális (legrövidebb) megoldást adja, ha van; egy csúcsot legfeljebb egyszer terjeszt ki 3. Sorolja fel, milyen módosításait ismerte meg a minimax algoritmusnak, és írja melléjük, hogy ezek milyen szempontból javítanak annak mûködésén? Negamax: Könnyebb implementálni Átlagoló kiértékelés: kiértékelõ függvény esetleges tévedéseinek simítása Váltakozó mélységû kiértékelés: kiértékelõ fv minden ágon reális értéket mutasson Szelektív kiértékelés: memória-igény csökkentése 4. Hogyan történik az evolúciós algoritmusokban a visszahelyezés? A visszahelyezés a populációnak az utódokkal történõ frissítése. Kiválasztja a populációnak a lecserélendõ egyedeit (újabb szelekció), és azok helyére az utódokat teszi. ha u=v, akkor feltétlen cserérõl van szó ha u<v, akkor egy utód több példányban is bekerülhet ha u>v, akkor az utódok közül (ismét egy szelekcióval) kiválasztjuk a cseréhez szükséges utódokat. 5. A rezolúció módszere egy speciális keresõ rendszer. Írja le, hogy ebben az esetben mik lesznek a keresõrendszer fõ részei! globális munkaterület, kiindulás érték, terminálási felt., keresõ szabály, vezérlési stratégia, heurisztika I. Állapottér repr. a misszionárius kannibál problémára Állapottér: Part = rec(m:[0..n], k:[0..n], c:??) invariáns: nincs emberevés, azaz I(m,k) = m=k vagy m=0 vagy m=n
Kezdõállapot: (n,n,igaz) Célállapot: (0,0,hamis) Mûveletek: Át(x,y):Part->Part HA a.c és x<=a.m és y<=a.k és x+y<=h és I(a.m x, a.k y) AKKOR a.c:=hamis : a.m:=a.m x: a.k:=a.k y Vissza(x,y):Part->Part (a:part) HA nem a.c és x<=n a.m és y<=n a.k és x+y<=h és I(a.m+x, a.k+y) AKKOR a.c:=igaz : a.m:=a.m+x: a.k:=a.k+y II. (2,2) átlagoló eljárás egy adott játékfára. Soron következõ lépés. kerül. A MAX szintjeire a m darab legnagyobb, MIN szintjeire az n legkisebb értékû gyerek átlaga 2012. 05. 30 1. Osztályozza a vezérlési stratégiákat elsõdleges: független a feladattól és annak reprezentációjától másodlagos: független a konkrét feladattól, de épít a feladathoz választott reprezentációs modell sajátosságaira heurisztika: a reprezentációban nem rögzített, a konkrét feladat megoldását segítõ ötlet 2. Melyek a visszalépéses keresés elõnyei hátrányai elõnyök: mindig terminál, talál megoldást, könnyen implementálható, kicsi memória igényû hátrányok: nem ad optimális megoldást, kezdetben hozott rossz döntést csak sok visszalépés korrigál, egy zsákutca részt többször is bejárhat a keresés 3. Mikor nevezünk egy gráf keresõ algoritmust A^c algoritmusnak, és melyek a legfõbb tulajdonságai Olyan A* algoritmus, amelyiknek heurisztikus függvénye monton megszorításos: h(n)-h(m) <= c(n,m) (minden n,m ϵ A) Optimális megoldást ad, ha van, egy csúcsot legfeljebb egyszer terjeszt ki,, monoton + célban nulla -> megengedhetõ 4. És/Vagy gráf Az R=(N,A) élsúlyozott irányított hipergráf, ahol az
N a csúcsok halmaza, hiperél rendje A részhalmaza (n,m) ϵ N 2^N, aho 0!= M <végtelen } a hiperélek halmaza, M a (c(n,m) az (n,m) költsége) -szigma tulajdonság -(delta tulajdonság)
5. Hogyan néz ki egy általánosított perceptron, és hogyan számolja ki a kimeneti értéket I. Állapottér reprezentáció n királynõ Állapottér: Tábla = mátrix([1..n,1..n];{királynõ, _ }) invariáns: a királynõk (királynõ jelû mezõk) száma = n Mûvelet: Áthelyez(x,y,u,v):Tábla->Tábla HA (a[x,y]=királynõ) és (a[u,v]=_ ) AKKOR a[x,y] <-> a[u,v] II. Visszalépésés keresés lejátszása egy gráfon, mennyi visszalépés volt, mi a megoldási út, számozoni kellett bejárás szerinti sorrendbe, és x-el jelölni azokat a csúcsokat ahol volt visszalépés 2012. 05. 23. 1. Nevezze meg és jellemezze a keresõrendszerek fõ részeit. globális munkaterület: a keresés során megszerzett és megõrzött ismeret keresõ rendszer szabályai: globális munkaterületet változtató operátorok vezérlési stratégia: végrehajtó szabályt kiválaszót 2. Melyek a visszalépés feltételei a visszalépéses algoritmus legáltalánosabb változatában? zsákutca, zsákutcatorkolat, kör, mélységi korlát 3. Mikor Nevezünk egy gráfkeresõ algoritmust A* algoritmusnak és mit tudunk ennek az eredményességérõl.
A* algoritmus olyan A algoritmus, amelyiknek heurisztikus függvénye megengedhetõ (admissible): h(n)<=h*(n) minden nϵn megoldást ad, ha van megoldás 4. Mit jelent kétszemélyes játékoknál a nyerõ stratégia és milyen állítást mondtunk ki ezzel kapcsolatban. A nyerõ (vagy nem-vesztõ) stratégia egy olyan elv, amelyet betartva az ellenfél minden lépésére tudunk olyan választ adni, hogy megnyerjük (ne veszítsük el) a játékot. 5. Mi történik egy evoluciós algoritmus egy iterációja során (milyen lépések hajtódnak végre) Elõször egy kezdõpopulációt választunk. Minden lépésben Szelekció: Kiválasztunk néhány (lehetõleg rátermett) egyedet szülõnek. Rekombináció (keresztezés): Szülõkbõl utódok készülnek úgy, hogy a szülõk kódjaiból állítjuk össze az utód kódját. Mutáció: Az utódok kódját kismértékben módosítjuk. Visszahelyezés: Új populációt alakítunk ki az utódokból és a régi populációból. A cél lehet egy keresett célegyed elõállítása, vagy a populáció globális értékének változatlansága. I. Állapottér reprezentáció utazó ügynökre (n darab város) és becsülje meg az állapottérnek és problématérnek a méretét. II. Hegymászó algoritmus Hanoi torony rep. gráfjában(ami a diákon is van) adott heurisztika mellett sum(i=0-tol 3-ig) i*v(i), ha két csucs kozott nem dont heurisztika akkor a baloldali csúcsot részesítsük elõnyben. lejátszás