Sunteți pe pagina 1din 32

UNIVERSITATEA ALEXANDRU IOAN CUZA IAŞI

FACULTATEA DE INFORMATICĂ

LUCRARE DE LICENŢĂ

Simularea traficului semaforizat inteligent

propusă de

Bogdan Grădinariu

Sesiunea: iunie 2011

Coordonator ştiinţific

Asist. univ. doctorand Vârlan Cosmin

1
UNIVERSITATEA ALEXANDRU IOAN CUZA IAŞI

FACULTATEA DE INFORMATICĂ

Simularea traficului semaforizat inteligent

Bogdan Grădinariu

Sesiunea: iunie 2011

Coordonator ştiinţific

Asist. univ. doctorand Vârlan Cosmin

2
3
DECLARAŢIE PRIVIND ORIGINALITATE ŞI RESPECTAREA

DREPTURILOR DE AUTOR

Prin prezenta declar că Lucrarea de licenţă cu titlul “Titlul complet al lucrării” este scrisă
de mine şi nu a mai fost prezentată niciodată la o altă facultate sau instituţie de
învăţământ superior din ţară sau străinătate. De asemenea, declar că toate sursele
utilizate, inclusiv cele preluate de pe Internet, sunt indicate în lucrare, cu respectarea
regulilor de evitare a plagiatului:

● toate fragmentele de text reproduse exact, chiar şi în traducere proprie din altă
limbă, sunt scrise între ghilimele şi deţin referinţa precisă a sursei;
● reformularea în cuvinte proprii a textelor scrise de către alţi autori deţine referinţa
precisă;
● codul sursă, imagini etc. preluate din proiecte open-source sau alte surse sunt
utilizate cu respectarea drepturilor de autor şi deţin referinţe precise;
● rezumarea ideilor altor autori precizează referinţa precisă la textul original.

Iaşi, 27.06.2011

Absolvent Bogdan Grădinariu

_________________________

4
DECLARAŢIE DE CONSIMŢĂMÂNT

Prin prezenta declar că sunt de acord ca Lucrarea de licenţă cu titlul “Simularea traficului
semaforizat inteligent”, codul sursă al programelor şi celelalte conţinuturi (grafice,
multimedia, date de test etc.) care însoţesc această lucrare să fie utilizate în cadrul
Facultăţii de Informatică.

De asemenea, sunt de acord ca Facultatea de Informatică de la Universitatea Alexandru


Ioan Cuza Iaşi să utilizeze, modifice, reproducă şi să distribuie în scopuri necomerciale
programele-calculator, format executabil şi sursă, realizate de mine în cadrul prezentei
lucrări de licenţă

Iaşi, 27.06.2011

Absolvent Bogdan Grădinariu

_________________________

5
CUPRINS

INTRODUCERE...............................................................................................................6

Contribuţii......................................................................................................................8

Capitolul 1. Semaforizarea........................................................................................9

1.1 Semaforizarea - Descriere................................................................................9

1.2 Semaforizare - Utilitate..................................................................................10

1.3 Semaforizarea - Scurt istoric.........................................................................11

1.4. Design..............................................................................................................12

1.5 Semaforizarea - Semaforizarea eficienta......................................................13

1.6 Semaforizarea - Semaforizarea inteligentă..................................................16

Capitolul 2. Arhitectura aplicaţiei..........................................................................18

2.1 Premise şi direcţii de dezvoltare....................................................................18

2.2 Tehnologii şi servicii........................................................................................19

2.3 Elemente notabile de implementare..............................................................20

2.3.1 Elemente notabile de implementare. Harta...............................................20

2.3.2 Elemente notabile de implementare. Waypoint........................................21

2.3.3 Elemente notabile de implementare. Car..................................................22

Capitolul 3. Avantajele şi dezavantajele unei semaforizari inteligente...............25

Capitolul 4. Viitorul semafoarelor..........................................................................27

6
INTRODUCERE

Traficul auto din oraşe este foarte afectat de sistemele curente de semaforizare. În
momentul în care se aşteaptă la un semafor, şoferul pierde timp şi maşina consumă
combustibil. Prin urmare, reducerea intervalului de timp de aşteptare la semafor ar reduce
semnificativ cantitatea inutilă de dioxid de carbon emisă în atmosferă şi ar ajuta
societatea să economisească milioane de Euro anual.
Pentru ca această idee să poată fi pusă în practică, trebuie introdus un nou
concept, acela de “Semaforizare inteligentă”. Sistemele clasice de semaforizare se
bazează doar pe microcontrolere şi microprocesoare, fapt care implică anumite
limitări.Datorită intervalelor predefinite fixe de timp în care semafoarele îşi modifică
stările( roşu/galben/verde ) semaforizarea devine ineficientă datorită lipsei
flexibilităţii( în sensul că indiferent de condiţii, semafoarele vor acţiona întotdeauna la fel
). Pentru a eficientiza controlul traficului prin semafoare, la implementarea logicii
semafoarelor trebuie să se pună accentul pe dinamism şi pe algoritmi inteligenţi de
analiză a traficului. O astfel de semaforizare ar putea analiza în timp real numărul de
maşini care aşteaptă la semafor şi să ia decizii ce ar favoriza fluidizarea traficului.
Ideea de “Semaforizare inteligentă” nu este una nouă. Încă de când a fost
conceput semaforul, se dorea ca acesta sa poată rezolva problematica traficului într-un
mod cât mai eficient, însă, din motive tehnologice, până nu demult timp, acest lucru nu a
fost în totalitate posibil. La ora actuală există numeroase sisteme care implementează un
management inteligent al traficului auto, însă nici unul nu este standardizat. Acestea sunt
răspândite în toate colţurile lumii ( se presupune că în Statele Unite toate semafoarele
sunt coordonate de un sistem inteligent ). Mai nou, ţi în România s-a arătat un interes faţă
de acest nou tip de dirijare al traficului.
Din 2010, prin proiectul “Civitas” din cadrul proiectului “Archimedes”, şi în Iaşi
există o astfel de semaforizare concentrată pe ruta “Rond Agronomie” - “Campus

7
studenţesc Tudor Vladimerescu”. Aplicaţia prezentată în această lucrare a fost concepută
iniţial pentru a participa la licitaţia organizată de Primaria Iaşi pentru a stabili un sistem
de management “real-time” al semafoarelor din Iaşi.
Aplicaţia în cauză este o aplicaţie web care simulează traficul ieşean pe
bulevardul Carol şi dirijează acest trafic printr-un sistem de semaforizare inteligentă.
Scopul acesteia este demonstrarea practică a faptului că semaforizarea inteligentă poate
îmbunătăţi fluxul traficului şi poate reduce numărul de accidente rutiere.
Această lucrare familiarizează cititorului conceptul de “semafor” şi prezintă
succint un scurt istoric al evoluţiei acestui concept în domeniul transporturilor auto. În cel
de-al doilea capitol este prezentată aplicaţia de semaforizare inteligentă în sine, de la
general la particular. Capitolul trei surprinde principalele avantaje şi dezavantaje ale unui
sistem de management inteligent al traficului, pe când ultimul capitol prezintă o viziune
asupra viitorului prin prisma semafoarelor inteligente.

8
Contribuţii

Am implementat o aplicaţie care permite atât gestionarea unor puncte cheie a unui sistem
rutier( intersecţii semaforizate ), cât şi simularea traficului şi a semaforizării pe acest sistem
rutier.
În afară de serviciul online de hărţi oferit de “google maps”, nu există alte contribuţii
externe în elaborarea acestei lucrări de licenţă. Principalele contribuţii aduse la elaborarea acestei
lucrări de licenţă sunt:
● elaborarea unui algoritm de calculare al “costurilor” maşinilor aflate în trafic
● implementarea simulării traficului
● implementarea sistemului de management al semafoarelor

9
10
Capitolul 1. Semaforizarea

1.1 Semaforizarea - Descriere

Conceptul de semafor este adesea asociat cu un dispozitiv ce are rolul de a decide


priorităţile unui sistem.
În viaţa de zi cu zi, semafoarele sunt folosite în multe domenii, dintre care
amintim :
● informatică
● domeniull nautic
● domeniul feroviar
● domeniul rutier

Indiferent de domeniul în care este folosit, la un nivel abstract, semaforul are


acelaşi rol : sincronizarea accesului unei resurse de către mai multe entităţi.
În informatică, un semafor reprezintă un algoritm care realizează managementul
accesului la resurse partajate. Câteva exemple unde este nevoie de un astfel de mecanism:
● accesul mai multor procese la o zonă de memorie
● accesul a două thread-uri din acelaşi proces la zone de memorie a acestui proces
● accesul procesoarelor( din sisteme multi-core ) la memoria RAM

Să presupunem un scenariu în care utilizatorul deschide acelaşi fisier text în două


ferestre separate. În momentul în care acesta face o modificare într-una din cele două
ferestre, procesul asociat acesteia accesează şi modifica datele fişierului înregistrate într-o
zonă de memorie care este simultan accesată şi de cealaltă fereastră. Efectul acestei
modificări este dezastruos: acelaşi fişier text deschis în două ferestre diferite are
reprezentări diferite.
Utilitatea mecanismului de sincronizare este imediat evidentă. Dacă în cazul
precedent ar fi existat un semafor care să decidă care proces are dreptul de a accesa şi

11
modifica zona de memorie ce conţinea datele fişierului respectiv, rezultatul ar fi fost
diferit.
Dacă în informatică se doreşte sincronizarea accesului mai multor procese la
aceeasi zonă de memorie, in domeniul transporturilor, fie feroviar, nautic sau auto, se
doreşte sincronizarea vehiculelor care folosesc aceleaşi rute. Prin analogie cu domeniul
informatic, putem considera vehiculele drept procese şi rutele drept zone de memorie.
Să presupunem că două vehicule vor să traverseze acelaşi punct cheie
dintr-o anumita rută în acelaşi timp. Ca şi în exemplul precedent, lipsa unui sistem de
semaforizare poate conduce la rezultate dezastruase. În acest caz, fara un semafor care să
ofere prioritate unui vehicul la traversarea punctului cheie, există posibilitatea ca ambele
vehicule să traverseze în acelaşi timp, astfel încât să intre în coliziune.

1.2 Semaforizare - Utilitate

În mod ideal, orice două entităţi ce folosesc simultan aceeaşi resursa, au nevoie de
un mecanism de acordare a priorităţii, un mecanism care, pe baza anumitor factori, este
capabil să decidă care dintre cele două entităţi are dreptul de a folosi acea resursă la un
moment dat. Fără această sincronizare pot apărea conflicte la nivelul accesului resursei.
Pentru ca două trenuri să nu se ciocnească este nevoie de un semafor, pentru ca un
proces sa nu corupa datele altui proces este nevoie de un semafor, pentru a nu se produce
un accident într-o intersecţie este nevoie de un semafor. Indiferent de domeniul de
utilizare, conceptul şi utilitatea semaforului rămân neschimbate.

12
1.3 Semaforizarea - Scurt istoric

Încă din secolul XVIII s-a simţit nevoia unui sistem de prioretizare a circulaţiei,
pentru a reduce atât numărul coliziunilor autovehiculelor, cât şi a blocărilor de trafic.
Primele semafoare pentru traficul
auto au fost proiectate de către inginerul
feroviar J.P.Knight şi fost folosite în Londra,
la data de 10 decembrie 1868.
Acestea semanau cu semafoarele
feroviare din acel timp : aveau două braţe
colorate cu verde şi cu roşu( braţul verde
indica prioritatea ). Pe timp de noapte
semafoarele aveau ataşate câte o lampa pe
baza de gaz, colorată pe o jumătate verde şi
pe cealaltă roşu care era rotită manual prin intermediul unei manete, astfel încât jumătatea
verde să fie orientată spre vehiculele care aveau prioritate.
Aceste semafoare au fost un eşec, nu datorita faptului că ar fi fost ineficiente, ci
pentru că la data de 2 ianuarie 1869, la mai puţin de o lună de la inaugurare, o lampa a
explodat, omorând un poliţist.
În 1912, un poliţist american, Lester Wire, a abordat problema semaforului dintr-o
perspectiva modernă. Acesta a inventat şi montat în Salt Lake City primul semafor auto
electric.
După doar doi ani, tânăra companie americana “American Traffic Signal
Company”, pe baza design-ului lui James Hoge, a instalat un sistem de semaforizare în
Ohio, care avea, în plus, faţă de cel precedent un sistem auditiv( buzzer ) care era
declanşat înainte de schimbarea culorii semaforului pentru a atenţiona autovehiculele.
Acest model creat de James permitea poliţiei şi pompierilor să controleze semafoarele în
caz de urgenţă.
Primul semafor cu trei culori pentru patru direcţii a fost inventat de ofiţerul de
poliţie William Potts, în Detroi, Michigan, în 1920. În 1922 T.E. Hayes a brevetat

13
"Combination traffic guide and traffic regulating signal" .Ashville, Ohio pretind că la ei
s-a folosit ultimul semafor de acest gen, până în 1982 când a fost dus la un muzeu local.
Primele semafoare interconectate au fost instalate în Salt Lake City în 1917, cu
şase intersecţii controlate simultan de un întrerupător manual. Controlul automat a fost
introdus în martie 1922, în Houston, Texas. Primul semafor automatizat a fost lansat în
Wolverhampton în 1927. În 1923 Garrett Morgan a brevetat versiunea lui. Modelul
acestuia era un stâlp sub forma unui "T". Unicul avantaj al acestui tip de semafor era
faptul că putea fi controlat de la distanţă printr-un sistem mecanic.
Culorile semaforului, care reprezintă stop şi mergi, se presupune că au fost
derivate de la sistemul maritim, de identificare a bordului (roşu) şi tribordului (verde),
unde vasul din stânga se opreşte că să treacă cel din dreapta.
Semafoarele cronometrate au apărut în 1999, în Taiwan şi au fost aduse în
America după ce un inginer le-a înteles scopul. Aceste semafoare încă se mai folosesc,
fiind utile pietonilor pentru a-şi cronometra timpul pe care îl au pentru a traversa.

1.4. Design

În mod traditional sunt folosite becuri incandescente si cu halogen. Din cauza


eficientei scazute a productie de becuri si a singurului punct de esec (arderea
filamentului) municipalitatile au hotarât sa se foloseasca o multime de LED-urile.
Acestea sunt mai ieftine, au capacitate de iluminat mai mare, si în cazul în care un LED
se arde mai ramân celelalte sa lumineze.
Semnale luminoase customizabile - 3M High Visibility Signal - folosesc optica difuza a
luminii si lentile pentru a crea semnalul luminos. Lumina trece prin doua lentile de sticla
din spatele semnalului luminos. Prima lentila este mata transforma lumina într-o minge
uniforma de lumina,cu diametrul de 125 mm. Apoi lumina trece prin a doua lentila,
cunoscuta sub denumirea de lentila limitatoare. Folosind o folie speciala de aluminiu,
aceste semnale erau mascate astfel sa fie vazute doar de pe anumite benzi. Lentilele
fresnel concentreaza lumina si creaza o uniformizare a luminii pentru banda respectiva.

14
În Statele Unite, semafoarele au becuri cu diametru de 300 mm. Înainte becurile
trebuiau să aibă diametru de 200 mm, dar au fost scoase în favoarea becurilor cu
dimensiuni mai mari. În Marea Britanie au fost introduse becurile de 300 mm, dar după
folosirea acestora s-au gândit că nu este necesară folosirea lor şi au revenit la becurile de
200 mm.

1.5 Semaforizarea - Semaforizarea eficienta

Principalele motive pentru care a fost simţită nevoia introducerii sistemelor de


semaforizare pe străzi sunt numărul mare de accidente rutiere în jurul intersectiilor şi de
blocajele de trafic.
Dacă scopul semaforului este acela de diminua numarul accidentelor şi de a
fluidiza traficul, atunci se pune în discuţie problema eficientei semaforizării. Chiar dacă
în mod teoretic semaforizarea ar trebui sa fie benefică, în practică, nu orice intersecţie
trebuie semaforizată.
Potrivit inginerilor de trafic, semafoarele pot avea deopotrivă atât efecte pozitive
cât şi efecte negative. Este adevărat că în timp pot diminua numarul accidentelor “din
lateral”, dar excesul de semafoare şi semaforizările ineficiente cresc frecvenţa
accidentelor “din spate” şi defavorizează pietonii şi cicliştii. Semafoarele pot creste
capacitatea traficului la intersecţii, însă, de asemenea, pot fi cauza întârzierilor excesive
în trafic.
În acest sens, Hans Monderman - inginer de trafic danez, un adevărat pionier in
domeniul resurselor partajate - declara : “Ne dorim semafoare doar acolo unde sunt utile
şi eu nu am gasit înca un astfel de loc.”
Pentru a înlatura efectele negative ale semafoarelor, de-a lungul anilor au fost
propuse numeroase metode de eficientizare a semaforizărilor. Puţine însă şi-au atins
scopul, unele fiind aplicabile doar în cazuri izolate.

15
O prima mare îmbunătăţire a fost introducerea semafoarelor pietonale, care
facilitează trecerea în siguranţa a pietonilor de pe o parte pe alta străzii în cauză. În cazul
unei intersectii a două străzi, semafoarele pietonale nu îngreunează traficul, deoarece
acestea se pot sincroniza cu cele auto de pe planul paralel( cealalta stradă ). Astfel
semafoarele pietonale sunt verzi doar când semafoarele auto de pe aceeaşi stradă sunt
roşii, fapt care fluidizează traficul ( maşinile nu trebuie să oprească special pentru
trecerea pietonilor ).
În unele locuri, semafoarelor pietonale le sunt ataşate dispozitive sonore ce au ca
rol ghidarea pietonilor orbi sau cu probleme de vedere. În
Iaşi, aceste dispozitive sunt declanşate doar în momentul în
care semaforul pietonal indică verde, pe când în Australia,
dispozitivul emite efecte sonore slabe cât timp semaforul
este roşu şi efecte sonore mai puternice cât timp este verde.
În unele locuri, semafoarele pietonale au ataşat un
dispozitiv cu buton şi sunt tot timpul roşii. Acestea se fac
verzi doar “la cerere” : în momentul în care pietonul apasă
pe acel buton, semaforul pietonal se schimbă din roşu în
verde şi cele auto corespunzătoare se schimbă din verde în
roşu. În acest fel, nu se întrerupe fluxul de maşini la un
interval regulat de timp, ca la semafoarele normale, ci doar
în momentul în care există o cerere pietonala de traversare, fapt care mareşte capacitatea
traficului în acea intersectie.
În aceiaşi ordine de idei, o îmbunătăţire a constituit-o introducerea semafoarelor
pentru ciclişti, care uşurează traficul acolo unde sunt piste de ciclişti.
Încă de la cel de-al treilea sistem de semaforizare oficial ( 1914 ), s-a pus
problema controlării semaforizării în cazuri de urgenţă. Acest lucru se referă la
modificarea fazelor semafoarelor unei intersecţii astfel încât să faciliteze trecerea mai
rapidă a vehiculelor de urgenţa ( maşini de poliţie, ambulanţe, maşini de pompieri etc. ).
În majoritatea cazurilor, acest lucru nu se mai realizează ca în 1914, unde centralista care
primea apelul de urgenţa “construia” ruta maşinii şi modifica manual starea semafoarelor
de pe acea rută, ci se folosesc transmiţătoare instalate pe aceste maşini care emit unde

16
radio sau unde infraroşii ce pot fi captate de semafoare. În momentul în care un semafor
primeste semnalul transmis de maşina, acesta îşi schimbă culoarea în roşu, indiferent de
starea anterioara. Astfel, în momentul producerii unei urgenţe( accident, incendiu etc. )se
blochează toata intersecţia, facilitând circulaţia maşinilor de urgenţă fără perturbaţii.
Dupa trecerea maşinii ce a declanşat ciclul de urgenţă, semafoarele îşi reiau activitatea în
regim normal.
Mai nou, acest tip de control al semaforizării în caz de urgenţă se realizează
automat prin intermediul semnalului gps: maşinile cu prioritate sunt monitorizate
constant, iar cand se apropie de o intersecţie, aceasta intră în ciclul de urgenţă, şi revine la
normal după ce maşina a depaşit intersecţia.
Odată implementat un astfel de sistem, “maşinile de urgenţă” se pot extinde, în
sensul în care şi alte maşini pot beneficia de o prioritizare în trafic. Acest lucru s-a
încercat şi la Iaşi prin proiectul “Civitas” din cadrul proiectului
“Archimedes”, prin intermediul căruia toate vehiculele de transport
în comun ar fi trebuit să beneficieze de această prioritizare în trafic.
O altă inovaţie este constituita din cronometrarea fazelor
semafoarelor. Astfel, semafoare arată nu numai starea
( verde/galben/roşu ) ci şi durata de timp a acestora. Adevărata utilitate a acestora este
pusă la îndoială, deoarece, chiar dacă ofera atât pietonilor cât şi şoferilor un plus de
informaţie care poate fi utilă pentru planificarea traversării intersecţiei, limitează modul
de schimbare al fazelor semafoarelor care implementează o soluţie “dinamică”( ex:
semaforizarea în caz de urgenţă ).
Pentru anumite tipuri speciale de vehicule s-au creat semafoare speciale. Un
exemplu în acest sens este semaforul pentru tramvai. Acesta are patru becuri de aceeaşi
culoare( în general albă ) care sunt poziţionate sub forma unui “T”. Modul in care sunt
aprinse indică grafic direcţia de mers:

17
Altă îmbunătăţire o constituie instalarea unor senzori în intersectii, senzori care
detectează prezenţa maşinilor. Cu ajutorul senzorului folosit ca un declanşator, se aplică
cazul semaforizării “la cerere” de la semafoarele pietonale cu buton: în momentul în care
se apropie o maşină de intersecţie, senzorul o detectează şi semaforul încearcă să îşi
schimbe starea( din roşu în verde ). Dacă nu este declanşat senzorul, semaforul ramane
roşu. În realitate, în multe cazuri, senzorul nu putea detecta biciclete sau maşini mici,
acest sistem dovedindu-se ineficient.
O soluţie a fost renunţarea la senzori şi dotarea semafoarelor cu camere infraroşii.
Acestea şi-au gasit o nouă utilitate: monitorizarea traficului şi raportarea oricarei încălcări
a legislaţiei traficului. În acest sens, în
momentul în care semaforul intră în faza
roşie, camera este programată să
fotografieze orice vehicul care nu respectă
culoarea semaforului şi trece pe roşu.
Cu tot cu aceste inovaţii care tind să
crească eficienţa semmaforizărilor, în viaţa
reală nu are loc întotdeauna fluidizarea
traficului. Acest rezultat parţial nesatisfăcător a condus la crearea unui nou concept, acel
de “Semaforizare inteligentă”.

1.6 Semaforizarea - Semaforizarea inteligentă

Sistemele de semaforizare au evoluat în timp de la o simpla automatizare la un


management al traficului din ce în ce mai inteligent. Cele mai simple semafoare se

18
bazează pe un ceas intern, pe baza căruia alocă fiecarei stare( roşu/galben/verde ) o
anumita perioadă de timp predefinită. Acest model de semaforizare este des întâlnit în
oraşe, unde fluxul de maşini este previzibil, dacă nu chiar constant. În acest sens,
semaforizarea “simplă” poate face faţă unor scenarii predefinite( ore de vârf, zile de
sărbătoare, etc. ), dar poate fi depăşită într-o situaţie “ieşită din comun”( ex: trafic atipic
într-o duminică dupa-amiază ). Pentru a putea face faţă oricarui scenariu de trafic, trebuie
să existe o legătură, un mod de comunicare între maşină şi semafoare. S-au mai încercat
“comunicări” prin intermediul senzorilor de proximitate sau de presiune, însă, pentru ca
semaforul să poată lua decizia cea mai bună, trebuie să existe o legatură mult mai strânsă
între acesta şi maşini.
Una din cele mai realiste şi des întâlnite soluţii pentru o semaforizare inteligentă
este aceea ca fiecare vehicul să raporteze semaforului poziţia sa şi destinaţia. Pe baza
acestor date, semaforul ar trebui să fie capabil să ia cea mai bună decizie( ex: care bandă
să fie verde )care să minimizeze durata de aşteptare medie a maşinilor până ajung la
destinaţie. Semaforul inteligent rezolvă această problemă calculând un “scor” pentru
fiecare maşină. Acest scor reprezintă

diferenţa dintre durata estimată de timp în care fiecare vehicul ar ajunge la destinaţie dacă
semaforul ar fi verde şi durata estimată de timp în care fiecare vehicul ar ajunge la
destinaţie dacă semaforul ar fi roşu. Următorul pas este ca semaforul să determine care
acţiune maximizează scorul mediu al fiecarui vehicul.
Datorită faptului că semafoarele sunt interconectate, există posibilitatea ca acestea
să dirijeze traficul pe alte rute în cazul în care o rută este prea aglomerată sau în cazul
producerii unui accident sau blocaj.
Există şi alte abordări ale unei semaforizări inteligente, însă principiul de bază nu
diferă: folosirea de sisteme multi-agent în care comunicarea şi coordonarea joacă un rol
foarte important.
Cu toate că există multe implementări ale acestui tip de sistem( conform Primariei
există şi în Iaşi încă din 2010 ), nu s-a gasit o soluţie optima generală.

19
Capitolul 2. Arhitectura aplicaţiei

2.1 Premise şi direcţii de dezvoltare

Această aplicaţie are ca scop implementarea unui sistem inteligent de


semaforizare şi monitorizare al traficului, în vederea fluidizării traficului. Altfel spus,
aplicaţia încearcă să minimizeze timpul mediu petrecut în trafic al unui vehicul.
Acest lucru se realizează prin asocierea fiecărui vehicul aflat în circulaţie a unui punctaj
care poate fi tradus într-un fel de grad de prioritate al vehiculului. Aplicaţia încearcă
minimizarea timpului de aşteptare( la intersecţiile semaforizate )a vehiculelor cu
prioritate mai mare.
Aplicaţia oferă posibilitatea managementului manual al intersecţilor şi
semafoarelor, punând la dispoziţia utilizatorului o interfaţă grafică prin care se pot
adăuga/modifica/şterge intersecţiile şi semafoarele folosite.
Iniţial, semafoarele au presetate câteva cicluri care pot fi activate manual sau
automat. Pe parcursul rulării aplicaţiei, în măsura în care semafoarele “învaţă”, acestea
tind sa nu respecte aceste reguli de funcţionare presetate şi să prefere modificarea
dinamică a ciclurilor.
Pentru monitorizarea traficului, o unealtă des întâlnită este simulatorul de trafic.
Aplicaţia implementează, de asemenea, şi un simulator de trafic, care are atât rolul de a
genera date pentru sistemul inteligent de semaforizare, cât şi rolul de a prezenta aplicaţia
într-un mod cât mai “user-friendly”, acesta generând o interfaţă grafică intuitivă şi uşor
accesibilă.

20
2.2 Tehnologii şi servicii

Dintre o multitudine de posibilităţi şi moduri de implementare a acestui software,


am ales să construiesc aplicaţia sub forma unei aplicaţii web. Sub această formă, aplicaţia
oferă mai multe avantaje decât o aplicaţie desktop, şi anume:
● independenţa faţă de platformă ( nu contează de pe ce sistem -
pc/laptop/tabletă/mobil - sau de pe ce sistem de operare rulezi aplicaţia -
windows/linux/mac os/android - deoarece aplicaţia este rulată într-un browser )
● nivel ridicat de utilizabilitate ( pentru a rula aplicaţia, nu este nevoie decât de
accesarea URL-ului acesteia într-un browser; nu este nevoie de vreo instalare
vreo-unui software auxiliar )
● accesibilitate uşoară ( aplicaţia poate fi rulată din orice colţ al lumii )
● integrarea serviciilor web ( posibilitatea de a utiliza un serviciu web - ex: google
maps, google calendar etc. )
● centralizarea datelor

Tehnologiile folosite sunt cele tipice pentru o aplicaţie web, şi anume:


● PHP pentru partea “backend”. Prin acest limbaj de programare sunt generate
paginile HTML, se setează sesiunile şi se realizează schimbul de informaţii cu
baza de date.
● MySql pentru stocarea datelor. Prin intermediul acestui sistem de management
relaţional al bazelor de date sunt stocate detaliile referitoare la intersecţii,
semafoare( nume, localizare ) şi cicluri de bază.
● JavaScript pentru partea “frontend”. Acest limbaj reprezintă punctul cheie al
aplicaţiei, deoarece prin intermediul acestuia se ofera dinamismul de care are
nevoie aplicaţia. Toate calculele şi toţi algoritmii sunt scrişi în acest limbaj de
programare. Tot prin javascript se realizează conexiunea cu serviciul google
maps, care oferă ( prin intermediul unui api scris in javascript ) baza interfeţei
grafice a aplicaţiei.

21
Pentru a simula un sistem real de semaforizare, am preferat ca interfaţa grafică să
reflecte cât mai mult realitatea. Astfel, în loc să creez propriul sistem de străzi pe care să
ruleze simularea, am ales să folosesc serviciul de cartografie şi localizare oferit de
google, şi anume, google maps.

2.3 Elemente notabile de implementare

Ca şi structură, aplicaţia este constituită din două parţi majore:


1. Managementul semafoarelor
2. Simularea traficului

Prima parte se referă efectiv la construirea şi editarea zonelor de semaforizare din


simulare. Aceasta conţine un meniu care se modifică dinamic în funcţie de acţiunile
interprinse de utilizator şi o interfaţă grafică ( hartă google maps ), unde utilizatorul poate
selecta punctele exacte pe hartă ale intersecţiilor cu semafoarele corespunzătoare.
Cea de a doua parte se ocupă strict de simulare, în sensul că utilizatorul are la
dispoziţie harta cu semafoarele setate în prima parte a aplicaţiei, unde poate să observe
simularea sau să participe activ la aceasta. Utilizatorul are control asupra demersului
esimulării ( start/stop ) şi asupra câtorva parametri ce modifică viteza vehiculelor şi
densitatea vehiculelor aflate în trafic.
La deschiderea simulării, utilizatorul are posibilitatea să îşi aleagă un vehicul cu
care să participe la simulare. Controlat prin intermediul săgeţilor de la tastatură, maşina
“condusă” de utilizator se comportă ca celelalte maşini, în sensul că poate aştepta sau nu
la semafoare sau poate avea accident.

2.3.1 Elemente notabile de implementare. Harta

Google maps este un serviciu furnizat de Google prin intermediul căruia


utilizatorul are posibilitatea de a vizualiza orice ţară, localitate sau punct de interes
geografic ( şi nu numai ) online. Acest serviciu este gratuit, ceea ce înseamnă că oricine

22
are o conexiune la internet poate beneficia de el. Este cel mai mare serviciu de hărţi la
nivel mondial şi în acelaşi timp cel mai mare motor de căutare în funcţie de localizare.
Pentru ca acest serviciu să poată fi integrat în alte aplicaţii, google a lansat un API
(Application Programming Interface) care oferă utilizatorilor posibilitatea de a comunica
cu acesta şi la nivel programatic.
Aplicaţia de semaforizare se foloseşte de versiunea a doua a api-ului google maps
pentru limbajul de programare javascript.

2.3.2 Elemente notabile de implementare. Waypoint

Problema simulării traficului a adus nevoia de a ghida maşinile dupa anumite


puncte cheie numite “waypoints”. Conceptul de waypoint este adesea asociat cu un set de
coordonate care determină un punct fizic pe hartă. Acestea sunt folosite în lumea reală în
navigarea navală şi aeriană.
În cazul aplicaţiei, waypoint-ul este un obiect javascript care menţine o referinţă
la un anume punct pe hartă. Acesta poate fi privit ca o structură de tip “Nod” în cazul
unui graf. La fel ca şi nodul unui graf, waypoint-ul menţine referinţe la alte obiecte de
acelaşi tip, construindu-se astfel un drum reprezentat printr-un graf neorientat.
Constructorul acestuia este supraîncărcat, astfel incât waypoint-u poate fi complet
configurat încă de la iniţializare: poate fi instanţiat
● fără parametri
● cu un punct de tip “GLatLng” ( care face parte din api-ul google maps )
● cu un punct şi o listă de alte obiecte de tip waypoint ( care vor fi noduri adiacente
cu acesta în graful rezultat )
● cu un punct, o listă de waypoint-uri şi un identificator unic ( de tip string )
● cu un punct, o listă de waypoint-uri, un id şi un obiect de tip semafor
( a se vedea anexa X )

Pentru a păstra un design cât mai modularizat, comunicare dintre semafor şi


vehicule se realizează prin intermediul waypoint-urilor. Astfel, waypoint-urile pot avea
asociate câte un semafor, cu care pot comunica. Acestea sunt conştiente de starea curentă

23
a semaforului şi prin apelul metodei okToPass, waypoint-ul comunică vehicului dacă
poate trece mai departe ( dacă semaforul asociat este verde ).
Acest obiect este important pentru navigarea automată a maşinilor, deoarece, pe
lângă drumul oferit, acesta poate calcula distanţa dintre sine şi orice alt waypoint de pe
hartă prin intermediul metodei getDistanceFrom, poate calcula diferenţa gradului de
înclinaţie ( grade sau radiani ) dintre sine şi orice alt waypoint de pe hartă prin metoda
getAngleDiff şi poate returna în mod aleator următorul waypoint din drum în cazul în
care acesta are mai mulţi “vecini”( scuteşte “şoferul” de luarea unor decizii de drum,
lăsându-l să se concentreze asupra “şofatului” ) prin intermediul metodei
getNextWayPoint.

2.3.3 Elemente notabile de implementare. Car

Pentru ca simularea traficului să fie cît mai realistă, este nevoie de un sistem
inteligent care să furnizeze datele de care au nevoie semafoarele. Obiectul de tip Car
reprezintă entitatea ce furnizează aceste seturi de date. Acesta este reprezentat pe hartă
printr-o imagine sugestivă( imaginea unui vehicul privit de sus ) şi poate parcurge trasee
predefinite.
Din punct de vedere al modului de interacţiunii cu simularea, maşinile ( de tip
Car ) pot fi dirijate prin două moduri :
● automat
● manual

În modul automat, maşinile pargurg un drum predefinit format din obiecte de tip
WayPoint. Graful descris de aceste puncte reprezintă traseul pe care maşina are voie să îl
parcurgă. Astfel, maşinile merg din waypoint în waypoint, generând datele pentru
sistemul de semaforizare. În momentul în care waypoint-ul curent al unui vehicul este
asociat cu un semafor ( adică maşina este în apropierea unui semafor ), waypoint-ul
comunică atît cu vehiculul, fuurnizându-i informaţii despre starea semaforului ( vehicul

24
are voie să treacă doar dacă apelul metodei okToPass a waypoint-ului returnează un
mesaj corespunzător ).
În cel de-al doilea mod - cel manual - utilizatorul controlează maşina. Astfel, spre
deosebire de modul automat de dirijare, maşina nu mai este conştientă de vreun drum
predefinit deoarece utilizatorul are control total asupra vehicului. Acesta dirijează
vehiculul prin intermediul tastelor direcţionale( săgeţi ) sau prin tastele “W”, “S”, “A”,
“D” şi îl frânează prin intermediul tastei “SPACE”. Astfel, pentru a
● accelera, utilizatorul apasă una din tastele “săgeată înainte” sau “W”
● decelera, utilizatorul apasă una din tastele “săgeată înapoi” sau “S”
● vira la stânga, utilizatorul apasă una din tastele “săgeată stânga” sau “A”
● vira la dreapta, utilizatorul apasă una din tastele “săgeată dreapta” sau “D”
● frâna brusc, utilizatorul apasă tasta “SPACE”
● porni/opri girofarul( unde este cazul ), utilizatoorul apasă tasta “G”

În starea manuală, vehiculul nu este conştient nici de prezenţa( implicit nici de


starea ) semafoarelor, deoarece posibilitatea luării unei decizii ( de oprire la semafor )
este lăsată doar pe seama utilizatorului.
Din punct de vedere al gradului de prioritate, vehiculele sunt împărţite în două
categorii:
● maşini fără prioritate
● maşini cu prioritate

Această prioretizare se referă la modul în care interacţionează sistemul de


semaforizare cu vehiculele. În cazul maşinilor cu prioritate, în momentul apropierii de o
intersecţie semaforizată, sistemul blochează toată intersecţia - schimbă culoarea tuturor
semafoarelor în roşu - pentru a furniza vehicului cu prioritate un drum fără perturbaţii.
Acest comportament simulează cazul real în care o maşină de urgenţă( maşină de poliţie /
ambulanţă / maşină de pomieri ) traversează o intersecţie.
Pe lângă modul diferit în care semafoarele percep vehiculele cu prioritate, încă o
diferenţă între cele două tipuri de vehicule constă din modul de afişare pe hartă:

25
vehiculele fără prioritate sunt reprezentate ca nişte maşini normale, pe când cele cu
prioritate iau forma unor maşini de poliţie, sugerând astfel cazul de urgenţă.
În cazul în care utilizatorul alege dirijarea unui vehicul cu prioritate, acesta mai
are o extraopţiune, şi anume pornirea/închiderea “girofarului”( declanşat prin apăsarea
tastei “G” ). Acesta nu este decât un mod grafic de a reprezenta starea de urgenţă a
vehicului. Prin urmare, o maşină de poliţie cu girofarul oprit va fi tratată ca orice alt
vehicul fără prioritate. În momentul în care aceasta are girofarul pornit, sistemul de
semaforizare îi va fluidiza traseul.
Obiectul de tip Car paote fi, ca şi în cazul obiectelor de tip WazPoint, configurat
complet doar din instanţiere, acesta având constructori supraîncărcaţi pentru:
● niciun parametru
● o colecţie ( javascript literal object ) de optiuni de configurare
● un string ce indică tipul vehicului (“normal“ sau “police”)
● tipul vehicului şi un string ce determină numele maşinii
● tipul, numele şi o colecţie ( javascript literal object ) de opţiuni de configurare

Opţiunile de configurare de bază constau în:


● viteză
● înclinaţie
● fps( “frames per second” - numărul de cadre pe secundă )
● waypoint ( în cazul în care maşina este ghidată automat )

Viteza este calculată ca fiind raportul dintre pasul curent de incrementare al


distanţei ( calculat în metri ) - memorat în proprietatea speed - şi durata de timp de
incrementare a distanţei( fps-ul ).
Pentru o simulare cât mai fidelă, reprezentarea vehiculelor nu se face doar printr-o
imagine statică. Imaginea se roteşte în funcţie de gradul de înclinaţie al maşinii exprimat
în grade. De rotirea imaginilor se ocupa scriptul php “rotateImg.php”, care primeşte ca
parametri adresa imaginii (adresă relativă ) şi numărul de grade şi returnează imaginea
primită ca parametru rotită la gradul de înclinaţie specificat.

26
Capitolul 3. Avantajele şi dezavantajele unei semaforizari inteligente

Un astfel de sistem prezinta in mod clar o serie de avantaje:

1. Fluidizarea traficului printr-o îmbunătăţire a condiţiilor de trafic cu aproximativ


15-35%
2. Imbunătăţirea serviciilor RATP sau a celor transport in comun prin respectarea
unei programări a sosirii în şi plecării vehiculelor din staţii
3. Semnalizarea instantanee a echipamentelor defecte din intersecţii şi posibilitatea
intervenţiei operative pentru remedierea defectelor
4. Imbunătăţirea serviciilor vehiculelor de intervenţie - Poliţie, Ambulanţă, Pompieri
prin crearea unei faze de blocare a intersectiei
5. Eliminarea factorului de decizie uman in dirijarea traficului in intersectii si
economisirea de resurse umane (agenti de politie) cu posibilitatea redestribuirii
acestora in alte arii
6. Imbunatatirea gradului de confort atat pentru conducatorii auto, cat si pentru
pietonii
7. Eliminarea blocajelor la orele de varf
8. O mai buna supraveghere a traficului/conditiilor de trafic prin intermediul unui
centru de control
9. Detectarea ilegalitatilor prin intermediul dispozitivelor instalate in intersectii:
trecere pe rosu, incalcarea limitelor legale de viteza, convorbiri mobile etc.
10. O analiza statistica riguroasa a conditiilor de trafic in functie de intervale orare,
sezon, conditii meteorologice, diverse evenimente sau manifestatii
11. Distribuirea datelor in timp real soferilor in trafic petru o redirijare preemptiva a
traficului si o mai buna incarcare/echilibrare a diferitelor trasee
12. Limitarea numarului de accidente rutiere si victime
13. Un prim pas catre crearea unui CCTV(Closed Circuit Television) local

27
14. O infrastructura moderna de dirijare a circulatiei auto/pietonale la standarde
occidentale

Principalele dezavantaje ale folosirii unui sistem inteligent de semaforizare:

1. În primul rand un mare dezavantaj este costul unui astfel de proiect (pentru
municipiul Bucuresti a ajuns la un pret de 18 milioane de euro -
http://www.financiarul.com/articol_3099/controlul-inteligent-al-traficului--18-
mil--euro.html). Pornind de la echipamentele necesare (camere de supraveghere,
servere,terminale), respectiv costul deployment-ului pe infrastructura existenta si
cumpararea efectiva a software-ului necesar(algortmii de fluidizare a traficului),
totalul de plata poate fi descurajant
2. Necesitatea unei administrari/supravegheri periodice a unui astfel de sistem
complex
3. Necesitatea unei securizari ridicate a unui astfel de sistem, ceea ce implica alte
costuri suplimentare
4. Nu exista garantia unei colaborari cu firmele de transport in comun
5. Cresterea frecventeo accidentelor “rear-end”
6. Complicarea situatiei pentru un oras/municipiu cu tramvaie care nu introduce
decat un alt factor in analiza acestei probleme complexe

28
Capitolul 4. Viitorul semafoarelor

Deja nu mai putem numi folosirea de led-uri (Light-Emitting Diode) ca fiind o


inovaţie, deja peste 50% din fostele elemente de semaforizare au fost înlocuite cu
versiuni ecologice, ce consumă mai puţin şi au o durată de viaţă mai mare.
Partea de inovaţie în acest domeniu se ocupă pe cât posibil de îmbunătăţirea
elementelor active ce participă la acest proces. Este vorba de două direcţii importante:
îmbunătăţirea design-ului semafoarelor şi concentrarea atenţiei asupra acestora.
Semafoarele nu şi-au schimbat aproape deloc design-ul de aprope 90 de ani, de la
inventarea acestora în anii 20. Acest fapt este un clar indicator al reuşitei conceptului de
semafor, însă, datorită numărului tot mai mare de autoturisme care apar pe zi, circa
150.000 (conform statisticii Organizaţiei Internaţionale a Producătorilor de Autoturisme
din 2007), nevoia de îmbunătăţiri devine evidentă.

Sistemul de semaforizare automată implementat de Ford

29
Un pas spre viitor este făcut ce compania americană Ford, care după ce deja a
uimit publicul cu sistemele integrate în ultimele modele de maşini lansate pe piaţă, de
exemplu ”Frânarea activă inteligentă” (un sistem ce utilizează un radar pentru a detecta
şi frâna în funcţie de distanţă faţă de autovehicolul din faţă), ”Asistenţă pentru pastrarea
benzii” (un sistem ce ajută şoferul prin atenţionări în momentul în care schimbă banda de
mers făra a semnaliza) şi chiar ”Recunoaştere Automată a semnelor de circulaţie”
(recunoaşte şi se adaptează la semnele de circulaţie detectate).
Compania a lansat în martie 2011 un comunicat de presă, în era descris următorul
proiect la care lucrează. Este vorba de un sistem bazat pe poziţionarea GPS. Dotarea
fiecarui autoturism cu un astfel de dispozitiv va permite semafoarelor ( în ideea creării de
sisteme independente ) să ia decizii în funcţie de trafic. Dacă de exemplu un autoturism
se apropie cu viteză prea mare de o intersecţie (date primite prin GPS), iar culoarea
semaforului este roşie, sistemul va determina ca respectivul autovehicul este un pericol
pentru ceilalţi participanţi la trafic, aşa că îi va atenţiona. Aici intervine sistemul propriu
al autotorismelor ce primesc semnalul, care reacţionează şi atenţionează conducătorii
auto de necesitatea de a frâna. Dacă acesta nu decelerează destul de rapid, se vor
amplifica avertismentele sonore din interiorul maşinii şi într-un caz final, chiar va frâna
pentru acesta.

Compania Siemens a început să lucreze recent la un proiect legat de sistemul de


semaforizare. Aceştia au creat un sistem de microsimulare,
exact ca şi targetul aceastei lucrări de licenţă, doar că 3D.
Beneficiile unui asfel de sistem: simulări ieftine şi rapide
pentru diverse scenarii de test, o înţelegere mai bună a
conceptelor
aplicate în
traficul de zi
cu zi, etc.

30
Astfel de aplicaţii sunt absolut vitale pentru dezvoltarea şi progresul
mijloacelor de semaforizare, în special în zilele noastre, deoarece fluidizarea a devenit o
necesitate, nu doar ceva util.

31
O altă direcţie în acest sens a fost propusă de designerul Hanyoung Lee. Acesta a
creat aşa numitul ”Perete Virtual”, care este în principiu o barieră laser, care afişează
persoae ce trec strada. Laserele sunt perfect sigure, puterea lor nefiind una prea mare, dar
cel mai probabil sunt destul de puternice pentru a opri o maşină. Imaginile vorbesc de la
sine:

32

S-ar putea să vă placă și