Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Praktikum KI Teil VIII: Planung. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche nach einer.

Ähnliche Präsentationen


Präsentation zum Thema: "Praktikum KI Teil VIII: Planung. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche nach einer."—  Präsentation transkript:

1 Praktikum KI Teil VIII: Planung

2 Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche nach einer intelligenten Lösung Problemlösung mit Heuristiken Logik Planung & Robotik Expertensysteme Lernen

3 Praktikum KI SoSe 2005 Planung Planung betrachtet die Lösung realer Probleme Mittels geeigneter Beschreibungen der Welt Mittels Suche in der Welt-Repräsentation Schwierigkeiten bei der Lösung realer Probleme Größe des Suchraums Anzahl der Nachfolger eines Knotens Geeignete Heuristik Dekomposition von Problemen

4 Praktikum KI SoSe 2005 Planung Beispiel: Kauf eines Buches Artificial Intelligence Welt-Representation: ISBN-Nummern aller Bücher Knoten: Alle Bücher, die man hat Nachfolger-Funktion: Kauf eines einzelnen Buches, d.h. alle Bücher, die man vorher hatte, plus das gekaufte neue Buch Probleme ISBN-Nummern 10-stellig 10 Milliarden Nachfolger eines Knotens Kauf von 4 Büchern verschiedene Pläne, die evaluiert werden müssten Heuristik: Anzahl der noch fehlenden Bücher. Aber: Diese Heuristik ist menschen-gemacht und problemabhängig Dekomposition: 4 Mal ein Buch kaufen; reduziert naiv das Problem auf 4* statt Aber: Wie kann diese Dekomposition automatisch erreicht werden?

5 Praktikum KI SoSe 2005 Planungssprache STRIPS Lösung – Planungssprache STRIPS: Aufteilung des Problems in Zustände, Aktionen und Ziele Zustände entsprechen Knoten im Suchbaum Aktionen entsprechen Kanten im Suchbaum Ziele entsprechen Zielknoten Beschreibe Zustände als variablenfreie Konjunktion von positiven Literalen have(ISBN ) Plane(P1) Airport(LBC) Airport(STD) At(P1,LBC) Closed-World-Assumption: Alle nicht genannten Aussagen werden als false interpretiert

6 Praktikum KI SoSe 2005 Planungssprache STRIPS Beschreibe Aktionen mittels Vorbedingung: Konjunktion positiver Literale Effekt: Konjunktion von Literalen Alles, was nicht in Effekt genannt wird, bleibt unverändert Bsp: ActionFly(p,from,to) Precond: Plane(p) Airport(from) Airport(to) At(p,from) Effect: At(p,from) At(p,to) Beschreibe Ziele als Zustände At(P1,STD) At(P2,SXF) Ein Ziel ist erreicht, wenn der aktuelle Zustand alle Literale des Zielzustands enthält At(P1,STD) At(P2,SXF) At(P3,LBC) At(P1,STD) At(P2,SXF) At(P5,TXL) At(P8,FRA)

7 Praktikum KI SoSe 2005 Planungssprache STRIPS Vorteile dieser Darstellung Allgemeine Darstellung von Aktionen Nicht mehr Buy(ISBN ) bis Buy(ISBN ) Sondern Buy(x) Book(x) Schnelles Erzeugen von Nachfolgern eines Knotens (= Finden aller möglichen Aktionen) via Unifikation Heuristik: Anzahl der unerfüllten Literale des Zielzustandes Dekomposition: Aufteilung des Ziels anhand der Literale Nicht immer möglich Teilweise mit Aufwand fürs Zusammenfügen verbunden

8 Praktikum KI SoSe 2005 Planungssprache STRIPS Beispiel: Blocks World Objekte: Blöcke A, B, C; Greifer; Tisch Zustände: On(x,y)%Block x direkt auf Block y Ontable(x)%Block x direkt auf dem Tisch Clear(x)%Nichts auf Block x Empty%Greifer leer Holding(x)%Greifer hält Block x

9 Praktikum KI SoSe 2005 Planungssprache STRIPS Beispiel: Blocks World Aktionen Pickup(x,y) Precond: Empty Clear(x) On(x,y) Effect:Holding(x) Clear(y) Empty On(x,y) Clear(x) Putdown(x,y) Precond: Holding(x) Clear(y) Effect:Empty Clear(x) On(x,y) Holding(x) Clear(y)

10 Praktikum KI SoSe 2005 Planungssprache STRIPS Beispiel: Blocks World Aktionen Pickuptable(x) Precond: Empty Clear(x) Ontable(x) Effect:Holding(x) Empty Ontable(x) Clear(x) Putdowntable(x) Precond: Holding(x) Effect:Empty Clear(x) Ontable(x) Holding(x)

11 Praktikum KI SoSe 2005 Planungssprache STRIPS STRIPS – Suche: Die Literale des Zielzustandes werden nacheinander abgearbeitet Welches Literal als nächstes betrachtet wird, legt der Suchalgorithmus fest. Jedes Literal wird via backwards search versucht zu erreichen Löst das Problem der unnützen Aktionen der Vorwärtssuche Führt rekursiv wieder auf ein Planungsproblem Aber: Tiefensuche ist nur eine Möglichkeit; alle anderen Suchverfahren (Breitensuche, A*) sind ebenso möglich Falls beim Erreichen eines Literals ein anderes anderes zerstört wird, kommt dieses wieder in die Liste der noch nicht erfüllten Literale

12 Praktikum KI SoSe 2005 Planungssprache STRIPS Beispiel Blocksworld: Anfangszustand: empty ontable(A) ontable(B) clear(B) on(C, A) clear(C)

13 Praktikum KI SoSe 2005 Planungssprache STRIPS Beispiel Blocksworld: Zielzustand: empty ontable(c) on(b, c) on(a, b) clear(a)

14 Praktikum KI SoSe 2005 Planungssprache STRIPS Beispiel Blocksworld: Lösung:

15 Praktikum KI SoSe 2005 Planungssprache STRIPS Beispiel Blocksworld: Lösung: pickup(C, A) putdowntable(C) pickuptable(B) putdown(B, C) pickuptable(A) putdown(A, B) a c b ac b ac b a c b

16 Praktikum KI SoSe 2005 Planungssprache STRIPS STRIPS – Sussman-Anomalie: Die Reihenfolge der Bearbeitung der Literale ist entscheidend Bsp: Sussman-Anomalie Anfangszustand: empty ontable(A) ontable(B) clear(B) on(C, A) clear(C) Zielzustand: empty on(b, c) on(a, b) ontable(c) %das war vorher oben clear(a) c a b c a b

17 Praktikum KI SoSe 2005 Planungssprache STRIPS STRIPS – Sussman-Anomalie: Nun wird zuerst das Ziel on(b,c) erfüllt Dann das Ziel on(a,b), welches on(b,c) wieder zerstört Also noch einmal on(b,c), welches wieder on(a,b) zerstört Schließlich ein letztes Mal on(a,b)

18 Praktikum KI SoSe 2005 Planungssprache STRIPS STRIPS – Sussman-Anomalie: pickuptable(b) putdown(b, c) pickup(b, c) putdowntable(b) pickup(c, a) putdowntable(c) pickuptable(a) putdown(a, b) pickup(a, b) putdowntable(a) pickuptable(b) putdown(b, c) pickuptable(a) putdown(a, b) a c b a c b a c b a c b a c b a c b a c b a c b

19 Praktikum KI SoSe 2005 Planung – Suche im Zustandsraum Vorherige Beispiele der Blocks-World waren Beispiele der Suche im Zustandsraum Zur Erinnerung: Knoten des Suchbaums: Zustände Kanten: Aktionen Suche kann prinzipiell wie in den ersten Vorlesungen behandelt ablaufen Forward-Search / Backward Search / Bidirectional Search Breitensuche / Tiefensuche / A*-Suche Heuristiken Anzahl der unerfüllten Literale Literal mit wenigsten Aktionen, die es erfüllen (most constrained variable heuristic, sh. CSP) Relaxiertes Problem Keine negativen Effekte der Aktionen Planungs-Graphen

20 Praktikum KI SoSe 2005 Planung – Suche im Planraum Nachteile der Suche im Zustandsraum: Keine Flexibilität bei der Plandurchführung Großer Suchraum Alternativer Ansatz: Suche im Planraum Knoten sind Pläne + resultierende Zustände Kanten sind Verfeinerungen der Pläne, d.h. pro Stufe im Suchbaum kommt eine Aktion hinzu Nachfolger-Funktion: Zusätzliche Aktion, die (mindestens) ein unerfülltes Literal erfüllen

21 Praktikum KI SoSe 2005 Planung – Suche im Planraum Bsp: Zustände: RightSockOn, LeftSockOn, RightShoeOn, LeftShoeOn Aktionen: RightShoe Precond: RightSockOn Effect:RightShoeOn RightSock Precond:{} Effect:RightSockOn LeftShoe Precond: LeftSockOn Effect:LeftShoeOn LeftSock Precond:{} Effect:LeftSockOn Goal: RightShoeOn LeftShoeOn Init: {}

22 Praktikum KI SoSe 2005 Planung – Suche im Planraum Ein Knoten enthält: Menge von Aktionen, die zum aktuellen Plan gehören Menge von Ordnungsrelationen unter den Aktionen A B bedeutet, dass Aktion A vor Aktion B ausgeführt werden muss ist transitiv, d.h. aus A B und B C folgt A C Menge von kausalen Verknüpfungen A p > B bedeutet, dass Aktion A die Vorbedingung p für Aktion B erfüllt Zwischen A und B darf somit keine Aktion stattfinden, die p negiert Bsp: RightSock RightSockOn > RightShoe Menge offener Literale (Vorbedingungen) Ein Knoten (ein Plan) ist konsistent, wenn Keine Zykel in der Ordnungsrelation vorkommen (d.h. nicht gleichzeitig A B und B A ) Keine Konflikte mit den kausalen Verknüpfungen enthalten sind (d.h. nicht A p > B, A X, X B und B mit Effekt p) Aktionen Start und Finish sind Bestandteil aller Knoten Start hat keine Vorbedingungen und den Initialzustand als Effekt Finish hat keinen Effekt und den Zielzustand als Vorbedingung

23 Praktikum KI SoSe 2005 Planung – Suche im Planraum Ablauf der Suche: 1. Starte mit dem leeren Plan, der nur Start und Finish enthält 2. Wähle eine offene Vorbedingung p (Verzweigungspunkt, Heuristik?!) und eine Aktion X, die diese Vorbedingung erfüllt (Verzweigungspunkt, Heuristik?!) 3. Falls X noch nicht in der Menge der Aktionen enthalten ist, füge X zu Menge Aktionen und die nicht erfüllten Vorbedingungen von X zur Menge der offenen Vorbedingungen hinzu. 4. Mache den entstehenden Plan konsistent: 1. Sei B eine Aktion, die p als Vorbedingung hat (Verzweigungspunkt). Füge X p > B zur Menge der kausalen Verknüpfungen und X B zur Menge der Ordnungsrelationen hinzu 2. Wenn X einen negativen Effekt q hat und eine kausale Verknüpfung A q > B existiert, füge X A oder B X zur Menge der Ordnungsrelationen hinzu (Verzweigungspunkt) 3. Kann der Plan nicht konsistent gemacht werden: Backtracking 5. Überprüfe, ob es noch nicht erfüllte Vorbedingungen gibt 1. Wenn nein, RETURN 2. Wenn ja, GOTO 2

24 Praktikum KI SoSe 2005 Planung – Suche im Planraum Bsp: Socken-und-Schuh-Problem, Ausschnitt aus dem Suchbaum Aktionen: Start, Finish Offene Vorbedingungen: RightShoeOn, LeftShoeOn Ordnungsrelationen: Start Finish Kausale Links: {} Aktionen: Start, Finish, RightShoe Offene Vorbedingungen: LeftShoeOn, RightSockOn Ordnungsrelationen: Start Finish, Start RightShoe, RightShoe Finish Kausale Links: RightShoe RightShoeOn > Finish Aktionen: Start, Finish, LeftShoe Offene Vorbedingungen: RightShoeOn, LeftSockOn Ordnungsrelationen: Start Finish, Start LeftShoe, LeftShoe Finish Kausale Links: LeftShoe LeftShoeOn > Finish Aktionen: Start, Finish, RightShoe, LeftShoe Offene Vorbedingungen: RightSockOn, LeftSockOn Ordnungsrelationen: Start Finish, Start LeftShoe, LeftShoe Finish, Start RightShoe, RightShoe Finish Kausale Links: LeftShoe LeftShoeOn > Finish, RightShoe RightShoeOn > Finish Aktionen: Start, Finish, RightShoe, RightSock Offene Vorbedingungen: LeftShoeOn Ordnungsrelationen: Start Finish, Start RightSock, RightSock Finish, RightSock RightShoe, Start RightShoe, RightShoe Finish Kausale Links: LeftShoe LeftShoeOn > Finish, RightShoe RightShoeOn > Finish RightShoe LeftShoe RightSock … … … … …

25 Praktikum KI SoSe 2005 Planung – Suche im Planraum Bsp: Socken-und-Schuh-Problems, Zielknoten

26 Praktikum KI SoSe 2005 Planung – Suche im Planraum Vorteile der partiellen Planung: Es werden nur notwendige Einschränkungen vorgenommen Die Ausführung des Plans ist flexibel Nähe zu CSP: Welche Vorbedingung soll als nächstes betrachtet werden Gute Heuristiken verfügbar Besonders gut bei Problemen, die sich mit Divide and Conquer lösen lassen

27 Praktikum KI SoSe 2005 Planung – Planungsgraphen Planungsgraphen bieten gute Heuristik für Suche im Zustandsraum und Suche im Planraum Enthalten partielle Pläne, die nicht offensichtlich unzulässig sind Sind in polynomieller Zeit aufzubauen Aufbau der Planungsgraphen Abfolge von Zustandsleveln und Aktionsleveln S 0 enthält alle Initialzustände A i enthält alle Aktionen, die unter den Vorbedingungen S i möglich sind plus Erhaltungsaktionen, die Zustand s in S i in Zustand s in S i+1 überführen S i+1 enthält alle Effekte der Aktionen in A i Wenn S i die gleichen Zustände wie S i+1 enthält, dann STOP

28 Praktikum KI SoSe 2005 Planung – Planungsgraphen Bsp: Kuchen haben, essen, backen

29 Praktikum KI SoSe 2005 Planung – Planungsgraphen Aktionen des Levels A i können sich gegenseitig ausschließen (mutual exclusion, mutex), wenn sie Inkonsistente Effekte haben, d.h. Aktion A hat Effekt p, Aktion B hat Effekt p Interferieren, d.h. Aktion A hat Effekt p, Aktion B hat Vorbedingung p ( A darf nicht vor B ausgeführt werden) Ausschließende Vorbedingungen haben, d.h. Aktion A hat Vorbedingung p, Aktion B hat Vorbedingung p Zustände p, q des Levels S i können mutex sein, wenn p = q p nur durch A und q nur durch B in A i erreicht werden können und A und B mutex sind

30 Praktikum KI SoSe 2005 Planung – Planungsgraphen Bsp: Eat(Cake) und Erhaltung von Have(Cake) haben inkonsistenten Effekt Have(Cake) Effekt von Eat(Cake) interferiert mit Vorbedingung der Erhaltung von Have(Cake) Bake(Cake) und Eat(Cake) haben die sich ausschließenden Vorbedingungen Have(Cake) und Have(Cake) Have(Cake) und Have(Cake) sind mutex Eaten(Cake) und Have(Cake) sind mutex, da Eat(Cake) und Erhaltung von Have(Cake) mutex sind

31 Praktikum KI SoSe 2005 Planung – Planungsgraphen Planungsgraphen für Heuristiken Ist Zielzustand p nicht in S final enthalten, so ist Planungsproblem nicht lösbar Zur Berechnung eines Schätzwertes bei gegebenem Zustand S, entwickle den Planungsgraphen mit S 0 = S (Level bezieht sich nachfolgend auf Level in Planungsgraphen) Max-Level-Heuristik: h(S) = maximales Level alles Zielzustände p von S Level-Sum-Heuristik: h(S) = Summe über die Level aller Zielzustände von S Set-Level-Heuristik: h(S) = Level, in dem alle Zielzustände das erste Mal nicht-mutex auftreten Es gilt: Max-Level ist zulässig (admissible), aber ungenau Level-Sum ist nicht zulässig (kann überschätzen), aber genau, gut für Divide and Conquer Probleme Set-Level ist zülässig, recht genau und gut für Probleme mit vielen Abhängligkeiten

32 Praktikum KI SoSe 2005 Planung – weitere Ansätze Aus Planungsgraphen kann direkt ein zulässiger Plan extrahiert werden GraphPlan-Algorithmus Mutex hat entscheidende Bedeutung Aufwändig Formulierung als Logik-Problem (in Aussagenlogik) Jede Aktion zu jedem Zeitschritt ist eine Aussage Finde Belegung der Aussagen (Aktion,Zeitpunkt) mit true / false, sodass initial_state successor_state_axioms precondition_axioms state_constrains goal(T) true ist Lösung mittels Resolution (Konvertierung in CNF erforderlich) Lokaler Suche Mehr dazu im AIMA ( )


Herunterladen ppt "Praktikum KI Teil VIII: Planung. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche nach einer."

Ähnliche Präsentationen


Google-Anzeigen