Grundlagen der Künstlichen Intelligenz 3. März 2014 — 3. Klassische Suche: Zustandsräume Grundlagen der Künstlichen Intelligenz 3.1 Klassische Suchprobleme 3. Klassische Suche: Zustandsräume 3.2 Formalisierung Malte Helmert 3.3 Zustandsraumsuche Universität Basel 3. März 2014 3.4 Zusammenfassung M. Helmert (Universität Basel) Grundlagen der Künstlichen Intelligenz 3. Klassische Suche: Zustandsräume 3. März 2014 1 / 22 M. Helmert (Universität Basel) Klassische Suchprobleme 3. Klassische Suche: Zustandsräume Grundlagen der Künstlichen Intelligenz 3. März 2014 2 / 22 Klassische Suchprobleme Klassische Suchprobleme informell Eine der einfachsten“ und wichtigsten Klassen ” von KI-Problemen sind (klassische) Suchprobleme. 3.1 Klassische Suchprobleme Aufgabe des Agenten: I von gegebenem Anfangszustand I durch Anwendung von Aktionen I einen Zielzustand erreichen Performance-Mass: Aktionskosten minimieren M. Helmert (Universität Basel) Grundlagen der Künstlichen Intelligenz 3. März 2014 3 / 22 M. Helmert (Universität Basel) Grundlagen der Künstlichen Intelligenz 3. März 2014 4 / 22 3. Klassische Suche: Zustandsräume Klassische Suchprobleme Motivierendes Beispiel: 15-Puzzle 9 5 2 7 3 15 4 12 14 6 13 3. Klassische Suche: Zustandsräume Klassische Suchprobleme Klassische Annahmen 1 5 2 6 3 7 1 11 9 10 11 10 8 13 14 15 Klassische“ Annahmen: ” I einzelner Agent in Umgebung (ein Agent) 4 8 12 I kennt immer genauen Weltzustand (vollständig beobachtbar) I Zustand ändert sich nur durch den Agenten (statisch) I endlich viele mögliche Zustände/Aktionen (insbes. diskret) I Aktionen haben deterministischen Einfluss auf Zustand können alle verallgemeinert werden (aber nicht in diesem Kapitel) Im folgenden lassen wir klassisch“ der Einfachheit halber weg. ” M. Helmert (Universität Basel) Grundlagen der Künstlichen Intelligenz 3. Klassische Suche: Zustandsräume 3. März 2014 5 / 22 M. Helmert (Universität Basel) Klassische Suchprobleme 3. Klassische Suche: Zustandsräume Einordnung Grundlagen der Künstlichen Intelligenz 3. März 2014 Klassische Suchprobleme Beispiele für Suchprobleme Einordnung: I Klassische Suchprobleme Umgebung: Spielzeugprobleme“ (toy problems): kombinatorische Puzzles ” (Zauberwürfel, 15-Puzzle, Türme von Hanoi, . . . ) I Ablaufplanung (scheduling) in Fertigungsanlagen I Anfrageoptimierung (query optimization) in Datenbanken I NPCs in Computerspielen I Code-Optimierung in Compilern I Verifikation von Soft- und Hardware I Sequenzalignment in der Bioinformatik I Routenplanung (z. B. Google Maps) I ... I statisch vs. dynamisch I deterministisch vs. nicht-deterministisch vs. stochastisch I vollständig vs. partiell vs. nicht beobachtbar I I diskret vs. stetig ein Agent vs. mehrere Agenten Lösungsansatz: I 6 / 22 problemspezifisch vs. allgemein vs. lernend Tausende von praktischen Beispielen! M. Helmert (Universität Basel) Grundlagen der Künstlichen Intelligenz 3. März 2014 7 / 22 M. Helmert (Universität Basel) Grundlagen der Künstlichen Intelligenz 3. März 2014 8 / 22 3. Klassische Suche: Zustandsräume Klassische Suchprobleme 3. Klassische Suche: Zustandsräume Formalisierung Klassische Suche: Überblick Kapitelüberblick klassische Suche: I 3.–5. Einführung I I I I 3.2 Formalisierung 3. Zustandsräume 4. Repräsentation von Zustandsräumen 5. Beispiele von Zustandsräumen folgende Kapitel: Suchalgorithmen M. Helmert (Universität Basel) Grundlagen der Künstlichen Intelligenz 3. März 2014 3. Klassische Suche: Zustandsräume 9 / 22 M. Helmert (Universität Basel) Formalisierung 3. Klassische Suche: Zustandsräume Formalisierung Grundlagen der Künstlichen Intelligenz 3. März 2014 10 / 22 Formalisierung Zustandsräume Definition (Zustandsraum) Ein Zustandsraum ist ein 6-Tupel S = hS, A, cost, T , s0 , S? i mit I S endliche Menge von Zuständen Um Suchprobleme sauber algorithmisch fassen zu können, benötigen wir eine formale Definition. I A endliche Menge von Aktionen I cost : A → R+ 0 Aktionskosten I grundlegendes semantisches Konzept: Zustandsräume I I Zustandsräume sind (annotierte) Graphen T ⊆ S × A × S Transitionsrelation oder Übergangsrelation; deterministisch in hs, ai (siehe nächste Folie) I Pfade zu Zielzuständen entsprechen Lösungen I s0 ∈ S Anfangszustand I kürzeste Pfade entsprechen optimalen Lösungen I S? ⊆ S Menge der Zielzustände I auch: Transitionssystem (transition system) I englisch: state space, state, action, action costs, transition relation, initial state, goal states Vorbemerkungen: I M. Helmert (Universität Basel) Grundlagen der Künstlichen Intelligenz 3. März 2014 11 / 22 M. Helmert (Universität Basel) Grundlagen der Künstlichen Intelligenz 3. März 2014 12 / 22 3. Klassische Suche: Zustandsräume Formalisierung Zustandsräume: Transitionen, Determinismus 3. Klassische Suche: Zustandsräume Formalisierung Zustandsraum: Beispiel Zustandsräume werden oft als gerichtete Graphen dargestellt. Definition (Transition, deterministisch) Zielzustände I Zustände: Graphknoten Sei S = hS, A, cost, T , s0 , S? i ein Zustandsraum. I Transitionen: beschriftete Kanten Die Tripel hs, a, s 0 i ∈ T heissen Transitionen/Zustandsübergänge. I Zielzustände: markiert D (hier: durch Ellipse) a Transitionen sind deterministisch in hs, ai: s → − s1 und s → − s2 mit s1 6= s2 ist nicht erlaubt. Grundlagen der Künstlichen Intelligenz 3. März 2014 3. Klassische Suche: Zustandsräume A I Aktionen: die Kantenbeschriftungen I Aktionskosten: separat anzugeben E (oder implizit = 1) M. Helmert (Universität Basel) B I Anfangszustand: eingehender Pfeil Wir sagen S hat die Transition hs, a, s 0 i, falls hs, a, s 0 i ∈ T und a schreiben dafür s → − s 0 sowie s → s 0 , wenn a nicht interessiert. a C (hier: Färbung statt Beschriftung) 13 / 22 M. Helmert (Universität Basel) Formalisierung 3. Klassische Suche: Zustandsräume Zustandsräume: Begriffe F Anfangszustand Grundlagen der Künstlichen Intelligenz Zustandsräume: Begriffe Wir verwenden übliche Begriffe aus der Graphentheorie. Definition (Vorgänger, Nachfolger, anwendbare Aktionen) Definition (Pfad) Sei S = hS, A, cost, T , s0 , S? i ein Zustandsraum. Sei S = hS, A, cost, T , s0 , S? i ein Zustandsraum. Seien ∈ S Zustände mit s → I s ist Vorgänger von s 0 I s 0 ist Nachfolger von s 14 / 22 Formalisierung Wir verwenden übliche Begriffe aus der Graphentheorie. s, s 0 3. März 2014 s 0. Seien s (0) , . . . , s (n) ∈ S Zustände und π1 , . . . , πn ∈ A Aktionen, π1 πn so dass s (0) −→ s (1) , . . . , s (n−1) −→ s (n) . a Wenn s → − s 0 gilt, ist die Aktion a anwendbar in s. I π = hπ1 , . . . , πn i ist Pfad von s (0) nach s (n) I Länge des Pfads: |π| = n I Kosten des Pfads: cost(π) = Pn i=1 cost(πi ) Anmerkungen: M. Helmert (Universität Basel) Grundlagen der Künstlichen Intelligenz 3. März 2014 15 / 22 I Pfade der Länge 0 sind erlaubt I manchmal nennt man auch die Zustandsfolge hs (0) , . . . , s (n) i oder die Folge hs (0) , π1 , s (1) , . . . , s (n−1) , πn , s (n) i Pfad M. Helmert (Universität Basel) Grundlagen der Künstlichen Intelligenz 3. März 2014 16 / 22 3. Klassische Suche: Zustandsräume Formalisierung 3. Klassische Suche: Zustandsräume Zustandsraumsuche Zustandsräume: Begriffe Weitere Begriffe: Definition (erreichbar, Lösung, optimal) Sei S = hS, A, cost, T , s0 , S? i ein Zustandsraum. I Zustand s ist erreichbar, wenn Pfad von s0 zu s existiert. I Ein Pfad von einem Zustand s ∈ S zu einem Zustand s? ∈ S? ist Lösung für/von s. I Eine Lösung für s0 ist Lösung für/von S. I Optimale Lösungen (für s) haben minimale Kosten unter allen Lösungen (für s). M. Helmert (Universität Basel) Grundlagen der Künstlichen Intelligenz 3. Klassische Suche: Zustandsräume 3.3 Zustandsraumsuche 17 / 22 M. Helmert (Universität Basel) Zustandsraumsuche 3. Klassische Suche: Zustandsräume 3. März 2014 Zustandsraumsuche 3. März 2014 18 / 22 Zustandsraumsuche Lernziele Zustandsraumsuche Lernziele zum Thema Zustandsraumsuche I Zustandsraumsuche verstehen: Worin besteht das Problem und wie formalisieren wir es? Zustandsraumsuche Zustandsraumsuche ist das algorithmische Problem, Lösung in Zustandsräumen zu finden oder zu beweisen, dass keine Lösung existiert. Bei der optimalen Zustandsraumsuche wird zusätzlich gefordert, dass nur optimale Lösungen gefunden werden. M. Helmert (Universität Basel) Grundlagen der Künstlichen Intelligenz Grundlagen der Künstlichen Intelligenz 3. März 2014 19 / 22 I Suchalgorithmen bewerten: Vollständigkeit, Optimalität, Zeit-/Speicheraufwand I Suchalgorithmen kennenlernen: uninformiert und informiert, Baum- und Graphensuche I Heuristiken für Suchalgorithmen bewerten: Zielerkennung, Sicherheit, Zulässigkeit, Konsistenz I effiziente Implementierung von Suchalgorithmen I experimentelle Bewertung von Suchalgorithmen I Entwurf und Vergleich von Heuristiken für Suchalgorithmen M. Helmert (Universität Basel) Grundlagen der Künstlichen Intelligenz 3. März 2014 20 / 22 3. Klassische Suche: Zustandsräume Zusammenfassung 3. Klassische Suche: Zustandsräume Zusammenfassung Zusammenfassung 3.4 Zusammenfassung I klassische Suchprobleme: finde Aktionsfolge vom Anfangszustand zu einem Zielzustand I Performance-Mass: Summe von Aktionskosten Formalisierung über Zustandsräume: I I M. Helmert (Universität Basel) Grundlagen der Künstlichen Intelligenz 3. März 2014 21 / 22 Zustände, Aktionen, Aktionskosten, Transitionen, Anfangszustand, Zielzustände I Begriffe zu Transitionen, Pfaden, Lösungen I Definition (optimale) Zustandsraumsuche M. Helmert (Universität Basel) Grundlagen der Künstlichen Intelligenz 3. März 2014 22 / 22