Sistem distribuit de conducere a traficuluiutilizând sisteme multi-agent Absolvent Milea Costel-Cătălin Coordonator Prof. dr. ing. Monica Pătrașcu… [632092]
Universitatea Politehnica București
Facultatea de Automatică si Calculatoare
Departamentul de Automatică și Ingineria Sistemelor
LUCRARE DE LICENȚĂ
Sistem distribuit de conducere a traficuluiutilizând sisteme multi-agent
Absolvent: [anonimizat], 2017
Cuprins
ii
1 Introducere
Acest capitol își propune urmărirea pașilor de dezvoltare a unei soluții de căutare a stațiilor
electrice de încarcare a autovehiculelor:
1.1 Scopul lucrării
1.2 Definirea problemei
1.3 Motivația alegerii soluției de conducere
1
2 Fluidizarea traficului, sistem complex
2.1 Definirea traficului ca proces
Continua nevoie de extindere pe plan teritorial a umanității duce la crearea de aglomerări ur-
bane, creșterea densității de vehicule pe infrastructuri de drumuri ce nu sunt încă adaptate
acestor schimbări și totodată scăderea flexibilității transportului.
În prezent cea mai studiată soluție a acestei probleme este dezvoltarea unei infrastructuri
de conducere ce este capabilă să soluționeze situațiile neplăcute provocate de congestia traficului.
Acest lucru poate fi facilitat prin exploatarea principiilor rețelelor cognitive (Dimitrakopoulos și
Demestichas 2010) adică prin dezvoltarea unor mecanisme de conducere a procesului de transport
ce sunt capabile să învețe să prioritizeze eventualele pericole apărute în mediu în funcție de
comportamentul participanților la trafic.
Apariția fenomenului de congestie a traficului, într-un studiu făcut în (Bando și alții 1995),
este datorată unei mici perturbații precum accidente, defecțiuni ale semaforizărilor. Însă princi-
pala cauză ce este studiată în acest sens este instabilitatea produsă de tranziția nesincronizată
a fazelor intersecțiilor.
În vederea simulării mișcării maselor de vehicule pe căile de transport este necesară defini-
rea unui model dinamic al fluxului de trafic ce poate induce apariția fenomenului de aglomerare
a tronsoanelor intersecțiilor. Un model minimal al fenomenului de congestie a traficului se referă
la răspunsul autovehiculelor sub formă de accelerație, fiind de altfel singura componentă con-
trolabilă în acest sens. De menționat faptul că modelul este bazat pe premisa că fiecare vehicul
răspunde la stimuli veniți din partea altora.
xn=∆xn
t2+_Vmstat(xn); (2.1)
unde:
∆xn=xn+1 xn;
având: n= 1;2; :::N cu notațiile:
n- indicele autovehiculului de pe tronson
N- numărul total de vehicule
xn- coordonata vehiculului de pe poziția n
Vmstat(xn)- viteza medie statistică a autovehiculului de pe poziția n
Cu alte cuvinte, pentru o viteză medie constantă a unui autovehicul npe tronsoane, putem
trage concluzia că accelerația este direct proporțională cu variația vitezei dintre acesta și cel de
pe poziția n+ 1raportată la unitatea de timp.
2
Capitolul 2. Fluidizarea traficului, sistem complex
2.2 Definirea fluidizării traficului ca sistem de conducere
„Un sistem complex un sistem ce cuprinde un număr mare de entități puternic colabo-
rative, procese sau agenți, a cărui întelegere necesită dezvoltarea sau utilizarea de noi unelte
științifice, modele nelineare, descrieri ne echilibrate și simulări computaționale. “ Yukalov și Sor-
nette 2014
Fluidizarea traficului unei infrastructuri de transport este conform citatului lui (Yukalov
și Sornette 2014) un sistem complex ce necesită capacități decizionale în ceea ce privește situații
perturbatoare, asigurându-se astfel robustețea. Acesta este compus atât din utilizatori cât și
din rețeaua de drumuri și semafoare.
Problematica impusă de fluidizarea traficului este studiată în prezent de conceptul de
Sisteme inteligente de Transport(ITS) ce urmăresc dezvoltarea de noi tehnologii și pun în va-
loare siguranța, eficiența și confortul transportului atât uman cât și al bunurilor ( „Intelligent
Transportation Systems “ ). Structura unui astfel de ITS poate varia în funcție de tehnologiile și
posibilitățile introduse de mediul în care este implementat:
•La nivel de vehicule – alocarea rutelor vehiculelor se face folosind algoritmi complecși de
calcul ce includ ca parametri distanța, elevația traficului și fac o estimație de timp până
a duratei călătoriei (Fiosina și Fiosins 2014). În prezent este cea mai des folosită datorită
costului mic de integrare.
•La nivel de semaforizare – reprezină nivelul în care o entitate de tip intersecție ce comunică
cu celelalte în vederea fluidizării. Aplicarea acestei metode necesită introducerea de noi
dispozitive inteligente ce sunt capabile de decizii și comunicare (De Oliveira și Bazzan
2006).
•La nivel de arhitectură – aceasta incapsulează controlul rutelor vehiculelor, coordonat cu
cel al semafoarelor, și integrează algoritmi de complecși de decizie care pot aloca tronsoane
dinamic având în vedere o statistică asupra elevației traficului pe perioade de timp.
2.3 Moduri de sincronizare a fluxului de trafic
Până în prezent soluționarea problemei de fluidizare a traficului a fost pusă sub cerce-
tare folosind tehnologii precum centralizarea la nivel global a informațiilor fiecărei intersecții,
modularizarea pe sisteme distribuite a fiecărei intersecții, adăugarea de senzori inteligenți pe
structura deja existentă a controlului de trafic. Tipurile de conducere folosite în sincronizarea
semafoarelor sunt diferențiate de parametri precum densitatea traficului în intervale orare dife-
rite, viteza medie a vehiculelor pe tronsoane, distanța tronsoanelor. Conform (Urbanik și alții
2014) se disting astfel:
•Conducere pre-temporizată – este folosită în cazul intersecțiilor cu spațiu restrâns în care
densitatea traficului este constantă și pot suporta un număr de faze ale semafoarelor ridicat,
de obicei aplicată pe intersecții din suburbiile orașelor. Avantajul folosirii acestora este că,
fiind știută o medie a numărului de mașini pe tronsoane, infrastructura nu necesită prezența
unor dispozitive de detecție și sincronizarea tronsoanelor poate fi facută coordonarea fazelor
semafoarelor cu intersecțiile vecine.
•Conducere semi-acționată – infrastructura impusă de aceasta necesită prezența de elemente
de detecție a densității de vehicule pe tronsoanele secundare, în care fluxul de trafic este
mic pentru a semnala o încărcare a acestora. Astfel nivelul de conducere al intersecției face
3
Capitolul 2. Fluidizarea traficului, sistem complex
decizia asupra fazelor semafoarelor în mod pre=temporizat pe tronsoanele principale, în
care debitul de mașini este unul cunoscut și în mod centralizat la nivelul arterelor secundare
ale acesteia. Un avantaj ce distinge acest tip de conducere față de cel pre-temporizat este
acela că reduce timpul de așteptare al fazelor pe tronsoanele principale cu debit ridicat de
vehicule.
•Conducere complet acționată – descrie o arhitectură a intersecțiilor ce presupune prezența
de elemente de detecție a densității de vehicule pe fiecare tronson al acesteia. Este folo-
sită pe toate tipurile de intersecții permițând astfel o versatilitate a fazelor semafoarelor,
susținând în mod dinamic soluționarea congestiei de trafic. Acest tip de conducere este
folosit atât la nivel de sistem centralizat . (Yousef, Al-Karaki și Shatnawi 2010) oferă o
soluție de acest gen în care descrie o arhitectură ce are în componența sa o rețea de senzori
wireless (WSN) ce pot percepe la nivel de tronson numărul de autovehicule și viteza medie
de deplasare. La nivel de sistem distribuit de conducere un exemplu de implementare este
oferit de (Semarak 1996), având la bază algoritmi de conducere fuzzy ce emulează gândirea
umană încearcând la fiecare cuantă de timp a fazelor semafoarelor să decidă cărui arteră
să îi ofere prioritate.
2.4 Motivația soluției de conducere aleasă
O soluție de fluidizare a traficului este alegerea unui sistem distribuit de conducere, ce
reprezintă de altfel o colecție de componente independente ce interacționează între ele, însă la
nivel de utilizator e privită, la nivel holistic, ca un singur sistem (Tanenbaum și Van Steen 2007).
Avantajul acestuia este că permite ierarhizarea pe mai multe nivele de conducere a sistemului,
lucru ce permite o mai bună interacțiune cu utilizatorul uman, dar și dezvoltarea cu ușurință la
noi cerințe.
Nevoia de adaptare din punct de vedere al siguranței la cerințele impuse de grupul de
Sisteme Inteligente de Transport (ITS) necesită dezvoltarea de noi arhitecturi de acest gen.
CitySCAPE (CityWide Synergic Control Architecture for Protection against Earthquakes) (Pă-
trașcu și Drăgoicea 2014) este o infrastructură de oraș inteligent folosind sisteme distribuite de
conducere structurată pe două nivele de conducere: eSCAPE și inSCAPE, ierarhizate, ce pun în
valoare integritatea structurală a clădirilor, respectiv siguranța umană în rețelele de transport.
Figura 2.1 :Structura pe nivele de conducere a componentei eSCAPE. (Pătrașcu și Drăgoicea
2014)
Infrastructura CitySCAPE este bazată pe conducerea sistemelor de tip agenți celulă.
Aceștia ca și entitate reprezintă un sistem de reglare automat ce trebuie să respecte un anumit
obiectiv. (Figura ??) În nivelul eSCAPE aceștia sunt împărțiți pe nivele de conducere și decizie
structurate grafic în figura ??.
4
Capitolul 2. Fluidizarea traficului, sistem complex
Sistemul de conducere reprezentat de stratul ce conține agenți celulă se referă la sisteme
de reglare precum conducerea semafoarelor, sistem de decizie dinamică în a alocării direcției de
mers a benzilor suplimentare.
În nivelul de conducere reprezentat de agenții nucleu se face decizia de sincronizare, coor-
donare a agenților, la nivel de intersecție, folosind mecanisme specifice acestor entități prezentate
în capitolul următor.
5
3 Arhitectură sistem multi-agent
3.1 Definirea conceptului de agent
Dezvoltarea tehnologiei susținută matematic de Legea lui Moore, în care spune că numărul
de tranzistori care pot fi plasați pe un circuit integrat se dublează aproximativ la fiecare
doi ani (Gordon 1998), împinge limitele constrângerilor la nivel de componente hardware asupra
conducerii proceselor, permițând astfel dezvoltarea unei întregi infrastructuri de comandă distri-
buită. Avansarea în tehnologie permite astfel accesul mai facil din punct de vedere al resurselor
la noi componente ce conțin procesoare și sisteme de comunicație susținând curentul de Internet
of Things, în care toate obiectele sunt interconectate.
Conceptul de agent se află la baza Inteligenței Artificiale Distribuite, conform (Wooldridge
și Jennings 1994), fiind folosit într-o gamă variată de domenii precum economie, tehnologia
informației, inginerie. Dată fiind diversitatea din punct de vedere al aplicării a domeniilor, în
(Weiss 1999) termenul de agent nu are o definiție consacrată, ci mai degrabă una abstractă.
În (Weiss 1999) un agent este o entitate autonomă, computațională, ce are o anumită
percepție asupra mediului prin senzori si elemente de execuție. Privit la nivel holistic, acesta
trebuie să urmărească o țintă, o referință, sau un task până când obiectivul general este atins.
Autonomia acestora este dată de controlul asupra comportamentelor fără nici o intervenție
externă, fie umană sau din partea altui sistem.
Figura 3.1 :Un agent în mediul din care face parte. Agentul preia datele de intrare din mediu și
produce acțiuni ce influențează starea acestuia. (Wooldridge 2009)
O entitate de tip agent poate incapsula orice sistem de conducere, exemplu fiind figura Fi-
gura ??, o reprezentare minimală a unui sistem de reglare automată, ce are o anumită percepție
asupra mediului cu ajutorul senzorilor ce pot emula simțurile umane, alege un anumit compor-
tament în funcție de acest feedback ce produce o comandă de acționare asupra elementelor de
execuție pentru a aduce starea procesului la referința/obiectivul propus.
6
Capitolul 3. Arhitectură sistem multi-agent
3.1.1 Evoluție
La bazele biologiei, evoluția reprezinta fenomenul prin care o populație se adaptează la
mediul din care fac parte prin adoptarea de noi caracteristici și comportamente în defavoarea
altora devenite incompatibile cu mediul.
În domeniul științei calculatoarelor s-a demonstrat în (Wagner și Altenberg 1996) cum că
procesul de mutație, selecție și recombinare al evoluției materiei, de Darwin, nu este universal
eficace în dezvoltarea atât a componentelor hardware cât și software. Adaptarea lor la necesită-
țile tot mai complexe ale omului pentru mediu se face urmărind o variabilă ce definește cât de
capabil este sistemul de a fi generalizat, de a fi abstractizat pentru a fi mai apoi ușor modelat
pentru obiectivele propuse.
Evoluția așadar a tehnologiei implică cerințe de comportamente asupra mediului din ce în
ce mai complexe pentru îndeplinirea de obiective, obligând astfel o adaptare și a sistemelor de
conducere. O suită de noi tendințe aduse asupra acestora sunt punctate în (Wooldridge 2009):
• ubicuitate – prin reducerea continuă a costului de producție a capabilităților computațio-
nale fiecărui element al ciclului de conducere i se asociază câte o componentă de procesare;
• interconectare – o tendință ce susține curentul de Internet of Things, prin care totalitatea
entităților unui sistem sunt capabile să interacționeze între ele, des întâlnită în cadrul
arhitecturilor sistemelor distribuite;
• inteligență – reprezintă cea mai importantă caracteristică introdusă sistemelor distribuite,
oferă capacitatea decizională autonomă, prin care un agent decide în funcție de percepția
pe care o are asupra mediului ce comportament sau combinație de comportamente să
adopte pentru a ajunge la obiectivul stabilit, încurajând astfel un comportament emergent
al sistemului de conducere;
• delegare – (Wooldridge 2009) complexitatea sarcinilor de reacțiune crește din ce în ce mai
mult de la an la an, ceea ce face ca implicarea omului în rezolvarea lor să fie nefavorabilă
datorită ratei de eroare ridicată. Tendința de delegare reprezintă înmânarea acestor sarcini
de precizie unei componente ce conține un sistem de calcul;
• orientare umană – reprezintă modalitatea prin care omul interacționează cu entitatea de
conducere, în (Wooldridge 2009) vorbindu-se despre avansarea comenzilor trimise dintr-
o interfață om-mașină către o componentă percepe un anumit concept sau metaforă ce
caracterizează modul prin care omul dorește să-și reflecte acțiunile asupra mediului.
3.1.2 Caracteristici
(Wooldridge 2009) prezintă diferența între agenți și entitățile ce se aseamană ca și funcțio-
nalitate. Față de un obiect, la nivel de programare orientată pe obiecte, un agent reacționează
asupra unui mediu datorită comportamentelor în urma percepției asupra mediului, în timp ce
un obiect reacționează la anumite stări interne, limitând astfel caracteristica de autonomie.
Sistemele expert sunt sisteme bazate pe cunoștiințe, excluzând astfel conceptul de învățare
și fenomenul de emergență, ce reacționează asupra mediului cu o anumită rețetă de acțiuni
presetată ca fiind răspunsul ideal pentru o anumită stare a sistemului. Un alt dezavantaj al
sistemelor expert este lipsa de comunicare și negociere cu ceilalte sisteme.
Sistemele intenționale , față de entitățile de tip agent, pot încastra atribute specifice gân-
dirii umane cum ar fi intenții, credințe, obiective etc. Complexitatea ridicată a acestora nu le
7
Capitolul 3. Arhitectură sistem multi-agent
recomandă utilizarea în medii în care nu sunt necesare. Sunt utilizate pentru a ajuta percepția
umană asupra mediului.
Ceea ce face astfel o diferențiere cu celelalte concepte și creează o definiție completă a
caracteristicilor unei entități de conducere de tip agent este sintetizată în (Wooldridge și Jennings
1995):
• Autonomia – reprezintă proprietarea prin care un agent are prestabilite un obiectiv indivi-
dual, resurse și compotențele necesare pentru a le atinge fără a fi nevoie de orice intervenție
externă. Una dintre principalele consecințe ale autonomiei agenților este adaptabilitatea
la schimbările mediului, în sensul că nivelul de decizie poate să se autoregleze în funcție
de starea în care acesta se află fără a fi nevoie de asistare;
• Sociabilitatea – capabilitatea unui agent de a putea comunica cu mediul exterior, reprezen-
tat fie prin agenți, fie prin prezențe umane;
• Reactivitatea – caracteristica ce permite unui agent să poată reacționa la schimbarile din
mediu fără ca să memoreze o stare internă a sistemului;
• Pro-activitatea – este proprietatea prin care un agent sau set de agenți iau inițiativă în a-și
urmări obiectivul fără ca să fie nevoiți să primească niciun stimul extern
3.1.3 Emergență
Plecând de la premisa că toate comportamentele incluse în nivelul de decizie al unui agent
pot să urmărească, individual, în mod favorabil stabilității sistemului toate obiectivele propuse,
emergența unui sistem, coform (Serugendo, Irit și Karageorgos 2006), este un fenomen ce implică
generarea de noi comportamente complexe din comportamente simple.
Principala caracteristică a emergenței este aceea că la nivel macroscopic, întreg ansam-
blul este unul ce aparține limitei dintre holism și reducționism (Pătrașcu 2017), în sensul că
un comportament emergent nu poate fi împărțit în subcomportamente, cum și că o suită de
subcomportamente nu pot genera un comportament global bine definit.
3.2 Sisteme multi-agent
3.2.1 Descriere sisteme multi-agent
Un sistem multi-agent reprezintă o arhitectură de interacțiune a agenților într-un mediu
în care comportamentul fiecărui individ combinat poate duce la crearea de noi capacități și
cunoștiințe ce, privite la nivel individual, nu ar putea fi posibile.
Un exemplu ilustrat în lumea reală este prezentat în (Jennings 1998), unde un sistem
multi-agent este comparat cu un grup de furnici ce, prin eforturi colective, reușește să hrănească
restul grupului. O entitate de tip agent este astfel reprezentată, sub forma unei furnici care are
ca și comportament hrănirea. Metoda de comunicație pe care aceasta o adoptă este eliberarea de
feromoni ce indică traseul pe care l-a urmat. Conceptul de coordonare al sistemului multi-agent
este observat prin gruparea furnicilor pentru a putea transporta hrana cu scopul de a hrăni
intregul grup.
Sistemele multi-agent stau la baza inteligenței artificiale distribuite, prin care se introduc
astfel entităților de tip agent un nou concept de coexistență pentru a ajunge la un obiectiv
prestabilit. Acesta este compus din:
8
Capitolul 3. Arhitectură sistem multi-agent
• Negociere – capacitatea agenților de a soluționa o problemă ce intervine în realizarea unui
obiectiv comun, în general este soluționată prin subminarea comportamentului unui agent
față de nevoia altuia;
• Cooperare – modalitatea prin care un agent, din lipsă de resurse, cere ajutorul altor agenți
pentru realizarea scopului propus;
• Coordonare – abilitatea unui agent de a gestiona activitatea sa în concordanță cu buna
activitate a celorlalți, eliminând astfel conflictul de interese ale acestora;
3.2.2 Exemple de arhitecturi multi-agent
O arhitectură de sistem introduce o anumită abordare în ceea ce privește structura unui
agent în sistem, modalitatea prin care acesta ia deciziile și felul în care acesta percepe schimbările
în favoarea/defavoarea realizării scopului propus. În literatura de specialitate au fost introduse
următoarele principii pe care se bazează arhitecturile multi-agent:
• Mecanisme bazate pe interacțiuni directe – abordarea introdusă în (Zambonelli și alții
2004) se rezumă la a cunoaște cateva aspecte privind localizarea în mediu al agenților și
comunicarea de tip broadcast la nivel de sistem a starilor agenților, rezultând astfel o stare
globală ce descrie sistemul față de obiectiv;
• Mecanisme bazate pe întăriri – concept introdus în (Serugendo,2006) prin care introduce
în conceptul de autoacordare al agenților o metodă prin care aceștia au capabilitatea de
a-șî schimba comportamentul în funcție de potențialul acestora de a-și atinge scopul. Se
introduc astfel principiile de acordare prin recompensă și penalizare;
• Mecanisme bazate pe cooperare – abordarea de bază folosită în sistemele specifice inteligenței
artificiale distribuite, în care un agent este observat ca fiind un holon, entitate ce reprezintă
in mod simultan o componentă, dar și un întreg, ce poate fi descompus sau poate fi
combinat cu alte astfel de componente pentru a satisface obiectivul propus;
Arhitecturile implementate folosind aceste principii:
•Agenți deliberativi
Figura 3.2 :Arhitectura de agenți deliberativi. (Ion, Pătrașcu, 2016)
O arhitectură de agenți de tip deliberativă presupune construcția unui agent pe baza unei
seturi de norme, conform (Castelfranchi și alții 1999), ce permite acestuia să cunoască
9
Capitolul 3. Arhitectură sistem multi-agent
normele care sunt existente în mediul din care face parte, să-și încalce buna derulare a
comportamentului său și a adopta un altul dacă acesta nu se aplică normei ”societății”
din care acesta face parte.
Prezentați în (Ion și Patrascu 2016), agenții de tip deliberativi au în componența lor o
normă ce descrie un model al lumii din care fac parte, un modul de decizie și unul de
acționare. Problematica ridicată în vederea implementării acestui tip de arhitectură este
aceea de reuși din perspectiva percepției și reacțiunii să se definească o normă completă a
mediului și o modalitate exactă de acțiune asupra acestuia.
•Arhitectura bazată pe credințe, dorințe și intenții
Figura 3.3 :Arhitectura de agenți Belief-Desires-Intentions.(Ion și Patrascu 2016)
(Haddadi și Sundermeyer 1996) prezintă pe rând cele trei concepte. Credința unui agent
se rezumă la cunoașterea posibilităților în mediului în care se află și combinațiile de com-
portamente ce pot fi prezente în schimbarea acestuia. Dorințele și intențiile sunt stări
viitoare sau tendințe la care un agent vrea să ajungă. Diferența foarte sensibilă dintre ele
este aceea că din perspectiva intențiilor putem măsura un nivel de dedicare asociat unei
activități viitoare, în timp ce din perspectiva dorințelor nu se poate cunoaște cu exactitate
dacă un sistem le poate atinge. Intențiile unui agent sunt stări viitoare ale unui agent ce
pot să restrăngă dimensiunea spațiului de posibilități de reacțiune ale agentului cu privire
la urmărirea unui scop setat ca fiind o dorință de neatins.
De altfel această arhitectură, conform (Ion și Patrascu 2016), este una bazată pe capabili-
tățile entităților umane. La baza acestora se află caracteristica de deliberare, unde nivelul
de decizie poate asocia unei dorințe o anumită intenție.
•Arhitectura de subsumare
Acest concept este printre cel mai reprezentativ al Inteligenței Artificiale Distribuite, având
în componența sa agenți reactivi. A fost introdusă în (Brooks 1991) unde se pune în vedere
două principale caracteristici:
–Sistemul de decizie la nivel de agent este realizat folosind un set de coportamente
cărora li se pot asocia câte o acțiune, alcătuind astfel o hartă de stări-acțiuni folosită
pentru reactivitatea la stimuli din mediu.
10
Capitolul 3. Arhitectură sistem multi-agent
–În multe dintre situații comportamentele unui sistem se pot activa în același timp,
iar din acest punct de vedere Brooks a intervenit cu un mecanism de decizie asupra
acestora. Mecanismul constă în împărțirea într-o „ierarhie subsumară “ ce împarte
astfel comportamentele pe nivele de priorități, cel mai prioritar fiind cel de pe nivelul
de jos, ce reprezintă interacțiunea cu mediul.
Figura 3.4 :Arhitectura de agenți de tip reactivi. (Ion și Patrascu 2016)
•Arhitectura agenților de tip celulă
Conceptul de agent celulă este descris în (Patrascu, Dragoicea și Ion 2014) ca fiind o soluție
de implementare a sistemelor distribuite și se bazează pe modularizarea componentelor
sistemelor. Aceasta permite structurarea sistemului pe nivele de conducere și face legătura
între nivelul de citire și scriere reprezentat de rețeaua de senzori și elemente de execuție
și un nivel de conducere superior, în care se rezolvă problema de interoperabilitate dintre
sisteme.
Figura 3.5 :Arhitectura de agenți de tip celulă. (Patrascu, Dragoicea și Ion 2014)
Întreaga structură referențiată în figura ??explică modul de integrare a agenților sub
arhitectura la nivel de celulă și are în componența sa:
11
Capitolul 3. Arhitectură sistem multi-agent
–Nucleu N – agent ce respectă regulile ahitecturii deliberative, ce ridică astfel problema
sistemului de coexistență la nivel global. Acesta are deci capabilitatea de a negocia
cu celelalte nuclee din sistem ca să-și atingă obiectivele setate la nivel global O;
–Controler C – la nivel decizional, acesta primește datele y, percepute din mediul M, de
la agentul de tip senzor S unde va măsura astfel tendința sistemului față de obiectiv.
Aceste încastrează un set de algoritmi de conducere sau dorințe, în urma cărora va
genera o comandă u ce va fi comunicată mai departe agenților de executie A;
–Element de execuție A – transpune mesajul primit din partea controllerului în mărimi
de execuție m ce vor fi exercitate asupra mediului M;
–Senzor S – acesta are rolul de a percepe schimbările săvârșite asupra mediului și de
a le împacheta sub formă de date notate prin y dce mai apoi sunt comunicate către
controllerul C;
–Mediu M – este platforma din care face parte sistemul distribuit, asupra căreia se
exercită un obiectiv global;
12
4 Implementarea sistemului distribuit de
conducere a traficului
4.1 Platforma multi-agent JADE
JADE (Java Agent Development Environment) este o platformă software ce simplifică
dezvoltarea de aplicații distribuite folosind entități de tip agent. Pentru că este implementat pe
un limbaj de programare de nivel înalt, orientat pe obiecte, JADE rulează pe mașina virtuală
oferită de JAVA, ce permite astfel independență față de sistemul de operare pe care sistemul
distribuit este creat (Grimshaw 2013).
Platforma multi-agent respectă standardele internaționale impuse de FIPA (Fundația pen-
tru Agenți Fizici Inteligenți) în ceea ce privește modalitatea de interacțiune cu ceilalți agenți
din mediu, modalitate de gestiune a existenței acestora, crearea de noi arhitecturi abstracte,
mobilitatea agenților și securitatea informației. (Charlton și alții 2000)
Arhitectura la nivel de componente a platformei este reprezentată în Figura ??și se rezumă
la interacțiunea dintre platforme conținând containere de agenți. Asigurând buna funcținare a
protoculului de comunicație MTP platforma conține o tabelă locală ce conține referințe la agenții
containerului și în cazul în care operațiile nu se adresează niciunuia căutarea se va face intr-o
tabelă globală în care se pun la dispoziție informații despre agenții întregii platforme (locație,
stare). Aceste informații sunt stocate într-o zonă de memorie cache pentru a evita repetarea
procesului de căutare.
Figura 4.1 :Arhitectura platformei JADE. (Bellifemine, Caire și Greenwood 2007)
•platformă – are în componența sa mai multe containere sau host-uri, ce pot fi distribuite
în rețea și, datorită incapsulării, în platformă nu necesită securitatea datelor cu niciun fel
de firewall (Bellifemine, Poggi și Rimassa 1999);
•container – este o aplicație JAVA în care agenții sunt implementați ca fire de execuție,
JADE asigurând o planificare a task-urilor mai eficientă decât cea oferită de limbajul de
programare (Bellifemine, Poggi și Rimassa 1999);
13
Capitolul 4. Implementarea sistemului distribuit de conducere a traficului
•Agent AMS – (Sistem de gestiune al agenților, engl. Agent Management System) – este
unic pentru platforma din care face parte, situat pe un container principal. Acesta este
responsabil în momentul creării de alocarea de identificatoare unice pentru agenți (AID)
și odată cu acesta și asigurarea caracteristicii de inter-operabilitate;
•Agent DF – (Facilitator de directoare, engl. Directory Facilitator) – este un agent central
ce oferă un mecanism similar celui de ”Pagini aurii”, prin care oferă informații despre
serviciile disponibile la nivel de platformă (Nikraz, Caire și Bahri 2006);
•MTP – (Protocol de transfer al mesajelor, engl. Message transport protocol) – asigură
comunicația agenților la nivel de platformă, folosind o coadă de mesaje manipulată de un
asa zis ”curier” (Cortese și alții 2002);
Conform celor menționate în capitolul anterior, printre cele mai esențiale caracteristici ale
entităților de tip agenți este și inter-operabilitatea. Aceasta este asigurată în JADE de comuni-
cația prin mesaje de folosind un standard introdus de FIPA, anume limbajul de comunicare al
agenților ACL (engl. Agent Communication Language) ce transmite informații în mod asincron,
adică atribuind la nivel de implementare a agenților statutul de tip non-blocant comportamen-
telor acestuia.
Standardul FIPA la nivel de securitate a datelor permite transmiterea de obiecte ce pot fi
serializabile, în sensul că sunt criptate cu un algoritm de conversiune a datelor în serii de octeți
oferit de limbajul de programare și transmise în rețea, unde vor fi captate și decriptate de către
utilizatorii receptori.
4.2 Modelarea și simularea mediului
Infrastructura de testare a algoritmilor de conducere este creată folosind uneltele de mo-
delare grafică in format 3D oferite de Google SketchUp. La acest nivel, conform Figura ??, am
prestabilit direcțiile de orientare relative la coordonatele mediului grafic.
Figura 4.2 :Model grafic al infrastructurii de transport.
14
Capitolul 4. Implementarea sistemului distribuit de conducere a traficului
Simularea procesului de trafic, conform modelului descris în ??, este facută folosind un
motor grafic, jMonkey, ce permite descrierea de componente la nivel de limbaj orientat pe
obiecte cu suport în JAVA. Unul din avantajele utilizării acestui mediu de dezvoltare este acela
că putem manipula elementele grafice sa emuleze proprietățile fizice a acelora din realitate pe
care le simulează, de exemplu accelerația gravitațională, proprietăți de coliziune a obiectelor.
Poate cel mai mare dezavantaj impus de acest motor grafic este faptul că operează la nivel
de aplicație pe un singur fir de execuție, limitând astfel posibilitatea de a putea pune în pauză
execuția acestuia. Soluționarea acestuia folosind cronometre de timp, incrementate la fiecare tic
de ceas al procesorului este limitată iar la nivel de limbaj orientat pe obiect deoarece nu permit
permite reprogramarea intervalelor de timp în care să ruleze o anumită metodă. Din cauza
celor menționate, sistemul de conducere pe care l-am implementat este capabil să reacționeze la
schimbări ale stimulilor externi doar după o fază minimă prestabilită.
În interfața grafică cu utilizatorul din (Figura ??) se poate stabili comportamentul global
al sistemului:
•Manual – emulează comportamentul intersecțiilor în regim necontrolat, adică în cadrul
acesteia doar agenții de Acționare sunt inițializați și generează la o fază minimă o altă
stare a semaforului.
•Automat – reprezintă modul controlat al intersecției. Acesta indică agentului global Core
că este necesară inițializarea agenților celulă. Funcționalitatea semafoarelor este astfel
generată reactiv la stimulii din mediu la nivelul agentului Controler.
•Start MAS – comandă ce permite agentului global să reacționeze la modul prin care va
inițializa sistemul distribuit: Manual (agent de Acționare) / Automat (agent celulă).
•Start simulare – are rolul de a porni pentru agentul Mediu timerele la timpi de eșan-
tionare ce indică: decrementarea vehiculelor pe tronson ??și faza minimă a unei stări a
semafoarelor.
•Viteza medie de circulație – reprezintă statistic viteza medie cu care se deplasează auto-
vehiculele pe rețelele de transport.
•Interval semafor – reprezintă faza minimă a stărilor semafoarelor .
•Stări controlere semafor – obiecte ce pot genera perturbații agentului celulă la nivelul
agentului de conducere.
•Modul de acționare al semafoarelor – controlerele pot genera astfel stări de conducere
pentru unul sau două semafoare concomitent. Comanda este setată folosind tastele 1 și 2.
Modelul procesului de trafic referențiat în ecuația ??descrie minimal fluxul de vehicule
ce circulă pe un tronson al intersecției. La nivel de agent controler al intersecției reprezentat
în Figura ??se face decizia de schimbare de fază a semafoarelor în funcție de numărul de
vehicule cumulate pe tronsonul unui semafor, denumit densitate. Aceasta se decrementează în
timp ținând cont de distanța dintre vehicule ∆xnraportată la viteza medie statistică aleasă din
Figura ??. Acest timp poate fi observat ca de fapt timpul de eșantionare al fluxui de trafic pe
un tronson al intersecției și are forma conform celor sus menționate:
teflux=∆xn
Vmstat
15
Capitolul 4. Implementarea sistemului distribuit de conducere a traficului
Figura 4.3 :Interfață grafică a sistemului de conducere.
4.3 Arhitectura mediului de dezvoltare
4.3.1 Arhitectura aplicației
Infrastructura aplicație se bazează pe platforma multi-agent și este implementată respec-
tând normele de autonomie ale unui agent privind credințele raportate la capacitățile acestuia
în limbaj orientat pe agenț (Shoham 1993). Din structura reprezentată în Figura ??se discern
trei tipuri de agenți: un agent global denumit Core, mediul grafic emulat sub formă de agent și
o rețea de agenți de tip celulă.
În urma pornirii platformei JADE și agentului global se urmărește o ierarhie de inițializări
prezentată grafic în Figura ??cu mențiunea că agenții celulă vor fi lansați în execuție doar
după ce utilizatorul stabilește obiectivele folosind interfața grafică din Figura ??. Inițializarea
entităților de tip celulă este una creată ”în cascadă”, în sensul că nivelul de coordonare conținând
agenți Nucleu este pornit de către Core, iar aceștia la rândul lor, având atribuții de master-slave
asupra nivelului de conducere lansează în execuție agenții Controler, Sensor și de Acționare
(Pătrașcu și Drăgoicea 2014).
Pentru simplificarea comunicației inter-agent inițializarea acestora se face în containerul
principal și este comandată de Core agentului AMS.
1
16
Capitolul 4. Implementarea sistemului distribuit de conducere a traficului
Data :
3
5B e h a v i o u r i n i t B e h a v i o u r : // s t a t e i n i t i a l i z e r
Listing 4.1 :Pseudo-cod; Comportament inițial al agentului global.
function Euclid (a; b)Input : Two nonnegative integers aand b
Output: gcd(a; b)
1ifb= 0 then
2return a
3else
4return Euclid (b; amod b)
5end
Figura 4.4 :Inițializarea componentelor modelului de testare. (Pătrașcu și Drăgoicea 2014)
Agentul global Core este o entitate orientată pe interacțiunea cu agenții și utilizatorul, a
cărui comportamente tind să furnizeze servicii favorabile obiectivului stabilit din interacțiunea
cu omul (Maes 1997) , deci respectând caracteristica de sociabilitate și reactivitate în raport cu
orientarea umană descrisă în capitolele anterioare, cu referire la (Wooldridge 2009).
În figura Figura ??agentul de servicii globale Core oferă următoarele servicii:
•S1 – afișarea pe consola de evenimente a aplicației interacțiunea utilizatorului cu motorul
grafic, acțiunile de ințializare ale nucleului agentului celulă și informații privind simularea
și stările fazelor semafoarelor;
•S2 – percepția interacțiunii omului cu motorul de simulare. Interfața grafică, refențiată în
Figura ??oferă opțiuni ce pot crea un obiectiv global (ex: setarea fazelor semafoarelor,
setarea vitezei medii de transport a autovehiculelor pe tronsoane, setarea unei referințe
globale, ce permite la nivel de agent controler să facă decizia de schimbare a modului de
conducere a intersecției) dar și simula comportamentul în regim de defect al unei intersecții;
17
Capitolul 4. Implementarea sistemului distribuit de conducere a traficului
•S3 – la nivel cu agenții celulă, agentul global Core furnizează informații privind referința
globală, dar și rețeaua de intersecții a modelului hărții de testare;
•S4 – la nivelul interacțiunii cu mediul reprezentat de motorul grafic, inițializarea acestuia
implică transmiterea informațiilor către agentul global privind amplasarea intersecțiilor pe
modelul hărții;
Figura 4.5 :Structura aplicației
4.3.2 Implementarea sistemului de conducere
Sistemul de conducere este realizat pe două nivele, conform ierarhiei agenților celulă din
(Pătrașcu și Drăgoicea 2014): nivelul de negociere și coordonare al nucleelor și cel inferior de
conducere al intersecțiilor.
Nivelul de coordonare al nucleelor poate este capabil să ia decizii de rezolvare a situațiilor
de blocaj al celulei, respectând fenomenul de ”cost de blocaj” (engl. sunk cost) (Cossentino și alții
2012) prin care acesta negociază cu celelalte nuclee căruia sa-i atribuie sarcinile unui controler
defect. Introducerea acestei perturbații se face utilizând interfața cu utilizatorul. Prioritățile
se vor lua în calcul în funcție de vecinătatea unui agent celulă în mediu, cunoscută la nivelul
agentului global.
Nivelul de conducere al intersecțiilor referențiat în Figura ??descrie metoda de interac-
țiune a componentelor celulei cu mediul.
Percepția este legătura dintre Mediu și agentul Senzor, creată la nivel general, în sensul că
Senzorul este un agent central ce colectează parametri procurați de agenții de câmp. Modelul
ales în vederea reducerii densității pe tronsoanele intersecțiilor impune doar folosirea de senzori
ce pot aprecia numărul de vehicule, însă diversitatea parametrilor poate fi extinsă (ex. măsurarea
noxelor).
18
Capitolul 4. Implementarea sistemului distribuit de conducere a traficului
Informarea reprezintă decizia agentului Senzor, în urma colectării parametrilor din câmp,
de a crea un pachet de date serializabil și de a-l trimite agentului Controler responsabil.
Comanda este decizia pe care agentul Controler o are față de datele primite și urmări-
rea obiectivului general. Aceasta este transmisă agentului de acționare la nivel de limbaj de
programare printr-un obiect codificat.
Acțiunea este rezultatul discernământului făcut de agentul de Acționare din obiectul de-
codificat și este trimis agenților de câmp emulați la nivelul motorului grafic.
Figura 4.6 :Modelul de conducere al unei entități de agent celulă.
19
Anexe
20
A Fișiere sursă
21
Bibliografie
Bando, Masako și alții. Dynamical model of traffic congestion and numerical simulation .
Physical review E, vol. 51(2), pag. 1035.
Bellifemine, Fabio, Poggi, Agostino și Rimassa, Giovanni. JADE–A FIP A-compliant agent
framework . Proceedings of PAAM, vol. 99 (97-108). London, pag. 33.
Bellifemine, Fabio Luigi, Caire, Giovanni și Greenwood, Dominic. Developing multi-agent
systems with JADE . Vol. 7. John Wiley & Sons.
Brooks, Rodney A. Intel ligence without representation . Artificial intelligence, vol. 47(1-3),
pags. 139–159.
Castelfranchi, Cristiano și alții. Deliberative normative agents: Principles and architec-
ture. International Workshop on Agent Theories, Architectures, and Languages, Springer,
pags. 364–378.
Charlton, Patricia și alții. Evaluating the FIP A standards and their role in achieving
cooperation in multi-agent systems . System Sciences, 2000. Proceedings of the 33rd Annual
Hawaii International Conference on, IEEE, 10–pp.
Cortese, Elisabetta și alții. Scalability and performance of jade message transport system .
AAMAS workshop on agentcities, Bologna, vol. 16, pag. 28.
Cossentino, Massimo și alții. Multi-Agent Systems: 9th European W orkshop, EUMAS 2011,
Maastricht, The Netherlands, November 14-15, 2011. Revised Selected Papers . Vol. 7541.
Springer.
De Oliveira, Denise și Bazzan, Ana LC. T raffic lights control with adaptive group formation
based on swarm intel ligence . International Workshop on Ant Colony Optimization and Swarm
Intelligence, Springer, pags. 520–521.
Dimitrakopoulos, George și Demestichas, Panagiotis. Intel ligent transportation systems .
IEEE Vehicular Technology Magazine, vol. 5(1), pags. 77–84.
Fiosina, Jelena și Fiosins, Maksims. Resampling based model ling of individual routing pre-
ferences in a distributed traffic network . Int. J. Artif. Intell, vol. 12(1), pags. 79–103.
Gordon, E Moore. Cramming more components onto integrated circuits . Proceedings of
the IEEE, vol. 86, pag. 1.
Grimshaw, David. JADE Administration T utorial . URL http://jade. tilab. com/doc/tuto-
rials/JADEAdmin/index. html,
Haddadi, Afsaneh și Sundermeyer, Kurt. Belief-desire-intention agent architectures . Foun-
dations of distributed artificial intelligence, pags. 169–185.
Ion, Andreea și Patrascu, Monica. Agent Based Model ling of Smart Structures: The Chal-
lenges of . Modeling and Simulation Techniques in Structural Engineering, pag. 38.
22
Bibliografie
Jennings, Sycara. W ooldridge. A Roadmap of Agent Research and Development (Autono-
mous Agents and Multi-Agent Systems) .
Maes, Pattie. Software agents tutorial . CHI97,
Nikraz, Magid, Caire, Giovanni și Bahri, Parisa A. A methodology for the development of
multi-agent systems using the JADE platform . International Journal of Computer Systems
Science & Engineering, vol. 21(2), pags. 99–116.
Pătrașcu, Monica și Drăgoicea, Monica. Integrating agents and services for control and
monitoring: managing emergencies in smart buildings . Service Orientation in Holonic and
Multi-Agent Manufacturing and Robotics, Springer, pags. 209–224.
Patrascu, Monica, Dragoicea, Monica și Ion, Andreea. Emergent intel ligence in agents:
A scalable architecture for smart cities . System Theory, Control and Computing (ICSTCC),
2014 18th International Conference, IEEE, pags. 181–186.
Pătrașcu, Monica. Automatizarea Proceselor Complexe . Note de curs, pags. 4–18.
Semarak, Jalan. Intel ligent traffic lights control by fuzzy logic . Malaysian Journal of Com-
puter Science, vol. 9(2), pags. 29–35.
Serugendo, G Di M, Irit, M-PG și Karageorgos, Anthony. Self-organisation and emergence
in MAS: An overview . Informatica, vol. 30(1).
Shoham, Yoav. Agent-oriented programming . Artificial intelligence, vol. 60(1), pags. 51–92.
Tanenbaum, Andrew S și Van Steen, Maarten. Distributed systems: principles and para-
digms . Prentice-Hall.
Urbanik, Tom și alții. Signal Timing Manual . National Cooperative Research Program,
pags. 03–103.
Wagner, Gunter P și Altenberg, Lee. Perspective: complex adaptations and the evolution
of evolvability . Evolution, pags. 967–976.
WEILAND, RICHARD J și PURSER, LARA BAUGHMAN. Intel ligent T ransportation
Systems .
Weiss, Gerhard. Multiagent systems: a modern approach to distributed artificial intel li-
gence. MIT press.
Wooldridge, Michael. An introduction to multiagent systems .
Wooldridge, Michael și Jennings, Nicholas R. Agent theories, architectures, and languages:
a survey . International Workshop on Agent Theories, Architectures, and Languages, Springer,
pags. 1–39.
– . Intel ligent agents: Theory and practice . The knowledge engineering review, vol. 10(02),
pags. 115–152.
Yousef, Khalil M, Al-Karaki, Mamal N și Shatnawi, Ali M. Intel ligent traffic light flow
control system using wireless sensors networks. J. Inf. Sci. Eng. vol. 26(3), pags. 753–768.
Yukalov, Vyacheslav I și Sornette, Didier. Self-organization in complex systems as decision
making . Advances in Complex Systems, vol. 17(03n04), pag. 1450016.
23
Bibliografie
Zambonelli, Franco și alții. Spray computers: frontiers of self-organization . Autonomic
Computing, 2004. Proceedings. International Conference on, IEEE, pags. 268–269.
24
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Sistem distribuit de conducere a traficuluiutilizând sisteme multi-agent Absolvent Milea Costel-Cătălin Coordonator Prof. dr. ing. Monica Pătrașcu… [632092] (ID: 632092)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
