KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK...

189
INSTITUT FÜR THEORETISCHE INFORMATIK · ALGORITHMIK · PROF.DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung, Sommersemester 2015 julian Dibbelt | 27. Mai 2015 KIT – Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

Transcript of KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK...

Page 1: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

INSTITUT FÜR THEORETISCHE INFORMATIK · ALGORITHMIK · PROF. DR. DOROTHEA WAGNER

Algorithmen für Routenplanung10. Sitzung, Sommersemester 2015

julian Dibbelt | 27. Mai 2015

KIT – Universität des Landes Baden-Württemberg undnationales Großforschungszentrum in der Helmholtz-Gemeinschaft

www.kit.edu

Page 2: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 3: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 4: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 5: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0

5

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 6: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0 1

5

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 7: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0 1

5

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 8: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0 1

65

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 9: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0 1 2

65

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 10: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0 1 2

765

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 11: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0 1 2

7

3

65

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 12: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0 1 2

7

3

865

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 13: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0 1 2

7

3

8

4

65

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 14: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0 2

7

3

8

40

65

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 15: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0 2

7

3

8

40

55

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 16: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0

7

3

8

40

5

1

5

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 17: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0 3

8

40

5

1

65

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 18: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0

8

40

5

1

6

2

5

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 19: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0 40

5

1

6

2

75

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 20: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0 0

5

1

6

2

7

3

5

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 21: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0 0

5 6

2

7

30

5

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 22: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0 0

5

2

7

30

55

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 23: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0 0

5 7

30

5

1

5

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 24: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0 0

5

30

5

1

65

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 25: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0 0

5

0

5

1

6

2

5

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 26: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0 0

5

0

5 6

20

5

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 27: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nachtrag

Einführungsvorlesung: Dijkstra’s Algorithmus ist label-setting (bereitsabgearbeitete Distanzen werden nicht mehr verbessert; wichtig fürdie Laufzeitanalyse; wichtig für ALT)

Gibt es Szenarien in denen Dijkstra’s Algorithmus label-correcting ist?

Einfaches Beispiel (negative Kantengewichte):

11 1 1

5 5 5 5-5 -5 -5 -5

0 0

5

0

5

20

55

julian Dibbelt – Algorithmen für RoutenplanungFolie 2 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 28: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Optimierungskriterien

Kürzester Weg (eine Metrik)Alternative (eine Metrik; fast kürzeste, dennoch sinnvolle Wege)jetzt: mehrere Metriken

julian Dibbelt – Algorithmen für RoutenplanungFolie 3 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 29: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Multikriterielle Optimierung

(1,3)

(1,3)

(1,3)(3,1)

(3,1)

(3,1)

(2,2)

s

t

`(P1)=(3,9)

Idee:Mehrere Gewichte an Kanten(z. B. Reisezeiten, Kosten)

Berechne alle Pareto-optimalen RoutenRoute ist Pareto-optimal, wenn nichtvon anderen Routen dominiertRoute dominiert andere, wenn sie siehinsichtlich jedes Kriteriums ersetzenkannGrenzfall: Gleich gut in allen Kriterien(wird unterschiedlich behandelt)

Herausforderung:Viele Routen zum Ziel

julian Dibbelt – Algorithmen für RoutenplanungFolie 4 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 30: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Multikriterielle Optimierung

(1,3)

(1,3)

(1,3)(3,1)

(3,1)

(3,1)

(2,2)

`(P1)=(3,9)

s

t

`(P1)=(3,9)

Idee:Mehrere Gewichte an Kanten(z. B. Reisezeiten, Kosten)Berechne alle Pareto-optimalen Routen

Route ist Pareto-optimal, wenn nichtvon anderen Routen dominiertRoute dominiert andere, wenn sie siehinsichtlich jedes Kriteriums ersetzenkannGrenzfall: Gleich gut in allen Kriterien(wird unterschiedlich behandelt)

Herausforderung:Viele Routen zum Ziel

julian Dibbelt – Algorithmen für RoutenplanungFolie 4 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 31: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Multikriterielle Optimierung

(1,3)

(1,3)

(1,3)(3,1)

(3,1)

(3,1)

(2,2)

`(P1)=(3,9)

`(P2)=(9,3)

s

t

`(P1)=(3,9)

Idee:Mehrere Gewichte an Kanten(z. B. Reisezeiten, Kosten)Berechne alle Pareto-optimalen Routen

Route ist Pareto-optimal, wenn nichtvon anderen Routen dominiertRoute dominiert andere, wenn sie siehinsichtlich jedes Kriteriums ersetzenkannGrenzfall: Gleich gut in allen Kriterien(wird unterschiedlich behandelt)

Herausforderung:Viele Routen zum Ziel

julian Dibbelt – Algorithmen für RoutenplanungFolie 4 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 32: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Multikriterielle Optimierung

(1,3)

(1,3)

(1,3)(3,1)

(3,1)

(3,1)

(2,2)

`(P1)=(3,9)

`(P2)=(9,3)

`(P3)=(6,6)

s

t

`(P1)=(3,9)

Idee:Mehrere Gewichte an Kanten(z. B. Reisezeiten, Kosten)Berechne alle Pareto-optimalen Routen

Route ist Pareto-optimal, wenn nichtvon anderen Routen dominiertRoute dominiert andere, wenn sie siehinsichtlich jedes Kriteriums ersetzenkannGrenzfall: Gleich gut in allen Kriterien(wird unterschiedlich behandelt)

Herausforderung:Viele Routen zum Ziel

julian Dibbelt – Algorithmen für RoutenplanungFolie 4 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 33: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Multikriterielle Optimierung

(1,3)

(1,3)

(1,3)(3,1)

(3,1)

(3,1)

(2,2)

`(P1)=(3,9)

`(P2)=(9,3)

`(P3)=(6,6)

s

t

`(P1)=(3,9)

Idee:Mehrere Gewichte an Kanten(z. B. Reisezeiten, Kosten)Berechne alle Pareto-optimalen Routen

Route ist Pareto-optimal, wenn nichtvon anderen Routen dominiertRoute dominiert andere, wenn sie siehinsichtlich jedes Kriteriums ersetzenkannGrenzfall: Gleich gut in allen Kriterien(wird unterschiedlich behandelt)

Herausforderung:Viele Routen zum Ziel

julian Dibbelt – Algorithmen für RoutenplanungFolie 4 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 34: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Pareto-Menge

Definition (Pareto-Dominanz)Geg. zwei n-Tupel mi = (x1, . . . , xn),mj = (y1, . . . , yn) gilt:mj domininiert mi gdw. mj in allen Werten besser und in mindestenseinem echt besser ist, d. h. ∀k : yk <= xk und ∃l : yl < xl .

Definition (Pareto-Optimum)Zu einer Menge M von Tupeln ist ein Tupel mi ∈ M Pareto-Optimum,wenn es kein anderes mj ∈ M gibt, so dass mi von mj dominiert wird.

Die Menge M heißt Pareto-Menge, wenn alle m ∈ M Pareto-optimal.

Beispiel: Public Transit (Ankunftszeit und # Umstiege)

Wie effizient berechnen?

julian Dibbelt – Algorithmen für RoutenplanungFolie 5 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 35: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Pareto-Menge

Definition (Pareto-Dominanz)Geg. zwei n-Tupel mi = (x1, . . . , xn),mj = (y1, . . . , yn) gilt:mj domininiert mi gdw. mj in allen Werten besser und in mindestenseinem echt besser ist, d. h. ∀k : yk <= xk und ∃l : yl < xl .

Definition (Pareto-Optimum)Zu einer Menge M von Tupeln ist ein Tupel mi ∈ M Pareto-Optimum,wenn es kein anderes mj ∈ M gibt, so dass mi von mj dominiert wird.

Die Menge M heißt Pareto-Menge, wenn alle m ∈ M Pareto-optimal.

Beispiel: Public Transit (Ankunftszeit und # Umstiege)

Wie effizient berechnen?

julian Dibbelt – Algorithmen für RoutenplanungFolie 5 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 36: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Pareto-Menge

Definition (Pareto-Dominanz)Geg. zwei n-Tupel mi = (x1, . . . , xn),mj = (y1, . . . , yn) gilt:mj domininiert mi gdw. mj in allen Werten besser und in mindestenseinem echt besser ist, d. h. ∀k : yk <= xk und ∃l : yl < xl .

Definition (Pareto-Optimum)Zu einer Menge M von Tupeln ist ein Tupel mi ∈ M Pareto-Optimum,wenn es kein anderes mj ∈ M gibt, so dass mi von mj dominiert wird.

Die Menge M heißt Pareto-Menge, wenn alle m ∈ M Pareto-optimal.

Beispiel: Public Transit (Ankunftszeit und # Umstiege)

M = {(14:00 Uhr,5), (15:13 Uhr,3), (13:45 Uhr,4), (15:15 Uhr,0)}.

Wie effizient berechnen?

julian Dibbelt – Algorithmen für RoutenplanungFolie 5 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 37: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Pareto-Menge

Definition (Pareto-Dominanz)Geg. zwei n-Tupel mi = (x1, . . . , xn),mj = (y1, . . . , yn) gilt:mj domininiert mi gdw. mj in allen Werten besser und in mindestenseinem echt besser ist, d. h. ∀k : yk <= xk und ∃l : yl < xl .

Definition (Pareto-Optimum)Zu einer Menge M von Tupeln ist ein Tupel mi ∈ M Pareto-Optimum,wenn es kein anderes mj ∈ M gibt, so dass mi von mj dominiert wird.

Die Menge M heißt Pareto-Menge, wenn alle m ∈ M Pareto-optimal.

Beispiel: Public Transit (Ankunftszeit und # Umstiege)

M = {(14:00 Uhr,5), (15:13 Uhr,3), (13:45 Uhr,4), (15:15 Uhr,0)}.

Wie effizient berechnen?

julian Dibbelt – Algorithmen für RoutenplanungFolie 5 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 38: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Pareto-Menge

Definition (Pareto-Dominanz)Geg. zwei n-Tupel mi = (x1, . . . , xn),mj = (y1, . . . , yn) gilt:mj domininiert mi gdw. mj in allen Werten besser und in mindestenseinem echt besser ist, d. h. ∀k : yk <= xk und ∃l : yl < xl .

Definition (Pareto-Optimum)Zu einer Menge M von Tupeln ist ein Tupel mi ∈ M Pareto-Optimum,wenn es kein anderes mj ∈ M gibt, so dass mi von mj dominiert wird.

Die Menge M heißt Pareto-Menge, wenn alle m ∈ M Pareto-optimal.

Beispiel: Public Transit (Ankunftszeit und # Umstiege)

M = {(14:00 Uhr,5), (15:13 Uhr,3), (13:45 Uhr,4), (15:15 Uhr,0)}.

Wie effizient berechnen?

julian Dibbelt – Algorithmen für RoutenplanungFolie 5 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 39: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Multi-Criteria Dijkstra (MCD)

IdeeBenutze Graph mit Kantengewicht len : E → Rn

≥0

Grundlage: Dijkstra’s Algorithmus

. . . aber. . .

Label ` sind n-Tupel (x1, . . . , xn)

An jedem Knoten u ∈ V : Pareto-Menge Lu von LabelnJedes Label entspricht einem (Pareto-optimalen) s–u-PfadPriority Queue verwaltet Label statt KnotenPrioritätsfunktion k(x1, . . . , xn)

Meist: Linearkombination oder lexikographische Sortierung

Dominanz von Labeln in Lu on-the-fly

julian Dibbelt – Algorithmen für RoutenplanungFolie 6 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 40: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Multi-Criteria Dijkstra (MCD)

IdeeBenutze Graph mit Kantengewicht len : E → Rn

≥0

Grundlage: Dijkstra’s Algorithmus

. . . aber. . .

Label ` sind n-Tupel (x1, . . . , xn)

An jedem Knoten u ∈ V : Pareto-Menge Lu von LabelnJedes Label entspricht einem (Pareto-optimalen) s–u-PfadPriority Queue verwaltet Label statt KnotenPrioritätsfunktion k(x1, . . . , xn)

Meist: Linearkombination oder lexikographische Sortierung

Dominanz von Labeln in Lu on-the-fly

julian Dibbelt – Algorithmen für RoutenplanungFolie 6 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 41: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Multi-Criteria Dijkstra (MCD)

MLC(G = (V ,E), s

1 Lu ← ∅ for each u ∈ V ; Ls ← {(0, . . . ,0)}2 Q.clear(); Q.insert(s, k(0, . . . ,0))

3 while !Q.empty() do4 u and ` = (x1, . . . , xn)← Q.deleteMin()5 for all edges e = (u, v) ∈ E do

6 `′ ← (x1 + len(e)1, . . . , xn + len(e)n)

7 if `′ is not dominated by any `′′ ∈ Lv then8 Lv .insert(`′)9 Remove non-Pareto-optimal labels from Lv

10 Q.insert(v , k(`′))

julian Dibbelt – Algorithmen für RoutenplanungFolie 7 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 42: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Diskussion: MCD

Falls extrahiertes Label immer Pareto-optimal (bzgl. aller ` ∈ Q):MCD label-setting (einmal extrahierte Labels werden nie dominiert)dafür muss die Längenfunktion natürlich auch positiv seinGilt für Linearkombination und lexikographische Sortierung

Pareto-Mengen Lu sind dynamische Datenstrukturen teuer!Sehr viele Queue-OperationenTesten der Dominanz in O(|Lu|) möglichStoppkriterium?

julian Dibbelt – Algorithmen für RoutenplanungFolie 8 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 43: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Exponentielle Laufzeit

Exponentiell wachsende Lösungsmenge bei zwei Kriterien:

(1,0)

(0,1)

(2,0) (4,0) (8,0)

(0,2) (0,4) (0,8)

julian Dibbelt – Algorithmen für RoutenplanungFolie 9 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 44: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Exponentielle Laufzeit

Exponentiell wachsende Lösungsmenge bei zwei Kriterien:

(1,0)

(0,1)

(2,0) (4,0) (8,0)

(0,2) (0,4) (0,8)

{}

(1,0)(0,1)

(3,0)(2,1)(1,2)(0,3)

(7,0)(6,1)(5,2)(4,3)(3,4)(2,5)(1,6)(0,7)

(15,0)(14,1)(13,2)(12,3)(11,4)(10,5)

(9,6)...

julian Dibbelt – Algorithmen für RoutenplanungFolie 9 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 45: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Verbesserungen

Jedes Lu verwaltet bestes ungesettletes Label selbst⇒ Priority Queue auf Knoten statt LabelnHopping Reduction:Relaxierung der Kante zum Parent-Knoten p unnötig teuer (kannkeine Verbesserung bringen, kostet aber O(|Lp|) für Test)⇒ Überspringe Kante zum Parent-Knoten von `u(Variante: zum Parent-Knoten von u, wenn eindeutig)Target-Pruning:Abbruchkriterium funktioniert nicht (sonst nur eine Lösung)⇒ An Knoten u, verwerfe Label `u, wenn es bereits von dertentative Pareto-Menge Lt am Ziel t dominiert wird

Worst-Case Laufzeit immer noch exponentiell(aber je nach Instanz schon signifikante Beschleunigung)

julian Dibbelt – Algorithmen für RoutenplanungFolie 10 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 46: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Eingabe

Straßengraphen von:LuxemburgKarlsruheNiederlandeEuropa

Metriken:Fahrzeiten schnelles AutoFahrzeiten langsames AutoKostenDistanzenUnit Metrik

julian Dibbelt – Algorithmen für RoutenplanungFolie 11 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 47: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Ähnliche Metriken: Europa

target #del. timemetrics labels mins [ms]fast car (fc) 1.0 442 124 156.44slow car (sc) 1.0 452 635 151.68fast truck (ft) 1.0 433 834 139.51slow truck (st) 1.0 440 273 136.85fc + st 2.2 1 039 110 843.48fc + ft 2.0 947 042 698.21fc + sc 1.2 604 750 369.31sc + lt 1.9 876 998 577.05sc + ft 1.7 784 459 474.77ft + st 1.3 632 052 348.43fc + sc +st 2.3 1 078 190 956.14fc + sc + ft 2.0 940 815 751.16sc + ft +st 1.9 880 236 640.47fc + sc + ft + st 2.5 1 084 780 1016.39

Beobachtungen: nicht viele zusätzliche Lösungen; Anzahl Lösungenund Queue Extracts korrelieren; Queryzeit steigt viel stärker:Dominanztests sind nicht-linear

julian Dibbelt – Algorithmen für RoutenplanungFolie 12 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 48: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Verschiedene Metriken

Luxemburg Karlsruhetarget #del. time target #del. time

metrics labels mins [ms] labels mins [ms]fast car (fc) 1.0 15 469 2.89 1.0 39 001 8.2slow truck (st) 1.0 15 384 2.80 1.0 38 117 7.1costs 1.0 15 303 2.65 1.0 38 117 6.8distances 1.0 15 299 2.49 1.0 39 356 7.3unit 1.0 15 777 2.54 1.0 39 001 8.2fc + st 2.0 30 026 8.70 1.9 77 778 28.7fc + costs 29.6 402 232 1704.28 52.7 1 882 930 14909.5fc + dist. 49.9 429 250 1585.23 99.4 2 475 650 30893.2fc + unit 25.7 281 894 573.51 27.0 1 030 490 3209.9costs + dist. 29.6 305 891 581.71 67.2 1 661 600 10815.1

Je nach Kriterien kann Lösungsmenge stark ansteigen

julian Dibbelt – Algorithmen für RoutenplanungFolie 13 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 49: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Beschleunigungstechniken

Landmarken BidirektionaleSuche Kontraktion Arc-Flags Table-

Lookupsl1

l2

u

t

s

t

st

dist

ance

s be

twee

nac

cess

nod

e

acce

ss n

ode

tran

sit n

odes

julian Dibbelt – Algorithmen für RoutenplanungFolie 14 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 50: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Landmarken

Vorberechnung:Wähle eine Hand voll (≈ 16) Knoten alsLandmarkenBerechne Abstände von und zu allen Landmarken

Anfrage:Benutze Landmarken und Dreiecksungleichung umeine untere Schranke für den Abstand zum Ziel zubestimmen

d(s, t) ≥ d(L1, t)− d(L1, s)d(s, t) ≥ d(s,L2)− d(t ,L2)

Verändert Reihenfolge der besuchten Knoten

l1

l2

u

t

julian Dibbelt – Algorithmen für RoutenplanungFolie 15 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 51: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Anpassung

Beobachtung:Korrektheit von ALT basiert darauf, dass reduziertenKantengewichte größer gleich 0 sind

lenπ(u, v) = len(u, v)− π(u) + π(v) ≥ 0

julian Dibbelt – Algorithmen für RoutenplanungFolie 16 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 52: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Anpassung

Beobachtung:Korrektheit von ALT basiert darauf, dass reduziertenKantengewichte größer gleich 0 sind

lenπ(u, v) = len(u, v)− π(u) + π(v) ≥ 0

Idee:Benutze einzelne Metriken zum Berechnen der DistanzenFür jeden Knoten u:Distanzvektor (d1(u,Li)1, . . . ,dn(u,Li)n) pro Landmarke Li

Liefert Potentiale π1, . . . , πn

Zielrichtung: Priorität eines Labels ist (x1 + π1, . . . , xn + πn).Potential πi liefert untere Schranke für di(u, t)⇒ Nutze (x1 + π1, . . . , xn + πn) auch für Target Pruning

julian Dibbelt – Algorithmen für RoutenplanungFolie 16 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 53: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Anpassung

Beobachtung:Korrektheit von ALT basiert darauf, dass reduziertenKantengewichte größer gleich 0 sind

lenπ(u, v) = len(u, v)− π(u) + π(v) ≥ 0

Modifikation:Berechne zur Queryzeit (d1(u, t)1, . . . ,dn(u, t)n)

Nutze t als einzige “perfekte” LandmarkeKosten von n Dijkstras (meist) unerheblich für GesamtlaufzeitKeine Vorberechnung

julian Dibbelt – Algorithmen für RoutenplanungFolie 16 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 54: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Bidirektionale Suche

s t

Starte zweite Suche von tRelaxiere rückwärts nureingehende KantenStoppe die Suche, wennbeide Suchräume sichtreffen

julian Dibbelt – Algorithmen für RoutenplanungFolie 17 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 55: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Anpassung

Idee:Rückwärtssuche kein Problem (analog)

Offenes Problem:Abbruchkriterium?Analog Target-Pruning: Dominanztest mit tentativerPareto-Menge; teuer zu verwalten: Kombination der Lösungenaus Vorwärts- und Rückwärtssuche an MittelknotenLohnt nicht recht

julian Dibbelt – Algorithmen für RoutenplanungFolie 18 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 56: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Anpassung

Idee:Rückwärtssuche kein Problem (analog)

Offenes Problem:Abbruchkriterium?Analog Target-Pruning: Dominanztest mit tentativerPareto-Menge; teuer zu verwalten: Kombination der Lösungenaus Vorwärts- und Rückwärtssuche an MittelknotenLohnt nicht recht

julian Dibbelt – Algorithmen für RoutenplanungFolie 18 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 57: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Kontraktion

Knoten-Reduktion:Entferne diese Knoten iterativFüge neue Kanten (Abkürzungen) hinzu, um dieAbstände zwischen verbleibenden Knoten zu erhalten

Kanten-Reduktion:Behalte nur relevante ShortcutsLokale Suche während oder nach Knoten-reduktion

julian Dibbelt – Algorithmen für RoutenplanungFolie 19 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 58: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Kontraktion

Knoten-Reduktion:Entferne diese Knoten iterativFüge neue Kanten (Abkürzungen) hinzu, um dieAbstände zwischen verbleibenden Knoten zu erhalten

Kanten-Reduktion:Behalte nur relevante ShortcutsLokale Suche während oder nach Knoten-reduktion

julian Dibbelt – Algorithmen für RoutenplanungFolie 19 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 59: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Anpassung Knoten-Reduktion

Beobachtung:Verfahren unabhängig von MetrikShortcut muss dem (entfernten) Pfad entsprechen

Somit:Anpassung ohne Probleme

julian Dibbelt – Algorithmen für RoutenplanungFolie 20 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 60: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Anpassung Kanten-Reduktion

Unikriteriell:Lösche Kante (u, v), wenn (u, v) nicht Teil des kürzesten Wegesvon u nach v ist, also len(u, v) < d(u, v)Lokale Dijkstra-Suche von u

Multikriteriell:

Lösche Kante (u, v), wenn (u, v) nicht Teil eines Pareto-Wegesvon u nach v istLokale multi-kriterielle SucheKann zu (Pareto-optimalen) Multikanten führenProblem: “Explosion” der Anzahl der Routen

julian Dibbelt – Algorithmen für RoutenplanungFolie 21 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 61: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Anpassung Kanten-Reduktion

Unikriteriell:Lösche Kante (u, v), wenn (u, v) nicht Teil des kürzesten Wegesvon u nach v ist, also len(u, v) < d(u, v)Lokale Dijkstra-Suche von u

Multikriteriell:Lösche Kante (u, v), wenn (u, v) nicht Teil eines Pareto-Wegesvon u nach v istLokale multi-kriterielle SucheKann zu (Pareto-optimalen) Multikanten führenProblem: “Explosion” der Anzahl der Routen

julian Dibbelt – Algorithmen für RoutenplanungFolie 21 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 62: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Arc-Flags

Idee:Partitioniere den Graph in k ZellenHänge ein Label mit k Bits an jede KanteZeigt ob e wichtig für die Zielzelle istModifizierter Dijkstra überspringt unwichtigeKanten

Beobachtung:Partition wird auf ungewichtetem GrahendurchgeführtFlaggen müssen allerdings aktualisiert werden

julian Dibbelt – Algorithmen für RoutenplanungFolie 22 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 63: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Anpassung

Idee:Ändere Intuition einer gesetzten FlaggeKonzept bleibt gleich: Eine Flagge pro Kante und RegionSetze Flagge

Multikriteriell: wenn Kante für einen Pareto-Pfad “wichtig” ist

Anpassung:Für alle Randknoten b undalle Knoten u:BerechnePareto-Abstände D(u,b)Setze Flagge wenn gilt (u, v)zugehörige Kante eines Pareto-Pfades

julian Dibbelt – Algorithmen für RoutenplanungFolie 23 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 64: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Anpassung

Idee:Ändere Intuition einer gesetzten FlaggeKonzept bleibt gleich: Eine Flagge pro Kante und RegionSetze Flagge

Multikriteriell: wenn Kante für einen Pareto-Pfad “wichtig” ist

Anpassung:Für alle Randknoten b undalle Knoten u:BerechnePareto-Abstände D(u,b)Setze Flagge wenn gilt (u, v)zugehörige Kante eines Pareto-Pfades

u

x

v

bw

julian Dibbelt – Algorithmen für RoutenplanungFolie 23 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 65: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Anpassung

Idee:Ändere Intuition einer gesetzten FlaggeKonzept bleibt gleich: Eine Flagge pro Kante und RegionSetze Flagge

Multikriteriell: wenn Kante für einen Pareto-Pfad “wichtig” ist

Anpassung:Für alle Randknoten b undalle Knoten u:BerechnePareto-Abstände D(u,b)Setze Flagge wenn gilt (u, v)zugehörige Kante eines Pareto-Pfades

u

x

v

bw

julian Dibbelt – Algorithmen für RoutenplanungFolie 23 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 66: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Anpassung

Idee:Ändere Intuition einer gesetzten FlaggeKonzept bleibt gleich: Eine Flagge pro Kante und RegionSetze Flagge

Multikriteriell: wenn Kante für einen Pareto-Pfad “wichtig” ist

Anpassung:Für alle Randknoten b undalle Knoten u:BerechnePareto-Abstände D(u,b)Setze Flagge wenn gilt (u, v)zugehörige Kante eines Pareto-Pfades

u

x

v

bw

julian Dibbelt – Algorithmen für RoutenplanungFolie 23 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 67: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Anpassung

Idee:Ändere Intuition einer gesetzten FlaggeKonzept bleibt gleich: Eine Flagge pro Kante und RegionSetze Flagge

Multikriteriell: wenn Kante für einen Pareto-Pfad “wichtig” ist

Anpassung:Für alle Randknoten b undalle Knoten u:BerechnePareto-Abstände D(u,b)Setze Flagge wenn gilt (u, v)zugehörige Kante eines Pareto-Pfades

u

x

v

bw

julian Dibbelt – Algorithmen für RoutenplanungFolie 23 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 68: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Table-Lookups

Idee:Speichere DistanztabellenNur für “wichtige” Teile des GraphenSuchen laufen nur bis zur TabelleHarmoniert gut mir hierarchischen Techniken

s t

distances between access node

access node

transit nodes

julian Dibbelt – Algorithmen für RoutenplanungFolie 24 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 69: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Anpassung

Beobachtung:Distanz-Tabelle muss Pareto-Abstände abspeichernMassiver Anstieg der Größe der TabellenPfadstruktur nicht mehr so gutmütigDeutlich mehr Access-Nodes?

Also:Speicherverbrauch deutlich zu groß?

julian Dibbelt – Algorithmen für RoutenplanungFolie 25 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 70: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Diskussion Basismodule

Basismodule:? Bidirektionale Suche+ Landmarken / A*+ Kontraktion+ arc-flags? Table Look-ups

julian Dibbelt – Algorithmen für RoutenplanungFolie 26 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 71: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Experimente

Pareto-SHARC (nur als Beispiel)

Luxemburg KarlsruhePREPRO QUERY PREPRO QUERY

time target #del. time spd time target #del. time spdmetrics [h:m] labels mins [ms] up [h:m] labels mins [ms] upfast car (fc) < 0:01 1.0 138 0.03 114 < 0:01 1.0 206 0.04 188slow truck (st) < 0:01 1.0 142 0.03 111 < 0:01 1.0 212 0.04 178costs < 0:01 1.0 151 0.03 96 < 0:01 1.0 244 0.05 129distances < 0:01 1.0 158 0.03 87 < 0:01 1.0 261 0.06 119unit < 0:01 1.0 149 0.03 96 < 0:01 1.0 238 0.05 147fc + st 0:01 2.0 285 0.09 100 0:01 1.9 797 0.26 108fc + costs 0:04 29.6 4 149 6.49 263 1:30 52.7 15 912 80.88 184fc + dist. 0:14 49.9 8 348 20.21 78 3:58 99.4 31 279 202.15 153fc + unit 0:06 25.7 4 923 5.13 112 0:17 27.0 11 319 16.04 200costs + dist. 0:02 29.6 3 947 4.87 119 1:11 67.2 19 775 67.75 160

julian Dibbelt – Algorithmen für RoutenplanungFolie 27 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 72: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Zusammenfassung

Berechnung der (exponentiell großen) Pareto-Menge nichteffizient möglichAuch mit Beschleunigungstechniken daher exponentielle LaufzeitLaufzeit in der Praxis stark abhängig von

Anzahl der KriterienKorrelation der Metriken

Praktikable Laufzeit somit oft nur mit Heuristiken möglichRelaxierung der DominanzAusdünnen von Pareto-Mengen während der QueryMehr dazu später...

Nur konvexe Hülle (⇒ linear Kombination, Parametric ShortestPath Problem)

julian Dibbelt – Algorithmen für RoutenplanungFolie 28 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 73: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Anfrageszenarien

Punkt-zu-Punktzwei Punkte→ kürzester Wegwird für Routenplanung benutztBeschleunigungstechnikenHubLabels 10Mx schneller

One-to-Allein Knoten→ Distanzen zuallen Knotenwird für Vorberechnung benutztPHAST 500x schneller (aufGPU)nutzt Hardware aus

One-to-Manyein (variierender Knoten) undeine (feste) Menge→ Distanzzu allen Knoten in der Mengewichtig für POI

Many-to-Manyzwei Mengen→ Distanztabellewichtig für Vehicle Routing

julian Dibbelt – Algorithmen für RoutenplanungFolie 29 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 74: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Anfrageszenarien

Punkt-zu-Punktzwei Punkte→ kürzester Wegwird für Routenplanung benutztBeschleunigungstechnikenHubLabels 10Mx schneller

One-to-Allein Knoten→ Distanzen zuallen Knotenwird für Vorberechnung benutztPHAST 500x schneller (aufGPU)nutzt Hardware aus

One-to-Manyein (variierender Knoten) undeine (feste) Menge→ Distanzzu allen Knoten in der Mengewichtig für POI

Many-to-Manyzwei Mengen→ Distanztabellewichtig für Vehicle Routing

julian Dibbelt – Algorithmen für RoutenplanungFolie 29 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 75: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Anfrageszenarien

Punkt-zu-Punktzwei Punkte→ kürzester Wegwird für Routenplanung benutztBeschleunigungstechnikenHubLabels 10Mx schneller

One-to-Allein Knoten→ Distanzen zuallen Knotenwird für Vorberechnung benutztPHAST 500x schneller (aufGPU)nutzt Hardware aus

One-to-Manyein (variierender Knoten) undeine (feste) Menge→ Distanzzu allen Knoten in der Mengewichtig für POI

Many-to-Manyzwei Mengen→ Distanztabellewichtig für Vehicle Routing

julian Dibbelt – Algorithmen für RoutenplanungFolie 29 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 76: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Anfrageszenarien

Punkt-zu-Punktzwei Punkte→ kürzester Wegwird für Routenplanung benutztBeschleunigungstechnikenHubLabels 10Mx schneller

One-to-Allein Knoten→ Distanzen zuallen Knotenwird für Vorberechnung benutztPHAST 500x schneller (aufGPU)nutzt Hardware aus

One-to-Manyein (variierender Knoten) undeine (feste) Menge→ Distanzzu allen Knoten in der Mengewichtig für POI

Many-to-Manyzwei Mengen→ Distanztabellewichtig für Vehicle Routing

julian Dibbelt – Algorithmen für RoutenplanungFolie 29 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 77: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Das One-to-Many Problem

Problem Definition:Eingabe:Ausgabe:Annahme:

eine Knoten s und eine Menge TDistanz von s zu allen t ∈ Twir fixieren T und variieren s

offensichtliche Lösungen:

Dijkstras Algorithmus (mit Stoppkriterium)⇒ Performance stark abhängig von |T | und Verteilung von T

|T | p2p Anfragen (z.B. HL)⇒ Performance stark abhängig von |T |

benutze PHAST (kein Stoppkriterium!)⇒ Overkill (vor allem für kleine T )

julian Dibbelt – Algorithmen für RoutenplanungFolie 30 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 78: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Das One-to-Many Problem

Problem Definition:Eingabe:Ausgabe:Annahme:

eine Knoten s und eine Menge TDistanz von s zu allen t ∈ Twir fixieren T und variieren s

offensichtliche Lösungen:Dijkstras Algorithmus (mit Stoppkriterium)⇒ Performance stark abhängig von |T | und Verteilung von T

|T | p2p Anfragen (z.B. HL)⇒ Performance stark abhängig von |T |

benutze PHAST (kein Stoppkriterium!)⇒ Overkill (vor allem für kleine T )

julian Dibbelt – Algorithmen für RoutenplanungFolie 30 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 79: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Das One-to-Many Problem

Problem Definition:Eingabe:Ausgabe:Annahme:

eine Knoten s und eine Menge TDistanz von s zu allen t ∈ Twir fixieren T und variieren s

offensichtliche Lösungen:Dijkstras Algorithmus (mit Stoppkriterium)⇒ Performance stark abhängig von |T | und Verteilung von T

|T | p2p Anfragen (z.B. HL)⇒ Performance stark abhängig von |T |

benutze PHAST (kein Stoppkriterium!)⇒ Overkill (vor allem für kleine T )

julian Dibbelt – Algorithmen für RoutenplanungFolie 30 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 80: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Das One-to-Many Problem

Problem Definition:Eingabe:Ausgabe:Annahme:

eine Knoten s und eine Menge TDistanz von s zu allen t ∈ Twir fixieren T und variieren s

offensichtliche Lösungen:Dijkstras Algorithmus (mit Stoppkriterium)⇒ Performance stark abhängig von |T | und Verteilung von T

|T | p2p Anfragen (z.B. HL)⇒ Performance stark abhängig von |T |

benutze PHAST (kein Stoppkriterium!)⇒ Overkill (vor allem für kleine T )

julian Dibbelt – Algorithmen für RoutenplanungFolie 30 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 81: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Erste Ideen

Vorschläge?

julian Dibbelt – Algorithmen für RoutenplanungFolie 31 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 82: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Ungerichtete Bidir. Techniken

Definition:−→σ (s, t): Suchraum der Vorwärtssuche von s nach t←−σ (s, t) analogeine bidirektionale Suche ist Ziel-unabhängig, gdw.

∀(s, t1, t2) ∈ V 3 : −→σ (s, t1) = −→σ (s, t2) und∀(s1, s2, t) ∈ V 3 :←−σ (s1, t) =←−σ (s2, t)

Beispiele:Bidirektionaler Dijkstraohne Stoppkriterium, lass laufen bis Queues leer sind

julian Dibbelt – Algorithmen für RoutenplanungFolie 32 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 83: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Ungerichtete Bidir. Techniken

Definition:−→σ (s, t): Suchraum der Vorwärtssuche von s nach t←−σ (s, t) analogeine bidirektionale Suche ist Ziel-unabhängig, gdw.

∀(s, t1, t2) ∈ V 3 : −→σ (s, t1) = −→σ (s, t2) und∀(s1, s2, t) ∈ V 3 :←−σ (s1, t) =←−σ (s2, t)

Beispiele:Bidirektionaler Dijkstraohne Stoppkriterium, lass laufen bis Queues leer sind

julian Dibbelt – Algorithmen für RoutenplanungFolie 32 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 84: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Hierarchische Techniken

Beobachtung:suchen nur aufwärtssind nicht zielgerichtet

somit:Bidirektionaler DijkstraReachContraction Hierarchiesohne Stoppkriterium, lass laufen bis Queues leer sindHL

4

1

6

3

7

2

5

21 3

4 4

1

23

5

5

level

ts

julian Dibbelt – Algorithmen für RoutenplanungFolie 33 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 85: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Hierarchische Techniken

Beobachtung:suchen nur aufwärtssind nicht zielgerichtet

somit:Bidirektionaler DijkstraReachContraction Hierarchiesohne Stoppkriterium, lass laufen bis Queues leer sindHL

4

1

6

3

7

2

5

21 3

4 4

1

23

5

5

level

ts

julian Dibbelt – Algorithmen für RoutenplanungFolie 33 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 86: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Vorgehen

Idee:führe |T |Rückwärtssuchen ausspeicher für jedes besuchte u dieAbstände zu allen t ∈ Tverwalte temporäresDistanzarray DT

führe Vorwärtssuche ausaktualisiere Einträge in DT

Problem:Verwalten der Suchräume?

julian Dibbelt – Algorithmen für RoutenplanungFolie 34 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 87: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Schneiden der Suchräume

während Rückwärtssuchen: (Target selection phase)je t ∈ T :starte Suche im Rückwärts-DAG, breche nicht abfür jedes erreichte u:speichere einen Bucket β(u) mit (t ,d(u, t))Alternative Sichtweise: Füge gewichtete Abwärtskanten zu erreichbarenZielknoten ein

während Vorwärtssuche: (Query phase)breche nicht abfür jedes erreichte u:

scanne Bucket β(u)aktualisiere Distanzarray DT

julian Dibbelt – Algorithmen für RoutenplanungFolie 35 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 88: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

RPHASTBeobachtung PHAST:

Sweep über den Graphen istder Flaschenhals

Idee:extrahiere relevanten Teil des Graphen (Ziel Selektion)

Aufwärtssuche im vollen GraphenSweep auf extrahiertem Graphen

⇒Startknoten kann im ganzem Graphen liegenGrösse des extrahierten Graphen hängt von Verteilung undAnzahl T abkann wie PHAST parallelisiert werdenGPU implementation möglich

julian Dibbelt – Algorithmen für RoutenplanungFolie 36 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 89: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

RPHASTBeobachtung PHAST:

Sweep über den Graphen istder Flaschenhals

Idee:extrahiere relevanten Teil des Graphen (Ziel Selektion)

Aufwärtssuche im vollen GraphenSweep auf extrahiertem Graphen

⇒Startknoten kann im ganzem Graphen liegenGrösse des extrahierten Graphen hängt von Verteilung undAnzahl T abkann wie PHAST parallelisiert werdenGPU implementation möglich

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 36 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 90: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

RPHASTBeobachtung PHAST:

Sweep über den Graphen istder Flaschenhals

Idee:extrahiere relevanten Teil des Graphen (Ziel Selektion)

Aufwärtssuche im vollen GraphenSweep auf extrahiertem Graphen

⇒Startknoten kann im ganzem Graphen liegenGrösse des extrahierten Graphen hängt von Verteilung undAnzahl T abkann wie PHAST parallelisiert werdenGPU implementation möglich

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 36 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 91: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

RPHASTBeobachtung PHAST:

Sweep über den Graphen istder Flaschenhals

Idee:extrahiere relevanten Teil des Graphen (Ziel Selektion)

Aufwärtssuche im vollen GraphenSweep auf extrahiertem Graphen

⇒Startknoten kann im ganzem Graphen liegenGrösse des extrahierten Graphen hängt von Verteilung undAnzahl T abkann wie PHAST parallelisiert werdenGPU implementation möglich

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 36 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 92: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

RPHASTBeobachtung PHAST:

Sweep über den Graphen istder Flaschenhals

Idee:extrahiere relevanten Teil des Graphen (Ziel Selektion)

Aufwärtssuche im vollen GraphenSweep auf extrahiertem Graphen

⇒Startknoten kann im ganzem Graphen liegenGrösse des extrahierten Graphen hängt von Verteilung undAnzahl T abkann wie PHAST parallelisiert werdenGPU implementation möglich

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 36 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 93: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

RPHASTBeobachtung PHAST:

Sweep über den Graphen istder Flaschenhals

Idee:extrahiere relevanten Teil des Graphen (Ziel Selektion)

Aufwärtssuche im vollen GraphenSweep auf extrahiertem Graphen

⇒Startknoten kann im ganzem Graphen liegenGrösse des extrahierten Graphen hängt von Verteilung undAnzahl T abkann wie PHAST parallelisiert werdenGPU implementation möglich

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 36 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 94: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

RPHASTBeobachtung PHAST:

Sweep über den Graphen istder Flaschenhals

Idee:extrahiere relevanten Teil des Graphen (Ziel Selektion)

Aufwärtssuche im vollen GraphenSweep auf extrahiertem Graphen

⇒Startknoten kann im ganzem Graphen liegenGrösse des extrahierten Graphen hängt von Verteilung undAnzahl T abkann wie PHAST parallelisiert werdenGPU implementation möglich

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 36 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 95: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

RPHASTBeobachtung PHAST:

Sweep über den Graphen istder Flaschenhals

Idee:extrahiere relevanten Teil des Graphen (Ziel Selektion)

Aufwärtssuche im vollen GraphenSweep auf extrahiertem Graphen

⇒Startknoten kann im ganzem Graphen liegenGrösse des extrahierten Graphen hängt von Verteilung undAnzahl T abkann wie PHAST parallelisiert werdenGPU implementation möglich

T

julian Dibbelt – Algorithmen für RoutenplanungFolie 36 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 96: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

RPHASTBeobachtung PHAST:

Sweep über den Graphen istder Flaschenhals

Idee:extrahiere relevanten Teil des Graphen (Ziel Selektion)

Aufwärtssuche im vollen GraphenSweep auf extrahiertem Graphen

⇒Startknoten kann im ganzem Graphen liegenGrösse des extrahierten Graphen hängt von Verteilung undAnzahl T abkann wie PHAST parallelisiert werdenGPU implementation möglich

T

julian Dibbelt – Algorithmen für RoutenplanungFolie 36 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 97: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

RPHASTBeobachtung PHAST:

Sweep über den Graphen istder Flaschenhals

Idee:extrahiere relevanten Teil des Graphen (Ziel Selektion)

Aufwärtssuche im vollen GraphenSweep auf extrahiertem Graphen

⇒Startknoten kann im ganzem Graphen liegenGrösse des extrahierten Graphen hängt von Verteilung undAnzahl T abkann wie PHAST parallelisiert werdenGPU implementation möglich

T

julian Dibbelt – Algorithmen für RoutenplanungFolie 36 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 98: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

RPHASTBeobachtung PHAST:

Sweep über den Graphen istder Flaschenhals

Idee:extrahiere relevanten Teil des Graphen (Ziel Selektion)

Aufwärtssuche im vollen GraphenSweep auf extrahiertem Graphen

⇒Startknoten kann im ganzem Graphen liegenGrösse des extrahierten Graphen hängt von Verteilung undAnzahl T abkann wie PHAST parallelisiert werdenGPU implementation möglich

T

julian Dibbelt – Algorithmen für RoutenplanungFolie 36 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 99: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

RPHASTBeobachtung PHAST:

Sweep über den Graphen istder Flaschenhals

Idee:extrahiere relevanten Teil des Graphen (Ziel Selektion)Aufwärtssuche im vollen Graphen

Sweep auf extrahiertem Graphen

⇒Startknoten kann im ganzem Graphen liegenGrösse des extrahierten Graphen hängt von Verteilung undAnzahl T abkann wie PHAST parallelisiert werdenGPU implementation möglich

sT

julian Dibbelt – Algorithmen für RoutenplanungFolie 36 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 100: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

RPHASTBeobachtung PHAST:

Sweep über den Graphen istder Flaschenhals

Idee:extrahiere relevanten Teil des Graphen (Ziel Selektion)Aufwärtssuche im vollen Graphen

Sweep auf extrahiertem Graphen

⇒Startknoten kann im ganzem Graphen liegenGrösse des extrahierten Graphen hängt von Verteilung undAnzahl T abkann wie PHAST parallelisiert werdenGPU implementation möglich

sT

julian Dibbelt – Algorithmen für RoutenplanungFolie 36 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 101: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

RPHASTBeobachtung PHAST:

Sweep über den Graphen istder Flaschenhals

Idee:extrahiere relevanten Teil des Graphen (Ziel Selektion)Aufwärtssuche im vollen GraphenSweep auf extrahiertem Graphen

⇒Startknoten kann im ganzem Graphen liegenGrösse des extrahierten Graphen hängt von Verteilung undAnzahl T abkann wie PHAST parallelisiert werdenGPU implementation möglich

sT

julian Dibbelt – Algorithmen für RoutenplanungFolie 36 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 102: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

RPHASTBeobachtung PHAST:

Sweep über den Graphen istder Flaschenhals

Idee:extrahiere relevanten Teil des Graphen (Ziel Selektion)Aufwärtssuche im vollen GraphenSweep auf extrahiertem Graphen

⇒Startknoten kann im ganzem Graphen liegenGrösse des extrahierten Graphen hängt von Verteilung undAnzahl T abkann wie PHAST parallelisiert werdenGPU implementation möglich

sT

julian Dibbelt – Algorithmen für RoutenplanungFolie 36 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 103: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

RPHASTBeobachtung PHAST:

Sweep über den Graphen istder Flaschenhals

Idee:extrahiere relevanten Teil des Graphen (Ziel Selektion)Aufwärtssuche im vollen GraphenSweep auf extrahiertem Graphen

⇒Startknoten kann im ganzem Graphen liegenGrösse des extrahierten Graphen hängt von Verteilung undAnzahl T abkann wie PHAST parallelisiert werdenGPU implementation möglich

sT

julian Dibbelt – Algorithmen für RoutenplanungFolie 36 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 104: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

RPHASTBeobachtung PHAST:

Sweep über den Graphen istder Flaschenhals

Idee:extrahiere relevanten Teil des Graphen (Ziel Selektion)Aufwärtssuche im vollen GraphenSweep auf extrahiertem Graphen

⇒Startknoten kann im ganzem Graphen liegenGrösse des extrahierten Graphen hängt von Verteilung undAnzahl T abkann wie PHAST parallelisiert werdenGPU implementation möglich

sT

julian Dibbelt – Algorithmen für RoutenplanungFolie 36 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 105: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Experimente

Problem:Je nach Szenario liegen die Ziele in einer kleinen Region oder sindüber weite Teile des Graphen verteilt.

Setup:starte Dijkstra von zufälligem Knoten cbrich nach B besuchten Knoten ab (Ballsize)wähle zufällige Zielknotenmenge T ⊆ B

Vergleiche Performance von Bucket CH (BCH), Bucket HL (BHL),RPHAST

julian Dibbelt – Algorithmen für RoutenplanungFolie 37 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 106: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Experimente Iinput: Westeuropa (18M Knoten), |T | = 214

Ball Size

Que

ry T

ime

[ms]

214 215 216 217 218 219 220 221 222 223 224

0.1

110

100

1000

0.1

110

100

1000

+x

DijkstraHLPHAST

RPHAST queryRPHAST selectBCH query

BCH selectBHL queryBHL select

●●

+ + + + + + + + + + +

x x x x x x x x x x x

● ● ● ● ● ●● ● ● ●

● ● ● ● ● ●● ●

● ● ●

julian Dibbelt – Algorithmen für RoutenplanungFolie 38 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 107: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Experimente IIinput: Westeuropa (18M Knoten), |T | = 218

Ball Size

Que

ry T

ime

[ms]

218 219 220 221 222 223 224

0.1

110

100

1000

1000

0

0.1

110

100

1000

1000

0

+x

DijkstraHLPHAST

RPHAST queryRPHAST selectionBCH query

BCH selectionBHL queryBHL selection

●●

●●

+ + + + + + +x x x x x x x

● ● ● ●● ●

● ●● ●

● ● ●

julian Dibbelt – Algorithmen für RoutenplanungFolie 39 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 108: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Many-to-Many Kürzeste WegeGegeben:

GraphKnotenmengen S,T ∈ V

Gesucht:Distanzmatrix D

Anwendungen:vehicle routingtraveling salesman

Lösung:|S| one-to-many Anfragenspeicher Distanzen in der TabelleRPHAST kann multiples Setup (SSE) nutzen

S

T

julian Dibbelt – Algorithmen für RoutenplanungFolie 40 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 109: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Many-to-Many Kürzeste WegeGegeben:

GraphKnotenmengen S,T ∈ V

Gesucht:Distanzmatrix D

Anwendungen:vehicle routingtraveling salesman

Lösung:|S| one-to-many Anfragenspeicher Distanzen in der TabelleRPHAST kann multiples Setup (SSE) nutzen

S

T

julian Dibbelt – Algorithmen für RoutenplanungFolie 40 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 110: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Many-to-Many Kürzeste WegeGegeben:

GraphKnotenmengen S,T ∈ V

Gesucht:Distanzmatrix D

Anwendungen:vehicle routingtraveling salesman

Lösung:|S| one-to-many Anfragenspeicher Distanzen in der TabelleRPHAST kann multiples Setup (SSE) nutzen

S

T

julian Dibbelt – Algorithmen für RoutenplanungFolie 40 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 111: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Experimente Iinput: Westeuropa (18M Knoten), |S| = |T | = 210

Ball Size

Que

ry T

ime

[s]

210 211 212 213 214 215 216 217 218 219 220 221 222 223 224

00.

10.

20.

30.

40.

50.

60.

70.

8

00.

10.

20.

30.

40.

50.

60.

70.

8

+x

HLBCHBHLRPHASTSSE RPHAST

● ●●

●● ● ● ●

●●

●● ●

+ + + + + + + + ++

++ + + +

x x x x x x x x x x x x x xx

Beobachtung: alle Techniken unter einer Sekunde

julian Dibbelt – Algorithmen für RoutenplanungFolie 41 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 112: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Experimente IIinput: Westeuropa (18M Knoten), |S| = |T | = 212

Ball Size

Que

ry T

ime

[s]

212 213 214 215 216 217 218 219 220 221 222 223 224

01

23

45

6

01

23

45

6

+x

HLBCHBHLRPHASTSSE RPHAST

●●

●●

●●

● ●

+ + + +

++ + + +

++ +

+

x x x x x x x xx

xx x

x

Beobachtung: SSE PHAST am schnellsten

julian Dibbelt – Algorithmen für RoutenplanungFolie 42 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 113: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Experimente IIIinput: Westeuropa (18M Knoten), |S| = |T | = 214

Ball Size

Que

ry T

ime

[s]

214 215 216 217 218 219 220 221 222 223 224

020

4060

8010

0

020

4060

8010

0

+x

HLBCHBHLRPHASTSSE RPHAST

●●

●●

●●

+ ++

++

++

+ + ++

x x x x x xx x

x xx

Beobachtung: SSE PHAST am schnellsten

julian Dibbelt – Algorithmen für RoutenplanungFolie 43 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 114: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nächster POI

Szenario:Zielknoten sind POIs (z.B. Paketshops)finde k nächste POIs von einem Startknoten s

Lösung:wie one-to-manyordne die buckets pro Knoten auchnach aufsteigender Distanzin jedem Bucket müssen nur diek nächsten POIs durchsucht werdenLaufzeit für POI Query nichtabhängig von Anzahl POIs im SystemLaufzeit: Suchraum · k

julian Dibbelt – Algorithmen für RoutenplanungFolie 44 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 115: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nächster POI

Szenario:Zielknoten sind POIs (z.B. Paketshops)finde k nächste POIs von einem Startknoten s

Lösung:wie one-to-manyordne die buckets pro Knoten auchnach aufsteigender Distanzin jedem Bucket müssen nur diek nächsten POIs durchsucht werdenLaufzeit für POI Query nichtabhängig von Anzahl POIs im SystemLaufzeit: Suchraum · k

p1

p2

p3

p4

p5

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 44 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 116: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nächster POI

Szenario:Zielknoten sind POIs (z.B. Paketshops)finde k nächste POIs von einem Startknoten s

Lösung:wie one-to-manyordne die buckets pro Knoten auchnach aufsteigender Distanzin jedem Bucket müssen nur diek nächsten POIs durchsucht werdenLaufzeit für POI Query nichtabhängig von Anzahl POIs im SystemLaufzeit: Suchraum · k

p1

p2

p3

p4

p5

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 44 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 117: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nächster POI

Szenario:Zielknoten sind POIs (z.B. Paketshops)finde k nächste POIs von einem Startknoten s

Lösung:wie one-to-manyordne die buckets pro Knoten auchnach aufsteigender Distanzin jedem Bucket müssen nur diek nächsten POIs durchsucht werdenLaufzeit für POI Query nichtabhängig von Anzahl POIs im SystemLaufzeit: Suchraum · k

p1

p2

p3

p4

p5

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 44 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 118: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nächster POI

Szenario:Zielknoten sind POIs (z.B. Paketshops)finde k nächste POIs von einem Startknoten s

Lösung:wie one-to-manyordne die buckets pro Knoten auchnach aufsteigender Distanzin jedem Bucket müssen nur diek nächsten POIs durchsucht werdenLaufzeit für POI Query nichtabhängig von Anzahl POIs im SystemLaufzeit: Suchraum · k

p1

p2

p3

p4

p5

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 44 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 119: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nächster POI

Szenario:Zielknoten sind POIs (z.B. Paketshops)finde k nächste POIs von einem Startknoten s

Lösung:wie one-to-manyordne die buckets pro Knoten auchnach aufsteigender Distanzin jedem Bucket müssen nur diek nächsten POIs durchsucht werdenLaufzeit für POI Query nichtabhängig von Anzahl POIs im SystemLaufzeit: Suchraum · k

p1

p2

p3

p4

p5

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 44 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 120: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nächster POI

Szenario:Zielknoten sind POIs (z.B. Paketshops)finde k nächste POIs von einem Startknoten s

Lösung:wie one-to-manyordne die buckets pro Knoten auchnach aufsteigender Distanzin jedem Bucket müssen nur diek nächsten POIs durchsucht werdenLaufzeit für POI Query nichtabhängig von Anzahl POIs im SystemLaufzeit: Suchraum · k

p1

p2

p3

p4

p5

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 44 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 121: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nächster POI

Szenario:Zielknoten sind POIs (z.B. Paketshops)finde k nächste POIs von einem Startknoten s

Lösung:wie one-to-manyordne die buckets pro Knoten auchnach aufsteigender Distanzin jedem Bucket müssen nur diek nächsten POIs durchsucht werdenLaufzeit für POI Query nichtabhängig von Anzahl POIs im SystemLaufzeit: Suchraum · k

p1

p2

p3

p4

p5

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 44 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 122: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nächster POI

Szenario:Zielknoten sind POIs (z.B. Paketshops)finde k nächste POIs von einem Startknoten s

Lösung:wie one-to-manyordne die buckets pro Knoten auchnach aufsteigender Distanzin jedem Bucket müssen nur diek nächsten POIs durchsucht werdenLaufzeit für POI Query nichtabhängig von Anzahl POIs im SystemLaufzeit: Suchraum · k

p1

p2

p3

p4

p5

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 44 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 123: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nächster POI

Szenario:Zielknoten sind POIs (z.B. Paketshops)finde k nächste POIs von einem Startknoten s

Lösung:wie one-to-manyordne die buckets pro Knoten auchnach aufsteigender Distanzin jedem Bucket müssen nur diek nächsten POIs durchsucht werdenLaufzeit für POI Query nichtabhängig von Anzahl POIs im SystemLaufzeit: Suchraum · k

p1

p2

p3

p4

p5

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 44 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 124: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Nächster POI

Szenario:Zielknoten sind POIs (z.B. Paketshops)finde k nächste POIs von einem Startknoten s

Lösung:wie one-to-manyordne die buckets pro Knoten auchnach aufsteigender Distanzin jedem Bucket müssen nur diek nächsten POIs durchsucht werdenLaufzeit für POI Query nichtabhängig von Anzahl POIs im SystemLaufzeit: Suchraum · k

p2

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 44 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 125: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Bester Via Knoten

Szenario:finde k best Via Knoten POIs von einem Startknoten s zu einemZielknoten tminimiere dist(s,p) + dist(p, t) über alle POIs p

Lösung:Vorwärts- und Rückwartssuche von jedem POIspeicher Kreuzprodukt der beidenSuchräume mit Distanz durch den POISuch von s und t :evaluiere jedes PaarLaufzeit: Suchraum2 · k

p1

p2

p3

st

julian Dibbelt – Algorithmen für RoutenplanungFolie 45 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 126: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Bester Via Knoten

Szenario:finde k best Via Knoten POIs von einem Startknoten s zu einemZielknoten tminimiere dist(s,p) + dist(p, t) über alle POIs p

Lösung:Vorwärts- und Rückwartssuche von jedem POIspeicher Kreuzprodukt der beidenSuchräume mit Distanz durch den POISuch von s und t :evaluiere jedes PaarLaufzeit: Suchraum2 · k

p1

p2

p3

st

julian Dibbelt – Algorithmen für RoutenplanungFolie 45 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 127: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Bester Via Knoten

Szenario:finde k best Via Knoten POIs von einem Startknoten s zu einemZielknoten tminimiere dist(s,p) + dist(p, t) über alle POIs p

Lösung:Vorwärts- und Rückwartssuche von jedem POIspeicher Kreuzprodukt der beidenSuchräume mit Distanz durch den POISuch von s und t :evaluiere jedes PaarLaufzeit: Suchraum2 · k p1

p2

p3

julian Dibbelt – Algorithmen für RoutenplanungFolie 45 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 128: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Bester Via Knoten

Szenario:finde k best Via Knoten POIs von einem Startknoten s zu einemZielknoten tminimiere dist(s,p) + dist(p, t) über alle POIs p

Lösung:Vorwärts- und Rückwartssuche von jedem POIspeicher Kreuzprodukt der beidenSuchräume mit Distanz durch den POISuch von s und t :evaluiere jedes PaarLaufzeit: Suchraum2 · k p1

p2

p3

julian Dibbelt – Algorithmen für RoutenplanungFolie 45 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 129: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Bester Via Knoten

Szenario:finde k best Via Knoten POIs von einem Startknoten s zu einemZielknoten tminimiere dist(s,p) + dist(p, t) über alle POIs p

Lösung:Vorwärts- und Rückwartssuche von jedem POIspeicher Kreuzprodukt der beidenSuchräume mit Distanz durch den POISuch von s und t :evaluiere jedes PaarLaufzeit: Suchraum2 · k p1

p2

p3

st

julian Dibbelt – Algorithmen für RoutenplanungFolie 45 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 130: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Bester Via Knoten

Szenario:finde k best Via Knoten POIs von einem Startknoten s zu einemZielknoten tminimiere dist(s,p) + dist(p, t) über alle POIs p

Lösung:Vorwärts- und Rückwartssuche von jedem POIspeicher Kreuzprodukt der beidenSuchräume mit Distanz durch den POISuch von s und t :evaluiere jedes PaarLaufzeit: Suchraum2 · k p1

p2

p3

st

julian Dibbelt – Algorithmen für RoutenplanungFolie 45 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 131: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Bester Via Knoten

Szenario:finde k best Via Knoten POIs von einem Startknoten s zu einemZielknoten tminimiere dist(s,p) + dist(p, t) über alle POIs p

Lösung:Vorwärts- und Rückwartssuche von jedem POIspeicher Kreuzprodukt der beidenSuchräume mit Distanz durch den POISuch von s und t :evaluiere jedes PaarLaufzeit: Suchraum2 · k p1

p2

p3

st

julian Dibbelt – Algorithmen für RoutenplanungFolie 45 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 132: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Bester Via Knoten

Szenario:finde k best Via Knoten POIs von einem Startknoten s zu einemZielknoten tminimiere dist(s,p) + dist(p, t) über alle POIs p

Lösung:Vorwärts- und Rückwartssuche von jedem POIspeicher Kreuzprodukt der beidenSuchräume mit Distanz durch den POISuch von s und t :evaluiere jedes PaarLaufzeit: Suchraum2 · k p1

p2

p3

st

julian Dibbelt – Algorithmen für RoutenplanungFolie 45 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 133: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Bester Via Knoten

Szenario:finde k best Via Knoten POIs von einem Startknoten s zu einemZielknoten tminimiere dist(s,p) + dist(p, t) über alle POIs p

Lösung:Vorwärts- und Rückwartssuche von jedem POIspeicher Kreuzprodukt der beidenSuchräume mit Distanz durch den POISuch von s und t :evaluiere jedes PaarLaufzeit: Suchraum2 · k p1

p2

p3

st

julian Dibbelt – Algorithmen für RoutenplanungFolie 45 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 134: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Bester Via Knoten

Szenario:finde k best Via Knoten POIs von einem Startknoten s zu einemZielknoten tminimiere dist(s,p) + dist(p, t) über alle POIs p

Lösung:Vorwärts- und Rückwartssuche von jedem POIspeicher Kreuzprodukt der beidenSuchräume mit Distanz durch den POISuch von s und t :evaluiere jedes PaarLaufzeit: Suchraum2 · k p1

p2

p3

st

julian Dibbelt – Algorithmen für RoutenplanungFolie 45 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 135: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Bester Via Knoten

Szenario:finde k best Via Knoten POIs von einem Startknoten s zu einemZielknoten tminimiere dist(s,p) + dist(p, t) über alle POIs p

Lösung:Vorwärts- und Rückwartssuche von jedem POIspeicher Kreuzprodukt der beidenSuchräume mit Distanz durch den POISuch von s und t :evaluiere jedes PaarLaufzeit: Suchraum2 · k p1

p2

p3

st

julian Dibbelt – Algorithmen für RoutenplanungFolie 45 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 136: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Bester Via Knoten

Szenario:finde k best Via Knoten POIs von einem Startknoten s zu einemZielknoten tminimiere dist(s,p) + dist(p, t) über alle POIs p

Lösung:Vorwärts- und Rückwartssuche von jedem POIspeicher Kreuzprodukt der beidenSuchräume mit Distanz durch den POISuch von s und t :evaluiere jedes PaarLaufzeit: Suchraum2 · k p1

p2

p3

st

julian Dibbelt – Algorithmen für RoutenplanungFolie 45 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 137: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Wiederholung: HLDB SQL Query

Tabellen forward und backwardmit Spalten node, hub, dist

Algorithm: SQL_DIST

Input: source s ∈ V , target t ∈ V

1 SELECT2 MIN(forward.dist+backward.dist)3 FROM forward,backward4 WHERE5 forward.node = s AND6 backward.node = t AND7 forward.hub = backward.hub

s

t

julian Dibbelt – Algorithmen für RoutenplanungFolie 46 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 138: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Wiederholung: HLDB SQL Query

Tabellen forward und backwardmit Spalten node, hub, dist

Algorithm: SQL_DIST

Input: source s ∈ V , target t ∈ V

1 SELECT2 MIN(forward.dist+backward.dist)3 FROM forward,backward4 WHERE5 forward.node = s AND6 backward.node = t AND7 forward.hub = backward.hub

s

t

julian Dibbelt – Algorithmen für RoutenplanungFolie 46 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 139: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Wiederholung: HLDB SQL Query

Tabellen forward und backwardmit Spalten node, hub, dist

Algorithm: SQL_DIST

Input: source s ∈ V , target t ∈ V

1 SELECT2 MIN(forward.dist+backward.dist)3 FROM forward,backward4 WHERE5 forward.node = s AND6 backward.node = t AND7 forward.hub = backward.hub

s

t

julian Dibbelt – Algorithmen für RoutenplanungFolie 46 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 140: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Wiederholung: HLDB SQL Query

Tabellen forward und backwardmit Spalten node, hub, dist

Algorithm: SQL_DIST

Input: source s ∈ V , target t ∈ V

1 SELECT2 MIN(forward.dist+backward.dist)3 FROM forward,backward4 WHERE5 forward.node = s AND6 backward.node = t AND7 forward.hub = backward.hub

s

t

julian Dibbelt – Algorithmen für RoutenplanungFolie 46 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 141: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Wiederholung: HLDB SQL Query

Tabellen forward und backwardmit Spalten node, hub, dist

Algorithm: SQL_DIST

Input: source s ∈ V , target t ∈ V

1 SELECT2 MIN(forward.dist+backward.dist)3 FROM forward,backward4 WHERE5 forward.node = s AND6 backward.node = t AND7 forward.hub = backward.hub

s

t

julian Dibbelt – Algorithmen für RoutenplanungFolie 46 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 142: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Wiederholung: HLDB SQL Query

Tabellen forward und backwardmit Spalten node, hub, dist

Algorithm: SQL_DIST

Input: source s ∈ V , target t ∈ V

1 SELECT2 MIN(forward.dist+backward.dist)3 FROM forward,backward4 WHERE5 forward.node = s AND6 backward.node = t AND7 forward.hub = backward.hub

s

t

julian Dibbelt – Algorithmen für RoutenplanungFolie 46 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 143: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

POI Anfragen in SQL

Idee:extrahiere die Rückwartslabelaus backwardspeicher sie in neuerTabelle poilab

indiziere nach hub und dist

Query:iteriert über alle ausgehenden Hubsfür jeden Hub werden nur die(k ) nächsten POIs betrachtetAntwort: die k insgesamt nächsten POIs

p1

p2

p3

p4

p5

julian Dibbelt – Algorithmen für RoutenplanungFolie 47 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 144: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

POI Anfragen in SQL

Idee:extrahiere die Rückwartslabelaus backwardspeicher sie in neuerTabelle poilab

indiziere nach hub und dist

Query:iteriert über alle ausgehenden Hubsfür jeden Hub werden nur die(k ) nächsten POIs betrachtetAntwort: die k insgesamt nächsten POIs

p1

p2

p3

p4

p5

julian Dibbelt – Algorithmen für RoutenplanungFolie 47 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 145: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

POI Anfragen in SQL

Idee:extrahiere die Rückwartslabelaus backwardspeicher sie in neuerTabelle poilab

indiziere nach hub und dist

Query:iteriert über alle ausgehenden Hubsfür jeden Hub werden nur die(k ) nächsten POIs betrachtetAntwort: die k insgesamt nächsten POIs

p1

p2

p3

p4

p5

julian Dibbelt – Algorithmen für RoutenplanungFolie 47 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 146: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

POI Anfragen in SQL

Idee:extrahiere die Rückwartslabelaus backwardspeicher sie in neuerTabelle poilab

indiziere nach hub und dist

Query:iteriert über alle ausgehenden Hubsfür jeden Hub werden nur die(k ) nächsten POIs betrachtetAntwort: die k insgesamt nächsten POIs

p1

p2

p3

p4

p5

julian Dibbelt – Algorithmen für RoutenplanungFolie 47 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 147: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

POI Anfragen in SQL

Idee:extrahiere die Rückwartslabelaus backwardspeicher sie in neuerTabelle poilab

indiziere nach hub und dist

Query:iteriert über alle ausgehenden Hubsfür jeden Hub werden nur die(k ) nächsten POIs betrachtetAntwort: die k insgesamt nächsten POIs

p1

p2

p3

p4

p5

julian Dibbelt – Algorithmen für RoutenplanungFolie 47 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 148: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

POI Anfragen in SQL

Idee:extrahiere die Rückwartslabelaus backwardspeicher sie in neuerTabelle poilab

indiziere nach hub und dist

Query:iteriert über alle ausgehenden Hubsfür jeden Hub werden nur die(k ) nächsten POIs betrachtetAntwort: die k insgesamt nächsten POIs

p1

p2

p3

p4

p5

julian Dibbelt – Algorithmen für RoutenplanungFolie 47 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 149: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

POI Anfragen in SQL

Idee:extrahiere die Rückwartslabelaus backwardspeicher sie in neuerTabelle poilab

indiziere nach hub und dist

Query:iteriert über alle ausgehenden Hubsfür jeden Hub werden nur die(k ) nächsten POIs betrachtetAntwort: die k insgesamt nächsten POIs

p1

p2

p3

p4

p5

julian Dibbelt – Algorithmen für RoutenplanungFolie 47 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 150: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

POI Anfragen in SQL

Idee:extrahiere die Rückwartslabelaus backwardspeicher sie in neuerTabelle poilab

indiziere nach hub und dist

Query:iteriert über alle ausgehenden Hubsfür jeden Hub werden nur die(k ) nächsten POIs betrachtetAntwort: die k insgesamt nächsten POIs

p1

p2

p3

p4

p5

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 47 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 151: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

POI Anfragen in SQL

Idee:extrahiere die Rückwartslabelaus backwardspeicher sie in neuerTabelle poilab

indiziere nach hub und dist

Query:iteriert über alle ausgehenden Hubsfür jeden Hub werden nur die(k ) nächsten POIs betrachtetAntwort: die k insgesamt nächsten POIs

p1

p2

p3

p4

p5

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 47 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 152: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

POI Anfragen in SQL

Idee:extrahiere die Rückwartslabelaus backwardspeicher sie in neuerTabelle poilab

indiziere nach hub und dist

Query:iteriert über alle ausgehenden Hubsfür jeden Hub werden nur die(k ) nächsten POIs betrachtetAntwort: die k insgesamt nächsten POIs

p1

p2

p3

p4

p5

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 47 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 153: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

POI Anfragen in SQL

Idee:extrahiere die Rückwartslabelaus backwardspeicher sie in neuerTabelle poilab

indiziere nach hub und dist

Query:iteriert über alle ausgehenden Hubsfür jeden Hub werden nur die(k ) nächsten POIs betrachtetAntwort: die k insgesamt nächsten POIs

p1

p2

p3

p4

p5

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 47 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 154: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

POI Anfragen in SQL

Idee:extrahiere die Rückwartslabelaus backwardspeicher sie in neuerTabelle poilab

indiziere nach hub und dist

Query:iteriert über alle ausgehenden Hubsfür jeden Hub werden nur die(k ) nächsten POIs betrachtetAntwort: die k insgesamt nächsten POIs

p1

p2

p3

p4

p5

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 47 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 155: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

POI Anfragen in SQL

Idee:extrahiere die Rückwartslabelaus backwardspeicher sie in neuerTabelle poilab

indiziere nach hub und dist

Query:iteriert über alle ausgehenden Hubsfür jeden Hub werden nur die(k ) nächsten POIs betrachtetAntwort: die k insgesamt nächsten POIs

p1

p2

p3

p4

p5

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 47 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 156: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

POI Anfragen in SQL

Idee:extrahiere die Rückwartslabelaus backwardspeicher sie in neuerTabelle poilab

indiziere nach hub und dist

Query:iteriert über alle ausgehenden Hubsfür jeden Hub werden nur die(k ) nächsten POIs betrachtetAntwort: die k insgesamt nächsten POIs

p1

p2

p3

p4

p5

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 47 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 157: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

POI Anfragen in SQL

Idee:extrahiere die Rückwartslabelaus backwardspeicher sie in neuerTabelle poilab

indiziere nach hub und dist

Query:iteriert über alle ausgehenden Hubsfür jeden Hub werden nur die(k ) nächsten POIs betrachtetAntwort: die k insgesamt nächsten POIs

p1

p2

p3

p4

p5

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 47 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 158: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

POI Anfragen in SQL

Idee:extrahiere die Rückwartslabelaus backwardspeicher sie in neuerTabelle poilab

indiziere nach hub und dist

Query:iteriert über alle ausgehenden Hubsfür jeden Hub werden nur die(k ) nächsten POIs betrachtetAntwort: die k insgesamt nächsten POIs

p1

p2

p3

p4

p5

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 47 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 159: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

POI Anfragen in SQL

Idee:extrahiere die Rückwartslabelaus backwardspeicher sie in neuerTabelle poilab

indiziere nach hub und dist

Query:iteriert über alle ausgehenden Hubsfür jeden Hub werden nur die(k ) nächsten POIs betrachtetAntwort: die k insgesamt nächsten POIs

p1

p2

p3

p4

p5

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 47 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 160: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

POI Anfragen in SQL

Idee:extrahiere die Rückwartslabelaus backwardspeicher sie in neuerTabelle poilab

indiziere nach hub und dist

Query:iteriert über alle ausgehenden Hubsfür jeden Hub werden nur die(k ) nächsten POIs betrachtetAntwort: die k insgesamt nächsten POIs

p1

p2

p3

p4

p5

s

julian Dibbelt – Algorithmen für RoutenplanungFolie 47 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 161: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Ergebnisse POISetup: verschiedene Anzahl POIs, zufällig gewählt

number of candidates

quer

y tim

e [m

s]

20 22 24 26 28 210 212 214 216 218

0.1

110

100

0.1

110

100

x x x x x x x xx

xx

xx

x

x

x

x

+ + + + + + + + + + + + + + + + + + +

● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ●●

+x

closest16 closestC++ oracle

externes Punkt-zu-Punkt Orakel: skaliert schlecht

SQL Anfragen unabhängig von Anzahl POIsweitere Constraints einfach (“jetzt geöffnet”)

julian Dibbelt – Algorithmen für RoutenplanungFolie 48 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 162: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Ergebnisse POISetup: verschiedene Anzahl POIs, zufällig gewählt

number of candidates

quer

y tim

e [m

s]

20 22 24 26 28 210 212 214 216 218

0.1

110

100

0.1

110

100

x x x x x x x xx

xx

xx

x

x

x

x

+ + + + + + + + + + + + + + + + + + +

● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ●●

+x

closest16 closestC++ oracle

externes Punkt-zu-Punkt Orakel: skaliert schlechtSQL Anfragen unabhängig von Anzahl POIs

weitere Constraints einfach (“jetzt geöffnet”)

julian Dibbelt – Algorithmen für RoutenplanungFolie 48 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 163: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Ergebnisse POISetup: verschiedene Anzahl POIs, zufällig gewählt

number of candidates

quer

y tim

e [m

s]

20 22 24 26 28 210 212 214 216 218

0.1

110

100

0.1

110

100

x x x x x x x xx

xx

xx

x

x

x

x

+ + + + + + + + + + + + + + + + + + +

● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ●●

+x

closest16 closestC++ oracle

externes Punkt-zu-Punkt Orakel: skaliert schlechtSQL Anfragen unabhängig von Anzahl POIsweitere Constraints einfach (“jetzt geöffnet”)

julian Dibbelt – Algorithmen für RoutenplanungFolie 48 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 164: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Zusammenfassung

one-to-many shortest pathsmany-to-manyPOI Anfragenbester Via Knoten AnfragenLocation Services in SQL

julian Dibbelt – Algorithmen für RoutenplanungFolie 49 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 165: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Erweiterte Szenarien

AbbiegekostenDynamische RoutenplanungMobiles Szenario

julian Dibbelt – Algorithmen für RoutenplanungFolie 50 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 166: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Abbiegeverbote/-kosten

bisher:Kreuzungen→ KnotenStrassen→ Kanten

aber:Abbiegen manchmal verbotenLinksabbiegen teurer als rechtsKosten U-Turns hochwurde als einfaches Modellierungsdetail abgetan

julian Dibbelt – Algorithmen für RoutenplanungFolie 51 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 167: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Abbiegeverbote/-kosten

bisher:Kreuzungen→ KnotenStrassen→ Kanten

aber:Abbiegen manchmal verbotenLinksabbiegen teurer als rechtsKosten U-Turns hochwurde als einfaches Modellierungsdetail abgetan

julian Dibbelt – Algorithmen für RoutenplanungFolie 51 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 168: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Abbiegeverbote/-kosten

bisher:Kreuzungen→ KnotenStrassen→ Kanten

aber:Abbiegen manchmal verbotenLinksabbiegen teurer als rechtsKosten U-Turns hochwurde als einfaches Modellierungsdetail abgetan

julian Dibbelt – Algorithmen für RoutenplanungFolie 51 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 169: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Abbiegeverbote/-kosten

bisher:Kreuzungen→ KnotenStrassen→ Kanten

aber:Abbiegen manchmal verbotenLinksabbiegen teurer als rechtsKosten U-Turns hochwurde als einfaches Modellierungsdetail abgetan

julian Dibbelt – Algorithmen für RoutenplanungFolie 51 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 170: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

ModellierungMöglichkeit I:

Vergrössern des Graphen durch Ausmodellierungkantenbasierter Graph da

Strassen→ KnotenTurns→ Kanten

redundante Information

entferne einen Knoten pro Strasse

Möglichkeit II:behalte Kreuzungen als Knotenspeicher AbbiegetabelleAbb. Eingangs- × Ausgangspunkte→ Kosten

Beobachtung: viele Knoten habendie gleiche Abbiegetabellealso speicher jede Tabelle einmal,Knoten speichern Tabellen-ID

julian Dibbelt – Algorithmen für RoutenplanungFolie 52 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 171: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

ModellierungMöglichkeit I:

Vergrössern des Graphen durch Ausmodellierungkantenbasierter Graph da

Strassen→ KnotenTurns→ Kanten

redundante Informationentferne einen Knoten pro Strasse

Möglichkeit II:behalte Kreuzungen als Knotenspeicher AbbiegetabelleAbb. Eingangs- × Ausgangspunkte→ Kosten

Beobachtung: viele Knoten habendie gleiche Abbiegetabellealso speicher jede Tabelle einmal,Knoten speichern Tabellen-ID

julian Dibbelt – Algorithmen für RoutenplanungFolie 52 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 172: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

ModellierungMöglichkeit I:

Vergrössern des Graphen durch Ausmodellierungkantenbasierter Graph da

Strassen→ KnotenTurns→ Kanten

redundante Informationentferne einen Knoten pro Strasse

Möglichkeit II:behalte Kreuzungen als Knotenspeicher AbbiegetabelleAbb. Eingangs- × Ausgangspunkte→ Kosten

Beobachtung: viele Knoten habendie gleiche Abbiegetabellealso speicher jede Tabelle einmal,Knoten speichern Tabellen-ID

julian Dibbelt – Algorithmen für RoutenplanungFolie 52 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 173: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Wdh: Contraction Hierarchies

4

1

6

3

7

2

5

21 3

4 4

1

23

5

5

level

Preprocessing:ordne Knoten nach Wichtigkeitbearbeite in der Reihenfolgefüge Shortcuts hinzuLevelzuordnung (ca. 150 in Strassennetzwerken)

julian Dibbelt – Algorithmen für RoutenplanungFolie 53 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 174: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Wdh: Multi Level DijkstraIdee:

partitioniere GraphenBerechne Distanzen zwischen Randknoten in jeder Zelle

Overlay Graph:RandknotenCliquen in jeder ZelleSchnittkanten

s

t

Suchgraph:Start- und Zielzelle......plus Overlaygraph.(bidirektionaler) Dijkstra

Optimierung: multiple Level

julian Dibbelt – Algorithmen für RoutenplanungFolie 54 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 175: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Kantenbasierter Graph

Dijkstra:funktioniert ohne Anpassungmehr Knoten zu scannenFaktor 3-4 langsamer

CHfunktioniert ohne Anpassungaber grössere Anzahl Knoten/Kanten erhöht Vorberechungszeit

MLDAnzahl Schnittkanten erhöht sichSchnittkanten = Schnittknoten(eventuell Wechsel zu Knotenseparatoren sinnvoll?)

julian Dibbelt – Algorithmen für RoutenplanungFolie 55 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 176: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Kantenbasierter Graph

Dijkstra:funktioniert ohne Anpassungmehr Knoten zu scannenFaktor 3-4 langsamer

CHfunktioniert ohne Anpassungaber grössere Anzahl Knoten/Kanten erhöht Vorberechungszeit

MLDAnzahl Schnittkanten erhöht sichSchnittkanten = Schnittknoten(eventuell Wechsel zu Knotenseparatoren sinnvoll?)

julian Dibbelt – Algorithmen für RoutenplanungFolie 55 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 177: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Kantenbasierter Graph

Dijkstra:funktioniert ohne Anpassungmehr Knoten zu scannenFaktor 3-4 langsamer

CHfunktioniert ohne Anpassungaber grössere Anzahl Knoten/Kanten erhöht Vorberechungszeit

MLDAnzahl Schnittkanten erhöht sichSchnittkanten = Schnittknoten(eventuell Wechsel zu Knotenseparatoren sinnvoll?)

julian Dibbelt – Algorithmen für RoutenplanungFolie 55 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 178: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Kompaktes Modell

Dijkstra:Turns müssen in den Suchalgorithmus integriert werdenKreuzungen können mehrfach gescannt werdenlabel-correcting bzgl. Kreuzung, label-setting bzgl.Eingangs-/Ausgangspunkte

jede Kante wird höchstens einmal gescanntSuchraum gleich zu kantenbasiertem Modellsimuliert Dijkstra auf kantenbasiertem Graphen

Vorteil: weniger Speicher für den Graphen

julian Dibbelt – Algorithmen für RoutenplanungFolie 56 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 179: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Kompaktes Modell

CH

Zeugensuche wird komplizierter

für jedes Paar eingehender und ausgehender Kanten muss eineZeugensuche durchgeführt werdenes können Self-Loops entstehen

julian Dibbelt – Algorithmen für RoutenplanungFolie 57 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 180: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Kompaktes Modell

CHZeugensuche wird komplizierter

für jedes Paar eingehender und ausgehender Kanten muss eineZeugensuche durchgeführt werdenes können Self-Loops entstehen

julian Dibbelt – Algorithmen für RoutenplanungFolie 57 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 181: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Kompaktes Modell

CHZeugensuche wird komplizierter

für jedes Paar eingehender und ausgehender Kanten muss eineZeugensuche durchgeführt werden

es können Self-Loops entstehen

julian Dibbelt – Algorithmen für RoutenplanungFolie 57 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 182: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Kompaktes Modell

CHZeugensuche wird komplizierter

für jedes Paar eingehender und ausgehender Kanten muss eineZeugensuche durchgeführt werdenes können Self-Loops entstehen

julian Dibbelt – Algorithmen für RoutenplanungFolie 57 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 183: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Kompaktes Modell

CHZeugensuche wird komplizierter

für jedes Paar eingehender und ausgehender Kanten muss eineZeugensuche durchgeführt werdenes können Self-Loops entstehen

julian Dibbelt – Algorithmen für RoutenplanungFolie 57 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 184: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Kompaktes Modell

CHZeugensuche wird komplizierter

für jedes Paar eingehender und ausgehender Kanten muss eineZeugensuche durchgeführt werdenes können Self-Loops entstehen

julian Dibbelt – Algorithmen für RoutenplanungFolie 57 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 185: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Kompaktes Modell

CHZeugensuche wird komplizierter

für jedes Paar eingehender und ausgehender Kanten muss eineZeugensuche durchgeführt werdenes können Self-Loops entstehen

julian Dibbelt – Algorithmen für RoutenplanungFolie 57 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 186: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Kompaktes Modell

MLD

Schnittkanten bleiben erhaltenSchnittkante→ 2 Knoten auf OverlayTurns müssen nur auf unterstem Level beachtet werdenauf Overlaygraphen: normaler Dijkstra

⇒ einfache Anpassung, aber zusätzliche Fallunterscheidung in derQuery

julian Dibbelt – Algorithmen für RoutenplanungFolie 58 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 187: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

Kompaktes Modell

MLDSchnittkanten bleiben erhaltenSchnittkante→ 2 Knoten auf OverlayTurns müssen nur auf unterstem Level beachtet werdenauf Overlaygraphen: normaler Dijkstra

⇒ einfache Anpassung, aber zusätzliche Fallunterscheidung in derQuery

julian Dibbelt – Algorithmen für RoutenplanungFolie 58 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 188: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

ErgebnisseCustomization Queries

Algorithm time [s] [MB] #scans time [ms]1

s

MLD-4 [28 : 212 : 216 : 220] 5.8 61.7 3556 1.18CH expanded 3407.4 880.6 550 0.18CH compact 849.0 132.5 905 0.19

100

s MLD-4 [28 : 212 : 216 : 220] 7.5 61.7 3813 1.28CH expanded 5799.2 931.1 597 0.21CH compact 23774.8 304.0 5585 2.11

Beobachtung:(Metrikabhängige) CH Prioritätsfunktionen problematisch beiTurnsFeingranulare Priorität auf Turnebene wichtig (vgl CH expandedvs compact)MLD robust

julian Dibbelt – Algorithmen für RoutenplanungFolie 59 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik

Page 189: KIT - ITI Algorithmik I - Startseite - Algorithmen für …...INSTITUT FÜR THEORETISCHE INFORMATIK ROFALGORITHMIK P . DR.DOROTHEA WAGNER Algorithmen für Routenplanung 10. Sitzung,

EndeLiteratur:

Sebastian Knopp, Peter Sanders, Dominik Schultes, FrankSchulz, and Dorothea Wagner:Computing Many-to-Many Shortest Paths Using HighwayHierarchiesIn: Proceedings of the 9th Workshop on Algorithm Engineeringand Experiments (ALENEX’07), pages 36-45, 2007.Daniel Delling, Andrew V. Goldberg, Renato F. WerneckFaster Batched Shortest Paths in Road NetworksIn: Proceedings of the 11th Workshop on AlgorithmicApproaches for Transportation Modeling, Optimization, andSystems (ATMOS’11), pages 52-63, 2011Ittai Abraham, Daniel Delling, Andrew V. Goldberg, Renato F.WerneckHLDB: Location-Based Services in Databasesbald verfügbar

julian Dibbelt – Algorithmen für RoutenplanungFolie 60 – 27. Mai 2015

Institut für Theoretische InformatikLehrstuhl Algorithmik