You are on page 1of 6

automat komórkowy, symulacja ruchu, mikrosymulacja ruchu, ruch pojazdów

Michał Stanek
Wydział Informatyki i Zarządzania, Politechnika Wrocławska, koło naukowe Sztucznej Inteligencji
„CJANT", opiekun naukowy dr hab. inŜ. Halina Kwaśnicka, prof. PWR

Nowoczesne metody mikrosymulacji ruchu drogowego z


wykorzystaniem automatów komórkowych

Z uwagi na nasilający się proces urbanizacji, społeczeństwo staje przed powaŜnymi problemami
komunikacyjnymi. Według amerykańskich agencji rządowych z powodu korków ulicznych gospodarka
USA ponosi kaŜdego roku, wielomiliardowe straty. Nieocenione stają się narzędzia umoŜliwiające
symulację ruchu zarówno w obrębie aglomeracji miejskich jak i dróg szybkiego ruchu i autostrad.
Skrócony czas podróŜowania, zmniejszona emisja spalin, większe bezpieczeństwo, to tylko nieliczne
korzyści, jakie mogą zostać osiągnięte. Artykuł przedstawia moŜliwość zastosowania automatów
komórkowych w procesie mikrosymulacji ruchu drogowego. Przedstawiono szczegóły konstrukcji
automatu. Zostały omówione otrzymane wyniki oraz przedstawione moŜliwe ulepszenia.

1. WSTĘP

Obraz naszych dróg w ciągu ostatnich piętnastu lat zmienił się nie do poznania.
Samochód, który kiedyś stanowił dobro luksusowe, stał się powszechnym środkiem
transportu. Wzrost aglomeracji miejskich oraz migracja ludzi z centrum miast na
obrzeŜa dodatkowo nasilił wzrost liczby samochodów. Nikogo nie dziwi obecnie fakt
posiadania kilku pojazdów. Taka tendencja powoduje jednak pewne odczuwalne dla
nas wszystkich niedogodności w postaci wielu godzin spędzonych w korkach
ulicznych. Coraz większego znaczenia nabierają efektywniejsze metody
projektowania oraz zarządzania drogami. Aby tego dokonać potrzeba jednak
dokładnych narzędzi analizy bieŜącego i przyszłego uŜycia poszczególnych obiektów
drogowych. Tutaj z pomocą przychodzą metody symulacji ruchu. Skonstruowanych
oraz opisanych jest wiele modeli. Podzielić je moŜemy na makro modele, które
opisują ogólne zachowania i trendy w ruchu samochodowym, rozwaŜając ruch jako
jedną całość i nie koncentrując się na zachowaniu poszczególnych jednostek.
Mikromodele zakładają, Ŝe obraz całości moŜe zostać osiągniety jedynie poprzez
analizę zachowania poszczególnych elementów. Wśród grupy mikrosymulacji
szczególnie interesujące są modele bazujące na automatach komórkowych [4]. Modele
te w ostatnim czasie cieszą się wzrastającą popularnością [7]. Dodatkową cechą
przemawiająca na ich korzyść jest niska złoŜoność obliczeniowa[3].
Praca ta omawia koncepcję automatu komórkowego umoŜliwiającego symulację
ruchu na odcinkach dróg jedno i wielopasmowych.

2. BUDOWA AUTOMATU

NajwaŜniejszą cechą automatu komórkowego jest jego dyskretna przestrzeń


składająca się ze skończonej ilości komórek. KaŜda z tych komórek posiadać musi
dokładnie takie same cechy oraz zbiory wartości.
Automat komórkowy potrafiący symulować ruch po jednopasmowej
jednokierunkowej drodze składa się z pojedynczego łańcucha komórek. Jedna
komórka takiego automatu jest odpowiednikiem jednego metra rzeczywistej drogi (w
automacie opisanym przez Nagela-Schreckenberga[2] długość ta wynosi 7,5 metra).
Pojedynczy pas ruchu długości 150 metrów reprezentowany jest wobec tego przez 150
komórek (wektor o długości 150). KaŜda z tych komórek posiadać moŜe dwa stany –
zajęta przez jakiś samochód bądź wolna. KaŜdy pojazd zajmuje jedną bądź więcej
komórek oraz posiada swoją prędkość. Prędkość ta określa o ile komórek przesunie
się cały samochód w kolejnym kroku automatu. Jeden krok automatu odpowiada
zmianie stanu drogi jaki zachodzi po 1 sekundzie.

Rys. 1. Schemat ideowy automatu komórkowego reprezentującego


jednopasmową drogę

Algorytm sterujący pracą takiego automatu musi w pierwszym kroku obliczyć


moŜliwe prędkości pojazdów, a następnie przesunąć wszystkie pojazdy o liczbę
komórek równą ich aktualnej prędkości. Pseudokod przedstawiony jest poniŜej:
foreach(pojazd) do
begin
v = min (vmax, v + 1, Odlnast+PreferowanyDystans)
if (rand() < Pzwol) then v = max (v – 1, 0)
end
przesunPojazdy()
Rys. 2. Kilka kroków działania automatu

Dla kaŜdego pojazdu na drodze modyfikowana jest jego aktualna prędkość.


Zmiana ta bierze pod uwagę odległość dzielącą samochód od pojazdu znajdującego
się bezpośrednio przed nim odlnast oraz od maksymalnej dozwolonej prędkości na
drodze oznaczonej przez vmax (równej 33 dla prędkości 120 km/h). JeŜeli przed
pojazdem nic się nie znajduję i jednocześnie porusza się z v < vmax to prędkość
zwiększana jest o 1 m/s. JeŜeli natomiast przed pojazdem znajduje się inny pojazd, to
naleŜy sprawdzić czy odległość dzieląca te pojazdy zwiększona o pewną zmienną
losową np. o rozkładzie trójkątnym (1,3) nie jest większa niŜ aktualna prędkość. JeŜeli
tak to zmniejszamy prędkość do wartości równej tej róŜnicy. Element losowy w ruchu
pojazdów uzyskujemy w kroku odpowiedzialnym za zmniejszenie prędkości pojazdu.
Losowana jest liczba z przedziału od [0 ; 1] i jeŜeli jest on mniejsza niŜ pewien próg
Pzwol to zmniejszamy aktualną prędkość pojazdu (w omawianym modelu Pzwol wynosi
0,2).

Rys. 3. Wykres droga – czas dla automatu komórkowego


symulującego ruch po prostej
3. DROGI WIELOPASMOWE

Ruch po drogach wielopasmowych moŜliwy jest po rozszerzeniu przestrzeni


automatu o kolejny wymiar[5]. W tym przypadku automat reprezentowany jest przez
macierz komórek o wymiarze dlugośćDrogi × ilośćPasów (rys. 4). Reguły dotyczące
ruchu po prostej nie zostają zmodyfikowane w stosunku do modelu jazdy po prostej,
dodane natomiast muszą zostać warunki zmiany pasa.

Rys. 4. Symulacja wielu pasów ruchu za pomocą automatu komórkowego

Pierwszym warunkiem jest warunek bezpieczeństwa określony jako minimalna


odległość dzieląca analizowany samochód od samochodu znajdującego się za nim
(OdległośćZa) na pasie docelowym. Odległość ta musi być większa niŜ vmax
zwiększona o maksymalną dopuszczalną wartość zmiennej losowej
PreferowanaOdległość oznaczana dalej jako PreferowanaOdległośćMAX. Drugim
warunkiem jest warunek na odległość do samochodu znajdującego się przed
analizowanym pojazdem. W tym przypadku odległość ta musi być większa niŜ
aktualna prędkość v zwiększona o PreferowanaOdległośćMAX.
Zmiana pasa na lewy następuje, gdy vPrzed <= v && vPrzed <= vLewy, a zmiana pasa
na prawy jeŜeli spełnione jest vPrawy > v || vPrawy > vPrzed (gdzie symbol && oznacza
koniunkcję logiczną, a znak || alternatywę). Pseudokod działania automatu
przedstawiony jest poniŜej:
foreach (samochód)
begin
if (moznaZmienicNaLewy) then
begin
if(vPrzed <= v and vPrzed <= vLewy) then LeftLine
end
else if (moznaZmienicNaPrawy) then
begin
if(vPrawy > v or vPrawy > vPrzed) then RightLine
end
v = min (vmax, v + 1, Odlnast+ PreferowanyDystans);
if (rand() < Pzwol) then v = max (v – 1, 0)
end
przesuń_pojazdy
Operacje moŜna zmienićNaLewy i oraz moŜnaZmienićNaPrawy badają warunek
bezpieczeństwa na pasie odpowiednio lewym i prawym. Na rys. 5 pokazany jest
wykres uzyskanej zaleŜności natęŜenia od gęstości dla pojedynczego pasa ruchu.

Rys. 5. ZaleŜność natęŜenia i gęstości

4. SKRZYśOWANIA DRÓG

Dzięki zastosowaniu komórek odpowiadających rzeczywistej odległości 1 metra


moŜliwe jest konstruowanie bardzo dokładnych modeli sieci dróg miejskich [6], w
których moŜliwa jest równieŜ symulacja w obrębie skrzyŜowania. Na rys. 6
przedstawiony jest schemat automatu komórkowego reprezentującego skrzyŜowanie 3
dróg. Przejazd przez takie skrzyŜowanie podlega tym samym zasadą jak jazda po
prostej [1]. NaleŜy jednak dodatkowo sprawdzać kolizyjność przejazdu, w punktach
kolizyjnych zaznaczonych na rysunku ciemniejszym kolorem.

Rys. 6. Reprezentacja skrzyŜowania trzech dróg

5. PODSUMOWANIE

Automaty komórkowe pomimo swojej prostej budowy i zasady działania generują


wyniki bardzo zbliŜone do pomiarów rzeczywistych. Niestety zaleta automatu jaką
jest prostota staje się równieŜ w pewnych sytuacjach jego wadą, ze względu na to iŜ
nie posiadamy Ŝadnych informacji dotyczących tras przejazdów poszczególnych
samochodów. Niedogodność tą ominąć moŜna transformując model komórkowy do
modelu systemu wieloagentowego, umoŜliwiającego zbieranie większej ilości danych
oraz wpływ na większą ilość parametrów. Przykładowo moŜliwe jest analizowanie
zuŜycia benzyny oraz emisji spalin, wprowadzenie indywidualnych charakterystyk
kierowców oraz symulacja róŜnych warunków drogowych.

PODZIĘKOWANIA

Chciałbym podziękować Pani profesor Halinie Kwaśnickiej opiekunowi koła naukowego „Cjant”, za
inspirację, mobilizację oraz krytyczne uwagi w czasie realizacji projektu oraz podczas pisania artykułu.
Chciałbym podziękować równieŜ dr Maciejowi Kruszynie z Instytutu InŜynierii Lądowej Politechniki
Wrocławskiej za celne uwagi dotyczące merytorycznych aspektów symulacji ruchu drogowego.

LITERATURA

[1] Delight E., Provido B., Ramires M. A., Tabares W. C., Saldaña P. R., Computer Simulations of
Traffic on Road Intersections, not published
[2] Esser J., Schreckenberg M., Microscopic Simulation of urban traffic based on cellular automata,
International Journal of Modern Physics C, Vol. 8, No. 5 (1997) 1025-1036
[3] Miaoqing F., Foong W. W., Investigate Traffic Flow Using Cellular Automata, An USC3001 report
2003/2004
[4] Nagel K., Schreckenberg M., Traffic jam dynamics in stochastic cellular automata, 95ATS089. 1997
[5] Nagel K., Wolf D. E., Wagner P. , Simon P. M., Two-lane traffic rules for cellular automata: A
systematic approach, Phys. Rev. E, Vol 58 No. 2, (Aug. 1998)
[6] Nagel K., Simon P. M., Simpliffied cellular automaton model for city traffic, Phys. Rev. E. 58, 1286
(1997)
[7] Nagel K., Schreckenberg M., “A Cellular Automaton Model for Freeway Traffic”. J. Physique, Vol.
2 (1992), pp. 2221-2229

STRESZCZENIE

Increasing number of cars cause communication problems. USA Government agencies inform that
every year economy loses millions of dollars because of traffic congestions. We need to better manage
our roads to prevent that inconvenient. Article describes possibility of use cellular automata in micro
simulation of traffic flow process. They are details about model architecture and obtain results. They are
also discuss about future improvements.

You might also like