feedback motion planning navigation autonomer mobiler systeme 2007/2008 sebahattin kücük und tim...
Post on 05-Apr-2015
105 Views
Preview:
TRANSCRIPT
Feedback Motion PlanningNavigation Autonomer Mobiler Systeme 2007/2008
Sebahattin Kücük und Tim Nulpa
Veranstalter: Prof. Dr. Bernd Krieg-Brückner Dr. Bernd Gersdorf
MotivationUnsicherheit ist angeboren in der
physischen WeltDie 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
Unsicherheit zu modellierenExplizit
◦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
Unsicherheit zu modellierenImplizit
◦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
Diskreter Zustandsräume
Definierung eines Rückkopplungsplans◦Betrachte eine diskrete
Bahnplanungsproblem, wo der Anfangszustand nicht gegeben ist
◦Definiere den Zustandsverlauf als
◦Definiere Aktionsverlauf als
Diskreter ZustandsräumeFormulierung einer optimalen
diskreten Rückkopplungsplan◦Sei X ein endlicher nicht leerer
Zustandsraum◦Für jeden definiere den Aktionsraum U (x)◦ ist eine
Zustandsübergangsfunktion
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
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
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:
Diskreter ZustandsräumeEine Rückkopplung heißt erst
gelöst, wenn das Ziel von jedem Zustand, von wo aus das Ziel erreichbar ist, erreicht wird
RückkopplungsplanAusfü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
Rückkopplungsplan auf einem 2D Gitter
Beispiel:◦Betrachte das 2D Gitter Problem◦Mögliche Bewegungen sind: hoch (↑), runter (↓), links (←), rechts (→) und beenden
Rückkopplungsplan auf einem 2D Gitter
Lösung:◦ Es gibt viele Lösungen◦ Die dargestellte Lösungist optimal bezüglich derAnzahl der Schritte zum Ziel◦ Aber existieren auch einige alternative Rückkopplungs-Pläne, die optimale Lösung liefern
Rückkopplungsplan als NavigationsfunktionMethoden 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
Navigationsfunktionen in diskreten ZustandsraumBetrachte die diskrete
Potentialfunktion
Eine Rückkopplung kann durch das benutzen des lokalen Operators die Potentialfunktion definieren
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
Navigationsfunktionen in diskreten Zustandsraum
Wir brauchen eine Potentialfunktion, das erfolgreich den Ziel erreicht
Nehmen wir an, dass Kostenfunktion isotrop ist
Sei der erreichte Zustand nach der Anwendung von (ausgegeben von lokalen Operator)
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
Navigationsfunktionen in diskreten ZustandsraumDefinition
◦eine optimale Navigationsfunktion ist eine Navigationsfunktion, das den Grundsatz der Optimalität erfüllt:
Navigationsfunktionen in diskreten Zustandsraum◦so würde eine Korrektur von einer
optimalenNavigationsfunktion aussehen
◦wir können den Grundsatz der Optimalität mit der isotropen Kosten nachprüfen
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
Gitterbasierte Navigationsfunktion für BahnplanungOptimale Bahnplanung bringt
Roboter näher zu HindernissenEine 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
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.
Wa
vefr
ont
Pro
pag
atio
n
Wavefront Propagation ( Wellen-Ausbreitung)
1
1
2
2
2
3
3
3
4
4
4
5
56
7
7
8
8
8
9
9
9
9
1011
10
11 10
10
10
11
11
12
1213
Maximum Clearance AlgorithmusMarkiere 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
Maximum Clearance Algorithmus
Berechne eine NF über SBerechne eine NF indem
man S als Zielregion betrachtetFür jeden setze für
die restlichen Zustände setze wo der nächste Punkt zu x ist
Maximum clearance Algorithmus
Weitere Algorithmen für die implizite Bahnplanung
Schaffen eines jeweils gültigen Konfigurationsraumes
Ändern der jeweiligen Route nur bei erkannten Hindernissen
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◦...
Algorithmen
SichtbarkeitsgraphVektorfelderPotentialfelderMusterbasierte AnsätzePolar Bug Algorithmus
Sichtbarkeitsgraph
Auf der Basis von Sichtlinien im 2D-Raum
Nicht gerichteter GraphDie Kanten sind alle Verbindungen
die nicht das innere eines Hindernisses schneiden
Sichtbarkeitslinien Beispiel
Sichtbarkeitslinien
Suche auf dem Graphen mit klassischen Algorithmen◦Nearest Neighbour◦Dijkstra
Bei vielen Hindernissen wird der Graph sehr Groß◦Hoher Aufwand◦Hoher Speicherbedarf
Vektorfelder über Zellkomplexen
Ein Raum wird per Zelldekomposition unterteilt
Über jede Zelle wird ein Vektorfeld gelegt
Zelldekomposition
Exakte Zellzerlegung◦Der freie Raum wird exakt dargestellt◦Hoher Aufwand
Approximierte Zellzerlegung◦Näherungsweise Darstellung des
Raumes◦Geringerer Rechenaufwand
Zelldekomposition Beispiel
Vektorfelder
Ordnen jedem Punkt im Raum einen Vektor zu
Vektorfelder über Zellkomplexen
Das Vekotfeld zeigt zu einer Ausgangskante
Über die Ausgangskante kommt man zu einem neuen Feld im Zellenkomplex
Vektorfelder über Zellkomplexen Beispiel
Musterbasierte Methoden
Über die freien Bereiche eines Raumes werden simple Muster gelegt
Zum Beispiel Kreise
Musterbasierte Methoden
Auf jedem Muster ist ein Vektor definiert der zu einem nächsten führt
Erweitern des GrundproblemsReaktive BahnplanungBewegeliche Dinge im WegKinematische Einschränkungen
◦Bewegunsradius des RobotersGeometrische Einschränkungen
◦Ausmaße des Roboters
Aufwand minimieren
Viele Möglichkeiten z.B. vereinfachte Darstellung des sich bewegenden Objektes
Polar Bug Algorithmus
Funktioniert auf der Basis von Laserscannerdaten
Wird bereits erfolgreich getestetSpeziell für die Navigation in sich
ständig ändernden UmgebungenAngewendet bei Projekten wie
Care-O-Bot
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
Polar Bug AlgorithmusBeispiel
FazitEs gibt viele Algorithmen, die die
Roboter Bewegungen berechnenViele 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
Danke für die Aufmerksamkeit !!!
top related