155
1 Einf¨ uhrung in die Methoden der unstlichen Intelligenz Informierte Suche Prof. Dr. Manfred Schmidt-Schauß SoSe 2018 Stand der Folien: 27. April 2018

Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

1

Einfuhrung in die Methoden der

Kunstlichen Intelligenz

Informierte Suche

Prof. Dr. Manfred Schmidt-Schauß

SoSe 2018

Stand der Folien: 27. April 2018

Page 2: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Informierte Suche

Die Suche nennt man informiert, wenn (zusatzlich) eineBewertung aller Knoten des Suchraumes angegeben werden kann.

Knotenbewertung

Schatzfunktion

Ahnlichkeit zum Zielknoten oder auch

Schatzung des Abstands zum Zielknoten

Bewertung des Zielknotens: Sollte Maximum / Minimum derSchatzfunktion sein

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 2/55

Page 3: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Heuristische Suche

Eine Heuristik (Daumenregel) ist eine Schatzfunktion, die in vielenpraktischen Fallen, die richtige Richtung zum Ziel angibt.

Suchproblem ist aquivalent zu:

Minimierung (bzw. Maximierung) einer Knotenbewertung(einer Funktion) auf einem (implizit gegebenen) gerichte-ten Graphen

Variante:Maximierung in einer Menge oder in einem n-dimensionaler Raum.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 3/55

Page 4: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel: 8-Puzzle

Start:

7

6

8

2

5

3

4

1

Ziel:

7

4

1

8

5

2

6

3

Bewertungsfunktionen (Beispiele):

1 f1() Anzahl der Plattchen an der falschen Stelle

2 f2() Anzahl der Zuge (ohne Behinderungen zu beachten), dieman braucht, um Endzustand zu erreichen.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 4/55

Page 5: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel: 8-Puzzle (2)

S1 = 8

2

5

7

3

4

6

1

f1(S1) = 7f2(S1) = 2 + 1 + 1 + 3 + 1 + 0 + 2 + 2 = 12

S2 =

8

2

5

7

3

4

6

1f1(S2) = 7f2(S2) = 2 + 1 + 1 + 3 + 1 + 0 + 2 + 1 = 11

⇒ f2 ist genauer.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 5/55

Page 6: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel: 8-Puzzle (2)

S1 = 8

2

5

7

3

4

6

1f1(S1) = 7

f2(S1) = 2 + 1 + 1 + 3 + 1 + 0 + 2 + 2 = 12

S2 =

8

2

5

7

3

4

6

1f1(S2) = 7f2(S2) = 2 + 1 + 1 + 3 + 1 + 0 + 2 + 1 = 11

⇒ f2 ist genauer.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 5/55

Page 7: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel: 8-Puzzle (2)

S1 = 8

2

5

7

3

4

6

1f1(S1) = 7f2(S1) = 2 + 1 + 1 + 3 + 1 + 0 + 2 + 2 = 12

S2 =

8

2

5

7

3

4

6

1f1(S2) = 7f2(S2) = 2 + 1 + 1 + 3 + 1 + 0 + 2 + 1 = 11

⇒ f2 ist genauer.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 5/55

Page 8: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel: 8-Puzzle (2)

S1 = 8

2

5

7

3

4

6

1f1(S1) = 7f2(S1) = 2 + 1 + 1 + 3 + 1 + 0 + 2 + 2 = 12

S2 =

8

2

5

7

3

4

6

1f1(S2) = 7f2(S2) = 2 + 1 + 1 + 3 + 1 + 0 + 2 + 1 = 11

⇒ f2 ist genauer.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 5/55

Page 9: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel: 8-Puzzle (2)

S1 = 8

2

5

7

3

4

6

1f1(S1) = 7f2(S1) = 2 + 1 + 1 + 3 + 1 + 0 + 2 + 2 = 12

S2 =

8

2

5

7

3

4

6

1f1(S2) = 7f2(S2) = 2 + 1 + 1 + 3 + 1 + 0 + 2 + 1 = 11

⇒ f2 ist genauer.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 5/55

Page 10: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel: 8-Puzzle (2)

S1 = 8

2

5

7

3

4

6

1f1(S1) = 7f2(S1) = 2 + 1 + 1 + 3 + 1 + 0 + 2 + 2 = 12

S2 =

8

2

5

7

3

4

6

1f1(S2) = 7f2(S2) = 2 + 1 + 1 + 3 + 1 + 0 + 2 + 1 = 11

⇒ f2 ist genauer.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 5/55

Page 11: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel: 8-Puzzle (2)

S1 = 8

2

5

7

3

4

6

1f1(S1) = 7f2(S1) = 2 + 1 + 1 + 3 + 1 + 0 + 2 + 2 = 12

S2 =

8

2

5

7

3

4

6

1f1(S2) = 7f2(S2) = 2 + 1 + 1 + 3 + 1 + 0 + 2 + 1 = 11

⇒ f2 ist genauer.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 5/55

Page 12: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel: 8-Puzzle (2)

S1 = 8

2

5

7

3

4

6

1f1(S1) = 7f2(S1) = 2 + 1 + 1 + 3 + 1 + 0 + 2 + 2 = 12

S2 =

8

2

5

7

3

4

6

1f1(S2) = 7f2(S2) = 2 + 1 + 1 + 3 + 1 + 0 + 2 + 1 = 11

⇒ f2 ist genauer.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 5/55

Page 13: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel: 8-Puzzle (2)

S1 = 8

2

5

7

3

4

6

1f1(S1) = 7f2(S1) = 2 + 1 + 1 + 3 + 1 + 0 + 2 + 2 = 12

S2 =

8

2

5

7

3

4

6

1f1(S2) = 7f2(S2) = 2 + 1 + 1 + 3 + 1 + 0 + 2 + 1 = 11

⇒ f2 ist genauer.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 5/55

Page 14: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel: 8-Puzzle (2)

S1 = 8

2

5

7

3

4

6

1f1(S1) = 7f2(S1) = 2 + 1 + 1 + 3 + 1 + 0 + 2 + 2 = 12

S2 =

8

2

5

7

3

4

6

1f1(S2) = 7f2(S2) = 2 + 1 + 1 + 3 + 1 + 0 + 2 + 1 = 11

⇒ f2 ist genauer.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 5/55

Page 15: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel: 8-Puzzle (2)

S1 = 8

2

5

7

3

4

6

1f1(S1) = 7f2(S1) = 2 + 1 + 1 + 3 + 1 + 0 + 2 + 2 = 12

S2 =

8

2

5

7

3

4

6

1f1(S2) = 7f2(S2) = 2 + 1 + 1 + 3 + 1 + 0 + 2 + 1 = 11

⇒ f2 ist genauer.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 5/55

Page 16: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel: 8-Puzzle (2)

S1 = 8

2

5

7

3

4

6

1f1(S1) = 7f2(S1) = 2 + 1 + 1 + 3 + 1 + 0 + 2 + 2 = 12

S2 =

8

2

5

7

3

4

6

1f1(S2) = 7f2(S2) = 2 + 1 + 1 + 3 + 1 + 0 + 2 + 1 = 11

⇒ f2 ist genauer.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 5/55

Page 17: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Bergsteigerprozedur (Hill-climbing)

Auch als Gradientenaufstieg bekannt

Gradient: Richtung der Vergroßerung einer Funktion(Berechnung durch Differenzieren)

Parameter der Bergsteigerprozedur

Menge der initialen Knoten

Nachfolgerfunktion (Nachbarschaftsrelation)

Bewertungsfunktion der Knoten, wobei wir annehmen, dassZielknoten maximale Werte haben(Minimierung erfolgt analog)

Zieltest

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 6/55

Page 18: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Bergsteigen

Algorithmus Bergsteigen

Datenstrukturen: L : Liste von Knoten, markiert mit Weg dorthinh sei die Bewertungsfunktion der KnotenEingabe: L sei die Liste der initialen Knoten, absteigend sortiert entspre-chend h

Algorithmus:

1 Sei K das erste Element von L und R die Restliste

2 Wenn K ein Zielknoten, dann stoppe und gebe K markiert mit demWeg zuruck

3 Sortiere die Liste NF (K) absteigend entsprechend h und entferneschon besuchte Knoten aus dem Ergebnis. Sei dies die Liste L′.

4 Setze L := L′++R und gehe zu 1.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 7/55

Page 19: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel Bergsteigen

A/4

B/7 C/8

D/9 E/8 F/4 G/5

H/9 I/4 J/5 K/2

L/10

L = [A]M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 8/55

Page 20: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel Bergsteigen

A/4

B/7 C/8

D/9 E/8 F/4 G/5

H/9 I/4 J/5 K/2

L/10

L = [C,B] ++ [] = [C,B]M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 8/55

Page 21: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel Bergsteigen

A/4

B/7 C/8

D/9 E/8 F/4 G/5

H/9 I/4 J/5 K/2

L/10

L = [G,F] ++ [B] = [G,F,B]M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 8/55

Page 22: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel Bergsteigen

A/4

B/7 C/8

D/9 E/8 F/4 G/5

H/9 I/4 J/5 K/2

L/10

L = [K] ++ [F,B] = [K,F,B]M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 8/55

Page 23: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel Bergsteigen

A/4

B/7 C/8

D/9 E/8 F/4 G/5

H/9 I/4 J/5 K/2

L/10

L = [] ++ [F,B] = [F,B]M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 8/55

Page 24: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel Bergsteigen

A/4

B/7 C/8

D/9 E/8 F/4 G/5

H/9 I/4 J/5 K/2

L/10

L = [J,I] ++ [B] = [J,I,B]M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 8/55

Page 25: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel Bergsteigen

A/4

B/7 C/8

D/9 E/8 F/4 G/5

H/9 I/4 J/5 K/2

L/10

L = [] ++ [I,B] = [I,B]M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 8/55

Page 26: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel Bergsteigen

A/4

B/7 C/8

D/9 E/8 F/4 G/5

H/9 I/4 J/5 K/2

L/10

L = [] ++ [B] = [B]M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 8/55

Page 27: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel Bergsteigen

A/4

B/7 C/8

D/9 E/8 F/4 G/5

H/9 I/4 J/5 K/2

L/10

L = [D,E] ++ [] = [D,E]M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 8/55

Page 28: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel Bergsteigen

A/4

B/7 C/8

D/9 E/8 F/4 G/5

H/9 I/4 J/5 K/2

L/10

L = [H] ++ [E] = [H,E]M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 8/55

Page 29: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel Bergsteigen

A/4

B/7 C/8

D/9 E/8 F/4 G/5

H/9 I/4 J/5 K/2

L/10

L = [L] ++ [E] = [L,E]M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 8/55

Page 30: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel Bergsteigen

A/4

B/7 C/8

D/9 E/8 F/4 G/5

H/9 I/4 J/5 K/2

L/10

Zielknoten L gefundenM. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 8/55

Page 31: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Eigenschaften der Bergsteigerprozedur

Entspricht einer gesteuerten Tiefensuche mit Sharing

daher nicht vollstandig

Platzbedarf ist durch die Speicherung der besuchten Knotenexponentiell in der Tiefe.

Varianten

Optimierung einer Funktion ohne Zieltest:1 Bergsteigen ohne Stack, stets zum nachst hoheren Knoten2 Wenn nur noch Abstiege moglich sind, stoppe und gebe

aktuellen Knoten aus

Findet lokales Maximum, aber nicht notwendigerweiseglobales bzw. Ziel

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 9/55

Page 32: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Hillclimbing in Haskell

hillclimbing cmp heuristic goal successor start =

let -- sortiere die Startknoten

list = map (\k -> (k,[k])) (sortByHeuristic start)

in go list []

where

go ((k,path):r) mem

| goal k = Just (k,path) -- Zielknoten erreicht

| otherwise =

let -- Berechne die Nachfolger (nur neue Knoten)

nf = (successor k) \\ mem

-- Sortiere die Nachfolger entsprechend der Heuristik

l’ = map (\k -> (k,k:path)) (sortByHeuristic nf)

in go (l’ ++ r) (k:mem)

sortByHeuristic = sortBy (\a b -> cmp (heuristic a) (heuristic b))

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 10/55

Page 33: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Best-First-Suche

Ahnlich zum Hillclimbing, aber:

Wahlt stets als nachsten zu expandierenden Knotendenjenigen mit dem besten Wert

Anderung im Algorithmus: sortiere alle Knoten auf dem Stack

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 11/55

Page 34: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Best-First-Suche

Algorithmus Best-First Search

Datenstrukturen:Sei L Liste von Knoten, markiert mit dem Weg dorthin.h sei die Bewertungsfunktion der Knoten

Eingabe: L Liste der initialen Knoten, sortiert, so dass die besseren Knotenvorne sind.Algorithmus:

1 Wenn L leer ist, dann breche ab

2 Sei K der erste Knoten von L und R die Restliste.

3 Wenn K ein Zielknoten ist, dann gebe K und den Weg dahin aus.

4 Sei N(K) die Liste der Nachfolger von K. Entferne aus N(K) diebereits im Weg besuchten Knoten mit Ergebnis N

5 Setze L := N ++ R

6 Sortiere L, so dass bessere Knoten vorne sind und gehe zu 1.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 12/55

Page 35: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel Best-First-Suche

A/4

B/7 C/8

D/9 E/8 F/4 G/5

H/9 I/4 J/5 K/2

L/10

L = [A]M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 13/55

Page 36: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel Best-First-Suche

A/4

B/7 C/8

D/9 E/8 F/4 G/5

H/9 I/4 J/5 K/2

L/10

L = sort ([C,B] ++ []) = [C,B]M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 13/55

Page 37: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel Best-First-Suche

A/4

B/7 C/8

D/9 E/8 F/4 G/5

H/9 I/4 J/5 K/2

L/10

L = sort ([G,F] ++ [B]) = [B,G,F]M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 13/55

Page 38: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel Best-First-Suche

A/4

B/7 C/8

D/9 E/8 F/4 G/5

H/9 I/4 J/5 K/2

L/10

L = sort ([D,E] ++ [G,F]) = [D,E,G,F]M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 13/55

Page 39: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel Best-First-Suche

A/4

B/7 C/8

D/9 E/8 F/4 G/5

H/9 I/4 J/5 K/2

L/10

L = sort ([H,E] ++ [G,F] = [H,E,G,F]M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 13/55

Page 40: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel Best-First-Suche

A/4

B/7 C/8

D/9 E/8 F/4 G/5

H/9 I/4 J/5 K/2

L/10

L = sort ([L] ++ [E,G,F] = [L,E,G,F]M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 13/55

Page 41: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel Best-First-Suche

A/4

B/7 C/8

D/9 E/8 F/4 G/5

H/9 I/4 J/5 K/2

L/10

Zielknoten L gefundenM. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 13/55

Page 42: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Best-First-Suche: Eigenschaften

entspricht einer gesteuerten Tiefensuche

daher im allgemeinen unvollstandig.

Kann vollstandig sein, wenn die Bewertung nur ein globalesMaximum hat (und weitere Bedingungen)

Platzbedarf ist durch die Speicherung der besuchten Knotenexponentiell in der Tiefe.

Durch Betrachtung aller Knoten auf dem Stack konnen lokaleMaxima schneller verlassen werden, als beim Hill-Climbing

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 14/55

Page 43: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Best-First-Suche in Haskell

bestFirstSearchMitSharing cmp heuristic goal successor start =

let -- sortiere die Startknoten

list = sortByHeuristic (map (\k -> (k,[k])) (start))

in go list []

where

go ((k,path):r) mem

| goal k = Just (k,path) -- Zielknoten erreicht

| otherwise =

let -- Berechne die Nachfolger und nehme nur neue Knoten

nf = (successor k) \\ mem

-- aktualisiere Pfade

l’ = map (\k -> (k,k:path)) nf

-- Sortiere alle Knoten nach der Heuristik

l’’ = sortByHeuristic (l’ ++ r)

in go l’’ (k:mem)

sortByHeuristic =

sortBy (\(a,_) (b,_)-> cmp (heuristic a) (heuristic b))

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 15/55

Page 44: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Hillclimbing vs Best-First

Programmbeispiele 8-Puzzle Vorfuhrung

2 Heuristiken

3 Beispiele

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 16/55

Page 45: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Simulated Annealing

Analogie zum Ausgluhen: Am Anfang hohe Energie(Beweglichkeit), mit voranschreitender Zeit Abkuhlung:

Suche dazu: Bei der Optimierung von n-dimensionalenFunktionen

Ahnlich zum Bergsteigen, aber am Anfang große Sprunge(auch absteigend), spater eher kleine Schritte

Erlaubt schnell aus lokalen Maxima rauszuspringen

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 17/55

Page 46: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

A∗-Algorithmus

Wege-Suche mitA∗-Algorithmus

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 18/55

Page 47: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

A∗-Algorithmus

Suchproblem

Startknoten

Zieltest Z

Nachfolgerfunktion NF .Annahme: Es gibt nur eine Kante zwischen zwei Knoten.(Graph ist schlicht)

Kantenkosten g(N1, N2) ∈ R.

Heuristik h schatzt Abstand zum Ziel

Ziel: Finde kostenminimalen Wegvom Startknoten zu einem Zielknoten

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 19/55

Page 48: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel: Routensuche

S A

B

C

D

E

F G

Z13km

27km

15km

4km

23km

14km

25km

12km

14km

15km

43km

9km

13km

20km

34km

7km

Heuristik z.B. Luftliniendistanz

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 20/55

Page 49: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Algorithmus A∗-Algorithmus

Datenstrukturen:Menge Open von Knoten

Menge Closed von Knoten

Wert g(N) (bisherige beste Kosten bis N)fur jeden Knoten (markiert mit Pfad vom Start zu N)

Heuristik h

Zieltest Z

Kantenkostenfunktion cEingabe:

Open := {S}, wenn S der Startknoten ist

g(S) := 0, ansonsten ist g nicht initialisiert

Closed := ∅

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 21/55

Page 50: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Algorithmus:repeat

Wahle N aus Open mit minimalem f(N) = g(N) + h(N)if Z(N) then

break; // Schleife beendenelse

Berechne Liste der Nachfolger N := NF (N)Schiebe Knoten N von Open nach Closed

for N ′ ∈ N doif N ′ ∈ Open ∪ Closed und g(N) + c(N,N ′) > g(N ′) then

skip // Knoten nicht verandernelse

g(N’) := g(N) + c(N,N’); // neuer Minimalwert fur g(N’)Fuge N ′ in Open ein und (falls vorhanden) losche N ′ aus Closed;

end-ifend-for

end-ifuntil Open = ∅if Open = ∅ then Fehler, kein Zielknoten gefundenelse N ist der Zielknoten mit g(N) als minimalen Kostenend-if

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 22/55

Page 51: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5 C/4 D/3 E/2

F/5 G/4 H/3 I/2 J/1

K/3 L/2 M/1 Z/0

N/4 O/3 P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 52: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5 C/4 D/3 E/2

F/5 G/4 H/3 I/2 J/1

K/3 L/2 M/1 Z/0

N/4 O/3 P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 53: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5 C/4 D/3 E/2

F/5 G/4 H/3 I/2 J/1

K/3 L/2 M/1 Z/0

N/4 O/3 P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 54: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5 C/4 D/3 E/2

F/5 G/4 H/3 I/2 J/1

K/3 L/2 M/1 Z/0

N/4 O/3 P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 55: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5 C/4 D/3 E/2

F/5 G/4 H/3 I/2 J/1

K/3 L/2 M/1 Z/0

N/4 O/3 P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 56: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5 C/4 D/3 E/2

F/5 G/4 H/3 I/2 J/1

K/3 L/2 M/1 Z/0

N/4 O/3 P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 57: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4 D/3 E/2

F/52

G/4 H/3 I/2 J/1

K/3 L/2 M/1 Z/0

N/4 O/3 P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 58: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4 D/3 E/2

F/52

G/4 H/3 I/2 J/1

K/3 L/2 M/1 Z/0

N/4 O/3 P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 59: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4 D/3 E/2

F/52

G/4 H/3 I/2 J/1

K/3 L/2 M/1 Z/0

N/4 O/3 P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 60: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3 E/2

F/52

G/4 H/3 I/2 J/1

K/3 L/2 M/1 Z/0

N/4 O/3 P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 61: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3 E/2

F/52

G/4 H/3 I/2 J/1

K/3 L/2 M/1 Z/0

N/4 O/3 P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 62: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3 E/2

F/52

G/4 H/3 I/2 J/1

K/3 L/2 M/1 Z/0

N/4 O/3 P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 63: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3 E/2

F/52

G/4 H/34

I/2 J/1

K/3 L/2 M/1 Z/0

N/4 O/3 P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 64: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3 E/2

F/52

G/4 H/34

I/2 J/1

K/3 L/2 M/1 Z/0

N/4 O/3 P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 65: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3 E/2

F/52

G/4 H/34

I/2 J/1

K/3 L/2 M/1 Z/0

N/4 O/3 P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 66: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3 E/2

F/52

G/43

H/34

I/2 J/1

K/3 L/2 M/1 Z/0

N/4 O/3 P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 67: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3 E/2

F/52

G/43

G/43

H/34

I/2 J/1

K/3 L/2 M/1 Z/0

N/4 O/3 P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 68: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3 E/2

F/52

G/43

H/34

I/2 J/1

K/34

L/2 M/1 Z/0

N/4 O/3 P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 69: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3 E/2

F/52

G/43

H/34

I/2 J/1

K/34

L/2 M/1 Z/0

N/4 O/3 P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 70: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3 E/2

F/52

G/43

H/34

I/2 J/1

K/34

L/2 M/1 Z/0

N/4 O/3 P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 71: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3 E/2

F/52

G/43

H/34

I/2 J/1

K/34

L/25

M/1 Z/0

N/45

O/3 P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 72: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3 E/2

F/52

G/43

H/34

I/2 J/1

K/34

L/25

M/1 Z/0

N/45

O/3 P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 73: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3 E/2

F/52

G/43

H/34

I/2 J/1

K/34

L/25

M/1 Z/0

N/45

O/3 P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 74: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3 E/2

F/52

G/43

H/34

I/2 J/1

K/34

L/25

M/1 Z/0

N/45

O/36

P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 75: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3 E/2

F/52

G/43

H/34

I/2 J/1

K/34

L/25

M/1 Z/0

N/45

O/36

P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 76: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3 E/2

F/52

G/43

H/34

I/2 J/1

K/34

L/25

M/1 Z/0

N/45

O/36

P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 77: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3 E/2

F/52

G/43

H/34

I/25

J/1

K/34

L/25

M/1 Z/0

N/45

O/36

P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 78: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3 E/2

F/52

G/43

H/34

I/25

J/1

K/34

L/25

M/1 Z/0

N/45

O/36

P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 79: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3 E/2

F/52

G/43

H/34

I/25

J/1

K/34

L/25

M/1 Z/0

N/45

O/36

P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 80: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3

6E/2

F/52

G/43

H/34

I/25

J/1

K/34

L/25

M/1 Z/0

N/45

O/36

P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 81: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3

6E/2

F/52

G/43

H/34

I/25

J/1

K/34

L/25

M/1 Z/0

N/45

O/36

P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 82: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3

6E/2

F/52

G/43

H/34

I/25

J/1

K/34

L/25

M/1 Z/0

N/45

O/36

P/2

Q/4 R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 83: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3

6E/2

F/52

G/43

H/34

I/25

J/1

K/34

L/25

M/1 Z/0

N/45

O/36

P/2

Q/47

R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 84: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3

6E/2

F/52

G/43

H/34

I/25

J/1

K/34

L/25

M/1 Z/0

N/45

O/36

P/2

Q/47

R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 85: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3

6E/2

F/52

G/43

H/34

I/25

J/1

K/34

L/25

M/1 Z/0

N/45

O/36

P/2

Q/47

R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 86: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3

6E/2

7

F/52

G/43

H/34

I/25

J/1

K/34

L/25

M/1 Z/0

N/45

O/36

P/2

Q/47

R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 87: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3

6E/2

7

F/52

G/43

H/34

I/25

J/1

K/34

L/25

M/1 Z/0

N/45

O/36

P/2

Q/47

R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 88: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3

6E/2

7

F/52

G/43

H/34

I/25

J/1

K/34

L/25

M/1 Z/0

N/45

O/36

P/2

Q/47

R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 89: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3

6E/2

7

F/52

G/43

H/34

I/25

J/18

K/34

L/25

M/1 Z/0

N/45

O/36

P/2

Q/47

R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 90: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3

6E/2

7

F/52

G/43

H/34

I/25

J/18

K/34

L/25

M/1 Z/0

N/45

O/36

P/2

Q/47

R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 91: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3

6E/2

7

F/52

G/43

H/34

I/25

J/18

K/34

L/25

M/1 Z/0

N/45

O/36

P/2

Q/47

R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 92: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3

6E/2

7

F/52

G/43

H/34

I/25

J/18

K/34

L/25

M/1 Z/09

N/45

O/36

P/2

Q/47

R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 93: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3

6E/2

7

F/52

G/43

H/34

I/25

J/18

K/34

L/25

M/1 Z/09

N/45

O/36

P/2

Q/47

R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 94: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3

6E/2

7

F/52

G/43

H/34

I/25

J/18

K/34

L/25

M/1 Z/09

N/45

O/36

P/2

Q/47

R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 95: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:

N/h(N)g(N)

akt. N

open

closedS/7

0A/6

1B/5

2C/4

3D/3

6E/2

7

F/52

G/43

H/34

I/25

J/18

K/34

L/25

M/1 Z/09

N/45

O/36

P/2

Q/47

R/3

Heuristik: Rechteck-Metrik h(X) = |(yX − yZ)|+ |xX − xZ |

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 23/55

Page 96: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

A∗ in Haskell

-- Eintr"age in open / closed: (Knoten, (g(Knoten), Pfad zum Knoten))

aStern heuristic goal successor open closed

| null open = Nothing -- Kein Ziel gefunden

| otherwise =

let n@(node,(g_node,path_node)) = Knoten mit min. f-Wert

minimumBy (\(a,(b,_)) (a’,(b’,_))

-> compare ((heuristic a) + b) ((heuristic a’) + b’)) open

in

if goal node then Just n else -- Zielknoten expandiert

let nf = (successor node) -- Nachfolger

-- aktualisiere open und closed:

(open’,closed’) = update nf (delete n open) (n:closed)

update [] o c = (o,c)

update ((nfnode,c_node_nfnode):xs) o c =

let (o’,c’) = update xs o c -- rekursiver Aufruf

-- m"oglicher neuer Knoten, mit neuem g-Wert und Pfad

newnode = (nfnode,(g_node + c_node_nfnode,path_node ++ [node]))

in case lookup nfnode open of -- Knoten in Open?

Nothing -> case lookup nfnode closed of -- Knoten in Closed?

Nothing -> (newnode:o’,c’)

Just (curr_g,curr_path) ->

if curr_g > g_node + c_node_nfnode

then (newnode:o’,delete (nfnode,(curr_g,curr_path)) c’)

else (o’,c’)

Just (curr_g,curr_path) ->

if curr_g > g_node + c_node_nfnode

then (newnode:(delete (nfnode,(curr_g,curr_path)) o’),c’)

else (o’,c’)

in aStern heuristic goal successor open’ closed’

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 24/55

Page 97: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:N/h(N)

g(N) akt. N open closed

S/90

A/7

B/8

C/3 D/4 Z/0

1

1

4

2

1 5

Open = {S} Closed = ∅

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 25/55

Page 98: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:N/h(N)

g(N) akt. N open closed

S/90

A/70+1=1

B/80+1=1

C/3 D/4 Z/0

1

1

4

2

1 5

N := SOpen = {A,B} Closed = {S}

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 25/55

Page 99: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:N/h(N)

g(N) akt. N open closed

S/90

A/71

B/81

C/3 D/4 Z/0

1

1

4

2

1 5

N := SOpen = {A,B} Closed = {S}

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 25/55

Page 100: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:N/h(N)

g(N) akt. N open closed

S/90

A/71

B/81

C/31+4=5

D/4 Z/0

1

1

4

2

1 5

f(A) = 1 + 7 = 8 f(B) = 1 + 8 = 9 N := AOpen = {B,C} Closed = {A,S}

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 25/55

Page 101: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:N/h(N)

g(N) akt. N open closed

S/90

A/71

B/81

C/35

D/4 Z/0

1

1

4

2

1 5

f(A) = 1 + 7 = 8 f(B) = 1 + 8 = 9 N := AOpen = {B,C} Closed = {A,S}

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 25/55

Page 102: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:N/h(N)

g(N) akt. N open closed

S/90

A/71

B/81

C/35

D/45+1=6

Z/0

1

1

4

2

1 5

f(B) = 1 + 8 = 9 f(C) = 5 + 3 = 8 N := COpen = {B,D} Closed = {A,C, S}

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 25/55

Page 103: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:N/h(N)

g(N) akt. N open closed

S/90

A/71

B/81

C/35

D/46

Z/0

1

1

4

2

1 5

f(B) = 1 + 8 = 9 f(C) = 5 + 3 = 8 N := COpen = {B,D} Closed = {A,C, S}

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 25/55

Page 104: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:N/h(N)

g(N) akt. N open closed

S/90

A/71

B/81

C/35 > 1+2

D/46

Z/0

1

1

4

2

1 5

f(B) = 1 + 8 = 9 f(D) = 6 + 4 = 10 N := BOpen = {C,D} Closed = {A,B, S}

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 25/55

Page 105: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:N/h(N)

g(N) akt. N open closed

S/90

A/71

B/81

C/33

D/46

Z/0

1

1

4

2

1 5

f(B) = 1 + 8 = 9 f(D) = 6 + 4 = 10 N := BOpen = {C,D} Closed = {A,B, S}

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 25/55

Page 106: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:N/h(N)

g(N) akt. N open closed

S/90

A/71

B/81

C/33

D/46 > 3+1

Z/0

1

1

4

2

1 5

f(C) = 3 + 3 = 6 f(D) = 6 + 4 = 10 N := COpen = {D} Closed = {A,B,C, S}

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 25/55

Page 107: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:N/h(N)

g(N) akt. N open closed

S/90

A/71

B/81

C/33

D/44

Z/0

1

1

4

2

1 5

f(C) = 3 + 3 = 6 f(D) = 6 + 4 = 10 N := COpen = {D} Closed = {A,B,C, S}

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 25/55

Page 108: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:N/h(N)

g(N) akt. N open closed

S/90

A/71

B/81

C/33

D/44

Z/04+5=9

1

1

4

2

1 5

f(D) = 4 + 4 = 8 N := DOpen = {Z} Closed = {A,B,C,D, S}

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 25/55

Page 109: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:N/h(N)

g(N) akt. N open closed

S/90

A/71

B/81

C/33

D/44

Z/09

1

1

4

2

1 5

f(D) = 4 + 4 = 8 N := DOpen = {Z} Closed = {A,B,C,D, S}

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 25/55

Page 110: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel

Notation:N/h(N)

g(N) akt. N open closed

S/90

A/71

B/81

C/33

D/44

Z/09

1

1

4

2

1 5

f(Z) = 9 + 0 = 9 N := ZOpen = {Z} Closed = {A,B,C,D, S} Zielknoten Z

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 25/55

Page 111: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel (2)

Beispiel zeigt, dass i.A. notwendig:Knoten aus Closed wieder in Open einfugen

Beispiel extra so gewahlt!

Beachte: Auch Kanten werden mehrfach betrachtet

Mehr Anforderungen an die Heuristik verhindern das!

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 26/55

Page 112: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Ist A∗ immer korrekt?

Notation:N/h(N)

g(N) akt. N open closed

S/70

A/6

B/3

Z/0

1

2

1

2

Nein! Die Heuristik muss unterschatzend sein!

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 27/55

Page 113: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Ist A∗ immer korrekt?

Notation:N/h(N)

g(N) akt. N open closed

S/70

A/6

B/3

Z/0

1

2

1

2

Nein! Die Heuristik muss unterschatzend sein!

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 27/55

Page 114: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Ist A∗ immer korrekt?

Notation:N/h(N)

g(N) akt. N open closed

S/70

A/6

B/3

Z/0

1

2

1

2

Nein! Die Heuristik muss unterschatzend sein!

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 27/55

Page 115: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Ist A∗ immer korrekt?

Notation:N/h(N)

g(N) akt. N open closed

S/70

A/61

B/32

Z/0

1

2

1

2

Nein! Die Heuristik muss unterschatzend sein!

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 27/55

Page 116: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Ist A∗ immer korrekt?

Notation:N/h(N)

g(N) akt. N open closed

S/70

A/61

B/32

Z/0

1

2

1

2

Nein! Die Heuristik muss unterschatzend sein!

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 27/55

Page 117: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Ist A∗ immer korrekt?

Notation:N/h(N)

g(N) akt. N open closed

S/70

A/61

B/32

Z/0

1

2

1

2

Nein! Die Heuristik muss unterschatzend sein!

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 27/55

Page 118: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Ist A∗ immer korrekt?

Notation:N/h(N)

g(N) akt. N open closed

S/70

A/61

B/32

Z/04

1

2

1

2

Nein! Die Heuristik muss unterschatzend sein!

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 27/55

Page 119: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Ist A∗ immer korrekt?

Notation:N/h(N)

g(N) akt. N open closed

S/70

A/61

B/32

Z/04

1

2

1

2

Nein! Die Heuristik muss unterschatzend sein!

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 27/55

Page 120: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Ist A∗ immer korrekt?

Notation:N/h(N)

g(N) akt. N open closed

S/70

A/61

B/32

Z/04

1

2

1

2

Nein! Die Heuristik muss unterschatzend sein!

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 27/55

Page 121: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Ist A∗ immer korrekt?

Notation:N/h(N)

g(N) akt. N open closed

S/70

A/61

B/32

Z/04

1

2

1

2

Nein! Die Heuristik muss unterschatzend sein!

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 27/55

Page 122: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Ist A∗ immer korrekt?

Notation:N/h(N)

g(N) akt. N open closed

S/70

A/61

B/32

Z/04

1

2

1

2

Nein! Die Heuristik muss unterschatzend sein!

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 27/55

Page 123: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Notationen fur 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 zumnachsten Zielknoten Z.

f∗(N) = g∗(N) + c∗(N)(Kosten des optimalen Weges durch N bis zu einem Ziel Z)

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 28/55

Page 124: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Voraussetzungen fur den A∗-Algorithmus

1 es gibt nur endlich viele Knoten N mit g∗(N) + h(N) ≤ d,wobeid = inf {Kosten aller Wege von S zu einem Zielknoten Z}.

2 Fur jeden Knoten N gilt: h(N) ≤ c∗(N), d.h. dieSchatzfunktion ist unterschatzend.

3 Fur jeden Knoten N ist die Anzahl der Nachfolger endlich.

4 Alle Kanten kosten etwas: c(N,N ′) > 0 fur alle N,N ′.

5 Der Graph ist schlicht, d.h. zwischen zwei Knoten gibt eshochstens eine Kante

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 29/55

Page 125: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Bedingung 1 ist notwendig: Beispiele

Bedingung 1: es gibt nur endlich viele Knoten N mitg∗(N) + h(N) ≤ d, wobeid = inf {Kosten aller Wege von S zu einem Zielknoten Z}.

S/1

Z/0

A1/12 A2/1

4 A3/18

. . .12

14

18

116

1

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 30/55

Page 126: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Bedingung 1 ist notwendig: Beispiele (2)

Bedingung 1: es gibt nur endlich viele Knoten N mitg∗(N) + h(N) ≤ d, wobeid = inf {Kosten aller Wege von S zu einem Zielknoten Z}.zum Infimum d muss es nicht notwendigerweise auch einenendlichen Weg im Suchgraphen geben:

S/1

Z/0

A1/12 A2/1

4 A3/18

. . .12

14

18

116

1 12 1

4

Es ist g∗(Ai) + h(Ai) = 1 fur alle i: das sind unendlich viele

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 31/55

Page 127: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Bedingung 1: hinreichende Bedingungen

Sei ε > 0 fest.

Wenn fur alle Kosten c(N1, N2) gilt: c(N1, N2) ≥ εund jeder Knoten hat nur endlich viele Nachfolgerund h ist unterschatzend,

dann gilt auch Bedingung 1.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 32/55

Page 128: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Korrektheit und Vollstandigkeit der A∗-Suche

Wenn Voraussetzungen fur den A∗-Algorithmus erfullt,

Dannhaben die optimalen Wege keine Doppelvorkommen von Knoten,d.h. keine Schleifen.

Denn: die Elimination von Schleifen verkleinert die Kosten desWeges, da alle Kantenkosten > 0 sind.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 33/55

Page 129: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Korrektheit und Vollstandigkeit der A∗-Suche

Wenn Voraussetzungen fur den A∗-Algorithmus erfullt, dannexistiert zum Infimum d stets ein endlicher Weg mit Kosten d.

Notation:infWeg(N) := inf {Kosten aller Wege von N zu einem Ziel}

Satz

Es existiere ein Weg vom Start S bis zu einem Zielknoten. Seid = infWeg(S). Die Voraussetzungen fur den A∗-Algorithmusseien erfullt. Dann existiert ein optimaler Weg von S zum Ziel mitKosten d.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 34/55

Page 130: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Korrektheit und Vollstandigkeit der A∗-Suche (2)

Ein optimaler Knoten ist stets in Open:

Lemma

Die Voraussetzungen zum A∗-Algorithmus seien erfullt. Es existiereein optimaler Weg S = K0 → K1 → K2 → . . .→ Kn = Z vomStartknoten S bis zu einem Zielknoten Z . Dann ist wahrend derAusfuhrung des A∗-Algorithmus stets ein Knoten Ki in Open,markiert mit g(Ki) = g∗(Ki), d.h. mit einem optimalen Weg vonS zu Ki.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 35/55

Page 131: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Korrektheit und Vollstandigkeit der A∗-Suche (3)

Expandierte Zielknoten sind optimal:

Lemma

Wenn die Voraussetzung fur den A∗-Algorithmus erfullt 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 erfullt. Wenn einWeg vom Start zum Zielknoten existiert gilt: Der A∗-Algorithmusexpandiert einen Zielknoten nach endlich vielen Schritten.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 36/55

Page 132: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Korrektheit und Vollstandigkeit der A∗-Suche (3)

Expandierte Zielknoten sind optimal:

Lemma

Wenn die Voraussetzung fur den A∗-Algorithmus erfullt 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 erfullt. Wenn einWeg vom Start zum Zielknoten existiert gilt: Der A∗-Algorithmusexpandiert einen Zielknoten nach endlich vielen Schritten.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 36/55

Page 133: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Korrektheit und Vollstandigkeit der A∗-Suche (4)

Zusammenfassend ergibt sich:

Theorem

Es existiere ein Weg vom Start bis zu einem Zielknoten. DieVoraussetzungen zum A∗-Algorithmus seien erfullt. Dann findetder A∗-Algorithmus einen optimalen Weg zu einem Zielknoten.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 37/55

Page 134: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Spezialfalle

Wenn h(N) = 0 fur alle Knoten N , dann ist A∗-Algorithmusdasselbe wie die sogenannte Gleiche-Kosten-Suche(branch-and-bound)

Wenn c(N1, N2) = k fur alle Knoten N1, N2 und h(N) = 0fur alle Knoten N , dann ist A∗-Algorithmus gerade dieBreitensuche.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 38/55

Page 135: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Nachtrag zum unendliche-Knoten Beispiel

Bedingung 1 von A∗ ist notwendig: Beispiele (2)Bedingung 1: es gibt nur endlich viele Knoten N mitg∗(N) + h(N) ≤ d, wobeid = inf {Kosten aller Wege von S zu einem Zielknoten Z}.zum Infimum d muss es nicht notwendigerweise auch einenendlichen Weg im Suchgraphen geben:

S/1

Z/0

A1/12 A2/1

4 A3/18

. . .12

14

18

116

1 12 1

4

{Ai | g∗(Ai) + h(Ai) ≤ d = 1} ..

das sind unendlich viele Ai

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 39/55

Page 136: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Nachtrag zum unendliche-Knoten Beispiel

Bedingung 1 von A∗ ist notwendig: Beispiele (2)Bedingung 1: es gibt nur endlich viele Knoten N mitg∗(N) + h(N) ≤ d, wobeid = inf {Kosten aller Wege von S zu einem Zielknoten Z}.zum Infimum d muss es nicht notwendigerweise auch einenendlichen Weg im Suchgraphen geben:

S/1

Z/0

A1/12 A2/1

4 A3/18

. . .12

14

18

116

1 12 1

4

{Ai | g∗(Ai) + h(Ai) ≤ d = 1} .. das sind unendlich viele Ai

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 39/55

Page 137: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Variante: A∗o-Algorithmus

A∗o-Algorithmus

findet alle optimalen Wege

Abanderung am A∗-Algorithmus:

Wenn erster Zielknoten mit Wert d expandiert wurde: Fuge inOpen nur noch Knoten mit g(N) + h(N) ≤ d ein;Andere Knoten kommen in Closed

Statt mit Weg wird mit der Menge der letzten Knotenmarkiert, die zu einem aktuell optimalen Weg gehorenWenn neuer aktuell optimaler Weg zu einem Nachfolger N ′

des aktuellen Knoten N gefunden: Knoten N ′ nach OPEN.

Stoppe erst, wenn Open leer ist

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 40/55

Page 138: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Eigenschaften: A∗o-Algorithmus

Theorem

Wenn die Voraussetzungen fur den A∗-Algorithmus gelten, dannfindet der Algorithmus A∗o alle optimalen Wege von S zum Ziel.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 41/55

Page 139: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel zu A∗o

Alle Kanten haben gleiche Kosten

N1//

!!

N2//

!!

N3

S

>>

// N4

==

!!

// N5

==

!!

// N6// Z

N7

==

// N8// N9

>>

Es gibt exponentiell viele optimale Wege in der Anzahl aller Knoten(auch in der Lange der Wege).

Die Darstellung durch Speichern der vorletzten Knoten der aktuelloptimalen Wege an einem Knoten:Ergibt: polynomielle Darstellung aller optimalen Wege

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 42/55

Page 140: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Schatzfunktionen

Definition

Wenn man zwei Schatzfunktionen h1 und h2 hat mit:

1 h1 und h2 unterschatzen den Aufwand zum Ziel

2 fur alle Knoten N gilt: h1(N) ≤ h2(N) ≤ c∗(N)

Dann nennt man h2 besser informiert als h1.

Hieraus alleine kann man noch nicht folgern, dass derA∗-Algorithmus zu h2 sich besser verhalt als zu h1.Notwendig ist:Die Abweichung bei Sortierung der Knoten mittels f muss kleinsein. D.h. optimal ware f(k) ≤ f(k′)⇔ f∗(k) ≤ f∗(k′).

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 43/55

Page 141: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Monotone Schatzfunktionen

Definition

Eine Schatzfunktion h(.) ist monoton, gdw.

h(N) ≤ c(N,N ′) + h(N ′) fur alle Knoten N und Nachfolger N ′

h(Z) = 0 fur alle Zielknoten Z.

N/h(N) N ′/h(N ′)

Z

c(N,N ′)

c∗(N ′)

Satz: Eine monotone Schatzfunktion ist auch unterschatzend.Beweis: Induktion uber die Entfernung jedes Knotens N vom Ziel

Wenn von N aus kein Weg zum Ziel, dann h(N) immer unterschatzend.

Wenn N ein Zielknoten ist, dann gilt h(N) = 0

Induktionsschritt: Sei N → N ′ der optimale Prafix des Weges von N zum Ziel,Dann gilt: c∗(N) = c(N,N ′) + c∗(N ′).Induktionsannahme: h(N ′) ≤ c∗(N ′) (da h(N ′) unterschatzend),h(N) ≤︸︷︷︸

Monotonie

c(N,N ′) + h(N ′) ≤︸︷︷︸Induktionsannahme

c(N,N ′) + c∗(N ′) = c(N∗)

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 44/55

Page 142: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Monotone Schatzfunktionen

Definition

Eine Schatzfunktion h(.) ist monoton, gdw.

h(N) ≤ c(N,N ′) + h(N ′) fur alle Knoten N und Nachfolger N ′

h(Z) = 0 fur alle Zielknoten Z.

N/h(N) N ′/h(N ′) Zc(N,N ′) c∗(N ′)

Satz: Eine monotone Schatzfunktion ist auch unterschatzend.Beweis: Induktion uber die Entfernung jedes Knotens N vom Ziel

Wenn von N aus kein Weg zum Ziel, dann h(N) immer unterschatzend.

Wenn N ein Zielknoten ist, dann gilt h(N) = 0

Induktionsschritt: Sei N → N ′ der optimale Prafix des Weges von N zum Ziel,Dann gilt: c∗(N) = c(N,N ′) + c∗(N ′).Induktionsannahme: h(N ′) ≤ c∗(N ′) (da h(N ′) unterschatzend),h(N) ≤︸︷︷︸

Monotonie

c(N,N ′) + h(N ′) ≤︸︷︷︸Induktionsannahme

c(N,N ′) + c∗(N ′) = c(N∗)

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 44/55

Page 143: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Monotonie (2)

a b

c

N Z

N ′

a b

c

Dreiecksungleichung: c ≤ a+ b

Das entspricht der Monotonie Bedingung!

Wenn die Luftlinie eine Abstandsfunktion in einem metrischenRaum ist, und die Luftlinie immer der kurzeste Weg, dann ist dieLuftlinie ein monotone Schatzfunktion.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 45/55

Page 144: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Monotonie (2)

N Z

N ′

c(N,N ′) h(N ′)

h(N)

Dreiecksungleichung: h(N) ≤ c(N,N ′) + h(N ′)Das entspricht der Monotonie Bedingung!

Wenn die Luftlinie eine Abstandsfunktion in einem metrischenRaum ist, und die Luftlinie immer der kurzeste Weg, dann ist dieLuftlinie ein monotone Schatzfunktion.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 45/55

Page 145: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Monotonie (2)

N Z

N ′

c(N,N ′) h(N ′)

h(N)

Dreiecksungleichung: h(N) ≤ c(N,N ′) + h(N ′)Das entspricht der Monotonie Bedingung!

Wenn die Luftlinie eine Abstandsfunktion in einem metrischenRaum ist, und die Luftlinie immer der kurzeste Weg, dann ist dieLuftlinie ein monotone Schatzfunktion.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 45/55

Page 146: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Monotonie (3)

Satz

Ist die Schatzfunktion h monoton, so expandiert derA∗-Algorithmus jeden untersuchten Knoten beim ersten malbereits mit dem optimalen Wert. D.h. g(N) = g∗(N) fur alleexpandierten Knoten.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 46/55

Page 147: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Variante: A∗ als Baumsuche

Aktualisiere nie die g(N) Werte

Verwende keine Closed-Liste

Gleiche Knoten kommen evtl. mehrfach in Open vor, aber mitanderen Wegen

Platzersparnis

Optimalitat: Nur wenn h monoton ist

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 47/55

Page 148: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Weitere Folgerungen aus der Monotonie

Satz

Wenn h(.) monoton ist gilt:

1 Wenn N spater als M expandiert wurde, dann giltf(N) ≥ f(M).

2 Wenn N expandiert wurde, dann gilt g∗(N) + h(N) ≤ dwobei d der optimale Wert ist.

3 Jeder Knoten mit g∗(N)+h(N) ≤ d wird von A∗o expandiert.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 48/55

Page 149: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Weitere Folgerungen aus der Monotonie (2)

Theorem

Wenn eine monotone Schatzfunktion gegeben ist, dieSchatzfunktion in konstanter Zeit berechnet werden kann, dannlauft der A∗-Algorithmus in Zeit O(|D|), wennD = {N | g∗(N) + h(N) ≤ d}.Bei konstanter Verzweigungsrate c, und d als Wert des optimalenWeges und δ als der kleinste Abstand zweier Knoten, dann ist die

Komplexitat O(cdδ ).

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 49/55

Page 150: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Weitere Folgerungen aus der Monotonie (3)

Satz

Voraussetzungen fur A∗-Algorithmus erfullt

d die Kosten des optimalen Weges

h2 besser informiert als h1

h1, h2 monoton

fur i=1,2: Ai der A∗o-Algorithmus zu hi

Dann: Alle Knoten N mit g∗(N) + h2(N) ≤ d die von A2

expandiert werden, werden auch von A1 expandiert.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 50/55

Page 151: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

A∗ und monotone Schatzfunktionen

Einschrankung des Suchbereichs:monotone hi; und h2 besser informiert als h1; schematisch)

h0 = 0

N Z

h1 ≈ 0.3h

h2 ≈ 0.6h

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 51/55

Page 152: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Fazit

Monotone Schatzfunktion wunschenswert

Besser informierte Schatzfunktion wunschenswert

Fur monotone Heuristik ist A∗ optimal

Problem: A∗ verbraucht zuviel Platz (alle besuchten Knoten)

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 52/55

Page 153: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Beispiel A* Bahn/Flugzeug

Knoten: Bahnhofe, Flugplatze (auch beides moglich)

Kanten: Entfernung

2 Geschwindigkeiten, Bahn vB und Flugzeug vF .

Gesucht: Schnellste Verbingung von A nach Z.

h1(N) = ll(N,Z)/vF

h2: (siehe Skript)zu N,Z nachster Flughafen, dannh2(N) = (d1 + d2)/vb + ll(N,Z)/vF .

Beide sind monotone Heuristikenund h2 ist besser informiert als h1.

Frage: Gibt es noch besser informierte monotoneSchatzfunktion?Vorsicht: Wenn Berechnung der Schatzfunktion Sucheerfordert

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 53/55

Page 154: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Varianten des A∗-Algorithmus

IDA∗ (Iterative Deepening A∗) mit Grenze d

Ist analog zu A∗.

es gibt keine Open/Closed-Listen, nur einen Stack mitKnoten und Wegekosten.

der Wert g(N) wird bei gerichteten Graphen nicht per Updateverbessert.

Der Knoten N wird nicht expandiert, wenn f(N) > d.

das Minimum der Werte f(N) mit f(N) > d wird das d inder nachsten Iteration.

Platz: Linear in der Lange des optimalen WegesProblem: Durch Nicht-Speichern der entdeckten Knoten: Eventuellexponentiell viele Pfade ablaufen (Zeit)

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 54/55

Page 155: Einführung in die Methoden der [.5ex] Künstlichen ... · M. Schmidt-Schauˇ KI SoSe 2018 Suchverfahren 2/55. Informierte Suche A Heuristische Suche EineHeuristik(Daumenregel) ist

Informierte Suche A∗

Varianten des A∗-Algorithmus (2)

SMA∗ (Simplified Memory Bounded A∗)

Wie A∗, aber die Große der Open und Closed-Mengen istbeschankt

Wenn der Platz verbraucht ist, wird der schlechteste Knotengeloscht

Schlechtester Knoten: Großter f(N)-Wert.

M. Schmidt-Schauß · KI · SoSe 2018 · Suchverfahren 55/55