1. Komplexiteten hos en agent beror mycket på vilken omgivning den skall verka i. Vad innebär det att en omgivning är stokastisk, episodisk och dynamisk? Ge exempel på en omgivning som är stokastisk, episodisk och dynamisk. () var: tokastisk innebär att agenten inte kan vara säker på utfallet av en handling. pisodisk innebär att handlingar sker i episoder, att en handling inte beror av vad som hänt tidigare. Dynamisk innebär att omgivningen kan ändras medans agenten fattar beslut. xempel: Plockrobot.. Vid problemlösning är det bra att problemet formuleras så att det går att söka en lösning i en tillståndsrymd. Förklara vad det innebär och innebörden av de olika delarna i ett problem formulerat som ett tillståndsrymdsproblem. Ge ett exempel på ett problem formulerat som tillståndsrymdsproblem. () var: Vid lösning av problem som sökning i en tillståndsrymd definierar man de tillstånd som finns i problemdomänen, ofta som tupler (x, y, s,...). an behöver då definera ett starttillstånd, en målfunktion, en vägkostnadsfunktion samt de tillståndsövergångar som finns, dvs de tillstånd man kan komma till då man i ett tillstånd applicerar alla legala drag som finns i det tillståndet. tt exempel är vattenhinksproblemet där man kan representera ett tillstånd med två variabler (x,y) där x representerar -litershinken och y -litershinken. tarttillstånd: (0, 0) åltillstånd: (, y) Vägkotsnadsfunktionen antas returnera kostanden 1 för varje operation. Operatorer: (x, y x<) (, y) (x, y y<) (x, ) (x, y x>0) (0, y) (x, y y>0) (x, 0) (x, y x+y y>0) (, y-(-x)) (x, y x+y x>0) (x-(-y), ) (x, y x+y y>0) (x+y, 0) (x, y x+y x>0) (0, x+y). eskriv sökmetoderna Uniform Cost, Greedy earch och A*. Visa sökträden vid sökning från (tart) till (ål) i nätet nedan. Värden på bågarna anger kostnaden mellan noder och värden vid noder i fet stil anger uppskattad återstående kostnad till från den noden. Diskutera dina lösningar, för-och nackdelar samt varför träden ser ut som de gör. 1
A C D 1 F var: Uniform Cost är en bredden först sökmetod för vägkostnader som inte är lika stora. Den genererar optimala träd men till en väldigt hög sökkostnad. Greedy earch är en heuristisk sökmetod som bara söker vidare från de noder som för närvarande ligger närmast målet enligt den heuristik som finns. Den genererar i många fall mindre träd, men i värsta fall är den lika exponentiell som Uniform Cost. Den är inte komplett, och följaktligen inte heller optimal. A* kombinerar dessa metoder och genererar en optimal lösning till en kostnad som förhoppningsvis, och mycket beroende på heuristiken, är lägre än Uniform Cost. I värsta fall är dock även A* exponetiell. ()
Uniform Cost A C D 7 7 7 F 7 11 9 C 10 9 D 10 A 9 D 10 9 9 9 Greedy earch A C D A* A C 8 D 9 11 11 F 9 11 1 11 9. Förklara sökmetoden α-β cutoff. Antag att följande träd genereras i ett spelförande program om vi applicerar evalueringsfunktionen på samtliga löv. Hur ser trädet ut om vi kör α-β cutoff? () 6 8 8 1 9 0 7 0 ()
var: αβ-cutoff är en variant av max-min-sökstrategin där man tar hänsyn till de drag motståndaren kan göra för att skära bort sökträd som inte kommer att kunna väljas eftersom motståndaren vill minimera värdet av evalueringsfunktionen. an inför två variabler α för det lägsta värde en maxnod kan få och β som är det hösta värde en minnod kan få. en avbryter man min-sökningen i trädet då man får en nod med värde mindre än α och max-sökningen då nod med värde större än β funnits. 6 8 9 6 8 9 0 7 0. Gör rimliga antaganden och översätt följande meningar till predikatlogiska uttryck: Olga är mu muer har små hjärnor De som har små hjärnor är lättlurade och visa med resolution att () Olga är lättlurad () var: (1) mu(olga) () h mu(h) j LitenHjärna(j) Har(h, j) () s,t LitenHjärna(t) Har(s,t) Lättlurad(s) och det som skall visas: () Lättlurad(Olga) efter konvertering fås: (1) mu(olga) () mu(h) (LitenHjärna(g(h)) Har(h, g(h))) där g(h) är en kolemfunktion (a) mu(h) LitenHjärna(g(h)) (b) mu(h) Har(h,g(h)) () LitenHjärna(t) Har(s,t) Lättlurad(s) () Lättlurad(Olga)
och sen ger resolution t.ex. () + () med {s/olga}: () LitenHjärna(t) Har(Olga,t) () + (a) med {t/g(h)}: (6) mu(h) Har(Olga,g(h)) (6) + (b) med {h/olga}: (7) mu(olga) (7) + (1) ger en tom klausul och vi har visat att Lättlurad(Olga) 6. I en generell ontologi vill man gärna göra kategorier till objekt. Varför? Detta gör också att man kan skapa taxonomier. Varför vill man det? Diskutera problem som kan uppstå då kategorier och objekt lagras i ärvningshierarkier. () var: an vill inte bara resonerar om instanser/objekt utan om koncept/kategorier. Detta ger en mer kompakt representation och är också det sätt som människor representerar kunskap. Genom att göra objekt till predikat i språket kan man resonera om kategorier. x Guld refererar till kategorin Guld, x? Guld betyder att x är guld. Detta kallas reification och gör att man kan skriva t.ex. Färg(Guld) = gul, dvs kategorin Guld har egenskapen att vara gul. Kategorier ärver egenskaper. x Guld Ädelmetall betyder att Guld är en subklass av Ädelmetall och ärver alla dess egenskaper, t.ex. att vara gul och värdefull. Problem uppkommer om man tillåter multipel ärvning, vilket man gärna vill då kategorier kan vara subklasser av flera kategorier. tt sätt att hantera detta är att ta minsta avståndet i hierarkin. Ibland räcker inte det utan då får man ta minsta inferensavståndet, vilket innebär att man först letar sig uppåt i hierarkin till en gemensam nod med värde på attributet man är intresserad av och därefter nedåt till en nod som eventuellt ligger nedanför den gemensamma noden med värde på attributet. Ibland går inte detta heller, om det t.ex. saknas gemensam nod. Då får man en konflikt.