Blatt 4 - Universität Bonn

Werbung
Rheinische Friedrich-Wilhelms-Universität Bonn
Institut für Informatik I
Dr. Elmar Langetepe, Tom Kamphans
Bewegungsplanung für Roboter, WS 2003/04, Blatt 4
Dienstag, 9.12.2003, 1630 s. t., Raum N1001
Aufgabe 1
Eine gitterförmige Umgebung im 3D ist dadurch gekennzeichnet, daß jede Zelle nicht 4
adjazente Zellen hat, sondern 6 (vorn, hinten, rechts, links, oben, unten).
Überlege, wie sich CellExplore (bzw. Scan-STC) zur Erkundung einer 3D-Umgebung erweitern liesse. Welche Probleme können dabei auftreten?
Aufgabe 2
In der Vorlesung wurden zwei Varianten der eingeschränkten Exploration von Graphen
mit maximaler Tiefe r genannt:
• Der Roboter ist an eine Leine (Stromkabel) der Länge = (1 + α)r gebunden.
• Der Roboter muß nach 2(1 + β)r Schritten zum Startpunkt zurückkehren, z. B., weil
sein Benzintank/Akku leer ist.
(i) Wo ist der Unterschied zwischen beiden Varianten?
(ii) In der Vorlesung wurde ein Algorithmus für die erste Variante vorgestellt. Zeige:
Sei ein Algorithmus A für die erste Variante gegeben, dann läßt sich damit ein
Algorithmus B für die zweite Variante mit β > α konstruieren. Die Anzahl der
Schritte für B ist dabei nur um einen konstanten Faktor größer (der Faktor darf von
α und β abhängen).
Aufgabe 3
Der in der Vorlesung vorgestellte CFS–Algorithmus setzt voraus, daß die maximale Tiefe
r des Graphen bekannt ist. Wie läßt sich das Problem lösen, wenn dies nicht bekannt ist?
Wie ändert sich dann die Laufzeit?
Tip: der vorgestellte Algorithmus darf mehrmals laufen...
bitte wenden
Postanschrift:
Universität Bonn
Institut für Informatik I
Römerstr. 164, D-53117 Bonn
Telefon: (02 28) 73–4386
Fax:
(02 28) 73–4321
Email: [email protected]
Aufgabe 4
Der Algorithmus ’CFS’ zur beschränkten Exploration eines Graphen hat (grob) folgende
Schritte:
• Bestimmung des nächsten zu bearbeitenden Teilbaumes Ti aus T
• Pruning: Ein Teilbaum Tw mit Wurzel w wird von Ti abgeschnitten, wenn w die
zur Wurzel si des Teilbaums Ti hat und Tw eine gewisse Mindesttiefe ( αr
)
Distanz αr
4
2
hat. Übrig bleibt ein Restbaum mit Wurzel si .
• Exploration des Restbaumes:
• Gehe auf kürzestem Weg zur Wurzel des zu explorierenden Teilbaumes
• Exploriere den Teilbaum mit DFS, dabei:
• Exploriere Knoten vom Typ ’incomplete’ mit bDFS
bDFS ist ein DFS, bei dem die Länge des Seils berücksichtigt wird.
• Berechne einen Spannbaum der neu erkundeten Knoten
• explorierte Teilbäume in T löschen und Teilbäume mit gemeinsamen Knoten zusammenfassen (’mergen’)
Die Algorithmus und seine Analyse sind nur für Graphen formuliert, bei denen alle Kanten
die Länge 1 haben (unit length).
(i) Was ändert sich, wenn der Graph beliebige Kantenlängen enthält, genauer, was kann
der Algorithmus bei unit length Graphen ausnutzen?
(ii) Die Analyse basiert auf der Eigenschaft, daß die Tiefe jedes Teilbaumes nach dem
Pruning ≥ αr
ist.
4
Gilt diese Invariante auch immer, wenn die Kantenlängen beliebig sind? Wenn ja,
begründe deine Antwort; wenn nein, wie kann man den Algorithmus modifizieren, so
daß die Gültigkeit der Invariante sichergestellt wird?
Aufgabe 5:
Literaturaufgabe
Die Exploration eines bekannten Gittergraphen ist NP–hart. Recherchiere, bis auf welchen
Faktor sich eine Explorationstour polynomiell approximieren läßt. Welche Laufzeit hat der
gefundene Approximationsalgorithmus?
2
Herunterladen