feedback motion planning

48
Feedback Motion Planning Navigation Autonomer Mobiler Systeme 2007/2008 Sebahattin Kücük und Tim Nulpa Veranstalter: Prof. Dr. Bernd Krieg-Brückner Dr. Bernd Gersdorf

Upload: oona

Post on 10-Feb-2016

56 views

Category:

Documents


0 download

DESCRIPTION

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 - PowerPoint PPT Presentation

TRANSCRIPT

Feedback Motion Planning

Feedback Motion PlanningNavigation Autonomer Mobiler Systeme 2007/2008Sebahattin Kck und Tim NulpaVeranstalter: Prof. Dr. Bernd Krieg-Brckner Dr. Bernd Gersdorf1MotivationUnsicherheit ist angeboren in der physischen WeltDie Schritte eines Plans sind abhngig von der Information, die whrend der Ausfhrung erfasst wirdDas Konzept Rckkopplung (Feedback) kommt ins Spiel um Korrekturmanahmen whrend der Ausfhrung einzufhrenZuverlssiger: Rcksicht auf Modellierung von Unsicherheiten2Unsicherheit zu modellierenExplizitBahnplanung zhlt deutlich zu der Abweichung, welches durch Unsicherheit verursacht wirdRckkopplungsbasierte Algorithmen bercksichtigen diese Unsicherheiten Unsicherheitsmodellierung ist eine anspruchsvolle Aufgabe,Aber schwieriges AlgorithmusdesignAnfllig Fehlern auszugeben3Unsicherheit zu modellierenImplizitEine Bahn wird ohne Bercksichtigung von Unsicherheiten berechnetEin Rckkopplungsplan nimmt whrend der Ausfhrung Korrekturmanahmen vor, um Abweichungen, die durch Unsicherheit verursacht werden, aufzuheben4Diskreter ZustandsrumeDefinierung eines RckkopplungsplansBetrachte eine diskrete Bahnplanungsproblem, wo der Anfangszustand nicht gegeben istDefiniere den Zustandsverlauf als

Definiere Aktionsverlauf als

5Diskreter ZustandsrumeFormulierung einer optimalen diskreten RckkopplungsplanSei X ein endlicher nicht leerer ZustandsraumFr jeden definiere den Aktionsraum U (x) ist eine Zustandsbergangsfunktion

6Diskreter ZustandsrumeDie geordnete Menge S = {1,2,,,,,,,,,,,}Kennzeichnet die Menge der Stufen

Ein Element k S wird Stufe genannt ist die ZielmengeDefiniere Kostenfunktion:

wobei F = K + 1

7Diskreter ZustandsrumeVorgehensweise bei LsungenAngesichts der Anfangskonditionen kann ein Ablauf spezifiziert werdenOhne Anfangskondition knnte ein Ablauf fr jeden Zustand spezifiziert werdenberhhte Speicheranforderungz.B. A* AlgorithmusEine Ablauffhrung fr jeden Zustand ist berflssigEs gengt nur den ersten Ablauf bei jedem Zustand zu fhren

Diskreter ZustandsrumeFeedback PlanDefiniere Feedback Plan als eine Funktion : X U dass jeden Zustand zu einem Ablauf abbildet

Wenn das Ziel erreicht wird, wendet die Rckkopplung den Endablauf (termination action) an:

Diskreter ZustandsrumeEine Rckkopplung heit erst gelst, wenn das Ziel von jedem Zustand, von wo aus das Ziel erreichbar ist, erreicht wirdRckkopplungsplanAusfhrbarkeit und OptimalittSei die Menge der Zustnde, von wo aus das Ziel erreichbar istEine Rckkopplung wird Ausfhrbare Rckkopplung genannt, wenn

Eine Rckkopplungsplan ist optimal, wenn das totale Kosten L(, x) von irgendeiner Anfangskondition am geringsten unter allen mglichen Plnen erreichbar ist

Rckkopplungsplan auf einem 2D GitterBeispiel:Betrachte das 2D Gitter ProblemMgliche Bewegungen sind: hoch (), runter (), links (), rechts () und beenden

Rckkopplungsplan auf einem 2D GitterLsung:Es gibt viele LsungenDie dargestellte Lsungist optimal bezglich derAnzahl der Schritte zum ZielAber existieren auch einige alternative Rckkopplungs-Plne, die optimale Lsung liefern

Rckkopplungsplan als NavigationsfunktionMethoden wie Dijkstra Algorithmus und Iteration (value Iteration) erzeugen Informationen, die benutzt werden knnen um Rckkopplung zu reprsentieren

Um das zu erreichen wird ein Rckkopplung (Feedback plan) als Potentialfunktion ber einen Zustandsraum ausgedrckt

Potentialfunktion kann optimale Lsung fr Rckkopplung liefernNavigationsfunktionen in diskreten ZustandsraumBetrachte die diskrete Potentialfunktion

Eine Rckkopplung kann durch das benutzen des lokalen Operators die Potentialfunktion definieren

Navigationsfunktionen in diskreten ZustandsraumIm Falle der optimalen Planung ist der lokale Operator definiert dann als:

Wenn das Planungsproblem isotrop ist, dann:

Fr alle Isotrop: unabhngigkeit einer Eigenschaft von der Richtung

Navigationsfunktionen in diskreten ZustandsraumWir 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 ZustandsraumDefinitionEine Potentialfunktion , die die folgende drei Eigenschaften besitzt, nennt man auch Navigationsfunktion1. fr alle

2. wenn keinvon x aus erreichbar ist 3. und der Zustand nach der Anwendung des lokalen Operators

Navigationsfunktionen in diskreten ZustandsraumDefinitioneine optimale Navigationsfunktion ist eine Navigationsfunktion, das den Grundsatz der Optimalitt erfllt:

Navigationsfunktionen in diskreten Zustandsraumso wrde eine Korrektur von einer optimalenNavigationsfunktion aussehenwir knnen den Grundsatz der Optimalitt mit der isotropen Kosten nachprfen

Navigationsfunktionen in diskreten ZustandsraumBeispielBetrachte das vorherigeBeispiel mit einem isotropischen KostenmodellEs wird eine Aktion (Ablauf)ausgewhlt, dass den Potentialwert reduziert und uns zum Ziel (Feedback Plan) bringt

Gitterbasierte Navigationsfunktion fr BahnplanungOptimale Bahnplanung bringt Roboter nher zu HindernissenEine Gitterbasierte Version, der Maximum Clearance Karte benutzt, kann konstruiert werden um Abstand von Hindernissen zu habenEine Navigationsfunktion, welches den Roboter auf der Karte fhrt, kann definiert werdenMaximum Clearance AlgorithmusVorausgesetzt, dass es nur ein Zielzustand gibt

Initialisiere fr jedenbestimme und fge alle nicht besuchten Nachbarn von x inWenn dann beenden. Andernfalls lass i: = i + 1 und gehe zu Schritt 3.

Wavefront Propagation

Wavefront Propagation ( Wellen-Ausbreitung)

112 2 2 3 3 3 44455677888999910111011101010111112121324Maximum Clearance AlgorithmusMarkiere jeden Zustand, wo sich zwei gegenberliegende wavefronts als Gitterzustand (Skeleton) treffenS kennzeichnet die menge aller Gitterzustnde (Skeleton)Verbinde mit dem Gitter (Skeleton) mit einem Suchalgorithmus und fge den resultierenden Pfad in S

Maximum Clearance AlgorithmusBerechne eine NF ber SBerechne eine NF indem man S als Zielregion betrachtetFr jeden setze fr die restlichen Zustnde setze wo der nchste Punkt zu x ist

Maximum clearance Algorithmus

27Weitere Algorithmen fr die implizite BahnplanungSchaffen eines jeweils gltigen Konfigurationsraumes

ndern der jeweiligen Route nur bei erkannten Hindernissen28AlgorithmenEs gibt viele Algorithmen die sich zur Bahnplanung eignenUnterschied ist hauptschlich der AufwandAufwand minimieren durch:Vereinfachte Darstellung der WeltVereinfachen von Objekten...29AlgorithmenSichtbarkeitsgraphVektorfelderPotentialfelderMusterbasierte AnstzePolar Bug Algorithmus30SichtbarkeitsgraphAuf der Basis von Sichtlinien im 2D-RaumNicht gerichteter GraphDie Kanten sind alle Verbindungen die nicht das innere eines Hindernisses schneiden31Sichtbarkeitslinien Beispiel

32SichtbarkeitslinienSuche auf dem Graphen mit klassischen AlgorithmenNearest NeighbourDijkstraBei vielen Hindernissen wird der Graph sehr GroHoher AufwandHoher Speicherbedarf33Vektorfelder ber ZellkomplexenEin Raum wird per Zelldekomposition unterteilt

ber jede Zelle wird ein Vektorfeld gelegt34ZelldekompositionExakte ZellzerlegungDer freie Raum wird exakt dargestelltHoher Aufwand

Approximierte ZellzerlegungNherungsweise Darstellung des RaumesGeringerer Rechenaufwand35Zelldekomposition Beispiel

36VektorfelderOrdnen jedem Punkt im Raum einen Vektor zu

37Vektorfelder ber ZellkomplexenDas Vekotfeld zeigt zu einer Ausgangskanteber die Ausgangskante kommt man zu einem neuen Feld im Zellenkomplex

38Vektorfelder ber Zellkomplexen Beispiel

39Musterbasierte Methodenber die freien Bereiche eines Raumes werden simple Muster gelegtZum Beispiel Kreise

40Musterbasierte MethodenAuf jedem Muster ist ein Vektor definiert der zu einem nchsten fhrt

41Erweitern des GrundproblemsReaktive BahnplanungBewegeliche Dinge im WegKinematische EinschrnkungenBewegunsradius des RobotersGeometrische EinschrnkungenAusmae des Roboters42Aufwand minimierenViele Mglichkeiten z.B. vereinfachte Darstellung des sich bewegenden Objektes

43Polar Bug AlgorithmusFunktioniert auf der Basis von LaserscannerdatenWird bereits erfolgreich getestetSpeziell fr die Navigation in sich stndig ndernden UmgebungenAngewendet bei Projekten wie Care-O-Bot44KollisionsvermeidungUnterste Sicherheitsebende sollte immer ein Modul zur Kollisionserkennung seinStoppt das aktive Fahrzeug im NotfallWichtig bei kurzfristig auftretenden HindernissenZum Beispiel wenn eine Person davor springt45Polar Bug AlgorithmusBeispiel

46FazitEs gibt viele Algorithmen, die die Roboter Bewegungen berechnenViele Algorithmen gehen davon aus, dass der berechnete Weg ohne jede Abweichung befahren werden kannAber meistens zeigt der Roboter kleine Abweichungen von den eigentlichen Weg und dies fhrt auf einen Hindernisfreien Raum zu KollisionenDurch Feedback Motion Planning wird dieses Problem beheben

47Danke fr die Aufmerksamkeit !!!48