bewegungsplanung bei unvollständiger information ausweg aus einem labyrinth
DESCRIPTION
Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth Finden eines Punktes in unbekannter Umgebung Kompetitive Strategien Beispiel: Online-Bin-Packing Beispiel: Suche nach einer Tür in einer Wand. Ausweg aus einem Labyrinth. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth](https://reader034.vdocuments.net/reader034/viewer/2022051517/56815a73550346895dc7d975/html5/thumbnails/1.jpg)
1Bewegungsplanung Computational GeometryProf. Dr. Th. Ottmann
Bewegungsplanung
bei unvollständiger Information
• Ausweg aus einem Labyrinth• Finden eines Punktes in unbekannter Umgebung• Kompetitive Strategien
– Beispiel: Online-Bin-Packing– Beispiel: Suche nach einer Tür in einer Wand
![Page 2: Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth](https://reader034.vdocuments.net/reader034/viewer/2022051517/56815a73550346895dc7d975/html5/thumbnails/2.jpg)
2Bewegungsplanung Computational GeometryProf. Dr. Th. Ottmann
Ausweg aus einem Labyrinth
Gegeben sei ein punktförmiger Roboter, der nur über einen Tastsensor und einen Winkelzähler verfügt.
Gesucht ist eine Strategie, mit der der Roboter aus jedem unbekannten Labyrinth herausfindet, wenn es überhaupt einen Ausweg gibt.
Herausfinden = den Rand der konvexen Hülle des Labyrinths erreichen
= (Entkommen = true)
![Page 3: Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth](https://reader034.vdocuments.net/reader034/viewer/2022051517/56815a73550346895dc7d975/html5/thumbnails/3.jpg)
3Bewegungsplanung Computational GeometryProf. Dr. Th. Ottmann
1. Versuch: An der Wand entlang
Wähle Richtung beliebig;
repeat
folge Richtung
until Wandkontakt;
repeat
folge der Wand
until Entkommen
Willkürliche Festlegung:
Sobald der Roboter auf ein
Hindernis trifft, dreht er sich
rechts herum und läuft so an
der Wand entlang, dass sich
die Wand stets links von ihm
befindet.
![Page 4: Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth](https://reader034.vdocuments.net/reader034/viewer/2022051517/56815a73550346895dc7d975/html5/thumbnails/4.jpg)
4Bewegungsplanung Computational GeometryProf. Dr. Th. Ottmann
![Page 5: Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth](https://reader034.vdocuments.net/reader034/viewer/2022051517/56815a73550346895dc7d975/html5/thumbnails/5.jpg)
5Bewegungsplanung Computational GeometryProf. Dr. Th. Ottmann
![Page 6: Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth](https://reader034.vdocuments.net/reader034/viewer/2022051517/56815a73550346895dc7d975/html5/thumbnails/6.jpg)
6Bewegungsplanung Computational GeometryProf. Dr. Th. Ottmann
2. Versuch: Möglichst in Anfangsrichtung
Wähle Richtung beliebig;
Winkelzähler = 0;
repeatrepeat
folge Richtung
until Wandkontakt;
repeat
folge der Wand
until Winkelzähler mod 2π = 0
until Entkommen
Roboter läuft in
Anfangsrichtung,
wann immer seine Nase
in diese Richtung zeigt!
Winkelwerte:
Linksdrehung: positiv
Rechtsdrehung: negativ
![Page 7: Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth](https://reader034.vdocuments.net/reader034/viewer/2022051517/56815a73550346895dc7d975/html5/thumbnails/7.jpg)
7Bewegungsplanung Computational GeometryProf. Dr. Th. Ottmann
![Page 8: Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth](https://reader034.vdocuments.net/reader034/viewer/2022051517/56815a73550346895dc7d975/html5/thumbnails/8.jpg)
8Bewegungsplanung Computational GeometryProf. Dr. Th. Ottmann
![Page 9: Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth](https://reader034.vdocuments.net/reader034/viewer/2022051517/56815a73550346895dc7d975/html5/thumbnails/9.jpg)
9Bewegungsplanung Computational GeometryProf. Dr. Th. Ottmann
3. Versuch: Pledge Algorithmus
Wähle Richtung beliebig;
Winkelzähler = 0;
repeat
repeat
folge Richtung
until Wandkontakt;
repeat
folge der Wand
until Winkelzähler = 0
until Entkommen
Vermeidet
Endlosschleifen!
![Page 10: Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth](https://reader034.vdocuments.net/reader034/viewer/2022051517/56815a73550346895dc7d975/html5/thumbnails/10.jpg)
10Bewegungsplanung Computational GeometryProf. Dr. Th. Ottmann
Korrektheit des Pledge Algorithmus
Satz: Der Pledge Algorithmus findet in jedem Labyrinth von jeder Startposition aus einen Weg ins Freie, von der überhaupt ein Ausweg existiert.
Lemma 1: Der Winkelzähler W nimmt niemals einen positiven Wert an.
Bew. 1: Anfangs ist W = 0, sobald ein Hindernis angetroffen wird, wird W negativ, sobald W = 0 wird, löst sich der Roboter vom Hindernis und wandert in Ausgangsrichtung bis zum nächsten Hindernis!
![Page 11: Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth](https://reader034.vdocuments.net/reader034/viewer/2022051517/56815a73550346895dc7d975/html5/thumbnails/11.jpg)
11Bewegungsplanung Computational GeometryProf. Dr. Th. Ottmann
Zu zeigen: Falls der Roboter nach dem Pledge Algorithmus keinen Weg ins Freie findet, gibt es keinen solchen Weg.
Lemma 2: Angenommen, der Roboter findet nicht aus dem Labyrinth heraus. Dann besteht sein Weg bis auf ein endliches Anfangsstück aus einem geschlossenen Weg, der immer wieder durchlaufen wird.
Sei P der geschlossene Weg, den der Roboter bei seinem vergeblichen Versuch, aus dem Labyrinth zu entkommen, immer wieder durchläuft.
Lemma 3: Der Weg P kann sich nicht selbst kreuzen.
![Page 12: Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth](https://reader034.vdocuments.net/reader034/viewer/2022051517/56815a73550346895dc7d975/html5/thumbnails/12.jpg)
12Bewegungsplanung Computational GeometryProf. Dr. Th. Ottmann
![Page 13: Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth](https://reader034.vdocuments.net/reader034/viewer/2022051517/56815a73550346895dc7d975/html5/thumbnails/13.jpg)
13Bewegungsplanung Computational GeometryProf. Dr. Th. Ottmann
Bew. des Satzes:
Fall 1: Roboter durchläuft P gegen Uhrzeigersinn.
Fall 2: Roboter durchläuft P im Uhrzeigersinn.
![Page 14: Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth](https://reader034.vdocuments.net/reader034/viewer/2022051517/56815a73550346895dc7d975/html5/thumbnails/14.jpg)
14Bewegungsplanung Computational GeometryProf. Dr. Th. Ottmann
Finden eines Punktes in unbekannter Umgebung
Aufgabe: Roboter soll Zielpunkt in einer unbekannten Umgebung finden
Erweiterung der Fähigkeiten des Roboters:– Er kennt zu jedem Zeitpunkt seine eigenen (globalen)
Koordinaten– Er kennt die (globalen Koordinaten des Zielpunktes.
Strategie Bug: Roboter läuft solange auf Zielpunkt zu, bis er auf ein
Hindernis trifft. Dies wird einmal umrundet. Dabei merkt sich der Roboter denjenigen Punkt auf dem Rand des Hindernisses, der dem Zielpunkt am nächsten ist, und kehrt nach der vollständigen Umrundung dorthin zurück. Von diesem Punkt aus wird der Weg in gleicher Weise fortgesetzt.
![Page 15: Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth](https://reader034.vdocuments.net/reader034/viewer/2022051517/56815a73550346895dc7d975/html5/thumbnails/15.jpg)
15Bewegungsplanung Computational GeometryProf. Dr. Th. Ottmann
repeat
repeat
laufe auf Zielpunkt zu
until Wandkontakt;
A = AktuellePosition; (*auf Hinderniswand*)
D = AktuellePosition; (*zum Zielpunkt nächster bisher besuchter Punkt auf Hinderniswand*)
repeat
rücke AktuellePosition entlang der Wand vor;
if AktuellePosition näher an Zielpunkt als D
then D = AktuellePosition
until AktuellePosition = A;
gehe auf kürzestem Weg längs Hinderniswand zu D
until ZielpunktErreicht
![Page 16: Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth](https://reader034.vdocuments.net/reader034/viewer/2022051517/56815a73550346895dc7d975/html5/thumbnails/16.jpg)
16Bewegungsplanung Computational GeometryProf. Dr. Th. Ottmann
![Page 17: Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth](https://reader034.vdocuments.net/reader034/viewer/2022051517/56815a73550346895dc7d975/html5/thumbnails/17.jpg)
17Bewegungsplanung Computational GeometryProf. Dr. Th. Ottmann
Eigenschaften der Strategie Bug
Die Strategie Bug findet stets einen Weg vom Startpunkt s zum Zielpunkt t, wenn ein solcher Weg überhaupt existiert. (Beweis: vgl. R. Klein)
Der von der Strategie Bug zurückgelegte Weg kann beliebig viel länger sein als der kürzeste Weg von s nach t.
![Page 18: Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth](https://reader034.vdocuments.net/reader034/viewer/2022051517/56815a73550346895dc7d975/html5/thumbnails/18.jpg)
18Bewegungsplanung Computational GeometryProf. Dr. Th. Ottmann
Kompetitive Strategien: Beispiel Bin-Packing
Aufgabe: Gegeben eine Folge o1, o2, … von Objekten mit Größe ≤ 1. Verpacke die Objekte so in Kisten mit Größe 1, dass möglichst wenige Kisten gebraucht werden.
Next-fit-Strategie: Packe das jeweils nächste Objekt in dieselbe Kiste wie das vorangehende, wenn es da noch hineinpasst, sonst mache eine neue Kiste auf.
Die Next-fit-Strategie verbraucht höchstens doppelt so viele Kisten, wie bei optimaler Packung erforderlich wären.
![Page 19: Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth](https://reader034.vdocuments.net/reader034/viewer/2022051517/56815a73550346895dc7d975/html5/thumbnails/19.jpg)
19Bewegungsplanung Computational GeometryProf. Dr. Th. Ottmann
Kompetitivität einer Strategie
Sei ein Problem und S eine Strategie, die jedes Problem P aus korrekt löst und dabei Kosten KS(P) verursacht.
Strategie S heißt kompetitiv mit Faktor C, wenn es eine Konstante A gibt, sodass für jedes Beispiel P gilt:
KS(P) ≤ C Kopt(P) + A, mit
Kopt(P) = Kosten einer optimalen Lösung
Next-fit ist kompetitiv mit Faktor 2.
![Page 20: Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth](https://reader034.vdocuments.net/reader034/viewer/2022051517/56815a73550346895dc7d975/html5/thumbnails/20.jpg)
20Bewegungsplanung Computational GeometryProf. Dr. Th. Ottmann
Suche nach einer Tür in einer Wand
Roboter mit Tastsensor soll eine Tür in einer (beliebig langen) Wand finden, die sich in unbekanntem Abstand d und unbekannter Richtung vom Startpunkt befindet.
1. Versuch: Wechsele Suchrichtung und erhöhe Suchtiefe inkrementell um je 1.
![Page 21: Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth](https://reader034.vdocuments.net/reader034/viewer/2022051517/56815a73550346895dc7d975/html5/thumbnails/21.jpg)
21Bewegungsplanung Computational GeometryProf. Dr. Th. Ottmann
Verdopplungsstrategie
2. Versuch: Verdopple die Suchtiefe nach jedem Richtungswechsel.
![Page 22: Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth](https://reader034.vdocuments.net/reader034/viewer/2022051517/56815a73550346895dc7d975/html5/thumbnails/22.jpg)
22Bewegungsplanung Computational GeometryProf. Dr. Th. Ottmann
Eigenschaften der Verdopplungsstrategie
Satz 1: Die Strategie der abwechselnden Verdopplung der Suchtiefe ist kompetitiv mit dem Faktor 9.
Satz 2: Jede kompetitive Strategie zum Auffinden eines Punkts auf einer Geraden hat einen Faktor ≥ 9.
Das Prinzip der exponentiellen Vergrößerung der Suchtiefe ist erweiterbar auf andere und mehr als zwei Suchräume.
Satz 3: Diese Suchstrategie für m Halbgeraden ist kompetitiv mit dem Faktor
(2mm / (m -1)m-1) + 1 ≤ 2em +1
Dabei ist e = 2.718… die Eulersche Zahl.