Fußgängernavigation Graph – basierte Routenplanung versus Geometrische Routenplanung Philipp Zeimetz Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 1 Erinnerung und Ausblick Graph – basierte Routenplanung 9 10 8 6 7 4 5 2 3 1 Geometrische Routenplanung Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 2 Graphen-basierte Routenplanung Wir kennen aus der diskreten Mathematik II: • Algorithmus von Dijkstra – Alle kürzesten Wege von einem Knoten – Laufzeit O(e + n log n) (mit fibonacci Heaps) ( n / e = Anzahl der Knoten / Kanten ) • Algorithmus von Floyd – Kürzesten Wege zwischen allen Paaren von Knoten – Kosten O (n³) Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 3 Unterschiede Was unterscheidet die beiden Verfahren: • Graphen-basierte Routenplanung: – – Ableitung der Topologie aus der Geometrie Repräsentation der Topologie durch Graphen Ableitung eines Graphen aus der Geometrie Der Graph besteht aus nicht negativ gewichtete Kanten • Geometrische Routenplanung – – – – Keine Abstraktion der Geometrie Repräsentation der Geometrie durch Polygone Geometrie dient als Grundlage der Berechnungen Berechnung und Ausgabe einer Trajektorie Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 4 Motivation Wo liegen die Vorteile der geometrischen Routenplanung? • Bewegung wird nicht auf wenige Kanten beschränkt – Fußgänger bewegen sich freier als Züge oder Autos! • Eine exakte Trajektorie wird berechnet – Robotik – Schifffahrt Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 5 geometrische Routenplanung Vorgehen: • • • • Zerlegung des freien Raums Erstellung des Verbindungsgraphen Punktlokalisierung in Landkarten Berechnung der möglichen Wege - Verwendung von Trichtern (funnel) • Ausgabe einer Wegebeschreibung - Liefert eine Koordinaten Liste Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 6 Das Verfahren ist sehr Komplex! Wir beschränken uns auf folgende Fälle: • • • • • Wir bewegen uns im zweidimensionalen Die Karte ist uns bekannt Die Karte besteht aus Polygonen Die Position ist uns bekannt Fußgänger haben keine Ausdehnung - Existiert eine Verbindung zwischen zwei Hindernissen, so passen Fußgänger auch hindurch Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 7 Die Karte Besteht aus: Einem begehbaren Polygon mit vielen unbegehbaren Löchern (ebenfalls Polygone) freier Raum Hindernisse Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 8 Zellzerlegung 9 10 Zerlegung der Karte in einfache Polygone: 8 • Bestimmung von Minima und Maxima der Hindernispolygone 7 6 • Einfügen Horizontaler Kanten • Nummerierung der neuen Kacheln 4 2 1 • Berechnungskosten: O (n) 5 3 freier Raum Hindernisse Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 9 Gewinn der Zerlegung I 9 10 8 7 6 4 2 1 5 3 • es entstehen einfache Polygone • der gesuchte Weg verläuft zwischen linker und rechter Begrenzung • „Auswüchse“ werden nicht besucht freier Raum Hindernisse Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 10 Gewinn der Zerlegung II 9 10 8 7 6 „Höhlen“ werden im Graph zu toten Enden 4 2 1 5 3 freier Raum Hindernisse Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 11 Punktelokalisierung 9 10 II In welchem Polygon liegen End- und Anfangspunkt? 8 7 6 • Durch Zellzerlegung entsteht eine Karte, welche an die Trapezkarte aus GIS III • Laufzeit: O (n log n) 4 5 3 2 1 I freier Raum Hindernisse Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 12 Verbindungsgraph 9 10 9 8 10 6 7 6 8 7 4 5 4 2 1 5 2 3 3 1 freier Raum Hindernisse Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 13 Verbindungsgraph Eigenschaften des Verbindungsgraphen: 9 10 Jeder Knoten repräsentiert eine Kachel 8 Jede Kante repräsentiert die Verbindung der begrenzenden Kacheln 6 7 Von jeder Kachel geht mindestens eine Kante und maximal vier Kanten ab 4 5 2 3 1 Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 14 Laufzeitkosten 9 10 II Die Laufzeitkosten für: 8 7 6 Zellzerlegung + Verbindungsgraph + Punktlokalisierung O (n) + O (n) + O (n log n) Betragen zusammen: O (n log n) 4 (n ist die Anzahl der Knoten) 5 3 2 1 I freier Raum Hindernisse Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 15 Suche möglicher Wege 9 10 II 9 freier Raum 8 10 Hindernisse 8 6 7 7 6 4 5 Algorithmus: A* 4 Laufzeit: O (n) 5 3 2 1 I 2 3 1 Nachteil: jeder Kante muss geprüft werden Aber: auch jede Region max. zwei mal Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 16 Trichtern (funnel) • Der kürzeste Weg verläuft stets über konvexe Punkte Konvexe Punkte • Der Quellpunkt liegt stets auf dem kürzesten Weg • Die linke Kette verläuft über konvexe Punkte der linken Begrenzung • Die rechte Kette verläuft über konvexe Punkte der rechten Begrenzung Linke Kette Rechte Kette Quellpunkt • Die Ketten bewegen sich voneinander weg Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 17 Ein einfaches Beispiel 1 9 II 10 2 4 6 8 • Der kürzeste Weg verläuft stets über konvexe Punkte 8 • Die Ketten bewegen sich voneinander weg 7 6 4 2 1 • Der Winkel zwischen den Ketten ist minimal 5 3 I freier Raum Hindernisse Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 18 Geometric Route Planning 10 2 1 4 6 5 8 9 7 3 A* Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 19 Geometric Route Planning 10 2 1 4 6 5 3 8 9 7 Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 20 Geometric Route Planning 10 2 1 4 6 5 3 8 9 7 Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 21 Geometric Route Planning 10 2 1 4 6 5 3 8 9 7 Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 22 Geometric Route Planning 10 2 1 4 6 5 3 8 9 7 Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 23 Geometric Route Planning 10 2 1 4 6 5 3 8 9 7 Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 24 Geometric Route Planning 10 2 1 4 6 5 3 8 9 7 Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 25 Geometric Route Planning 10 2 1 4 6 5 3 8 9 7 Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 26 Geometric Route Planning 10 2 1 4 6 5 3 8 9 7 Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 27 Geometric Route Planning 10 2 1 4 6 5 3 8 9 7 Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 28 Geometric Route Planning 10 2 1 4 6 5 3 8 9 7 Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 29 Geometric Route Planning 10 2 1 4 6 5 3 8 9 7 Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 30 Beschreibung des Weges 9 10 Die Koordinaten aller Knickpunkte werden ausgegeben. 8 Die Streckenlänge berechnet sich nach: 7 6 m 1 S i 1 xi 1 xi yi 1 yi 2 2 Wobei m die Anzahl der Stützpunkte ist 4 2 1 5 3 Freier Raum Kartenobjekte Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 31 Ein Problemfall ??? n = # Knoten = 16 h = # Löcher = 4 13 Tiefe des Baums: 2h + 1 = 9 (max) 13 11 11 9 8 7 5 8 4 Durchlaufene Regionen: 4h + 1 = 17 (max) 6 # möglicher Wege: 2h = 16 3 Für n = 50 max h = 15 # Wege: 32768 # d. Regionen: 61 4 3 1 9 7 5 6 2 Anzahl Regionen: 3h + 1 = 13 (max) 10 12 10 12 2 1 Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 32 Ein Problemfall ??? Anzahl der Sichtbarkeitsüberprüfungen: n² Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 33 Ein Spezialfall 9 10 Endpunkt und Startpunkt liegen in einem Polygon 8 II 6 7 I 4 2 1 5 3 Problem: Bei komplexen Polygonen ist die Orientierung schwierig Lösung: • Ergänzung der Zellzerlegung • Algorithmus von Lee und Preparata • ... weitere Methoden ... Freier Raum Kartenobjekte Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 34 Ergänzung der Zellzerlegung 9 10 Ergänzung: 8 12 II 6 7 I 4 2 1 Einfügen zweier weiterer horizontaler Kanten an Start- und Endpunkt 5 Beachte: • der Verbindungsgraph verändert sich • die Nummerierung muss erneuert werden 11 3 Freier Raum Kartenobjekte Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 35 Algorithmus: Lee und Preparata 1. Schritt: • Triangulation des beliebigen, lochfreien Polygons • Berechnungskosten: O (n) wobei n die Anzahl der Knoten ist Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 36 Algorithmus: Lee und Preparata 2. Schritt: • Erstellung eines Graphen • zwei Dreiecke sind benachbart, wenn sie gemeinsame Seiten haben Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 37 Algorithmus: Lee und Preparata 3. Schritt: • Suche des einzigen Weges Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 38 Algorithmus: Lee und Preparata 3. Schritt: • Suche des einzigen Weges Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 39 Algorithmus: Lee und Preparata 4. Schritt: • Anwendung der Trichter Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 40 Trichter Algorithmus Die Regeln für die Trichter sind hier etwas anders: • die Endpunkte der Ketten müssen keine Konvexe Punkte sein • die Ketten verlaufen immer über die nächst möglichen konvexen Punkte Kriterium der kleinsten Winkel gilt nicht Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 41 Algorithmus: Lee und Preparata 4. Schritt: • Anwendung der Trichter Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 42 Algorithmus: Lee und Preparata 4. Schritt: • Anwendung der Trichter Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 43 Laufzeitkosten Kosten für die Suche in einem einfachen Polygon Algorithmus nach Lee und Preparata: O (n) Setz die Polygon-Triangulation voraus: O (n) Kosten für die Suche in einem komplexen Polygon Zellzerlegung + Verbindungsgraph + Punktlokalisierung: O (n log n) Wegsuche mit A*-Algorithmus: O (n) Trichterkonstruktion: O (n²) Gesamtlaufzeitkosten: O(n²) + ... Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 44 Vergleich der Verfahren I Laufzeitkosten der Algorithmen: • Graphbasierte Routenplanung - Dijkstra O(e + n log n) • Geometrische Routenplanung - O (n²) + ... Ergebnis des Vergleichs: Die geometrische Routenplanung ist Aufwendiger Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 45 Vergleich der Verfahren II Projektrelevante Eigenschaften I • Geometrische Routenplanung erfordert einen größere Rechenleistung - Rechenleistung mobiler Endgeräte noch beschränkt • Fußgänger wollen wissen welche Straße sie gehen sollen; nicht wie sie entlang der Straßen laufen sollen • Die Ausgabe der Routen soll per Video erfolgen, wodurch bereits eine linienhafte Abstraktion des Weges gegeben ist Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 46 Vergleich der Verfahren III Projektrelevante Eigenschaften II • An Plätzen will der Fußgänger wissen in welche Straße er biegen muss; wie er das macht weiß er vermutlich • Die Modellierung von z.B. Straßenübergängen oder Ampelanlagen ist bei der geometrischen Variante schwieriger Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 47 Vergleich der Verfahren IV Zukunftsaussichten: In der Zukunft soll auch die „Kaufhausnavigation“ möglich sein Voraussetzungen: Routenplanung in mehreren „Kaufhausebenen“: Graph – basierte Routenplanung: • Modellierung von Rolltreppen, Aufzügen etc. durch Kanten 6 7 4 5 2 1 EG Damenabteilung Herrenabteilung UG 3 10 9 8 11 12 13 Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 14 48 Vergleich der Verfahren V Zukunftsaussichten: In der Zukunft soll auch „park and go“ möglich sein Voraussetzungen: Kombination mehrerer Verkehrsmittel: Graph – basierte Routenplanung: • Modellierung von Parkplätzen durch Knoten 6 10 7 9 4 5 12 Auto 3 3 3 2 1 Parkplatz 11 Fußgänger 13 8 Philipp Zeimetz - Navigation mit GIS - 7. Semester - WS 02/03 49