![Page 1: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/1.jpg)
INSTITUT FÜR THEORETISCHE INFORMATIK � ALGORITHMIK I � PROF. DR. DOROTHEA WAGNER
Algorithmen für Routenplanung4. Termin, Sommersemester 2011
Reinhard Bauer | 2. Mai 2011
KIT � Universität des Landes Baden-Württemberg und
nationales Großforschungszentrum in der Helmholtz-Gemeinschaftwww.kit.edu
![Page 2: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/2.jpg)
Ideensammlung
Wie Suche zielgerichtet machen?
Nichtbeachten von Kanten oder Knoten die in die �falsche�Richtung führen
Reihenfolge in der Knoten besucht werden ändern
Jetzt: ersteres
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 3: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/3.jpg)
Geometrische Container
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
s
t
Beobachtung:
Subwege von kürzestenWegen sind auchkürzeste Wege
nicht jede Kante istwichtig für einbestimmtes Ziel
Idee:
Speichere geometrisches Objekt für jede Kante, das alle Knoten desUnterbaums beinhaltet
Relaxiere während Anfrage nur Kanten, für die Ziel t im Objekt ist
![Page 4: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/4.jpg)
Geometrische Container
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
(u,v)
u
Beobachtung:
Subwege von kürzestenWegen sind auchkürzeste Wege
nicht jede Kante istwichtig für einbestimmtes Ziel
Idee:
Speichere geometrisches Objekt für jede Kante, das alle Knoten desUnterbaums beinhaltet
Relaxiere während Anfrage nur Kanten, für die Ziel t im Objekt ist
![Page 5: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/5.jpg)
Geometrische Container
DIJKSTRA(G = (V ;E ; len), s, Container C())
1 d [s] = 02 Q:clear(), Q:add(s;0)
3 while !Q:empty() do4 u Q:deleteMin()
5 forall the edges e = (u; v) 2 E do
6 if t =2 C(e) then continue
7 if d [u] + len(e) < d [v ] then8 d [v ] d [u] + len(e)
9 if v 2 Q then Q:decreaseKey(v ;d [v ])10 else Q:insert(v ;d [v ])
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 6: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/6.jpg)
Formen
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Viele Formen möglich:
Winkel
Winkel + Distanz
Umgebenes Rechteck
Konvexe Hülle
Trade-Off:
Speicherplatz pro Kante
Overhead zur Bestimmung ob t im Container liegt
Umgebenes Rechteck scheint am besten zu sein
![Page 7: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/7.jpg)
Formen
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Viele Formen möglich:
Winkel
Winkel + Distanz
Umgebenes Rechteck
Konvexe Hülle
Trade-Off:
Speicherplatz pro Kante
Overhead zur Bestimmung ob t im Container liegt
Umgebenes Rechteck scheint am besten zu sein
![Page 8: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/8.jpg)
Formen
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Viele Formen möglich:
Winkel
Winkel + Distanz
Umgebenes Rechteck
Konvexe Hülle
Trade-Off:
Speicherplatz pro Kante
Overhead zur Bestimmung ob t im Container liegt
Umgebenes Rechteck scheint am besten zu sein
![Page 9: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/9.jpg)
Formen
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Viele Formen möglich:
Winkel
Winkel + Distanz
Umgebenes Rechteck
Konvexe Hülle
Trade-Off:
Speicherplatz pro Kante
Overhead zur Bestimmung ob t im Container liegt
Umgebenes Rechteck scheint am besten zu sein
![Page 10: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/10.jpg)
Formen
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Viele Formen möglich:
Winkel
Winkel + Distanz
Umgebenes Rechteck
Konvexe Hülle
Trade-Off:
Speicherplatz pro Kante
Overhead zur Bestimmung ob t im Container liegt
Umgebenes Rechteck scheint am besten zu sein
![Page 11: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/11.jpg)
Vorberechnung
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
ut
Vorgehen:
für jeden Knoten einenkürzeste Wege Baumberechnen
dann für jede Kante denminimalen Containerberechnen
speicher Container ander Kante
Zeit- und Platz-Bedarf:
m Container, Größe abhängig von Komplexität des Containers
n Dijkstras + m Berechnungen der Container
![Page 12: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/12.jpg)
Vorberechnung
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
(u,v)
u
Vorgehen:
für jeden Knoten einenkürzeste Wege Baumberechnen
dann für jede Kante denminimalen Containerberechnen
speicher Container ander Kante
Zeit- und Platz-Bedarf:
m Container, Größe abhängig von Komplexität des Containers
n Dijkstras + m Berechnungen der Container
![Page 13: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/13.jpg)
Vorberechnung
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
(u,v)
u
Vorgehen:
für jeden Knoten einenkürzeste Wege Baumberechnen
dann für jede Kante denminimalen Containerberechnen
speicher Container ander Kante
Zeit- und Platz-Bedarf:
m Container, Größe abhängig von Komplexität des Containers
n Dijkstras + m Berechnungen der Container
![Page 14: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/14.jpg)
Diskussion
Vorteile:
einfacher Anfrage-Algorithmus
Beschleunigung um bis zu Faktor 40
Vorberechnung einfach (basiert v.a. auf Dijkstra's Algorithmus)
Nachteile:
Hohe Laufzeit der Vorberechnung
daher nicht berechenbar auf sehr großen Netzen(ungefähr 500 Jahre für das Straßennetzwerk von Europa)
Vorberechnungsplatz: m Container (Box: 2 Punkte)
Einbettung der Graphen nötig
Container können sehr ungenau sein
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 15: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/15.jpg)
Diskussion
Vorteile:
einfacher Anfrage-Algorithmus
Beschleunigung um bis zu Faktor 40
Vorberechnung einfach (basiert v.a. auf Dijkstra's Algorithmus)
Nachteile:
Hohe Laufzeit der Vorberechnung
daher nicht berechenbar auf sehr großen Netzen(ungefähr 500 Jahre für das Straßennetzwerk von Europa)
Vorberechnungsplatz: m Container (Box: 2 Punkte)
Einbettung der Graphen nötig
Container können sehr ungenau sein
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 16: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/16.jpg)
Diskussion
Vorteile:
einfacher Anfrage-Algorithmus
Beschleunigung um bis zu Faktor 40
Vorberechnung einfach (basiert v.a. auf Dijkstra's Algorithmus)
Nachteile:
Hohe Laufzeit der Vorberechnung
daher nicht berechenbar auf sehr großen Netzen(ungefähr 500 Jahre für das Straßennetzwerk von Europa)
Vorberechnungsplatz: m Container (Box: 2 Punkte)
Einbettung der Graphen nötig
Container können sehr ungenau sein
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 17: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/17.jpg)
Technik: Arc-Flags [Lauther 04]
Of�ine-Phase:
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 18: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/18.jpg)
Technik: Arc-Flags [Lauther 04]
Of�ine-Phase:
Partitioniere den Graphen
V1 V2
V3 V4
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 19: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/19.jpg)
Technik: Arc-Flags [Lauther 04]
Of�ine-Phase:
Partitioniere den Graphen
Für jede Kante (u; v) undjede Zelle i :Führt ein kürzestesterWegen von (u; v) nach i?
u
v
V1 V2
V3 V4
(1,1,0,1)
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 20: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/20.jpg)
Technik: Arc-Flags [Lauther 04]
Of�ine-Phase:
Partitioniere den Graphen
Für jede Kante (u; v) undjede Zelle i :Führt ein kürzestesterWegen von (u; v) nach i?
Online-Phase:
Wie Dijkstra's Algorithmus
Nur Kanten ins Zielgebiet
u
v
V1 V2
V3 V4s
t
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 21: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/21.jpg)
Anfragen
ARC-FLAG-DIJKSTRA(G = (V ;E), s, t , Arc-Flags AF�
(�))
1 d [s] = 02 Q:clear(), Q:add(s;0)
3 while !Q:empty() do4 u Q:deleteMin()
5 forall the edges e = (u; v) 2 E do
6 if d [u] + len(e) < d [v ] and AFT (e) = true then
7 d [v ] d [u] + len(e)
8 if v 2 Q then Q:decreaseKey(v ;d [v ])9 else Q:insert(v ;d [v ])
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 22: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/22.jpg)
Flaggenberechnung: Erster Versuch
für jeden Knoten t 2 V
konstruiere Kürzeste-Wege Baum T auf Rückwärtsgraph mitWurzel vfür jede Kante (u; v) in T
Setze �ag von Region von t und Kante (u; v) auf true
0 00 0 00
0 00
0 00
0 00
0 00 00 00 0 000000 00 0
1
1
1
1
101 1
1
1
1
11
1
1 1
1
1
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 23: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/23.jpg)
Flaggenberechnung: Erster Versuch
Problem: Vorberechnung wieder zu teuer!
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 24: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/24.jpg)
Flaggenberechnung: Randknoten
Randknoten
Ein Randknoten ist ein Knoten v , so dass es eine Kante (u; v) gibtmit u in anderer Zelle als v .
Beobachtung: Man muss eine Zelle durch einen Randknoten�betreten�
Für jede Kante (u; v) setze das Flag für die Zelle von v auf true
Berechne Kürzeste-Wege-Bäume nur für Randknoten
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 25: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/25.jpg)
Übersicht Vorberechungsarten
In aufsteigender Güte:
Kürzeste-Wege-Baum von jedem Knoten
Kürzeste-Wege-Baum von jedem Randknoten
Sogennante �Zentralisierte Bäume� (nicht Stoff der Vorlesung)
Schnelles APSP (all-pairs shortest paths, kommt noch)
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 26: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/26.jpg)
Partitionierung
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Anforderungen:
balanciert
mögliche Partitionen:
GitterQuad-Baum
iterativ in 4 Zellen unterteilen
kd-BaumVerallgemeinerung vonQuad-Baum
weitere Anforderungen?
![Page 27: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/27.jpg)
Partitionierung
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Anforderungen:
balanciert
mögliche Partitionen:
GitterQuad-Baum
iterativ in 4 Zellen unterteilen
kd-BaumVerallgemeinerung vonQuad-Baum
weitere Anforderungen?
![Page 28: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/28.jpg)
Partitionierung
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Anforderungen:
balanciert
mögliche Partitionen:
GitterQuad-Baum
iterativ in 4 Zellen unterteilen
kd-BaumVerallgemeinerung vonQuad-Baum
weitere Anforderungen?
![Page 29: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/29.jpg)
Partitionierung
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Anforderungen:
balanciert
mögliche Partitionen:
GitterQuad-Baum
iterativ in 4 Zellen unterteilen
kd-BaumVerallgemeinerung vonQuad-Baum
weitere Anforderungen?
![Page 30: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/30.jpg)
Partitionierung
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Anforderungen:
balanciert
mögliche Partitionen:
GitterQuad-Baum
iterativ in 4 Zellen unterteilen
kd-BaumVerallgemeinerung vonQuad-Baum
weitere Anforderungen?
![Page 31: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/31.jpg)
Partitionierung
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Anforderungen:
balanciert
mögliche Partitionen:
GitterQuad-Baum
iterativ in 4 Zellen unterteilen
kd-BaumVerallgemeinerung vonQuad-Baum
weitere Anforderungen?
![Page 32: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/32.jpg)
Partitionierung
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Anforderungen:
ausbalanciert
wenige Randknoten
zusammenhängend
Black-Box Partitionierer:
benutzen keine Einbettung
oft: teilen rekursiv Graphen in kTeile mit kleinem Schnitt
bringen gute Lösungen fürArc-Flags
![Page 33: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/33.jpg)
Partitionierung
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Anforderungen:
ausbalanciert
wenige Randknoten
zusammenhängend
Black-Box Partitionierer:
benutzen keine Einbettung
oft: teilen rekursiv Graphen in kTeile mit kleinem Schnitt
bringen gute Lösungen fürArc-Flags
![Page 34: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/34.jpg)
Partitionierung
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Anforderungen:
ausbalanciert
wenige Randknoten
zusammenhängend
Black-Box Partitionierer:
benutzen keine Einbettung
oft: teilen rekursiv Graphen in kTeile mit kleinem Schnitt
bringen gute Lösungen fürArc-Flags
![Page 35: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/35.jpg)
Suchraum
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 36: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/36.jpg)
Suchraum
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 37: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/37.jpg)
Diskussion
Vorteile:
einfacher Anfrage Algorithmus
leicht on-top auf bestehende Systeme zu setzen
ausreichende Beschleunigung
Nachteile:
hohe Vorberechnungsdauer (wird durch schnelles APSPaufgehoben)Coning-Effekt:
mehr Flaggen gesetzt, wenn nah an der Zielzellealle Flaggen in Zielzelle gesetztAnfragen in einer Zelle ohne Beschleunigung
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 38: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/38.jpg)
Automatisches Setzen von Flaggen
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Beobachtung:
Für manche Kanten kann mandie Flaggen automatisch setzen
Angehangene Bäume:
Kanten zur Wurzel hin haben alle Flaggen gesetzt
Kanten von Wurzel weg haben nur eine Flagge gesetzt
also können die Bäume vor der Vorberechnung vom Graphen entferntwerden
Knotenzahl verringert sich um 1 Drittel
![Page 39: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/39.jpg)
Automatisches Setzen von Flaggen
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Beobachtung:
Für manche Kanten kann mandie Flaggen automatisch setzen
Angehangene Bäume:
Kanten zur Wurzel hin haben alle Flaggen gesetzt
Kanten von Wurzel weg haben nur eine Flagge gesetzt
also können die Bäume vor der Vorberechnung vom Graphen entferntwerden
Knotenzahl verringert sich um 1 Drittel
![Page 40: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/40.jpg)
Automatisches Setzen von Flaggen
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
0001
0001
000111111111
1111
Beobachtung:
Für manche Kanten kann mandie Flaggen automatisch setzen
Angehangene Bäume:
Kanten zur Wurzel hin haben alle Flaggen gesetzt
Kanten von Wurzel weg haben nur eine Flagge gesetzt
also können die Bäume vor der Vorberechnung vom Graphen entferntwerden
Knotenzahl verringert sich um 1 Drittel
![Page 41: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/41.jpg)
Coning-Effekt
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Beobachtung:
lange Zeit nur eine Kante wichtig
daher immer nur ein Knoten in derQueue
aber: je näher an der Zelle, destomehr Kanten werden wichtig
Suche fächert sich auf
in Zelle werden dann alle Kantenrelaxiert
Zwei Ansätze:
bidirektionale Flags
multi-level Flags
![Page 42: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/42.jpg)
Coning-Effekt
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Beobachtung:
lange Zeit nur eine Kante wichtig
daher immer nur ein Knoten in derQueue
aber: je näher an der Zelle, destomehr Kanten werden wichtig
Suche fächert sich auf
in Zelle werden dann alle Kantenrelaxiert
Zwei Ansätze:
bidirektionale Flags
multi-level Flags
![Page 43: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/43.jpg)
Bidirektionale Arc-Flags
Vorberechung:
Vorwärts- und Rückwärts�aggen
Rückwärts�aggen können analog für eingehende Kantenberechnet werden
Vorberechungszeit in gerichteten Graphen erhöht sich umFaktor 2
Anfrage:
bidirektional:Vorwärtssuche relaxiert nur Kanten mit Flagge für TRückwärtssuche nur Kanten mit Flaggen für S
normales Stopp-Kriterium von bidirektionalem Dijkstra
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 44: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/44.jpg)
Bidirektionale Arc-Flags
Problem:
Eindeutigkeit der Wege
eventuell nicht korrekt
Lösung:
kommt in Straßengraphen kaum vor
daher öffne Flaggen für alle möglichen Wege
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 45: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/45.jpg)
Bidirektionale Arc-Flags
Problem:
Eindeutigkeit der Wege
eventuell nicht korrekt
Lösung:
kommt in Straßengraphen kaum vor
daher öffne Flaggen für alle möglichen Wege
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 46: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/46.jpg)
Bidirektionale Arc-Flags
Problem:
Eindeutigkeit der Wege
eventuell nicht korrekt
Lösung:
kommt in Straßengraphen kaum vor
daher öffne Flaggen für alle möglichen Wege
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 47: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/47.jpg)
Bidirektionale Arc-Flags
Problem:
Eindeutigkeit der Wege
eventuell nicht korrekt
Lösung:
kommt in Straßengraphen kaum vor
daher öffne Flaggen für alle möglichen Wege
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 48: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/48.jpg)
Bidirektionale Arc-Flags
Problem:
Eindeutigkeit der Wege
eventuell nicht korrekt
Lösung:
kommt in Straßengraphen kaum vor
daher öffne Flaggen für alle möglichen Wege
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 49: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/49.jpg)
Bidirektionale Arc-Flags
Problem:
Eindeutigkeit der Wege
eventuell nicht korrekt
Lösung:
kommt in Straßengraphen kaum vor
daher öffne Flaggen für alle möglichen Wege
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 50: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/50.jpg)
Bidirektionale Arc-Flags
Problem:
Eindeutigkeit der Wege
eventuell nicht korrekt
Lösung:
kommt in Straßengraphen kaum vor
daher öffne Flaggen für alle möglichen Wege
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 51: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/51.jpg)
Bidirektionale Arc-Flags
Problem:
Eindeutigkeit der Wege
eventuell nicht korrekt
Lösung:
kommt in Straßengraphen kaum vor
daher öffne Flaggen für alle möglichen Wege
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 52: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/52.jpg)
Bidirektionale Arc-Flags
Problem:
Eindeutigkeit der Wege
eventuell nicht korrekt
4
4
Lösung:
kommt in Straßengraphen kaum vor
daher öffne Flaggen für alle möglichen Wege
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 53: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/53.jpg)
Bidirektionale Arc-Flags
Problem:
Eindeutigkeit der Wege
eventuell nicht korrekt
Lösung:
kommt in Straßengraphen kaum vor
daher öffne Flaggen für alle möglichen Wege
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 54: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/54.jpg)
Bidirektionale Arc-Flags
Problem:
Eindeutigkeit der Wege
eventuell nicht korrekt
Lösung:
kommt in Straßengraphen kaum vor
daher öffne Flaggen für alle möglichen Wege
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 55: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/55.jpg)
Suchraum
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 56: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/56.jpg)
Suchraum
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 57: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/57.jpg)
Multi-Level Arc-Flags
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Problem:
Anfragen in einer Zelle ohneBeschleunigung
viele Real-Welt Anfragensind lokal
Multi-Level Arc-Flags:
Multi-Level Partition
berechne partielle Flaggen
![Page 58: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/58.jpg)
Multi-Level Arc-Flags
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Problem:
Anfragen in einer Zelle ohneBeschleunigung
viele Real-Welt Anfragensind lokal
Multi-Level Arc-Flags:
Multi-Level Partition
berechne partielle Flaggen
![Page 59: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/59.jpg)
Multi-Level Arc-Flags
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Problem:
Anfragen in einer Zelle ohneBeschleunigung
viele Real-Welt Anfragensind lokal
Multi-Level Arc-Flags:
Multi-Level Partition
berechne partielle Flaggen
![Page 60: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/60.jpg)
Multi-Level Arc-Flags
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Problem:
Anfragen in einer Zelle ohneBeschleunigung
viele Real-Welt Anfragensind lokal
Multi-Level Arc-Flags:
Multi-Level Partition
berechne partielle Flaggen
![Page 61: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/61.jpg)
Multi-Level Arc-Flags
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Problem:
Anfragen in einer Zelle ohneBeschleunigung
viele Real-Welt Anfragensind lokal
Multi-Level Arc-Flags:
Multi-Level Partition
berechne partielle Flaggen
![Page 62: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/62.jpg)
Multi-Level Arc-Flags
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Problem:
Anfragen in einer Zelle ohneBeschleunigung
viele Real-Welt Anfragensind lokal
Multi-Level Arc-Flags:
Multi-Level Partition
berechne partielle Flaggen
![Page 63: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/63.jpg)
Multi-Level Arc-Flags
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Problem:
Anfragen in einer Zelle ohneBeschleunigung
viele Real-Welt Anfragensind lokal
Multi-Level Arc-Flags:
Multi-Level Partition
berechne partielle Flaggen
![Page 64: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/64.jpg)
Multi-Level Arc-Flags
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Problem:
Anfragen in einer Zelle ohneBeschleunigung
viele Real-Welt Anfragensind lokal
Multi-Level Arc-Flags:
Multi-Level Partition
berechne partielle Flaggen
![Page 65: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/65.jpg)
Multi-Level Arc-Flags
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
Problem:
Anfragen in einer Zelle ohneBeschleunigung
viele Real-Welt Anfragensind lokal
Multi-Level Arc-Flags:
Multi-Level Partition
berechne partielle Flaggen
![Page 66: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/66.jpg)
Multi-Level Arc-Flags
Vorberechnung:
oberster Level wie gehabtauf unteren Leveln:
von jedem Randknoten führe Dijkstra aus, bis alle Knoten derSuperzelle abgearbeitet worden sindsetze Flaggen für alle Kanten (u; v) für die u in SuperzelleHinweis: es reicht nicht, nur den Subgraphen der Superzelle zubetrachten (Übungsaufgabe)
Anfragen:
bestimme gemeinsamen Level l von u und t
werte Flaggen auf dem Level l aus
Korrektheit: siehe Übung
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 67: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/67.jpg)
Multi-Level Arc-Flags
Vorberechnung:
oberster Level wie gehabtauf unteren Leveln:
von jedem Randknoten führe Dijkstra aus, bis alle Knoten derSuperzelle abgearbeitet worden sindsetze Flaggen für alle Kanten (u; v) für die u in SuperzelleHinweis: es reicht nicht, nur den Subgraphen der Superzelle zubetrachten (Übungsaufgabe)
Anfragen:
bestimme gemeinsamen Level l von u und t
werte Flaggen auf dem Level l aus
Korrektheit: siehe Übung
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 68: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/68.jpg)
Multi-Level Arc-Flags
Vorberechnung:
oberster Level wie gehabtauf unteren Leveln:
von jedem Randknoten führe Dijkstra aus, bis alle Knoten derSuperzelle abgearbeitet worden sindsetze Flaggen für alle Kanten (u; v) für die u in SuperzelleHinweis: es reicht nicht, nur den Subgraphen der Superzelle zubetrachten (Übungsaufgabe)
Anfragen:
bestimme gemeinsamen Level l von u und t
werte Flaggen auf dem Level l aus
Korrektheit: siehe Übung
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 69: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/69.jpg)
Suchraum
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 70: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/70.jpg)
Suchraum
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 71: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/71.jpg)
Datenstruktur
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
1 1 1
1 1 1 1 1 1
1 1 11 0 0
100
1 101 1 0
Ef�zient Flaggen speichern?
pro Kante eine Flagge
Beobachtung: AnzahlKombinationen begrenzt
Idee:
speichere Flaggen in Matrix
Zeiger von Kanten auf die Matrix
verringert Speicherverbrauch um einen Faktor 5
![Page 72: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/72.jpg)
Datenstruktur
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
1 1 0
1 1 11 10
1001 0 0
Ef�zient Flaggen speichern?
pro Kante eine Flagge
Beobachtung: AnzahlKombinationen begrenzt
Idee:
speichere Flaggen in Matrix
Zeiger von Kanten auf die Matrix
verringert Speicherverbrauch um einen Faktor 5
![Page 73: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/73.jpg)
Flaggenkompression
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
1 1 0
1 1 11 10
1001 0 0
Beobachtung:
kippen eines Bits von 1auf 0 verboten
kippen eines Bits von 0auf 1 erlaubt (weiterhinkorrekt, eventuelllangsamer)
Idee:
verringere Anzahl eindeutiger Arc-Flags durch kippen
dadurch Kompression der Matrix
�nde �gutes� Mapping (Studienarbeit WS 08/09)
![Page 74: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/74.jpg)
Flaggenkompression
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
1 1 0
1 1 11 10
Beobachtung:
kippen eines Bits von 1auf 0 verboten
kippen eines Bits von 0auf 1 erlaubt (weiterhinkorrekt, eventuelllangsamer)
Idee:
verringere Anzahl eindeutiger Arc-Flags durch kippen
dadurch Kompression der Matrix
�nde �gutes� Mapping (Studienarbeit WS 08/09)
![Page 75: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/75.jpg)
Experimente
Eingaben:
StraßennetzwerkeEuropa: 18 Mio. Knoten, 42 Mio. KantenUSA: 22 Mio. Knoten, 56 Mio. Kanten
Evaluation:
Vorberechnung in Minuten und zusätzliche Bytes pro Knoten
durchschnittlicher Suchraum (#abgearbeitete Knoten) undSuchzeiten (in ms) von 10 000 Zufallsanfragen
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 76: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/76.jpg)
Zufallsanfragen: Anzahl Regionen
Prepro Query
time space # settled time spdregions [min] [B/n] nodes [ms] up0 0 0 9 114 385 5 591.6 1.0200 1 028 19 2 369 1.6 3 494.8400 1 366 20 1 868 1.2 4 659.7600 1 723 21 1 700 1.1 5 083.3800 1 892 23 1 642 1.4 3 994.01000 2 156 25 1 593 1.1 5 083.3
Beobachtungen:
lange Vorberechnung
hohe Beschleunigung
geringer Speicherverbrauch
mehr als 200 Regionen lohnt sich nicht
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 77: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/77.jpg)
Lokale Anfragen Arc-Flags I
●●●●●●
●
●●
●
●●●
●
●
●●●●●●●●●●●●
●●
●●●
●
●●
●
●●
●
●●●
●
●●●
●
●●●●●●●●●●●●●●●●●●●●●●
●
●
●●
●
●
●●●
●
●●●●●● ●●●●●●
●
●
●●●●●●●●
●
●●●●●●●
●
●●●●
●●●●●●●
●
●
●●●●●●●
●
●
●●●●●●●●●
●
●●●●●●●●●●●●●●●●●●●
●
●
●●●●●●● ●●
●●●●●●
●
●●●●●●●●●●●●●●●●
●
●●●●●
●
●●●●●●●
●●
●
●
●●●
●
●●●
●
●●●●
●
●●●
●
●
●
●●●●●●●●●●●●●
●
●●
●
●●●●●●●●●
●●
●
●
●●●●●
●●●●
●●●●●
●●●
●
●●●●●●
●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●
●●●●●●●●●●
●●●●●
●
●
●
●●●●●●
●
●
●●
●
●
●●●●
●
●●
●●
●●●
●●●●●●
●
●●
●●
●●●●●●●●●
●
●
●●●
●
●●
●●
●
●●
●
●
●●●
●
●
●●
●
●
●●●●●
●●●
●
●
●●●
●
●●●
●
●●●●●●
●
●
●●●●●●●●●●
●●
●
●●
●
●
●●
●
●●●
●
●●●●
●●●●
●●●●●●
●
●●
●●●
●
●●●
●●●●●●
●
●●●
●●●
●●●●
●●
●
●●●
●
●
●●
●●
●●
●
●
●
●
●
●
●
●●
●
●●●●●●●●●
●
●●●●●●●
●
●●●●●
●●
●
●●
●
●
●●●
●●
●
●●
●●
●●●●
●
●●
●●●
●●●
●
●
●
●
●●
●
●
●●●●●●●
●
●●●●●
●
●●●●
●●●●●●●●●
●
●●●●●●●●
●●●●
●
●●●
●
●●●●
●
●●
●●●
●
●●
●
●
●●
●●●●●●
●
●●●
●
●●●●
●
●●●●
●
●
●●
●●●
●●
●
●●●●●●
●●●●●
●
●
●●
●
●
●
●
●●
●●●●●●
●
●●●●
●
●●●●●
●
●
●
●●●●●●●
●●●●
●
●
●
●
●●●
●
●●
●
●●●●●●●
●
●●●●●
●
●●●
●
●●●●●
●●
●
●●●●●
●
●
●
●
●
●
●●
●
●●●●●●
●●●●●●●●●●
●●
●
●●
●●●●●●
●
●●●
●
●●●●●●●
●●●
●●
●●●●●●●●●●
●●
●
●●●
●
●●●●
●
●●●
●
●
●●
●
●
●
●●●●●●●
●
●●●●●●
●
●
●
●●
●
●●●●●●●●●●●
●● ●●●●●●●●●●
●
●●●●●●●●●●
●●●●●●
●●
●●
●
●
●
●●●●●●●●●
●
●
●
●
●
●
●●●●●●●
●●●●●●●●●●●●●
●
●●●●●●●
●
●●●●●●●●●●
●
●
●●●●●●●●●●
●
●●●●●●●●●●●●●●●●
●●●●
●
●●●●●●●●●
●
●●●●
●
●
●●●●
●
●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●
●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●
●
●●●
●●
●
●
●●
●
●●●●●
●
●●●●●●
●
●●●●●
●●
●●●●●●●●●●●●●●
●
●
●●●
●
●
●●●●●●●●
●
●●
●
●●
●●
●
●●
●●●●●●●
●
●
●
●●●●
●●
●
●
●●
●
●●
●●
●
● ●●
●
●
●●
●
●●●●●●●●●●●
●
●
●●
●
●●●
●
●●●●
●
●●●●●●●
●
●●●●
●
●●●●
●
●
●
●
●●
●
●●●●●
●
●
●●●●●
●●
●
●
●●●
●
●
●
●●●●●●
●●●●●●●
●
●● ●●●
●●
●●
●
●
●
●
●
●●●●
●●
●●
●
●●●●●●
●
●
●●●
●
●
●●
●●
●●●●
●●
●●●●●●●●●●
●
●
●●
●●●●●
●●●●●●●●
●
●
●●●
●
●
●
●
●●
●
●● ●●●
●
●●●●●●●●
●
●●●
●
●●●●●●●●●●
●
●
●
●
●
●
●●●
●
●●
●
●●
●
●
●
●
●●●●●●●●●●●●●●●●●
●●●●●
●
●
●
●
●
●
●
●
●
●
●●●
●
●
●●
●
●●●●●●
●
●
●●●●●●
●
●●●
●
●
●●
●●
●
●●●●●●●●●●●●
●●
●●●●
●
●●●
●●
●
●
●●●
●
●
●●
●
●●●●●●●
●
●●●●●
●
●●●
●
●●●
●
●●●●●
●
●●●
●
●●
●●●●●●●●●●●●●●
●
●●●
●
●
●
●●
●●
●●●
●
●●
●●
●●●
●
●
●
●
●
●
●●●
●
●●●●●●
●
●●●
●
●●
●●●●●
●
●
●
●
●●●●
●●●●●●●
●
●
●
●
●
●●●
●
●
●●
●●●●●●●
●
●
●
●●●●●
●●●
●●●●
●
●●●●●●●●●
●
●
●●●
●
●
●●●●●
●
●●●
●
●●●●●●●
●
●●●
●
●
●
●
●●●
●
●
●●
●
●●●●●
●●
●●●●
●●●●●●
●
●
●
●
●
●●●●
●●
●
●
●
●●
●●●●●
●●
●●
●
●●●●●
●●
●
●
●
●●●●
●●●
●
●●●●●●●
●
●
●●
●
●
●●●
●
●
●●
●●●●●●
●
●
●●●
●
● ●●●
●
●●
●
●
●
●●●●
●
●
●
●
●●
●●
●
●●●
●
●
●●●●●●●●●●●●●●●
●
●●●●
●●●●●
●●
●
●●
●
●●
●
●
●
●●●●
●
●
●●●●●●●●
●●
●
●●●●
●
●
●●
●
●
●
●
●●
●
●
●
●●●●●●
●
●●●●
●●●●●●●●
●●
●●
●
●
●●●●●
●
●
●●●●●
●●
●
●●
●
●
●
●●●●
●
●●●
●●
●
●●
●
●
●
●
●
●●
●●
●●●
●
●
●
●●
●
●
●
●
●●
●●
●
●●●
●
●●●
●●●●
●●
●●●
●●
●
●●
●●●●
●●●
●
●●●
●●
●●●●
●
●●
●
●●
●
●●
●
●●●
●
●
●
●
●
●
●●●●
●
●●
●●
●
●●
●
●
●●
●
●
●
●
●
●
●
●●
●●●●●●
●
●●●
●●
●
●●
●
●●
●
●
●
●●●
●●●
●
●
●●
●●●
●
●
●●
●●
●
●
●
●
●●
●
●
●
●●
●●
●●
●
●
●●
●
●
●
●●
●
●
●
●
●●●
●
●
●
●
●●
●●●●●
●●
●
●
●
●
●●
●●
●
●
●
●●●
●
●
●●●
●
●
●●
●
●
●
●
●
●
●●
●●
●
●
●●
●
●
●
●
●
●
●
●●
●●
●
●●●●
●●
●
●●
●
●
●
●
●●●
●
●●
●
●●●
●
●
●
●
●
●
●
●
●
●
●
●
●●●●
●
●
●●●
●
●
●
●
●
●
●●●
●
●
●
●
●
●
●
●
●
●●●●●●●●
●
●
●●
●
●●
●
●●
●
●●
●●
●●
●●●
●●
●●●
●
●●
●
●●●●●
●●●●
●
●
●
●
●
●
●●
●●
●●
●
●
●
●●
●
●●
●●●●
●
●
●
●
●●
●
●●
●●
●●●
●●
●
●
●
●●●●
●
●●
●●●
●
●
●
●
●●
●●
●
●
●
●
●●●
●
●
●
●
●
●●
●
●●●●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●●
●
●
●
●●
●
●●●
●●
●●●●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●●
●●
●
●
●●●
●
●
●
●●
●
●●
●●
●●●
●
●
●●
●●●
●
●
●
●●●●●
●
●
●
●
●
●
●
●
●●
●
●●
●
●
●
●●●●
●
●●●
●
●
●
●
●●
●
●●●●●●●
●
●
●
●
●
●
●●
●
●
●
●●●●
●
●●
●
●●
●●●●●
●●
●●
●●
●
●
●●
●
●
●
●●
●
●●●●●●●●●●●●●●●●●● ●
●●●●●●●●●● ●●●●●●●●●●●●
●●●
●●●●●●●●●●●●●●●●●●●●●● ●●●●
●● ●●●●●●●●
●●●●●●●●
●●●
●
●●●
●●●
●●●
●●
●●●●●●●●●●●●●●
●
●
●
●
●●
●
●
●
●●●●●
●●●
●●●
●●●●●
●
●
●
●●
●●
●
●
●
●
●●●●
●●●
●●
●●
●●
●
●
●
●
●●●●●
●●
●●●
●
●●
●●
●
●●●
●
●●●●●●●
●
●
●
●●
●
●●●
●
●●
●
●
●
●
●
●
●
●●●
●
●
●●●
●●
●●
●
●
●
●
●
●
●
●
●●
●
●●
●
●●●
●
●●●
●
●
●
●●●
●●●
●●●
●
●●
●
●
●
●
●
●●●
●●●●
●●●
●
●
●
●
●●
●
●
●
●
●
●●
●●
●
●
●●●●
●●
●
●
●
●●
●●
●●
●
●
●
●
●●●
●
●
●●●●●
●
●
●
●●
●
●
●
●
●●
●
●●
●
●●
●
●●●●●
●
●
●
●
●
●
●
●●●
●●
●
●
●●●
●
●●
●
●●●
●
●
●
●●●
●●●●●●
●●●●●
●●●●
●●●
●●
●●
●●●●●
●●
●●
●
●
●
●
●
●
●
●●●
●
●
●
●●
●●●●
●●●
●
●
●
●●
●●
●
●●●●
●●●
●
●
●
●
●●
●
●●
●
●
●●●●
●
●
●●●
●
●●
●●
●●●●●●
●
●●
●●
●
●●
●●
●●
●●●
●
●
●●
●
●●●●●
●
●●
●
●●
●
●
●●
●
●●●●●●●●●●
●
●●●●●●
●
●●●
●
●●●●●●●●● ●●●●●●●●
●●●
●
●●●●
●●●●
●
●●●●●●
●●●●●●●●●●
●●●●●●●●●●
●
●●●●●●
●
●
●●●●●●●●●●
●
●●●●●●●
●●●●●●●●●●●●
●●●●●●
●●●●●●●●●●●●●●●●●●●
●
●●●
●
●●●●●●●●●●●●●●●●●●●●●●●●●●
●
●●●●●●●●●
●●●●●●●●●
●
●●●
●●
●●●●●●●
●●●●●●
●●
●
●
●●●●●●●●●●
●●●●●●●●●
●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●
●●●●●●●●●●●●
●●●●●●●●●●●●●
●●●●●●●●●●
●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●● ●●
●
●●●
●●●
●
●
●●●●
●●●
●●●●
●●
●
●
●●
●●
●
●
●
●●
●●●
●●●●
●
●●
●●
●●●●●
●●
●
●●●
●
●
●●
●
●
●●
●
●●
●●●●●●
●●
●●
●●●
●
●●●●
●●●●●●
●
●
●●
●●
●●●
●
●
●●●
●
●●
●
●
●●
●
●
●
●●●
●
●
●
●●
●
●●●
●
●
●
●●
●
●●●●●●●●
●●●
●●●
●●●
●●
●
●
●
●●
●
●●
●
●
●
●
●
●●
●●●●●
●
●
●●
●●●
●
●
●
●
●
●
●
●
●●●●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●
●
●●
●
●●
●●●
●
●
●
●●
●
●
●
●●●●●●
●●
●
●
●●
●●●●●
●
●
●
●
●●●●
●
●●
●●
●●●
●
●
●
●
●
●●
●
●●●
●
●●●
●●●
●●
●
●
●●
●
●●●●●
●●●
●
●●
●
●
●
●●●
●●●●●
●
●
●●●●●
●
●●●●●●●
●●●●●
●
●●●
●
●
●●●●●●
●
●●
●
●●●
●
●●●●●
●
●●●●●●●●●
●
●
●
●
●●●
●
●●
●
●●●●
●●●●●
●●
●
●●●
●
●●
●
●●
●
●
●●●●●●●
●●●●●●●●●●●
●
●
●
●●
●
●
●●●●
●
●
●●
●●●
●
●●
●
●●●●●
●●●
●
●●●●●●
●●●
●●●
●
●
●
●●●●●●●●
●●●●●●
●
●
●●●●●
●
●
●●●
●●●●●●●●●●●●●●●
●●●●
●
●
●●●●●●●●●●●●●●●
●
●●●●●●●●●●●●●●●●●
●●●
●●●●●●●
●●●●●
●●●
●
●
●
●
●●●●●
●●●●●●●●
●●●
●
●●
●●●●●●●●●●●●
●
●
●●●●●
●
●●●
●
●
●●●
●
●●●●●●●
●●●●●●●●●●
●●●●●●●●
●
●●●
●
●
●●●●●●●●
●●●●
●
●
●
●
●
●●●
Dijkstra Rank
Que
ry T
ime
[ms]
20 21 22 23 24 25 26 27 28 29 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224
0.01
0.1
13
1010
010
0010
000
DijkstraArc−Flags (128 regions)bidirectional Arc−Flags (128 regions)
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 78: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/78.jpg)
Lokale Anfragen Arc-Flags I
●●●●
●
●●●●●●●
●
●
●
●●●●●●●
●
●●●●●●●●
●
●●●●●
●
●●●●●●●●●●
●
●●●
●
●●●●●●
●
●●●
●
●●●●●●●●●●●●●●●●●●●●●●●●●
●
●
●●●●
●●
●●●
●
●●●●●●●●●●●
●
●●●●
●●
● ●●●●●●●●●●
●
●●●●●●●●●●●●●●●●●●●●●●●
●
●
●
●●●●
●
●●●●●●
●
●●●●●●●●●●●●●●
●●●●●●
●
●●●●●●●
●
●●●●●●●●●●●●●●●
●
●●●●●●●
●
●
●●●●●●●●●●
●●●●●●●●●●●●●
●●●●●
●
●
●●●●●●●●●●
●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●
●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●
●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●
●●●●●
●
●●●●●
●
●●●●●
●
●
●
●●●● ●●●●●●●●●
●
●●●●●●●●
●●
●●●
●
●●●●●●●● ●●●●●●●●
●
●●●●
●●●●●●●●●●
●
●●●●●
●
●●●●●●●
●●●●●●●●●●●
●
●●●●●●
●
●
●●●●●●●●●●●●
●
●●●●●●●● ●●●●●●●●●●
●●
●●●●●●●●●●●●●●●●●●●●●●●●●●
●
●●●
●
●●●●●●●
●●●●●●●●●●●●●●●●●●●●
●
●
●
●
●
●●
●
●●
●
●●
●
●
●●●
●
●●
●
●●
●
●
●
●
●
●●●
●
●
●●●●
●●
●
●
●
●
●●●
●●
●
●
●
●
●●●●●●●●
●
●●●●
●
●
●
●●
●●
●●●●
●
●●●●●●●●
●●
●
●●
●
●
●●
●
●●●●●●●
●●●●●●
●
●●
●
●
●●
●●●
●●
●●●
●●●●
●●
●
●
●
●
●●●●●●●
●
●●
●●●●●
●●●
●
●●●●
●
●
●●●●●●●●
●
●●●
●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●
●●●●●●●●●●●●
●●●●●●●●●●●●●
●●●●●●●●●
●●●●●●●●●●●●●
●
●●●
●
●
●
●●
●
●●●
●
●
●
●●
●●
●●●
●●
●
●●
●●●●
●●
●
●●
●
●
●●
●
●
●
●
●
●●
●●●
●
●
●●
●
●●●●●●
●
●●
●
●●●●●●●
●
●
●●
●●
●
●
●
●
●
●●●
●
●●●●
●
●
●●●
●
●●
●
●●●●●
●
●●●●●●
●●
●●●
●●●
●●
●●●●
●●●●●
●
●●●●
●●
●
●
●
●●●●
●●
●
●●
●●
●●
●
●
●●
●●
●●●
●●
●●●●
●
●
●●●
●
●●●
●
●
●●●
●
●●
●
●
●
●
●●
●●●●●
●●●
●
●
●
●
●●●●
●
●
●
●
●
●●●●
●
●
●
●
●
●●
●
●
●
●●●
●
●
●●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●●
●
●
●
●
●
●
●
●
●●
●
●
●
●●
●●●●●●●
●
●●
●
●●
●
●
●
●●
●
●●
●●
●●●●●●●
●● ●
●
●●
●
●
●●
●
●
●
●
●
●
●
●●●
●
●●●●
●
●●●
●●
●●●
●
●
●●
●
●
●
●●
●●
●●
●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●●●
●
●
●
●
●
●●●
●
●
●
●●
●●
●
●●●
●●
●●●
●
●
●●
●●
●●●
●●●●
●●
●
●
●
●
●●
●
●
●●
●
●
●●●●
●
●●
●
●●
●
●●●
●
●●
●
●
●●
●
●
●●●
●●●●●
●
●●●
●●●
●
●
●●●●●●
●●●
●●●
●
●●
●
●
●●●●●●●
●
●
●●●
●
●●●●
●
●
●●●●
●●
●●●●●●
●
●
●●
●
●
●
●
●●●●●●●
●
●
●
●
●●
●●●
●
●●●
●●●
●●●
●●
●●●●●●●●●●●●●●
●
●
●
●
●●
●
●
●
●●●●●
●●●
●●●
●●●●●
●
●
●
●●
●●
●
●
●
●
●●●●
●●●
●●
●●
●●
●
●
●
●
●●●●●
●●
●●●
●
●●
●●
●
●●●
●
●●●●●●●
●
●
●
●●
●
●●●
●
●●
●
●
●
●
●
●
●
●●●
●
●
●●●
●●
●●
●
●
●
●
●
●
●
●
●●
●
●●
●
●●●
●
●●●
●
●
●
●●●
●●●
●●●
●
●●
●
●
●
●
●
●●●
●●●●
●●●
●
●
●
●
●●
●
●
●
●
●
●●
●●
●
●
●●●●
●●
●
●
●
●●
●●
●●
●
●
●
●
●●●
●
●
●●●●●
●
●
●
●●
●
●
●
●
●●
●
●●
●
●●
●
●●●●●
●
●
●
●
●
●
●
●●●
●●
●
●
●●●
●
●●
●
●●●
●
●
●
●●●
●●●●●●
●●●●●
●●●●
●●●
●●
●●
●●●●●
●●
●●
●
●
●
●
●
●
●
●●●
●
●
●
●●
●●●●
●●●
●
●
●
●●
●●
●
●●●●
●●●
●
●
●
●
●●
●
●●
●
●
●●●●
●
●
●●●
●
●●
●●
●●●●●●
●
●●
●●
●
●●
●●
●●
●●●
●
●
●●
●
●●●●●
●
●●
●
●●
●
●
●●
●
●●●●●●●●●●
●
●●●●●●
●
●●●
●
●●●●●●●●● ●●●●●●●●
●●●
●
●●●●
●●●●
●
●●●●●●
●●●●●●●●●●
●●●●●●●●●●
●
●●●●●●
●
●
●●●●●●●●●●
●
●●●●●●●
●●●●●●●●●●●●
●●●●●●
●●●●●●●●●●●●●●●●●●●
●
●●●
●
●●●●●●●●●●●●●●●●●●●●●●●●●●
●
●●●●●●●●●
●●●●●●●●●
●
●●●
●●
●●●●●●●
●●●●●●
●●
●
●
●●●●●●●●●●
●●●●●●●●●
●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●
●●●●●●●●●●●●
●●●●●●●●●●●●●
●●●●●●●●●●
●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●● ●●
●
●●●
●●●
●
●
●●●●
●●●
●●●●
●●
●
●
●●
●●
●
●
●
●●
●●●
●●●●
●
●●
●●
●●●●●
●●
●
●●●
●
●
●●
●
●
●●
●
●●
●●●●●●
●●
●●
●●●
●
●●●●
●●●●●●
●
●
●●
●●
●●●
●
●
●●●
●
●●
●
●
●●
●
●
●
●●●
●
●
●
●●
●
●●●
●
●
●
●●
●
●●●●●●●●
●●●
●●●
●●●
●●
●
●
●
●●
●
●●
●
●
●
●
●
●●
●●●●●
●
●
●●
●●●
●
●
●
●
●
●
●
●
●●●●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●
●
●●
●
●●
●●●
●
●
●
●●
●
●
●
●●●●●●
●●
●
●
●●
●●●●●
●
●
●
●
●●●●
●
●●
●●
●●●
●
●
●
●
●
●●
●
●●●
●
●●●
●●●
●●
●
●
●●
●
●●●●●
●●●
●
●●
●
●
●
●●●
●●●●●
●
●
●●●●●
●
●●●●●●●
●●●●●
●
●●●
●
●
●●●●●●
●
●●
●
●●●
●
●●●●●
●
●●●●●●●●●
●
●
●
●
●●●
●
●●
●
●●●●
●●●●●
●●
●
●●●
●
●●
●
●●
●
●
●●●●●●●
●●●●●●●●●●●
●
●
●
●●
●
●
●●●●
●
●
●●
●●●
●
●●
●
●●●●●
●●●
●
●●●●●●
●●●
●●●
●
●
●
●●●●●●●●
●●●●●●
●
●
●●●●●
●
●
●●●
●●●●●●●●●●●●●●●
●●●●
●
●
●●●●●●●●●●●●●●●
●
●●●●●●●●●●●●●●●●●
●●●
●●●●●●●
●●●●●
●●●
●
●
●
●
●●●●●
●●●●●●●●
●●●
●
●●
●●●●●●●●●●●●
●
●
●●●●●
●
●●●
●
●
●●●
●
●●●●●●●
●●●●●●●●●●
●●●●●●●●
●
●●●
●
●
●●●●●●●●
●●●●
●
●
●
●
●
●●●
Dijkstra Rank
Que
ry T
ime
[ms]
20 21 22 23 24 25 26 27 28 29 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224
0.01
0.1
13
1010
010
0010
000
bidirectional Dijkstrabidirectional Arc−Flags (16 regions)bidirectional Arc−Flags (128 regions)
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 79: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/79.jpg)
Beobachtungen
birektionale Arc-Flags deutlich schneller als unidirektionale
gegenüber Dijkstra nur Beschleunigung für weite Anfragen
128 Regionen deutlich besser 16 (bei 224 nahezu gleich auf)
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 80: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/80.jpg)
Flaggenkompression(Multi-Level, unidirektional)
0e+00 2e+05 4e+05 6e+05 8e+05
0.5
1.0
1.5
2.0
2.5
3.0
3.5
4.0
#Entfernte Flags
Lauf
zeit
Europagraph, Kostenfkt., Häufigkeitsfakt. 0,5
0.518118
3.90533
−−−
1_2_4_8_16_321_2_4_8_32_641_2_4_8_64_128
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 81: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/81.jpg)
Beobachtungen
kaum Verlust bis zu 60% entfernte Flaggen
geringer Verlust bis zu 80% entfernte Flaggen
kippen von niedrig-leveligen Flaggen billiger
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 82: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/82.jpg)
Übersicht: bisherige Techniken
Vorberechnung Anfrage
Zeit Platz Such Zeit[h:m] [byte/n] raum [ms] Beschl.
Dijkstra 0:00 0 9 114 385 5 591.6 1.0Bi-Dijkstra 0:00 0 4 764 110 2 713.2 2.1Uni-ALT-16 1:25 128 815 639 327.6 17.1Uni-ALT-64 1:08 512 604 968 288.5 19.4Bi-ALT-16 1:25 128 74 669 53.6 104.3Bi-ALT-64 1:08 512 25 324 19.6 285.3Uni Arc-Flags (128) 8:34 20 92 545 31.9 175.3Bi Arc-Flags (128) 17:08 10 2 764 0.8 6 988.1
Beobachtung:
ALT: deutlich unterlegen bei Anfragen und Platzverbrauch
Arc-Flags: deutlich längere Vorberechnungszeiten
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 83: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/83.jpg)
Lokale Anfragen Vergleich
●●●●
●
●●●●●●●
●
●
●
●●●●●●●
●
●●●●●●●●
●
●●●●●
●
●●●●●●●●●●
●
●●●
●
●●●●●●
●
●●●
●
●●●●●●●●●●●●●●●●●●●●●●●●●
●
●
●●●●
●●
●●●
●
●●●●●●●●●●●
●
●●●●
●●
● ●●●●●●●●●●
●
●●●●●●●●●●●●●●●●●●●●●●●
●
●
●
●●●●
●
●●●●●●
●
●●●●●●●●●●●●●●
●●●●●●
●
●●●●●●●
●
●●●●●●●●●●●●●●●
●
●●●●●●●
●
●
●●●●●●●●●●
●●●●●●●●●●●●●
●●●●●
●
●
●●●●●●●●●●
●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●
●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●
●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●
●●●●
●
●●
●
●●●●●●
●
●●●●●●●●●●●●●●●●
●
●●●●●●●●●●●●
●●●●
●
●●● ●●
●
●●●●●●●●●●●●●●●●●●●
●
●●●
●
●●●●●●●●●●●●●●●●●●●●●●●
●
●●●●●
●
●●●●●●●●●●
●
●
●
●●
●
●
●●●●●●
●
●●●●●●●●●●
●●●●●●●
●
●●●●●●●●●●
●
●●●●●●●●●●●●●●●
●●●
●
●●●●●●●
●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●
●
●●●●●●●
●
●●●●●●●●●●●●●●●●●●●
●●●
●●●●●●●
●●●●●●●●●●●●●●●●●●
●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●
●
●●
●
●
●●●●●●●●●
●
●●●●●●●●●●●●●●●●●●●●●●●●●●●
●
●●●●●
●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●
●●●●●●●●●●
●
●
●●●●
●
●●●●●●●●●●●
●●●●●●●●●
●●●●●●●●
●●●●●●●●●●●
●
●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●
●
●●●●●●●●●●●●●●●●●●● ●
●
●●●●●●
●●●●●●●●●●●●
●
●●●●●●●●
●●●
●●●●●●●●
●●●●●●●●
●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●
●
●
●●●●●●●●●●●●
●●●●●●●●●●
●●●
●●●●●
●●●●
●
●●
●●
●
●●●●●
●●●●
●
●●●●●●●●●●
●
●
●●●●
●
●●●●●●●●●●●●●
●
●●●●●●●
●●
●●
●
●●●●
●●●
●
●●●●●
●●●●●●●
●
●●●●●●
●●●●
●
●
●
●
●●●●●
●●●●●●●●●●●●●●●
●●
●●●●●●
●●●
●●
●
●
●●
●●●●
●
●
●●
●●●●●●
●●●●●●●●●
●●●●●●●●●●●●●●●
●
●●
●●●●
●
●
●●
●●●
●●●●●●●
●
●●
●●●●●
●
●
●●●●●●
●
●
●
●
●
●●●●●
●●●●
●
●
●
●●
●●
●●●
●
●●●
●●
●
●●
●
●
●
●●
●
●●
●●●
●
●●●●
●●●●●
●●●●
●●
●●●●●●●●●
●
●
●●
●●●●●●●●●●●●●
●●
●
●●
●●
●●●●●●●
●
●
●
●●
●
●
●
●
●●●●●
●●
●●
●●●●●●
●●●●●
●●
●●●●●●●●
●
●
●
●
●
●●●
●
●●●●●●●●●
●●●
●
●●●●
●●●●●●●●●●
●
●●●●
●●●●●●●
●●●●●
●●
●●●●
●●●
●
●
●
●
●
●●
●
●●●
●
●
●●●●
●●●●●●
●
●●
●●●●●●
●●
●●
●●
●
●●●
●
●
●
●
●●●●●●●●
●
●●●●●
●●●●●
●●●●●●
●●
●●
●●
●●●●●●
●●●●●
●●●
●●●●
●
●●
●●●●●●●●
●●●
●●
●
●●●
●
●●●●●●
●●●●●●●●●●●●●●
●
●●●●●●●
●
●●
●●
●●
●●●
●●●●●●
●
●●●●●
●
●●●●●●●
●
●●●●
●●
●●●
●
●
●
●
●●●
●
●●●●
●
●
●●●●●
●
●●
●
●
●
●
●●
●●●
●
●●●
●●●
●
●●●
●●●
●
●
●●
●●●●
●●●
●●●●
●
●●
●●
●●●
●
●●●
●
●
●●●
●●
●
●●●●
●●
●●●●●●●●●
●●●●●●●●●●●●●●
●
●
●●
●
●
●
●●
●
●●
●
●●●●●●●●●
●
●●●
●●●●●●
●
●
●
●
●●
●
●●
●●●●●●●
●
●●●●●●
●
●
●●
●
●
●
●
●●●●●●●●
●
●
●
●
●
●
●
●●
●
●●●
●
●●●
●●●
●●●
●●
●●●●●●●●●●●●●●
●
●
●
●
●●
●
●
●
●●●●●
●●●
●●●
●●●●●
●
●
●
●●
●●
●
●
●
●
●●●●
●●●
●●
●●
●●
●
●
●
●
●●●●●
●●
●●●
●
●●
●●
●
●●●
●
●●●●●●●
●
●
●
●●
●
●●●
●
●●
●
●
●
●
●
●
●
●●●
●
●
●●●
●●
●●
●
●
●
●
●
●
●
●
●●
●
●●
●
●●●
●
●●●
●
●
●
●●●
●●●
●●●
●
●●
●
●
●
●
●
●●●
●●●●
●●●
●
●
●
●
●●
●
●
●
●
●
●●
●●
●
●
●●●●
●●
●
●
●
●●
●●
●●
●
●
●
●
●●●
●
●
●●●●●
●
●
●
●●
●
●
●
●
●●
●
●●
●
●●
●
●●●●●
●
●
●
●
●
●
●
●●●
●●
●
●
●●●
●
●●
●
●●●
●
●
●
●●●
●●●●●●
●●●●●
●●●●
●●●
●●
●●
●●●●●
●●
●●
●
●
●
●
●
●
●
●●●
●
●
●
●●
●●●●
●●●
●
●
●
●●
●●
●
●●●●
●●●
●
●
●
●
●●
●
●●
●
●
●●●●
●
●
●●●
●
●●
●●
●●●●●●
●
●●
●●
●
●●
●●
●●
●●●
●
●
●●
●
●●●●●
●
●●
●
●●
●
●
●●
●
●●●●●●●●●●
●
●●●●●●
●
●●●
●
●●●●●●●●● ●●●●●●●●
●●●
●
●●●●
●●●●
●
●●●●●●
●●●●●●●●●●
●●●●●●●●●●
●
●●●●●●
●
●
●●●●●●●●●●
●
●●●●●●●
●●●●●●●●●●●●
●●●●●●
●●●●●●●●●●●●●●●●●●●
●
●●●
●
●●●●●●●●●●●●●●●●●●●●●●●●●●
●
●●●●●●●●●
●●●●●●●●●
●
●●●
●●
●●●●●●●
●●●●●●
●●
●
●
●●●●●●●●●●
●●●●●●●●●
●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●
●●●●●●●●●●●●
●●●●●●●●●●●●●
●●●●●●●●●●
●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●● ●●
●
●●●
●●●
●
●
●●●●
●●●
●●●●
●●
●
●
●●
●●
●
●
●
●●
●●●
●●●●
●
●●
●●
●●●●●
●●
●
●●●
●
●
●●
●
●
●●
●
●●
●●●●●●
●●
●●
●●●
●
●●●●
●●●●●●
●
●
●●
●●
●●●
●
●
●●●
●
●●
●
●
●●
●
●
●
●●●
●
●
●
●●
●
●●●
●
●
●
●●
●
●●●●●●●●
●●●
●●●
●●●
●●
●
●
●
●●
●
●●
●
●
●
●
●
●●
●●●●●
●
●
●●
●●●
●
●
●
●
●
●
●
●
●●●●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●
●
●●
●
●●
●●●
●
●
●
●●
●
●
●
●●●●●●
●●
●
●
●●
●●●●●
●
●
●
●
●●●●
●
●●
●●
●●●
●
●
●
●
●
●●
●
●●●
●
●●●
●●●
●●
●
●
●●
●
●●●●●
●●●
●
●●
●
●
●
●●●
●●●●●
●
●
●●●●●
●
●●●●●●●
●●●●●
●
●●●
●
●
●●●●●●
●
●●
●
●●●
●
●●●●●
●
●●●●●●●●●
●
●
●
●
●●●
●
●●
●
●●●●
●●●●●
●●
●
●●●
●
●●
●
●●
●
●
●●●●●●●
●●●●●●●●●●●
●
●
●
●●
●
●
●●●●
●
●
●●
●●●
●
●●
●
●●●●●
●●●
●
●●●●●●
●●●
●●●
●
●
●
●●●●●●●●
●●●●●●
●
●
●●●●●
●
●
●●●
●●●●●●●●●●●●●●●
●●●●
●
●
●●●●●●●●●●●●●●●
●
●●●●●●●●●●●●●●●●●
●●●
●●●●●●●
●●●●●
●●●
●
●
●
●
●●●●●
●●●●●●●●
●●●
●
●●
●●●●●●●●●●●●
●
●
●●●●●
●
●●●
●
●
●●●
●
●●●●●●●
●●●●●●●●●●
●●●●●●●●
●
●●●
●
●
●●●●●●●●
●●●●
●
●
●
●
●
●●●
Dijkstra Rank
Que
ry T
ime
[ms]
20 21 22 23 24 25 26 27 28 29 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224
0.01
0.1
13
1010
010
0010
000
bidirectional Dijkstrabidirectional ALTbidirectional Arc−Flags (128 regions)
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 84: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/84.jpg)
Zusammenfassung
Geometrische Container
speichere pro Kante einen Container ab
beinhaltet alle Knoten, die über diese Kante erreicht werdenkönnen
einfacher Anfrage-Algorithmus
Vorberechung basiert auf Dijkstra-Bäumen
Beschleunigung von ca. 40
Vorberechnung basiert auf APSP
knapp 500 Jahre Vorberechnung für Europa
nicht praktikabel
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 85: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/85.jpg)
Zusammenfassung
Arc-Flags
Teile Graphen in k Regionen
Flaggen zeigen an, ob Kante wichtig für Zielregion ist
Einfacher Anfrage-AlgorithmusVorberechnung
Kürzeste-Wege-Baum von jedem RandknotenManche Flaggen können automatisch gesetzt werden
Bidirektional und multi-level Erweiterungen
Beschleunigung von bis zu 7000
Nahe Anfragen nicht schneller als Dijkstra
Vorberechnung dauert allerdings immer noch ca. 1 Tag
Seit kurzem extrem schnelle Vorberechung für Straßennetzwerke
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011
![Page 86: Algorithmen für Routenplanung - KIT - ITI Algorithmik...Mai 2011 s t Beobachtung: Subwege von kürzesten Wegen sind auch kürzeste Wege nicht jede Kante ist wichtig für ein bestimmtes](https://reader036.vdokument.com/reader036/viewer/2022070212/61046aeef5ff8906762c41cb/html5/thumbnails/86.jpg)
Ende
Literatur (Geometrische Container, Arc-Flags):
Dorothea Wagner and Thomas Willhalm and Christos Zaroliagis:Geometric Containers for Ef�cient Shortest-PathComputationIn: ACM Journal of Experimental Algorithmics, 2005 article 1.3.
Moritz Hilger and Ekkehard Köhler and Rolf H. Möhring andHeiko Schilling:Fast Point-to-Point Shortest Path Computations withArc-FlagsIn: Shortest Paths: Ninth DIMACS Implementation Challenge,2009
Reinhard Bauer � Algorithmen für Routenplanung 2. Mai 2011