1 / 40

Spezialvorlesung Suchalgorithmen

Spezialvorlesung Suchalgorithmen. Thema: Realzeitsuche Stefan Edelkamp. Struktur des Buchs. Überblick. Einleitung & Motivation Beispiel: Realzeitsuche im (n^2-1)-Puzzle LRTA* mit und ohne Lokale Suchräume Varianten Zielfindung: RTA*, SLRTA* Konvergenzbeschleunigung: FALCON

vidal
Download Presentation

Spezialvorlesung Suchalgorithmen

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SpezialvorlesungSuchalgorithmen Thema: Realzeitsuche Stefan Edelkamp

  2. Struktur des Buchs

  3. Überblick • Einleitung & Motivation • Beispiel: Realzeitsuche im (n^2-1)-Puzzle • LRTA* mit und ohne Lokale Suchräume • Varianten • Zielfindung: RTA*, SLRTA* • Konvergenzbeschleunigung: FALCON • Adaption: RTAA* • Robotik

  4. Realzeitsuche 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

  5. Beispiel: Polynomiale Lösung des 15-Puzzles Untere Schranke (links): O(n^3) - Manhattandistanz Obere Schranke (rechts): Rekursion T(n) <= T(n −1)+15n^2

  6. Analyse 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 Z¨uge, um ihn hinauf zum Ziel zu bewegen. Σ1 ≤k ≤ n/2 (8n−2k−7) = 15n^2/4−4n Züge für die erste Hälfte der oberen Reihe + Mehraufwand zur Integration des letzten Spielsteins 8n

  7. LRTA* Idee: Approximation der Bellmann’schen 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)

  8. Beispiel Robotik:

  9. LRTA*

  10. Vollständigkeit

  11. Beweis

  12. Konvergenz

  13. Beweis

  14. Konvergenz auf Trajektorie

  15. Beweis

  16. Größere „Lokale Zustandsräume“

  17. Beispiel

  18. Pseudo-Code

  19. Wertaktualisierung

  20. Worst caseLRTA*

  21. Schnelle 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)

  22. Eigenschaften 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)

  23. SRTA* 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

  24. Schnelle Konvergenz in FALCONS

  25. Pseudo-Code

  26. Schnellere Aktualisierung in Real-Time Adaptive A* (RTAA*)

  27. Fallstudie

  28. A*

  29. LRTA* mit Lokalem Suchraum

  30. RTAA* mit lokalem Suchraum

  31. RTAA* mit Lookahead = 4

  32. Robotik Mobiler Roboter Einarm Industrieroboter

  33. Arbeits- und Konfigurationsraum

  34. Diskretisierungen Uniform: Parti-Game Algorithmus

  35. Bekannte/Unbekannte Umgebungen

  36. Unterschiedliche Suchgraphen

  37. Lokalisierungsproblem Suchraum

  38. Kartenerstellung

  39. Zustands-Raum

  40. Implementation mit Infrarot-Sensoren

More Related