Routing in Nahverkehrsnetzen

Ähnliche Dokumente
Fortgeschrittene Routenplanung. Transportnetzen. Advanced Route Planning in Transportation Networks

Routing Algorithmen. Begriffe, Definitionen

Unterwegs mit Bus und Bahn. Unterwegs in der Stadt. Arbeitsblatt 1 Komplexe Verkehrssituation

Personalbuslinie CCS Fahrtrichtung Geb Haltestelle Terminal 1 Ost Abfahrtzeiten

Unterwegs mit Bus und Bahn. Unterwegs in der Stadt. Arbeitsblatt 1 Thema 1: Sicher Bus- und Bahnfahren von Anfang an

Unterwegs mit Bus und Bahn

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

Hilden Solingen und zurück

Nichtdeterministische Platzklassen

Dynamische Programmierung. Problemlösungsstrategie der Informatik

Algorithmen und Datenstrukturen. Große Übung vom Nils Schweer

Proseminar Online Algorithmen, Prof. Dr. Rolf Klein

Highway Hierarchies. Kristian Dannowski, Matthias Hoeschel

Schnelle und genaue Routenplanung

4. Kreis- und Wegeprobleme Abstände in Graphen

MB2-ALG, SS15 Seite 1 Hauptklausur, geschrieben am

Wie findet das Navi den Weg?

Mit der WESTbahn und der DB nach Deutschland!

Kürzeste Wege in Graphen. Maurice Duvigneau Otto-von-Guericke Universität Fakultät für Informatik

Der naldo-offline-handyfahrplan

Kapitel 12: Schnelles Bestimmen der Frequent Itemsets

aktive Netzwerk-Komponenten Repeater Hub Bridge Medienkonverter Switch Router

Offline Reiseplaner für Bahnverbindungen

Anhang B: Grundsätzliches zur Fahrplangestaltung im Knotensystem

Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005. Paradigmen im Algorithmenentwurf

Paderborn / Hamm Düsseldorf. Fahrplanänderungen

Verfahren zur Berechnung von Routen zur Gewährleistung von Ende-zu-Ende QoS

Seminar künstliche Intelligenz

Kurzanleitung. die Java-Fahrplanauskunft der KVB in Zusammenarbeit mit der Sparkasse KölnBonn

Leitstellensimulator goes. OpenStreetMap. Ein Erfahrungsbericht. Serhan Şen LstSim.de. FOSSGIS-Konferenz 2016 Salzburg 5.

7. Algorithmus der Woche Kürzeste Wege Wie komme ich am schnellsten von einem Ort zu einem anderen?

Vorlesung 4 BETWEENNESS CENTRALITY

Kombinatorische Optimierung

Messen Sie die Vitalwerte Ihres Betriebes!

9. Heuristische Suche

Algorithmen II Vorlesung am

Schienenersatzverkehr

Punktlokalisierung. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK

Bus S 5 S 5 Bus Bus S 5 Bus Bus S 5 Bus Bus S 5 Bus Bus S 5 Bus S 5 Verkehrstage

Ticketkauf im VBB mit der VBB-App Bus&Bahn

23. November Betweenness Centrality Closeness Centrality. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 108

Institut für Mathematik Geometrie und Lineare Algebra J. Schönenberger-Deuel. Aufgabe 1. Wir geben nur zwei von sehr vielen möglichen Strategien.

Ring&Ride Multifunktionales Handy-Ticketing

Maximaler Fluß und minimaler Schnitt. Von Sebastian Thurm

FÜNF UND DREISSIG JAHRE

AutoSPARQL. Let Users Query Your Knowledge Base

Übung zur Vorlesung Berechenbarkeit und Komplexität

TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK

OSRM - weltweites Routing mit OpenStreetMap-Daten OSRM - weltweites Routing mit OpenStreetMap-Daten

VBB-Fahrinfo im neuen Gewand: Noch leichter von A nach B finden

Domain-independent. independent Duplicate Detection. Vortrag von Marko Pilop & Jens Kleine. SE Data Cleansing

Stadt Beschreibung (Deutsch) Beschreibungstext

Wangerooge Fahrplan 2016

Schön, wenn man immer auf den Fahrplan zugreifen kann.

Wangerooge Fahrplan 2015 Fahrzeit Tidebus 50 Minuten, Schiff und Inselbahn ca. 90 Minuten.

Programmierung 2. Dynamische Programmierung. Sebastian Hack. Klaas Boesche. Sommersemester

Routing und Visualisierung im individuellen ÖPNV

Konzepte der Informatik

Web Data Management Systeme

Wer Wird Millionär? Ganz wichtig: Denkt daran in regelmäßigen Abständen zu speichern! Los geht s:

MASTER THESIS. Ontology-Based Route Queries with Time Windows. Tobias Faaß. 17. Juni 2015

Automatisierte Erstellung von fahrplanreferenzierten ÖV-Netzen. Patrick Brosi, Uli Müller

Die neue Linie 5 Fahrplan. Weinheim Viernheim Mannheim Heidelberg Weinheim

Netzsicherheit I, WS 2008/2009 Übung 6. Prof. Dr. Jörg Schwenk

Nutzungsverhalten des ÖPNV (Frage 1 bis 3 sind bei dem Kundenbarometer und der Nicht-Nutzerbefragung gleich.)

Kombinatorische Optimierung

Algorithmus zum Graphen-Matching. und. Anwendung zur inhaltsbasierten Bildersuche

Lernumgebung für das Travelling Salesman Problem. Bedienungsanleitung. Projekt im Sommersemester 2016 Betreuer: Prof. Dr.

Wien Hauptbahnhof neue Mobilität im Zentrum Wiens Dietmar Pfeiler, Michael Fröhlich

Algorithmen für schwierige Probleme

Gemeinsame Pressemitteilung

Compumaus Computerschule Brühl Internet Explorer

Hagen Wuppertal Düsseldorf Neuss Mönchengladbach Schienenersatzverkehr Wuppertal-Vohwinkel Wuppertal Hbf

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

VON GRUND AUF RICHTIG AUFBAUEN

Integrierter Taktfahrplan 2025 als Wachstumsmotor für Regionalbahnen. Klaus Garstenauer Regionalbahntag Perg,

Traveling Salesman Problem (TSP)

Smartmove-Fragebogen. Starkes Angebot Bahn und Bus im Landkreis Wittenberg!

Klassenausflug mit Bus und Bahn

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Universität des Saarlandes

Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen

Lernmodul 2 Graphen. Lernmodul 2: Geoobjekte und ihre Modellierung - Graphen

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Stadt Witten: Linienübersicht Entwicklungskonzept

Internet Routing am mit Lösungen

Wir verbinden Europa! Jahre Eurolines. Österreich Ungarn. oneway nach Wien. Gültig vom 01. April Oktober

1. Einleitung wichtige Begriffe

Übung 5: Transport. Rechnernetze. Wintersemester 2014/ Allgemeine TCP Verständnisfragen

Teil III: Routing - Inhalt I. Literatur. Geometric Routing. Voraussetzungen. Unit Disk Graph (UDG) Geometric Routing 29

Rechnernetze I. Rechnernetze I. 1 Einführung SS Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/ , Büro: H-B 8404

Adressauflösung. IP Adresse Physikalische Adresse :FF:AA:36:AB: :48:A4:28:AA:18

Datum: Erasmus+ Name: There s something new under the sun

Internet-Suchmaschinen Ein kurzes Exposee zu drei wichtigen Informationsseiten im Internet Computeria Rorschach Roland Liebing

Prüfungsklausur Operations Research,

Datenstrukturen und Algorithmen. Christian Sohler FG Algorithmen & Komplexität

Universität für Bodenkultur Wien (BOKU), Institut für Sicherheits- und Risikowissenschaften

Kodieren Von Graphen

Ticketkauf im VBB mit der VBB-App Bus&Bahn

Klausur Informatik B April Teil I: Informatik 3

Transkript:

Routing in Nahverkehrsnetzen Daniel Friesel derf@chaosdorf.de @derfnull CCC Düsseldorf / Chaosdorf 12. Juni 2015

Einleitung Es gibt diverse Routingdienste 1 / 11

Einleitung Es gibt diverse Routingdienste Google Maps / Google Transit 1 / 11

Einleitung Es gibt diverse Routingdienste Google Maps / Google Transit Deutsche Bahn EFA / VRR 1 / 11

Einleitung Es gibt diverse Routingdienste Google Maps / Google Transit Deutsche Bahn EFA / VRR... 1 / 11

Einleitung Es gibt diverse Routingdienste Google Maps / Google Transit Deutsche Bahn EFA / VRR... Aber wie funktionieren sie eigentlich? 1 / 11

Einleitung Es gibt diverse Routingdienste Google Maps / Google Transit Deutsche Bahn EFA / VRR... Aber wie funktionieren sie eigentlich? Vor allem: Wie schaffen sie es, auch komplexe Anfragen effizient zu beantworten? 1 / 11

Einleitung Es gibt diverse Routingdienste Google Maps / Google Transit Deutsche Bahn EFA / VRR... Aber wie funktionieren sie eigentlich? Vor allem: Wie schaffen sie es, auch komplexe Anfragen effizient zu beantworten? Z.B. 1 Sekunde für Düsseldorf Luisenstr Prag Hbf auf bahn.de 1 / 11

Einleitung Es gibt diverse Routingdienste Google Maps / Google Transit Deutsche Bahn EFA / VRR... Aber wie funktionieren sie eigentlich? Vor allem: Wie schaffen sie es, auch komplexe Anfragen effizient zu beantworten? Z.B. 1 Sekunde für Düsseldorf Luisenstr Prag Hbf auf bahn.de Vortrag in zwei Teilen: 1 / 11

Einleitung Es gibt diverse Routingdienste Google Maps / Google Transit Deutsche Bahn EFA / VRR... Aber wie funktionieren sie eigentlich? Vor allem: Wie schaffen sie es, auch komplexe Anfragen effizient zu beantworten? Z.B. 1 Sekunde für Düsseldorf Luisenstr Prag Hbf auf bahn.de Vortrag in zwei Teilen: 1 Route überhaupt berechnen 1 / 11

Einleitung Es gibt diverse Routingdienste Google Maps / Google Transit Deutsche Bahn EFA / VRR... Aber wie funktionieren sie eigentlich? Vor allem: Wie schaffen sie es, auch komplexe Anfragen effizient zu beantworten? Z.B. 1 Sekunde für Düsseldorf Luisenstr Prag Hbf auf bahn.de Vortrag in zwei Teilen: 1 Route überhaupt berechnen 2 Route effizient berechnen 1 / 11

Themen 1 Einleitung 2 Routenberechnung 3 Effiziente Routenberechnung 4 Fazit

Modellierung Bild c Thunderforest, Daten c OpenStreetMap, CC-BY-SA 2.0 2 / 11

Modellierung Als Bild: Wohl kaum Bild c Thunderforest, Daten c OpenStreetMap, CC-BY-SA 2.0 2 / 11

Modellierung Als Bild: Wohl kaum Intern: Tabelle mit Fahrtzeiten Bild c Thunderforest, Daten c OpenStreetMap, CC-BY-SA 2.0 2 / 11

Modellierung Als Bild: Wohl kaum Intern: Tabelle mit Fahrtzeiten Anschaulicher: Graph Bild c Thunderforest, Daten c OpenStreetMap, CC-BY-SA 2.0 2 / 11

Nahverkehr als Graph Graph: Besteht aus Knoten und Kanten 3 / 11

Nahverkehr als Graph Graph: Besteht aus Knoten und Kanten Knoten = Haltestelle Technologiezentrum Universität Dorstfeld Süd J-v-F Str. Meitnerweg Campus Süd 3 / 11

Nahverkehr als Graph Graph: Besteht aus Knoten und Kanten Knoten = Haltestelle Kanten = Verbindung HB1 S1 Technologiezentrum Universität Dorstfeld Süd 465, HB1, NE8 S1 462, 465 462, 465, NE8 462, 465 462 HB1 HB1 462, 465 J-v-F Str. Meitnerweg Campus Süd 462 3 / 11

Nahverkehr als Graph Graph: Besteht aus Knoten und Kanten Knoten = Haltestelle Kanten = Verbindung HB1 S1 Technologiezentrum Universität Dorstfeld Süd 465, HB1, NE8 S1 462, 465 462, 465, NE8 462, 465 462 HB1 HB1 462, 465 J-v-F Str. Meitnerweg Campus Süd 462 Kürzesten Weg in Graphen finden: Sehr effizient (z.b. Straßennetz) Stichwort: Dijkstra-Algorithmus 3 / 11

Nahverkehr als Graph Graph: Besteht aus Knoten und Kanten Knoten = Haltestelle Kanten = Verbindung HB1 S1 Technologiezentrum Universität Dorstfeld Süd 465, HB1, NE8 S1 462, 465 462, 465, NE8 462, 465 462 HB1 HB1 462, 465 J-v-F Str. Meitnerweg Campus Süd 462 Kürzesten Weg in Graphen finden: Sehr effizient (z.b. Straßennetz) Stichwort: Dijkstra-Algorithmus Aber: Verkehrsmittel haben einen Fahrplan, Umsteigen dauert... Reisedauer hängt von Tageszeit, Takt etc. ab 3 / 11

Nahverkehr als Graph Mit Fahrplan Ein Graph ist ein guter Ansatz 4 / 11

Nahverkehr als Graph Mit Fahrplan Ein Graph ist ein guter Ansatz Ohne Fahrplandaten bringt er aber nichts Jede Ankunft/Abfahrt (mit Zeit) muss eindeutig sein 4 / 11

Nahverkehr als Graph Mit Fahrplan Ein Graph ist ein guter Ansatz Ohne Fahrplandaten bringt er aber nichts Jede Ankunft/Abfahrt (mit Zeit) muss eindeutig sein 11:55,HB1 12:00,HB1 12:00,462 12:02,462 4 / 11

Nahverkehr als Graph Mit Fahrplan Ein Graph ist ein guter Ansatz Ohne Fahrplandaten bringt er aber nichts Jede Ankunft/Abfahrt (mit Zeit) muss eindeutig sein 11:55,HB1 12:00,HB1 12:00,462 12:02,462 11:55,HB1 11:58,S1 12:00,HB1 11:56,462 11:59,462 4 / 11

Nahverkehr als Graph Mit Fahrplan Ein Graph ist ein guter Ansatz Ohne Fahrplandaten bringt er aber nichts Jede Ankunft/Abfahrt (mit Zeit) muss eindeutig sein 11:55,HB1 12:00,HB1 12:00,462 12:02,462 11:55,HB1 11:58,S1 12:00,HB1 11:56,462 11:59,462 4 / 11

Nahverkehr als Graph Mit Fahrplan Ein Graph ist ein guter Ansatz Ohne Fahrplandaten bringt er aber nichts Jede Ankunft/Abfahrt (mit Zeit) muss eindeutig sein 11:55,HB1 12:00,HB1 12:00,462 12:02,462 11:55,HB1 12:00,HB1 12:00,462 12:02,462 11:55,HB1 11:58,S1 12:00,HB1 11:56,462 11:59,462 4 / 11

Nahverkehr als Graph Mit Fahrplan Ein Graph ist ein guter Ansatz Ohne Fahrplandaten bringt er aber nichts Jede Ankunft/Abfahrt (mit Zeit) muss eindeutig sein 11:55,HB1 12:00,HB1 12:00,462 12:02,462 11:55,HB1 12:00,HB1 12:00,462 12:02,462 11:55,HB1 11:58,S1 12:00,HB1 11:56,462 11:59,462 4 / 11

Nahverkehr als Graph Mit Fahrplan Ein Graph ist ein guter Ansatz Ohne Fahrplandaten bringt er aber nichts Jede Ankunft/Abfahrt (mit Zeit) muss eindeutig sein 11:55,HB1 12:00,HB1 12:00,462 12:02,462 11:55,HB1 12:00,HB1 12:00,462 12:02,462 11:55,HB1 11:58,S1 12:00,HB1 11:56,462 11:59,462 4 / 11

Nahverkehr als Graph Mit Fahrplan Ein Graph ist ein guter Ansatz Ohne Fahrplandaten bringt er aber nichts Jede Ankunft/Abfahrt (mit Zeit) muss eindeutig sein 11:55,HB1 12:00,HB1 12:00,462 12:02,462 11:55,HB1 12:00,HB1 12:00,462 12:02,462 11:55,HB1 11:58,S1 12:00,HB1 11:56,462 Umsteigen: Hier nur mit mindestens 4 Minuten Puffer 11:59,462 4 / 11

Nahverkehr als Graph Mit Fahrplan Ein Graph ist ein guter Ansatz Ohne Fahrplandaten bringt er aber nichts Jede Ankunft/Abfahrt (mit Zeit) muss eindeutig sein 11:55,HB1 12:00,HB1 12:00,462 12:02,462 11:55,HB1 12:00,HB1 12:00,462 12:02,462 11:55,HB1 11:58,S1 12:00,HB1 11:56,462 Umsteigen: Hier nur mit mindestens 4 Minuten Puffer Eine Haltestelle ist damit vollständig bekannt 11:59,462 4 / 11

Nahverkehr als Graph Mit Fahrplan (2) D:TechZ 11:53,HB1 D:DfSüd 12:01,S1 T:TechZ 11:53,HB1 T:DfSüd 12:01,S1 1 11:58,S1 A:DfSüd 5 / 11

Nahverkehr als Graph Mit Fahrplan (2) Zwischen Haltestellen: Direkte Verbindungen eintragen D:TechZ 11:53,HB1 D:DfSüd 12:01,S1 T:TechZ 11:53,HB1 T:DfSüd 12:01,S1 1 11:58,S1 A:DfSüd 5 / 11

Nahverkehr als Graph Mit Fahrplan (2) Zwischen Haltestellen: Direkte Verbindungen eintragen Bei Anfangs-/Endstation: Entsprechend Knoten weglassen D:TechZ 11:53,HB1 D:DfSüd 12:01,S1 T:TechZ 11:53,HB1 T:DfSüd 12:01,S1 1 11:58,S1 A:DfSüd 5 / 11

Nahverkehr als Graph Mit Fahrplan (2) Zwischen Haltestellen: Direkte Verbindungen eintragen Bei Anfangs-/Endstation: Entsprechend Knoten weglassen D:TechZ 11:53,HB1 D:DfSüd 12:01,S1 T:TechZ 11:53,HB1 3 4 1 T:DfSüd 12:01,S1 1 11:58,S1 A:DfSüd Jede Kante hat eine Reise-/Wartedauer 5 / 11

Nahverkehr als Graph Mit Fahrplan (2) Zwischen Haltestellen: Direkte Verbindungen eintragen Bei Anfangs-/Endstation: Entsprechend Knoten weglassen D:TechZ 11:53,HB1 D:DfSüd 12:01,S1 T:TechZ 11:53,HB1 3 4 1 T:DfSüd 12:01,S1 1 11:58,S1 A:DfSüd Jede Kante hat eine Reise-/Wartedauer Kürzester Weg kann gesucht werden 5 / 11

Nahverkehr als Graph Mit Fahrplan (2) Zwischen Haltestellen: Direkte Verbindungen eintragen Bei Anfangs-/Endstation: Entsprechend Knoten weglassen D:TechZ 11:53,HB1 D:DfSüd 12:01,S1 T:TechZ 11:53,HB1 T:DfSüd 12:01,S1 1 11:58,S1 Jede Kante hat eine Reise-/Wartedauer Kürzester Weg kann gesucht werden Fast gleiche Methode wie bei Straßennetzen u.ä. A:DfSüd 5 / 11

Verbindungssuche Beispiel: Technologiezentrum Dorstfeld Süd D:TechZ 11:53,HB1 12:19,S1 D:DfSüd 12:01,S1 D:DfSüd 12:21,S1 T:TechZ 11:53,HB1 12:19,S1 T:DfSüd 12:01,S1 T:DfSüd 12:21,S1 11:18,S1 A:DfSüd A:DfSüd 12:20,S1 6 / 11

Verbindungssuche Beispiel: Technologiezentrum Dorstfeld Süd Neuer Startknoten mit Anfragezeit (erlaubt auch warten) D:TechZ 11:53,HB1 12:19,S1 D:DfSüd 12:01,S1 D:DfSüd 12:21,S1 TechZ 11:50,start T:TechZ 11:53,HB1 12:19,S1 T:DfSüd 12:01,S1 T:DfSüd 12:21,S1 11:18,S1 A:DfSüd A:DfSüd 12:20,S1 6 / 11

Verbindungssuche Beispiel: Technologiezentrum Dorstfeld Süd Neuer Startknoten mit Anfragezeit (erlaubt auch warten) Ziel: Irgendein Ankunftsknoten D:TechZ 11:53,HB1 12:19,S1 D:DfSüd 12:01,S1 D:DfSüd 12:21,S1 TechZ 11:50,start T:TechZ 11:53,HB1 12:19,S1 T:DfSüd 12:01,S1 T:DfSüd 12:21,S1 11:18,S1 A:DfSüd A:DfSüd 12:20,S1 6 / 11

Verbindungssuche Beispiel: Technologiezentrum Dorstfeld Süd Neuer Startknoten mit Anfragezeit (erlaubt auch warten) Ziel: Irgendein Ankunftsknoten D:TechZ 11:53,HB1 12:19,S1 D:DfSüd 12:01,S1 D:DfSüd 12:21,S1 TechZ 11:50,start T:TechZ 11:53,HB1 12:19,S1 T:DfSüd 12:01,S1 T:DfSüd 12:21,S1 11:18,S1 A:DfSüd A:DfSüd 12:20,S1 6 / 11

Verbindungssuche Beispiel: Technologiezentrum Dorstfeld Süd Neuer Startknoten mit Anfragezeit (erlaubt auch warten) Ziel: Irgendein Ankunftsknoten D:TechZ 11:53,HB1 12:19,S1 D:DfSüd 12:01,S1 D:DfSüd 12:21,S1 TechZ 11:50,start T:TechZ 11:53,HB1 12:19,S1 T:DfSüd 12:01,S1 T:DfSüd 12:21,S1 11:18,S1 A:DfSüd A:DfSüd 12:20,S1 6 / 11

Verbindungssuche Beispiel: Technologiezentrum Dorstfeld Süd Neuer Startknoten mit Anfragezeit (erlaubt auch warten) Ziel: Irgendein Ankunftsknoten D:TechZ 11:53,HB1 12:19,S1 D:DfSüd 12:01,S1 D:DfSüd 12:21,S1 TechZ 11:50,start T:TechZ 11:53,HB1 12:19,S1 T:DfSüd 12:01,S1 T:DfSüd 12:21,S1 11:18,S1 A:DfSüd A:DfSüd 12:20,S1 6 / 11

Verbindungssuche Beispiel: Technologiezentrum Dorstfeld Süd Neuer Startknoten mit Anfragezeit (erlaubt auch warten) Ziel: Irgendein Ankunftsknoten D:TechZ 11:53,HB1 12:19,S1 D:DfSüd 12:01,S1 D:DfSüd 12:21,S1 TechZ 11:50,start T:TechZ 11:53,HB1 12:19,S1 T:DfSüd 12:01,S1 T:DfSüd 12:21,S1 11:18,S1 A:DfSüd A:DfSüd 12:20,S1 Funktioniert Aber skaliert nicht Anfragen sind langsam, Graph passt u.u. noch nichtmal in den RAM 6 / 11

Verbindungssuche Beispiel: Technologiezentrum Dorstfeld Süd Neuer Startknoten mit Anfragezeit (erlaubt auch warten) Ziel: Irgendein Ankunftsknoten D:TechZ 11:53,HB1 12:19,S1 D:DfSüd 12:01,S1 D:DfSüd 12:21,S1 TechZ 11:50,start T:TechZ 11:53,HB1 12:19,S1 T:DfSüd 12:01,S1 T:DfSüd 12:21,S1 11:18,S1 A:DfSüd A:DfSüd 12:20,S1 Funktioniert Aber skaliert nicht Anfragen sind langsam, Graph passt u.u. noch nichtmal in den RAM Preprocessing 6 / 11

Themen 1 Einleitung 2 Routenberechnung 3 Effiziente Routenberechnung 4 Fazit

Preprocessing: Idee Direktverbindungen sind einfach 7 / 11

Preprocessing: Idee Direktverbindungen sind einfach Fahrplan betrachten und schnellste Verbindung ausgeben Im Computer: Kostet quasi keine Zeit 7 / 11

Preprocessing: Idee Direktverbindungen sind einfach Fahrplan betrachten und schnellste Verbindung ausgeben Im Computer: Kostet quasi keine Zeit Umsteigen ist dafür sehr schwierig 7 / 11

Preprocessing: Idee Direktverbindungen sind einfach Fahrplan betrachten und schnellste Verbindung ausgeben Im Computer: Kostet quasi keine Zeit Umsteigen ist dafür sehr schwierig Umsteigehalte für alle möglichen Anfragen vorberechnen 7 / 11

Preprocessing: Idee Direktverbindungen sind einfach Fahrplan betrachten und schnellste Verbindung ausgeben Im Computer: Kostet quasi keine Zeit Umsteigen ist dafür sehr schwierig Umsteigehalte für alle möglichen Anfragen vorberechnen Unabhängig von Start/Ziel 7 / 11

Preprocessing: Idee Direktverbindungen sind einfach Fahrplan betrachten und schnellste Verbindung ausgeben Im Computer: Kostet quasi keine Zeit Umsteigen ist dafür sehr schwierig Umsteigehalte für alle möglichen Anfragen vorberechnen Unabhängig von Start/Ziel Unabhängig von der Uhrzeit(!) 7 / 11

Preprocessing: Idee Direktverbindungen sind einfach Fahrplan betrachten und schnellste Verbindung ausgeben Im Computer: Kostet quasi keine Zeit Umsteigen ist dafür sehr schwierig Umsteigehalte für alle möglichen Anfragen vorberechnen Unabhängig von Start/Ziel Unabhängig von der Uhrzeit(!) Transfer Patterns Speichern zu jeder Starthaltestelle A optimale Verbindungen zu allen anderen Haltestellen 7 / 11

Preprocessing: Idee Direktverbindungen sind einfach Fahrplan betrachten und schnellste Verbindung ausgeben Im Computer: Kostet quasi keine Zeit Umsteigen ist dafür sehr schwierig Umsteigehalte für alle möglichen Anfragen vorberechnen Unabhängig von Start/Ziel Unabhängig von der Uhrzeit(!) Transfer Patterns Speichern zu jeder Starthaltestelle A optimale Verbindungen zu allen anderen Haltestellen Als Folge von Umsteigehalten Ohne Zeitangaben 7 / 11

Transfer Patterns: Berechnung Für jede Haltestelle A: Dortmund Hbf 8 / 11

Transfer Patterns: Berechnung Für jede Haltestelle A: Betrachte alle Abfahrtszeiten an A Dortmund Hbf 8 / 11

Transfer Patterns: Berechnung Für jede Haltestelle A: Betrachte alle Abfahrtszeiten an A Suche jeweils kürzeste Verbindung zu jeder Haltestelle B A Düsseldorf Hbf Bochum Hbf Dortmund Hbf TechZentrum 8 / 11

Transfer Patterns: Berechnung Für jede Haltestelle A: Betrachte alle Abfahrtszeiten an A Suche jeweils kürzeste Verbindung zu jeder Haltestelle B A Speichere Verbindung in einem neuen Graphen Beispiel für Uni Dortmund (Ausschnitt): Düsseldorf Hbf Kampstr Wittener Str Universität Bochum Hbf Dortmund Hbf Dorstfeld Universität TechZentrum 8 / 11

Transfer Patterns: Berechnung Für jede Haltestelle A: Betrachte alle Abfahrtszeiten an A Suche jeweils kürzeste Verbindung zu jeder Haltestelle B A Speichere Verbindung in einem neuen Graphen Beispiel für Uni Dortmund (Ausschnitt): Düsseldorf Hbf Kampstr Wittener Str Universität Bochum Hbf Dortmund Hbf Dorstfeld Universität TechZentrum Knoten = Umsteigehaltestelle Blaue Knoten = Zielhaltestellen 8 / 11

Routing mit Transfer Patterns Für eine Anfrage A B mit Startzeit t: 9 / 11

Routing mit Transfer Patterns Für eine Anfrage A B mit Startzeit t: Lade Transfer Pattern-Graph für A 9 / 11

Routing mit Transfer Patterns Für eine Anfrage A B mit Startzeit t: Lade Transfer Pattern-Graph für A Suche Zielknoten B, werfe alle anderen weg Kampstr Wittener Str Universität Dortmund Hbf Dorstfeld Universität TechZentrum 9 / 11

Routing mit Transfer Patterns Für eine Anfrage A B mit Startzeit t: Lade Transfer Pattern-Graph für A Suche Zielknoten B, werfe alle anderen weg Für jede Verbindung A B: Kampstr Wittener Str Universität Dortmund Hbf Dorstfeld Universität TechZentrum 9 / 11

Routing mit Transfer Patterns Für eine Anfrage A B mit Startzeit t: Lade Transfer Pattern-Graph für A Suche Zielknoten B, werfe alle anderen weg Für jede Verbindung A B: Lese früheste Ankunftszeit am ersten Umsteigebahnhof aus Fahrplan ab Kampstr Wittener Str Universität Dortmund Hbf Dorstfeld Universität TechZentrum 9 / 11

Routing mit Transfer Patterns Für eine Anfrage A B mit Startzeit t: Lade Transfer Pattern-Graph für A Suche Zielknoten B, werfe alle anderen weg Für jede Verbindung A B: Lese früheste Ankunftszeit am ersten Umsteigebahnhof aus Fahrplan ab Lese früheste Ankunftszeit am zweiten Umsteigebahnhof aus Fahrplan ab... Kampstr Wittener Str Universität Dortmund Hbf Dorstfeld Universität TechZentrum 9 / 11

Routing mit Transfer Patterns Für eine Anfrage A B mit Startzeit t: Lade Transfer Pattern-Graph für A Suche Zielknoten B, werfe alle anderen weg Für jede Verbindung A B: Lese früheste Ankunftszeit am ersten Umsteigebahnhof aus Fahrplan ab Lese früheste Ankunftszeit am zweiten Umsteigebahnhof aus Fahrplan ab... Gebe Verbindung mit frühester Ankunft aus Kampstr Wittener Str Universität Dortmund Hbf Dorstfeld Universität TechZentrum 9 / 11

Routing mit Transfer Patterns Für eine Anfrage A B mit Startzeit t: Lade Transfer Pattern-Graph für A Suche Zielknoten B, werfe alle anderen weg Für jede Verbindung A B: Lese früheste Ankunftszeit am ersten Umsteigebahnhof aus Fahrplan ab Lese früheste Ankunftszeit am zweiten Umsteigebahnhof aus Fahrplan ab... Gebe Verbindung mit frühester Ankunft aus Für Do Hbf Technologiezentrum: Nur 4 Kandidaten Kampstr Wittener Str Universität Dortmund Hbf Dorstfeld Universität TechZentrum 9 / 11

Routing mit Transfer Patterns Für eine Anfrage A B mit Startzeit t: Lade Transfer Pattern-Graph für A Suche Zielknoten B, werfe alle anderen weg Für jede Verbindung A B: Lese früheste Ankunftszeit am ersten Umsteigebahnhof aus Fahrplan ab Lese früheste Ankunftszeit am zweiten Umsteigebahnhof aus Fahrplan ab... Gebe Verbindung mit frühester Ankunft aus Für Do Hbf Technologiezentrum: Nur 4 Kandidaten Kampstr Wittener Str Universität Dortmund Hbf Dorstfeld Universität TechZentrum 9 / 11

Routing mit Transfer Patterns Für eine Anfrage A B mit Startzeit t: Lade Transfer Pattern-Graph für A Suche Zielknoten B, werfe alle anderen weg Für jede Verbindung A B: Lese früheste Ankunftszeit am ersten Umsteigebahnhof aus Fahrplan ab Lese früheste Ankunftszeit am zweiten Umsteigebahnhof aus Fahrplan ab... Gebe Verbindung mit frühester Ankunft aus Für Do Hbf Technologiezentrum: Nur 4 Kandidaten Kampstr Wittener Str Universität Dortmund Hbf Dorstfeld Universität TechZentrum 9 / 11

Routing mit Transfer Patterns Für eine Anfrage A B mit Startzeit t: Lade Transfer Pattern-Graph für A Suche Zielknoten B, werfe alle anderen weg Für jede Verbindung A B: Lese früheste Ankunftszeit am ersten Umsteigebahnhof aus Fahrplan ab Lese früheste Ankunftszeit am zweiten Umsteigebahnhof aus Fahrplan ab... Gebe Verbindung mit frühester Ankunft aus Für Do Hbf Technologiezentrum: Nur 4 Kandidaten Kampstr Wittener Str Universität Dortmund Hbf Dorstfeld Universität TechZentrum 9 / 11

Routing mit Transfer Patterns Für eine Anfrage A B mit Startzeit t: Lade Transfer Pattern-Graph für A Suche Zielknoten B, werfe alle anderen weg Für jede Verbindung A B: Lese früheste Ankunftszeit am ersten Umsteigebahnhof aus Fahrplan ab Lese früheste Ankunftszeit am zweiten Umsteigebahnhof aus Fahrplan ab... Gebe Verbindung mit frühester Ankunft aus Für Do Hbf Technologiezentrum: Nur 4 Kandidaten Kampstr Wittener Str Universität Dortmund Hbf Dorstfeld Universität TechZentrum 9 / 11

Benchmarks Netz Preprocessing Output Queryzeit Schweiz New York Nordamerika 10 / 11

Benchmarks Netz Preprocessing Output Queryzeit Schweiz 4 h New York 64 h Nordamerika 571 h 10 / 11

Benchmarks Netz Preprocessing Output Queryzeit Schweiz 4 h 154 MB New York 64 h 786 MB Nordamerika 571 h 7151 MB 10 / 11

Benchmarks Netz Preprocessing Output Queryzeit Schweiz 4 h 154 MB 1 ms New York 64 h 786 MB 6 ms Nordamerika 571 h 7151 MB 10 ms 10 / 11

Benchmarks Netz Preprocessing Output Queryzeit Schweiz 4 h 154 MB 1 ms New York 64 h 786 MB 6 ms Nordamerika 571 h 7151 MB 10 ms Quelle: [Bas+10] Preprocessing auf 2010er Xeon/Opteron Cluster Query-Messung auf einer Maschine davon, Daten im RAM 10 / 11

Benchmarks Netz Preprocessing Output Queryzeit Schweiz 4 h 154 MB 1 ms New York 64 h 786 MB 6 ms Nordamerika 571 h 7151 MB 10 ms Quelle: [Bas+10] Preprocessing auf 2010er Xeon/Opteron Cluster Query-Messung auf einer Maschine davon, Daten im RAM Sehr effizient Alle Graphen passen in den RAM 10 / 11

Themen 1 Einleitung 2 Routenberechnung 3 Effiziente Routenberechnung 4 Fazit

Fazit / Realitätsabgleich Ein paar Details wurden unterschlagen 11 / 11

Fazit / Realitätsabgleich Ein paar Details wurden unterschlagen Teils notwendige, teils optionale Verbesserungen 11 / 11

Fazit / Realitätsabgleich Ein paar Details wurden unterschlagen Teils notwendige, teils optionale Verbesserungen Ändern nichts am grundlegenden Prinzip 11 / 11

Fazit / Realitätsabgleich Ein paar Details wurden unterschlagen Teils notwendige, teils optionale Verbesserungen Ändern nichts am grundlegenden Prinzip Preprocessing ist weitgehend Brute Force-Ansatz Nicht effizient, aber sehr effektiv 11 / 11

Fazit / Realitätsabgleich Ein paar Details wurden unterschlagen Teils notwendige, teils optionale Verbesserungen Ändern nichts am grundlegenden Prinzip Preprocessing ist weitgehend Brute Force-Ansatz Nicht effizient, aber sehr effektiv Und nur einmal pro Fahrplanwechsel nötig 11 / 11

Fazit / Realitätsabgleich Ein paar Details wurden unterschlagen Teils notwendige, teils optionale Verbesserungen Ändern nichts am grundlegenden Prinzip Preprocessing ist weitgehend Brute Force-Ansatz Nicht effizient, aber sehr effektiv Und nur einmal pro Fahrplanwechsel nötig Transfer Patterns 2010 schon bei Google Maps im Einsatz 11 / 11

Fazit / Realitätsabgleich Ein paar Details wurden unterschlagen Teils notwendige, teils optionale Verbesserungen Ändern nichts am grundlegenden Prinzip Preprocessing ist weitgehend Brute Force-Ansatz Nicht effizient, aber sehr effektiv Und nur einmal pro Fahrplanwechsel nötig Transfer Patterns 2010 schon bei Google Maps im Einsatz Es gibt auch ganz andere Methoden Teils ohne Preprocessing Queryzeiten im Sekundenbereich bei Großstädten 11 / 11

Literatur [Bas+10] Hannah Bast u. a. Fast Routing in Very Large Public Transportation Networks Using Transfer Patterns. In: ESA 2010. Bd. 6346. Lecture Notes in Computer Science. Springer Berlin Heidelberg, 2010, S. 290 301. isbn: 978-3-642-15774-5.