Geometric Route Planning versus graph

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