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.

Sign up to vote on this title
UsefulNot useful