Feedback Motion Planning

Slides:



Advertisements
Ähnliche Präsentationen
Grundlagen des A*-Algorithmus und Anwendung in der Routenplanung
Advertisements

Eine dynamische Menge, die diese Operationen unterstützt,
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (26-Graphenalgorithmen: Wiederholung und Übung) Prof. Th. Ottmann.
Algebraische Zahlen: Exaktes Rechnen mit Wurzeln
Graphen Ein Graph ist eine Kollektion von Knoten und Kanten. Knoten sind einfache Objekte. Sie haben Namen und können Träger von Werten, Eigenschaften.
Institut für Informatik Abt. Intelligente Systeme
R. Der - Vorlesung Algorithmen und Datenstrukturen (Magister)
Default Logiken Zhao Li
Die 1-Baum-Relaxation des TSP mit der Subgradientenmethode
Anwendung und Visual Basic
Systeme 1 Kapitel 7 Deadlocks WS 2009/10.
Motivation Richard Göbel.
1 Bewegungsplanung Computational Geometry Prof. Dr. Th. Ottmann Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth Finden eines.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (06 – Reduktion endlicher Automaten) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (04 – Automaten mit ε-Transitionen) Prof. Dr. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (21 – Kürzeste Wege) T. Lauer.
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 16 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
PG 520 Intelligence Service – gezielte Informationen aus dem Internet
Fighting State Explosion
Was sind Histogramme? (1)
Minimum Spanning Tree: MST
Wegplanung mit Fast Forward Andreas Bauer2 Inhalt Klassisches Planen Verschiedene Planerstrategien Fast Forward –Allgemeines –Systemarchitektur.
Intelligentes Crawling im WWW mit Hilfe intuitiver Suchbedingungen
Teil I: Uninformierte Suche
Handlungsplanung und Allgemeines Spiel „Game Description Language (GDL)“ Peter Kissmann.
Kontrollfragen zu Kapitel 1
Khatuna Khvedelidze Teona Khizanishvili
Vortrag über Graphen Von Jörg Hendricks.
Prof. Dr. Gerhard Schmidt pres. by H.-J. Steffens Software Engineering SS 2009Folie 1 Objektmodellierung Objekte und Klassen Ein Objekt ist ein Exemplar.
Ziele der Arbeit Darstellung der Grundlagen und Phänomene des Fußgängerverkehrs Grundlagen Zellularer Automaten Entwicklung eines Simulationsmodells für.
Einführung in die Physik für LAK
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung 1 SS 2001 Algorithmus von Dijkstra.
Effiziente Algorithmen
Effiziente Algorithmen
Flüsse, Schnitte, bipartite Graphen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Effiziente Algorithmen
Effiziente Algorithmen
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/ /23.1.
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
… oder wie finde ich den Weg
ProSeminar WS 2007/08 Leo Hackstein
Petrinetze 1. Einführung Informatik : wesentlich Modellierung von
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung Datenstrukturen für den Algorithmus von.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Foliendesign: Jörg Steinrücken & Tobias Kahn Vorlesung
Constraint Delaunay Triangulations
Routenplanung querfeldein - Geometric Route Planning
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung Suche des kürzesten Weges in einem Netz.
Graph – basierte Routenplanung versus Geometrische Routenplanung
Wann ist eine Funktion (über den natürlichen Zahlen) berechenbar?
Der A*-Algorithmus.
Algorithmen der Objekterkennung
Gliederung der Vorlesung
Institut für Informationssysteme Technische Universität Braunschweig Institut für Informationssysteme Technische Universität Braunschweig Verdrängung von.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II 6. Sem. Vorlesung 4 4. Mai 2000 Voronoi-Diagramm.
Geoinformationssysteme
Programmiersprachen II Vorbesprechung Klausur Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Programmiersprachen II Fortsetzung Datenstrukturen Balancierte Bäume 3 Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Spärliche Kodierung von Videos natürlicher Szenen Vortragender: Christian Fischer.
Rechen- und Kommunikationszentrum (RZ) Selektionsstrategien auf Graphstrukturen Sven Porsche Seminarvorträge Aachen.
 Präsentation transkript:

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 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

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

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

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ä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

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äume Eine Rückkopplung heißt erst gelöst, wenn das Ziel von jedem Zustand, von wo aus das Ziel erreichbar ist, erreicht wird

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

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ö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

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

Navigationsfunktionen in diskreten Zustandsraum Betrachte 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 Zustandsraum Definition 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 optimalen Navigationsfunktion 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 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

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

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

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

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

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 Sichtbarkeitsgraph Vektorfelder Potentialfelder Musterbasierte Ansätze Polar Bug Algorithmus

Sichtbarkeitsgraph Auf der Basis von Sichtlinien im 2D-Raum Nicht gerichteter Graph Die 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 Approximierte 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 Grundproblems Reaktive Bahnplanung Bewegeliche Dinge im Weg Kinematische Einschränkungen Bewegunsradius des Roboters Geometrische 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 getestet Speziell für die Navigation in sich ständig ändernden Umgebungen Angewendet 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 Algorithmus Beispiel

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

Danke für die Aufmerksamkeit !!!