Zeitschrift far Operations Research, Band 23, 1979, Seite B157-B169. 9
Verlag, Wiirzburg.
Ein SIMULA-Modell zur Ereignissimulation von Stadtstra~ennetzen
Von W. Grossmann und G. Pflug, Wien 1)
Eingegangen am 8. Juni 1979
Zusammenfassung: Die Grundkonzepte eines semimakroskopischen, stochastischen und ereignisorientierten Simulationsmodells for Stadtstrafiennetze werden entwiekelt. Dabei liegt das Sehwergewicht auf dem Fahrverhaltensmodell, Fahrfolgeverhalten an Kreuzungen und Pulkaufl6sung. Das Programm wurde in SIMULA geschrieben und kann zur Simulation yon Stadtstra6ennetzen verwendet werden. Summary: The fundamental concepts for a semimakroscopic, stochastic and eventoriented simulation model of the traffic in an urban area are developed. Special attention is paid to vehicle movement, queue discharge and platoon dispersion. The program was written in SIMULA and can be used for the simulation of urban networks up to 80 nodes.
1. Einleitung Das Verkehrsgeschehen in einem st~idtischen Verkehrsnetz muff im wesentlichen als eine Massenerscheinung mit einer Vielzahl yon Rtickkoppelungseffekten angesehen werden. Einzelne Ablfiufe wie z.B. Abfahrtsverhalten yon Kreuzungen oder Pulkaufl6sung k6nnen zwar mit Hilfe statistisch erfafibarer Gesetzm~ifiigkeiten beschrieben wer. den, um aber alle Abl~ufe in ihrer Gesamtheit zu erfassen, ist es am zweckm~fiigsten, ein Simulationsmodell des Verkehrsnetzes zu erstellen. Ein Simulationsmodell bietet nicht nur bessere Einsicht in die Zusammenh~inge des Systems, sondern stellt auch praktisch die einzige M6glichkeit dar, verschiedene Netzentwiirfe und Steuerungsstrategien zu testen und zu vergleichen und ist damit ein Werkzeug ftir Experimente, die in der Praxis kaum durchgefiihrt werden k6nnen. Das im folgenden beschriebene Modell ist ein stochastisches semimakroskopisches, ereignisorientiertes Modell ftir den Individualverkehr. Semimakroskopisch bedeutet,
1) Dr. Wilfried Grossmann, Assistent am Institut f'firStatistik der Universit~it Wien, Rathausstrat~e 19, A-1010 Wien. Dr. GeorgPflug, Assistent am Institut f'firStatistik der Universit~it Wien, Rathausstra~e 19, A-1010 Wien.
B 158
W. Grossmann und G. Pflug
dag zwar Einzelfahrzeuge simuliert werden, das Fahrverhalten des einzelnen Fahrzeuges jedoch nur in vereinfachter Weise beschrieben wird. Ein derartiger Ansatz stellt einen Kompromig zwischen den mikroskopischen Modellen, die genau das Fahrverhalten jedes Fahrzeuges simulieren, und den makroskopischen Modellen, die nur Fahrzeugpulks betrachten, dar und gestattet gr6gere Netze mit einem noch vertretbaren Aufwand an Rechenzeit zu simulieren. Der Vorteil gegentiber den makroskopischen Modellen ist, daft nicht nur Mittelwerte und andere globale Gr6gen verwendet werden k6nnen, sondern noch die Wechselbeziehungen zwischen einzelnen Fahrzeugen berticksichtigt werden. Dies ist besonders ftir Fragen der Routenwahl und dem Zusammenhang zwischen Individual- und 6ffentlichem Verkehr von Vorteil [vgl. Maher/Akcelik]. Dem zufalligen Charakter des Verkehrs wird durch die stochastische Komponente Rechnung getragen, d.h. die Gleichungen zur Beschreibung des Fahrverhaltens gelten nicht deterministisch, sondern sind zufalligen Schwankungen unterworfen.
2. Modellstruktur und Kenngr6$en des Netzes Die wesentlichen Gr6gen zur Beschreibung des Netzes sind Netzstruktur, Bedarfsstruktur und Steuerung.
2.1 Netzstruktur Die Gesamtheit aller Stragen und Kreuzungen wird als gerichteter Graph aufgef~t, dessen Knoten die einzelnen Kreuzungen sind und dessen Kanten die Fahrbahnen repr~isentieren. Jede Kante ist durch ihre L~ingeund die Anzahl der Fahrspuren spezifiziert. Weiters ist fiir jede Kante ein Spurfeld definiert, das angibt, in welche Richtung yon der entsprechenden Spur eine Weiterfahrt m6glich ist. Das Spurfeld ist eine sechsstellige Zahl, yon denen die ersten beiden Ziffern die Spuren far Linksabbieger, die mittleren beiden Ziffern die Spuren ftir Geradeausfahrt und die letzten beiden Ziffern die Rechtsabbiegerspuren begrenzen. Die Knoten sind prinzipiell derart, dag sie maximal vier zufiihrende bzw. wegftihrende Kanten besitzen. Kreuzungen mit mehr als vier Stragen werden entsprechend aufgel6st. Das bietet den Vorteil, einen einheitlichen Richtungssinn an jedem Knoten definieren zu k6nnen. Weiters mug for jeden Knoten ein Knotentyp definiert werden. Wir unterscheiden gesteuerte und ungesteuerte Knoten. Die ungesteuerten Knoten werden noch in die 4 verschiedenen Vorrangtypen (beide Stragen gleichrangig, Vorrangrichtung geradeaus, Vorrangrichtung nach rechts abbiegend, Vorrangrichtung nach links abbiegend) unterteilt. Das folgende Beispiel zeigt die Aufl6sung eines Netzes in den Graphen und gibt gleichzeitig die dafiir notwendigen Eingabegr6gen an.
Ein SIMULA-Modell zur Ereignissimulation yon Stadtstrafiennetzen
B 159
Q
,,1 1 ZEICHENERKL~RUNa
%
%
Zt
Knoten Q
Quellknoten
~
Richtun~und Spuranzabl
I1'1
Abb. 1 : Beispiel eines Netzes
Der Input for die Beschreibung des Netzes ist kantenorientiert und weist pro Kante folgende Bestimmungsgr6t~en auf: Anfangsknoten + Richtung (VON, VONRI), Endknoten + Richtung (NACH, NACHRI), LAENGE, SPURANZAHL, SPURFELD. Beispielsweise sieht die Kodierung von 4 Kanten aus Abb. 1 so aus: VON VONRI NACH NACHR1 LAENGE SPURANZ SPURFELD 4 2 5 4 200 3 003111 5 4 4 2 200 2 222111 4 3 7 1 100 2 002111 7 1 4 3 100 1 001111 2.2 Bedarfsstruktur Die Bedarfsstruktur ist durch die Quell- Zielmatrix gegeben und beschreibt das gesamte Verkehrsaufkommen zwischen den einzelnen Quellen und Zielen des Netzes. Quellen und Ziele sind eine Teilmenge der Knoten des Graphen. Jedes Element der Matrix gibt die Anzahl der Reisen vonder Quelle i zum Ziel/' in einem betrachteten Zeitintervall an. Als Zeitintervall ist der fiir die spezielle Simulation zu betrachtende Abschnitt des Tages zu w~ihlen.
B 160
Ir Grossmann und G. Pflug
z~lle 1
2 3 6 9 10
1
2
3
6
9
10
0 694 525 732 266 805
145 0 637 300 276 850
217 315 0 201 502 610
719 420 978 0 603 713
111 113 624 199 0 625
573 820 555 339 508 0
Abb. 2: Quell-Zielmatrixfiir den Graph aus Abb. 1 Die Quell-Zielmatrix gibt noch keinen Aufschlut~ tiber die tats~ichlich gew~hlte Reiseroute eines einzelnen Fahrzeuges. Diese wird erst aus der Quell-Zielmatrix mit Hilfe der Verkehrsumlegung bestimmt. Zu Fragen der algorithmischen Berechnung der Verkehrsumlegung verweisen wir z.B. aufRibbeck [1972]. Aus der umgelegten Quell-Zielmatrix ergeben sich fiir die einzelnen Knoten Abbiegewahrscheinlichkeiten und Intensit~iten. Wir bemerken, dat~ damit jedoch noch kein Performanceindex berechnet werden kann, da die so entstandenea Fltisse optimal sind ohne Berticksichtigung des Verhaltens bei der echten Belegung. Dieser soil durch die Simulation bestimmt werden. Nach der Intensitat werden an den einzelnen Quellen Fahrzeuge nach einer Erlangverteilung erzeugt.
2.3 Steuerung Ftir gesteuerte Knoten mug der Ablauf der Ampelphasen spezifiziert sein. Dieser ist durch die Umlaufzeit (= Summe aus Rot-, Gelb- und Grtinphase) und den Versatz (Startzustand der Ampel zu Beginn der Simulation) definiert. Diese Werte sind ebenfalls notwendige Eingabegr6t~en des Simulationsmodells. Zu Fragen der Berechnung von Ampelphasen bzw. zum Problem der optimalen Steuerung verweisen wir auf Webster [1958],Robertson [1969] oder Gartner et al. [1975].
3. Fahrverhalten Der Verkehr in einem st~idtischen Verkehrsnetz ~,stim wesentlichen ein gebundener und knotenorientierter Verkehr, d.h. das einzelne Fahrzeug hat nicht die M6glichkeit, mit einer von ihm angestrebten Wunschgeschwindigkeit durch das Netz zu fahren, sondern mug sich einerseits nach seinem Vorgiinger und andererseits nach der Steuerung an den Knoten richten. Wie bereits e r w ~ n t betrachten wir ein ereignisorientiertes Modell, d.h. for die Simulation ist in erster Linie das Verlassen eines Knotens und die frtihest m6gliche Ankunftszeit am n/ichsten Knoten von Interesse. Sobald das Fahrzeug am n~ichsten Knoten angelangt ist, bestimmt das Geschehen an diesem Knoten das weitere Fahrverhalten. Daraus folgt, daft ein notwendiger Bremsvorgang in der Simulation nicht berticksichtigt werden mug, da sich dieser und damit die notwendige Adaption
Ein S1MULA-Modell zur Ereignissimulation yon Stadtstrafiennetzen
B 161
der Geschwindigkeit an das Verkehrsgeschehen automatisch ergibt. Im folgenden wetden die drei fiir die Simulation wesentlichen Komponenten des Fahrverhaltens eines Fahrzeuges: ungehinderte Fahrt, Folgeverhalten beim Verlassen der Kreuzung und Pulkaufl6sung beschrieben.
3.1 Fahrverhalten bei ungehinderter Fahrt Jedem Fahrzeug, das ungehindert durch ein vorausfahrendes Fahrzeug fahren kann, wird eine Endgeschwindigkeit (Wunschgeschwindigkeit) zugewiesen. Diese wird in Abhfingigkeit yon der aktuellen Verkehrsdichte auf der Kante gew~hlt. Ffir die mittlere Endgeschwindigkeit ff gilt die folgende funktionale Abh~ingigkeitder Sfittigungsrate d (d = 1/effektiver Fahrzeugabstand). {
1 1 +0,2d
" ~o
O~
v =v(a)=
1 0,16 + 1,6d " ~0
0,6 < d ~< 1.
Dabei ist Vo die mittlere Wunschgeschwindigkeit for den Fall des freien Verkehrs (d = 0). Das folgende Diagramm veranschaulicht die Abhfingigkeit der mittleren Endgeschwindigkeit yon der S~ittigungsrate.
ge .schwindi;~keit v in m/see
s
3
I I I ! I
I S~ttigungs-
I rate d I
t Abb. 3: Abh~ingigkeit der mittlexen Endgesehwindigkeit ffvon der S~ittigungsrate d
Die Endgeschwindigkeit v e des Fahrzeuges bestimmt sich dann stochastisch nach einer Gleichverteilung mit Mittelwert ~ und Varianz 0,08 jT, das entspricht einer Variation der Geschwindigkeit in einem Bereich ff + 0,27 ~.
B 162
W. Grossmann und G. Pflug
Um diese Endgeschwindigkeit zu erreichen, wurde ein Beschleunigungsverhalten gew~hlt, das das folgende Geschwindigkeitsprofil erzeugt. Oeschwindip'ke~t
Ve m/seo////7
/i,
a
!
I ! I !
Zeit (see)
r~ Abb. 4: Beschleunigungsverhalten Dabei betr~igt die Beschleunigung in der ersten Phase bl m/sec 2 9Diese Phase dauert maximal tl sec, bis eine Geschwindigkeit von vl m/sec erreicht ist. Im folgenden beschleunigt dann das Fahrzeug mit b2 m/sec 2 , bis die Endgeschwindigkeit erreicht ist. vo ist die Anfangsgeschwindigkeit des Fahrzeuges. Es ergeben sich somit ftir Geschwindigkeit, Weg und Zeit die folgenden Formeln: Vo + ba " t v(t)=
O~t<.T~
max(vo, vl)+b2 ve
9 (t--T1)
T1 <~t<~T2
(3.1)
t >~ T2
wobei T1 -- min {v e/bl , max{0, (v l -- Vo )/bl }} T: = T1 + max(0, v e -- max(vo, vl }}/b2 Vo't+bl s(t)=
"t2/2
s(T1)+[max{vo,
[
t (s) = /
K
O<.t
(t-T~)/2]. (t--T~)
T~ <<.t
S ( T 2 ) + ve " ( t - - T 2 )
t >1 T2
(-- Vo + X/V2o + 2bl 9 s)/bl
0 <<.s < s ( T i )
TI + (-- max {Vo, v l } + x/max {Vo, v l }2 + (s -- s ( T i ) ) " 2b2)/b2 s (T1) < s < s (T2) T2 + (s -- s (T2))/v e
s >1 s (T2).
Im Modell wurde als Standardverhatten f'tir bl = 2,4 m/sec 2 , b2 = 1,2 m/sec 2 , Vx = 6 m/sec, tl = 2,5 sec gew~ihlt.
(3.2)
(3.3)
Ein SIMULA-Modell zur Ereignissimulation yon Stadtstrafiennetzen
B 163
3.2 Fahrzeugverhalten an Knoten 3.2.1 Gesteuerte Knoten Vefl/~$t ein ruhender Fahrzeugpulk einen gesteuerten Knoten, so sind die wesentlichen Elemente zur Beschreibung des Fahrverhaltens die Zeitltickenverteilung, das ist die zeitliche Aufeinanderfolge der Fahrzeuge beim Oberfahren der Haltelinie, die Geschwindigkeit der Fahrzeuge beim Oberfahren der Haltelinie und die Beschleunigung des Fahrzeuges. Messungen ergaben, daft die Zeitliicke und Geschwindigkeit einerseits yon der Kreuzungsgeometrie, andererseits von der Position des Fahrzeuges abh/ingen [vgl. B6hm/Heusch].Um die Zahl der Variablen in der Simulation m6glichst klein zu halten, wurde das folgende vereinfachte Fahrzeugfolgemodell betrachtet, das durch Abb. 5 und Abb. 6 dargesteUt wird.
Geschwindigkeit
(m/sec)
f
40
d
Geschwindigkeit
//I J
"SS
I I i I I l I I
beim Passieren der Haltelinie
|I
t I I I I I I I
AO
I
,, !
Abb. 5: Startverhalten des Pulks (Zeit-Geschwindigkeit)
Zeit (sec)
)
W. Grossmann und G. Pflug
B 164
WeF
7eitlGcken
Wo nach 40 m
2,O
Zeit (sec)
A5 ZeitlNcken an
'
~
"J"
~"
~"
1r
)!
der H a l t e l i n i e
Abb. 6: Startverhalten des Pulks (Zeit-Weg)
Das erste Fahrzeug startet 1,6 Sekunden, nachdem die Ampel auf Grim gesprungen ist und f~ihrt nach dem in (3.1) beschriebenen Fahrverhalten weiter. Jedes weitere Fahrzeug folgt mit einer Zeitlticke yon 2,2 Sekunden. Die Geschwindigkeit der Fahrzeuge beim Oberfahren der Haltelinie betr~gt dabei v o = 4,5 + 1,2 9 (k -- 2), wobei k die Position des Fahrzeuges im Pulk ist. Das Beschleunigungsverhalten auf die Endgeschwindigkeit v e erfolgt dabei mit b2 = 1,2 m/sec 2 . Dabei entsteht ein Fehler ftir das zweite und dritte Fahrzeug, der sich in den zu kleinen Zeitlticken zwischen den ersten Fahrzeugen niederschl/igt (vgl. Abb. 5 und 6). Dieser wird jedoch teilweise dutch das Pulkaufl6sungsverhalten wettgemacht (vgl. (3.3)). Die Ankunftszeit des ersten Fahrzeuges berechnet sich nach Formel (3.3) mit tl = 2,5, for alle weiteren Fahrzeuge de~ Pulks gilt tl = 0 und bl = 0. Die Grenzzeitlticke, unter der ein folgendes Fahrzeug als noch zum selben Pulk geh6rig anzusehen ist, ist 2,5 sec., d.h. Fahrzeuge, die beim Oberfahren tier Haltelinie einen gr6f~eren Zeitabstand haben, er6ffnen einen neuen Pull< und bestimmen ihr Fahrverhalten nach (3.1) - (3.3) mit tl = 2,5 und b2 = 2,4. FOr fahrende Pulks gilt prinzipiell das gleiche Verhalten wie fiir ruhende Pulks, wenn man in Abb. 4 die Zeitachse entsprechend der Geschwindigkeit des ersten Fahrzeuges ansetzt.
Ein SIMULA-Modellzur Ereignissimulation yon Stadtstr~ennetzen
B 165
Das eben beschriebene Modell ist flir den geradeausabflie6enden Verkehr an einem Knoten. Ftir Rechtsabbiegerverkehr wurde das Modell derart modifiziert, daft die Geschwindigkeit des zweiten Fahrzeuges beim Oberfahren der Haltelinie 4,5 m/sec betr~gt, der Zuwachs der Anfangsgeschwindigkeit bei jedem weiteren Fahrzeug nur 0,2 m/sec betr~igt. Das Beschleunigungsverhalten entspricht dem in (3.1) beschriebenen Standardmodell. Die Zeitliicken bleiben unver~indert 2,2 sec. Dies ist mit Ausnahme yon kleinen Krtimmungsradien der Kurven gerechtfertigt [vgl. B6hm/Heusch]. Linksabbieger verhalten sich, wenn ftir sie eine eigene Ampelphase existiert, wie die Rechtsabbieger. Im anderen Fall mu6 im Sekundentakt abgefragt werden, ob das Fahrzeug ungehindert passieren kann. Sie verhalten sich praktisch wie Fahrzeuge an ungesteuerten Knoten (siehe 3.2.2). Folgen im Pulk Fahrzeuge, die in verschiedene Richtungen abfahren, aufeinander, so bestimmt sich die Geschwindigkeit vi+ 1 des nachfolgenden Fahrzeuges je nach der Richtung fiir Geradeausfahren durch Vi+ 1 = 1)i -Jr 1, 2 (v i Geschwindigkeit des vorderen Fahrzeuges), fiir Rechtsabbieger durch vi+ 1 = rain (v i + 0,2; 5,5}.
3.2.2 UngesteuerteKnoten An ungesteuerten Knoten ist far das Abfahrtsverhatten die Behinderungsstruktur zu beachten. Erreicht ein Fahrzeug den Knoten mit einer Geschwindigkeit re, so ergibt sich an ungesteuerten Knoten eine Zeitverz6gerung, die sogenannte Mindestwartezeit, die sich aus einer Man6vrierzeit und einer Orientierungszeit zusammensetzt. Diese wurde mit 5 sec angenommen. In dieser Zeit bestimmt das Fahrzeug, ob es im kreuzenden Verkehrsstrom eine Grenzzeitlticke vorfindet, die es ihm erm6glicht, die Kreuzung zu verlassen. Die Grenzzeitlticke wurde als Gleichverteilung im lntervall 5 -+ 1,5 angenommen. Kann das Fahrzeug eine passende Grenzzeitlticke innerhalb der Mindestwartezeit finden, so verl~i6t es die Kreuzung mit einer Geschwindigkeit v0 = min {ve ; 4,5}.
3.3 Pulkaufl6sung Wie aus Abb. 6 hervorgeht, entsteht durch das in 3.2 beschriebene Abfahrverhalten an den Knoten eine konstante Zeitlticke zwischen den einzelnen Fahrzeugen, sobald sie ihre Endgeschwindigkeit erreicht haben. Dies entspricht jedoch nicht dem tats~ichlichen Fahrverhalten, da das Ph~inomen der Pulkaufl6sung nicht berticksichtigt ist. Darunter versteht man das Ph~inomen, daft sich die Zeitlticken mit Zunehmen der Fahrtdauer vergr6t~ern. Man erh~ilt also nicht die in Abb. 6 gezeigte Endzeitliickenverteilung, sondern der Verkehrsflu6 entwickelt sich in der in Abb. 7 dargestellten Art. Dieses Ph~inomen des Pulks l~if~t sich auf Grund folgender ~berlegungen auf Einzelfahrzeuge tibertragen. Es sei tl die Ankunftszeit des ersten Fahrzeugs des Pulks an einer Haltelinie und At die auf Grund yon 3.2 bestimmte Endzeitlticke. Besteht der Pulk aus k Fahrzeugen, so hat er eine (zeitliche) Pulkbreite k 9 At. Auf Grund der Pulkaufl6sung betr~igt diese jedoch k 9 At 9 p, wobei p der Pulkaufl6sungsfaktor ist (p > 1), der im wesentlichen von der Fahrzeit bis zur Haltelinie abh/ingt. Wir suchen
B 166
ttL Grossmann und G. Pflug
We~ (m)
S. ,
~
~
A
hypothetische ( ~ ) und tats~chliche (in) ZeJtl~ckenverteilung nach Durchfahren der Strecke s
7
l~J Zeitlfickenverteilung an der Haltelinie
>
geit
(see)
Abb. 7: Pulkaufl/Ssung
nun einen Aufl6sungsfaktor q for die einzelnen Fahrzeuge, so daft die Ankunft des /-ten Fahrzeuges des Pulks t i durch t i = t + i 9 A t 9 q i gegeben ist. Ein derartiger Ansatz wird durch die empirisch beobachtete Tatsache nahegelegt, daft die Verkehrsdichte des Pulks bei zeitlich weiter zurtickliegenden Fahrzeugen gr6t~er wird [vgl. Robertson]. Die Gleichheit der Pulkl~ingen in den beiden Modellen ergibt die folgenden Gleichungen fiir Pulkaufl6sungsfaktor, Ankunftszeiten der Fahrzeuge des Pulks und Ankunftsdifferenzen. k't.qk
=k.
At.p~q=pl/k
(3.4)
t i = tl + i A t p i/k
(3.5)
ti+ 1 - - t i = i A t p i / k ( p 1/k -- 1) + At 9 p ( i + l ) / k .
(3.6)
Dabei kann der erste Summand in (3.6) als Korrektur der Ankunftszeit des/-ten Fahr. zeuges, der zweite als tats~chliche Zeitlticke zwischen dem i + l-ten Fahrzeug interpretiert werden. Nachdem die aktuelle Pulkl~nge im allgemeinen nicht konstant ist, mui~ in der Si. mulation k durch eine durchschnittliche Pulkl~nge, die sich aus der Verkehrsdichte und der Umlaufzeit der Ampeln ergibt, gesch~itzt werden. Nachdem aberp = p (t) annghernd linear mit der Zeit wiichst und p (50) = 2 gilt, ist das Modell nicht sehr sensi. tiv gegentiber dieser Ungenauigkeit.
Ein SIMULA-Modellzur Ereignissimulation yon Stadtstr~ennetzen
B 167
4. Die SIMULA-Programmstruktur Zur Implementierung des beschriebenen Simulationskonzeptes erschien den Autoren die Sprache SIMULA wie keine zweite geeignet. Die in SIMULA verwirklichte Klassenstruktur erm6glicht einerseits eine bequeme Modellierung der statischen Modellstruktur (siehe 2), andererseits k6nnen die dynamischen Prozesse (siehe 3) durch die vorprogrammierten Simulationsroutinen einfach beschrieben werden. Ohne auf Details n~iher einzugehen, wollen wir die Grobstruktur eines SIMULAProgrammes angeben. Das Verkehrsnetz (Kreuzungen und Stragen) kann durch die Klassen ,,knoten" und ,,kante" wie folgt beschrieben werden:
class knoten begin ref (kante)array [ 1 : 4 ] kant; end class kante ( spuranzahl) ; integer spuranzahl; begin ref (knoten) nextknoten; tel(head) array [1 : spuranzahl] fahrschlange; end Jeder Knoten besitzt vier Pointervariablen, die auf die angrenzenden Kanten weisen (vgl. 2.1). Innerhalb jeder Kante bestehen soviele Fahrschlangen (lineare Pointerlisten yon hintereinanderfahrenden Fahrzeugen), wie die Spuranzahl betr~igt. Spezielle Knotentypen (ampelgesteuert, ungesteuert) k6nnen durch die Unterklassen knoten class ampelknoten und knoten class ungesteuerterknoten beschrieben werden. Die dynamischen Komponenten werden durch Prozefiklassen dargestellt: Zur Beschreibung der Funktion der Verkehrsampeln dient die process class ampel. Die aufwendigste und komplizierteste Prozefiklasse ist jene, die das Verhalten der einzelnen Fahrzeuge beschreibt. Im folgenden ist ein Programmabschnitt dieser Klasse angegeben, wobei die in geschweifte Klammern gesetzten Prozeduren nur sprachlich formuliert werden.
ref (auto) car; process class auto (ort); ref (kante) ort; begin real abfahrtszeit, minankunftszeit, geschw; integer spur; while true do
B 168
W. Grossmann und G. Pflug
begin abfahrt:ab fahrtszeit :=time (Richtungswahl durch Zufallsroutine nach Abbiegewahrscheinlichkeiten ergibt: abbw.) (Spurwahlalgorithmus ergibt: spur ) comment Falls die Fahrschlange nicht leer ist, wird die Pointervariable car auf den Vordermann gesetzt; if ort 9 fahrschlange [spur] 9 empty then begin (Berechnung der minimaten Ankunftszeit: minankunftszeit und der m6glichen Endgeschwindigkeit: geschw, unter Beriicksichtigung des ungehinderten Fahrverhaltens ) goto einftigen end else begin car: - ort 9 fahrschlange [spur] 9 last {Berechnung der minimalen Ankunftszeit: minankunftszeit und der m6glichen Endgeschwindigkeit: geschw unter Berticksichtigung yon Dichte, L/inge, minimale Ankunftszeit des Vordermannes und dem Pulkaufl6sungsfaktor ) end einftigen: into (ort 9 fahrschlange [spur]); / f o r t 9 fahrschlange [spur] 9 cardinal = 1 then reactivate this auto at minankunftszeit else passivate; fahrt: if time < minankunftszeit then reactivate this auto at minankunftszeit; ankunft: if {die Ampel ist auf griJn oder es gibt keine Ampel ) then goto freiamp else begin geschw := 0 current 9 precede (ort 9 fahrschlange [spur]); passivate end; freiamp: if (es gibt keinen behindernden Verkehr, dem Vorrang zu ~geben ist } then goto wegfaliren else reactivate this auto delay 1; wegfahren: current 9 out; if not {Geradeausfahrer ~}then geschw := max (0, min (geschw - 1; 5,5)); comment das nachfolgende Auto wird aktiviert; c a r : - ort 9 fahrschlange [spur] 9 first; if car 9 minankunftszeit < time + 2,5 then begin car 9 geschw := ifgeschw = 0 then 4,5 else geschw. + 1,2; reactivate car delay 2,2; end * while *; end * auto *;
Ein SiMULA-Modellzur Ereignissimulation yon Stadtstr~ennetzen
B 169
Man erkennt, daft die m6glichen Reaktivierungspunkte der Fahrzeuge folgenden realen Zeitpunkten entsprechen: abfahrt: einfiigen: fahrt:
das Fahrzeug verl~t~t eine Kreuzung und falart in die n~ichste Strafie ein; das Fahrzeug wird in die Fahrschlange der gew~alten Fahrspur eingereiht; es wird tiberprtift, ob das Fahrzeug schon an der n~ichsten Kreuzung angekommen sein kann; ankunft: das Fahrzeug ist an der nhchsten Kreuzung angekommen, freiamp: die Ampel steht auf grtin; wegfahren: das Auto kann die Kreuzung iiberqueren. Durch das gew~ahlte Konzept kann einerseits die Anzahl der n6tigen Reaktivierungen (= Aufrufe des entsprechenden Unterprogrammteiles) minimal gehalten werden, andererseits ist eine grot~e Realit~tstreue gewfihrleistet, da jedes fiir die globalen Charakteristiken des Verkehrssystems wichtige Einzelverhalten Berticksichtigung findet.
5. Simulationsergebnisse Durch die Einzelsimulation k6nnen insbesondere folgende ftir die Netzwerkperformance wichtigen Gr6fien berechnet werden: die maximale und mittlere Dichte pro Kante, die maximale und mittlere Staul~nge, Fahrzeitenverteilung und Verlustzeitenverteilung. Das Programm wurde an der Cyber 74 der technischen Universitfit Wien implementiert und an Hand yon fiktiven Beispielen von Netzen getestet. Dabei ergab sich bei dem in Abb. 1 dargestellten Netz bei einem Input yon 12000 Fahrzeugen/h in das Netz ein Verhfiltnis 1 : 12 zwischen Rechenzeit und Simulationszeit. Bei einem Netz yon 35 Kreuzungen und dem Input yon 12000 Fahrzeugen/h betrug das Verhfiltnis 1:4. Von der Speicherkapazit~t der Anlage (200 000 oktal) ergab sich rechnerisch eine Obergrenze ftir die Netzgr6fie von 80 Knoten bei ca. 4000 gleichzeitig im System befindlichen Fahrzeugen.
Literaturverzeiehnis B6hm, H., und H. Heusch: Die Anwendung der Monte-Carlo Methode in der Strafienverkehrstech-
nik. Strafienbau und Strai~enverkehrstechnik, Heft 73, Bonn 1968. Gartner, N., N. Little und H. Gabbay: Optimization of traffic signal settings by mixed integer
linear programming I, II. Trans. Sci. 9, 1975, 321-363. Gerlough, D.L., und M.J. Huber: Traffic Flow Theory. Transportation Research Board Report 165,
Washington 1975. Maher, M., und R. Akcelik: Route Control-Simulation Experiments Trans. Res. Vol. 11, 1977,
25-31. Ribbeck, K. : Routensuehe in Stadtstrat~ennetzen. Strat~enbau und Strat~enverkehrstechnik, Heft
134, Bonn 1972. Robertson, D.L: Transyt: a traffic network study tool. Road Research Laboratory Report 253,
Middlesex 1969. Webster, F. V.: Traffic Signal Settings. Road Research Laboratory Report 39, Middlesex 1958.