Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Teil II: Informierte Suche

Ähnliche Präsentationen


Präsentation zum Thema: "Teil II: Informierte Suche"—  Präsentation transkript:

1 Teil II: Informierte Suche
Praktikum KI Teil II: Informierte Suche

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

3 Informierte Suche Informierte Suchstrategien Heuristiken Greedy Search
A* Search Heuristiken Eigenschaften Entwicklung Beispiele Praktikum KI SoSe 2005

4 Informierte Suche „Uninformierte“ Suchalgorithmen arbeiten den Suchraum systematisch, aber ohne weiteres problemspezifisches Wissen ab Mehr problemspezifisches Wissen kann die Suche schneller zum Ziel führen Heuristiken bewerten die Güte eines Zustands und steuern dadurch die Suche Praktikum KI SoSe 2005

5 Informierte Suche Wiederholung allgemeiner Suchalgorithmus mit Tree- Search : Noch nicht expandierte Nachfolgerknoten kommen in die „fringe“ Aus der fringe wird geeignet der nächste zu expandierende Knoten ausgewählt Praktikum KI SoSe 2005

6 Informierte Suche Allgemeiner Ansatz zur informierten Suche: Best-First Search Der jeweils bzgl. einer Bewertungsfunktion f (n) beste Knoten in der fringe wird expandiert (=> fringe ist eine Prioritätswarteschlange) Bewertungsfunktion f(n) setzt sich aus Heuristik h(n) und Geschichte des Knotens g(n) zusammen Spezialfälle dieses allgemeinen Ansatzes: Greedy Search A* Search Aber auch uninformierte Suchstrategien! Praktikum KI SoSe 2005

7 Informierte Suche Beispiele: Hierbei sind Greedy Search f(n) = h(n)
A*-Search f(n) = g(n) + h(n) Breitensuche f(n) = g(n) Hierbei sind h(n) geschätze Kosten von Knoten n zum Ziel (Heuristik) g(n) bisherige Kosten auf dem Weg vom Startknoten bis Knoten n Praktikum KI SoSe 2005

8 Informierte Suche Anwendungsbeispiel: Kürzeste Strecke von Lübeck nach Berlin Geschätzte Kosten bis Berlin h Tatsächliche Streckenkosten Praktikum KI SoSe 2005

9 Informierte Suche: Greedy
Anwendungsbeispiel: Greedy Search HL h HH HRO Praktikum KI SoSe 2005

10 Informierte Suche: Greedy
Anwendungsbeispiel: Greedy Search HL h HH HRO WK HL Praktikum KI SoSe 2005

11 Informierte Suche: Greedy
Anwendungsbeispiel: Greedy Search HL h HH HRO WK HL HH HRO B Praktikum KI SoSe 2005

12 Informierte Suche: Greedy
Anwendungsbeispiel: Greedy Search HL h HH HRO WK HL HH HRO B Praktikum KI SoSe 2005

13 Informierte Suche: Greedy
Was das Beispiel zeigt: Gier ist nicht immer gut … Optimalität wird nicht erreicht Was das Beispiel nicht zeigt (aber trotzdem stimmt): Greedy-Suche nicht vollständig, da Zykel möglich Zeitbedarf O(bm) Speicherbedarf O(bm) (b…branching factor, m… maximale Tiefe des Suchbaums) Praktikum KI SoSe 2005

14 Informierte Suche: A* Gibt es einen optimalen Algorithmus?
Es reicht nicht aus, nur die verbleibende Entfernung zum Ziel zu betrachten Auch der bis dato zurückgelegte Weg ist entscheidend A*-Suche: f(n) = g(n) + h(n) Bedingung(en) an die Heuristik Zulässig (Niemals überschätzen): c(n,z) ≥ h(n), c(n,z) … kürzester Weg von n zum Ziel z Konsistent (bewirkt aufsteigende f-Werte entlang jedes Pfades): h(n) ≤ c(n,n‘) + h(n‘), für n‘ Nachfolger von n Damit A*-Suche mit Tree-Search optimal ist, reicht zulässig aus (sh. Nächste Folie) Praktikum KI SoSe 2005

15 Informierte Suche: A* Beweis: Sei z ein Zielknoten im Suchbaum,
z‘ der optimale Zielknoten (=> h(z‘) = 0) und n ein Knoten auf dem optimalen Weg zum Ziel z‘ Dann gilt: f(n) = g(n) + h(n) ≤ g(n) + c(n,z‘) = g(z‘) = f(z‘) ≤ f(z) Falls z nicht optimal ist, ist also f(n) < f(z) Damit wird n eher aus der fringe expandiert als z Mit der Expansion von n kommen dessen Nachfolger in die fringe Via vollständiger Induktion werden also alle Knoten des optimalen Pfades vor z expandiert, damit also auch z‘. Praktikum KI SoSe 2005

16 Informierte Suche: A* Anwendungsbeispiel: A* Search mit Tree-Search HL
234=0+234 h HH 319=65+254 HRO 313= Praktikum KI SoSe 2005

17 Informierte Suche: A* Anwendungsbeispiel: A* Search mit Tree-Search HL
234=0+234 h HH 319=65+254 HRO 313= WK 343=250+93 HL 483= Praktikum KI SoSe 2005

18 Informierte Suche: A* Anwendungsbeispiel: A* Search mit Tree-Search HL
234=0+234 h HRO 313= HH 319=65+254 HL 483= WK 343=250+93 KI 455= H 464= HL 364= HB 592= WK 339=246+93 Praktikum KI SoSe 2005

19 Informierte Suche: A* Anwendungsbeispiel: A* Search mit Tree-Search HL
234=0+234 h HRO 313= HH 319=65+254 HL 483= WK 343=250+93 KI 455= H 464= HL 364= HB 592= WK 339=246+93 HH 681= B 352=352+0 HRO 569= Praktikum KI SoSe 2005

20 Informierte Suche: A* Anwendungsbeispiel: A* Search mit Tree-Search HL
234=0+234 h HRO 313= HH 319=65+254 HL 483= WK 343=250+93 KI 455= H 464= HL 364= HB 592= WK 339=246+93 HH 681= B 352=352+0 HRO 569= Praktikum KI SoSe 2005

21 Informierte Suche: A* Eigenschaften von A*-Search mit Tree-Search
Optimal für zulässige Heuristik Es wird kein Knoten mit f(n) > f(z‘) expandiert => Vollständig, falls alle Kantengewichte > ε > 0 => Speicherbedarf O(bdz‘) => Zeitbedarf O(bdz‘) Was passiert bei Graph-Search? Ohne Zusatzvoraussetzungen / Zusatzaufwand geht Optimalität verloren Für Optimalität: Es muss sichergestellt werden, dass immer der kürzeste Weg zum Knoten gespeichert wird Extra Überprüfung für jeden Knoten oder Konsistente Heuristik verwenden Praktikum KI SoSe 2005

22 Heuristiken Wie erzeugt man Heuristiken? Wie bewertet man Heuristiken?
Relaxieren des Problems Teilprobleme lösen (+ Musterdatenbanken anlegen) Kombination bekannter Heuristiken Wie bewertet man Heuristiken? Dominanz Praktikum KI SoSe 2005

23 Heuristiken: Relaxierung
Relaxieren des Problems an einem Beispiel: Für 8-Puzzle gelten folgende Regeln: Man darf einen Stein nur um ein Feld bewegen Man darf einen Stein nur auf ein freies Feld bewegen Praktikum KI SoSe 2005

24 Heuristiken: Relaxierung
Verzichte nun auf einzelne Regeln (Relaxieren des Problems) Lösung wird einfacher Jede Lösung des komplizierten Problems ist auch Lösung des relaxierten (einfachen) Problems, da dessen Regeln natürlich eingehalten werden Die beste Lösung des relaxierten Problems ist besser oder gleich der Lösung des komplizierten Problems und ist somit zulässige Heuristik für das komplizierte Problem Es gilt auch, dass die so erhaltenen Heuristiken konsistent sind (warum?) Praktikum KI SoSe 2005

25 Heuristiken: Relaxierung
Beispiel: Keine Regeln Lösung: Jeden Stein direkt auf seinen Platz „schieben“ h1(n) = Anzahl der falsch platzierten Steine Im Bild: h1(n) = 6 Praktikum KI SoSe 2005

26 Heuristiken: Relaxierung
Beispiel: Mehrfachbelegung eines Feldes erlaubt Verzicht auf Regel „ Man darf einen Stein nur auf ein freies Feld bewegen“ Lösung: Steine nacheinander in e(S) Zügen auf ihren Platz schieben e(S) = Manhattendistanz h2(n) = ΣSe(S) Im Bild: h2(n) = 14 Praktikum KI SoSe 2005

27 Heuristiken: Relaxierung
Beispiel: Springen von Steinen erlaubt Verzicht auf Regel „ Man darf einen Stein nur um ein Feld bewegen“ Lösung: ? Praktikum KI SoSe 2005

28 Heuristiken: Dominanz
Das 8-Puzzle ohne Regeln ist Relaxierung des 8-Puzzles mit der Regel „Steine nur um ein Feld bewegen“ Damit gilt h1(n) ≤ h2(n) Man sagt „Heuristik h2 dominiert h1“ Konsequenz: Die A*-Suche mit h2 liefert immer schneller Ergebnisse als die Suche mit h1 Beweis (Gilt nur für konsistente Heuristiken! Warum?): A*-Suche expandiert alle Knoten n mit f(n) < f(z‘) und keinen mit f(n)> f(z‘) Für Zielknoten z‘ gilt h(z‘)=0, also f(z‘)=g(z‘) unabhängig von der Heuristik Damit gibt es für h1 < h2 mehr Knoten, die noch expandiert werden, d.h. Knoten mit g(n) + h1(n) = f1(n) < f(z‘) < f2(n) = g(n) + h2(n) Praktikum KI SoSe 2005

29 Heuristiken: Teilprobleme lösen
Heuristiken durch das Lösen von Teilproblemen gewinnen Beispiel: 8-Puzzle, bringe die Steine 1-4 in die richtige Reihenfolge Ist einfacher, da die entstehende Reihenfolge von 5-8 egal ist Somit auch zulässig Es gilt auch hier wieder, dass solche Heuristiken konsistent sind (warum?) Praktikum KI SoSe 2005

30 Heuristiken: Teilprobleme lösen
Grundlegende Idee: Alle möglichen Instanzen der Teilprobleme vorher lösen und Lösung abspeichern -> Musterdatenbank Während der Suche nach der Lösung des Gesamtproblems für jeden Zustand die Instanz des Teilproblems bestimmen Optimale Kosten der Lösung dieser Instanz des Teilproblems geben Heuristik für Lösung des Gesamtproblems Eigentliche Lösung des Teilproblems interessiert nicht Datenstruktur: Z.B. Hash-Table Praktikum KI SoSe 2005

31 Heuristiken: Maximum-Heuristik
Was macht man, wenn man mehrere Heuristiken zur Verfügung hat, die sich nicht dominieren? Maximum bilden! h(n) = max {h1(n), …, hk(n)} Maximum zulässiger Heuristiken ist wieder zulässig Maximum konsistenter Heuristiken ist wieder konsistent Praktikum KI SoSe 2005


Herunterladen ppt "Teil II: Informierte Suche"

Ähnliche Präsentationen


Google-Anzeigen