Title: Spezialvorlesung Suchalgorithmen
1SpezialvorlesungSuchalgorithmen
-
- Thema
- Realzeitsuche
- Stefan Edelkamp
2Struktur des Buchs
3Überblick
- Einleitung Motivation
- Beispiel Realzeitsuche im (n2-1)-Puzzle
- LRTA mit und ohne Lokale Suchräume
- Varianten
- Zielfindung RTA, SLRTA
- Konvergenzbeschleunigung FALCON
- Adaption RTAA
- Robotik
4Realzeitsuche
- Zeitkritische Entscheidungen nicht oder nur
schwer korrigieren - ? Gerade diese Momente erfordern Erfahrung
- ? Aktionen ausführen, bevor die sich daraus
ergebenden Konsequenzen bekannt sind. - Ursachen
- Unzureichende Information über die Domäne,
- Ein für eine optimale Entscheidungsfindung zu
großer Suchraum - Aktive Veränderung des Suchraumes selbst, z.B.
durch Interaktion mit der Umgebung. - Beispiele Robotersteuerung, Schachspiel
5Beispiel Polynomiale Lösung des 15-Puzzles
Untere Schranke (links) O(n3) -
Manhattandistanz Obere Schranke (rechts)
Rekursion T(n) lt T(n -1)15n2
6Analyse obere Schranke
- Um (1,k) zu plazieren, müssen max. 8n - 2k - 7
Züge gemacht werden - 2n-k -1 Züge zum Erreichen des Steines,
- 6(n-k -1) Züge, um ihn dann nach (k 1, k) zu
befördern, - 5k Zuge, um ihn hinauf zum Ziel zu bewegen.
- ? S1 k n/2 (8n-2k-7) 15n2/4-4n
- Züge für die erste Hälfte der oberen Reihe
- Mehraufwand zur Integration des letzten
Spielsteins 8n
7LRTA
- Idee Approximation der Bellmannschen
Optimalitätsgleichung - h(u) 0, für u ? G
- h(u) min w(u, v)h(v) v ?Succ(u), sonst
- Algorithmus LRTA
- 1. Für jeden Zustand u setze initial h(u)
h0(u) - 2. Setze den derzeitigen Zustand u auf einen
Startzustand u0 - 3. Führe die folgenden Schritte durch bis u ? G
- Wertaktualisierung h(u) min w(u, v)h(v) v
?Succ(u) - Aktionsausführung Gehe zu dem Kind u mit
- u argmin w(u, v)h(v) v
?Succ(u) - (Tie wähle einen (beliebigen) aus)
8Beispiel Robotik
9LRTA
10Vollständigkeit
11Beweis
12Konvergenz
13Beweis
14Konvergenz auf Trajektorie
15Beweis
16Größere Lokale Zustandsräume
17Beispiel
18Pseudo-Code
19Wertaktualisierung
20Worst caseLRTA
21Schnelle Lösung in Real-Time A (RTA)
- Algorithmus RTA (Annahme Ungerichteter Graph)
- 1. Für jeden Zustand u setze initial h(u)
h0(u) - 2. Setze den derzeitigen Zustand u auf einen
Startzustand u0 - 3. Führe die folgenden Schritte durch bis u ? G
- Wertaktualisierung
- h(u) 2nd-best w(u, v)h(v) v
?Succ(u) - Aktionsausführung Gehe zu dem Kind u mit
- u argmin w(u, v)h(v) v
?Succ(u) - (Tie wähle einen (beliebigen) aus)
22Eigenschaften RTA
- Lokal Optimal auf Bäumen RTA wendet sich immer
in Richtung des Horizontknotens mit geringster
Bewertung. - Beweisidee Auf dem Weg von v nach u die
Bewertung h(v) als das Minimum aller
Horizontbewertungen h(w)g(v,w) im Teilbaum
T(u,v) zu erkennen, dessen Wurzel durch die Kante
(u, v) beschrieben wird. - Algorithmus findet einen Lösung, sofern sie
existiert. - Beweisidee RTA muß aus jedem Zyklus irgendwann
ausbrechen. - Problem Einige der Knoten u überschätzen die
Distanz zum Ziel, da ihr h-Wert immer noch auf
dem zweitbesten Wert gesetzt ist - ? kein Lernen (erneuter Aufruf unmöglich)
23SRTA
- Idee Entkoppelung von Zielfindung und unterer
Schrankenberechnung durch die Schilder - 1. Für alle v?Succ(u) setze h(v) auf den
zweitbesten Wert sign(v,w) aller Kanten (v,w).
Existiert keiner, setze h(v) auf unendlich.
Weiterhin setze sign(u, v) auf h(v)w(u,v). - 2. Gehe zu dem Knoten v mit dem besten f-Wert
24Schnelle Konvergenz in FALCONS
25Pseudo-Code
26Schnellere Aktualisierung in Real-Time Adaptive
A (RTAA)
27Fallstudie
28A
29LRTA mit Lokalem Suchraum
30RTAA mit lokalem Suchraum
31RTAA mit Lookahead 4
32Robotik
Mobiler Roboter
Einarm Industrieroboter
33Arbeits- und Konfigurationsraum
34Diskretisierungen
Uniform
Parti-Game Algorithmus
35Bekannte/Unbekannte Umgebungen
36Unterschiedliche Suchgraphen
37Lokalisierungsproblem
Suchraum
38Kartenerstellung
39Zustands-Raum
40Implementation mit Infrarot-Sensoren