Künstliche Intelligenz

Ähnliche Dokumente
Künstliche Intelligenz

Künstliche Intelligenz

Wissensbasierte Systeme. Kombinatorische Explosion und die Notwendigkeit Heuristischer Suche. Heuristiken und ihre Eigenschaften

Zustandsraumsuche: Blinde und Heuristische Suche. Blinde und Heuristische Suche

Uninformierte Suche in Java Informierte Suchverfahren

Einführung in Heuristische Suche

Uninformierte Suche in Java Informierte Suchverfahren

9. Heuristische Suche

Beispiele. mit. Beispiel 2.3. Suche einen Weg von nach. Tiefensuche bzw. Breitensuche.

Intelligente Systeme

Übersicht. Informierte (heuristische) Suche. Algorithmus Bester-Zuerst-Suche. Bester-Zuerst-Suche

Einführung in die Methoden der Künstlichen Intelligenz

Wissensbasierte Suche

Vorlesung Datenstrukturen

Einführung in Suchverfahren

Informierte Suchverfahren

Beweise aus dem Fach Grundzüge der Künstlichen Intelligenz

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

Startzustand. Mögliche heuristische Funktionen:

Grundlagen der Künstlichen Intelligenz

Algorithmen und Datenstrukturen 2-1. Seminar -

Große Lösungsräume. Leon Schmidtchen Hallo Welt Seminar - LS Leon Schmidtchen Große Lösungsräume Hallo Welt Seminar - LS2

8.1 Blinde Suche. Grundlagen der Künstlichen Intelligenz. Klassische Suche: Überblick. 8. Klassische Suche: Breitensuche und uniforme Kostensuche

Algorithmen und Datenstrukturen

Einführung in die Methoden der Künstlichen Intelligenz

Einführung in die Methoden der Künstlichen Intelligenz. Suchverfahren / Uninformierte Suche

Breitensuche BFS (Breadth First Search)

Zustände und Knoten. Vorgänger Information: Tiefe = 4 ΣKosten=4 Expandiert: ja. Zustand Aktion: right. Aktion: down

ADS: Algorithmen und Datenstrukturen 2

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.

Einführung in die Methoden der Künstlichen Intelligenz. Suchverfahren / Uninformierte Suche

Informatik II, SS 2014

Graph Suchalgorithmus Uninformierte Suche Informierte Suche. Pfadsuche. Mario Mohr. GWV-Tutorium 2013/ Januar 2014

Motivation für Suchverfahren. Einführung in die Methoden der Künstlichen Intelligenz. Suchverfahren / Uninformierte Suche

Graphenalgorithmen I

ADS: Algorithmen und Datenstrukturen 2

Datenstrukturen und Algorithmen

Kognitive Systeme 1. Heuristische Suche. Dr.-Ing. Bernd Ludwig. Lehrstuhl für Künstliche Intelligenz Friedrich-Alexander-Universität Erlangen-Nürnberg

Intelligente Systeme. Suche

als Bewertungsfunktion g(n) eines Knotens n wird der tatsächliche Weg vom Startzustand zu diesem Knoten benutzt

Inhalt. Kognitive Systeme 1. Expansion eines impliziten Suchraums Netz aller möglichen Schritte. Impliziter Suchraum. Uninformierte Suche

Kognitive Systeme 1. Uninformierte Suche. Dr.-Ing. Bernd Ludwig

Algorithmische Graphentheorie

Grundlagen der Künstlichen Intelligenz

Teil 3. Suchverfahren

4.2 Minimale Spannbäume: Der Algorithmus von Jarník/Prim Definition 4.2.1

Euler und Hamiltonkreise

Lösungshinweise zu Blatt 8 und Blatt 9 GIN2-SS04

Übersicht. Künstliche Intelligenz: 3. Problemlösen durch Suche Frank Puppe 1

Heuristische Suchverfahren

Kapitel 5: Suchverfahren: Backtracking

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Grundlagen der Künstlichen Intelligenz

3.2 Generischer minimaler Spannbaum-Algorithmus

Optimale Lösungen mit Greedy-Strategie erfordern Optimalität der Greedy-Wahl. Beispiele für optimale Greedy-Lösungen

Grundlagen der KI + Reasoning Agents

8.1 Einleitung. Grundlagen der Künstlichen Intelligenz. 8.1 Einleitung. 8.2 Lokale Suchverfahren. 8.3 Zusammenfassung. Suchprobleme: Überblick

Proseminar Online Algorithmen, Prof. Dr. Rolf Klein

Programmierkurs Prolog, SS 2000

Suchverfahren. Kapitel Algorithmische Suche

Datenstrukturen und Algorithmen 2. Klausur SS 2001

Vorlesung Datenstrukturen

10. Übungsblatt zu Algorithmen I im SS 2010

Definition Ein gerichteter Graph G = (V, E) ist ein Graph von geordneten Paaren (u, v) mit u V und v V.

Algorithmen II Vorlesung am

Das Heiratsproblem. Definition Matching

Übungsblatt 2 Lösungen

Algorithmik WS 07/ Vorlesung, Andreas Jakoby Universität zu Lübeck. 10 Matching-Probleme

Algorithmen II Vorlesung am

Das Problem des Handlungsreisenden

Algorithmentheorie. 10 Greedy Verfahren

Programm heute. Algorithmen und Datenstrukturen (für ET/IT) Übersicht: Graphen. Definition: Ungerichteter Graph. Definition: Ungerichteter Graph

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

Intelligente Systeme

Algorithmen und Datenstrukturen (für ET/IT)

Betriebliche Optimierung

9.1 Tiefensuche. Grundlagen der Künstlichen Intelligenz. 9.1 Tiefensuche. 9.2 Iterative Tiefensuche. 9.3 Blinde Suche: Zusammenfassung

Berechnung von Abständen

Informatik II, SS 2018

Datenstrukturen. einfach verkettete Liste

Grundlagen der Künstlichen Intelligenz

Vorlesung Datenstrukturen

10.1 Blinde Suche Blinde Suche. Grundlagen der Künstlichen Intelligenz Breitensuche: Einführung BFS-Tree. 10.

Algorithmen und Datenstrukturen (für ET/IT)

1 Einführung. 2 Grundlagen von Algorithmen. 3 Grundlagen von Datenstrukturen. 4 Grundlagen der Korrektheit von Algorithmen

Kombinatorische Optimierung

12. Graphen. Notation, Repräsentation, Traversieren (DFS, BFS), Topologisches Sortieren, Ottman/Widmayer, Kap ,Cormen et al, Kap.

Einführung in die Künstliche Intelligenz SS 18 Prof. Dr. J. Fürnkranz, Prof. Dr. K. Kersting

Der Branching-Operator B

Vorlesung Datenstrukturen

Algorithmische Methoden für schwere Optimierungsprobleme

3. Minimale Spannbäume. Definition 99 T heißt minimaler Spannbaum (MSB, MST) von G, falls T Spannbaum von G ist und gilt:

Lösungen von Übungsblatt 12

Kapitel 3: Kürzeste Pfade Gliederung der Vorlesung

21. Dynamic Programming III

Betriebswirtschaftliche Optimierung

Lernmodul 7 Algorithmus von Dijkstra

Betriebliche Optimierung

Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 1: Grundlagen der algorithmischen Graphentheorie

Transkript:

Künstliche Intelligenz Vorlesung 4: Suchverfahren Informierte Suche 1/132

INFORMIERTE SUCHSTRATEGIEN (ISS) Benutzt neben der Definition des Problems auch problemspezifisches Wissen. Findet Lösungen effizienter als eine uninformierte Strategie Der Suchraum ist eingeschränkt durch intelligente Auswahl der Knoten Dies funktioniert über einer Evaluierungsfunktion Diese Funktion ist immer problemspezifisch 2/132

INFORMIERTE SUCHSTRATEGIEN (ISS) Die Suche nennt man informiert, wenn (zusätzlich) eine Bewertung aller Knoten des Suchraumes angegeben werden kann. Knotenbewertung Schätzfunktion Ähnlichkeit zum Zielknoten oder auch Schätzung des Abstands zum Zielknoten Bewertung des Zielknotens: Sollte Maximum / Minimum der Schätzfunktion sein 3/132

HEURISTISCHE SUCHE Eine Heuristik (Daumenregel) ist eine Schätzfunktion, die in vielen praktischen Fällen, die richtige Richtung zum Ziel angibt. Suchproblem ist äquivalent zu: Minimierung (bzw. Maximierung) einer Knotenbewertung (einer Funktion) auf einem (implizit gegebenen) gerichteten Graphen Variante: Maximierung in einer Menge oder in einem n-dimensionaler Raum. 4/132

SUCHSTRATEGIEN IN BÄUMEN Evaluationsfunktionen f (n) - Kosten durch Knoten (Zustand) n h(n) - Kosten eines Lösungspfades von Knoten n zum Zielknoten g(n) - Kosten eines Lösungspfades vom initialen Knoten zum Knoten n f (n) = g(n) + h(n) 5/132

8-PUZZLE. BEISPIEL 6/132

8-PUZZLE. BEISPIEL 7/132

8-PUZZLE. BEISPIEL 8/132

8-PUZZLE. BEISPIEL 9/132

8-PUZZLE. BEISPIEL 10/132

8-PUZZLE. BEISPIEL 11/132

8-PUZZLE. BEISPIEL 12/132

8-PUZZLE. BEISPIEL 13/132

8-PUZZLE. BEISPIEL 14/132

8-PUZZLE. BEISPIEL 15/132

8-PUZZLE. BEISPIEL 16/132

8-PUZZLE. BEISPIEL 17/132

8-PUZZLE. BEISPIEL 18/132

SUCHSTRATEGIEN IN BÄUMEN Tree Search function TREE - SEARCH (problem) returns eine Lösung oder einen Fehler Die Grenzknoten mit dem Ausgangszustand von problem initialisieren loop do if die Grenze ist leer then return Fehler Wähle einen Blattknoten aus und entferne ihn aus den Grenzknoten if Knoten enthält einen Zielzustand then return die entsprechende Lösung Knoten expandieren und der Grenze die resultierenden Knoten hinzufügen 19/132

SUCHSTRATEGIEN IN BÄUMEN Graph-Search function GRAPH-SEARCH(problem) returns eine Lösung oder einen Fehler Die Grenzknoten mit dem Ausgangszustand von problem initialisieren Die untersuchte Menge als leer initialisieren loop do if die Grenze ist leer then return Fehler Wähle einen Blattknoten aus und entferne ihn aus den Grenzknoten if Knoten enthält einen Zielzustand then return die entsprechende Lösung Füge den Knoten zur untersuchten Menge hinzu Knoten expandieren und der Grenze die resultierenden Knoten hinzufügen Nur, wenn nicht in der Grenze der untersuchten Menge 20/132

ISS: BESTENSUCHE (BEST-FIRST) Ist eine Instanz des TREE-SEARCH oder GRAPH-SEARCH Algorithmus und wählt einen Knoten auf Basis einer Evaluierungsfunktion f (n) zur Expandierung aus. Evaluierungsfunktion: Kostenabschätzungsfunktion - der Knoten mit der geringsten Bewertung wird zuerst erweitert. Die Wahl von f bestimmt die Suchstrategie Beispiel: Suche mit einheitlichen Kosten f = Pfadkosten Strategien Expandiere den Knoten der dem Ziel am nächsten liegt Suche die billigste Lösung 21/132

ISS: BESTENSUCHE (BEST-FIRST) 22/132

ISS: BESTENSUCHE (BEST-FIRST) Komplexität: b Verzweigungsfaktor, d maximale Tiefe der Lösung Zeitkomplexität T(n) = 1 + b + b 2 + + b d O(b d ) Speicherkomplexität: S(n) = T(n) Vollständigkeit: NEIN - unendliche Pfade, falls jeder einzelne Knoten als beste Lösung evaluiert wird Optimalität - abhängig von der Heuristik Vorteile: Spezifische Information macht die Suche schneller Gute Geschwindigkeit Nachteile: Evaluierung der Zustände erfordert Ressoursen (komputationelle, physische...) Anwendungen: Web crawler (automatic indexer), Spiele 23/132

ISS: BESTENSUCHE (BEST-FIRST) 24/132

BEISPIEL: BESTENSUCHE (BEST-FIRST) 25/132

BEISPIEL: BESTENSUCHE (BEST-FIRST) 26/132

BEISPIEL: BESTENSUCHE (BEST-FIRST) 27/132

BEISPIEL: BESTENSUCHE (BEST-FIRST) 28/132

BEISPIEL: BESTENSUCHE (BEST-FIRST) 29/132

BEISPIEL: BESTENSUCHE (BEST-FIRST) 30/132

8-PUZZLE. BEISPIEL 31/132

BEST-FIRST-SUCHE: EIGENSCHAFTEN entspricht einer gesteuerten Tiefensuche daher unvollständig Platzbedarf ist durch die Speicherung der besuchten Knoten exponentiell in der Tiefe. Durch Betrachtung aller Knoten auf dem Stack können lokale Maxima schneller verlassen werden, als beim Hill-Climbing 32/132

BFS - WEITERE BEISPIELE Missionäre und Kanibale: h(n) Anzahl der Personen auf dem initialen Ufer 8-Puzzle: h(n) Anzahl der Steine am falschen Platz ODER h(n) - Manhatten Entfernung (Entfernung zum Ziel) Problem des Handlungsreisenden: h(n) Entfernung zum nächsten Nachbar Auszahlen einer Summe mit minimaler Anzahl von Münzen: h(n) wähle einen Münzwert kleiner als die auszuzahlende Summe 33/132

GREEDY BEST-FIRST Versucht den Knoten zu expandieren, der dem Ziel am nächsten liegt Begründung: dies wird wahscheinlich schnell zu einer Lösung führen Evaluierungsfunktion f (n) = h(n), d.h. nur Heuristikfunktion Man wählt immer den billigesten Pfad 34/132

BEISPIEL A, D, E, H 35/132

GREEDY ISS 36/132

GREEDY ISS Komplexität Zeit Komplexität DFS b Verzweigungsfaktor, dmax maximale Tiefe der Suche T(n) = 1 + b + b 2 + + b dmax T(n) = 1 + b + b 2 + + b dmax O(b dmax ) Speicherkomplexität BFS: d - Tiefe der Lösung, dann S(n) = 1 + b + b 2 + + b d O(b dmax ) Vollständigkeit: NEIN; Optimalität: möglich Vorteile: findert schnell eine Lösung (nicht immer optimal), insbesondere für kleine Datensätze Nachteile: Die Summe der optimalen lokalen Lösungen globale optimale Entscheidung. Ex. TSP Anwendungen: Planungsaufgaben partielle Summen: Münzen, Rucksack Puzzles Optimale Pfade in Graphen 37/132

BERGSTEIGERPROZEDUR (HILL-CLIMBING) Auch als Gradientenaufstieg bekannt Gradient: Richtung der Vergrößerung einer Funktion (Berechnung durch Differenzieren) Parameter der Bergsteigerprozedur Menge der initialen Knoten Nachfolgerfunktion (Nachbarschaftsrelation) Bewertungsfunktion der Knoten, wobei wir annehmen, dass Zielknoten maximale Werte haben (Minimierung erfolgt analog) Zieltest 38/132

BERGSTEIGEN 39/132

BEISPIEL: BERGSTEIGEN 40/132

BEISPIEL: BERGSTEIGEN 41/132

BEISPIEL: BERGSTEIGEN 42/132

BEISPIEL: BERGSTEIGEN 43/132

BEISPIEL: BERGSTEIGEN 44/132

BEISPIEL: BERGSTEIGEN 45/132

BEISPIEL: BERGSTEIGEN 46/132

BEISPIEL: BERGSTEIGEN 47/132

BEISPIEL: BERGSTEIGEN 48/132

BEISPIEL: BERGSTEIGEN 49/132

BEISPIEL: BERGSTEIGEN 50/132

BEISPIEL: BERGSTEIGEN 51/132

EIGENSCHAFTEN DER BERGSTEIGERPROZEDUR Entspricht einer gesteuerten Tiefensuche mit Sharing daher nicht-vollständig Platzbedarf ist durch die Speicherung der besuchten Knoten exponentiell in der Tiefe. Varianten Optimierung einer Funktion ohne Zieltest: Bergsteige ohne Stack, stets zum nächst höheren Knoten Wenn nur noch Abstiege möglich sind, stoppe und gebe aktuellen Knoten aus Findet lokales Maximum, aber nicht notwendigerweise globales 52/132

BEST-FIRST-SUCHE UND CLIMBING Ähnlich zum Hillclimbing, aber: Wählte stets als nächsten zu expandierenden Knoten, den mit dem besten Wert Änderung im Algorithmus: sortiere alle Knoten auf dem Stack 53/132

A -ALGORITHMUS Suchproblem Startknoten Zieltest Z Nachfolgerfunktion NF. Annahme: Es gibt nur eine Kante zwischen zwei Knoten. (Graph ist schlicht) Kantenkosten g(n1, N 2 ) R. Heuristik h schätzt Abstand zum Ziel Ziel: Finde kostenminimalen Weg vom Startknoten zu einem Zielknoten 54/132

BEISPIEL: ROUTENSUCHE 55/132

A -ALGORITHMUS Kombination positiver Fakten der Suche mit einheitlichen Kosten Optimalität und Vollständigkeit Sortierte Schlangen Greedy Suchverfahren Geschwindigkeit Sortierung anhand Evaluierung Evaluierungsfunktion f (n) Kostenabschätzung für den Pfad durch Knoten n: f (n) = g(n) + h(n) g(n) - Kostenfunktion vom initialen Zustand bis zum Zustand n h(n) - Heuristische Kostenfunktion vom Zustand n bis zum Zielzustand Minimisierung der gesamt Kosten für ein Pfad 56/132

BEISPIEL: DAS RUCKSACK-PROBLEM Volumen W, n Objekte (o 1, o 2,..., o n ), jedes Objekt bringt ein Gewinn p i, i = 1, 2,..., n. o 1 o 2 o 3 o 4 p i 10 18 32 14 w i 1 2 4 3 Lösung: für W = 5 o 1 und o 3 g(n) = p i für ausgewählte Objekte o i h(n) = p j für nicht ausgewählte Objekte und wj W w i Jeder einzelne Knoten ist ein Tupel (p, w, p, f ) mit: p - Gewinn der ausgewählten Objekte (Funktion g(n)) w - Gewicht der ausgewählten Objekte p - maximaler Gewinn der erreicht werden kann aus dem jetzigen Zustand unter Betrachtung des freien Platzes im Rucksack (Funktion h(n)) 57/132

A -ALGORITHMUS 58/132

A -ALGORITHMUS 59/132

A -ALGORITHMUS Komplexitätsanalyse: Zeitkomplexität: b Verzweigungsfaktor, d max maximale Tiefe, T(n) = 1 + b + b 2 + + b dmax O(b dmax ) Speicherkomplexität: d Tiefe der Lösung, S(n) = 1 + b + b 2 + + b d O(b d ) Vollständigkeit: Ja Optimalität: Ja Vorteile: Expandiert die kleinste Anzahl von Knotem im Baum Nachteile: Verbraucht viel Speicherplatz Anwendungen: Planungsprobleme, Probleme mit partielle Summen (Rucksack, Münzen), Puzzles, Optimale Pfade in Graphen 60/132

A -ALGORITHMUS Versionen iterative deepening A (IDA ) memory-bounded A (MA ) simplified memory bounded A (SMA ) recursive best-first search (RBFS) dynamic A (DA ) real time A hierarchical A 61/132

BEISPIEL 62/132

BEISPIEL 63/132

BEISPIEL 64/132

BEISPIEL 65/132

BEISPIEL 66/132

BEISPIEL 67/132

BEISPIEL 68/132

BEISPIEL 69/132

BEISPIEL 70/132

BEISPIEL 71/132

BEISPIEL 72/132

BEISPIEL 73/132

BEISPIEL 74/132

BEISPIEL 75/132

BEISPIEL 76/132

BEISPIEL 77/132

BEISPIEL 78/132

BEISPIEL 79/132

BEISPIEL 80/132

BEISPIEL 81/132

BEISPIEL 82/132

BEISPIEL 83/132

BEISPIEL 84/132

BEISPIEL 85/132

BEISPIEL 86/132

BEISPIEL 87/132

BEISPIEL 88/132

BEISPIEL 89/132

BEISPIEL 90/132

BEISPIEL 91/132

BEISPIEL 92/132

BEISPIEL 93/132

BEISPIEL 94/132

BEISPIEL 95/132

BEISPIEL 96/132

BEISPIEL 97/132

BEISPIEL 98/132

BEISPIEL 99/132

BEISPIEL 100/132

BEISPIEL 101/132

BEISPIEL 102/132

BEISPIEL 103/132

BEISPIEL 104/132

BEISPIEL 105/132

BEISPIEL 106/132

BEISPIEL 107/132

BEISPIEL 108/132

BEISPIEL 109/132

BEISPIEL 110/132

BEISPIEL 111/132

BEISPIEL 112/132

BEISPIEL 113/132

BEISPIEL 114/132

BEISPIEL 115/132

BEISPIEL 116/132

BEISPIEL 117/132

BEISPIEL 118/132

BEISPIEL 119/132

BEISPIEL 120/132

BEISPIEL Beispiel zeigt, dass i.a. notwendig: Knoten aus Closed wieder in Open einfügen Beispiel extra so gewählt! Beachte: Auch Kanten werden mehrfach betrachtet Mehr Anforderungen an die Heuristik verhindern das! 121/132

NOTATIONEN FÜR DIE ANALYSE g (N, N ) = Kosten des optimalen Weges von N nach N g (N) =Kosten des optimalen Weges vom Start bis zu N c (N) =Kosten des optimalen Weges von N bis zum nächsten Zielknoten Z. f (N) = g (N) + c (N) (Kosten des optimalen Weges durch N bis zu einem Ziel Z) 122/132

VORAUSSETZUNGEN FÜR DEN A -ALGORITHMUS 1 es gibt nur endlich viele Knoten N mit g (N) + h(n) d, wobei d = inf{kosten aller Wege von S zu einem Zielknoten Z}. 2 Für jeden Knoten N gilt: h(n) c (N), d.h. die Schätzfunktion ist unterschätzend. 3 Für jeden Knoten N ist die Anzahl der Nachfolger endlich. 4 Alle Kanten kosten etwas: c(n, N ) > 0 für alle N, N. 5 Der Graph ist schlicht, d.h. zwischen zwei Knoten gibt es höchstens eine Kante 123/132

BEDINGUNG 1 IST NOTWENDIG: BEISPIELE 124/132

BEDINGUNG 1 IST NOTWENDIG: BEISPIELE 125/132

BEDINGUNG 1: HINREICHENDE BEDINGUNGEN 126/132

KORREKTHEIT UND VOLLSTÄNDIGKEIT DER A -SUCHE Wenn Voraussetzungen für den A -Algorithmus erfüllt, dann existiert zum Infimum d stets ein endlicher Weg mit Kosten Notation: infweg(n) := inf{kosten aller Wege von Nzu einem Ziel} Satz Es existiere ein Weg vom Start S bis zu einem Zielknoten. Sei d = infweg(s). Die Voraussetzungen für den A -Algorithmus seien erfüllt. Dann existiert ein optimaler Weg von S zum Ziel mit Kosten d. 127/132

KORREKTHEIT UND VOLLSTÄNDIGKEIT DER A -SUCHE Ein optimaler Knoten ist stets in Open: Lemma Die Voraussetzungen zum A -Algorithmus seien erfüllt. Es existiere ein optimaler Weg S = K 0 K 1 K 2 K n = Z vom Startknoten S bis zu einem Zielknoten Z. Dann ist während der Ausführung des A -Algorithmus stets ein Knoten K i in Open, markiert mit g(k i ) = g (K i ), d.h. mit einem optimalen Weg von S zu K i. 128/132

KORREKTHEIT UND VOLLSTÄNDIGKEIT DER A -SUCHE Expandierte Zielknoten sind optimal: Lemma Wenn die Voraussetzung für den A -Algorithmus erfüllt sind, gilt: Wenn A einen Zielknoten expandiert, dann ist dieser optimal. Ein Zielknoten wird nach endlicher Zeit expandiert: Lemma Die Voraussetzungen zum A -Algorithmus seien erfüllt. Wenn ein Weg vom Start zum Zielknoten existiert gilt: Der A -Algorithmus expandiert einen Zielknoten nach endlich vielen Schritten. 129/132

KORREKTHEIT UND VOLLSTÄNDIGKEIT DER A -SUCHE Zusammenfassend ergibt sich: Theorem Es existiere ein Weg vom Start bis zu einem Zielknoten. Die Voraussetzungen zum A -Algorithmus seien erfüllt. Dann findet der A -Algorithmus einen optimalen Weg zu einem Zielknoten. 130/132

SPEZIALFÄLLE Wenn h(n) = 0 für alle Knoten N, dann ist A -Algorithmus dasselbe wie die sogenannte Gleiche-Kosten-Suche Wenn c(n 1, N 2 ) = k für alle Knoten N 1, N 2 und h(n) = 0 für alle Knoten N, dann ist A -Algorithmus gerade die Breitensuche. 131/132

VARIANTE: A o -ALGORITHMUS A o -Algorithmus findet alle optimalen Wege Abänderung am A -Algorithmus: sobald erster Zielknoten mit Wert d expandiert wurde: Füge in Open nur noch Knoten mit g(n) + h(n) d ein Andere Knoten kommen in Closed Stoppe erst, wenn Open leer ist Theorem Wenn die Voraussetzungen für den A -Algorithmus gelten, dann findet der Algorithmus A o alle optimalen Wege von S zum Ziel. 132/132

132/132