Informierte Suchverfahren

Ähnliche Dokumente
Grundlagen der Künstlichen Intelligenz

Heuristische Suche. Uninformierte (blinde) Suchverfahren. erzeugen systematisch neue Knoten im Suchbaum und führen jeweils den Zieltest durch;

3. Problemlösen durch Suche

Wissensbasierte Systeme

Uninformierte Suche in Java Informierte Suchverfahren

4. Kreis- und Wegeprobleme Abstände in Graphen

Grundlagen der Künstlichen Intelligenz

Vortrag. Suchverfahren der Künstlichen Intelligenz. Sven Schmidt (Technische Informatik)

15. Elementare Graphalgorithmen

9. Heuristische Suche

Einführung in Heuristische Suche

Wissensbasierte Suche

Eulerweg, Eulerkreis. Das Königsberger Brückenproblem. Definition 3.1. Ein Weg, der jede Kante von G genau einmal

2. Spiele. Arten von Spielen. Kombinatorik. Spieler haben festgelegte Handlungsmöglichkeiten, die durch die Spielregeln definiert werden.

Wissensbasierte Systeme

Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen

3.1 Konstruktion von minimalen Spannbäumen Es gibt zwei Prinzipien für die Konstruktion von minimalen Spannbäumen (Tarjan): blaue Regel rote Regel

Algorithmen II Vorlesung am

Dynamische Optimierung. Kapitel 4. Dynamische Optimierung. Peter Becker (H-BRS) Operations Research II Wintersemester 2014/ / 206

Einfacher Problemlösungsagent. Übersicht. Begriffsdefinitionen für Einfach-Probleme

\ E) eines Graphen G = (V, E) besitzt die gleiche Knotenmenge V und hat als Kantenmenge alle Kanten des vollständigen Graphen ohne die Kantenmenge E.

Ein Graph ist ein Paar (V,E), wobei V eine Menge von Knoten und E eine Menge von Kanten (v,w) mit v,w in V ist.

Wissensbasierte Systeme

6. Flüsse und Zuordnungen

Algo&Komp. - Wichtige Begriffe Mattia Bergomi Woche 6 7

Algorithmen und Datenstrukturen 2

Algorithmen und Datenstrukturen 2

Kapitel 4: Dynamische Datenstrukturen. Algorithmen und Datenstrukturen WS 2012/13. Prof. Dr. Sándor Fekete

7. Sortieren Lernziele. 7. Sortieren

Polygontriangulierung

Anwendungen. Für optimale Wege in DAGs gibt es eine Fülle von Anwendungen. Wir betrachten zwei:

Entscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen?

Eine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder

Algorithmen und Datenstrukturen 2

2. Spielbäume und Intelligente Spiele

Einführung in Suchverfahren

ADS: Algorithmen und Datenstrukturen 2

Datenstrukturen & Algorithmen Lösungen zu Blatt 6 FS 14

Grundlagen der KI + Reasoning Agents

Kombinatorische Optimierung

Überblick. TSP Vergleich der Lösungen. Das Travelling Salesman Problem. Nearest-Neighbor Heuristik für TSP

Kap. 7.1 Heuristiken Kap. 7.2 Approximative Algorithmen und Gütegarantien

14. Rot-Schwarz-Bäume

Kombinatorische Spiele mit Zufallselementen

Definition Gerichteter Pfad. gerichteter Pfad, wenn. Ein gerichteter Pfad heißt einfach, falls alle u i paarweise verschieden sind.

Quicksort ist ein Divide-and-Conquer-Verfahren.

4 Greedy-Algorithmen (gierige Algorithmen)

Suche in Spielbäumen Spielbäume Minimax Algorithmus Alpha-Beta Suche. Suche in Spielbäumen. KI SS2011: Suche in Spielbäumen 1/20

Algorithmik WS 07/ Vorlesung, Andreas Jakoby Universität zu Lübeck

Algorithmen und Datenstrukturen in der Bioinformatik Viertes Übungsblatt WS 05/06 Musterlösung

Seminar künstliche Intelligenz

Graphentheorie. Eulersche Graphen. Eulersche Graphen. Eulersche Graphen. Rainer Schrader. 14. November Gliederung.

Die Verbindung von Linearer Programmierung und Graphentheorie

Graphen: Datenstrukturen und Algorithmen

Informatik II, SS 2014

Vorlesung 4 BETWEENNESS CENTRALITY

Algorithmentheorie Maximale Flüsse

Datenstrukturen und Algorithmen

2. Woche Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung

S=[n] Menge von Veranstaltungen J S kompatibel mit maximaler Größe J

Routing Algorithmen. Begriffe, Definitionen

TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK

Kombinatorische Optimierung

11.1 Grundlagen - Denitionen

Uberblick 1. Kurzeste Wege 2. Sichtbarkeitsgraphen 3. Berechnung des Sichtbarkeitsgraphen 4. Kurzeste Wege fur polygonale Roboter 1

Algorithmen und Datenstrukturen Kapitel 10

Algorithmen und Datenstrukturen 2

Wiederholung zu Flüssen

Seminararbeit. Thema : Suchverfahren. Autor : Sven Schmidt

5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c)

3. Binäre Suchbäume. 3.1 Natürliche binäre Suchbäume. EADS 3.1 Natürliche binäre Suchbäume 78/598 ľernst W. Mayr

13. Binäre Suchbäume

Bipartite Graphen. Beispiele

Gliederung. Definition Wichtige Aussagen und Sätze Algorithmen zum Finden von Starken Zusammenhangskomponenten

Proseminar Online Algorithmen, Prof. Dr. Rolf Klein

3 Klassifikation wichtiger Optimierungsprobleme

5. Clusteranalyse. Lernziele: Grundlegende Algorithmen der Clusteranalyse kennen, ihre Eigenschaften

κ(k) k K S Algorithmus zur Bestimmung eines spannenden Baumes mit minimalen Kosten (Kruskal, 1965).

5. Clusteranalyse Vorbemerkungen. 5. Clusteranalyse. Grundlegende Algorithmen der Clusteranalyse kennen, ihre Eigenschaften

Das Heiratsproblem. Definition Matching

ADS: Algorithmen und Datenstrukturen 2

( )= c+t(n-1) n>1. Stand der Vorlesung Komplexität von Algorithmen (Kapitel 3)

Vorlesung Informatik 2 Algorithmen und Datenstrukturen. (20 Graphen) T. Lauer

Klausur Grundlagen der Künstlichen Intelligenz

Kapitel 2: Suche. Mögliche Ziele einer Suche: Künstliche Intelligenz und Suche. Zustandsraumsuche. finde eine Lösung. finde alle Lösungen

Kürzeste Wege in Graphen. Maurice Duvigneau Otto-von-Guericke Universität Fakultät für Informatik

Grundlagen: Algorithmen und Datenstrukturen

Kapitel 4: Netzplantechnik Gliederung der Vorlesung

Algorithmen & Komplexität

Der Alpha-Beta-Algorithmus

Aufgabe 1: Berechnen Sie für den in Abbildung 1 gegebenen Graphen den. Abbildung 1: Graph für Flussproblem in Übungsaufgabe 1

5. Lokale Suchverfahren. Beispiel TSP: k-change Nachbarschaft. Nachbarschaft. k-opt Algorithmus

Branch-and-Bound. Wir betrachten allgemein Probleme, deren Suchraum durch Bäume dargestellt werden kann. Innerhalb des Suchraums suchen wir

6. Flüsse in Netzwerken Berechnung maximaler Flüsse. dann berechnet der Markierungsalgorithmus für beliebige Kapazitätsfunktionen

Einführung in die Wissensverarbeitung und Data Mining

Transkript:

Informierte Suchverfahren Für größere Suchbäume sind Breiten- und Tiefesuche nicht effizient genug. Vielversprechender sind Ansätze, bei denen Problemwissen zur Steuerung des Suchprozesses eingesetzt wird. Dies kann dadurch geschehen, daß die Zustände (Knoten) danach bewertet werden, wie erfolgversprechend sie sind. Man schätzt beispielsweise für jeden Knoten, wie nahe er an einem Zielknoten liegt. Solch eine Bewertung nennt man heuristische Funktion. Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 68 Heuristische Funktion Definition 2.3. Eine Funktion, die jedem Zustand (Knoten) s eines Zustandsraums (Suchbaums) eine nichtnegative Zahl h(s) zuordnet, heißt heuristische Funktion. Für einen Zielzustand s gilt dabei h(s) = 0. Ein Suchverfahren, das eine heuristische Funktion zur Auswahl der zu expandierenden Zustände einsetzt, heißt informiertes Suchverfahren oder auch heuristisches Suchverfahren. Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 69

Beispiel 2.7. [Schiebepuzzle] Startzustand 5 4 6 1 8 7 3 2 1 2 3 8 4 Endzustand Mögliche heuristische Funktionen: h 1 (s) := Anzahl der Plättchen, die nicht an der richtigen Stelle liegen. Hier: h 1 (s) = 7. h 2 (s) := Summe der Entfernungen aller Plättchen von der Zielposition. Hier: h 2 (s) = 2 + 3 + 3 + 2 + 4 + 2 + 0 + 2 = 18. Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 70 h 1 = 3 h 2 = 6 8 3 2 1 4 h 1 = 3 h 2 = 5 8 3 2 1 4 h 1 = 3 h 2 = 4 8 1 3 2 4 h 1 = 3 h 2 = 3 8 1 3 2 4 1 2 3 8 4 h 1 = 0 h 2 = 0 1 3 8 2 4 h 1 = 1 h 2 = 1 1 3 8 2 4 h 1 = 2 h 2 = 2 Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 71

Die heuristische Funktion h 2 differenziert stärker als h 1, d.h. h 2 kann Zustände unterscheiden, die von h 1 gleich bewertet werden. Eine heuristische Funktion ist um so brauchbarer, je mehr Zustände sie unterschiedlich bewertet. Eine heuristische Funktion, die alle Zustände gleich bewertet, ist unbrauchbar. Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 72 Beispiel 2.8. [Routenplanung] Zur Abschätzung der Straßenentfernung wird die Luftlinienentfernung benutzt. Oradea 71 Neamt 151 75 140 99 Fagaras 118 80 Rimnicu Vilcea Timisoara 111 Lugoj 70 Mehadia 75 Dobreta 120 Craiova Pitesti 211 97 146 101 85 138 Bucharest 90 Giurgiu 87 Iasi 92 142 98 Urziceni Vaslui Hirsova 86 Eforie Straight line distance to Bucharest 366 Bucharest 0 Craiova 160 Dobreta 242 Eforie 161 Fagaras 178 Giurgiu 77 Hirsova 151 Iasi 226 Lugoj 244 Mehadia 241 Neamt 234 Oradea 380 Pitesti 98 Rimnicu Vilcea 193 253 Timisoara 329 Urziceni 80 Vaslui 199 374 Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 73

Bestensuche Bei der Bestensuche erfolgt die Expansion eines Knotens auf Basis der heuristischen Funktion. Hierzu werden in der Agenda die Knoten zusammen mit ihrer Bewertung abgelegt. Es wird nun jeweils der Knoten der Agenda expandiert, der die geringste Bewertung aufweist. Die Agenda hat also die Form einer Prioritätswarteschlange (priority queue). Ansonsten ist die Bestensuche analog zur Tiefen- und Breitensuche. Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 74 A:9 B:4 E:7 F:8 C:5 D:6 G:0 H:2 I: Schritt Agenda s akt 1 A:9 A 2 B:4, C:5, D:6 B 3 C:5, D:6, E:7, F:8 C 4 G:0, H:2, D:6, E:7, F:8 G K: Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 75

Algorithmus zur Bestensuche Algorithmus 2.3. [Bestensuche] Agenda := (Startknoten); while Agenda () do s akt := first(agenda); Entferne s akt aus der Agenda; if s akt ist Zielknoten then s akt ist Lösung; STOP; Agenda := einfuegen(agenda, Nachfolger(s akt )); end Problem hat keine Lösung; STOP; Beispiel 2.9. Beispiel 2.10. Suchbaum für Beispiel 2.7 mit Bestensuche. Tafel Bestensuche für die Suche einer Route von nach Bucharest. Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 76 h=366 Timisoara h=253 h=329 h=374 Timisoara h=329 h=374 Fagaras Oradea Rimnicu h=366 h=178 h=380 h=193 Timisoara h=329 h=374 Fagaras h=366 h=253 Oradea Rimnicu h=380 h=193 Bucharest h=0 Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 77

Eigenschaften der Bestensuche Definition 2.4. Eine heuristische Funktion h heißt fair gdw. es zu jedem n 0 nur endlich viele Knoten s gibt mit h(s) n. Fairness entspricht der Vollständigkeit bei uninformierten Suchverfahren. Ist eine heuristische Funktion fair, so wird ein Zielknoten gefunden, falls ein solcher existiert. Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 78 Bestensuche und Optimalität Die Bestensuche vernachlässigt die Kosten bei der Anwendnung der Operatoren. Wird die Güte einer Lösung charakterisiert durch diese Operatorkosten, so findet die Bestensuche allgemein keine optimale Lösung. Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 79

Beispiel 2.11. 118 75 71 Timisoara 111 Dobreta Oradea 140 70 75 Suche einer Route von nach Bucharest: 151 Lugoj Mehadia 120 99 Craiova Fagaras 80 Rimnicu Vilcea 97 Pitesti Neamt 146 101 85 138 211 90 Bucharest Giurgiu 87 Iasi Urziceni 92 142 98 Vaslui Hirsova 86 Eforie Straight line distance to Bucharest 366 Bucharest 0 Craiova 160 Dobreta 242 Eforie 161 Fagaras 178 Giurgiu 77 Hirsova 151 Iasi 226 Lugoj 244 Mehadia 241 Neamt 234 Oradea 380 Pitesti 98 Rimnicu Vilcea 193 253 Timisoara 329 Urziceni 80 Vaslui 199 374 Bestensuche wählt Route über und Fagaras, obwohl die Route über Rimnicu Vilcea und Pitesti kürzer ist. Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 80 Bewertung von Lösungen Definition 2.5. Es sei p = (s 0, s 1,..., s r ) eine Folge von Zuständen und s i+1 sei durch Anwendung eines Zustandsübergangsoperators auf s i erreichbar. Beim Übergang von s i nach s i+1 fallen Kosten in Höhe von k(s i, s i+1 ) an. Die Kosten k(p) der Zustandsfolge seien definiert durch: k(p) := Xr 1 k(s i, s i+1 ) i=0 Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 81

Für einen Zustand s sei: g (s) := inf{k(p) p ist Weg vom Startzustand nach s} h (s) := inf{k(p) p ist Weg von s zu einem Zielzustand} Problem: Finde (falls möglich) eine Zustandsfolge p vom Startzustand s 0 in einen Zielzustand z, die minimale Kosten aufweist, d.h. k(p ) = h (s 0 ) bzw. k(p ) = inf{g (z) z ist Zielzustand}. Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 82 Zulässiger Schätzer Definition 2.6. Eine heuristische Funktion h heißt zulässiger Schätzer bzw. zulässig gdw. h(s) h (s) für alle Zustände s des Zustandsraums. Beispiel 2.12. Zulässige Schätzer sind: die heuristischen Funktionen aus Beispiel 2.3 für das Schiebepuzzle und die Luftlinienentfernung beim Routenproblem. Bei kombinatorischen Optimierungsproblemen werden als zulässige Schätzer häufig effizient lösbare Relaxationen des Problems verwendet. Beispiel: minimaler Spannbaum als Relaxation für die Berechnung eines minimalen Hamiltonschen Weges. Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 83

Der A*-Algorithmus Der A*-Algorithmus basiert auf: 1. einer Bewertung g(s) für die Zustände, wobei g(s) die bisher geringsten Kosten zur Erreichung des Zustands s angibt, 2. einer (üblicherweise zulässigen) heuristischen Funktion h(s) zur Schätzung der Restkosten und 3. einer Bewertungsfunktion Φ(s) = g(s) + h(s), die zur Auswahl des zu expandierenden Zustandes dient. Steuerung der Suche bei A*: Es wird der Knoten der Agenda expandiert, der die geringste Bewertung Φ(s) aufweist. Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 84 Folgende Punkte sind beim A*-Algorithmus zu berücksichtigen: Durch eine Verringerung von g(s) für einen Zustand s kann auch eine Verringerung von Φ(s) auftreten. Dies kann im allgemeinen auch für schon expandierte Knoten der Fall sein! Deshalb werden schon expandierte Knoten in einer speziellen Liste Closed verwaltet. Bewertungen sind dementsprechend anzupassen. Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 85

Algorithmus 2.4. [A*] Agenda := (Startknoten); g(startknoten) := 0; p(startknoten) = nil; while Agenda () do s akt := first(agenda); Entferne s akt aus der Agenda; Füge s akt in Closed ein; if s akt ist Zielknoten then s akt ist Lösung; STOP; forall s Nachfolger(s akt ) do if s / Agenda s / Closed then g(s) := g(s akt ) + k(s akt, s); p(s) := s akt ; Füge s in die Agenda mit Bewertung Φ(s) ein; else if g(s akt ) + k(s akt, s) < g(s) then Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 86 g(s) := g(s akt ) + k(s akt, s); p(s) := s akt ; if s Closed then Entferne s aus Closed; Füge s in die Agenda ein; endif endif endif end end Problem hat keine Lösung; STOP; Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 87

Für einen Knoten s gibt p(s) den Vorgängerknoten auf dem bisher besten Weg an. Den bisher besten Weg zu einem Knoten s erhält man also, in dem man von s sukzessive den Verweisen p(.) folgt. Alternativ kann man an jedem Knoten den kompletten bisher optimalen Pfad speichern. Der notwendige Speicherplatzverbrauch für die Pfade ist dann aber quadratisch in der Länge des Suchpfades. Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 88 A*-Anwendungsbeispiele Beim Routenproblem berechnet der A*-Algorithmus die kürzeste Rou- Beispiel 2.13. te. f=0+366 =366 f=140+253 =393 Timisoara f=118+329 =447 f=75+374 =449 Timisoara f=118+329 =447 Fagaras Oradea Rimnicu f=280+366 f=239+178 f=146+380 f=220+193 =646 =417 =526 =413 f=75+374 =449 Timisoara f=118+329 f=75+374 =447 =449 Fagaras Oradea Rimnicu f=280+366 f=239+178 f=146+380 =646 =417 =526 Craiova Pitesti f=366+160 =526 f=317+98 =415 f=300+253 =553 Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 89

O Z N A I T 380 400 S R F V L P D M C 420 G B U H E Durch die Schätzfunktion findet die Suche zielgerichtet statt. Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 90 Beispiel 2.14. Man benutze den A*-Algorithmus, um eine möglichst kurze Folge von Verschiebeoperationen zu finden, die den Zustand 1 4 2 8 3 in den Endzustand überführen. Tafel. Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 91

Beispiel 2.15. [Rucksackproblem] Das Rucksackproblem lautet: Gegeben ist eine Menge G = {g 1,... g n } von Gegenständen. Jeder Gegenstand g G hat ein Gewicht w(g) und liefert einen Profit p(g). Weiterhin ist ein maximales Gesamtgewicht C gegeben. Es soll nun eine Teilmenge F G der Gegenstände bestimmt werden, so daß: der Gesamtprofit P g F p(g) von F maximal ist unter der Nebenbedingung, daß das Gesamtgewicht der ausgewählten Gegenstände C ist, d.h. P g F w(g) C. Zentrale Fragen: Wie kann man das Rucksackproblem als Suchproblem formulieren. Was muß ein A*-Algorithmus für das Rucksackproblem berücksichtigen? Wie erhält man eine Abschätzung des noch erzielbaren Nutzens? Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 92 A* und andere Suchverfahren Der A*-Algorithmus enthält die folgenden Algorithmen als Spezi- Bemerkung 2.1. alfälle: Für k 0 und h 0 erhält man den Dijkstra-Algorithmus. Für k 0 erhält man die Bestensuche. Für k 1 und h 0 erhält man die Breitensuche. Für k 1 und h 0 erhält man die Tiefensuche, wenn man Wiederbelebungen verbietet (Übergang von Closed in die Agenda). Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 93

Eigenschaften von A* Satz 2.1. [Terminierung, Fairness] Es gelte: Jeder Zustand besitzt nur endlich viele Nachfolgerzustände, es existiere ɛ, so daß für die Kosten k(s, s ) bei einem Zustandsübergang stets k(s, s ) ɛ > 0 gilt und es gibt einen erreichbaren Zielzustand. Dann terminiert A* nach endlich vielen Schritten mit dem Erreichen eines Zielzustandes. Beweis. Tafel. Bemerkung 2.2. Unter den gegebenen Voraussetzungen endet die Suche u.u. in einem nicht optimalen Zielzustand. Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 94 Eigenschaften von A* (2) Satz 2.2. [Optimalität] Es gelte: Gegeben sind die Voraussetzungen von Satz 2.1 und h ist zulässig. Dann ist der Zielknoten z, mit dem A* terminiert, ein optimaler Zielknoten, die minimalen Kosten ergeben sich durch g(z) und ausgehend von p(z) kann eine optimale Zustandsfolge ermittelt werden. Beweis. Tafel. Korollar 2.3. Gegeben seien die Voraussetzungen von Satz 2.2. Der gefundene optimale Zielknoten sei z. Dann wurden während des Laufs von A* nur Zustände s mit Φ(s) g(z) expandiert. Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 95

Wahl guter Schätzer Die Eigenschaften der heuristischen Funktion haben einen wesentlichen Einfluß auf die Performanz der Suche mit A*. Eine zulässige heuristische Funktion ist um so besser, je näher sie dem Optimalwert zur Erreichung eines Zielzustandes kommt. Definition 2.7. Für zwei zulässige Schätzer h und h heißt: h besser informiert als h gdw. h(s) < h (s) für alle Zustände s gilt. h nicht schlechter informiert als h gdw. h(s) h (s) für alle Zustände s gilt. Satz 2.4. Es gelte: Gegeben sind die Voraussetzungen von Satz 2.2, A bzw. A seien A*-Algorithmen, die zulässige Schätzer h bzw. h verwenden und Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 96 h sei besser informiert als h. Dann wird jeder Zustand s, der von A expandiert wird, auch von A expandiert. Beweis. Tafel. Satz 2.5. Es gelte: Gegeben sind die Voraussetzungen von Satz 2.1 und h(s) (1 + ɛ)h (s) für alle Zustände s. Dann gilt für den vom A*-Algorithms ermittelten Zielzustand z: g(z) (1 + ɛ)g(z ) mit z ist Zielzustand einer optimalen Lösung. Beweis. Tafel. Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 97

Monotone Schätzer Definition 2.8. Gegeben sei eine nichtnegative Kostenfunktion k. Eine heuristische Funktion h heißt monotoner Schätzer gdw. gilt: h(z) = 0 für alle Zielzustände z. Für alle Zustände s und alle Nachfolger s von s gilt: h(s) k(s, s ) + h(s ) Beispiel 2.16. Alle Schätzer aus Beispiel 2.12 sind auch monotone Schätzer. Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 98 Satz 2.6. Es gelte: Gegeben sind die Voraussetzungen von Satz 2.1 und h sei ein monotoner Schätzer. Dann ist h auch ein zulässiger Schätzer. Ist der Knoten s durch Expansion des Knotens s entstanden, so gilt Φ(s) Φ(s ). Es gibt keine Wiederbelebung von Zuständen, d.h. ein Knoten, der expandiert wurde, wird nie mehr selektiert. Beweis. Tafel. Satz 2.7. h sei ein zulässiger Schätzer. Dann existiert ein monotoner Schätzer h, der nicht schlechter informiert ist als h. Beweis. Betrachte Zustand s mit Vorgänger s pre : j h h(s) (s) := h(s pre ) k(s pre, s) falls h(spre ) k(s pre, s) + h(s) sonst Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 99

Dann gilt: h ist monoton. h ist zulässig, weil h zulässig ist. h(s) h (s), also ist h besser informiert als h. Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 100 2. Suchverfahren Zusammenfassung Zusammenfassung des Kapitels Zustandsraum: Zustände, Zustandsübergänge, Startzustand, Zielzustände Systematische Suche im Zustandsraum: Breitensuche, Tiefensuche Heuristische Funktionen: Schätzung der Entfernung zum Ziel Bestensuche garantiert keine Optimalität A*: Operatorkosten plus heuristischer Funktion A* liefert optimale Lösungen bzgl. Operatorkosten Peter Becker, Wissensbasierte Systeme I FH Bonn-Rhein-Sieg, SS 03 101