1 / 48

Feedback Motion Planning

Feedback Motion Planning. Navigation Autonomer Mobiler Systeme 2007/2008. Veranstalter: Prof. Dr. Bernd Krieg-Brückner Dr. Bernd Gersdorf. Sebahattin Kücük und Tim Nulpa. Motivation. Unsicherheit ist angeboren in der physischen Welt

oona
Download Presentation

Feedback Motion Planning

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. Feedback Motion Planning Navigation Autonomer Mobiler Systeme 2007/2008 Veranstalter: Prof. Dr. Bernd Krieg-Brückner Dr. Bernd Gersdorf Sebahattin Kücük und Tim Nulpa

  2. Motivation • Unsicherheit ist angeboren in der physischen Welt • Die Schritte eines Plans sind abhängig von der Information, die während der Ausführung erfasst wird • Das Konzept Rückkopplung (Feedback) kommt ins Spiel um Korrekturmaßnahmen während der Ausführung einzuführen • Zuverlässiger: Rücksicht auf Modellierung von Unsicherheiten

  3. Unsicherheit zu modellieren • Explizit • Bahnplanung zählt deutlich zu der Abweichung, welches durch Unsicherheit verursacht wird • Rückkopplungsbasierte Algorithmen berücksichtigen diese Unsicherheiten • Unsicherheitsmodellierung ist eine anspruchsvolle Aufgabe, • Aber schwieriges Algorithmusdesign • Anfällig Fehlern auszugeben

  4. Unsicherheit zu modellieren • Implizit • Eine Bahn wird ohne Berücksichtigung von Unsicherheiten berechnet • Ein Rückkopplungsplan nimmt während der Ausführung Korrekturmaßnahmen vor, um Abweichungen, die durch Unsicherheit verursacht werden, aufzuheben

  5. Diskreter Zustandsräume • Definierung eines Rückkopplungsplans • Betrachte eine diskrete Bahnplanungsproblem, wo der Anfangszustand nicht gegeben ist • Definiere den Zustandsverlauf als • Definiere Aktionsverlauf als

  6. Diskreter Zustandsräume • Formulierung einer optimalen diskreten Rückkopplungsplan • Sei X ein endlicher nicht leerer Zustandsraum • Für jeden definiere den Aktionsraum U (x) • ist eine Zustandsübergangsfunktion

  7. Diskreter Zustandsräume • Die geordnete Menge S = {1,2,,,,,,,,,,,∞} Kennzeichnet die Menge der Stufen • Ein Element k Є S wird Stufe genannt • ist die Zielmenge • Definiere Kostenfunktion: wobei F = K + 1

  8. Diskreter Zustandsräume • Vorgehensweise bei Lösungen • Angesichts der Anfangskonditionen kann ein Ablauf spezifiziert werden • Ohne Anfangskondition könnte ein Ablauf für jeden Zustand spezifiziert werden • Überhöhte Speicheranforderung • z.B. A* Algorithmus • Eine Ablaufführung für jeden Zustand ist überflüssig • Es genügt nur den ersten Ablauf bei jedem Zustand zu führen

  9. Diskreter Zustandsräume • Feedback Plan • Definiere Feedback Plan als eine Funktion π: X  U dass jeden Zustand zu einem Ablauf abbildet • Wenn das Ziel erreicht wird, wendet die Rückkopplung den Endablauf (termination action) an:

  10. Diskreter Zustandsräume • Eine Rückkopplung heißt erst gelöst, wenn das Ziel von jedem Zustand, von wo aus das Ziel erreichbar ist, erreicht wird

  11. Rückkopplungsplan • Ausführbarkeit und Optimalität • Sei die Menge der Zustände, von wo aus das Ziel erreichbar ist • Eine Rückkopplung π wird Ausführbare Rückkopplung genannt, wenn • Eine Rückkopplungsplan ist optimal, wenn das totale Kosten L(π, x) von irgendeiner Anfangskondition am geringsten unter allen möglichen Plänen erreichbar ist

  12. Rückkopplungsplan auf einem 2D Gitter • Beispiel: • Betrachte das 2D Gitter Problem • Mögliche Bewegungen sind: hoch (↑), runter (↓), links (←), rechts (→) und beenden

  13. Rückkopplungsplan auf einem 2D Gitter • Lösung: • Es gibt viele Lösungen • Die dargestellte Lösung ist optimal bezüglich der Anzahl der Schritte zum Ziel • Aber existieren auch einige alternative Rückkopplungs- Pläne, die optimale Lösung liefern

  14. Rückkopplungsplan als Navigationsfunktion • Methoden wie Dijkstra Algorithmus und Iteration (value Iteration) erzeugen Informationen, die benutzt werden können um Rückkopplung zu repräsentieren • Um das zu erreichen wird ein Rückkopplung (Feedback plan) als Potentialfunktion über einen Zustandsraum ausgedrückt • Potentialfunktion kann optimale Lösung für Rückkopplung liefern

  15. Navigationsfunktionen in diskreten Zustandsraum • Betrachte die diskrete Potentialfunktion • Eine Rückkopplung kann durch das benutzen des lokalen Operators die Potentialfunktion definieren

  16. Navigationsfunktionen in diskreten Zustandsraum • Im Falle der optimalen Planung ist der lokale Operator definiert dann als: • Wenn das Planungsproblem isotrop ist, dann: • Für alle • Isotrop: unabhängigkeit einer Eigenschaft von der Richtung

  17. Navigationsfunktionen in diskreten Zustandsraum • Wir brauchen eine Potentialfunktion, das erfolgreich den Ziel erreicht • Nehmen wir an, dass Kostenfunktionisotrop ist • Sei der erreichte Zustand nach der Anwendung von (ausgegeben von lokalen Operator)

  18. Navigationsfunktionen in diskreten Zustandsraum • Definition • Eine Potentialfunktion , die die folgende drei Eigenschaften besitzt, nennt man auch Navigationsfunktion • 1. für alle • 2. wenn kein von x aus erreichbar ist • 3. und der Zustand nach der Anwendung des lokalen Operators

  19. Navigationsfunktionen in diskreten Zustandsraum • Definition • eine optimale Navigationsfunktion ist eine Navigationsfunktion, das den Grundsatz der Optimalität erfüllt:

  20. Navigationsfunktionen in diskreten Zustandsraum • so würde eine Korrektur von einer optimalen Navigationsfunktion aussehen • wir können den Grundsatz der Optimalität mit der isotropen Kosten nachprüfen

  21. Navigationsfunktionen in diskreten Zustandsraum • Beispiel • Betrachte das vorherige Beispiel mit einem isotropischen Kostenmodell • Es wird eine Aktion (Ablauf) ausgewählt, dass den Potentialwert reduziert und uns zum Ziel (Feedback Plan) bringt

  22. Gitterbasierte Navigationsfunktion für Bahnplanung • Optimale Bahnplanung bringt Roboter näher zu Hindernissen • Eine Gitterbasierte Version, der Maximum Clearance Karte benutzt, kann konstruiert werden um Abstand von Hindernissen zu haben • Eine Navigationsfunktion, welches den Roboter auf der Karte führt, kann definiert werden

  23. Maximum Clearance Algorithmus • Vorausgesetzt, dass es nur ein Zielzustand gibt • Initialisiere • für jeden bestimme und füge alle nicht besuchten Nachbarn von x in • Wenn dann beenden. Andernfalls lass i: = i + 1 und gehe zu Schritt 3. Wavefront Propagation

  24. Wavefront Propagation ( Wellen-Ausbreitung) 4 11 10 9 8 7 5 4 10 9 8 7 6 5 3 8 3 2 11 10 9 4 3 2 1 11 10 9 12 1 13 12 11 10 2

  25. Maximum Clearance Algorithmus • Markiere jeden Zustand, wo sich zwei gegenüberliegende wavefronts als Gitterzustand (Skeleton) treffen • S kennzeichnet die menge aller Gitterzustände (Skeleton) • Verbinde mit dem Gitter (Skeleton) mit einem Suchalgorithmus und füge den resultierenden Pfad in S

  26. Maximum Clearance Algorithmus • Berechne eine NF über S • Berechne eine NF indem man S als Zielregion betrachtet • Für jeden setze für die restlichen Zustände setze wo der nächste Punkt zu x ist

  27. Maximum clearance Algorithmus

  28. Weitere Algorithmen für die implizite Bahnplanung • Schaffen eines jeweils gültigen Konfigurationsraumes • Ändern der jeweiligen Route nur bei erkannten Hindernissen

  29. Algorithmen • Es gibt viele Algorithmen die sich zur Bahnplanung eignen • Unterschied ist hauptsächlich der Aufwand • Aufwand minimieren durch: • Vereinfachte Darstellung der Welt • Vereinfachen von Objekten • ...

  30. Algorithmen • Sichtbarkeitsgraph • Vektorfelder • Potentialfelder • Musterbasierte Ansätze • Polar Bug Algorithmus

  31. Sichtbarkeitsgraph • Auf der Basis von Sichtlinien im 2D-Raum • Nicht gerichteter Graph • Die Kanten sind alle Verbindungen die nicht das innere eines Hindernisses schneiden

  32. Sichtbarkeitslinien Beispiel

  33. Sichtbarkeitslinien • Suche auf dem Graphen mit klassischen Algorithmen • Nearest Neighbour • Dijkstra • Bei vielen Hindernissen wird der Graph sehr Groß • Hoher Aufwand • Hoher Speicherbedarf

  34. Vektorfelder über Zellkomplexen • Ein Raum wird per Zelldekomposition unterteilt • Über jede Zelle wird ein Vektorfeld gelegt

  35. Zelldekomposition • Exakte Zellzerlegung • Der freie Raum wird exakt dargestellt • Hoher Aufwand • Approximierte Zellzerlegung • Näherungsweise Darstellung des Raumes • Geringerer Rechenaufwand

  36. Zelldekomposition Beispiel

  37. Vektorfelder • Ordnen jedem Punkt im Raum einen Vektor zu

  38. Vektorfelder über Zellkomplexen • Das Vekotfeld zeigt zu einer Ausgangskante • Über die Ausgangskante kommt man zu einem neuen Feld im Zellenkomplex

  39. Vektorfelder über Zellkomplexen Beispiel

  40. Musterbasierte Methoden • Über die freien Bereiche eines Raumes werden simple Muster gelegt • Zum Beispiel Kreise

  41. Musterbasierte Methoden • Auf jedem Muster ist ein Vektor definiert der zu einem nächsten führt

  42. Erweitern des Grundproblems • Reaktive Bahnplanung • Bewegeliche Dinge im Weg • Kinematische Einschränkungen • Bewegunsradius des Roboters • Geometrische Einschränkungen • Ausmaße des Roboters

  43. Aufwand minimieren • Viele Möglichkeiten z.B. vereinfachte Darstellung des sich bewegenden Objektes

  44. Polar Bug Algorithmus • Funktioniert auf der Basis von Laserscannerdaten • Wird bereits erfolgreich getestet • Speziell für die Navigation in sich ständig ändernden Umgebungen • Angewendet bei Projekten wie Care-O-Bot

  45. Kollisionsvermeidung • Unterste Sicherheitsebende sollte immer ein Modul zur Kollisionserkennung sein • Stoppt das aktive Fahrzeug im Notfall • Wichtig bei kurzfristig auftretenden Hindernissen • Zum Beispiel wenn eine Person davor springt

  46. Polar Bug AlgorithmusBeispiel

  47. Fazit • Es gibt viele Algorithmen, die die Roboter Bewegungen berechnen • Viele Algorithmen gehen davon aus, dass der berechnete Weg ohne jede Abweichung befahren werden kann • Aber meistens zeigt der Roboter kleine Abweichungen von den eigentlichen Weg und dies führt auf einen Hindernisfreien Raum zu Kollisionen • Durch Feedback Motion Planning wird dieses Problem beheben

  48. Danke für die Aufmerksamkeit !!!

More Related