Algorithmen für Routenplanung 10. Vorlesung, Sommersemester 2016 Ben Strasser 25. Mai 2016

Ähnliche Dokumente
Algorithmen für Routenplanung 9. Sitzung, Sommersemester 2015 Moritz Kobitzsch 20. Mai 2015

Algorithmen für Routenplanung 12. Sitzung, Sommersemester 2014 Prof. Christos Zaroliagis 26. Mai 2014

Algorithmen für Routenplanung 11. Sitzung, Sommersemester 2013 Julian Dibbelt 10. Juni 2013

Algorithmen für Routenplanung 6. Vorlesung, Sommersemester 2010 Daniel Delling 17. Mai 2010

Algorithmen für Routenplanung 2. Sitzung, Sommersemester 2010 Thomas Pajor 26. April 2010

Fortgeschrittene Routenplanung. Transportnetzen. Advanced Route Planning in Transportation Networks

Algorithmen für Routenplanung 8. Sitzung, Sommersemester 2012 Thomas Pajor 21. Mai 2012

Algorithmen für Routenplanung 7. Vorlesung, Sommersemester 2012 Daniel Delling 16. Mai 2012

Algorithmen für Routenplanung 7. Sitzung, Sommersemester 2010 Thomas Pajor 28. Mai 2010

Algorithmen für Routenplanung 18. Sitzung, Sommersemester 2015 Moritz Baum 13. Juli 2015

Praktikum Routenplanung Vorbesprechung, Wintersemester 2013/2014 Moritz Baum, Julian Dibbelt, Ben Strasser 21. Oktober 2013

Algorithmen für Routenplanung 12. Sitzung, Sommersemester 2011 Reinhard Bauer, Thomas Pajor 6. Juni 2011

Algorithmen für Routenplanung 11. Vorlesung, Sommersemester 2012 Daniel Delling 6. Juni 2012

Algorithmen für Routenplanung 13. Vorlesung, Sommersemester 2012 Daniel Delling 13. Juni 2012

Algorithmen für Routenplanung

Personalisierte Routenplanung

Das Problem des minimalen Steiner-Baumes

Untersuchung von Beschleunigungsverfahren für den Dijkstra-Algorithmus im Zusammenhang mit multimodalem Routing

Algorithmen für Routenplanung Vorlesung 11

Algorithmen für Routenplanung 15. Vorlesung, Sommersemester 2012 Daniel Delling 20. Juni 2012

Algorithmen II Vorlesung am

Praktikum Routenplanung Themenvorstellung & Gruppeneinteilung, Wintersemester 2015/2016 Moritz Baum, Ben Strasser, Tobias Zündorf 19.

Route Planning in Road Networks

Algorithmen für Routenplanung 13. Sitzung, Sommersemester 2013 Julian Dibbelt 19. Juni 2013

Connection Scan. Julian Dibbelt, Thomas Pajor, Ben Strasser, Dorothea Wagner

Optimierung. Vorlesung 9

Algorithmische Herausforderungen bei der multimodalen Routenplanung Heureka 14 Prof. Dorothea Wagner 3. April 2014

Algorithmen für Routenplanung 9. Sitzung, Sommersemester 2010 Thomas Pajor 7. Juni 2010

Algorithmen für Routenplanung 12. Sitzung, Sommersemester 2010 Thomas Pajor 28. Juni 2010

Algorithmen II Vorlesung am

Algorithmen für Routenplanung Vorlesung 6

Algorithmen II Vorlesung am

Schnelle und genaue Routenplanung

Algorithmen für Routenplanung 15. Vorlesung, Sommersemester 2017 Tobias Zündorf 5. Juli 2017

Praktikum Routenplanung Vorbesprechung, Wintersemester 2016/2017 Moritz Baum, Valentin Buchhold, Ben Strasser, Tobias Zündorf 19.

Rundreiseproblem und Stabilität von Approximationsalg.

Algorithmen für Routenplanung 19. und letzte Sitzung, Sommersemester 2012 Thomas Pajor 16. Juli 2012

Algorithmen für Routenplanung 8. Sitzung, Sommersemester 2013 Julian Dibbelt 22. Mai 2013

Graphentheorie. Kürzeste Wege. Kürzeste Wege. Kürzeste Wege. Rainer Schrader. 25. Oktober 2007

Überblick. Organisatorisches. Erinnerung: Motivation Domin. Sets. Algorithmen für Ad-hoc- und Sensornetze

Algorithmische Methoden zur Netzwerkanalyse

Viertes Übungsblatt - Musterlösung

Maximale s t-flüsse in Planaren Graphen

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Genauer Hochleistungs-Routenplaner

Theoretische Grundlagen der Informatik

Praktikum Routenplanung Vorbesprechung, Wintersemester 2014/2015 Moritz Baum, Julian Dibbelt, Ben Strasser 22. Oktober 2014

Algorithmen für Routenplanung 2. Vorlesung, Sommersemester 2016 Tobias Zündorf 25. April 2016

Algorithmen für Routenplanung 17. Sitzung, Sommersemester 2013 Julian Dibbelt 8. Juli 2013

Lokalisierung von inneren und äußeren Grenzen in Sensornetzwerken

Zweites Theorie-Übungsblatt - Musterlösung

Seminar Algorithmen für planare Graphen

Informatik II: Algorithmen und Datenstrukturen SS 2013

Algorithmen für Routenplanung 13. Sitzung, Sommersemester 2011 Reinhard Bauer, Thomas Pajor 9. Juni 2011

Praktikum Routenplanung

Theoretische Informatik 1

Sichtbarkeitsgraphen. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie

Vorlesung 1: Graphentheorie. Markus Püschel David Steurer. Algorithmen und Datenstrukturen, Herbstsemester 2018, ETH Zürich

Schnelle und genaue Routenplanung

Informatik II, SS 2014

Sichtbarkeitsgraph. Andreas Gemsa Übung Algorithmische Geometrie

Algorithmen für Routenplanung 13. Vorlesung, Sommersemester 2017 Tobias Zündorf 26. Juni 2017

Algorithmen für Routenplanung 2. Sitzung, Sommersemester 2012 Thomas Pajor 23. April 2012

Stefan Schmid TU Berlin & T-Labs, Berlin, Germany. Reduktionen in der Berechenbarkeitstheorie

Algorithmen für Routenplanung 13. Sitzung, Sommersemester 2014 Prof. Christos Zaroliagis 28. Mai 2014

Praktikum Routenplanung

Algorithmen für Routenplanung 4. Vorlesung, Sommersemester 2018 Tim Zeitz 30. April 2018

Algorithmen für Routenplanung 2. Vorlesung, Sommersemester 2014 Andreas Gemsa 20. April 2014

Effizienter Planaritätstest Vorlesung am

Algorithmen für Routenplanung 19. Vorlesung, Sommersemester 2016 Ben Strasser 6. Juli 2016

Algorithmen & Komplexität

Algorithmen für Routenplanung 1. Vorlesung, Sommersemester 2018 Tim Zeitz 17. April 2018

Schnellste Wege, Teil II Stable Marriages

Algo&Komp. - Wichtige Begriffe Mattia Bergomi Woche 6 7

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Algorithmen für Routenplanung Vorlesung 2

Theoretische Grundlagen der Informatik

Anwendungen der WSPD & Sichtbarkeitsgraphen

Routing in Nahverkehrsnetzen

Vorlesung Datenstrukturen

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 12, Henning Meyerhenke

Theorie-Übungsblatt 3 Lösungsvorschläge

Kombinatorische Optimierung

Algorithmen für Routenplanung 17. Sitzung, Sommersemester 2014 Moritz Baum 7. Juli 2014

Theoretische Informatik 1

Theoretische Grundlagen der Informatik. Vorlesung am 17. Januar INSTITUT FÜR THEORETISCHE INFORMATIK

Das Rundreiseproblem und Stabilität von Approximationsalgorithmen

Algorithmen für Routenplanung

Algorithmen für Routenplanung Vorlesung 12

Algorithmen für Routenplanung Vorlesung 10

12. Der Algorithmus von Dijkstra. Informatik II für Verkehrsingenieure

Adventure-Problem. Vorlesung Automaten und Formale Sprachen Sommersemester Adventure-Problem

ÖV-Routing in GraphHopper. Michael Zilske

Transkript:

Algorithmen für Routenplanung 10. Vorlesung, Sommersemester 2016 Ben Strasser 25. Mai 2016 INSTITUT FÜR THEORETISCHE INFORMATIK ALGORITHMIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

Wiederholung Punkt-zu-Punkt Anfrage: finde die beste Route in einem Transportnetz Idee: Netzwerk als Graph G = (V, E) Kantengewichte sind Reisezeiten kürzester Weg in G entspricht schnellster Verbindung Ergebnisse: schnelle Algorithmen existieren Folie 2 25. Mai 2016

Alternativ-Routen Anfrage: finde gute Alternativen in einem Transportnetz Problem: der kürzeste Weg ist wohl definiert Was aber ist eine gute Alternative? Problem erscheint rein heuristischer Natur Ziele: lieber keine als schlechte Routen zeigen sollte nicht deutlich langsamer als Punkt-zu-Punkt sein Folie 3 25. Mai 2016

Erste Ansätze Berechne top-k kürzeste Wege + Wege sind möglichst kurz - oft erst für hohes k relevant Folie 4 25. Mai 2016

Erste Ansätze Berechne top-k kürzeste Wege + Wege sind möglichst kurz - oft erst für hohes k relevant Folie 4 25. Mai 2016

Erste Ansätze Berechne top-k kürzeste Wege + Wege sind möglichst kurz - oft erst für hohes k relevant Folie 4 25. Mai 2016

Erste Ansätze Optimiere verschiedene Metriken z.b. schnellster und kürzester Weg + bedient verschiedene Vorlieben - verpasst interessante Alternativen Folie 5 25. Mai 2016

Erste Ansätze Optimiere verschiedene Metriken z.b. schnellster und kürzester Weg + bedient verschiedene Vorlieben - verpasst interessante Alternativen Folie 5 25. Mai 2016

Erste Ansätze Disjunkte Pfade + stark unterschiedliche Pfade - verpasst interessante Alternativen Folie 6 25. Mai 2016

Erste Ansätze Disjunkte Pfade + stark unterschiedliche Pfade - verpasst interessante Alternativen Folie 6 25. Mai 2016

Fortgeschrittene Ansätze t Via-Knoten nutze dritten Knoten berechne zusammengesetzten Pfad Problem: Woher kommt dieser Knoten? v Simulierter Stau verlangsame einzelne Segmente künstlich Gefahr vieler kleiner Umleitungen s Und wie? was macht eine gute Alternative aus wie berchnen wir sie schnell s t Folie 7 25. Mai 2016

Intuition Alternativen sollten erfüllen: nicht viel länger als der kürzeste Weg signifikant verschieden Erste Idee: finde einen Pfad, der Länge und Gemeinsamkeit minimiert maximal x% länger teilt maximal y% Ist das genug? Folie 8 25. Mai 2016

Das dritte Kriterium Problem: Routen können seltsam aussehen sogar wenn sie verschieden und kurz sind lokale Umwege Diese Strecke macht doch keinen Sinn. Das kann ich besser! t Idee: kurze Subpfade müssen kürzeste Pfade sein beliebige Paare von Knoten auf dem Pfad sollen kleinen stretch haben keine unnötigen lokalen Umwege s Folie 9 25. Mai 2016

Das dritte Kriterium Problem: Routen können seltsam aussehen sogar wenn sie verschieden und kurz sind lokale Umwege Diese Strecke macht doch keinen Sinn. Das kann ich besser! t Idee: kurze Subpfade müssen kürzeste Pfade sein beliebige Paare von Knoten auf dem Pfad sollen kleinen stretch haben keine unnötigen lokalen Umwege s Folie 9 25. Mai 2016

Das dritte Kriterium Problem: Routen können seltsam aussehen sogar wenn sie verschieden und kurz sind lokale Umwege Diese Strecke macht doch keinen Sinn. Das kann ich besser! t Idee: kurze Subpfade müssen kürzeste Pfade sein beliebige Paare von Knoten auf dem Pfad sollen kleinen stretch haben keine unnötigen lokalen Umwege s Folie 9 25. Mai 2016

Das dritte Kriterium Problem: Routen können seltsam aussehen sogar wenn sie verschieden und kurz sind lokale Umwege Diese Strecke macht doch keinen Sinn. Das kann ich besser! t Idee: kurze Subpfade müssen kürzeste Pfade sein beliebige Paare von Knoten auf dem Pfad sollen kleinen stretch haben keine unnötigen lokalen Umwege s Folie 9 25. Mai 2016

Das dritte Kriterium Problem: Idee: Routen können seltsam aussehen sogar wenn sie verschieden und kurz sind lokale Umwege Diese Strecke macht doch keinen Sinn. Das kann ich besser! kurze Subpfade müssen kürzeste Pfade sein beliebige Paare von Knoten auf dem Pfad sollen kleinen stretch haben keine unnötigen lokalen Umwege t s Folie 9 25. Mai 2016

Formelle Qualitätseigenschaften Idee Alternativ-Pfade sollen hinreichend verschieden sein. P ist die Kantenmenge des kürzesten st-pfads P ist die Kantenmenge des alternativen st-pfads l(q) ist die Summe über alle Kanten-Längen Eine Alternative ist γ-verschieden wenn l(p P ) γl(p) Folie 10 25. Mai 2016

Formelle Qualitätseigenschaften Idee Alternativ-Pfade sollen kein große Umweg sein. Sei dist(s, t) die Länge des kürzesten st-pfads Sei P der alternative st-pfad und l(p ) seine Länge P hat einen Stretch von höchstens ɛ wenn l(p ) (1 + ɛ) dist(s, t) Kriterium für die Vorlesung vereinfacht, siehe [ADGW13] für Details. Folie 11 25. Mai 2016

Formelle Qualitätseigenschaften Idee Alternativ-Pfade sollen lokal sinnvoll sein. Sei P der alternative Pfad und P xy der Subpfad von x bis y P besteht den T -Test wenn für alle P xy mit l(p xy) T gilt, dass P xy ein kürzester xy-pfad ist P ist α-lokal-optimal wenn er den Test für T = α dist(s, t) besteht Kriterium für die Vorlesung vereinfacht, siehe [ADGW13] für Details. Folie 12 25. Mai 2016

Formelle Qualitätseigenschaften Ziel: Finde Pfad der γ-verschieden ist, einen Stretch ɛ und α-lokal-optimal. Folie 13 25. Mai 2016

Formelle Qualitätseigenschaften Ziel: Finde Pfad der γ-verschieden ist, einen Stretch ɛ und α-lokal-optimal. γ, ɛ, und α sind Tuningparameter des Problems Typische Werte sind: α = 25%, ɛ = 25%, γ = 80% Folie 13 25. Mai 2016

Formelle Qualitätseigenschaften Ziel: Finde Pfad der γ-verschieden ist, einen Stretch ɛ und α-lokal-optimal. γ, ɛ, und α sind Tuningparameter des Problems Typische Werte sind: α = 25%, ɛ = 25%, γ = 80% Bei mehreren Alternativen: Neue Alternative muss γ-verschieden von der Vereinigung aller bisher gefunden Pfade sein. Folie 13 25. Mai 2016

Weiteres Vorgehen Bisher: Wir haben gültige Alternativen formalisiert Nun: Wie finden wir gute Alternativen? Folie 14 25. Mai 2016

Weiteres Vorgehen Bisher: Wir haben gültige Alternativen formalisiert Nun: Wie finden wir gute Alternativen? Vorgehen: Finde Kandidaten-Pfad nach einem heuristischen Verfahren Prüfe ob der Pfad eine gute Alternative ist Findet nicht immer eine Alternative Folie 14 25. Mai 2016

Weiteres Vorgehen Bisher: Wir haben gültige Alternativen formalisiert Nun: Wie finden wir gute Alternativen? Vorgehen: Finde Kandidaten-Pfad nach einem heuristischen Verfahren Prüfe ob der Pfad eine gute Alternative ist Findet nicht immer eine Alternative Problem: Wie effizient testen? Nicht trivial Der Test braucht eine nicht vernachlässigbare Menge von Rechenzeit Details nicht in der Vorlesung Folie 14 25. Mai 2016

Bestimmung von Kandidaten Single via paths: Konkatenation von zwei kürzesten Pfaden: s v und v t Eigenschaften: lineare Anzahl Pfade Einzelner Pfad ist definiert durch via Knoten v (Notation: P v) lokal optimal von s nach v und v nach t Verletzungen nur um v herum Alternative können effizient berechnet werden sobald v bekannt ist v t s Folie 15 25. Mai 2016

Prinzip Bidirektionale Suche Relaxiertes Stop-Kriterium suche bidirektional stoppe sobald Radii größer als (1 + ɛ)l(opt) s t Finde Alternative: für alle v, die von beiden Suchen gescannt worden sind: Teste ob P v den Anforderungen genügt finde besten P v anhand einer Optimierungsfunktion Problem: Anzahl der Kandidaten ist sehr hoch Interaktion mit Beschleunigungstechniken? Folie 16 25. Mai 2016

Prinzip Bidirektionale Suche Relaxiertes Stop-Kriterium suche bidirektional stoppe sobald Radii größer als (1 + ɛ)l(opt) s v t Finde Alternative: für alle v, die von beiden Suchen gescannt worden sind: Teste ob P v den Anforderungen genügt finde besten P v anhand einer Optimierungsfunktion Problem: Anzahl der Kandidaten ist sehr hoch Interaktion mit Beschleunigungstechniken? Folie 16 25. Mai 2016

Alternativen mit CH Idee Lasse Vorwärts- und Rückwärtssuche laufen bis Stretch erreicht ist Entpacke Pfad für jeden Knoten im gemeinsamen Suchraum Teste Pfad Probleme gegenläufige Ziele CH will Suchraum klein haben Alternativrouten brauchen genug Kandidaten Tests und Pfadenpackungen kosten Zeit Lösung Für gute Alternativen muss man vereinzelt auch Kanten folgen die den Suchraum verlassen Je weiter man den Suchraum verlässt, je besser werden die gefunden Pfad, aber je schlechter werden die Laufzeiten Siehe [ADGW13] für Details Folie 17 25. Mai 2016

Alternativen mit Reach Idee Analog zu Dijkstra Lasse Vorwärts- und Rückwärtssuche laufen bis Stretch erreicht ist Teste Pfad Probleme Reach dünnt Suchraum schlechter aus als CH Mehr Kandidaten Bessere Alternativen Aber langsamer Folie 18 25. Mai 2016

Plateau Problem mit Via-Knoten: lokale Optimalität am Via-Knoten verletzt Folie 19 25. Mai 2016

Plateau Problem mit Via-Knoten: lokale Optimalität am Via-Knoten verletzt s Ps,x y P y,x x Py,t t Idee: Suche zwei kürzeste Pfade P s,y und P x,t mit P x,y P s,y und P x,y P x,t P x,y heißt Plateau Alternative besteht T -Test für T l(p x,y ) Langes Plateau gute Alternative Randfall Via-Knoten: x = y Folie 19 25. Mai 2016

Plateau s t Folie 20 25. Mai 2016

Plateau s t Folie 20 25. Mai 2016

Plateau s t Folie 20 25. Mai 2016

Plateau s t Folie 20 25. Mai 2016

Plateau s t Folie 20 25. Mai 2016

Plateaux berechnen v 2 v 1 t benötigt optimale Suchbäume einfach mit Dijkstra CH: komplex, aber möglich (Grundlage: vollständiges Entpacken des Suchraums: [Kob13]) s Folie 21 25. Mai 2016

Plateaux vs Via-Knoten Via-Knoten einfacher und schneller zu berechnen Aber: Mehr Via-Knoten als Plateaux d.h. mehr Zulässigkeitstests mit Via-Knoten Jede Plateau-Alternative ist auch eine Via-Alternative Beweis: Sei P s,t = s y x t die Plateau-Alternative Für jeder Knoten v P y,x ist P s,t eine Via-Alternative mit Via-Knoten v, da P s,v und P v,t kürzeste Pfade sind Folie 22 25. Mai 2016

Alternativen durch Stausimulation Idee: Suche kürzesten Pfad P 1 Simuliere Stau auf P 1 Suche neuen kürzesten Pfad P 2 der Stau in Betracht zieht Simuliere Stau auf P 1 und P 2 Suche neuen kürzesten Pfad P 3 der Stau in Betracht zieht... Wiederhole bis Alternativen zu lang werden Folie 23 25. Mai 2016

Alternativen durch Stausimulation Idee: Suche kürzesten Pfad P 1 Simuliere Stau auf P 1 Suche neuen kürzesten Pfad P 2 der Stau in Betracht zieht Simuliere Stau auf P 1 und P 2 Suche neuen kürzesten Pfad P 3 der Stau in Betracht zieht... Wiederhole bis Alternativen zu lang werden Englischer Fachbegriff: Penalty Method Quelle: [BDGS11] Folie 23 25. Mai 2016

Alternativen durch Stausimulation Ist das eine gute Alternative? s t Nicht lokal optimal Bestrafe nicht nur die Kanten auf dem Weg, sondern auch die inzidente Kanten. Folie 24 25. Mai 2016

Alternativen durch Stausimulation Strafterme Einfluss von additiven Straftermen hängt vom Graph ab mehr Grad-2 Knoten größerer Einfluss Lösung: Multiplikative Strafterme Anders formuliert: Setzt die Geschwindigkeit gleichmäßig runter anstatt jede Kante um x Sekunden zu verlängern Folie 25 25. Mai 2016

Alternativen durch Stausimulation Wie implemenieren Benutze 3-Phasen Vorberechnungstechnik Nur Teile der Metrik ändern sich kann ausgenutzt werden [KRS13] baut auf MLD/CRP auf Folie 26 25. Mai 2016

Ein Paar Zahlen first second third time success time success time success algorithm [ms] rate [%] [ms] rate [%] [ms] rate [%] X-BDV 11 451.5 94.5 12 225.9 80.6 13 330.9 59.6 CRP-π 130.0 96.3 130.0 84.0 130.0 62.9 X-REV 20.4 91.3 33.6 70.3 42.6 43.0 HiDAR 18.2 91.5 18.2 75.7 18.2 55.9 X-CHV-v1 16.9 90.7 20.3 70.1 22.1 42.3 X-CHV-v2 3.1 58.2 3.6 28.6 3.9 10.9 X-BDV: Bidirektionaler Dijkstra X-REV: Reach X-CHV-v1 und X-CHV-v2: Zwei CH-Varianten, v1 sucht mehr Kanten außerhalb des Suchraums ab HiDAR: Plateau-CH CRP-π: Simulierter Stau Folie 27 25. Mai 2016

Zusammenfassung Alternativ-Routen Eine gute Alternative ist: Nicht viel länger Lokal-optimal Hinreichend verschieden Alternativen findet man durch Kandidaten heuristisch aufzählen Schlechte Kandidaten Ausfiltern Kandidaten findet man mit Via-Knoten Plateaux Simuliertem Stau Folie 28 25. Mai 2016

Literatur I Ittai Abraham, Daniel Delling, Andrew V. Goldberg, and Renato F. Werneck. Alternative routes in road networks. ACM Journal of Experimental Algorithmics, 18(1):1 17, 2013. Roland Bader, Jonathan Dees, Robert Geisberger, and Peter Sanders. Alternative route graphs in road networks. In Proceedings of the 1st International ICST Conference on Theory and Practice of Algorithms in (Computer) Systems (TAPAS 11), volume 6595 of Lecture Notes in Computer Science, pages 21 32. Springer, 2011. Moritz Kobitzsch. HiDAR: An alternative approach to alternative routes. In Proceedings of the 21st Annual European Symposium on Algorithms (ESA 13), volume 8125 of Lecture Notes in Computer Science, pages 613 624. Springer, 2013. Moritz Kobitzsch, Marcel Radermacher, and Dennis Schieferdecker. Evolution and evaluation of the penalty method for alternative graphs. In Proceedings of the 13th Workshop on Algorithmic Approaches for Transportation Modeling, Optimization, and Systems (ATMOS 13), OpenAccess Series in Informatics (OASIcs), pages 94 107, 2013. Folie 29 25. Mai 2016