Geoinfo Vertiefung
Multimodale Routenplanung
Bahn

Fußgänger

Bus
Inhalt








Motivation
ÖPNV-Netz
Problematik der multimodalen Routenplanung
Berücksichtigung der Fahrzeiten
Algorithmus
Kurze Vorstellung von „Hafas“
Berechnung des Gewichts kombinierter Kanten
Fazit
Motivation



Student aus Bonn  schnellstmöglichst von A
nach B
Bsp.: von Duisdorf zur Bonner Talweg
VRS-Info.de
3 verschiedende Routen
ÖPNV-Netz




Haltestellen untergliedert in Masten
Mast: tatsächliche Ankunfts-, Abfahrtsort
 zeigt die Richtung der Route an
Haltestelle: Gruppierung von Masten durch
Namensgebung
 wird in unterschiedlichen Richtungen
angefahren
Haltestellennamen  zur Erleichterung der
Wegbeschreibungen verwendet.
ÖPNV-Netz





Busse und Bahnen verkehren auf festen Routen.
Speicherung des ÖPNV-Netzes routenbasiert
Ein Fahrweg in Kanten-Knoten-Modell abbilden,
so dass eine Kante eine ganze Route mit
besuchten Masten repräsentiert.
Bei dieser Struktur  Routen weitestgehend
redundanzfrei abgebildet
Kante, Knoten einmal gespeichert
Nachteil dieser Struktur



Teilrouten also Kanten von Mast zu Mast  nur
implizit der Zuordnungstabelle zu entnehmen.
Netz für die Routenplanung als Distanzgraph
aufgebaut  Einlesetool müsste diese Kanten
explizit berechnen.
Solche Berechnungen lassen sich umgehen, indem
Kanten  Verbindungen von Mast zu Mast.
Probleme




Vermischung mehrerer Graphen
Kantengewichte dürfen sich nicht nur auf
Strecke sondern auch auf Zeit beziehen
Aufgabe der Routenplanung des Moduls 
Minimierung der Zeit
Fokus der Optimierung  Modellierung der
Suche in kombinierten Graphen
Beschreibung der Route vom
Anfangsknoten A zum Zielpunkt Z




Zu Fuß zur nächsten ÖPNV-Haltestelle
Optimale Route innerhalb des ÖPNV-Netzes in
die Zielregion
Zu Fuß von der Haltestelle zum Zielpunkt
 Trennung der Graphen in eigenständige
Strukturen
Problemstellung: Fahrzeiten von
Bus/Bahn


Nächste Haltestelle ≠ immer optimale
Abfahrtsort  Wahl der bestmöglichen
ÖPNV-Haltestelle bekommt auch noch eine
Zeitkomponente, weil nicht immer passender
Bus/Zug zur Verfügung wegen passender
Fahrpläne steht.
Das zu modellierende Problem  zu
zeitabhängig
Berücksichtigung der
Fahrzeiten



Tag beginnt um 4:00 Uhr
Wochenzyklus:
 Mont.-Freitag
Samstag
Sonntag/Feiertag
Bonn  65000 Datensätze zur Speicherung
der Routenstartzeiten
Berücksichtigung der
Fahrzeiten



Eine Verbindung wird durch die Klasse ÖPNV
gespeichert.
Abfahrtszeit, Linienbezeichnung, Fahrzeit auf der
speziellen Kante und Bezeichnung der Endstation =
Attribute der aktuellen Linie.
Jedes ÖPNV-Objekt  Zeiger auf das jeweilige
Kanten-Vaterobjekt, in dem Informationen über
Anfangs- und Endknoten vorgehalten werden.
Vorteile dieser Klasse




Zahl der Kanten im Graphen  reduziert,
Zeiger auf Anfangs- und Endknoten ≠ redundant
erzeugt werden.
Rolle der Routenplanung, schnellstmöglich
herauszufinden, wie eine kombinierte Kante in
optimaler Zeit bewältigt werden kann.
Deswegen ist eine möglichst effiziente Struktur zur
Suche der nächsten ÖPNV- Verbindung vonnöten.
Forderungen an den Algorithmus:



Berechnung der Kantengewichten  dynamisch
unter Berücksichtigung der Fahrpläne und des
gewählten Verkehrsmittel erfolgen.
Geometr. Beziehungen in dem Graphen
berücksichtigt werden
Aus der Charakteristik des Graphen, dass
unterschiedlich schnell zu überwindende Kanten
existieren sollte der Alg. Nutzen ziehen, indem er
möglichst zielstrebig auf die Suche nach
Bahnverbindungen geht, die in der Regel viel
schneller zu überwinden sind .
Welcher Algorithmus?



Alg. von Dantzig und Dijkstra erfüllt nur die
ersten Anforderungen
A*-Algor.  Christian Siemes
Erweiterung von Routenplanungs- algorithmen
Wiederholung von Diskreter
Mathematik
Do
80
Du
Do
20
20
Ha
30
20
Ha
15
15
W
W
D
30
Du
15
20
80
D
15
K
K
Kürzeste Wege: Idee






Gegeben: Gerichteter Graph, dessen Kanten mit Zahlen
(Kosten, z.B. km oder min.) beschriftet sind
Aufgabe: Berechnung des kürzesten Weges x  z von
einem Startknoten x zu einem Zielknoten z
erste Idee: Berechne alle Wege und wähle den
kürzesten
Beobachtung: wenn der kürzeste Weg von x nach z
über y führt, sind die Teilwege x  y und y  z
ebenfalls kürzeste Wege
effiziente Lösung: berechne alle kürzesten Wege und
wähle den von x nach z aus
Algorithmus von Dijkstra: jeder Schritt sitzt
(„Greedy“-Algorithmus)
Algorithmus von Dijkstra
algorithm Dijkstra (S)
//berechne alle kürzesten Wege von S aus}
BLAU = ; GRÜN = {S}; dist(S) = 0;
while( GRÜN   ) {
wähle K  GRÜN, so daß  K‘  GRÜN:
dist(K)  dist(K‘);
färbe K blau;
for( Ki  succ(K) ) {
if (Ki  (GRÜN  BLAU) //noch nicht besuchter Knoten
färbe die Kante (K,Ki) rot;
färbe Ki grün;
dist(Ki) = dist(K) + dist(K,Ki); }
Algorithmus von Dijkstra


Dieser Algorithmus erfüllt nur die ersten
Anforderungen der Routenplanung.
Wieso?


Jedes Mal berechnet er die Kantengewichte komplett
neu.
D.h. die beschränkte Verfügbarkeit von
Busverbindungen kann bei der
Kantengewichtsberechnung berücksichtigt werden, in
dem ein zusätzliches Modul nach der nächsten
Verbindung sucht und an Dijkstra das berechnete
Gewicht liefert, da dieser mit anderen Kanten
vergleicht.
Lösung



Berücksichtigung der Zielkosten bei jedem
einzelnen Wegknoten
Bei Dijkstra: nicht die Summe der Kantengewichte
wird bis zu den Neukosten minimiert, sondern
dieses Gewicht vermehrt sich um die
Kantengewichte um zum Zielknoten zu gelangen.
Der Algorithmus soll den besten Weg fehlerfrei
ermitteln, sofern die Zielkosten den tatsächlichen
minimal zu erwarteten Aufwand, um von dem
Zwischenknoten zum Zielknoten gelangen, nicht
überschreiten.
Überführung zum A*-Alg.


Ergebnisse werden suboptimal, wenn zur
Beschleunigung des Algorithmus  ein Verfahren
der Zieldistanz, das dazu führt, dass die
tatsächlich in dem Graphen zu findende Route ein
geringeres Gesamtgewicht hat als die zuvor
berechnete Summe aus Zwischenknoten- und
Zielkosten.
Der A*-Alg. zeigt diesbezüglich herausragende
Eigenschaften  Vortrag von Christian
Thema der Routenplanung

Thema:
 Zeit spielt die wesentliche Rolle und nicht die
Distanz.
  Kanten, die schnell bewältigt werden
können



 geringeres Zielgewicht
 Bevorzugung
Kanten, die schnell „befahren“ werden können

kurzen Fußwegen
wegen gleichem Zeitgewicht
Erweiterung von
Routenplanungsalgorithmen




A*-Algorithmus
HISPA Heuristik( Hierarchical shortest path )
sucht kürzeste Wege von zwei Endknoten zu
Knoten der obersten Hierarchieebene (
benutzerabhängig ) in einem Kreis mit
gegebenen Radius. Diese Wege werden als
Kanten entspr. Länge zur obersten
Hierarchieebene hinzugefügt
auf dieser Ebene wird kürzester Weg
bestimmt
HISPA Heuristik
12
8
5
9
3
S
4
2
1
7
Start
S
10
Ziel
Berechnung des Gewichts
kombinierter Kanten




Ermittlung des Gewichts einer Kante:
Quotient aus Länge und Fahrgeschwindigkeit
Kombinierte Kante, bestehend aus einem Straßenund ÖPNV-Objekt  Berechnung des minimalen
Gewichts viel aufwändiger.
Startzeit = Gewicht des aktiven Knotens, von dem
die beste Verbindung über die aktuelle Kante
ermittelt wird.
Endlosberechnungen  vermieden, indem
Straßenkante = Summe von Knoten und 1 Tag
festgesetzt wird.
Berechnung des Gewichts
kombinierter Kanten




Gesucht wird eine ÖPNV-Verbindung, deren
Ankunftszeit minimal ist, unter der Bedingung, dass
die Abfahrtzeit größer oder gleich der Startzeit, also
dem Gewicht des Knotens ist.
Ist das 1. Element gefunden ≠ zwangsläufig die
gesuchte Verbindung.
Berücksichtigung des Umsteigens der Linie  Zeit in
Anspruch
 Hinzufügen eines Strafgewichts von 5 min zu der
Ankunftszeit
Fazit





Multimodale Routenplanung ist Gegenstand
unserer Zeit und wird täglich angewandt.
Sie ist bspw. für Besucher einer fremden Stadt
sehr praktisch.
Ein französischer Autor hat mal gesagt:
„Rien ne sert de courir, il faut partir à temps“ d.h.
Es nützt nichts, zu laufen; man muß nur zur Zeit
von zuhause weggehen.
Da kann die beste Routenplanung nichts machen,
wenn man zu spät kommt.
Vielen Dank für Ihre
Aufmerksamkeit

Multimodale Routenplanung und