Verfahrensablauf beim Rückstaumodell
Das Verfahren gliedert sich in folgende Bestandteile:
- Bestimmung des Überstauungsfaktors
- Stauberechnung für wegbasierte Umlegungsverfahren
- Stauberechnung für wegbasierte Umlegungsverfahren (parallelisiert)
- Bestimmung der Wartezeiten
Bestimmung des Überstauungsfaktors
Vor der eigentlichen Stausimulation wird zunächst der Überstauungsfaktor des Netzes berechnet. Dabei gehen die Belastungen und Kapazitäten derjenigen Strecken, Knoten und Abbieger ein, für die Sie eingestellt haben, dass sie berücksichtigt werden sollen.
Für eine einzelne Strecke L ist der Überstauungsfaktor σStrecke(L) gegeben durch
.
Hierbei ist VolDem(L) die Belastung der Strecke aus der Umlegung, Cap(L) die IV-Kapazität der Strecke und ScalingFactorder Skalierungsparameter für Kapazitäten aus den Parametern für das Rückstaumodell. Außerdem istVolGrundbelastung(L) eine Grundbelastung der Strecke, die Sie in den allgemeinen Verfahrenseinstellungen unter IV-Einstellungen > Umlegung einstellen können.
Für Abbieger T und Knoten N sind analog Überstauungsfaktoren σAbbieger(T) und σKnoten(N) definiert. Da in Visum nur Grundbelastungen für Abbieger und Strecken eingestellt werden können, wird als Grundbelastung für Knoten die Summe der Grundbelastungen der Abbieger am Knoten genommen. Der Überstauungsfaktor σ des Netzes ist nun das Maximum der Überstauungsfaktoren aller Strecken, Knoten und Abbieger, deren Kapazitäten berücksichtigt werden sollen. Er gibt an, um welchen Faktor eine (Rest-)Kapazität im Netz maximal überschritten wird.
Der dem Kehrwert des Überstauungsfaktors entsprechende Anteil des Verkehrs kann im Netz mit Sicherheit ohne Auftreten von Staueffekten fließen. Wenn σ ≤ 1 ist, wird das Verfahren nicht ausgeführt; in diesem Fall sind die korrigierten Belastungen (Vol) gleich den in der Umlegung ermittelten (VolDem), sodass kein Stau auftritt.
Falls für eine Strecke, einen Knoten oder einen Abbieger der Nenner in der Formel für den Überstauungsfaktor kleiner oder gleich 0 wird, ist keine freie Kapazität mehr vorhanden und das Verfahren bricht ab.
Stauberechnung für wegbasierte Umlegungsverfahren
Bei der Stauberechnung werden Staulängen auf Strecken (und Anbindungen) und (gegenüber der ursprünglichen Belastung) reduzierte Belastungen für Strecken, Knoten, Abbieger und Anbindungen ausgerechnet. Dazu lassen wir schrittweise entlang den in der Umlegung ermittelten Routen Verkehr ins Netz fließen, wobei im Gegensatz zur vorher durchgeführten Umlegung die Regeln 1 bis 3 eingehalten werden. Regel 3 wird durch den Durchlässigkeitsfaktor P, den Sie für jede Strecke individuell definieren können, aufgeweicht. Der Wert beschreibt, welcher Anteil an bestehenden Staus vorbeifahren kann. Für P = 0 wird Regel 3 eingehalten.
Sei N die Anzahl der Anteile für Belastungsaufteilung. Diese Größe können Sie in den Verfahrensparametern für das Rückstaumodell einstellen. Die Einhaltung der Regeln 1 bis 3 wird erreicht, indem N mal für jede Route reihum der N-te Teil der Routenbelastung von der Quelle zum Ziel hin abgetragen wird, bis eine Strecke erreicht ist, auf der entweder bereits ein Stau vorhanden ist oder ein anderer Engpass (Strecke, Knoten oder Abbieger) bei dem die Kapazität überschritten wird. In diesem Fall wird der Teil der Belastung nicht der Streckenbelastung, sondern der Staulänge zugeschlagen.
Es folgt eine detaillierte Beschreibung der Berechnung. Die wichtigsten in diesem Abschnitt verwendeten Bezeichner sind folgende:
VolDem |
Belastung Nachfrage: Belastungen aus der Umlegung ohne Berücksichtigung zurückgehaltener Fahrzeuge durch das Rückstaumodell (d.h. wenn kein Rückstaumodell gerechnet wird bzw. keine Staueffekte auftreten, entspricht VolDem der Belastung Vol) |
Vol |
(reduzierte) Belastungen |
Cap |
IV-Kapazität einer Strecke, eines Abbiegers oder eines Knotens |
K |
Standkapazität einer Strecke |
Q |
Staulänge auf einer Strecke (oder Anbindung) |
P |
Stau-Durchlässigkeit (Permeabilität) einer Strecke, die beschreibt, welcher Anteil an bestehenden Staus vorbeifahren kann |
σ |
Überstauungsfaktor |
Das Netz wird nun zunächst mit dem Teil der Nachfrage belastet, der noch keinen Stau verursacht. Der restliche Verkehr fließt dann schrittweise ins Netz. Als erstes wird also die größte natürliche Zahl n ermittelt, die n/N ≤ 1/σ erfüllt. Der allgemeine Ablauf sieht dann folgendermaßen aus:
Initialisiere Vol für alle Strecken, Abbieger, Knoten und Anbindungen mit 0. Initialisiere Q für alle Strecken und Anbindungen mit 0. Belaste alle Strecken L und Anbindungen C mit VolDem(L)*n/N bzw. VolDem(C)*n/N. Für j = n+1 bis N Für jedes Nachfragesegment Für jede Route R des Nachfragesegments Belaste die Route R mit VolDem(R) / N. |
Das Belasten einer Route R mit dem n-ten Teil von VolDem (flow) läuft folgendermaßen. Seien L0, L1, ..., Lk die verallgemeinerten Strecken einer Route, d.h. L0 ist Quellanbindung, Lk ist Zielanbindung, und dazwischen sind die echten Strecken. Es fließt jetzt Verkehr vom Quellbezirk über L0, L1, ..., Lk zum Zielbezirk, wobei der Verkehrsfluss immer durch Kapazitäten von Strecken, Knoten und Abbiegern sowie möglicherweise vorhandene Staus begrenzt wird.
Kapazitäten wirken wie folgt begrenzend. Sei toNode(L) der Nach-Knoten einer Strecke L und Turn(Lj, Lj+1,T) der Abbieger von L nach Lj+1 für Strecken L und T. Der Fluss von Lj nach Lj+1 ist nun begrenzt durch die Kapazität von Lj, die Kapazität am Nach-Knoten von Lj und die Kapazität am Abbieger von Lj nach Lj+1.
Hinweis: Wenn Sie eingestellt haben, dass eine Kapazität nicht wirken soll, wird so gerechnet, als ob die entsprechende Kapazität unendlich ist. Anbindungen haben definitionsgemäß unendliche Kapazität. |
Die maximale Belastung maxFlow von Lj nach Lj+1 ist also
maxFlow(Lj, Lj+1) = min{Cap(Lj) • ScalingFactor - VolGrundbelastung(Lj),
Cap(toNode(Lj)) • ScalingFactor - VolGrundbelastung(toNode(Lj)),
Cap(Turn(Lj, Lj+1)) • ScalingFactor - VolGrundbelastung(Turn(Lj, Lj+1))}
Falls auf einer Strecke der Route mehr Verkehr ankommt, als auf die nächste Strecke fließen kann, so fließt nur so viel Verkehr weiter, wie noch freie Kapazität vorhanden ist:
Funktion Belaste(R, flow): Für j = 0 bis k-1 propagatingFlow = flow Falls Q(Lj) > 0 propagatingFlow:= propagatingFlow * Permeability(Lj) propagatingFlow:= min(propagatingFlow, maxFlow(Lj, Lj+1)) Vol(Lj) := Vol(Lj) + propagatingFlow Vol(toNode(Lj)) := Vol(toNode(Lj)) + propagatingFlow Vol(Turn(Lj, Lj+1)) := Vol(Turn(Lj, Lj+1)) + propagatingFlow Q(Lj) := Q(Lj) + (flow - propagatingFlow) Trage Stau rückwärts ab |
Verkehr, der nicht auf die nächste Strecke weiterfließen kann, wird zur Staulänge hinzugefügt. Überschreitet der Stau auf einer Strecke die maximale Standkapazität K, so bilden sich Rückstaus auf vorherigen Strecken der Route. Dabei muss der Rückstau von der Belastung der vorherige(n) Strecke(n) (und Knoten und Abbieger) wieder subtrahiert werden, denn dieser Verkehr kann gar nicht erst auf die weiter hinten liegende Strecke gelangt sein:
Funktion StauAbtragen(R): propagatingQ = 0 Für j = k-1 bis 1 Falls Q(Lj) > K(Lj) propagatingQ := Q(Lj) - K(Lj) Q(Lj) := K(Lj) Q(Lj-1) := Q(Lj-1) + propagatingQ Vol(Lj-1) = Vol(Lj-1) - propagatingQ Vol(toNode(Lj-1)) := Vol(toNode(Lj-1)) - propagatingQ Vol(Turn(Lj-1, Lj)) := Vol(Turn(Lj-1, Lj)) - propagatingQ |
Für Knoten ist noch eine Sonderbehandlung nötig: Obwohl es an Anbindungen keine Abbieger gibt, werden im Verfahren Knoten an Anbindungen belastet. Damit an Anbindungsknoten nach dem Verfahren die Knotenbelastung gleich der Summe der Abbiegerbelastungen ist, wird an Anbindungsknoten nach dem Verfahren die Knotenbelastung neu aus den Abbiegerbelastungen berechnet.
Wir veranschaulichen das Verfahren anhand eines einfachen Beispiels mit zwei Routen. Route 1 führt von A nach D, Route 2 von B nach C. Beide Routen besitzen eine Belastung VolDem von 200 Fahrzeugen. Die Belastung wird in vier Iterationsschritten mit jeweils 50 Fahrzeugen auf die Routen aufgeteilt. Die Anzahl der Iterationsschritte ergibt sich aus dem Verfahrensparameter Anzahl der Anteile für Belastungsaufteilung. Zur Vereinfachung wird in dem Beispiel nur die Streckenkapazität als begrenzende Kapazität berücksichtigt. Die Route 1 wird jeweils zuerst belastet. Auf der Route 1 gibt es einen Engpass. Auf der Route 2 kommt es im weiteren Verlauf zu einem Rückstau, obwohl sie nicht über die Engpass-Strecke führt.
Abbildung 82: Rückstaumodell, Stauberechnung: Iterationsschritte 1 und 2.
In den ersten beiden Iterationsschritten werden die beiden Routen mit jeweils 50 Fahrzeugen belastet. Es treten noch keine Staus auf (Abbildung 82).
Abbildung 83: Rückstaumodell, Stauberechnung: Iterationsschritt 3, Route 1
Im Iterationsschritt 3, Route 1, gibt es auf der hervorgehobenen Strecke einen Engpass. Da die Standkapazität dort nicht ausreicht, bildet sich ein Rückstau auf der davor liegenden Strecke (Abbildung 83).
Abbildung 84: Rückstaumodell, Stauberechnung: Iterationsschritt 3, Route 2
Da auf der mittleren Strecke nun ein Stau ist, bleiben auch die Fahrzeuge auf Route 2 dort stecken (Abbildung 84).
Abbildung 85: Rückstaumodell, Stauberechnung: Iterationsschritt 4, Route 1
In Iterationsschritt 4, Route 1, kommen weitere 50 Fahrzeuge hinzu. Die Standkapazität auf der mittleren Strecke ist erschöpft, weshalb sich weiter Fahrzeuge zurückstauen (Abbildung 85).
Abbildung 86: Rückstaumodell, Stauberechnung: Iterationsschritt 4, Route 2
Die 50 Fahrzeuge von Route 2 gelangen gar nicht erst auf die mittlere Strecke und bleiben alle auf der ersten Strecke im Stau stecken (Abbildung 86).
Im Ergebnis der Stauberechnung werden die lokalen Staulängen jeder Strecke sowie die korrigierte Belastungen ausgewiesen.
Stauberechnung für wegbasierte Umlegungsverfahren (parallelisiert)
Die parallelisierte Berechnung verwendet einen modifizierten Algorithmus, bei dem die Ausschöpfung der begrenzenden Kapazität gleichmäßig über alle Routen erfolgt, d.h. zusätzlich zum Abarbeiten der Routen werden auch die Quellbezirke berücksichtigt. In jeder Iteration gibt es zwei Schritte:
1. Entsprechend den in der Umlegung ermittelten Routen fließt Verkehr gemäß den Anteilen für die Belastungsaufteilung ins Netz. An Netzobjekten, bei denen die begrenzende Kapazität überschritten wird, wird der Stau ermittelt.
2. Übersteigt der ermittelte Stau die Standkapazität auf der Strecke, wird Stau stromaufwärts auf die Eingangsstrecken abgetragen. Dies erfolgt proportional zu den Abbiegeanteilen.
Im Falle nicht ausreichender Kapazität bedeutet das, dass in der Iteration, in der die begrenzende Kapazität überschritten wird, die noch verbleibende Kapazität anteilig durch alle über das Netzobjekt führenden Routen ausgeschöpft wird. Bleibt ein Teil des Verkehrs einer dieser Routen stromaufwärts bereits im Stau stecken und erreicht das betroffene Netzobjekt nicht, wird der Routenanteil auf den ankommenden Verkehr angewendet, d.h. bei dieser Berechnungsvariante ist es möglich, dass Stau entsteht bevor die verbleibende Kapazität voll ausgeschöpft ist.
Bestimmung der Wartezeiten
Aus der Staulänge nach der Stauberechnung ergibt sich die Wartezeit als Integral über die Staulänge.
Abbildung 87 zeigt ein Beispiel für die Darstellung der Wartezeit als Integral über die Staulänge.
Abbildung 87: Wartezeit als Integral über die Staulänge
Dieses lässt sich als Formel direkt ausdrücken:
Dabei ist I der Umlegungszeitraum in Sekunden. Die Wartezeit ergibt sich aus dem Umlegungszeitraum und der Staulänge.
Die durchschnittliche Wartezeit pro Fahrzeugeinheit ergibt sich daraus:
Die effektive Kapazität ergibt sich für Strecken, auf denen ein Stau beobachtet werden kann, durch das Minimum aus dem Streckenattribut Kapazität Cap und der durch Rückstau reduzierten Belastung Vol.