Budapesti Műszaki és Gazdaságtudományi Egyetem Közlekedésmérnöki Kar Közlekedésautomatikai Tanszék

Hasonló dokumentumok
Közlekedési áramlatok MSc. Csomóponti-, útvonali eljutási lehetőségek minősítése

Nagyméretű közúti közlekedési hálózatok analízise, 3D vizualizációja

Nagyméretű nemlineáris közúti közlekedési hálózatok speciális analízise

Forgalmi modellezés BMEKOKUM209

Nagyméretű közúti közlekedési hálózatok analízise

Haszongépj. Németh. Huba. és s Fejlesztési Budapest. Kutatási. Knorr-Bremse November 17. Knorr-Bremse

MINTA Írásbeli Záróvizsga Mechatronikai mérnök MSc. Debrecen,

Közlekedési áramlatok MSc. A közúti áramlatok levezetésére szolgáló infrastruktúra jellemzése, fázisidőtervezés, hangolás

Autonóm jármű forgalomszimulátorba illesztése

Autonóm - és hagyományos közúti járművek alkotta közlekedési rendszerek összehasonlító elemzése

A változtatható irányú forgalmi sávok alkalmazása a városi közlekedésirányításban (Egy hálózati analízis.)

Gyalogos elütések szimulációs vizsgálata

FEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI

ÚJ MEGOLDÁSOK A KÖZÖSSÉGI KÖZLEKEDÉSBEN KONFERENCIA HARKÁNY VÁROSFEJLESZTÉS KÖZLEKEDÉSFEJLESZTÉS PÉCSETT

Miskolci Egyetem Gépészmérnöki és Informatikai Kar Informatikai Intézet Alkalmazott Informatikai Intézeti Tanszék

Irányításelmélet és technika II.

IFFK 2015 Budapest, október

út hosszát. Ha a két várost nem köti össze út, akkor legyen c ij = W, ahol W már az előzőekben is alkalmazott megfelelően nagy szám.

Város Polgármestere ELŐTERJESZTÉS. A 1. sz. főúton lévő ötágú körforgalommal összefüggő kérdésekről

Egyedi sebességfolyamatok kinyerése, nagyméretű városi úthálózatok modellezése során

A TERVEZETT M0 ÚTGYŰRŰ ÉSZAKI SZEKTORÁNAK 11. ÉS 10. SZ. FŐUTAK KÖZÖTTI SZAKASZÁN VÁRHATÓ LÉGSZENNYEZETTSÉG

A szimplex algoritmus

Irányításelmélet és technika II.

Folytonos rendszeregyenletek megoldása. 1. Folytonos idejű (FI) rendszeregyenlet általános alakja

Gépészeti rendszertechnika (NGB_KV002_1)

ÁRAMKÖRÖK SZIMULÁCIÓJA

SITRAFFIC Scala városi forgalomirányító központ. Copyright Siemens Zrt All rights reserved.

Statisztikai módszerek a skálafüggetlen hálózatok

Nagyfeszültségű távvezetékek termikus terhelhetőségének dinamikus meghatározása az okos hálózat eszközeivel

A brachistochron probléma megoldása

BUDAÖRS, KORLÁTOZOTT IDEJŰ VÁRAKOZÁSI ÖVEZET,

Közúti forgalomszámlálás e_sensor rendszerrel Budapest dugódíj projekt (sajtóanyag)

Logisztikai szimulációs módszerek

Alap-ötlet: Karl Friedrich Gauss ( ) valószínűségszámítási háttér: Andrej Markov ( )

Konjugált gradiens módszer

Gráfelmélet/Diszkrét Matematika MSc hallgatók számára. 3. Előadás

Logisztikai hálózatok funkcionális elemekre bontása intralogisztikai

Makroökonómia. 6. szeminárium

Logaritmikus erősítő tanulmányozása

Forgalom-szimuláció eltérő közegekben

Algoritmuselmélet 18. előadás

Jelek és rendszerek 1. 10/9/2011 Dr. Buchman Attila Informatikai Rendszerek és Hálózatok Tanszék

WLAN lefedettségi terv készítés - Site Survey

Tehergépjármű parkolás a hazai gyorsforgalmi úthálózaton Sándor Zsolt zsolt.sandor@mail.bme.hu

SAP EAM MRS és LAM megoldásainak gyakorlati bevezetési tapasztalatai

További programozási esetek Hiperbolikus, kvadratikus, integer, bináris, többcélú programozás

(Forrás:

Görbe- és felületmodellezés. Szplájnok Felületmodellezés

Mérési hibák

15. LINEÁRIS EGYENLETRENDSZEREK

(Solid modeling, Geometric modeling) Testmodell: egy létező vagy elképzelt objektum digitális reprezentációja.

Makroökonómia. 7. szeminárium

Összeállította Horváth László egyetemi tanár

Utak és környezetük tervezése

Totális Unimodularitás és LP dualitás. Tapolcai János

NGB_IN040_1 SZIMULÁCIÓS TECHNIKÁK dr. Pozna Claudio Radu, Horváth Ernő

Hidraulikus hálózatok robusztusságának növelése

LINEÁRIS PROGRAMOZÁSI FELADATOK MEGOLDÁSA SZIMPLEX MÓDSZERREL

A forgalomsűrűség és a követési távolság kapcsolata

1. Egy lineáris hálózatot mikor nevezhetünk rezisztív hálózatnak és mikor dinamikus hálózatnak?

A felelősség határai a tudásalapú társadalomban a közlekedés példáján. Palkovics László BME

Hibadetektáló rendszer légtechnikai berendezések számára

22. GRÁFOK ÁBRÁZOLÁSA

Utak és környezetük tervezése

Algoritmusok Tervezése. 6. Előadás Algoritmusok 101 Dr. Bécsi Tamás

Mechatronika alapjai órai jegyzet

Algoritmuselmélet. Bonyolultságelmélet. Katona Gyula Y.

26. MINIMÁLIS KÖLTSÉGŰ UTAK MINDEN CSÚCSPÁRRA

Ellátási lánc optimalizálás P-gráf módszertan alkalmazásával mennyiségi és min ségi paraméterek gyelembevételével

Nagyságrendek. Kiegészítő anyag az Algoritmuselmélet tárgyhoz. Friedl Katalin BME SZIT február 1.

Intelligens közlekedési rendszerek hazai bevezetésének várható hatása az úthálózaton a torlódásos időszakok alakulására

Infobionika ROBOTIKA. X. Előadás. Robot manipulátorok II. Direkt és inverz kinematika. Készült a HEFOP P /1.0 projekt keretében

A lineáris programozás alapjai

Soros felépítésű folytonos PID szabályozó

Függvények Megoldások

Szimulációs technikák

Gráfok 2. Legrövidebb utak, feszítőfák. Szoftvertervezés és -fejlesztés II. előadás. Szénási Sándor

Tartalom. Állapottér reprezentációk tulajdonságai stabilitás irányíthatóság megfigyelhetőség minimalitás

További forgalomirányítási és szervezési játékok. 1. Nematomi forgalomirányítási játék

A II. kategória Fizika OKTV mérési feladatainak megoldása

HÍDTARTÓK ELLENÁLLÁSTÉNYEZŐJE

BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM KÖZLEKEDÉSÜZEMI ÉS KÖZLEKEDÉSGAZDASÁGI TANSZÉK

Osztott algoritmusok

Keresztmetszet másodrendű nyomatékainak meghatározása

2. Visszalépéses keresés

Két- és háromállású szabályozók. A szabályozási rendszer válasza és tulajdonságai. Popov stabilitási kritérium

Körforgalmak élettartama a tervezés és kivitelezés függvényében

Beltéri autonóm négyrotoros helikopter szabályozó rendszerének kifejlesztése és hardware-in-the-loop tesztelése

Matematika III előadás

A hálózattervezés alapvető ismeretei

Mechanika I-II. Példatár

Adatszerkezetek 2. Dr. Iványi Péter

Grafikus folyamatmonitorizálás

1. előadás. Lineáris algebra numerikus módszerei. Hibaszámítás Számábrázolás Kerekítés, levágás Klasszikus hibaanalízis Abszolút hiba Relatív hiba

KÖSZÖNTJÜK HALLGATÓINKAT!

18. Útburkolati jelek

OpenCL alapú eszközök verifikációja és validációja a gyakorlatban

Szinkronizmusból való kiesés elleni védelmi funkció

Korszerű mérési és irányítási módszerek városi közúti közlekedési hálózatban

Dr. Tóth János egy. docens

Átírás:

Budapesti Műszaki és Gazdaságtudományi Egyetem Közlekedésmérnöki Kar Közlekedésautomatikai Tanszék Pozitív, NL dinamikus rendszer-osztályába tartozó, az állapottérben normált állapotjellemzőkkel rendelkező közúti hálózati modellek stabilitása és 3D-s vizualizációja TDK dolgozat Készítették: Fazekas Sándor és Stróbl András Konzulens: Dr. Péter Tamás egyetemi docens Budapest, 2010. október

Tartalom Tartalom...- 2-1. Bevezetés...- 3-2. A hazai problémák...- 5-3. A makroszkopikus modellezés...- 7-4. Az alkalmazott modell...- 10-5. Csomópontok optimális működtetése...- 14-5.1. A Ljapunov függvény fizikai jelentése...- 14-5.2. A tartomány stabilitására kidolgozott algoritmus...- 18-5.3. Egy jelzőlámpás csomópont optimális irányítása...- 21-5.4. Az u 1 et meghatározó célfüggvény a csomópont optimális irányítására...- 24-6. A sajátfejlesztésű szoftver...- 30-6.1. Általános leírás...- 30-6.2. Forgalomvizualizáció 3D -ben...- 32-6.2.1. Online típusú vizualizáció...- 33-6.2.2. Animáció megvalósítása...- 37-6.2.3. Kezdeti állapot...- 37-6.2.4. Járművek haladása az egyenes szakaszokon...- 38-6.2.5. Járművek haladása a kereszteződésekben, kanyarokban...- 39-6.2.6. Elosztási tényezők és sűrűségek figyelembe vétele...- 39-6.3. Bing Maps integráció...- 41-7. Összefoglalás...- 45-8. Köszönetnyilvánítás...- 45-9. Irodalomjegyzék...- 46-10. Ábrajegyzék...- 48-11. Függelék I....- 49-12. Függelék II....- 53 - - 2 -

1. Bevezetés A lakosság növekedése szoros kapcsolatban áll az infrastrukturális fejlesztésekkel és fejlődéssel. Ott, ahol a közlekedési lehetőségek fejlesztését visszafogják, vagy elhanyagolják, lelassul a városiasodás gondoljunk csak a magyar történelemre és a reformkorra, amikor döntő kérdéssé vált a közlekedés fejlesztése és a városiasodás elősegítése. Nem véletlen, hogy a kiegyezést követően éppen ezeken a területeken különösen felgyorsult a fejlődés, és hogy a trianoni béke milyen következetesen igyekezett megtörni ezt a lendületet. A történeti tapasztalatok azt mutatják, hogy várost reprezentáló objektumok, együttesek, mint lakóterületek, gazdasági övezetek, ipari centrumok és a közöttük kiépülő kapcsolatok egymást váltva válnak fő hajtóerőivé a városfejlődésnek. Ugyanakkor a két komponens folyamatosan hat egymásra, és túl nagy különbség sem alakulhat ki. A kapitalista fejlődés megindulásakor sorra omlottak az európai városokban a városfalak, helyüket körutak foglalták el, a városkapuk tágas sugárutaknak adtak helyet, melyekhez a város más településekkel kialakuló kapcsolatai csatlakoztak. Megjelent a városi tömegközlekedés, és az egyéni közlekedés olyan új formái is berobbantak a századfordulón, mint a kerékpár és az autó. Napjaink városaiban a jövő évezred kérdései között található a közlekedés megoldása. A fejlődő országokban hatalmas népességű megapoliszok alakultak, ahol a közlekedés a szegény rétegek mozgása, munkához vagy munkába jutása szempontjából is fontos, de feltételei igen nehezek. Erre példa Mexikóváros, Sao Paolo, Rio de Janeiro is. A fejlettebb országokban a fő- és alközpontrendszerek közötti közlekedés, a történelmi magok kiszolgálása és az agglomerációs jelleghez tartozó nagy távolságok, leküzdése a fő feladat. Az értékes építészeti környezet megóvása miatt, a századfordulóhoz hasonló bontásos közlekedési térnyerés aligha járható. Nem véletlen, hogy itt a külön szintű közlekedés, közúti alagutak, a metrók viszik a prímet. Említhető Lille, Párizs, Bécs példája. Csak kevés város volt képes olyan előnyt szerezni, hogy éppen a nagykapacitású közlekedési hálózat kiépítésével tudja lendíteni a városfejlődést új területeken, mint például Prága vagy Washington DC esetében történt, és történik. Utóbbi esetében a város vezetése éppen a területgazdálkodás szempontjait figyelembe - 3 -

véve alakította ki hálózatát, mely mellé üzlethálózatok, bevásárló központok, ipari centrumok települtek. A forgalmi igényeket pedig ott és olyan irányokban kell kielégíteni, ahol jelentkeznek, és a leggyorsabb eljutási időt biztosítják. A történelmi korokban a közlekedésfejlesztés mindig jó üzletnek bizonyult. A közlekedés és különösen a városi tömegközlekedés üzemeltetése viszont sehol sem jövedelmező önmagában. Haszna a város életének fenntarthatóságában, az emberek mobilitásának biztosításában rejlik. A közúti közlekedést, nagyméretű hálózaton (2002-ben 29 millió km volt a teljes úthossz a világban) hatalmas tömegáram jellemzi, ez adja a jelentőségét, és okozza problémáit is. 2000-ben 400 milliónál több volt a gépjármű, 2010 első negyedévében, több mint 750 millió gépjármű van a világon, együttes hossza 65,5 szer kerüli meg az egyenlítőt. Ha a jelenlegi tendencia folytatódik, akkor a Földön a gépjárművek száma a következő 30 évben meg fog duplázódni. A növekedés 25-35 millió db/év. Az Egyenlítőt kétszer körül érné a növekedéssel használatba vett összes járműhossz, hogyha azokkal képzeletben egymás mögé állnánk az Egyenlítő mentén A közlekedési módozatok között az Európai Unióban és Magyarországon is a legnagyobb teljesítménnyel (70-75%) a közúti közlekedés bír. Az EU-ban a forgalmi dugók évente, közel 20 milliárd euró veszteséget okoznak.[ A közúti közlekedés társadalmi és gazdasági költségeinek a meghatározása Dr. Bokor Zoltán, Dr. Mészáros Ferenc, Dr. Török Ádám Bagi Zsófia, Hokstok Csaba, Markovits- Somogyi Rita OTKA CNK78168 - CONTRA]. A baleseti költségek az alábbi elemekre tagolhatók: anyagi károk, adminisztratív költségek, orvosi ellátás költsége, termelési veszteség, kockázati érték. A közösségnek évente mintegy 130 milliárd Euro kárt okoznak. A kettő együtt 1,46 szorosa a magyar GDP-nek! (26 095-27 811 mrd. Ft ami kb. 1,03004E+11 EUR nominálisan folyó áron). Különösen jelentős tehát a hatása, a nagyméretű közúti hálózatok forgalmi folyamatainak ismeretének és optimálásának. - 4 -

2. A hazai problémák Mindenek előtt, fontos feladat a hálózaton jelentkező terhelések ismerete. Ez jelentős mérési feladat, amely a hálózatra jellemző statisztikai adatokat szolgáltat, lásd budapesti felmérések [IFFK 2010 MONIGL J., Berki Zsolt TRANSMAN: Korszerű közlekedéstervezési módszerek a városi térségi lét fenntarthatóságának érdekében], és országos felmérések [BAUCONSULT: A 2007. évi hazai összes forgalom az országos úthálózaton]. Budapest környezeti terhelése egyértelműen a kiemelkedik az ország egyéb régiói közül. Ez annak is köszönhető, hogy Magyarország lakosságának 18 %-a koncentrálódik az ország területének 0,5 %-án. Budapest területe 525,16 km 2, lakosainak száma 1.721.556 fő [22]. Ebből adódik, hogy az egy főre jutó kibocsátott káros anyag mennyisége ezen a területen a legkritikusabb (ez még erőteljesebben igaz a belvárosi területekre!) A Belváros forgalom sűrűsége (jármű km/km 2 ) közel hatszor akkora, mint az egyéb körzeteké, illetve kétszer akkora, mint a csatolt területeké. Ebből következik, hogy a káros anyag kibocsátás is közel hatszor akkora. Budapest úthálózata radiális kialakítású, úthálózatának hossza több, mint 4.200 km. A magas ipari tevékenységet az is mutatja, hogy Budapesten termeli a GDP 34,1 %-át. A rendszerváltás óta folyamatosan nő a személygépkocsival közlekedők részaránya a tömegközlekedést használókkal szemben, melynek nagy része az agglomerációból bizonyos un. peak time-okban, meghatározott időablakokra koncentrálódik. Ezen időszakok a reggel 7h-8h illetve a délután 16h-18h. - 5 -

1. ábra: A 2007. évi hazai összes forgalom az országos úthálózaton (forrás: BAUCONSULT) Magyarország úthálózatának hossza mintegy 192.000 km, amiből 139.000 km a közút. Jól megfigyelhető, hogy a járművek mennyiségét vizsgálva az adott utakon, a gyorsforgalmi utakon jelentkezik a legnagyobb koncentráció, azt követően pedig az országos főútvonalakon. Kiemelt forgalommal bír az M1-es autópálya, az M3-as és M5- ös autópálya (kapcsolat a szomszédos országokkal), valamint az M7-es autópálya szezonálisan (Balaton vonzereje). Külön kiemelendő az M0-s autóút, amely Budapestet elkerülő szerepkörében az összes csatlakozó autópálya és egyéb út forgalmát felveszi. - 6 -

3. A makroszkopikus modellezés A modellezés nagyon merész lépése volt a Makro modellek létrehozása, Lighthill és Whitham, 1955], [Ashton, 1966], amikor is a forgalmat egy közeg áramlásaként kezelték és a modell két reláción alapul, az egyik a járművek megmaradásának törvénye, a másik a fundamentális egyenlet. A modell parciális differenciál-egyenletet eredményezett. Ez azonban igen egyszerű modelleknél is rendkívül számításigényes volt. A másik lehetőség, a forgalom modellezése és valós idejű forgalmi becsléssel összekötött irányításának megvalósítása. Ilyen pl. Papageorgiou és munkatársai által (1981) alkalmazott érdekes modell autópályákra és körgyűrűkre, amely 500 m-es szegmens-hosszakkal dolgozik, és egy-egy szegmensnél k*t (k=0,1,2, ) diszkrét időpontokban állandónak tekintette a forgalomsűrűséget. Ez által, mérésekkel igazolt igen jól alkalmazható modellt nyertek. 1990-ben a makroszkopikus modell az autópályát n számú, Δi = 500 m hosszúságú szelvényekre osztja (i= 1,..., n), az idő egy T= 10 s lépésköz alapján diszkretizált, és az időindex: k = 0, 1, 2,... Az összegyűjtött forgalomáramlás változókat következők határozzák meg ebben a különálló téridőkeretben: Forgalomsűrűség a ρ i (k) (jármű/km/sáv) a járművek száma az i-ik szegmensben kt időpillanatban, osztva a Δi szegmens hosszával és a λ i. sávszámmal Űrátlag-sebesség v i (k) (km/h) minden olyan jármű átlagos sebessége, amely beletartozik a szegmensbe, a kt időpillanatban. Forgalomáramlás q i (k) (jármű/h) annak a száma, hogy hány jármű távozik a szegmensből a [kt, (k + 1)T] időintervallumban osztva T-vel. Rámpabeáramlás: r i (k) és rámpakifolyás: s i (k) (mindkettő: jármű/h) az i-ik szegmensnél β i (k) jelenti a kimenő rátát az i szegmensnél, τ, Ν, Κ, δ, vf, ρcr, a modellparaméterek. A szóban forgó autópálya szakasznál ξiv(k) és ξiq(k) nulla várható értékű fehérzajt jelentenek, amelyek a sebességegyenletre és a hozzávetőleges áramlásegyenletre hatnak, visszatükrözve a modellezési hibákat, pontatlanságokat. - 7 -

2. ábra: Szegmensek és sebességértékek A légi közlekedési szektorokra, a légi forgalom áramlásirányítás területén készített modell [Arneson and Langbort, 2009] pozitív, konzervatív rendszereknél a hálózatokon keresztül történő anyagáramlását írja le. A légi tervezésre a statikus útvonal paramétereket használja a modell, a késések minimalizálásának elérésére. A szektorok közötti kapcsolatot feltételekkel felírt gráffal adja meg: 0 1 = {1,3,4}, O 2 = {2,3,4}, O 3 = 0, 0 4 =0. A repülők sebessége állandó. 3. ábra: A légtér hálózat, amelyet az alkalmazási példában használnak. A modell az alábbi koncepcióra épül: - Az 0 x i (t) állapotjellemző, az i-ik szektorban tartózkodó repülők számát jelöli. - A közlekedési modell makroszkopikus modell. - 8 -

- A modellezés tárgya, egy lineáris, pozitív, konzervatív rendszer. A hálózaton állandó sebességgel és β ij szétosztási tényezőkkel áramlik az anyag. Az anyagot a légi járművek (repülők) testesítik meg. - A matematikai modell: lineáris időinvariáns, homogén differenciálegyenletrendszer. - Vannak olyan szakaszok, (szektorok) amelyeknél visszaáramlást is feltételez. - A vizsgált folyamatnál, adott kezdeti értékű állapotjellemzők mellett, konstans sebességű áramlással, β ij szétosztási tényezőket figyelembe véve kifolyik a hálózatból az anyag, tehát az összes repülő földet ér a reptereken. Optimálási célok: - A teljes késedelem minimálása: azaz, a megfelelő β ij szabályozó paraméterek megválasztásával, a legrövidebb idő alatt történjen meg a repülők földet érése. - Teljes késedelem minimálása, további késedelem megszorításokkal: pl. egyes β ij -re vonatkozó kényszerek (β ij < c ij ), vagy pl. < γ i. - Teljes késedelem minimálása kapacitás megszorítás mellett, pl.x(t) b, t 0. - 9 -

4. Az alkalmazott modell Az irodalomból ismert közúti közlekedési hálózati modellek a csomópontokat, illetve kereszteződéseket kitüntetett elemként kezelik a modellekben. Így egy olyan gráfot kapunk, amely az eredeti közlekedési hálózat egy leképezése, a gráf csúcsai a csomópontok, illetve kereszteződések, az ívek pedig az őket összekötő útszakaszok. A mi modellünk nem ezt követi. Az irányított gráf élei dinamikus relációk, a kooperáló csúcsok szektorok. A dinamikus kapcsolati gráf térkép-hálózat invariáns, bármely város, közúti hálózat leírható vele. (Ez nem duálisa a térkép gráfnak.) Tehát, a modellezés területén teljesen új szemléletmódra és eredményekre támaszkodunk. A hálózat alkotó elemei a sávszakaszok és a definiált parkolók (hozzájuk sorolhatók az utak melletti parkoló sávokat is). Könnyen belátható, hogy a definiált parkolók, valamint az utak melletti parkoló sávok a hálózat működésében, mint általánosított szakaszok vesznek részt, tehát az egész hálózatban ténylegesen általánosított szakaszok (ívdarabok, szektorok) kooperálnak és ezek az elemek alkotják az új hálózati gráf csúcsait. Ennek az irányított gráfnak az élei dinamikus relációk, amelyek a geometriailag kapcsolatban álló és kooperáló csúcsok közötti átadási és befolyásolási kapcsolatokat írják le. Ez a modell, egyszerre vizsgálja az egész hálózatot a teljes kapcsolatrendszer mellett. Ebben önálló elemként már nem jelenik meg a csomópont, ugyanis minden csomópont működése, része a teljes hálózat kapcsolatrendszerének! Modellünkben, ezt a szemléletmódot követve, nagyméretű közúti közlekedési rendszerek matematikai modellezésére speciális, hipergráf struktúrát adtunk meg, amely leírja egy tartomány esetén, a belső-belső, a külső-belső, a belső-külső és a külső-külső hálózati elemek közötti kapcsolati összefüggéseket. A probléma általános megoldására alkalmazott matematikai modell, egy n db. belső szakaszból és m db. külső szakaszból álló dinamikus kapcsolati struktúrát definiál. Hálózati modellünk egy zárt görbével körülhatárolt tartományában helyezkedik el. - 10 -

(H B ) Belső és (H K ) külső hálózat kapcsolatai K 12 K 11 K 22 H B H K K 21 4. ábra: a belső és külső hálózat kapcsolatai K 11 K 12 K 21 K 22 5. ábra: a belső és külső hálózat kapcsolatai hipermátrixa x s L 1 P 1 K K 11 21 ( x, s) ( x, s) K K 12 22 ( x, s) x ( x, s) s Ahol: L és P a szektorok hosszát tartalmazó diagonális mátrixok: L l l,..., 1, 2 l n, P p p,..., 1, 2 p m Ez esetben a (H B ) belső hálózaton kialakuló normált járműsűrűségek a rendszer állapotjellemzői: - 11 -

x (t)=[x 1 (t), x 2 (t), x 3 (t),, x n (t)] T (1.1) A modellünkben 0 x i (t) 1 normált forgalomsűrűség állapotjellemzőt használunk (i=1,,n). Az egy szakaszon, vagy szektorban tartózkodó járművek együttes hosszát osztjuk a szakasz hosszával. Ez a számítás alkalmazható a parkolók esetében is, így a parkolók is általánosított szakaszok a modellben. A modell, a (H K ) külső hálózat azon részhálózatát is használja, amely olyan m db. szakaszból áll, amelyeknek közvetlen kapcsolatuk van valamely belső szakasszal. Az ezeken kialakuló normált járműsűrűségeket jelöli s(t) =[s 1 (t), s 2 (t),,s m (t)] T (1.2) amelyeket mérések alapján ismerünk. A hálózatot leíró matematikai modellünk figyelembe veszi a hálózat tartományon belüli belső és a tartományon kívüli külső kapcsolatait is [1,2,3]. Néhány, a kooperálással és a modellel kapcsolatos megjegyzés: - A modellünkben 0 x i (t) 1 normált forgalomsűrűség állapotjellemzőt használunk (i=1,,n). Az egy szakaszon, vagy szektorban tartózkodó járművek együttes hosszát osztjuk a szakasz hosszával. Ez a számítás alkalmazható a parkolók esetében is, így a parkolók is általánosított szakaszok a modellben. - A modellezés tárgya egy NL. pozitív rendszer. A hálózaton változó sebességgel és α ij vel jelölt (α ij általános esetben időtől függő α ij =α ij (t), vagy időtől és állapottól függ α ij =α ij (x(t),t),) szétosztási tényezőkkel, (rátákkal) áramlik a forgalom. A forgalmat a közúti járművek testesítik meg. A sebesség a forgalom sűrűségtől függ. Maximuma szakaszonként limitálva van. A sebesség függvényt befolyásolja még az időjárás, a látási viszonyok, az út geometriája, a domborzat, a minősége és a szélessége. - 12 -

- β ij vel jelöljük az egyes szakaszok átadásánál fellépő akadályozást 0 β ij <1, vagy rásegítést 1<β ij. (β ij általános esetben időtől függő β ij = β ij (t). vagy időtől és állapottól függ β ij = β ij (x(t),t). - 0 u ij (t) 1 kapcsolási függvény, az egyes szakaszok átadásánál működő forgalmi lámpák hatását veszi figyelembe. - A párhuzamosan haladó szakaszok (sávok), továbbá szakaszok és parkolók is adnak át egymásnak járművet a hálózaton. Ezt az átadást 0 γ ij (t), vagy 0 γ ij (x i (t), x j (t), t) arányossági függvény veszi figyelembe. - Belső tiltó automatizmusok is működnek a hálózaton: j-ből nem adhatunk át i-re, ha i tele van (x i (t) =1 S(x i (t)) =0). Ugyancsak j-ből nem adhatunk át i-re, ha j üres (x j (t) =0 E(x j (t)) =0). A normált állapotjellemzők alkalmazásával ezek a feltételek egyszerűen teljesíthetőek. Ezek biztosítják a modellben azt, hogy nem veszünk el járművet onnan ahol nincs (sűrűség nem lép negatív tartományba) és nem adunk oda, ahol a sűrűség már elérte az 1-et. - A hálózatot egy G zárt görbével körülkerített, nem feltétlenül egyszeresen összefüggő tartományban vizsgáljuk. Azon külső szakaszokon, amelyek közvetlen átadási, vagy átvételi kapcsolatban vannak valamely hálózati szakasszal, mérjük a normált 0 s i (t) 1 forgalomsűrűséget (i=1,,m). - A matematikai modell: NL. nem autonóm differenciálegyenlet-rendszer. x =<L> -1 [K(x,s) x + K input (x,s) s] (1.3) Az (1.3) adja meg a rendszer működését leíró nemlineáris differenciálegyenletrendszert, tetszőleges hálózati gráf esetében. Kimutatható, hogy a rendszer pozitív rendszer. [4], A modell lényegét tekintve, makroszkopikus modell [7,8,9]. - 13 -

5. Csomópontok optimális működtetése Vizsgálataink során a csomópontok programalkotó rendszerét meghatározottnak tekintjük, és az alábbiakból indulunk ki. [5,6]. 1. Azzal a feltételezéssel élünk, hogy az adott csomópont esetében már megtörtént a fázisba sorolás, minden fontos kritérium figyelembe vételével (pl. a minél kisebb fázisszámra való törekedés, valamint az egy fázisba való lehető legtöbb irány bevonása). 2. Esetünkben a fázisok száma és a fázisok sorrendje sem adott, ez a forgalomtól függ nagymértékben, ezért feltételezzük, hogy a vezérlés terve kiegészült az engedélyezett fázisátmenetek tervével, a vezérlési logikával, valamint a fázisengedélyezési tervvel is. 3. Meghatározásra került az egyes fázisok közti átmenet kapcsán, az úgynevezett közbenső idő mátrix, amely az egymást keresztező, vagy nyomvonal szempontjából kapcsolódó, ill. fonódó mozgások szabad jelzései között biztosítandó legkisebb időt, az úgynevezett közbenső időt tartalmazza. Ilyenkor tehát a vezérlési logika dönt, azaz a vezérlést megvalósító program, amelynél az állapotfüggő irányítására alkalmazzuk az alábbiakban tárgyalásra kerülő speciális MPC technikát. 5.1. A Ljapunov függvény fizikai jelentése Vizsgáljuk meg a V(x 1, x 2,, x n )= l 1 *x 1 + l 2 *x 2 + + l n *x n függvény fizikai jelentését. A definíciónk szerint: x i = N i *h/ l i ahol: N i az i-ik szakaszon tartózkodó járművek száma h egységjármű hossz N i *h/ l i helyettesítés után: V(t) = (N 1 (t)+ N 2 (t)+ + N n (t))*h a tartományban tartózkodó összes jármű számával arányos. A Ljapunov függvény deriváltját az (1.3) differenciálegyenlet-rendszerből nyerjük: - 14 -

V t m v m 1 x v x... w 1 w2 2 w1 w1 w1 m v wn x n + n v s n v s i1 1 i2 2 i1 i1 i1 Tehát a rendszer stabilis, ha a peremeken a kiszállítás nagyobb, mint a peremeken történő beszállítás. Röviden: F input < F output n v im s m Az irányítás, a peremeken kifele mutató F output és a peremeken befele mutató Fi nput összes fluxus számítása alapján történik és az alábbi feltétel teljesítését írja elő: Fi nput F output Ljapunov függvények módszerével kimutatható, hogy az autonóm rendszer aszimptotikusan stabilis. A nem autonóm rendszerre, a peremekre vonatkozó, Ljapunov függvényt alkalmazó irányítási törvény adható meg, amely elégséges feltételt ad a rendszer aszimptotikus stabilitására és dinamikusan alkalmazható a teljes tartományon, illetve, azokon a szubtartományokon, ahol a forgalomsűrűséget tekintve kritikus helyzet lép fel [7,8,9]. Annak a csomópontnak a működése az ideális, amely bármely rajta átáramló forgalmat akadályoztatás nélkül enged át. Mivel minden keresztező forgalom akadályozza a másikat, az ideális eset csak oly módon valósul meg, ha minden keresztező forgalom szintben eltoltan működik, 6. ábra. 6. ábra: szintben eltolt ideális kereszteződés - 15 -

Nyilván, ahol ez építészeti és környezeti szempontokat is figyelembe véve gazdaságosan megoldható, ott ezt kell alkalmazni. Az extrém forgalmú bonyolult csomópontoknál ez rendkívül költséges, de egyben lehet gazdaságos megoldás is. A legtöbb esetben azonban, gazdaságosan nem alkalmazható. Minden ilyen esetben reális követelmény, a csomóponton átáramló forgalom akadályozásának minimálását előírni! Ez, a csomópontot magában foglaló tartomány-szemléletet alkalmazva, úgy valósul meg, hogy minden egyes lépésben, egy véges időhorizonton előretekintve, olyan irányítást (fázist) valósítunk meg, amelynél, a tartományban lévő összes elem és a hozzájuk közvetlenül csatlakozó külső elemek között együttesen maximális számú járműátadás valósuljon meg. Az így definiált járműszám, a dinamikus modell alapján előre kiszámítható minden fázishoz és az optimumhoz tartozó irányítás (fázisválasztás) ez alapján meghatározható. A véges időhorizont megválasztása esetünkben két módon történhet: 1. Rövid dt időtartamú időhorizont választunk, un. mintavételezést alkalmazunk és ez alapján meghatározott optimális irányítási jelet, a minimális fázisidőtartamig megtartjuk. 2. Egy minimális fázisidőtartamot definiálunk, és ezt választjuk horizontnak. A továbbiakban azt mutatjuk be, hogy már az első, rapid módszerrel is jelentős eredményeket lehet elérni, természetesen, szem előtt tartva, hogy létezhetnek egyensúlyi állapotok is a két fázis között, oly módon, hogy egyiknél nagysebességű forgalom kis járműsűrűség esetén, ill. a másiknál kissebességű forgalomáramlat nagy járműsűrűségnél lép fel. A módszer az olyan gyakori esetekben igen hatékony, amikor az a tipikus eset lép fel, hogy az egyik fázisnál rendszeren kis forgalomsűrűség a jellemző, míg a másiknál jelentős sorok várakoznak. Természetesen, szem előtt tartjuk azt is, hogy a jelzőlámpás csomóponti irányításnak léteznek teljesítőképességi határai. A jelzőlámpával irányított csomópontoknál az egymást követő áramlatok időben biztonságos szétválasztását biztosító közbenső idők, a hasznos időalapot csökkentik. Az ismertetett új szemléletmód alapján minden csomópont a nagy hálózat részgráfjaként jelenik meg az őt alkotó általánosított szakaszok (ívdarabok, szektorok) - 16 -

kooperációjaként. Modellünk sajátossága tehát, hogy teljes hálózatot vizsgál, amelyben nincs kitüntetett szerepe a csomópontoknak, illetve a kereszteződéseknek. Mivel tetszőleges méretű tartományon történő optimálisra alkalmas, ezért nincs akadálya annak sem, hogy a kereszteződéseket, mint kisebb tartományokat vizsgáljuk a nagy hálózatban. Ezt a továbbiakban három, különböző típusú kereszteződés esetén mutatjuk be. Közöljük egy esetre a rendszer differenciálegyenlet-rendszerét és a számítások eredményeit is. - 17 -

5.2. A tartomány stabilitására kidolgozott algoritmus Algoritmusunkat a modell keretei között értelmeztük, implementáltuk a modellezőszimulációs szoftverben, és ennek keretei között vizsgáltuk, teszteltük. Ez az algoritmus nagymértékben épít az adaptív működésű közlekedési lámpák algoritmusára, amely a szoftver korábbi verzióiban már szerepelt. Az adaptív működés során a közlekedési lámpákat csomópontonként külön-külön kezeljük. A csomópontokban található zöld jelzéseket (azaz a makroszkopikus modell fogalmaival élve kapcsolatokat) két kb. azonos méretű fázisba (más szóhasználattal élve csoportba) osztjuk, azaz az első fázis k i =1 esetén kap zöldet, a második k i =0 esetén. Jelöljük az i kereszteződésbe belépő, az első csoportba tartozó sávok számát n i1 -nek, a kereszteződésbe belépő, a második csoportba tartozó sávok számát n i2 -nek. A csomópontokhoz (és így az adaptív működésű közlekedési lámpákhoz) az alább jellemzőket rendeljük hozzá: Mintavételezési periódus hossza (m i ). Egymást követő piros periódusok megengedett maximális száma (p maxi ). Az említetteken kívül az i-ik lámpás csomópontban a fázisokra nyilvántartjuk, hogy egymást követően hányadik periódusban kap épp piros jelzést a fázis (p i1 és p i2 ). Ezt a következő táblázat mutatja be: k i (első (1 - k i ) (második Mintavétel fázis) fázis) p i1 p i2 t p 1 0 0 x, ahol x N, és 0<x<p maxi t p+1 0 1 1 0 t p+2 0 1 2 0 t p+3 1 0 0 1 Az adaptív működés algoritmusa a következő: Az egyes csomópontok külön-külön mérik az adott csomópontban lévő időt (t), és az egyes sávokon található járműmennyiségeket (x j ). - 18 -

Amennyiben t értéke alapján épp letelt a mintavételezési periódus, akkor a következő történik: o A csomópont minden bejövő sávján fázisonként a következő időpillanatban lebonyolított járműforgalomra vonatkozó becslés történik. A becslés során meghatározott járműátadások fázisonként vett átlagát felhasználva történik meg a zöld fázisra vonatkozó döntés. Amennyiben p i1 (t) > p maxi, akkor k i = 1 (első fázis kap zöldet, függetlenül a becsléstől) Egyébként: amennyiben p i2 > p maxi, akkor k i = 0 (ekkor 1-k i = 1, azaz a második fázis kap zöldet, függetlenül a becsléstől) Legyen az első fázisban a p ik mintavételezési időpontban a becslés alapján az első illetve második fázis kapcsolatai által lebonyolított járműmennyiség összege c i1tp (t)és c i2tp. Ekkor az algoritmus az első fázisnak adja a zöld jelzést, ha c i1tp / n 1 > c i2tp /n 2, azaz k itp = 1 lesz. Egyébként az algoritmus a második fázisnak adja a zöld jelzést, ha c i1tp /n 1, < c i2tp /n 2, azaz k itp = 0 lesz. Az egyenlőségnek csak elméleti jelentősége van, tetszés szerint lehet k i értékét meghatározni a k i = {0,1} halmazból. A következőkben vázolt algoritmus célja a tartomány szélein elhelyezett lámpák megfelelő szabályozásával a tartomány stabilitásának biztosítása. A tartomány szélén lévő lámpákat a korábban elkészített, járműátadás-becsléseken alapuló adaptív algoritmus továbbfejlesztéséből előálló új algoritmus alapján vezérli a program a szimuláció közben. A korábbi algoritmus lényege az volt, hogy a kereszteződéshez köthető kapcsolatokat két halmazra (A és B) osztotta a felhasználó a modellezéskor, a számítási algoritmus futásakor pedig periodikusan becslés történt arra vonatkozóan, hogy a kettő közül melyik csoport képes nagyobb járműforgalmat lebonyolítani. Az a kapcsolat-csoport kapott zöld jelzést, amelyik várhatóan nagyobb járműforgalmat volt képes lebonyolítani. Ezzel szemben a most elkészített algoritmus három kapcsolathalmazzal dolgozik (A, B, C), ahol az egyik halmaz (C)-t az alkalmazás már a modellezéskor automatikusan - 19 -

megadja: ebbe a fázisba azon kapcsolatok tartoznak bele, amelyek az aktuális T tartományba vezetnek. A futás során tehát az algoritmus megvizsgálja, hogy az előző lámpaperiódusban a kritikus sűrűségérték felett van-e a tartomány sűrűsége. Ha igen, akkor megvizsgálja a legutóbbi periódusban tapasztalt kimenő és bemenő fluxusokat (a modellben értelmezett input és output szakaszok belső hálózati szakaszokhoz csatlakozó elemeinek járműsűrűsége). Ha ezek különbségéből az következik, hogy a tartomány járműmennyisége csökkent, akkor a korábbi adaptív algoritmus az A, a B és a C halmazokat veti össze az egyes, tartomány határán lévő kereszteződésekben, ellenkező esetben csak az A és a B halmazok becsült járműátadásai kerülnek összevetésre (azaz biztos, hogy nem kap olyan kapcsolat zöld jelzést, amely a tartományon kívülről a tartományon belülre vezet). Természetesen itt nem k i és 1-k i a vezérlőjelek, hanem k i k i2, k i3, ahol k i1 + k i2 + k i3 =1, közülük csak az egyik értéke lehet egy, a másik kettő értéke 0. - 20 -

5.3. Egy jelzőlámpás csomópont optimális irányítása s 3 3. Külső szakasz (Output) 4. Külső szakasz (Output) (4), x 4 (3), x 3 1- u 1 2. Külső szakasz (Input) s 4 u 1 (2), x 2 s 2 (1), x 1 s 1 1. Külső szakasz (Input) 7. ábra: Két egyirányú út egyszerű lámpás kereszteződése Minden tárgyalt hálózati rendszer differenciálegyenlet-rendszere (1.1) állapotjellemzőkkel és (1.2) mért sűrűségek alapján (1.3) alakban felírható: x =<L> -1 [K(x,s) x + K input (x,s) s] (3.1) Ez alapján, a 7. ábrán látható rendszernél a K és K input mátrixok az alábbiak: u 1 S( x 3 ) v 3, 1 ( x 3, x 1 ) E( x 1 ) 0 0 0 0 ( 1u 1 ) S( x 4 ) v 4, 2 ( x 4, x 2 ) E( x 2 ) 0 0 K := u 1 S( x 3 ) v 3, 1 ( x 3, x 1 ) E( x 1 ) 0 S( s 3 ) v 3, 3 ( s 3, x 3 ) E( x 3 ) 0 0 ( 1u 1 ) S( x 4 ) v 4, 2 ( x 4, x 2 ) E( x 2 ) 0 S( s 4 ) v 4, 4 ( s 4, x 4 ) E( x 4 ) S( x 1 ) v 1, 1 ( x 1, s 1 ) E( s 1 ) 0 0 0 0 S( x 2 ) v 2, 2 ( x 2, s 2 ) E( s 2 ) 0 0 Kinp:= 0 0 0 0 0 0 0 0-21 -

Modellünknél, a belső tartományban elhelyezkedő útszakasz hosszát l i a külső tartományban lévőkét pedig p i jelöli (i=1,2,3,4). Az egységjármű hosszát h-val jelöljük. A j szakaszról i szakaszra történő átvitelnél, v i,j jelöli az áramlási sebességét, ahol v i,j = v i,j (x i,,x j ) állapotfüggő. A hálózaton, 0 α ij vel jelölt szétosztási rátákkal áramlik a forgalom (α ij általános esetben időtől függő α ij =α ij (t), vagy időtől és állapottól függő α ij =α ij (x(t),t) függvény). β ij vel jelöljük az egyes szakaszok átadásánál fellépő akadályozást 0 β ij <1, vagy rásegítést 1<β ij. (β ij általános esetben időtől függő β ij = β ij (t), vagy időtől és állapottól függ β ij = β ij (x(t),t). A párhuzamosan haladó szakaszok (sávok), továbbá szakaszok és parkolók is adnak át egymásnak járművet a hálózaton. Ezt az átadást 0 γ ij (t), vagy 0 γ ij (x i (t),x j (t),t) arányossági függvény veszi figyelembe. Belső tiltó automatizmusok is működnek a hálózaton: j-ből nem adhatunk át i-re, ha i tele van (3.2). Ugyancsak j-ből nem adhatunk át i-re, ha j üres (3.3). S( x ){ 0 1x 1 x1 E( x ){ 0 x0 1 0x (3.2) (3.3) A normált állapotjellemzők alkalmazásával a fenti feltételek egyszerűen vizsgálhatók. Ezek biztosítják a modellben azt, hogy nem veszünk el járművet onnan ahol nincs (sűrűség nem lép negatív tartományba) és nem adunk oda, ahol a sűrűség már elérte az 1-et. Ha a K(x,s) és K input (x,s) mátrixok azon elemeit külön kezeljük, amelyek az u 1 irányító jelet tartalmazzák, a (3.1) egyenlet alábbi (3.4) formáját kapjuk meg: x =<L> -1 [A(x,s) x + A 1 (x,s) s+ B(x,s) u 1 ] (3.4) ahol, a differenciálegyenlet-rendszer A, A 1 és B mátrixai az alábbiak: 0 0 0 0 0 S( x 4 ) v 4, 2 ( x 4, x 2 ) E( x 2 ) 0 0 A := 0 0 S( s 3 ) v 3, 3 ( s 3, x 3 ) E( x 3 ) 0 0 S( x ) 4 v 4, 2 ( x 4, x 2 ) E( x 2 ) 0 S( s 4 ) v 4, 4 ( s 4, x 4 ) E( x 4 ) - 22 -

S( x 1 ) v 1, 1 ( x 1, s 1 ) E( s 1 ) 0 0 0 0 S( x 2 ) v 2, 2 ( x 2, s 2 ) E( s 2 ) 0 0 A1:= 0 0 0 0 0 0 0 0 S( x 3 ) v 3, 1 ( x 3, x 1 ) E( x 1 ) x 1 S( x 4 ) v 4, 2 ( x 4, x 2 ) E( x 2 ) x 2 B := S( x 3 ) v 3, 1 ( x 3, x 1 ) E( x 1 ) x 1 S( x 4 ) v 4, 2 ( x 4, x 2 ) E( x 2 ) x 2 (Ez az alak, pl. computer-algebrai módszert alkalmazva automatikusan előállítható a K és K input mátrixoknak az egyes irányító jelek szerint deriválásával, jelen esetben u 1 szerinti deriválással.) A v i,j áramlási sebesség esetén, a forgalomsűrűség forgalomsebesség közötti összefüggésre, regresszió útján nyert számos empirikus összefüggés létezik [5]: Greenshields (lineáris), Kladek, Greenberg (logaritmikus), Pipes and Munjal, Drew, Underwood, Drake, Zachor, Edie. Az alábbiakban az ún. Greenshield függvényt alkalmazzuk, ahol V a maximális sebesség. Ez alapján A, A 1 és B mátrixok az alábbi (3.5), (3.6), (3.7) alakban írhatók fel: 0 0 0 0 S( x 4 ) ( l 2 V ( 1x 2 )l 4 V ( 1x 4 ) E( x 2 ) 0 0 0 l 2 l 4 A := S( s 3 ) ( p 3 V ( 1s 3 )l 3 V ( 1x 3 ) E( x 3 ) 0 0 0 p 3 l 3 (3.5) 0 S( x 4 ) ( l 2 V ( 1x 2 )l 4 V ( 1x 4 )) E( x 2 ) 0 l 2 l 4 S( s 4 ) ( p 4 V ( 1s 4 )l 4 V ( 1x 4 ) E( x 4 ) p 4 l 4 S( x 1 ) ( p 1 V ( 1s 1 )l 1 V ( 1x 1 )) E( s 1 ) 0 0 0 p 1 l 1 S( x 2 ) ( p 2 V ( 1s 2 )l 2 V ( 1x 2 )) E( s 2 ) A1:= 0 0 0 p 2 l 2 0 0 0 0 0 0 0 0 (3.6) - 23 -

S( x 3 ) ( l 1 V ( 1x 1 )l 3 V ( 1x 3 )) E( x 1 ) x 1 l 1 l 3 S( x 4 ) ( l 2 V ( 1x 2 )l 4 V ( 1x 4 )) E( x 2 ) x 2 l 2 l 4 B := S( x 3 ) ( l 1 V ( 1x 1 )l 3 V ( 1x 3 )) E( x 1 ) x 1 l 1 l 3 S( x 4 ) ( l 2 V ( 1x 2 )l 4 V ( 1x 4 )) E( x 2 ) x 2 l 2 l 4 (3.7) Ezt követően, a rapid irányítást alkalmazva, vizsgáljuk a tartomány minden szakaszát, és a hozzá csatlakozó külső szakaszokat is, a dt idő alatt átadott összes járműszám megállapítása céljából, tehát, az összes átadást figyelembe vesszük a [t, t+dt] időintervallumban. A továbbiakban u 1 =1 döntés esetén lép működésbe az 1-es fázis és u 2 =1 esetén a 2-es fázis. Ehhez a tartományban minden t időpontban u 1 =1 döntéshez és u 2 =1-u 1 =1 döntéshez is (az-az mindkét irányban zöld esetre ) külön-külön kiszámítjuk a dt időtartam alatt átadott összes jármű számát. A számításhoz tehát, adott a modell és minden t időpontban rendelkezése áll a tartományban elhelyezkedő rendszer x(t) állapotjellemző vektor és a tartományhoz csatlakozó szakaszokon mérhető s(t) járműsűrűség vektor is. Ismertek továbbá a geometriai paraméterek, a megengedett maximális sebességek és a belső automatizmusok is. 5.4. Az u 1 et meghatározó célfüggvény a csomópont optimális irányítására Az optimális forgalom lebonyolódása azt igényli, hogy mindenkor vegyük figyelembe azokat a különböző terhelési értékeket, amelyek a napi, heti, és irányonkénti változások során fellépnek, tehát biztosítsuk az irányítás adaptivitását. Az ilyen esetekre jól alkalmazható, a modell prediktív irányítás (MPC), amely olyan numerikus optimalizáláson alapuló irányítási módszer, amelynél diszkrét időt - 24 -

feltételezve a beavatkozó jel jövőbeli étékeit (véges időhorizonton előretekintve) minden diszkrét időlépésben egy előírt célfüggvény optimálása révén határozzuk meg. A célfüggvény értéke függ a rendszer jövőbeli állapotaitól, melyeket a rendszer alkalmas modellje alapján, a beavatkozó jelek és a kezdőállapot függvényében számolni tudunk. Az ily módon működő irányítási eljárás esetén a programalkotó rendszer teljesen forgalomtól függő. A jelzőlámpa program változékonyságának fő jellemzője az adaptivitás érdekében a szabad változtathatóság. A periódusidő, a fázissorrend és a fázisszám változó. A szabadidő-állandó a dinamikus rendszer működése alapján, szintén szabadon változtatható. Általános esetként tekintsünk egy csomóponton történő áthaladást, amelyet n fázissal működő program irányít. Ekkor, [t, t+δt] időintervallumhoz az adott állapotjellemzők alapján, kiszámítható mindenegyes i fázis működésbe lépése esetén, a csomópontoni szektorok (szakaszok) között átadott járműszám, amelyet jelöljön: N i (i=1,2,,n). Az N i járműszámok rendezett sorozata képezi az n oszlopból álló preferencia mátrix aktuális sorát. Működésbe lépő fázis Legnagyobb Középső Legkisebb u 1 =1 N 1 > N 2 > N 3 N 1 > N 3 > N 2 u 2 =1 N 2 > N 1 > N 3 N 2 > N 3 > N 1 u 3 =1 N 3 > N 1 > N 2 N 3 > N 2 > N 1 8. ábra: Preferencia mátrix n=3 fázis esetében, minden lehetséges sorrendet felírva Ha egy k-ik fázisnál átadott járműszámnál nem volt nagyobb, akkor N k áll az első helyen és a k-ik fázishoz tartozó u k (t)=1 irányítást valósítjuk meg. Az irányítási jel direkt módon, az-az sorba rendezés nélkül is számítható, ha biztosított, hogy az egyes fázisok esetén különbözők az átadott járműszámok! Az okozna ui. problémát a - 25 -

programban, ha két v. több egyforma legnagyobb N k lépne fel, vagy, ha nincs forgalom és N i =0. (Ezeket az eseteket a program automatikusan kiküszöböli anélkül, hogy a gyakorlatban változna a célfüggvény optimálásával elért eredmény. A járműszámokra, náluk nagyságrenddel kisebb véletlen számokat szuperponál.) Ekkor (3.8) szerint, a legnagyobb N k hoz tartozó u k (t)=1, minden többi u i (t)=0. u ( t) k n i1;( ik ) E( N k N ) i, (k=1,2,,n). Az összefüggésben, E(x) függvény a (3.3) szerint van definiálva. (3.8) A 7. ábra alapján, ha az u 1 =1 (függőleges irányú) esethez tartozó irányban engedjük az áramlást, akkor a tartomány szakaszain dt idő alatt átadott összes járműszám: N 1 := NS1X1 NX1X3 NX3S3 NS2X2 NX4S4 (3.9) (Az egyenlőség jobb oldalán, a N utáni karakterek jelzik, hogy melyik szektorról melyik szektorra történt az átadás, pl. NS1X1 esetben S1-el jelölt sűrűségűről az X1-el jelölt sűrűségűre.) Ha az u 2 =1-u 1 =1 (vízszintes irányú) esethez tartozó irányban engedjük az áramlást, akkor a tartomány szakaszain dt idő alatt átadott összes járműszám: N 2 := NS2X2 NX2X4 NX4S4 NS1X1 NX3S3 (3.10) Ha tehát, a t időpontban, dt időhosszra optimális döntést kívánunk hozni, akkor ez a következő vizsgálattal eldönthető: ha: N 1 > N 2 akkor u 1 =1, egyébként 1-u 1 =1. A vizsgálat eredményét az alábbi függvén valósítja meg: u 1 :=E(N 1 -N 2 ) (3.11) Egyszerű számítással az alábbi képlet adódik: u 1 E( NX1X3 NX2X4 ) (3.12) - 26 -

Tehát látható, hogy bár - a kezdeti egyenletben - minden átadást figyelembe vettünk a tartományon, a döntés szempontjából csak a lámpa által összekapcsolt szakaszokon, a zöld irányokban átáramló járművek száma a meghatározó. Ezen szakaszoknál viszont, mérvadók a lámpa előtti és a lámpa utáni szakaszon fellépő járműsűrűségek, a szakaszok hossza és a megengedett maximális sebesség értéke is! (Természetes, hogy azok az átadásokhoz tartozó járműszámok, amelyek a lámpa állapottól függetlenül, mindkét esetben megvalósultak kiesnek a számításból.) Az N meghatározásához, a rendszer differenciálegyenlet-rendszeréből származó alábbi összefüggéseket használjuk fel: S( x 3 ) ( l 3 V ( 1x 3 )l 1 V ( 1x 1 )) E( x 1 ) x 1 dt NX1X3:= ( l 1 l 3 ) h S( x 4 ) ( l 4 V ( 1x 4 )l 2 V ( 1x 2 )) E( x 2 ) x 2 dt NX2X4:= ( l 2 l 4 ) h (3.13) Ezeket behelyettesítve az u 1 -re felírt E függvénybe, meghatároztuk u 1 et, amely minden időpillanatban, a tartományban elhelyezkedő rendszer állapotjellemzőitől függ: := u 1 S( x 3 ) ( l 3 V ( 1x 3 )l 1 V ( 1x 1 )) E( x 1 ) x 1 dt S( x 4 ) ( l 4 V ( 1x 4 )l 2 V ( 1x 2 )) E( x 2 ) x 2 dt E ( l ) 1 l 3 h ( l 2 l 4 ) h (3.14) Az optimális u 1 tehát, meghatározható minden t+k*dt (k=0,1,2,,n) mintavételezési időpontban. Valóságos közlekedési rendszernél a lámpa nem állítható át bármilyen rövid időintervallumon, ezért vizsgálatunknál minimális zöld időt írtuk elő, amelyet 30 sec-ban állapítottunk meg. További feltétel az ugyanazon optimális döntés ismétlődésének figyelése: ha egymás után 3-szor ugyanaz az optimális döntés lép fel u 1 - re, akkor beiktatunk egy 30 sec-os időtartamra vonatkozó ellentétes döntést. Ez szükséges, mivel a keresztirányban is el kell engedni a járműveket, még akkor is, ha minimális számú jármű várakozik erre ott. (Természetesen a definiált legrövidebb zöld idő lehet rövidebb is és az egymás utáni azonos u 1 -ek számát megszakító feltétel is módosítható.) - 27 -

Tekintsünk először egy olyan rövid időtartamú esetet, amelynél s 1 inputsűrűség maximumai eltérnek s2 inputsűrűség maximumaitól. (3.3 és 3.4. ábrák Függelék I.-ben találhatók) Az outputok sűrűségei mindkét kimeneten egyformák és állandók, s 3 =s 4 =0,5. A 3.3-3.10 ábrákon (Függelék I.-ben találhatók) az optimális irányítás eredményei találhatók. Ez alapján látható, hogy 400 sec-ig és 800 sec-tól az s 1 irány kap elsőbbséget (hosszan tartó u 1 =1 zöld jelzések), majd a 400-800 sec-os intervallumon az s 2 irány működésének támogatása (hosszan tartó u 2 =1 zöld jelzések) lép életbe. A 3.11-3.18 ábrákon (Függelék I.-ben találhatók) a periódus idő állandó, egy irányban 2 percig zöld, majd 2 percig piros a lámpa. Már az ilyen rövid ideig tartó átmeneti forgalmi különbségek esetében is elérhetők kedvező eredmények az optimális irányításnál: mintegy 45-50%-al megnövelhető a kereszteződésen áthaladó járműszám egy hagyományos fix programmal működő kereszteződéssel szemben, 3.19-3.21.ábrák (Függelék I.-ben találhatók). Megállapítható, hogy az optimális irányítás nagy előnye akkor jelentkezik, amikor az egyes irányokban tartósan jelentős forgalomkülönbségek lépnek fel, ilyenkor 45-50 %- os többlet is felléphet a kereszteződésen áthaladó járműszám esetén, a hagyományos fix programmal működő kereszteződéssel szemben. Tévedés lenne azt gondolni, hogy csak az inputoknak van ilyen szerepe a kereszteződéseken történő áthaladásoknál! A 3.22-3.32 ábrákon (Függelék II.-ben találhatók) épp az látható, hogy a kereszteződések utáni szektorokban (az outputoknál) kialakult forgalomsűrűség hogyan akadályozza meg, ill. segíti az átjutást. Ebben az esetben, az s 3 outputsűrűség maximumai szintén eltérnek s4 outputsűrűség maximumaitól, és a maximumoknál torlódások lépnek fel a kereszteződés mögött (3.22 és 3.23. ábrák Függelék II.-ben találhatók) Az intputok sűrűségei mindkét bemeneten egyformák és állandók, s 1 =s 2 =0,5. - 28 -

Megállapítható, hogy az optimális irányítás előnye akkor is jelentkezik, (3.30., 3.32. ábrák Függelék II.-ben találhatók) amikor az egyes irányokban a kereszteződés mögött is tartósan jelentős forgalomkülönbségek lépnek fel, és ilyenkor is megállapítható egy 45-50 %-os többlet a kereszteződésen áthaladó járműszám esetén, a hagyományos fix programmal működő kereszteződéssel szemben. - 29 -

6. A sajátfejlesztésű szoftver 6.1. Általános leírás Szoftverünk a nagyméretű közúti közlekedési rendszerek modellezésére kifejlesztett mérnöki program. Működését a fentiekben összefoglalt, matematikailag egzakt módon leírt nemlineáris hálózati modell szabja meg. A közlekedési infrastruktúra egyes elemeinek (sávok, jelzőlámpák, gyalogosátkelő helyek, kerékpárutak, stb.) interaktív felületen történő grafikus felvitelével és a hálózat alkotóinak minden eddiginél pontosabb paraméterezhetőségével, a szoftver leképezi a hálózati gráfot, és egyedülálló gyorsasággal elvégzi a szimulációt. Szoftverünk olyan komplex analízist tesz lehetővé, melyben már futásidőben azonosíthatóak a problémás szakaszok, továbbá diagramokkal alátámasztva vizsgálhatók a közlekedési rendben, az úthálózat geometriájában, vagy akár a várható forgalmi viszonyokban történő változások hatásai. A szoftvert.net keretrendszerre írtuk C# nyelven, a Microsoft Visual C# 2008 Express segítségével. Az implementálást gondos tervezés előzte meg, így a rendszerspecifikáció, az alkalmazási körülmények definiálásra kerültek. Meghatároztuk a rendszerkövetelményeket, és megterveztük a program struktúrát, azt szem előtt tartva, hogy objektumorientált, könnyen továbbfejleszthető, moduláris felépítésű. Az egyes elkészült modulok verifikációját követően a rendszer validálásával igyekeztünk biztosítani a hibátlan működés megtartását. A rendszert dinamikus teszteléssel vizsgáltuk több ciklusban, konformitási és hibakereső tesztek futtatásával. Az eredményeket referencia eredményekkel is összevetettük. A szoftver alkalmazta modell helyes implementálását egy másik tanulmány keretében validáltuk. Phd hallgató kollégánk GPS készülékkel és videokamerával összekötött személygépjárművel méréseket végzett terepen, amely igen alacsony hibahatárral közelítette a szoftverrel végzett szimulációk eredményeit [13]. Szoftverünkkel alapvetően: Tehermentesítés-analízis: fennálló közlekedési problémák elemzése; megoldási alternatívák készítése, tesztelése - 30 -

Hatás-analízis: kiépített infrastruktúra fejlesztésének kockázatmentes vizsgálata Számítások készítése a tervezői szakaszban: Útszakaszok, úthálózatok átépítését, kiépítését megelőző tanulmányok készítése, ennek függvényében a tervek módosítása stabil, dinamikus infrastruktúra már a kezdetektől. végezhető. Továbbá kiegészítettük a szoftvert egyéb praktikus alkalmazási területekkel: Rendkívüli események szimulációja (balesetek, útépítések, megkülönböztetett jelzést használó járműkonvojok elhaladása, rendezvények, stb.) Útvonal-választás optimalizációja (két tetszőlegesen kiválasztott pont között a különböző szempontok idő, fogyasztás, útvonal szerinti legoptimálisabb útvonalra javaslatot tesz) Jármű nyomkövetés (egy kijelölt útvonalon haladó jármű menetidő karakterisztikái számíthatók a nap bármely időpontjaiban meghatározott indulást feltételezve). Szoftverünk olyan innovatív technikákat is képes alkalmazni működésében, mint az adaptív lámpák (intelligens online szabályozás visszacsatolással), vagy a peremlámpák (egész tartományokba történő behajtás-korlátozás szabályozása). - 31 -

6.2. Forgalomvizualizáció 3D -ben A vizualizáció a modern szimulációs eszközök egyik jellemzője és erőssége. Ezek nem csak a mérési eredményeket képesek megjeleníteni, hanem a forgalmi viszonyokat is tudják érzékeltetni valamilyen szoftveres megoldással. Az alábbiakban egy ilyen megoldást tárgyalunk, amellyel az általunk fejlesztett PannonTraffic 3-as alkalmazást bővítettük ki. Az alábbiakban pár informatikai eszközre és szabványra hivatkozni fogunk, azonban ezeknek részletes kifejtése és tárgyalása nem célja ennek a dolgozatnak, feladatunk elsősorban az általunk meghozott tervezői döntések és technikai megoldások ismertetése. A mi modellező-szimuláció szoftverünk korábbi verziói ilyen szempontból nem voltak túl látványosak. A szimuláció futása közben a modell térképén az egyes sávok színének változtatásával érzékeltettük, hogy az egyes útszakaszok között milyen forgalmi különbségek alakulnak ki. Természetesen a szimuláció lefutását követően a szoftver által prezentált eredmények alapján a felhasználó hozzájutott a számára szükséges információkhoz, azonban a korábbi munkánkkal kapcsolatban az egyik leggyakrabban megfogalmazott észrevétel a forgalomvizualizáció hiányára vonatkozott. A szoftverünk mögött álló modell makroszkopikus, emiatt nem ad lehetőséget a járművek egyedi helyzetének direkt lekérdezésére, azonban a makroszkopikus jellemzőkből következtethetünk a járművek egyedi pozíciójára, mikroszkopikus állapotváltozókra, még ha ez a következtetés valójában csak a lehetséges értékek becslése. A forgalomvizualizáció feladata alapvetően eltér az eddig elkészített alkalmazástól, így kézen fekvő volt, hogy egy különálló szoftverben készítsük el a vizualizációt. Értelemszerűen így ennek a különálló alkalmazásnak le kell kérdeznie a makroszkopikus modellező-szimulációs szoftvertől a makroszkopikus állapotjellemzőket, meg kell határoznia az egyes mikroszkopikus elemek megfelelő jellemzőit és meg kell jelenítenie a forgalom animációját. - 32 -

Lekérdezés Makroszkópikus modellezőszimulációs alkalmazás Válasz Mikroszkópikus vizualizáció 9. ábra: A vizualizáció architektúrája El kellett döntenünk, hogy milyen technikákat alkalmazunk ennek a kommunikációnak a lebonyolítására. Két alternatíva állt előttünk, az offline online megvalósítás. Az előbbi esetben a szimuláció lefutását követően történik meg a lekérdezés. Ennek hátránya hatalmas mennyiségű adatot kell átadni a mikroszkopikus vizualizációnak, például az összes belső szakasz járműsűrűségét minden egyes szimulációs időpillanatban. Ennek a hatalmas adatmennyiségnek a tárolása hatékonysági problémákat vet fel. Előnye ugyanakkor, hogy a vizualizáció akár teljesen független lehet a makroszkopikus szoftvertől: akár egy nagyméretű fájlban is átadhatóak a szimulációs eredmények. Ezzel szemben az online megvalósítás esetén sokkal több, de csak az adott időpillanatra vonatkozó lekérdezés történik, így nem kell az egész számítás összes állapotváltozójának összes időpillanatában számított értékét átadni, csupán az adott időpillanatban aktuális értékeket. Végül az online megoldás mellett döntöttünk, mivel az összes állapotváltozó teljes időtartamra történő tárolását el kívántuk kerülni. Emellett meg kell említeni, hogy a későbbiekben a renderelt vizualizáció videóra rögzítésének megvalósításával offline módon is használhatóvá tehetjük alkalmazásunkat. 6.2.1. Online típusú vizualizáció Első lépésként meg kellett határozni azt az interfészt, amelyen keresztül a vizualizáció lekérdezheti a szimuláció állapotát. Az interfész kialakításának fontos eleme, hogy szabványos technológiát választottunk. Így az interfész és a kommunikáció ismeretében - 33 -

bárki saját vizualizációs engine-t készíthet a jelenlegi szimulációs szoftverhez, vagy a saját szimulációjának forgalmi viszonyait megjelenítheti az általunk készített vizualizációs alkalmazással. További, a fejlesztést megelőző döntés volt az, hogy milyen technológiát alkalmazunk a forgalommegjelenítő szoftver elkészítésénél. Tekintve, hogy a szimulációs alkalmazás a Microsoft.Net 3.5-ös keretrendszerét használja, kézenfekvő volt, hogy a megjelenítő szoftvernél is ezt alkalmazzuk. Önmagában a Net nem rendelkezik 3D osztálykönyvtárral, így nekünk kellett eldönteni, hogy milyen 3D-s megjelenítést alkalmazunk. Választhattunk a közvetlen Direct 3D-s vagy OpenGL-es megjelenítések közül, vagy valamilyen 3D grafikus motor felhasználásával oldjuk meg a kérdést. Végül az ingyenesen használható Mogre grafikus motort választottuk, amely a közkedvelt Ogre 3D engine.net-re történő portolása. A Mogre képes a Direct3D-vel és az OpenGL-lel történő megjelenítésre is, továbbá a.mesh kiterjesztésű 3D modellek megjelenítésére (erre a formátumra a népszerű.3ds,.blender és.max formátumú modellek átkonvertálhatóak). A már említett interfészre visszatérve: a.net 3.5 által támogatott számos lehetőség közül a Windows Communication Foundation t választottuk; a szimulációs alkalmazás egy webszolgáltatást publikál, amelyhez csatlakozva, és megfelelő metódusait meghívva vezérelhető a szimuláció, és lekérdezhetőek a szükséges adatok. Ennek a megoldásnak az a rendkívül nagy előnye, hogy a szimulációs szoftver és a megjelenítő alkalmazás akár fizikailag különálló, egy hálózaton lévő számítógépeken is elhelyezhető, így a megjelenítés nem terheli le a számítási kapacitást. Mint látni fogjuk, a jelenlegi megoldásban a hívónak is kell publikálnia egy webszolgáltatást, amely egyetlen metódust tartalmaz. A kommunikáció lépései: 0. Előkészületek: meg kell adni a vizualizációs alkalmazásnak a szimulációs alkalmazást futtató gép IP címét illetve a portot, amelyet használ. A szimulációs alkalmazással meg kell szerkeszteni vagy be kell tölteni a modellezett úthálózat gráfját. - 34 -

1. Kapcsolódás: A megjelenítő alkalmazás a GetMap metódusát hívja meg a szimulációs alkalmazásnak: ez visszaadja a hálózatot reprezentáló XML-t. Ennek segítségével állítja elő a vizualizáció a megjelenítendő úthálózatot. 2. A vizualizáció egy Step metódushívással lekérdezi a modell állapotát, és lépteti azt a következő (tipikusan az 1 másodperccel későbbi) szimulációs időpillanatba. A megjelenítő alkalmazás a válasz alapján frissíti az állapotát, míg a szimuláció addig vár, ameddig nem érkezik egy újabb Step kérés a vizualizációtól. Ekkor ismét a 2. ponttal folytatódik a szimuláció. 3. Amennyiben a vizualizációt megtekintő személy bele szeretne pörgetni a szimulációba azaz egy későbbi időpont történéseit szeretné nyomon követni az animáción akkor a megfelelő billentyű leütésével megteheti azt. Ekkor a vizualizációt végző alkalmazás egy JumpToTime metódushívással, paraméterben a célidőponttal elküldi a szimulációnak a célidőpontot. Ezt követően a szimuláció egymás után annyiszor végzi el a számítási lépéseket, míg t a célidőpontot eléri. Ha ez megtörtént, akkor a vizualizációs alkalmazás által publikált, Ready metódust hívja meg, hogy jelezze: folytatódhat a megjelenítés. Ekkor a vizualizáció a 2. lépéssel folytatja a kommunikációt. 4. A 24 órás modellidő elérésekor a megjelenítő alkalmazás kilép, befejezi a futását, míg a szimulációs szoftver visszaáll a 0-ik lépés utáni állapotba. - 35 -

Vizualizáció Szimulációs alkalmazás GetMap: úthálózat lekérdezése Válasz a GetMap kérésre: Úthálózatot reprezentáló XML Step A t -ik pillanatra vonatkozó makroszkopikus jellemzők Step } A számítási lépések egyszeri lefuttatása A t+1 -ik pillanatra vonatkozó makroszkopikus jellemzők Step } A számítási lépések egyszeri lefuttatása A t+2 -ik pillanatra vonatkozó makroszkopikus jellemzők } A számítási lépések egyszeri lefuttatása JumpToTime: belepörgetés a szmulációba }n (t+2) -n darab lefuttatása a számítási algoritmusnak Ready Step A t+n -ik pillanatra vonatkozó makroszkopikus jellemzők Step 10. ábra: a két szoftver kommunikációjának lépései A makroszkopikus modell adatai tehát legfeljebb másodpercenként állnak rendelkezésre, a vizualizáció feladata, hogy - 36 -

ebből megbecsüljön bizonyos makroszkopikus jellemzőket ezeket a jellemzőket két egymást követő makroszkopikus időpillanat között módosítsa, hogy a lehetséges forgalmi viszonyokat közelítse és megjelenítse az animált forgalmat. 6.2.2. Animáció megvalósítása Az animációnak és a járművek pozíciói követésének két fontos része van: az egyenes szakaszokban történő járműkövetés és a kanyarokban, kereszteződésekben végzett követés. Megkötése a jelenlegi megoldásnak, hogy nem kezelünk szintkülönbségeket, a járművek sík terepen haladnak. Az animációs megoldás jelenlegi fázisában nincsenek megjelenítve az előzések, balesetek és a gyalogátkelőhelyek; ám tekintve, hogy makroszkopikus modell alapján működik a vizualizáció, és ezek hatása a nagyobb vagy kisebb járműátadásokban (és így az átlagsebesség változásában) nyilvánul meg, ezeket a jelenségeket nem szükséges megjeleníteni a vizualizációban. 6.2.3. Kezdeti állapot A kezdeti állapot alatt a szimuláció és a vizualizáció első pillanatát értjük, azaz az első szimulációs ütemet, amikor a járművek pozícióját meg kell határozni a hálózaton. Ennek jelentősége elméleti, hiszen az általunk készített szimulációs alkalmazás mindig a t=0 időpontról indul, ekkor pedig rendszerint üres a közlekedési hálózat. Azonban a szimulációba történő beletekeréskor a korábbi, megjelenítéskor kiszámolt pozíciók elvetésre kerülnek, és újból meg kell határozni a járművek pozícióját. Mivel a beletekerés problémáját is megoldja a kezdeti állapot kérdése, mindenképp foglalkozni kellett vele. A következőkben a kezdő pillanatként hivatkozunk az előre tekert szimuláció első pillanatára is. A jelenlegi megvalósításban a kezdeti pozíciók és sebességek meghatározására egy nagyon egyszerű algoritmust valósítottunk meg: a makroszkopikus modell alapján megkapott, a sávokon kiszámolt sűrűségek alapján helyezi el a szoftver a járműveket, - 37 -

annyit, hogy a sáv sűrűsége minél inkább a modellben kiszámolt sűrűség legyen. A pozíciót, azaz hogy ennek a sávnak a jármű hányad részét tette már meg, véletlenszerűen határozza meg az alkalmazás. Ennek következménye, hogy ebben a vizualizáció számára első időpillanatban a járművek összeérhetnek, ütközhetnek. Azonban, mint látni fogjuk, pár másodperccel az indítást követően az ütközések megszűnnek majd, valószerű képet kapunk a forgalomról. Másik következménye, hogy a kanyarokban, kereszteződésekben a kezdeti időpillanatban nem lesznek járművek. 6.2.4. Járművek haladása az egyenes szakaszokon Mint már említettük, a járművek az első időpillanatban sávonként véletlenszerű távolságra vannak egymástól. Haladásukat az előttük lévő járműtől mért távolság, a következő kereszteződéstől vagy kanyartól mért távolság illetve a makroszkopikus modellből vett, a szimulációval kiszámított adott t időpillanatra vonatkozó átlagos, sávon mért sebesség határozza meg. A járművek egyenes szakaszon történő haladását úgy kellett megvalósítani, hogy azok ne ütközzenek össze, és a lehető legnagyobb sebességgel haladjanak. Az egyenesben a járművek pozíciójának kiszámítására a következő algoritmust használjuk a vizualizációnál: Egy járműpéldány egyedi, v sebességét csökkentjük egy a konstanssal, amennyiben az előtte haladó járműtől mért távolság egy c konstansnál kisebb. A járművek egyedi, v sebességét növeljük egy a konstanssal, amennyiben az előttük haladó jármű távolsága nagyobb a c konstansnál és a jármű sebessége a sáv átlagsebességénél kisebb. Amennyiben a járműpéldány távolsága a következő kereszteződés bejárati pontjától kisebb, mint egy c 2 konstans értéke, akkor csökkentjük a v sebességét egy a konstanssal. A módosított v sebességből és a sáv irányából egy vektort képezünk, ezt a vektort pedig megszorozva a legutóbbi képalkotás óta eltelt idővel hozzáadjuk a jármű pozícióját megadó vektorhoz, így kapjuk meg a jármű új pozícióját. A - 38 -

jármű elforgatása pedig a sáv irányának felel meg, azaz a járművek a vizualizációban pont abban az irányban haladnak, mint amerre a sáv halad. Az említett konstansok a jelenlegi megvalósításban minden jármű esetén megegyeznek, amennyiben bizonyos eltéréseket megengedünk az értékekben, akkor egy még változatosabb vizualizációt kaphatunk. 6.2.5. Járművek haladása a kereszteződésekben, kanyarokban Fontos megemlíteni, hogy a vizualizáció jelenlegi verziójában a kanyarokat és a kereszteződéseket hasonló módon kezeljük a járművek haladása szempontjából, ezért itt csak a kereszteződéseket tárgyaljuk. A kereszteződés belépési pontját (ez gyakorlatilag a sávok vége) elérve a járművek megadják a kereszteződésben az útvonalukat. Ezt mi a szoftverben másodfokú görbékkel közelítettük. A függvény deriváltjából határozzuk meg a jármű elfordulását. A kereszteződéseknél a járművek ütközéseinek elkerülését a következő módon oldottuk meg: egy jármű a kereszteződésbe történő belépéskor beregisztrálja a kereszteződésben az útvonalát. Ha végighaladt a kereszteződésben megadott útvonalon, akkor pedig kiregisztrál. Minden egyes regisztrációkor leellenőrzi az algoritmus, hogy a megadott pályát nem metszi e már beregisztrált jármű. Amennyiben metszi azt, nem engedi a járművet belépni a kereszteződésbe. A várakozó járművek közül a makroszkopikus modellben megadott elsőbbségi viszonyokat figyelembe véve engedélyezi a csomópont a kereszteződésbe a járművek belépését, oly módon, hogy megvizsgálja a megadott kapcsolat béta tényezőjét, és csak akkor engedélyezi a kapcsolatnak megfelelő pályán történő áthaladást, ha a hozzá tartozó béta tényező nagyobb, mint az összes várakozó jármű kereszteződésbeli pályái kapcsolatának béta tényezője. 6.2.6. Elosztási tényezők és sűrűségek figyelembe vétele A makroszkopikus modell járműsűrűségei tehát közvetlenül csak az első pillanatokat határozzák meg. Ezt követően annak eldöntése, hogy az egyes járműpéldányok merre haladnak a kereszteződésekben, nemdeterminisztikus. Azonban a lehetséges célsávok - 39 -

eloszlása függ a makroszkopikus modellben megadott járműelosztási tényezőktől és a sávok t időben számított sűrűségétől. Összességében annak valószínűsége, hogy egy jármű az i-k sávról a j-ikre halad tovább a vizualizációban, a minden k ra, amely kapcsolatban van i-vel. formula alapján történik, ahol ρ vizualizáció j (t) a vizualizáció t ik pillanatában a megjelenített j-ik sávon lévő sűrűség, ρ makro j (t) a makroszkopikus modell j-ik sáv sűrűségének t beli értéke, α ij (t) az ij kapcsolat t-ben lévő alfája, az összegzés pedig a sávról elérhető (topológiailag kapcsolatban álló) sávokon megy végig. Magyarázat: Amennyiben α ij értéke 0, az a valóságban azt jelenti, hogy a szabályok tiltják az ilyen irányú haladást. Ekkor a P ij (t) értéke is nulla lesz. Amennyiben α ij (t) értéke 1, akkor validált modell esetén minden α ik értéke 0, ahol k nem egyenlő j. Ekkor P ij értéke 1, P ik =0, ha k nem egyenlő j. Az is látható, hogy amennyiben az adott j célsávon a makroszkopikus esethez képest a vizualizációban kevesebb a jármű, akkor a ρ makro k (t) - ρ vizualizáció j (t) értéke negatív, amennyiben több a jármű a makroszkopikus esetben a célsávon, akkor az említett különbség pozitív. Így a második esetben azonos alfával számolva nagyobb lesz a valószínűsége annak, hogy a j ik sávra megy a jármű, mint az elsőben. - 40 -

6.3. Bing Maps integráció A modellező szoftver a modellezendő hálózatot két rétegben jeleníti meg: - megjeleníti a hálózati gráfot a hozzá tartozó modellelemekkel (modell-réteg) - megjelenítheti a hálózathoz tartozó háttérbe illesztett térképet (térkép-réteg) A cél a Bing Maps integrációnál az volt, hogy a modell mögé betölthető háttér ne statikus.jpg vagy.png kép legyen, hanem internetkapcsolat megléte esetén a Microsoft Bing Maps szolgáltatásait felhasználva az alkalmazás automatikusan letöltse és összeállítása a háttérbe beillesztett térképet. Emellett lehetőség nyílt arra is, hogy a felhasználó munkáját automatizált funkciókkal könnyítsük meg, így implementálásra került az egérmutató világkoordinátájához tartozó földrajzi nevek kijelzése, amely nagyban megkönnyíti a térképen való tájékozódást és a megfelelő modellelem beazonosítását. További, idén implementált kényelmi funkció, hogy lehetőség van egyes modellelemek - kereszteződések, útszakaszok - pozíció alapján történő automatikus elnevezésére, hiszen a modellelemek pozíciója alapján a Bing Maps szolgáltatáshoz fordulva lekérdezhető egy-egy útszakasz vagy kereszteződés neve. Emellett kísérlet történt a hálózati gráf automatikus, Bing Maps alapú generálására, azonban ez a jelenlegi Bing Maps interfész segítségével még nem kivitelezhető. Azért esett a választás a Bing Maps re, mivel ez biztosította a legmagasabb szintű, legkönnyebben használható interfészt (emellett a Google Maps és a Yahoo Maps által nyújtott szolgáltatásokat vizsgáltuk meg) A félév során megvalósításra került a Microsoft Bing Maps service-hez történő csatlakozás, a Bing Maps által biztosított szolgáltatások felhasználása, valamint az általuk nyújtott adatok lekérdezése. Technikailag ez úgy történik, hogy a Bing publikál egy web szolgáltatást, amelynek megfelelő metódusait meghívva lekérdezi a távoli szervertől a keresett adatokat, térképrészleteket, lokalizációs információkat. A Microsoft Bing Maps által biztosított szolgáltatások közül a következőket használtam fel: - 41 -

- A Microsoft Bing Maps Imagery Service segítségével lekérdezhető egy adott szélességi - valamint hosszúsági fokhoz, továbbá részletességhez tartozó térképrészlet képe. - A Microsoft Bing Maps Geocode Service földrajzi szélességi valamint hosszúsági koordinátát képes címre, valamint címet földrajzi szélességi és hosszúsági koordinátákra fordítani. - A Microsoft Bing Maps Search Service Ezen szolgáltatásokat nyújtó interfészeket a következő wsdl ek írják le: http://dev.virtualearth.net/webservices/v1/metadata/geocodeservice/geocodeservice.wsdl valamint http://dev.virtualearth.net/webservices/v1/metadata/imageryservice/imageryservice.wsdl A feladat kivitelezése során meg kellett oldani, hogy a hagyományos, 2 dimenziós koordináták (ModelPoint valamint ScreenPoint) szerint kiszámoljuk az egyes térképrészletek pozícióját, majd ezt át kellett konvertálni szélességi és hosszúsági koordinátára, hiszen az Imagery Service ilyen típusú adatokat vár. A térkép testreszabásának és letöltésék a folyamata a következő: 1. A felhasználó megad egy települést vagy pontosabb címet, amelyen el kívánja készíteni a hálózatát. Ekkor az alkalmazás a Geocode szolgáltatáshoz fordul, és lekérdezi a címhez tartozó szélességi és hosszúsági értékeket. 2. Ekkor megjelenik egy előnézeti kép a megadott területről, és megadhatóak a pontosabb részletek, mint a vizsgálandó terület szélessége és hosszúsága. Beállítható a nagyítás részletessége. Ezek a jellemzők szintén befolyásolják az előnézeti képen megjelenő térképrészletet. - 42 -

11. ábra: A térképre vonatkozó beállítások megadása 3. A Részletes térkép letöltése gomb megnyomásakor a rendszer letölti az automatikusan kiszámolt szélességi és hosszúsági értékekhez tartozó térképrészleteket, és ezeket összeilleszti. 4. Az elkészítendő úthálózathoz tartozó térképet offline használat esetén is meg kell tudni jeleníteni a háttérben, ezért a letöltés befejezésével a rendszer felkínálja a letöltött és összeillesztett háttérkép mentési lehetőségét. 5. Ekkor megjelenik a letöltött háttérkép, el lehet kezdeni a hálózat szerkesztését. 12. ábra: A letöltött háttérkép megjelent a háttérben, megkezdődött a modellelemek felvétele, az alkalmazás címsorában pedig megjelenik az aktuális egérpozícióhoz tartozó cím - 43 -