Algorithmen für Routenplanung...King s Cross St.Pancras Underground Station Euston Underground...

98
INSTITUT FÜR THEORETISCHE INFORMATIK · ALGORITHMIK · PROF.DR.DOROTHEA WAGNER Algorithmen für Routenplanung 16. Sitzung, Sommersemester 2013 Thomas Pajor | 1. Juli 2013 KIT – Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

Transcript of Algorithmen für Routenplanung...King s Cross St.Pancras Underground Station Euston Underground...

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

    Algorithmen für Routenplanung16. Sitzung, Sommersemester 2013

    Thomas Pajor | 1. Juli 2013

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

    www.kit.edu

    http://www.kit.edu

  • Letztes Mal. . .

    Einführung in die Fahrplanauskunft

    S1 S2

    Z3

    Z1, Z2

    f (τ )

    τΠ

    schneller Zug

    langsamer Zug

    Funktion f durch Punkte: I f := {(t f1,w f1), . . . , (t fk ,w fk )}

    Thomas Pajor – Algorithmen für RoutenplanungFolie 2 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Bis jetzt. . .

    Erinnerung: Ein Fahrplan besteht ausStops (Bahnhöfe, Bahnsteige, . . . ),Routen (Bus-, U-Bahn Linien, . . . ),Trips mit Abfahrt-/Ankunftszeiten,und Fußwegen zum Umsteigen.

    Victoria Line Services from this station towards Brixton Underground Station

    Walt

    ham

    stow

    Cent

    ral U

    nder

    grou

    nd S

    tatio

    n

    Blac

    khor

    se R

    oad

    Unde

    rgro

    und

    Stat

    ion

    Totte

    nham

    Hale

    Und

    ergr

    ound

    Sta

    tion

    Seve

    n Si

    sters

    Und

    ergr

    ound

    Sta

    tion

    Fins

    bury

    Par

    k Und

    ergr

    ound

    Sta

    tion

    High

    bury

    & Is

    lingt

    on U

    nder

    grou

    nd S

    tatio

    n

    King

    ’s Cr

    oss S

    t.Pan

    cras

    Und

    ergr

    ound

    Sta

    tion

    Eusto

    n Un

    derg

    roun

    d St

    ation

    War

    ren

    Stre

    et U

    nder

    grou

    nd S

    tatio

    n

    Oxfo

    rd C

    ircus

    Und

    ergr

    ound

    Sta

    tion

    Gree

    n Pa

    rk U

    nder

    grou

    nd S

    tatio

    n

    2

    Victo

    ria U

    nder

    grou

    nd S

    tatio

    n

    4

    Pim

    lico

    Unde

    rgro

    und

    Stat

    ion

    6

    Vaux

    hall U

    nder

    grou

    nd S

    tatio

    n

    8

    Stoc

    kwell

    Und

    ergr

    ound

    Sta

    tion

    10

    Brixt

    on U

    nder

    grou

    nd S

    tatio

    n

    13You are hereoff peakjourney timein minutes

    Monday - FridayFirst trains

    05350540054405510557

    6am to Midnightabout every

    2-5minutes

    Last trains000300080018 a0018 b0029 a0029 b

    a=not on Fridays b=only Friday

    Saturday (also Good Friday)First trains

    05350540054405510557

    6am to Midnightabout every

    2-6minutes

    Last trains0003000800180029

    Sunday and other Public HolidaysFirst trains

    070707210732074007470755

    8am to 11pmabout every

    2-5minutes

    Last trains230023052310231523202325233223402349

    13.10.2011 Oxford Circus Underground Station

    MAYOROF LONDON

    24 hour London Travel Information

    0843 222 1234Textphone

    020 7918 3015Operatedfor London Underground

    Earliest Arrival Problem:Gegeben Stops s, t und Abfahrtszeit τ , berechne

    Route zu t die an s nicht früher als τ abfährt,und an t frühstmöglich ankommt.

    Reicht uns das?

    Thomas Pajor – Algorithmen für RoutenplanungFolie 3 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Bis jetzt. . .

    Erinnerung: Ein Fahrplan besteht ausStops (Bahnhöfe, Bahnsteige, . . . ),Routen (Bus-, U-Bahn Linien, . . . ),Trips mit Abfahrt-/Ankunftszeiten,und Fußwegen zum Umsteigen.

    Victoria Line Services from this station towards Brixton Underground Station

    Walt

    ham

    stow

    Cent

    ral U

    nder

    grou

    nd S

    tatio

    n

    Blac

    khor

    se R

    oad

    Unde

    rgro

    und

    Stat

    ion

    Totte

    nham

    Hale

    Und

    ergr

    ound

    Sta

    tion

    Seve

    n Si

    sters

    Und

    ergr

    ound

    Sta

    tion

    Fins

    bury

    Par

    k Und

    ergr

    ound

    Sta

    tion

    High

    bury

    & Is

    lingt

    on U

    nder

    grou

    nd S

    tatio

    n

    King

    ’s Cr

    oss S

    t.Pan

    cras

    Und

    ergr

    ound

    Sta

    tion

    Eusto

    n Un

    derg

    roun

    d St

    ation

    War

    ren

    Stre

    et U

    nder

    grou

    nd S

    tatio

    n

    Oxfo

    rd C

    ircus

    Und

    ergr

    ound

    Sta

    tion

    Gree

    n Pa

    rk U

    nder

    grou

    nd S

    tatio

    n

    2

    Victo

    ria U

    nder

    grou

    nd S

    tatio

    n

    4

    Pim

    lico

    Unde

    rgro

    und

    Stat

    ion

    6

    Vaux

    hall U

    nder

    grou

    nd S

    tatio

    n

    8

    Stoc

    kwell

    Und

    ergr

    ound

    Sta

    tion

    10

    Brixt

    on U

    nder

    grou

    nd S

    tatio

    n

    13You are hereoff peakjourney timein minutes

    Monday - FridayFirst trains

    05350540054405510557

    6am to Midnightabout every

    2-5minutes

    Last trains000300080018 a0018 b0029 a0029 b

    a=not on Fridays b=only Friday

    Saturday (also Good Friday)First trains

    05350540054405510557

    6am to Midnightabout every

    2-6minutes

    Last trains0003000800180029

    Sunday and other Public HolidaysFirst trains

    070707210732074007470755

    8am to 11pmabout every

    2-5minutes

    Last trains230023052310231523202325233223402349

    13.10.2011 Oxford Circus Underground Station

    MAYOROF LONDON

    24 hour London Travel Information

    0843 222 1234Textphone

    020 7918 3015Operatedfor London Underground

    Earliest Arrival Problem:Gegeben Stops s, t und Abfahrtszeit τ , berechne

    Route zu t die an s nicht früher als τ abfährt,und an t frühstmöglich ankommt.

    Reicht uns das?

    Thomas Pajor – Algorithmen für RoutenplanungFolie 3 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Bis jetzt. . .

    Erinnerung: Ein Fahrplan besteht ausStops (Bahnhöfe, Bahnsteige, . . . ),Routen (Bus-, U-Bahn Linien, . . . ),Trips mit Abfahrt-/Ankunftszeiten,und Fußwegen zum Umsteigen.

    Victoria Line Services from this station towards Brixton Underground Station

    Walt

    ham

    stow

    Cent

    ral U

    nder

    grou

    nd S

    tatio

    n

    Blac

    khor

    se R

    oad

    Unde

    rgro

    und

    Stat

    ion

    Totte

    nham

    Hale

    Und

    ergr

    ound

    Sta

    tion

    Seve

    n Si

    sters

    Und

    ergr

    ound

    Sta

    tion

    Fins

    bury

    Par

    k Und

    ergr

    ound

    Sta

    tion

    High

    bury

    & Is

    lingt

    on U

    nder

    grou

    nd S

    tatio

    n

    King

    ’s Cr

    oss S

    t.Pan

    cras

    Und

    ergr

    ound

    Sta

    tion

    Eusto

    n Un

    derg

    roun

    d St

    ation

    War

    ren

    Stre

    et U

    nder

    grou

    nd S

    tatio

    n

    Oxfo

    rd C

    ircus

    Und

    ergr

    ound

    Sta

    tion

    Gree

    n Pa

    rk U

    nder

    grou

    nd S

    tatio

    n

    2

    Victo

    ria U

    nder

    grou

    nd S

    tatio

    n

    4

    Pim

    lico

    Unde

    rgro

    und

    Stat

    ion

    6

    Vaux

    hall U

    nder

    grou

    nd S

    tatio

    n

    8

    Stoc

    kwell

    Und

    ergr

    ound

    Sta

    tion

    10

    Brixt

    on U

    nder

    grou

    nd S

    tatio

    n

    13You are hereoff peakjourney timein minutes

    Monday - FridayFirst trains

    05350540054405510557

    6am to Midnightabout every

    2-5minutes

    Last trains000300080018 a0018 b0029 a0029 b

    a=not on Fridays b=only Friday

    Saturday (also Good Friday)First trains

    05350540054405510557

    6am to Midnightabout every

    2-6minutes

    Last trains0003000800180029

    Sunday and other Public HolidaysFirst trains

    070707210732074007470755

    8am to 11pmabout every

    2-5minutes

    Last trains230023052310231523202325233223402349

    13.10.2011 Oxford Circus Underground Station

    MAYOROF LONDON

    24 hour London Travel Information

    0843 222 1234Textphone

    020 7918 3015Operatedfor London Underground

    Earliest Arrival Problem:Gegeben Stops s, t und Abfahrtszeit τ , berechne

    Route zu t die an s nicht früher als τ abfährt,und an t frühstmöglich ankommt.

    Reicht uns das?

    Thomas Pajor – Algorithmen für RoutenplanungFolie 3 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Einbeziehen von Umstiegen

    Umstiege zu betrachten ist wichtig!

    Ankunft 11:08 Uhr, 2 Umstiege Ankunft 11:09 Uhr, 0 Umstiege

    Idee: Berechne „gute“ Routen für Ankunftszeit und Anzahl Umstiege.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 4 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Einbeziehen von Umstiegen

    Umstiege zu betrachten ist wichtig!

    Ankunft 11:08 Uhr, 2 Umstiege Ankunft 11:09 Uhr, 0 Umstiege

    Idee: Berechne „gute“ Routen für Ankunftszeit und Anzahl Umstiege.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 4 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Pareto-Menge

    Definition (Pareto-Optimum)Zu einer Menge M von n-Tupeln heißt ein Tupel mi = (x1, . . . , xn) ∈ MPareto-Optimum, wenn es kein anderes mj ∈ M gibt, so dass mj inallen Werten besser als mi ist (mj dominiert mi ).

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

    Beispiel: Betrachte Tupel aus Ankunftszeit und # Umstiege.

    Wie effizient berechnen?

    Thomas Pajor – Algorithmen für RoutenplanungFolie 5 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Pareto-Menge

    Definition (Pareto-Optimum)Zu einer Menge M von n-Tupeln heißt ein Tupel mi = (x1, . . . , xn) ∈ MPareto-Optimum, wenn es kein anderes mj ∈ M gibt, so dass mj inallen Werten besser als mi ist (mj dominiert mi ).

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

    Beispiel: Betrachte Tupel aus Ankunftszeit und # Umstiege.

    Wie effizient berechnen?

    Thomas Pajor – Algorithmen für RoutenplanungFolie 5 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Pareto-Menge

    Definition (Pareto-Optimum)Zu einer Menge M von n-Tupeln heißt ein Tupel mi = (x1, . . . , xn) ∈ MPareto-Optimum, wenn es kein anderes mj ∈ M gibt, so dass mj inallen Werten besser als mi ist (mj dominiert mi ).

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

    Beispiel: Betrachte Tupel aus Ankunftszeit und # Umstiege.

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

    Wie effizient berechnen?

    Thomas Pajor – Algorithmen für RoutenplanungFolie 5 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Pareto-Menge

    Definition (Pareto-Optimum)Zu einer Menge M von n-Tupeln heißt ein Tupel mi = (x1, . . . , xn) ∈ MPareto-Optimum, wenn es kein anderes mj ∈ M gibt, so dass mj inallen Werten besser als mi ist (mj dominiert mi ).

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

    Beispiel: Betrachte Tupel aus Ankunftszeit und # Umstiege.

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

    Wie effizient berechnen?

    Thomas Pajor – Algorithmen für RoutenplanungFolie 5 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Pareto-Menge

    Definition (Pareto-Optimum)Zu einer Menge M von n-Tupeln heißt ein Tupel mi = (x1, . . . , xn) ∈ MPareto-Optimum, wenn es kein anderes mj ∈ M gibt, so dass mj inallen Werten besser als mi ist (mj dominiert mi ).

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

    Beispiel: Betrachte Tupel aus Ankunftszeit und # Umstiege.

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

    Wie effizient berechnen?

    Thomas Pajor – Algorithmen für RoutenplanungFolie 5 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Multi-Label-Correcting Ansatz

    IdeeBenutze (zeitabhängiges) GraphmodellGrundlage: Dijkstra’s Algorithmus

    r2r1

    . . . aber. . .

    Label ` sind 2-Tupel aus Ankunftszeit und # UmstiegeAn jedem Knoten u ∈ V : Pareto-Menge Bu von LabelnPriority Queue verwaltet Label statt KnotenPriorität ist AnkunftszeitDominanz von Labeln in Bu on-the-fly

    Thomas Pajor – Algorithmen für RoutenplanungFolie 6 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Multi-Label-Correcting Ansatz

    IdeeBenutze (zeitabhängiges) GraphmodellGrundlage: Dijkstra’s Algorithmus

    r2r1

    . . . aber. . .

    Label ` sind 2-Tupel aus Ankunftszeit und # UmstiegeAn jedem Knoten u ∈ V : Pareto-Menge Bu von LabelnPriority Queue verwaltet Label statt KnotenPriorität ist AnkunftszeitDominanz von Labeln in Bu on-the-fly

    Thomas Pajor – Algorithmen für RoutenplanungFolie 6 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Multi-Label-Correcting (MLC)

    MLC(G = (V ,E), s, τ )

    1 Bu ← {} for each u ∈ V ; Bs ← {(τ,0)}2 Q.clear(), Q.insert(s, (τ,0))

    3 while !Q.empty() do4 u and ` = (τ, tr)← Q.deleteMin()5 for all edges e = (u, v) ∈ E do6 if e is a transfer edge then tr ′ ← tr + 17 else tr ′ ← tr8 `′ ← (τ + len(e, τ), tr ′)9 if `′ is not dominated by any `′′ ∈ Bv then

    10 Bv .insert(`′)11 Remove non-Pareto-optimal labels from Bv12 Q.insert(v , `′)

    Thomas Pajor – Algorithmen für RoutenplanungFolie 7 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Diskussion: MLC

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

    Verbesserungen für MLC:Jedes Bu verwaltet bestes ungesettletes Label selbst⇒ Priority Queue auf Knoten statt LabelnLabel-Forwarding:Wenn Kante keine Kosten hat, überspringe QueueTarget-Pruning:An Knoten u, verwerfe Label `′, wenn Bt dominiert `′

    Thomas Pajor – Algorithmen für RoutenplanungFolie 8 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Diskussion: MLC

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

    Verbesserungen für MLC:Jedes Bu verwaltet bestes ungesettletes Label selbst⇒ Priority Queue auf Knoten statt LabelnLabel-Forwarding:Wenn Kante keine Kosten hat, überspringe QueueTarget-Pruning:An Knoten u, verwerfe Label `′, wenn Bt dominiert `′

    Thomas Pajor – Algorithmen für RoutenplanungFolie 8 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Layered Dijkstra

    Bottleneck: Dynamische Datenstruktur für Pareto-Mengen

    Beobachtung:Kriterium Umstiege ist diskret und nimmt nur kleine Werte 0 . . .K an.

    Idee (Layered Dijkstra):Kopiere Graph K -Mal in Layer G0,G1, . . . ,GKBiege in jedem Layer i die Transfer Kanten e = (u, v) so um,dass sie in den nächsten Layer zeigen (u ∈ Vi , v ∈ Vi+1)Benutze zeitabh. Dijkstra mit Startknoten s0 ∈ V0 und Zeit τAdaptiere Dominanz zwischen Layern und Target-Pruning

    Dann: dτ [ui ∈ Vi ] ist beste Ankunftszeit an u mit genau i Umstiegen.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 9 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Layered Dijkstra

    Bottleneck: Dynamische Datenstruktur für Pareto-Mengen

    Beobachtung:Kriterium Umstiege ist diskret und nimmt nur kleine Werte 0 . . .K an.

    Idee (Layered Dijkstra):Kopiere Graph K -Mal in Layer G0,G1, . . . ,GKBiege in jedem Layer i die Transfer Kanten e = (u, v) so um,dass sie in den nächsten Layer zeigen (u ∈ Vi , v ∈ Vi+1)Benutze zeitabh. Dijkstra mit Startknoten s0 ∈ V0 und Zeit τAdaptiere Dominanz zwischen Layern und Target-Pruning

    Dann: dτ [ui ∈ Vi ] ist beste Ankunftszeit an u mit genau i Umstiegen.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 9 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Layered Dijkstra

    Bottleneck: Dynamische Datenstruktur für Pareto-Mengen

    Beobachtung:Kriterium Umstiege ist diskret und nimmt nur kleine Werte 0 . . .K an.

    Idee (Layered Dijkstra):Kopiere Graph K -Mal in Layer G0,G1, . . . ,GKBiege in jedem Layer i die Transfer Kanten e = (u, v) so um,dass sie in den nächsten Layer zeigen (u ∈ Vi , v ∈ Vi+1)Benutze zeitabh. Dijkstra mit Startknoten s0 ∈ V0 und Zeit τAdaptiere Dominanz zwischen Layern und Target-Pruning

    Dann: dτ [ui ∈ Vi ] ist beste Ankunftszeit an u mit genau i Umstiegen.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 9 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Layered Dijkstra

    Bottleneck: Dynamische Datenstruktur für Pareto-Mengen

    Beobachtung:Kriterium Umstiege ist diskret und nimmt nur kleine Werte 0 . . .K an.

    Idee (Layered Dijkstra):Kopiere Graph K -Mal in Layer G0,G1, . . . ,GKBiege in jedem Layer i die Transfer Kanten e = (u, v) so um,dass sie in den nächsten Layer zeigen (u ∈ Vi , v ∈ Vi+1)Benutze zeitabh. Dijkstra mit Startknoten s0 ∈ V0 und Zeit τAdaptiere Dominanz zwischen Layern und Target-Pruning

    Dann: dτ [ui ∈ Vi ] ist beste Ankunftszeit an u mit genau i Umstiegen.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 9 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Layered Dijkstra (LD)

    LD(Layered Graph G, s, τ )1 dτ [u]←∞ for each u ∈ V ; dτ [s0]← 02 Q.clear(), Q.insert(s0,0)

    3 while !Q.empty() do4 ui ← Q.deleteMin()5 for all edges e = (ui , vj ) ∈ E do6 if dτ [ui ] + len(e,dτ [ui ]) < mink≤j{dτ [vk ]} then7 dτ [vj ]← dτ [ui ] + len(e,dτ [ui ])8 pτ [vj ]← ui9 Q.update(vj ,dτ [vj ])

    Thomas Pajor – Algorithmen für RoutenplanungFolie 10 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Layered Dijkstra (LD)

    LD(Layered Graph G, s, τ )1 dτ [u]←∞ for each u ∈ V ; dτ [s0]← 02 Q.clear(), Q.insert(s0,0)

    3 while !Q.empty() do4 ui ← Q.deleteMin()5 for all edges e = (ui , vj ) ∈ E do6 if dτ [ui ] + len(e,dτ [ui ]) < mink≤j{dτ [vk ],dτ [tk ]} then7 dτ [vj ]← dτ [ui ] + len(e,dτ [ui ])8 pτ [vj ]← ui9 Q.update(vj ,dτ [vj ])

    Thomas Pajor – Algorithmen für RoutenplanungFolie 10 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Layered Dijkstra: Diskussion

    DiskussionSchneller und einfacher als MLCSpeichere Layer implizit: Jeder Knoten hat (festes!) Array derLänge K + 1 von Labeln dτ [u0] . . . dτ [uK ].Mehr Umstiege: Verlängere Label-Arrays on-demand (kommtfast nie vor wenn K hinreichend groß)

    Thomas Pajor – Algorithmen für RoutenplanungFolie 11 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Graph-Modelle?Bis jetzt:

    Modelliere Fahrplan als gerichteten GraphenZeitexpandiert vs zeitabhängigVerschiedene Varianten von Dijkstra’s AlgorithmusEarliest Arrival, Profil-, Multi-Criteria Suchen

    ProblemeViele Knoten und KantenOverhead von Priority QueueWenig explizites Ausnutzen der FahrplanstrukturDynamische Szenarien erfordern Updates der Graph-TopologieAußerdem: Beschleunigungstechniken funktionieren nicht gut

    Sind Graphen die beste Art Fahrpläne zu modellieren?

    Thomas Pajor – Algorithmen für RoutenplanungFolie 12 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Graph-Modelle?Bis jetzt:

    Modelliere Fahrplan als gerichteten GraphenZeitexpandiert vs zeitabhängigVerschiedene Varianten von Dijkstra’s AlgorithmusEarliest Arrival, Profil-, Multi-Criteria Suchen

    ProblemeViele Knoten und KantenOverhead von Priority QueueWenig explizites Ausnutzen der FahrplanstrukturDynamische Szenarien erfordern Updates der Graph-TopologieAußerdem: Beschleunigungstechniken funktionieren nicht gut

    Sind Graphen die beste Art Fahrpläne zu modellieren?

    Thomas Pajor – Algorithmen für RoutenplanungFolie 12 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Graph-Modelle?Bis jetzt:

    Modelliere Fahrplan als gerichteten GraphenZeitexpandiert vs zeitabhängigVerschiedene Varianten von Dijkstra’s AlgorithmusEarliest Arrival, Profil-, Multi-Criteria Suchen

    ProblemeViele Knoten und KantenOverhead von Priority QueueWenig explizites Ausnutzen der FahrplanstrukturDynamische Szenarien erfordern Updates der Graph-TopologieAußerdem: Beschleunigungstechniken funktionieren nicht gut

    Sind Graphen die beste Art Fahrpläne zu modellieren?

    Thomas Pajor – Algorithmen für RoutenplanungFolie 12 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • RAPTOR

    Anforderungen:

    Berechnen von Pareto-sets,mindestens Akunftszeit und # Umstiege

    Nutzt die Struktur der Fahrpläne aus,benutzt Routen und Trips explizit?

    funktioniert in dynamischen Szenarien,Verspätungen, Zugausfälle, Routenänderungen; keine Vorberechnung

    Kann auf zusätzliche Kriterien erweitert werden,z.B. Tarifzonen, Umstiegssicherheit, etc

    und ist hinreichend schnellfür interaktive Szenarien

    RAPTOR: Round-bAsed Public Transit Optimized Router

    Thomas Pajor – Algorithmen für RoutenplanungFolie 13 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • RAPTOR

    Anforderungen:Berechnen von Pareto-sets,mindestens Akunftszeit und # Umstiege

    Nutzt die Struktur der Fahrpläne aus,benutzt Routen und Trips explizit?

    funktioniert in dynamischen Szenarien,Verspätungen, Zugausfälle, Routenänderungen; keine Vorberechnung

    Kann auf zusätzliche Kriterien erweitert werden,z.B. Tarifzonen, Umstiegssicherheit, etc

    und ist hinreichend schnellfür interaktive Szenarien

    RAPTOR: Round-bAsed Public Transit Optimized Router

    Thomas Pajor – Algorithmen für RoutenplanungFolie 13 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • RAPTOR

    Anforderungen:Berechnen von Pareto-sets,mindestens Akunftszeit und # Umstiege

    Nutzt die Struktur der Fahrpläne aus,benutzt Routen und Trips explizit?

    funktioniert in dynamischen Szenarien,Verspätungen, Zugausfälle, Routenänderungen; keine Vorberechnung

    Kann auf zusätzliche Kriterien erweitert werden,z.B. Tarifzonen, Umstiegssicherheit, etc

    und ist hinreichend schnellfür interaktive Szenarien

    RAPTOR: Round-bAsed Public Transit Optimized Router

    Thomas Pajor – Algorithmen für RoutenplanungFolie 13 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • RAPTOR

    Anforderungen:Berechnen von Pareto-sets,mindestens Akunftszeit und # Umstiege

    Nutzt die Struktur der Fahrpläne aus,benutzt Routen und Trips explizit?

    funktioniert in dynamischen Szenarien,Verspätungen, Zugausfälle, Routenänderungen; keine Vorberechnung

    Kann auf zusätzliche Kriterien erweitert werden,z.B. Tarifzonen, Umstiegssicherheit, etc

    und ist hinreichend schnellfür interaktive Szenarien

    RAPTOR: Round-bAsed Public Transit Optimized Router

    Thomas Pajor – Algorithmen für RoutenplanungFolie 13 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • RAPTOR

    Anforderungen:Berechnen von Pareto-sets,mindestens Akunftszeit und # Umstiege

    Nutzt die Struktur der Fahrpläne aus,benutzt Routen und Trips explizit?

    funktioniert in dynamischen Szenarien,Verspätungen, Zugausfälle, Routenänderungen; keine Vorberechnung

    Kann auf zusätzliche Kriterien erweitert werden,z.B. Tarifzonen, Umstiegssicherheit, etc

    und ist hinreichend schnellfür interaktive Szenarien

    RAPTOR: Round-bAsed Public Transit Optimized Router

    Thomas Pajor – Algorithmen für RoutenplanungFolie 13 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • RAPTOR

    Anforderungen:Berechnen von Pareto-sets,mindestens Akunftszeit und # Umstiege

    Nutzt die Struktur der Fahrpläne aus,benutzt Routen und Trips explizit?

    funktioniert in dynamischen Szenarien,Verspätungen, Zugausfälle, Routenänderungen; keine Vorberechnung

    Kann auf zusätzliche Kriterien erweitert werden,z.B. Tarifzonen, Umstiegssicherheit, etc

    und ist hinreichend schnellfür interaktive Szenarien

    RAPTOR: Round-bAsed Public Transit Optimized Router

    Thomas Pajor – Algorithmen für RoutenplanungFolie 13 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • RAPTOR

    Anforderungen:Berechnen von Pareto-sets,mindestens Akunftszeit und # Umstiege

    Nutzt die Struktur der Fahrpläne aus,benutzt Routen und Trips explizit?

    funktioniert in dynamischen Szenarien,Verspätungen, Zugausfälle, Routenänderungen; keine Vorberechnung

    Kann auf zusätzliche Kriterien erweitert werden,z.B. Tarifzonen, Umstiegssicherheit, etc

    und ist hinreichend schnellfür interaktive Szenarien

    RAPTOR: Round-bAsed Public Transit Optimized Router

    Thomas Pajor – Algorithmen für RoutenplanungFolie 13 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Runden

    Beobachtung: Wechseln zw. Trips führt immer zu einem Umstieg.

    Idee: Eine Runde für jeden genommenen Trip.

    s

    t

    Dep: 10:30

    Ansatz: In Runde k werden Ankunftszeiten für k Trips berechnet.

    Scanne jede Route höchstens einmal pro Runde.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 14 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Runden

    Beobachtung: Wechseln zw. Trips führt immer zu einem Umstieg.

    Idee: Eine Runde für jeden genommenen Trip.

    s

    t

    Dep: 10:30

    Ansatz: In Runde k werden Ankunftszeiten für k Trips berechnet.

    Scanne jede Route höchstens einmal pro Runde.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 14 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Runden

    Beobachtung: Wechseln zw. Trips führt immer zu einem Umstieg.

    Idee: Eine Runde für jeden genommenen Trip.

    s

    t

    Dep: 10:30

    Ansatz: In Runde k werden Ankunftszeiten für k Trips berechnet.

    Scanne jede Route höchstens einmal pro Runde.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 14 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Runden

    Beobachtung: Wechseln zw. Trips führt immer zu einem Umstieg.

    Idee: Eine Runde für jeden genommenen Trip.

    t

    s

    Dep: 10:30

    Ansatz: In Runde k werden Ankunftszeiten für k Trips berechnet.

    Scanne jede Route höchstens einmal pro Runde.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 14 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Runden

    Beobachtung: Wechseln zw. Trips führt immer zu einem Umstieg.

    Idee: Eine Runde für jeden genommenen Trip.

    t

    s

    10:50

    11:00

    Dep: 10:30

    . . .

    . . .

    . . .

    . . .

    . . .

    . . .

    Ansatz: In Runde k werden Ankunftszeiten für k Trips berechnet.

    Scanne jede Route höchstens einmal pro Runde.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 14 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Runden

    Beobachtung: Wechseln zw. Trips führt immer zu einem Umstieg.

    Idee: Eine Runde für jeden genommenen Trip.

    t

    s

    10:50

    11:00

    Dep: 10:30

    . . .

    . . .

    . . .

    . . .

    . . .

    . . .

    Ansatz: In Runde k werden Ankunftszeiten für k Trips berechnet.

    Scanne jede Route höchstens einmal pro Runde.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 14 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Runden

    Beobachtung: Wechseln zw. Trips führt immer zu einem Umstieg.

    Idee: Eine Runde für jeden genommenen Trip.

    t

    s

    10:50

    11:00

    11:45

    13:00 (1 transfer)

    Dep: 10:30

    . . .

    . . .

    . . .

    . . .

    . . .. . .

    . . .

    . . .

    . . . . . .

    . . .

    . . .

    . . .

    . . .

    Ansatz: In Runde k werden Ankunftszeiten für k Trips berechnet.

    Scanne jede Route höchstens einmal pro Runde.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 14 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Runden

    Beobachtung: Wechseln zw. Trips führt immer zu einem Umstieg.

    Idee: Eine Runde für jeden genommenen Trip.

    t

    s

    10:50

    11:00

    11:45 11:15

    13:00 (1 transfer)

    Dep: 10:30

    . . .

    . . .

    . . .

    . . .

    . . .. . .

    . . .

    . . .

    . . . . . .

    . . .

    . . .

    . . .

    . . .

    Ansatz: In Runde k werden Ankunftszeiten für k Trips berechnet.

    Scanne jede Route höchstens einmal pro Runde.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 14 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Runden

    Beobachtung: Wechseln zw. Trips führt immer zu einem Umstieg.

    Idee: Eine Runde für jeden genommenen Trip.

    t

    s

    10:50

    11:00

    11:45 11:15

    13:00 (1 transfer)

    Dep: 10:30

    . . .

    . . .

    . . .

    . . .

    . . .. . .

    . . .

    . . .

    . . . . . .

    . . .

    . . .

    . . .

    . . .

    Ansatz: In Runde k werden Ankunftszeiten für k Trips berechnet.

    Scanne jede Route höchstens einmal pro Runde.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 14 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Runden

    Beobachtung: Wechseln zw. Trips führt immer zu einem Umstieg.

    Idee: Eine Runde für jeden genommenen Trip.

    t

    s

    10:50

    11:00

    11:45 11:15

    13:00 (1 transfer)

    Dep: 10:30

    12:30 (2 transfers)

    . . .

    . . .

    . . .

    . . .

    . . .. . .

    . . .

    . . .

    . . . . . .

    . . .

    . . .

    . . .

    . . .

    . . .

    . . .

    Ansatz: In Runde k werden Ankunftszeiten für k Trips berechnet.

    Scanne jede Route höchstens einmal pro Runde.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 14 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Runden

    Beobachtung: Wechseln zw. Trips führt immer zu einem Umstieg.

    Idee: Eine Runde für jeden genommenen Trip.

    t

    s

    10:50

    11:00

    11:45 11:15

    13:00 (1 transfer)

    Dep: 10:30

    12:30 (2 transfers)

    . . .

    . . .

    . . .

    . . .

    . . .. . .

    . . .

    . . .

    . . . . . .

    . . .

    . . .

    . . .

    . . .

    . . .

    . . .

    Ansatz: In Runde k werden Ankunftszeiten für k Trips berechnet.

    Scanne jede Route höchstens einmal pro Runde.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 14 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Scannen von Routen

    Some route

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    Current Trip: ⊥

    k-1

    k ∞9:16

    ∞9:58 8:43

    8:19

    7:25

    7:12

    ∞ 9:07

    3min 6min 2min 5min 5min 4min

    ∞ ∞ ∞

    Jeder Stop hat ein Label (Ankunftszeit) pro RundeAktiver Trip entlang der Route wird stets verbessert.

    In Runde k :Update Labels von Runde k mit Labels aus Runde k − 1.

    Dynamischer Programmierungsansatz.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 15 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Scannen von Routen

    Some route

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    Current Trip: ⊥

    k-1

    k ∞9:16

    ∞9:58 8:43

    8:19

    7:25

    7:12

    ∞ 9:07

    ?

    3min 6min 2min 5min 5min 4min

    ∞ ∞ ∞

    Jeder Stop hat ein Label (Ankunftszeit) pro RundeAktiver Trip entlang der Route wird stets verbessert.

    In Runde k :Update Labels von Runde k mit Labels aus Runde k − 1.

    Dynamischer Programmierungsansatz.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 15 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Scannen von Routen

    Some route

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    Current Trip: ⊥

    k-1

    k ∞9:16

    ∞9:58 8:43

    8:19

    7:25

    7:12

    ∞ 9:07

    ?

    3min 6min 2min 5min 5min 4min

    ∞ ∞ ∞

    Jeder Stop hat ein Label (Ankunftszeit) pro RundeAktiver Trip entlang der Route wird stets verbessert.

    In Runde k :Update Labels von Runde k mit Labels aus Runde k − 1.

    Dynamischer Programmierungsansatz.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 15 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Scannen von Routen

    Some route

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    Current Trip: 13

    k-1

    k ∞9:16

    ∞9:58 8:43

    8:19

    7:25

    7:12

    ∞ 9:07

    9:20

    3min 6min 2min 5min 5min 4min

    ∞ ∞∞

    Jeder Stop hat ein Label (Ankunftszeit) pro RundeAktiver Trip entlang der Route wird stets verbessert.

    In Runde k :Update Labels von Runde k mit Labels aus Runde k − 1.

    Dynamischer Programmierungsansatz.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 15 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Scannen von Routen

    Some route

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    Current Trip: 13

    k-1

    k ∞9:16

    ∞9:58 8:43

    8:19

    7:25

    7:12

    ∞ 9:07

    9:26

    3min 6min 2min 5min 5min 4min

    ∞∞ ∞ ∞

    Jeder Stop hat ein Label (Ankunftszeit) pro RundeAktiver Trip entlang der Route wird stets verbessert.

    In Runde k :Update Labels von Runde k mit Labels aus Runde k − 1.

    Dynamischer Programmierungsansatz.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 15 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Scannen von Routen

    Some route

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    Current Trip: 13

    k-1

    k ∞9:16

    ∞9:58

    9:26

    8:43

    8:19

    7:25

    7:12

    ∞ 9:07

    9:26

    3min 6min 2min 5min 5min 4min

    ∞ ∞

    Jeder Stop hat ein Label (Ankunftszeit) pro RundeAktiver Trip entlang der Route wird stets verbessert.

    In Runde k :Update Labels von Runde k mit Labels aus Runde k − 1.

    Dynamischer Programmierungsansatz.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 15 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Scannen von Routen

    Some route

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    Current Trip: 13

    k-1

    k ∞9:16

    ∞9:58

    9:26

    8:43

    8:19

    7:25

    7:12

    ∞ 9:07

    9:28

    3min 6min 2min 5min 5min 4min

    ∞ ∞

    Jeder Stop hat ein Label (Ankunftszeit) pro RundeAktiver Trip entlang der Route wird stets verbessert.

    In Runde k :Update Labels von Runde k mit Labels aus Runde k − 1.

    Dynamischer Programmierungsansatz.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 15 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Scannen von Routen

    Some route

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    Current Trip: 11

    k-1

    k ∞9:16

    ∞9:58

    9:26

    8:43

    8:19

    7:25

    7:12

    ∞ 9:07

    8:58

    3min 6min 2min 5min 5min 4min

    ∞ ∞

    Jeder Stop hat ein Label (Ankunftszeit) pro RundeAktiver Trip entlang der Route wird stets verbessert.

    In Runde k :Update Labels von Runde k mit Labels aus Runde k − 1.

    Dynamischer Programmierungsansatz.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 15 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Scannen von Routen

    Some route

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    Current Trip: 11

    k-1

    k ∞9:16

    ∞9:58

    9:26

    8:43

    8:19

    7:25

    7:12

    ∞ 9:07

    9:03

    3min 6min 2min 5min 5min 4min

    ∞ ∞

    Jeder Stop hat ein Label (Ankunftszeit) pro RundeAktiver Trip entlang der Route wird stets verbessert.

    In Runde k :Update Labels von Runde k mit Labels aus Runde k − 1.

    Dynamischer Programmierungsansatz.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 15 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Scannen von Routen

    Some route

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    Current Trip: 3

    k-1

    k ∞9:16

    ∞9:58

    9:26

    8:43

    8:19

    7:25

    7:12

    ∞ 9:07

    7:33

    3min 6min 2min 5min 5min 4min

    ∞ ∞

    Jeder Stop hat ein Label (Ankunftszeit) pro RundeAktiver Trip entlang der Route wird stets verbessert.

    In Runde k :Update Labels von Runde k mit Labels aus Runde k − 1.

    Dynamischer Programmierungsansatz.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 15 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Scannen von Routen

    Some route

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    Current Trip: 3

    k-1

    k ∞9:16

    ∞9:58

    9:26

    8:43

    8:19

    7:25

    7:12

    ∞ 9:07

    7:38

    3min 6min 2min 5min 5min 4min

    ∞ ∞

    Jeder Stop hat ein Label (Ankunftszeit) pro RundeAktiver Trip entlang der Route wird stets verbessert.

    In Runde k :Update Labels von Runde k mit Labels aus Runde k − 1.

    Dynamischer Programmierungsansatz.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 15 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Scannen von Routen

    Some route

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    Current Trip: 3

    k-1

    k ∞9:16

    ∞9:58

    9:26

    8:43

    8:19

    7:25

    7:12

    ∞7:38

    9:07

    7:38

    3min 6min 2min 5min 5min 4min

    Jeder Stop hat ein Label (Ankunftszeit) pro RundeAktiver Trip entlang der Route wird stets verbessert.

    In Runde k :Update Labels von Runde k mit Labels aus Runde k − 1.

    Dynamischer Programmierungsansatz.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 15 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Scannen von Routen

    Some route

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    Current Trip: 3

    k-1

    k ∞9:16

    ∞9:58

    9:26

    8:43

    8:19

    7:25

    7:12

    ∞7:38

    9:07

    7:42

    3min 6min 2min 5min 5min 4min

    Jeder Stop hat ein Label (Ankunftszeit) pro RundeAktiver Trip entlang der Route wird stets verbessert.

    In Runde k :Update Labels von Runde k mit Labels aus Runde k − 1.

    Dynamischer Programmierungsansatz.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 15 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Scannen von Routen

    Some route

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    Current Trip: 3

    k-1

    k ∞9:16

    ∞9:58

    9:26

    8:43

    8:19

    7:25

    7:12

    ∞7:38

    9:07

    7:42

    7:42

    3min 6min 2min 5min 5min 4min

    Jeder Stop hat ein Label (Ankunftszeit) pro RundeAktiver Trip entlang der Route wird stets verbessert.

    In Runde k :Update Labels von Runde k mit Labels aus Runde k − 1.

    Dynamischer Programmierungsansatz.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 15 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Scannen von Routen

    Some route

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    Current Trip: 3

    k-1

    k ∞9:16

    ∞9:58

    9:26

    8:43

    8:19

    7:25

    7:12

    ∞7:38

    9:07

    7:42

    3min 6min 2min 5min 5min 4min

    Jeder Stop hat ein Label (Ankunftszeit) pro RundeAktiver Trip entlang der Route wird stets verbessert.

    In Runde k :Update Labels von Runde k mit Labels aus Runde k − 1.

    Dynamischer Programmierungsansatz.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 15 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Scannen von Routen

    Some route

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    · · ·

    Current Trip: 3

    k-1

    k ∞9:16

    ∞9:58

    9:26

    8:43

    8:19

    7:25

    7:12

    ∞7:38

    9:07

    7:42

    3min 6min 2min 5min 5min 4min

    Jeder Stop hat ein Label (Ankunftszeit) pro RundeAktiver Trip entlang der Route wird stets verbessert.

    In Runde k :Update Labels von Runde k mit Labels aus Runde k − 1.

    Dynamischer Programmierungsansatz.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 15 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Markieren und Pruning

    Beobachtung: Nicht alle Routen werden in jeder Runde erreicht.

    s

    t

    Markieren und PruningRoute scannen: Markiere Stop falls Ankunftszeit verbessert.Nächste Runde: Nur Routen von markierten Stops scannen.Scanne jede Route ab ihrem ersten markierten Stop.

    Markiere nur Stops die beste Ankunftszeit am Ziel verbessern.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 16 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Markieren und Pruning

    Beobachtung: Nicht alle Routen werden in jeder Runde erreicht.

    s

    t

    Markieren und PruningRoute scannen: Markiere Stop falls Ankunftszeit verbessert.Nächste Runde: Nur Routen von markierten Stops scannen.Scanne jede Route ab ihrem ersten markierten Stop.

    Markiere nur Stops die beste Ankunftszeit am Ziel verbessern.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 16 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Markieren und Pruning

    Beobachtung: Nicht alle Routen werden in jeder Runde erreicht.

    s

    t

    Markieren und PruningRoute scannen: Markiere Stop falls Ankunftszeit verbessert.Nächste Runde: Nur Routen von markierten Stops scannen.Scanne jede Route ab ihrem ersten markierten Stop.

    Markiere nur Stops die beste Ankunftszeit am Ziel verbessern.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 16 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Markieren und Pruning

    Beobachtung: Nicht alle Routen werden in jeder Runde erreicht.

    s

    t

    Markieren und PruningRoute scannen: Markiere Stop falls Ankunftszeit verbessert.Nächste Runde: Nur Routen von markierten Stops scannen.Scanne jede Route ab ihrem ersten markierten Stop.

    Markiere nur Stops die beste Ankunftszeit am Ziel verbessern.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 16 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Markieren und Pruning

    Beobachtung: Nicht alle Routen werden in jeder Runde erreicht.

    s

    t

    Markieren und PruningRoute scannen: Markiere Stop falls Ankunftszeit verbessert.Nächste Runde: Nur Routen von markierten Stops scannen.Scanne jede Route ab ihrem ersten markierten Stop.

    Markiere nur Stops die beste Ankunftszeit am Ziel verbessern.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 16 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Markieren und Pruning

    Beobachtung: Nicht alle Routen werden in jeder Runde erreicht.

    s

    t

    Markieren und PruningRoute scannen: Markiere Stop falls Ankunftszeit verbessert.Nächste Runde: Nur Routen von markierten Stops scannen.Scanne jede Route ab ihrem ersten markierten Stop.

    Markiere nur Stops die beste Ankunftszeit am Ziel verbessern.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 16 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Markieren und Pruning

    Beobachtung: Nicht alle Routen werden in jeder Runde erreicht.

    s

    t

    Markieren und PruningRoute scannen: Markiere Stop falls Ankunftszeit verbessert.Nächste Runde: Nur Routen von markierten Stops scannen.Scanne jede Route ab ihrem ersten markierten Stop.Markiere nur Stops die beste Ankunftszeit am Ziel verbessern.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 16 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • RAPTOR: Übersicht

    Für jede Runde k ← 1,2, . . .1 Wähle erreichte Routen aus letzter Runde2 Scanne diese Routen3 Relaxiere Fußwege

    s

    t

    Terminiere, wenn kein Stop markiert wurde.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 17 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • RAPTOR: Übersicht

    Für jede Runde k ← 1,2, . . .1 Wähle erreichte Routen aus letzter Runde2 Scanne diese Routen3 Relaxiere Fußwege

    s

    t

    Terminiere, wenn kein Stop markiert wurde.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 17 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • RAPTOR: Übersicht

    Für jede Runde k ← 1,2, . . .1 Wähle erreichte Routen aus letzter Runde2 Scanne diese Routen3 Relaxiere Fußwege

    s

    t

    Terminiere, wenn kein Stop markiert wurde.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 17 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • RAPTOR: Übersicht

    Für jede Runde k ← 1,2, . . .1 Wähle erreichte Routen aus letzter Runde2 Scanne diese Routen3 Relaxiere Fußwege

    s

    t

    Terminiere, wenn kein Stop markiert wurde.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 17 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • RAPTOR: Übersicht

    Für jede Runde k ← 1,2, . . .1 Wähle erreichte Routen aus letzter Runde2 Scanne diese Routen3 Relaxiere Fußwege

    s

    t

    Terminiere, wenn kein Stop markiert wurde.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 17 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • RAPTOR: Übersicht

    Für jede Runde k ← 1,2, . . .1 Wähle erreichte Routen aus letzter Runde2 Scanne diese Routen3 Relaxiere Fußwege

    s

    t

    Terminiere, wenn kein Stop markiert wurde.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 17 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Parallelisierung

    Beobachtung: Routen werden in bel. Reihenfolge gescannt.

    Verteile Routen auf verschiedene CPU Kerne; Scanne parallel.

    Vermeiden von Race-Conditions

    Lock auf Schreiben von Labels (teuer).Synchronisiere Labels nach jeder Runde.Sicherstellen dass nur „unabhängige“Routen gleichzeitig gescannt werden.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 18 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Parallelisierung

    Beobachtung: Routen werden in bel. Reihenfolge gescannt.

    Verteile Routen auf verschiedene CPU Kerne; Scanne parallel.

    Vermeiden von Race-Conditions

    Lock auf Schreiben von Labels (teuer).Synchronisiere Labels nach jeder Runde.Sicherstellen dass nur „unabhängige“Routen gleichzeitig gescannt werden.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 18 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Parallelisierung

    Beobachtung: Routen werden in bel. Reihenfolge gescannt.

    Verteile Routen auf verschiedene CPU Kerne; Scanne parallel.

    Vermeiden von Race-Conditions

    Lock auf Schreiben von Labels (teuer).Synchronisiere Labels nach jeder Runde.Sicherstellen dass nur „unabhängige“Routen gleichzeitig gescannt werden.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 18 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Parallelisierung

    Beobachtung: Routen werden in bel. Reihenfolge gescannt.

    Verteile Routen auf verschiedene CPU Kerne; Scanne parallel.

    Vermeiden von Race-Conditions

    Lock auf Schreiben von Labels (teuer).Synchronisiere Labels nach jeder Runde.Sicherstellen dass nur „unabhängige“Routen gleichzeitig gescannt werden.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 18 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Andere Kriterien: Übersicht

    Mögliche ErweiterungenIntervallanfragen (Profil-Anfragen),Flexible Abfahrtszeiten.

    Tarifzonen,Längere Routen könnten billiger sein.

    Umstiegssicherheit,Routen könnten knappe Umstiege haben.

    . . .

    2 3 4 5 6

    7 889

    112

    2

    3

    4

    56

    2

    3

    4

    56

    3456

    River Thames

    River Thames

    Station outsidethe zones

    Station in Zone 5

    Station in Zone 4

    Station in Zone 3

    Station in Zone 2Station in both zones

    Station in Zone 1

    Revised September 2009

    Travelcard Zones

    6

    5

    4

    3

    2

    1

    Station in both zones

    Station in both zones

    Station in both zones

    Station in Zone 6

    Station in Zone 77

    Station in Zone 88

    Station in Zone 99

    Bakerloo

    Central

    Circle

    District

    InterchangeStationStationKey to lines

    Replacement bus services

    London Overground

    Hammersmith & City

    Metropolitan

    Northern

    Victoria

    DLR

    Jubilee

    National Rail

    London Tramlink

    Piccadilly

    Waterloo & City

    Smitham

    Southwark

    NorthwoodNorthwoodHills

    North HarrowHarrow-on-the-Hill NorthwickPark

    Harrow & Wealdstone

    Watford Junction

    Bushey

    Headstone Lane

    Pinner

    Stanmore

    Canons Park

    Queensbury

    Preston Road

    Edgware

    Burnt Oak

    ColindaleKingsbury

    WembleyPark Hendon

    NeasdenDollis Hill

    WillesdenGreen

    Kilburn

    Hatch End

    Elstree & Borehamwood

    Mill Hill Broadway Mill Hill East

    Hendon Central

    Brent CrossGolders Green

    HampsteadCricklewoodHampstead Heath

    Gospel Oak

    Kentish Town West

    West Ruislip

    RuislipGardens

    South Ruislip

    RaynersLane

    South Harrow

    NortholtPark

    West Harrow

    Northolt

    South Kenton

    North Wembley WembleyStadium

    StonebridgePark

    Harlesden

    SouthGreenford

    Castle BarPark

    DraytonGreen

    WestDrayton

    Hayes &Harlington

    Southall

    Hanwell WestEaling

    EalingBroadway

    North Ealing

    Boston ManorHounslow

    East

    HounslowWest HounslowCentral

    NorthfieldsChiswick

    Park

    ActonTown

    SouthActon

    ActonMain Line

    WestActon

    St. Margarets

    KewGardens

    Feltham

    StrawberryHill

    Hampton Wick

    HamptonCourt

    ThamesDitton

    Surbiton

    ChessingtonSouth

    ChessingtonNorth

    Brondesbury Park

    Kensal Rise

    Queen’sPark

    WembleyCentral

    EdgwareRoad

    Kilburn ParkMaida Vale

    Warwick Avenue

    WestbournePark

    Ladbroke Grove

    EdgwareRoad

    NorthActon

    EastActon

    Latimer RoadPark Royal

    HangerLane

    EalingCommon

    WhiteCity

    Shepherd’sBush Market

    Goldhawk Road

    ActonCentral

    BaronsCourt

    Kensington(Olympia)

    WestKensington

    RavenscourtPark

    StamfordBrook

    TurnhamGreen

    NorthSheen

    Parsons Green

    Putney Bridge

    East PutneyPutney

    Wimbledon Park

    Southfields

    Wimbledon

    Raynes Park

    New MaldenNorbiton

    CheamBelmont

    Sutton

    West Sutton

    Sutton Common

    St. Helier

    WorcesterPark

    MaldenManor

    SouthMerton

    MordenSouth

    Morden

    MotspurPark

    WimbledonChase

    South Wimbledon

    ColliersWood

    Earlsfield

    WandsworthTown

    TootingBec

    Tooting Broadway

    BalhamClapham South

    ClaphamCommon

    Clapham North

    ClaphamHigh Street

    WandsworthRoadClapham Junction

    QueenstownRoad

    BatterseaPark

    Fulham Broadway

    WestBrompton

    Pimlico

    SouthKensington

    Earl’sCourt

    SloaneSquare

    GloucesterRoad

    Knightsbridge

    High StreetKensington

    Hyde ParkCorner

    GreenPark

    High Barnet

    Finchley Road& Frognal

    Belsize Park

    West HampsteadChalk Farm

    Camden Town

    Finchley Road

    Kentish Town

    Swiss Cottage

    St. John’s Wood

    MorningtonCrescent

    CamdenRoad

    ImperialWharf

    BakerStreet

    GreatPortland

    StreetEuston

    WarrenStreetRegent’s

    Park

    OxfordCircus

    BondStreet

    TottenhamCourt Road

    EustonSquare

    GoodgeStreet

    Holborn

    RussellSquare

    ChanceryLane

    PiccadillyCircus

    CityThameslinkCovent

    Garden

    LeicesterSquareCharingCross

    St. James’sPark

    LambethNorth

    Vauxhall

    Borough

    LondonBridge

    Elephant& Castle

    South Bermondsey

    LoughboroughJunction Denmark Hill Nunhead

    East Dulwich

    Peckham Rye

    Herne Hill

    Tulse Hill

    North Dulwich

    West Dulwich

    MitchamJunction

    West Croydon

    CarshaltonBeeches

    Waddon

    ReedhamCoulsdon South

    Purley Oaks

    SouthCroydon

    EastCroydon

    WestNorwood

    GipsyHill

    CrystalPalace

    Birkbeck

    PengeWest

    Kent HousePenge East

    Lower Sydenham

    Forest HillHonor Oak Park

    Crofton Park

    New Cross Gate

    Sydenham Hill

    New CrossQueens RoadPeckham

    St. Johns

    Surrey Quays

    Rotherhithe

    Cannon Street

    FenchurchStreet

    TowerGateway

    TowerHill

    Monument

    AldgateEast

    St. Paul’s

    Shadwell

    StepneyGreen

    Old Street

    Essex Road

    King’s CrossSt. Pancras International

    LiverpoolStreet

    CaledonianRoad &

    Barnsbury

    CaledonianRoad

    HollowayRoad

    Upper Holloway

    DraytonPark

    Tufnell Park

    Archway

    Highgate

    Totteridge &Whetstone

    OakleighPark

    Woodside Park

    West Finchley

    Finchley Central

    NewSouthgate

    East FinchleyAlexandra Palace

    Hornsey

    Crouch Hill

    Palmers Green

    Cockfosters

    Arnos Grove

    Bowes Park

    Wood Green

    Turnpike Lane

    HarringayGreen Lanes

    ManorHouse

    New Barnet

    Hadley Wood Crews Hill

    Gordon Hill

    EnfieldChase

    Grange Park

    Winchmore Hill

    Bush HillPark

    EnfieldTown

    Turkey Street

    Southbury

    Enfield Lock

    Ponders End

    Angel Road

    EdmontonGreen

    White HartLane

    Bruce Grove

    SouthTottenham

    NorthumberlandPark

    TottenhamHale

    SevenSisters

    StamfordHillFinsbury Park

    Silver Street

    BlackhorseRoad

    Stoke NewingtonSt. JamesStreet

    ClaptonRectory Road

    Highbury & IslingtonHackney

    DownsHackneyCentral

    DalstonKingsland

    London FieldsCambridge Heath

    Bethnal Green

    BethnalGreen

    MileEnd

    Bow Road

    HackneyWick

    Limehouse

    PuddingMillLane

    Bromley-by-Bow

    Catford Bridge

    BeckenhamHill

    New BeckenhamRavensbourne

    Sundridge Park

    BromleyNorth

    BeckenhamJunction

    Elmers End

    Eden ParkWestWickham

    BromleySouth

    Petts Wood

    ChelsfieldKnockholt

    St. Mary Cray

    Sidcup

    ElmsteadWoods

    Grove Park

    NewEltham

    Lee

    Hither Green

    AlbanyPark

    Slade Green

    WoolwichDockyard

    AbbeyWood

    MazeHill

    WestcombePark

    Charlton WoolwichArsenal

    Plumstead

    DagenhamDock

    WestHam East Ham

    ForestGate

    WoodgrangePark

    Manor Park

    LeytonstoneHigh Road

    WansteadPark

    DagenhamHeathway

    Dagenham East

    ElmPark

    SevenKings

    HornchurchLeytonMidlandRoad

    WalthamstowQueen’s Road Leytonstone

    Wanstead GantsHill

    Newbury Park

    WalthamstowCentral

    South Woodford

    ChadwellHeath UpminsterBridge

    EmersonPark

    Gidea Park

    Harold Wood

    GrangeHill

    RodingValley

    Wood Street

    Highams Park

    Buckhurst Hill

    NottingHill Gate

    Denham

    HighWycombe

    Moor Park

    Carpenders Park

    Watford High Street

    Luton

    Radlett

    Slough

    Staines

    Hinchley Wood

    WokingGuildford

    Ewell West

    EwellEast

    Dorking

    Banstead

    Gatwick Airport

    Caterham

    East Grinstead

    Upper Warlingham

    Potters Bar

    WelwynGardenCity

    Cheshunt

    Theobalds Grove

    Stansted Airport

    Waltham Cross

    Dunton Green

    Medway TownsSevenoaks

    GravesendMedway Towns

    Grays

    Purfleet

    Shoeburyness

    WestHorndon

    Shenfield

    Debden

    DevonsRoad

    EastIndia

    MarbleArch

    Queensway

    Theydon BoisLoughton

    WoodLane

    Plaistow

    Upton Park

    RuislipManor

    Eastcote

    Ruislip

    Hemel Hempstead

    Sevenoaks

    West India Quay

    CanadaWater

    SouthEaling

    Hillingdon

    Uxbridge Ickenham

    NorwoodJunction

    Bow Church

    Oakwood

    Southgate

    BoundsGreen

    HertfordNorth

    Cuffley

    Brimsdown Chingford

    Epping

    Chigwell

    AlpertonGreenford

    Perivale

    Brondesbury

    Harringay

    Arsenal

    Canonbury

    Homerton Leyton

    Stratford

    Woodford

    Snaresbrook

    Goodmayes

    Redbridge

    Becontree

    Hainault

    Fairlop

    Barkingside

    Romford

    Upminster

    Brentwood

    Ockendon

    Tilbury

    Iver

    Hammersmith

    Royal OakMarylebone

    Paddington

    Bayswater

    LancasterGate

    HollandPark

    Victoria Westminster

    Embankment

    Blackfriars

    Temple

    Farringdon

    Barbican

    Moorgate

    Bank Aldgate

    Angel

    Shoreditch

    Wapping

    Westferry Blackwall

    Poplar

    All SaintsLangdon

    Park

    MarylandIlford

    Upney

    Barking

    Rainham

    Ashford

    Shepperton

    KemptonPark

    Hampton

    Fulwell

    Whitton

    Teddington

    Twickenham

    Osterley

    Richmond Mortlake

    Barnes

    Waterloo

    Oval Kennington

    Stockwell

    Brixton Brockley

    Deptford

    Blackheath Kidbrooke Falconwood

    Eltham Welling

    Belvedere

    Bexleyheath

    Barnehurst

    Erith

    KingstonBerrylands

    Esher

    Guildford

    Haydons Road

    Tooting

    NorburyStreatham Common

    Carshalton

    Hackbridge

    Sydenham

    Anerley

    Catford

    Ladywell

    Bellingham

    Shortlands

    Bickley

    Mottingham

    Chislehurst

    Orpington

    Bexley

    Crayford

    Dartford

    Swanley

    Tolworth

    Stoneleigh

    Woodmansterne KenleyWhyteleafe

    Riddlesdown

    Sanderstead

    Coombe Lane

    Hayes

    MansionHouse

    Chesham

    Chalfont& Latimer

    Amersham

    Aylesbury Rickmansworth

    Watford

    CroxleyChorleywood

    Bermondsey

    Deptford Bridge

    Elverson Road

    Lewisham

    Cutty Sark for Maritime Greenwich

    Greenwich

    Bus 285 toHeathrow Terminals 1, 2 & 3

    Bus 490 toHeathrow Terminals 4 & 5

    MertonPark

    TherapiaLane

    AmpereWay

    GeorgeStreet

    ChurchStreet

    BeddingtonLane

    WaddonMarsh Wandle

    ParkReevesCorner

    WellesleyRoad

    Mitcham

    LebanonRoad

    Lloyd Park

    Addiscombe

    AvenueRoad

    Belgrave Walk

    Phipps Bridge

    Morden Road

    Sandilands

    WoodsideArena

    HarringtonRoad

    BlackhorseLane

    BeckenhamRoad

    Addington VillageKing Henry’s Drive

    New Addington

    Gravel HillFieldway

    Purley

    Clock House

    DundonaldRoad

    KewBridge

    Gunnersbury

    Epsom

    HattonCross

    TramlinkTravelcards valid in

    Zones 3, or 4, or 5, or 6 (orcombination of these Zones)

    and Bus & Tram Passes areavailable on Tramlink

    throughout the grey area

    Isleworth

    Syon Lane

    Brentford

    Streatham

    StreathamHill

    Kenton

    Barnes Bridge

    WandsworthCommon

    Sudbury &Harrow Road

    KensalGreen

    Sudbury HillHarrow

    Sudbury Hill

    SudburyTown

    KilburnHigh Road

    SouthHampstead

    Beckton

    CanningTown

    WestSilvertown

    PontoonDock

    London CityAirport

    King George V

    Prince RegentRoyal Albert

    Beckton Park

    Royal Victoria

    Cyprus

    Custom House for ExCeL

    Gallions Reach

    Travelcards are notvalid on HeathrowConnect between

    Hayes & Harlingtonand Heathrow

    and on HeathrowExpress

    Centrale

    Woldingham

    WhyteleafeSouth

    Merstham

    TattenhamCorner

    ChipsteadKingswood

    Tadworth

    EpsomDowns

    Whitechapel

    Willesden Junction

    ThorntonHeath

    Selhurst

    Wallington

    Chiswick

    Hounslow

    MitchamEastfields

    ELW

    ELW

    225

    Terminal 4

    Terminals1, 2, 3

    Terminal 5

    Underground station closed until late 2011

    Shepherd’sBush

    381/N381

    The routes shown on this map are a guide toweekday, off-peak services but do not guaranteedirect trains between the stations shown.

    Some stations and lines have restricted opening times.

    South QuayCrossharbour

    MudchuteIsland Gardens

    Canary Wharf

    Heron Quays

    Improvement works may affect your journey,particularly at weekends.Check before you travel; look for publicityat stations, visit tfl.gov.uk/checkor call 020 7222 1234

    Watford Junction is outside Transport for London zonalarea. Special fares apply.

    East London line is closedfor major line extension work to become part of the London Overground network.

    HeathrowAirport

    NorthGreenwich

    Performance hängt von Anzahl nichtdominierter Routen ab.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 19 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • Andere Kriterien: Übersicht

    Mögliche ErweiterungenIntervallanfragen (Profil-Anfragen),Flexible Abfahrtszeiten.

    Tarifzonen,Längere Routen könnten billiger sein.

    Umstiegssicherheit,Routen könnten knappe Umstiege haben.

    . . .

    2 3 4 5 6

    7 889

    112

    2

    3

    4

    56

    2

    3

    4

    56

    3456

    River Thames

    River Thames

    Station outsidethe zones

    Station in Zone 5

    Station in Zone 4

    Station in Zone 3

    Station in Zone 2Station in both zones

    Station in Zone 1

    Revised September 2009

    Travelcard Zones

    6

    5

    4

    3

    2

    1

    Station in both zones

    Station in both zones

    Station in both zones

    Station in Zone 6

    Station in Zone 77

    Station in Zone 88

    Station in Zone 99

    Bakerloo

    Central

    Circle

    District

    InterchangeStationStationKey to lines

    Replacement bus services

    London Overground

    Hammersmith & City

    Metropolitan

    Northern

    Victoria

    DLR

    Jubilee

    National Rail

    London Tramlink

    Piccadilly

    Waterloo & City

    Smitham

    Southwark

    NorthwoodNorthwoodHills

    North HarrowHarrow-on-the-Hill NorthwickPark

    Harrow & Wealdstone

    Watford Junction

    Bushey

    Headstone Lane

    Pinner

    Stanmore

    Canons Park

    Queensbury

    Preston Road

    Edgware

    Burnt Oak

    ColindaleKingsbury

    WembleyPark Hendon

    NeasdenDollis Hill

    WillesdenGreen

    Kilburn

    Hatch End

    Elstree & Borehamwood

    Mill Hill Broadway Mill Hill East

    Hendon Central

    Brent CrossGolders Green

    HampsteadCricklewoodHampstead Heath

    Gospel Oak

    Kentish Town West

    West Ruislip

    RuislipGardens

    South Ruislip

    RaynersLane

    South Harrow

    NortholtPark

    West Harrow

    Northolt

    South Kenton

    North Wembley WembleyStadium

    StonebridgePark

    Harlesden

    SouthGreenford

    Castle BarPark

    DraytonGreen

    WestDrayton

    Hayes &Harlington

    Southall

    Hanwell WestEaling

    EalingBroadway

    North Ealing

    Boston ManorHounslow

    East

    HounslowWest HounslowCentral

    NorthfieldsChiswick

    Park

    ActonTown

    SouthActon

    ActonMain Line

    WestActon

    St. Margarets

    KewGardens

    Feltham

    StrawberryHill

    Hampton Wick

    HamptonCourt

    ThamesDitton

    Surbiton

    ChessingtonSouth

    ChessingtonNorth

    Brondesbury Park

    Kensal Rise

    Queen’sPark

    WembleyCentral

    EdgwareRoad

    Kilburn ParkMaida Vale

    Warwick Avenue

    WestbournePark

    Ladbroke Grove

    EdgwareRoad

    NorthActon

    EastActon

    Latimer RoadPark Royal

    HangerLane

    EalingCommon

    WhiteCity

    Shepherd’sBush Market

    Goldhawk Road

    ActonCentral

    BaronsCourt

    Kensington(Olympia)

    WestKensington

    RavenscourtPark

    StamfordBrook

    TurnhamGreen

    NorthSheen

    Parsons Green

    Putney Bridge

    East PutneyPutney

    Wimbledon Park

    Southfields

    Wimbledon

    Raynes Park

    New MaldenNorbiton

    CheamBelmont

    Sutton

    West Sutton

    Sutton Common

    St. Helier

    WorcesterPark

    MaldenManor

    SouthMerton

    MordenSouth

    Morden

    MotspurPark

    WimbledonChase

    South Wimbledon

    ColliersWood

    Earlsfield

    WandsworthTown

    TootingBec

    Tooting Broadway

    BalhamClapham South

    ClaphamCommon

    Clapham North

    ClaphamHigh Street

    WandsworthRoadClapham Junction

    QueenstownRoad

    BatterseaPark

    Fulham Broadway

    WestBrompton

    Pimlico

    SouthKensington

    Earl’sCourt

    SloaneSquare

    GloucesterRoad

    Knightsbridge

    High StreetKensington

    Hyde ParkCorner

    GreenPark

    High Barnet

    Finchley Road& Frognal

    Belsize Park

    West HampsteadChalk Farm

    Camden Town

    Finchley Road

    Kentish Town

    Swiss Cottage

    St. John’s Wood

    MorningtonCrescent

    CamdenRoad

    ImperialWharf

    BakerStreet

    GreatPortland

    StreetEuston

    WarrenStreetRegent’s

    Park

    OxfordCircus

    BondStreet

    TottenhamCourt Road

    EustonSquare

    GoodgeStreet

    Holborn

    RussellSquare

    ChanceryLane

    PiccadillyCircus

    CityThameslinkCovent

    Garden

    LeicesterSquareCharingCross

    St. James’sPark

    LambethNorth

    Vauxhall

    Borough

    LondonBridge

    Elephant& Castle

    South Bermondsey

    LoughboroughJunction Denmark Hill Nunhead

    East Dulwich

    Peckham Rye

    Herne Hill

    Tulse Hill

    North Dulwich

    West Dulwich

    MitchamJunction

    West Croydon

    CarshaltonBeeches

    Waddon

    ReedhamCoulsdon South

    Purley Oaks

    SouthCroydon

    EastCroydon

    WestNorwood

    GipsyHill

    CrystalPalace

    Birkbeck

    PengeWest

    Kent HousePenge East

    Lower Sydenham

    Forest HillHonor Oak Park

    Crofton Park

    New Cross Gate

    Sydenham Hill

    New CrossQueens RoadPeckham

    St. Johns

    Surrey Quays

    Rotherhithe

    Cannon Street

    FenchurchStreet

    TowerGateway

    TowerHill

    Monument

    AldgateEast

    St. Paul’s

    Shadwell

    StepneyGreen

    Old Street

    Essex Road

    King’s CrossSt. Pancras International

    LiverpoolStreet

    CaledonianRoad &

    Barnsbury

    CaledonianRoad

    HollowayRoad

    Upper Holloway

    DraytonPark

    Tufnell Park

    Archway

    Highgate

    Totteridge &Whetstone

    OakleighPark

    Woodside Park

    West Finchley

    Finchley Central

    NewSouthgate

    East FinchleyAlexandra Palace

    Hornsey

    Crouch Hill

    Palmers Green

    Cockfosters

    Arnos Grove

    Bowes Park

    Wood Green

    Turnpike Lane

    HarringayGreen Lanes

    ManorHouse

    New Barnet

    Hadley Wood Crews Hill

    Gordon Hill

    EnfieldChase

    Grange Park

    Winchmore Hill

    Bush HillPark

    EnfieldTown

    Turkey Street

    Southbury

    Enfield Lock

    Ponders End

    Angel Road

    EdmontonGreen

    White HartLane

    Bruce Grove

    SouthTottenham

    NorthumberlandPark

    TottenhamHale

    SevenSisters

    StamfordHillFinsbury Park

    Silver Street

    BlackhorseRoad

    Stoke NewingtonSt. JamesStreet

    ClaptonRectory Road

    Highbury & IslingtonHackney

    DownsHackneyCentral

    DalstonKingsland

    London FieldsCambridge Heath

    Bethnal Green

    BethnalGreen

    MileEnd

    Bow Road

    HackneyWick

    Limehouse

    PuddingMillLane

    Bromley-by-Bow

    Catford Bridge

    BeckenhamHill

    New BeckenhamRavensbourne

    Sundridge Park

    BromleyNorth

    BeckenhamJunction

    Elmers End

    Eden ParkWestWickham

    BromleySouth

    Petts Wood

    ChelsfieldKnockholt

    St. Mary Cray

    Sidcup

    ElmsteadWoods

    Grove Park

    NewEltham

    Lee

    Hither Green

    AlbanyPark

    Slade Green

    WoolwichDockyard

    AbbeyWood

    MazeHill

    WestcombePark

    Charlton WoolwichArsenal

    Plumstead

    DagenhamDock

    WestHam East Ham

    ForestGate

    WoodgrangePark

    Manor Park

    LeytonstoneHigh Road

    WansteadPark

    DagenhamHeathway

    Dagenham East

    ElmPark

    SevenKings

    HornchurchLeytonMidlandRoad

    WalthamstowQueen’s Road Leytonstone

    Wanstead GantsHill

    Newbury Park

    WalthamstowCentral

    South Woodford

    ChadwellHeath UpminsterBridge

    EmersonPark

    Gidea Park

    Harold Wood

    GrangeHill

    RodingValley

    Wood Street

    Highams Park

    Buckhurst Hill

    NottingHill Gate

    Denham

    HighWycombe

    Moor Park

    Carpenders Park

    Watford High Street

    Luton

    Radlett

    Slough

    Staines

    Hinchley Wood

    WokingGuildford

    Ewell West

    EwellEast

    Dorking

    Banstead

    Gatwick Airport

    Caterham

    East Grinstead

    Upper Warlingham

    Potters Bar

    WelwynGardenCity

    Cheshunt

    Theobalds Grove

    Stansted Airport

    Waltham Cross

    Dunton Green

    Medway TownsSevenoaks

    GravesendMedway Towns

    Grays

    Purfleet

    Shoeburyness

    WestHorndon

    Shenfield

    Debden

    DevonsRoad

    EastIndia

    MarbleArch

    Queensway

    Theydon BoisLoughton

    WoodLane

    Plaistow

    Upton Park

    RuislipManor

    Eastcote

    Ruislip

    Hemel Hempstead

    Sevenoaks

    West India Quay

    CanadaWater

    SouthEaling

    Hillingdon

    Uxbridge Ickenham

    NorwoodJunction

    Bow Church

    Oakwood

    Southgate

    BoundsGreen

    HertfordNorth

    Cuffley

    Brimsdown Chingford

    Epping

    Chigwell

    AlpertonGreenford

    Perivale

    Brondesbury

    Harringay

    Arsenal

    Canonbury

    Homerton Leyton

    Stratford

    Woodford

    Snaresbrook

    Goodmayes

    Redbridge

    Becontree

    Hainault

    Fairlop

    Barkingside

    Romford

    Upminster

    Brentwood

    Ockendon

    Tilbury

    Iver

    Hammersmith

    Royal OakMarylebone

    Paddington

    Bayswater

    LancasterGate

    HollandPark

    Victoria Westminster

    Embankment

    Blackfriars

    Temple

    Farringdon

    Barbican

    Moorgate

    Bank Aldgate

    Angel

    Shoreditch

    Wapping

    Westferry Blackwall

    Poplar

    All SaintsLangdon

    Park

    MarylandIlford

    Upney

    Barking

    Rainham

    Ashford

    Shepperton

    KemptonPark

    Hampton

    Fulwell

    Whitton

    Teddington

    Twickenham

    Osterley

    Richmond Mortlake

    Barnes

    Waterloo

    Oval Kennington

    Stockwell

    Brixton Brockley

    Deptford

    Blackheath Kidbrooke Falconwood

    Eltham Welling

    Belvedere

    Bexleyheath

    Barnehurst

    Erith

    KingstonBerrylands

    Esher

    Guildford

    Haydons Road

    Tooting

    NorburyStreatham Common

    Carshalton

    Hackbridge

    Sydenham

    Anerley

    Catford

    Ladywell

    Bellingham

    Shortlands

    Bickley

    Mottingham

    Chislehurst

    Orpington

    Bexley

    Crayford

    Dartford

    Swanley

    Tolworth

    Stoneleigh

    Woodmansterne KenleyWhyteleafe

    Riddlesdown

    Sanderstead

    Coombe Lane

    Hayes

    MansionHouse

    Chesham

    Chalfont& Latimer

    Amersham

    Aylesbury Rickmansworth

    Watford

    CroxleyChorleywood

    Bermondsey

    Deptford Bridge

    Elverson Road

    Lewisham

    Cutty Sark for Maritime Greenwich

    Greenwich

    Bus 285 toHeathrow Terminals 1, 2 & 3

    Bus 490 toHeathrow Terminals 4 & 5

    MertonPark

    TherapiaLane

    AmpereWay

    GeorgeStreet

    ChurchStreet

    BeddingtonLane

    WaddonMarsh Wandle

    ParkReevesCorner

    WellesleyRoad

    Mitcham

    LebanonRoad

    Lloyd Park

    Addiscombe

    AvenueRoad

    Belgrave Walk

    Phipps Bridge

    Morden Road

    Sandilands

    WoodsideArena

    HarringtonRoad

    BlackhorseLane

    BeckenhamRoad

    Addington VillageKing Henry’s Drive

    New Addington

    Gravel HillFieldway

    Purley

    Clock House

    DundonaldRoad

    KewBridge

    Gunnersbury

    Epsom

    HattonCross

    TramlinkTravelcards valid in

    Zones 3, or 4, or 5, or 6 (orcombination of these Zones)

    and Bus & Tram Passes areavailable on Tramlink

    throughout the grey area

    Isleworth

    Syon Lane

    Brentford

    Streatham

    StreathamHill

    Kenton

    Barnes Bridge

    WandsworthCommon

    Sudbury &Harrow Road

    KensalGreen

    Sudbury HillHarrow

    Sudbury Hill

    SudburyTown

    KilburnHigh Road

    SouthHampstead

    Beckton

    CanningTown

    WestSilvertown

    PontoonDock

    London CityAirport

    King George V

    Prince RegentRoyal Albert

    Beckton Park

    Royal Victoria

    Cyprus

    Custom House for ExCeL

    Gallions Reach

    Travelcards are notvalid on HeathrowConnect between

    Hayes & Harlingtonand Heathrow

    and on HeathrowExpress

    Centrale

    Woldingham

    WhyteleafeSouth

    Merstham

    TattenhamCorner

    ChipsteadKingswood

    Tadworth

    EpsomDowns

    Whitechapel

    Willesden Junction

    ThorntonHeath

    Selhurst

    Wallington

    Chiswick

    Hounslow

    MitchamEastfields

    ELW

    ELW

    225

    Terminal 4

    Terminals1, 2, 3

    Terminal 5

    Underground station closed until late 2011

    Shepherd’sBush

    381/N381

    The routes shown on this map are a guide toweekday, off-peak services but do not guaranteedirect trains between the stations shown.

    Some stations and lines have restricted opening times.

    South QuayCrossharbour

    MudchuteIsland Gardens

    Canary Wharf

    Heron Quays

    Improvement works may affect your journey,particularly at weekends.Check before you travel; look for publicityat stations, visit tfl.gov.uk/checkor call 020 7222 1234

    Watford Junction is outside Transport for London zonalarea. Special fares apply.

    East London line is closedfor major line extension work to become part of the London Overground network.

    HeathrowAirport

    NorthGreenwich

    Performance hängt von Anzahl nichtdominierter Routen ab.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 19 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • More Criteria: McRAPTOR

    Ziel: Erweitern von RAPTOR auf zusätzliche Kriterien.

    Arrive 10:00, £ 5

    Arrive 10:15, £ 2s t

    Ansatz

    Labels haven Wert für jedes zusätzliche Kriterium.Mehrere nichtdominierte Labels pro Stop und Runde.Mehrere aktive Trips beim Scannen von Routen.Lösche dominierte Labels on-the-fly.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 20 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • More Criteria: McRAPTOR

    Ziel: Erweitern von RAPTOR auf zusätzliche Kriterien.

    Arrive 10:00, £ 5

    Arrive 10:15, £ 2s t

    Ansatz

    Labels haven Wert für jedes zusätzliche Kriterium.Mehrere nichtdominierte Labels pro Stop und Runde.Mehrere aktive Trips beim Scannen von Routen.Lösche dominierte Labels on-the-fly.

    Thomas Pajor – Algorithmen für RoutenplanungFolie 20 – 1. Juli 2013

    Institut für Theoretische InformatikLehrstuhl Algorithmik

  • McRAPTOR Beispiel: Tarifzonen

    2 3 4 5 6

    7 889

    112

    2

    3

    4

    56

    2

    3

    4

    56

    3456

    River Thames

    River Thames

    Station outsidethe zones

    Station in Zone 5

    Station in Zone 4

    Station in Zone 3

    Station in Zone 2Station in both zones

    Station in Zone 1

    Revised September 2009

    Travelcard Zones

    6

    5

    4

    3

    2

    1

    Station in both zones

    Station in both zones

    Station in both zones

    Station in Zone 6

    Station in Zone 77

    Station in Zone 88

    Station in Zone 99

    Bakerloo

    Central

    Circle

    District

    InterchangeStationStationKey to lines

    Replacement bus services

    London Overground

    Hammersmith & City

    Metropolitan

    Northern

    Victoria

    DLR

    Jubilee

    National Rail

    London Tramlink

    Piccadilly

    Waterloo & City

    Smitham

    Southwark

    NorthwoodNorthwoodHills

    North HarrowHarrow-on-the-Hill NorthwickPark

    Harrow & Wealdstone

    Watford Junction

    Bushey

    Headstone Lane

    Pinner

    Stanmore

    Canons Park

    Queensbury

    Preston Road

    Edgware

    Burnt Oak

    ColindaleKingsbury

    WembleyPark Hendon

    NeasdenDollis Hill

    WillesdenGreen

    Kilburn

    Hatch End

    Elstree & Borehamwood

    Mill Hill Broadway Mill Hill East

    Hendon Central

    Brent CrossGolders Green

    HampsteadCricklewoodHampstead Heath

    Gospel Oak

    Kentish Town West

    West Ruislip

    RuislipGardens

    South Ruislip

    RaynersLane

    South Harrow

    NortholtPark

    West Harrow

    Northolt

    South Kenton

    North Wembley WembleyStadium

    StonebridgePark

    Harlesden

    SouthGreenford

    Castle BarPark

    DraytonGreen

    WestDrayton

    Hayes &Harlington

    Southall

    Hanwell WestEaling

    EalingBroadway

    North Ealing

    Boston ManorHounslow

    East

    HounslowWest HounslowCentral

    NorthfieldsChiswick

    Park

    ActonTown

    SouthActon

    ActonMain Line

    WestActon

    St. Margarets

    KewGardens

    Feltham

    StrawberryHill

    Hampton Wick

    HamptonCourt

    ThamesDitton

    Surbiton

    ChessingtonSouth

    ChessingtonNorth

    Brondesbury Park

    Kensal Rise

    Queen’sPark

    WembleyCentral

    EdgwareRoad

    Kilburn ParkMaida Vale

    Warwick Avenue

    WestbournePark

    Ladbroke Grove

    EdgwareRoad

    NorthActon

    EastActon

    Latimer RoadPark Royal

    HangerLane

    EalingCommon

    WhiteCity

    Shepherd’sBush Market

    Goldhawk Road

    ActonCentral

    BaronsCourt

    Kensington(Olympia)

    WestKensington

    RavenscourtPark

    StamfordBrook

    TurnhamGreen

    NorthSheen

    Parsons Green

    Putney Bridge

    East PutneyPutney

    Wimbledon Park

    Southfields

    Wimbledon

    Raynes Park

    New MaldenNorbiton

    CheamBelmont

    Sutton

    West Sutton

    Sutton Common

    St. Helier

    WorcesterPark

    MaldenManor

    SouthMerton

    MordenSouth

    Morden

    MotspurPark

    WimbledonChase

    South Wimbledon

    ColliersWood

    Earlsfield

    WandsworthTown

    TootingBec

    Tooting Broadway

    BalhamClapham South

    ClaphamCommon

    Clapham North

    ClaphamHigh Street

    WandsworthRoadClapham Junction

    QueenstownRoad

    BatterseaPark

    Fulham Broadway

    WestBrompton

    Pimlico

    SouthKensington

    Earl’sCourt

    SloaneSquare

    GloucesterRoad

    Knightsbridge

    High StreetKensington

    Hyde ParkCorner

    GreenPark

    High Barnet

    Finchley Road& Frognal

    Belsize Park

    West HampsteadChalk Farm

    Camden Town

    Finchley Road

    Kentish Town

    Swiss Cottage

    St. John’s Wood

    MorningtonCrescent

    CamdenRoad

    ImperialWharf

    BakerStreet

    GreatPortland

    StreetEuston

    WarrenStreetRegent’s

    Park

    OxfordCircus

    BondStreet

    TottenhamCourt Road

    EustonSquare

    GoodgeStreet

    Holborn

    RussellSquare

    ChanceryLane

    PiccadillyCircus

    CityThameslinkCovent

    Garden

    LeicesterSquareCharingCross

    St. James’sPark

    LambethNorth

    Vauxhall

    Borough

    LondonBridge

    Elephant& Castle

    South Bermondsey

    LoughboroughJunction Denmark Hill Nunhead

    East Dulwich

    Peckham Rye

    Herne Hill

    Tulse Hill

    North Dulwich

    West Dulwich

    MitchamJunction

    West Croydon

    CarshaltonBeeches

    Waddon

    ReedhamCoulsdon South

    Purley Oaks

    SouthCroydon

    EastCroydon

    WestNorwood

    GipsyHill

    CrystalPalace

    Birkbeck

    PengeWest

    Kent HousePenge East

    Lower Sydenham

    Forest HillHonor Oak Park

    Crofton Park

    New Cross Gate

    Sydenham Hill

    New CrossQueens RoadPeckham

    St. Johns

    Surrey Quays

    Rotherhithe

    Cannon Street

    FenchurchStreet

    TowerGateway

    TowerHill

    Monument

    AldgateEast

    St. Paul’s

    Shadwell

    StepneyGreen

    Old Street

    Essex Road

    King’s CrossSt. Pancras International

    LiverpoolStreet

    CaledonianRoad &

    Barnsbury

    CaledonianRoad

    HollowayRoad

    Upper Holloway

    DraytonPark

    Tufnell Park