Der Taktfahrplan verständlich erklärt
Wer umsteigt, wartet am Bahnhof manchmal drei Minuten und manchmal fast eine Stunde, obwohl alle Züge pünktlich fahren. Warum selbst ein guter Fahrplan nicht jeden Anschluss kurz machen kann, zeigt diese Seite: erst anschaulich, dann für Fachleute mit Modell, Formeln und Messwerten.
Zuletzt aktualisiert:
Ein Wort unbekannt? Das Begriffsverzeichnis erklärt es in wenigen Sätzen.
Morgens kurz, abends lang
Stellen Sie sich vor, Sie wohnen in einem Dorf und arbeiten in der Stadt. Einen direkten Zug gibt es nicht. Sie fahren mit der Linie A zum Knotenbahnhof und steigen dort in die Linie B um. Eine Linie ist eine feste Strecke, die Züge immer wieder hin und zurück fahren. Nehmen wir an, morgens fährt B 5 Minuten nach Ihrer Ankunft ab. Abends kehren Sie um: B bringt Sie zum Knotenbahnhof zurück, und die Linie A nach Hause fährt erst in 25 Minuten.
Das ist kein Fehler der Bahn. Die Linien fahren im Takt: Jede Linie fährt in beide Richtungen jede Stunde zur selben Minute ab. So merkt man sich den Fahrplan leicht. Frei wählbar ist nur noch die Startminute jeder Linie.
Von dieser Wahl hängt ab, wie lange Umsteiger warten. Die Wartezeit zählt von der Ankunft in der einen Linie bis zur Abfahrt der anderen. Wir rechnen mit mindestens drei Minuten, damit man den Bahnsteig wechseln kann. Ideal wären also drei Minuten an jedem Umstieg.
Warum Hin und Zurück zusammenhängen
Das Beispiel geht weiter. Wir lassen die Linie B zehn Minuten später starten. Morgens kommt A unverändert an, aber B fährt zehn Minuten später ab. Ihre Wartezeit wächst von 5 auf 15 Minuten. Abends kommt B zehn Minuten später am Knotenbahnhof an, doch A fährt unverändert ab. Ihre Wartezeit schrumpft von 25 auf 15 Minuten.
Zusammen sind es nachher wieder eine halbe Stunde, genau wie vorher. Ein Zug fährt eine feste Runde: bis zum Ende der Strecke, dort eine Weile stehen, zurück. Wie lange die Runde dauert, legen Fahrzeiten und Standzeit fest. Verschiebt man die Linie B, kommt sie auf dem Hinweg und auf dem Rückweg gleich viel später. Was die eine Wartezeit gewinnt, verliert die andere.
Dazu kommt ein Haken. Schiebt man B noch weiter, wird die Wartezeit am Abend kürzer als die Mindestzeit. Man verpasst den Anschluss knapp und wartet eine volle Stunde oder etwas mehr. Beide Wartezeiten zusammen sind dann eine Stunde länger. Es gibt also nur zwei mögliche Summen: eine kleinste und diese plus eine Stunde. Die kleinste Summe gilt bei rund der Hälfte aller Startminuten (Messung im zweiten Teil). Wie klein sie ist, bestimmen Fahrzeiten, Halte und Standzeiten, nicht die Wahl der Startminuten.
Ein Rechenbild mit erfundenen Netzen
Wie stark wirkt das? Dazu dient ein vereinfachtes Rechenbild (Fachwort: Modell) mit erfundenen Bahnnetzen: zwanzig Haltestellen, drei bis zehn Linien. Ein Computer wählt die Startminuten und misst die mittlere Wartezeit der Umsteiger, für 150 Netze. Die Zahlen unten gelten für Netze mit sechs Linien. Die Aussagen in diesem Teil beschreiben das Rechenbild, nicht die Wirklichkeit.
Als Vergleich dienen gewürfelte Startminuten. Dann ist jede Wartezeit von drei Minuten bis gut einer Stunde gleich wahrscheinlich, der Mittelwert liegt bei gut einer halben Stunde. Sucht der Computer die besten Startminuten, die er finden kann, sinkt die mittlere Wartezeit auf 24 Minuten. Das ist besser, aber weit von den idealen drei Minuten entfernt.
Der Grund ist die Kopplung von Hin- und Rückweg. Beim besten Takt bleibt die Wartezeit über den drei Mindestminuten stehen. Von diesem Überschuss lassen sich über alle 150 Netze im Mittel 73 % nicht durch bessere Startminuten abbauen, solange jeder Zug an beiden Enden etwa gleich lange steht.
Die Standzeit als Stellschraube
Jede Runde eines Zuges muss ein Vielfaches einer Stunde dauern, sonst käme der Zug nicht jede Stunde zur selben Minute wieder am selben Ort an. Fahren und Halten füllen aber nicht genau volle Stunden. Der Rest ist Standzeit an den beiden Enden der Strecke, mindestens vier Minuten je Ende. Diesen Rest darf der Fahrplaner frei verteilen: mal steht der Zug hinten länger, mal vorn.
Steht der Zug am Ende hinter dem Knotenbahnhof länger und am anderen Ende kürzer, bleibt die Runde gleich lang, und es braucht keinen zusätzlichen Zug. Aber auf dem Rückweg erreicht er den Knotenbahnhof später als zuvor. Damit sind Hin- und Rückwartezeit nicht mehr starr gekoppelt. Im Rechenbild sinkt die mittlere Wartezeit so auf 19 Minuten. Über alle 150 Netze gerechnet wird sie im Mittel um gut fünf Minuten kürzer, und das gelang in jedem einzelnen Netz.
Zusatzzug und Mindestabstand
Setzt man auf einer Linie einen Zusatzzug ein, darf die Runde eine Stunde länger dauern, denn der zusätzliche Zug füllt die Lücke im Stundentakt. Diese Stunde darf an den Enden stehen, und die Ankunftsminute am Knotenbahnhof lässt sich frei wählen. Dürfen alle Linien einen Zusatzzug einsetzen, sinkt die mittlere Wartezeit auf 16 Minuten. Ab vier Linien mit Zusatzzug bringt jede weitere im Mittel nur noch Sekunden.
Auch ein Mindestabstand kostet etwas. Fahren zwei Linien über dasselbe Gleisstück, dürfen ihre Züge dort nicht zu dicht aufeinander folgen. Verlangt man vier Minuten, fallen manche günstigen Fahrpläne weg. Gegenüber dem Fahrplan mit frei verteilter Standzeit steigt die Wartezeit im Mittel um gut eine Minute, bei zehn Linien stärker als bei drei, denn mehr Linien teilen sich mehr Gleisstücke.
Häufige Missverständnisse
- „Mehr Linien machen den Takt schwerer.“ Im Rechenbild wartet man beim besten Takt ähnlich lang, ob das Netz drei oder zehn Linien hat: rund 24 Minuten. Eine Deutung: Die Kopplung gilt für jeden Anschluss einzeln. Neue Linien bringen neue Anschlüsse, aber keinen neuen Zwang.
- „Ein besserer Rechner findet einen viel besseren Fahrplan.“ Eine einfache Methode plant die Linien nacheinander ein und gibt jeder die beste Startminute zu den schon geplanten. Sie landet im Mittel weniger als eine Minute über dem besten gefundenen Takt. Die Grenze steckt in der Kopplung, nicht in der Suche.
- „Der Takt bestimmt, wie lange alle Fahrgäste warten.“ Er betrifft nur Umsteiger. Im Rechenbild steigen je Netz 6 bis 21 % der Fahrgäste um. Wer direkt fährt, steigt nirgends um.
Woran Sie das im Alltag erkennen
- Auf dem Hinweg klappt der Anschluss fast sofort, auf dem Rückweg warten Sie lange, oder umgekehrt. Beide Wege hängen am selben Fahrplan.
- Sie verpassen einen Anschluss um eine Minute und warten fast eine Stunde. Fährt die Linie nur stündlich, liegt dazwischen kein Zug.
Wie ernst ist das Rechenbild zu nehmen?
Die Netze sind erfunden und klein, und die Nachfrage ist für den ganzen Tag gleich angenommen. Die Zahlen zeigen Richtung und Größenordnung, keine Minutenwerte eines echten Netzes.
Was Sie mitnehmen
- Fragen Sie bei jedem Fahrplan nach Hin- und Rückweg, nicht nur nach einem.
- Fragen Sie bei jeder Verbesserung, wohin die gesparte Zeit gewandert ist.
- Eine feste Kopplung lässt sich nur lockern, indem man eine andere Stellschraube freigibt, hier die Standzeit oder einen Zusatzzug.
Zu dieser Seite gehört ein Programm zum Ausprobieren im Browser, die Demo. Sie erreichen es über den ersten Knopf unten. Zum Verstehen brauchen Sie es nicht. Der zweite Knopf führt zum zweiten Teil für Fachleute.
Hinweis: Alle Demos rechnen mit synthetischen oder frei verfügbaren Beispieldaten und laufen auf einem externen Anbieter (Datenschutz). Bitte geben Sie darin keine vertraulichen oder personenbezogenen Daten ein. Die Ergebnisse gelten für die jeweilige Demo-Instanz und lassen sich nicht ungeprüft auf reale Fälle übertragen; für darauf gestützte Entscheidungen übernehme ich keine Gewähr.
Modell und Annahmen
Dieser Teil ist eigenständig lesbar. Er beschreibt ein Rechenmodell des Taktfahrplans (Periodic Event Scheduling Problem, PESP; Serafini und Ukovich 1989) auf erfundenen Netzen. Gewählt werden die Abfahrtsminuten der Linien, die Verteilung ihrer Standzeit und optional Zusatzzüge. Gemessen wird die mittlere Umsteigezeit, also die Wartezeit der Umsteiger einschließlich der Mindestzeit.
- Netz: 20 Haltestellen auf einem Raster von 100 × 100, symmetrische ganzzahlige Nachfrage mit zwei Hubs, 3 bis 10 Linien aus einer Nachfrage-Greedy-Konstruktion (Konstruktionsheuristik der transit-demo, siehe Verweise; einfache Pfade, höchstens 6 Halte, in beide Richtungen befahren). Alles ist ganzzahlig mit dem Generator SplitMix64 erzeugt.
- Takt und Zeiten: Takt \(T = 60\) min, jede Linie fährt in jede Richtung einmal je \(T\). Die Fahrzeit eines Abschnitts ist seine Entfernung geteilt durch 5, mindestens 2 min; ein Halt dauert 2 min; die Standzeit an einem Endpunkt beträgt mindestens 4 min. Der Zyklus (Hin, Wende, Rück, Wende) muss ein Vielfaches von \(T\) sein. Der dafür nötige Schlupf (der Rest bis zum nächsten Vielfachen) kommt zur Standzeit hinzu, höchstens 59 min je Ende. Mit einem Zusatzzug wächst der Schlupf um \(T\), und ein Ende kann bis zu \(T - 1\) min Schlupf erhalten, also Standzeit bis \(4 + T - 1\) wie in den Schranken unten. Die Phase einer Linie ist die Minute ihrer ersten Abfahrt.
- Umsteiger: Für jedes Haltestellenpaar ohne Direktlinie zählt die Route mit der kürzesten Fahrzeit über genau einen Umstieg; die Nachfrage verteilt sich je zur Hälfte auf beide Richtungen, die Rückrichtung ist also per Konstruktion die gespiegelte Route, und jeder Umstieg hat einen gegenläufigen Partner gleichen Gewichts. Die Umsteigezeit ist die Mindestzeit 3 min plus die Wartezeit modulo 60. Nur 6 bis 21 % der Nachfrage je Netz steigt um, und nur auf diesen Teil wirkt der Takt.
- Zielgröße: die nachfragegewichtete mittlere Umsteigezeit; ideal wären 3 min.
- Stufen auf demselben Netz, mit wachsender Freiheit: alle Linien zur vollen Stunde (Phase 0); zufällige Phasen (Mittel über 300 Ziehungen); Greedy (Linien nach Umsteigegewicht einplanen, jede mit der besten Phase zu den bereits eingeplanten); Phasen optimiert (Lokalsuche, 20 Neustarts; ihr bester Fund heißt hier Phasen-Optimum, bewiesen ist die Optimalität nicht überall); dazu die Verteilung der Standzeit (Lokalsuche über Phase und Schlupfaufteilung je Linie, 40 Neustarts, gleiche Zugzahl); dazu Zusatzzug (Erlaubnis für eine wählbare Zahl von Linien; die Kurve erlaubt Schritt für Schritt einer Linie mehr einen Zusatzzug, jeweils der mit dem größten Gewinn, und startet von der Lösung des vorigen Schritts). Als Standard gilt, dass der Schlupf je zur Hälfte auf beide Enden fällt (bei ungeradem Schlupf abgerundet).
- Suche: Koordinatenabstieg. Linie für Linie wird die beste Kombination aus Phase und Schlupfaufteilung bei festen anderen Linien gewählt.
- Mindest-Zugfolge: Die Abfahrten zweier Linien auf demselben gerichteten Abschnitt liegen modulo \(T\) mindestens \(h\) auseinander, mit \(h\) = 3, 4 oder 5 min. Die Bedingung geht als sehr großer fester Strafbetrag je verletztem Abschnittspaar in die Suche ein; mit Bedingung wurde überall ein zulässiger Fahrplan gefunden (siehe Befunde).
- Exaktes Vergleichsmodell: dasselbe Modell mit allen Aktivitäten im CP-SAT-Löser von OR-Tools, wahlweise mit Haltezeit-Spielraum (1 bis 3 min statt fest 2) und Zusatzzug. Es liefert einen Fund, eine Schranke und einen Status; Zeitlimit 20 s.
- Messreihe: 30 Netze je Linienzahl 3, 5, 6, 8 und 10, zusammen 150 Netze. Dazu der CP-SAT-Vergleich auf 12 Netzen mit 6 Linien, die Haltezeit-Reihe auf 15 Netzen, das Rauschen der Lokalsuche an 30 Netzen mit je 5 Läufen und die Prüfung der Kopplung an 398 Hin/Rück-Paaren.
Die Formeln
Ereignisse \(i\) (Ankunft oder Abfahrt an einer Haltestelle in einer Richtung) haben einen Zeitpunkt \(\pi_i \in [0, T)\). Eine Aktivität \(a = (i, j)\) hat die Spannung \(x_a\), also ihre tatsächliche Dauer, mit einer ganzen Zahl \(p_a\), die zählt, wie viele Takte zwischen den Ereignissen liegen:
\[x_a = \pi_j - \pi_i + T\,p_a \in [\ell_a, u_a]\]
Die Schranken hängen von der Art der Aktivität ab. Fahrt: \(\ell = u\) = Fahrzeit. Halt: \([2, 2]\), im exakten Modell wahlweise \([1, 3]\). Standzeit am Endpunkt: \([4,\, 4 + T - 1]\). Umstieg: \([3,\, 3 + T - 1]\); die Spannung ist dann die Umsteigezeit. Zugfolge: \([h,\, T - h]\) für zwei Abfahrten auf demselben Abschnitt. Mit der Nachfrage \(w_a\) jeder Umstiegsaktivität ist das Ziel, bis auf die Normierung durch die Gesamtnachfrage:
\[\min \sum_a w_a x_a\]
Die Summe läuft über die Umstiegsaktivitäten. Für jede Linie muss die Summe der Spannungen ihres Zyklus ein Vielfaches des Taktes sein, mit der Zugzahl \(v\) der Linie:
\[\sum x_a = T\cdot v\]
Die Hin/Rück-Kopplung betrifft zwei gegenläufige Umstiege \(a\) (Hinweg) und \(a'\) (Rückweg) desselben Anschlusses. Bei festen Fahrzeiten und fester Standzeit gilt:
\[x_a + x_{a'} = 2\cdot 3 + c + k\,T\]
\[c = (D_1 + D_2) \bmod T\]
mit \(k \in \{0, 1\}\). Dabei ist \(D_1\) bzw. \(D_2\) die Umsteigezeit von Hin- bzw. Rückweg bei Phase 0 beider Linien, abzüglich der Mindestzeit 3 min. Der kleinere Wert (\(k = 0\)) gilt für genau \(c + 1\) der \(T\) Versätze der zweiten Linie, sonst ist die Summe einen Takt größer. Die nachfragegewichtete Summe dieser Untergrenzen über alle Paare mit gleichem Gewicht je Richtung ist die Untergrenze der Aufgabe, bei der nur die Phasen gewählt werden.
Herleitung der Kopplung Schritt für Schritt
Die folgende Herleitung ist eine Rechnung dieser Seite. Die Vollaufzählung in den Befunden stützt sie.
Zwei Linien \(L\) und \(L'\) mit den Phasen \(o\) und \(o'\) treffen sich an einer Haltestelle \(S\). Ihr Versatz sei \(\delta = o' - o\). Beim Hinweg kommt \(L\) in der Minute \(\alpha + o\) an, und \(L'\) fährt in \(\beta + o'\) ab. Beim Rückweg kommt \(L'\) in \(\beta' + o'\) an, und \(L\) fährt in \(\alpha' + o\) ab. Die Minuten \(\alpha, \beta, \alpha', \beta'\) gelten bei Phase 0. Bei Ankunft in \(t_{an}\) und Abfahrt in \(t_{ab}\) ist die Umsteigezeit \(((t_{ab} - t_{an} - 3) \bmod T) + 3\).
- Schritt 1: Mit \(D_1 = \beta - \alpha - 3\) und \(D_2 = \alpha' - \beta' - 3\) sind die Umsteigezeiten \(x_a = ((D_1 + \delta) \bmod T) + 3\) für den Hinweg und \(x_{a'} = ((D_2 - \delta) \bmod T) + 3\) für den Rückweg.
- Schritt 2: Die Reste \(r = (D_1 + \delta) \bmod T\) und \(r' = (D_2 - \delta) \bmod T\) liegen in \(\{0, \dots, T-1\}\). Ihre Summe ist modulo \(T\) gleich \(D_1 + D_2\), also gleich \(c\); der Versatz \(\delta\) fällt heraus.
- Schritt 3: Wegen \(0 \le r + r' \le 2T - 2\) ist \(r + r'\) entweder \(c\) oder \(c + T\). Also ist \(x_a + x_{a'} = 6 + c + kT\) mit \(k \in \{0, 1\}\).
- Schritt 4: \(k = 0\) gilt genau dann, wenn \(r \le c\). Läuft \(\delta\) über alle \(T\) Werte, durchläuft \(r\) alle Reste von 0 bis \(T - 1\). Das sind \(c + 1\) Versätze.
- Schritt 5, warum \(c\) nicht von den Phasen abhängt: Es ist \(D_1 + D_2 = (\alpha' - \alpha) - (\beta' - \beta) - 6\). Die Differenz \(\alpha' - \alpha\) ist die Zeit, die \(L\) vom Ankommen in \(S\) bis zum Wiederabfahren in \(S\) in Gegenrichtung braucht: Weg bis zum Endpunkt, Standzeit, Rückweg und Halte. Für \(L'\) ist \(\beta' - \beta\) entsprechend die Zeit vom Abfahren in \(S\) bis zum Wiederankommen in \(S\) in Gegenrichtung. Beide Dauern gelten modulo \(T\) und hängen nur von Fahrzeiten, Halten und Standzeiten ab.
- Schritt 6, die Standzeit verteilen: Der Schlupf \(\sigma\) einer Linie wird so verteilt, dass ein Ende \(s\) Minuten zusätzlich bekommt und das andere \(\sigma - s\), mit \(0 \le s \le \sigma\). Zyklusdauer und Zugzahl bleiben gleich. Die Dauer \(\alpha' - \alpha\) enthält die Standzeit am Ende, das \(L\) von \(S\) aus zuerst erreicht; sie ändert sich mit \(s\) um \(s\). Damit verschiebt sich \(c\) um \(\pm s\) modulo \(T\), und die Untergrenze des Paares ändert sich.
- Schritt 7, Zusatzzug: Mit einem Zusatzzug wächst der Schlupf um \(T\), und \(s\) darf bis \(T - 1\) laufen. Dann lässt sich \(c\) eines einzelnen Paares auf jeden Wert modulo \(T\) stellen; eine Linie hat aber nur ein \(s\) für alle ihre Paare (Vermutung: Kompromiss).
Erwartung bei zufälliger Phase. Bei gleichverteilter Phase ist die Umsteigezeit gleichverteilt auf den ganzen Zahlen von 3 bis 62, der Mittelwert also \(3 + 59/2 = 32{,}5\) min. Das stimmt mit dem gemessenen Mittel für zufällige Phasen überein (siehe Befunde). Der Anteil 50,8 % ist keine unabhängige Bestätigung, sondern folgt aus \(c\): Je Paar gilt der kleinere Wert für genau \(c + 1\) Versätze, im Mittel also \((29{,}5 + 1)/60\), etwa 50,8 %.
Durchgerechnetes Beispiel der Kopplung
Rechnung dieser Seite, keine Messung: Zwei Linien mit \(T = 60\) min. Bei Versatz \(\delta = 0\) beträgt die Umsteigezeit hin 5 min und zurück 25 min. Die Summe 30 min ist \(6 + c\) auf dem kleineren Wert, also ist \(c = 24\). Der kleinere Wert 30 min gilt dann für \(c + 1 = 25\) der 60 Versätze.
| Versatz \(\delta\) | Hinweg \(x_a\) | Rückweg \(x_{a'}\) | Summe | \(k\) |
|---|---|---|---|---|
| 0 min | 5 min | 25 min | 30 min | \(k = 0\) |
| 10 min | 15 min | 15 min | 30 min | \(k = 0\) |
| 20 min | 25 min | 5 min | 30 min | \(k = 0\) |
| 25 min | 30 min | 60 min | 90 min | \(k = 1\) |
Zwischen \(\delta = 0\) und \(\delta = 20\) wächst der Hinweg um genau so viel, wie der Rückweg schrumpft. Bei \(\delta = 25\) fällt der Rückweg unter die Mindestzeit, springt auf 60 min, und die Summe liegt einen Takt höher.
Befunde
Alle Zahlen stammen aus der Messreihe: 150 erfundene Netze (je 30 bei 3, 5, 6, 8 und 10 Linien), 20 Haltestellen, Takt 60 min. Angegeben sind Mittel ± Standardfehler über die Netze; „6 Linien“ meint die 30 Netze dieser Größe. Die Umsteigezeit schließt die Mindestzeit 3 min ein.
| Frage | Befund |
|---|---|
| Wie lange dauert das Umsteigen im Mittel? (6 Linien) | 32,5 min bei zufälligen Phasen, 24,1 min bei optimierten Phasen, 19,4 min mit frei verteilter Standzeit (gleiche Zugzahl), 16,3 min mit Zusatzzügen (alle Linien erlaubt). Ideal wären 3 min. |
| Wie viele Umsteiger warten höchstens 10 min? (6 Linien) | 28 % bei optimierten Phasen, 46 % mit verteilter Standzeit, 62 % mit Zusatzzügen. Auch mit Zusatzzügen warten noch 38 % länger als 10 min. |
| Wie stark begrenzt die Kopplung? (alle 150 Netze) | Die Untergrenze erzwingt im Mittel 73 % des Aufschlags über die Mindestzeit (je Netzgröße 70 bis 74 %). Gerechnet wird je Netz (Untergrenze − 3) / (Phasen-Optimum − 3), gemittelt über die Netze; das Phasen-Optimum gilt mit Standard-Standzeit. |
| Stimmt die Zwei-Werte-Regel? | An 398 Hin/Rück-Paaren, Vollaufzählung des Versatzes: 0 Verletzungen der Untergrenze, 0 Abweichungen von der Regel. Der kleinere Wert gilt für 50,8 % der Versätze, \(c\) im Mittel 29,5 min. |
| Macht ein dichteres Netz den Takt schwerer? | Nein. Phasen-Optimum 24,0 / 24,3 / 24,1 / 23,4 / 23,5 min bei 3 / 5 / 6 / 8 / 10 Linien. Der Kreisrang des Umsteigegraphen (Kanten minus Knoten plus Komponenten, mit den Linien als Knoten) erklärt die Wartezeit kaum: Korrelation r = −0,12 über 150 Netze. |
| Was bringt die Verteilung der Standzeit? (alle 150 Netze) | 5,2 ± 0,2 min weniger als der beste Takt mit Standard-Standzeit (Median 4,8, P10 2,2, P90 8,3), in 150 von 150 Netzen positiv, kleinster Gewinn 1,02 min, bei gleicher Zugzahl. |
| Was bringen Zusatzzüge? | 3,4 ± 0,2 min gegenüber der Verteilung der Standzeit, wenn alle Linien einen Zusatzzug einsetzen dürfen. Abnehmender Ertrag bei 6 Linien: 19,4 → 17,8 → 17,0 → 16,5 → 16,4 min bei Erlaubnis für 0 bis 4 Linien, danach unter 0,2 min je Schritt. |
| Was kostet eine Mindest-Zugfolge von 4 min? | 1,1 ± 0,1 min mehr Wartezeit als die Lösung mit verteilter Standzeit ohne die Bedingung, im Mittel über alle Netze (Median 0,5; beide Läufe suchen Phasen und Verteilung neu). Bei 3 / 5 / 6 / 8 / 10 Linien 0,5 / 0,9 / 0,8 / 1,3 / 2,0 min. Überall wurde ein zulässiger Fahrplan gefunden. Ohne die Bedingung verletzt die Lösung mit verteilter Standzeit sie bei 10 Linien in 30 von 30 Netzen. |
| Ist Greedy schon gut? | Ja für die Phasen-Aufgabe: Greedy liegt 0,6 ± 0,1 min (2,7 %) über dem Phasen-Optimum, in 46 von 150 Netzen genau gleich. |
| Schlägt der exakte Löser die Lokalsuche? (Verteilung der Standzeit, 12 Netze mit 6 Linien, 20 s) | Nein. CP-SAT-Fund im Mittel 19,7 min, Schranke im Mittel 14,8 min, bewiesen optimal nur in 1 von 12 Netzen. Lokalsuche mit 40 Neustarts im Mittel 19,7 min (schlechter als der Fund in 3 Netzen, größte Abweichung 0,08 min), mit 20 Neustarts schlechter in 7 Netzen (bis 0,64 min). Nur Phasen: bewiesen in 6 von 12, Lokalsuche gleich dem Fund in 11. |
| Was bringt ein Haltezeit-Spielraum? (nur exaktes Modell, 15 Netze, 20 s) | Verteilung der Standzeit 19,7 min, mit Haltezeit 1 bis 3 min 16,2 min, mit Haltezeit und je Linie einem Zusatzzug 10,4 min. Bewiesen optimal in 2 / 1 / 5 von 15 Netzen, Schranken im Mittel 9,0 min (mit Haltezeit) und 6,8 min (mit Haltezeit und Zusatzzug): Funde, keine Optima. |
| Wie stark rauscht die Lokalsuche je Netz? (30 Netze, 5 Läufe) | Spannweite zweier Läufe bei der Verteilung der Standzeit: Median 0,03, P95 0,73, Maximum 1,82 min; beim Zusatzzug P95 0,49 min. Unterschiede einzelner Netze unterhalb dieser Größe sind kein Befund. |
Grenzen und was die Messung zeigt
- Was sie belegt: Richtung und Größenordnung der Effekte auf diesen erfundenen Netzen, als Mittel über 30 bzw. 150 Netze. Die Kopplung selbst ist keine Messung, sondern eine Rechnung (siehe Herleitung); die Vollaufzählung bestätigt sie unter der Bedingung fester Fahrzeiten und fester Standzeit.
- Was sie nicht belegt: absolute Minutenwerte realer Netze. Die Netze sind synthetisch, nur 6 bis 21 % der Nachfrage steigt um, es zählen nur Routen mit genau einem Umstieg, die Nachfrage hängt nicht von der Tageszeit ab, Fahrzeiten sind proportional zur Entfernung, und es gibt keine lastabhängige Haltezeit.
- Untergrenze und verteilte Standzeit: Die Untergrenze gilt bei gegebener Standzeit; bei frei verteilter Standzeit kann ein Paar sie unterschreiten. Nachrechnung dieser Seite aus den Einzelwerten der Messreihe, nicht in der Befundtabelle: Das Ergebnis mit verteilter Standzeit lag in gut einem Drittel der 150 Netze unter der Untergrenze, im Mittel bei 5, 6, 8 und 10 Linien aber um eine halbe bis anderthalb Minuten darüber und nur bei 3 Linien darunter. Eine Vermutung zum Grund: Eine Linie hat nur eine Verteilung für alle ihre Paare, und der Schlupf ist begrenzt. Bei 6 Linien liegt zudem das Phasen-Optimum etwa sechs Minuten über der mittleren Untergrenze (ebenfalls Rechnung dieser Seite); vermutlich lassen sich nicht alle Paare zugleich auf ihren kleineren Wert legen.
- Heuristik: Die Lokalsuche ist keine exakte Methode, zwei Läufe auf demselben Netz weichen meist um weniger als das P95 von 0,73 min voneinander ab, im Einzelfall um bis zu 1,82 min. Aussagen über einzelne Netze brauchen deshalb eine Schwelle aus dem gemessenen Rauschen.
- Optimalität: Auf diesen Netzen ist die Phasen-Aufgabe leicht (Greedy liegt dicht am Phasen-Optimum); allgemein ist PESP NP-schwer. Beim erweiterten Modell beweist der exakte Löser selten ein Optimum (1 von 12 bei der Verteilung der Standzeit); die Werte sind dort Funde. Die Lokalsuche kommt erst mit 40 statt 20 Neustarts bis auf höchstens 0,08 min an den Fund heran. Für die Zusatzzug-Stufe gibt es keinen Vergleich mit dem exakten Löser.
- Zugfolge: nur ein Vorgriff auf die Trassenvergabe, ohne Block-, Weichen- oder Überholungslogik.
- Zusatzzug: Er zählt nur den Zugbestand (Zyklusdauer geteilt durch den Takt), ohne Depot und Wartung.
- Haltezeit-Spielraum: Ihn rechnet nur das exakte Modell, überwiegend unbewiesen; eine Lokalsuche dafür ist nicht gebaut.
Erweiterungen und Verweise
Nicht umgesetzt sind der Takt \(T = 30\), Umstiege mit mehr als einem Wechsel, Nachfrage nach Tageszeit, ein Haltezeit-Spielraum in der Lokalsuche, der Fahrzeugumlauf im Detail, Störungsmanagement und eine Kalibrierung an realen Fahrplandaten. Verwandte Demos:
- Liniennetz ohne Fahrplan: Die transit-demo gestaltet ein Buslinien-Netz aus einer Nachfragematrix.
- Verbindungsauskunft auf gegebenem Fahrplan: Die raptor-demo sucht Verbindungen auf einem gegebenen Fahrplan.
- Trassenvergabe: Der Trassenkonflikt vergibt Trassen auf einer eingleisigen Strecke an drei Bahnunternehmen.
- Fahrzeitreserve: Die Seite zur Fahrzeitreserve behandelt, wo im Fahrplan Pufferzeit stehen sollte.
- Personaleinsatz: Das Crew Pairing weist den Fahrten Besatzungen zu.
Quellen
- Serafini, P., Ukovich, W. (1989): A mathematical model for periodic scheduling problems. SIAM Journal on Discrete Mathematics (Modell der periodischen Ereignisplanung, PESP).
- Liebchen, C.: The first optimized railway timetable in practice. Transportation Science (optimierter Taktfahrplan im Regelbetrieb der Berliner U-Bahn).
- Quelltext, Messreihe und Tests der Demo: github.com/sebastian-hanisch/taktfahrplan-demo.
Serafini und Ukovich (1989) sind in der Dokumentation der Demo genannt. Liebchen, die genauen Angaben zu beiden Arbeiten und die NP-Schwere von PESP sind aus dem Gedächtnis, nicht im Original geprüft. Herleitung und Zahlenbeispiel sind Rechnungen dieser Seite und keine Messungen.