Documente Academic
Documente Profesional
Documente Cultură
LUCRARE DE LICEN
Absolvent
George-Alexandru Serea
Coordonator
S.l. dr. ing. Monica Ptracu
Bucureti 2013
Cuprins
1. Introducere ........................................................................................................................... 1
2. Ageni inteligeni i Sisteme Multi-Agent (MAS) ........................................................... 2
2.1. Ageni inteligeni .......................................................................................................... 2
2.1.1 Ageni care se bazeaz pe reflexe simple ............................................................. 2
2.1.2 Ageni care pstreaz o imagine a lumii .............................................................. 3
2.1.3 Ageni care se bazeaz pe un scop ........................................................................ 3
2.1.4. Ageni care se bazeaz pe utilitate ....................................................................... 3
2.1.5. Proprietile agenilor inteligeni ......................................................................... 4
2.2. Sisteme Multi-Agent (MAS) ........................................................................................ 4
2.2.1. Clasificarea Sistemelor Multi-Agent (MAS) ....................................................... 4
2.2.1.1. Clasificarea pe clase ........................................................................................ 6
2.2.1.2. Clasificarea bazat pe Inferen .................................................................... 7
2.2.1.3. Clasificarea bazat pe Percepie ................................................................... 7
2.3. Exemple de utilizare a Sistemelor Multi-Agent ....................................................... 8
3. Sisteme Multi-Agent utilizate n managementul situaiilor de urgen ...................... 9
3.1. Prezentarea arhitecturii CityScape ............................................................................. 9
3.1.1. inSCAPE .................................................................................................................. 9
3.1.2. eSCAPE .................................................................................................................. 10
3.2. Formularea problemei ................................................................................................ 11
3.2.1. esutul Protocoale sisteme critice .................................................................. 11
3.2.2. esutul Avertizri i controlul panicii .......................................................... 11
3.3. Soluia propus ........................................................................................................... 12
4. Studiu de caz ...................................................................................................................... 14
4.1. Descrierea aplicaiei .................................................................................................... 14
4.2. Prezentarea Toolkit-ului Custom City Builder...................................................... 15
4.2.1. Generarea unui cartier de cldiri i pavarea drumurilor aferente ................ 17
4.2.2. Adugarea identificatorului unic pentru fiecare cldire n parte ................. 18
4.2.3. Setarea perimetrului restricionat n jurul unei cldiri ................................... 19
4.2.4. Marcarea poziiei viitoare a unui agent i testarea in-cone ............................. 20
4.2.5. Modelarea deplasrii i a redresrii unui agent mobil ................................... 22
4.2.6. Adugarea de ageni ntr-un model cu restricie pe populaie ..................... 24
4.3. Modelul lumii .............................................................................................................. 26
4.3.1. Sistemele critice .................................................................................................... 26
4.3.1.1. Aeroportul ..................................................................................................... 26
4.3.1.2. Gara din afara oraului ................................................................................ 27
4.3.1.3. Gara din ora ................................................................................................. 27
1. Introducere
altele sunt mai lungi i duc la ntrzieri. n astfel de cazuri este indicat ca agentul s
poat face distincia ntre dou decizii corecte i s o poat alege pe cea mai
favorabil. Pentru adugarea acestei puteri de decizie, agenilor inteligeni li se
atribuie mijloace prin care msoar utilitatea aciunilor lor i, astfel, determin cele
mai bune rspunsuri i aciuni. Practic, utilitatea atribuie fiecrei aciuni posibile un
numr real, direct proporional cu beneficiile aduse. Utilitatea ajut n cazuri n care
scopurile nu pot distinge ntre dou soluii i creeaz un echilibru ntre ele, de
exemplu alegerea vitezei optime n asa fel nct sigurana s nu fie riscat. De
asemenea, un agent bazat pe scopuri nu poate face distincia ntre dou scopuri, unul
mai uor realizabil dect cellalt, pe cnd utilitatea poate msura eventuala realizare
a scopului i ajut agentul n luarea deciziei corecte (Russell & Norvig, 2010).
De menionat este faptul c toate sistemele existente n natur sunt sisteme multiagent de tip 1 (Fulbright & Stephens, 1994).
Folosind operaia de cuplare, putem realiza
o clasificare pertinent a sistemelor multi-agent
mprind i mulimile individuale, evidenind
astfel opt tipuri distincte de sisteme prezentate n
Figura 2.2.
Aadar, indentificm urmtoarele tipuri de
Sisteme Multi-Agent:
cu ageni autonomi ( tip 1 )
cu ageni cuplai perceptual ( tip 2 )
cu ageni cu inferen cuplat ( tip 3 )
cu ageni cognitiv-distribuii ( tip 4 )
cu ageni cognitiv-cuplai ( tip 5 )
cu ageni cu inferena distribuita ( tip 6 )
cu ageni cu percepia distribuit ( tip 7 )
cu un singur agent ( tip 8 )
Clasificarea rezultat permite gruparea
tipurilor rezultate n clase distincte de sisteme
multi-agent, fiecare clas evideniind metodologia
principal dup care se face separarea sistemelor.
5
CitySCAPE funcioneaz asemenea unui organism viu, unde peste un suport de tip
schelet (inSCAPE) se plaseaz organele (eSCAPE) i sisteme nervoase (reele de
comunicaie).
(Ptracu & Drgoicea, 2013)
3.1.1. inSCAPE
Responsabil pentru integrarea i interconectarea dispozitivelor i a serviciilor,
inSCAPE asigur integritatea structural a arhitecturii realiznd interconectarea pe
vertical ntre subsisteme (Figura 3.2 stnga), i, totodata, integrarea pe orizontal
(Figura 3.2 dreapta).
9
3.1.2. eSCAPE
eSCAPE este format din multiple celule i esuturi, mpreun cu relaile dintre
acestea. Este constituit din patru tipuri de esuturi, fiecare responsabil de o singur
funcie a sistemului de siguran (Figura 3.3):
protocoale ale sistemelor critice
intervenia echipajelor de urgen
avertizri i controlul panicii
controlul traficului
Fiecare celul < . > = {Dc, DP, DA, Ucomm} este format dintr-o mulime de
dispozitive de control (Dc), dispozitive de percepie (DP), dispozitive de acionare
(DA) i o unitate de comunicaie (Ucomm). Aceste celule vor fi implementate prin
intermediul Sistemelor Multi-Agent formnd un mediu activ de simulare i testare.
Mai multe n celule de acelai tip pot forma un esut << . >> = { < . >i | i=1,n} (Ptracu
& Drgoicea, 2013).
10
11
12
4. Studiu de caz
15
Figur 4.2. Generarea unui cartier cu numr maxim de cldiri de dimensiune minim
17
18
19
Figur 4.6. Testarea instruciunii in-cone prin intermediul modelului realizat n toolkit
20
Figur 4.7. Afiarea poziiei rezultate n urma realizrii virajului la stnga pentru un agent orientat spre EST
21
Figur 4.8. Interfaa aplicaiei de test pentru redresarea direciei de deplasare a unui agent mobil
22
23
Se poate observa cum fiecare poziie din insul poate fi ocupat de un singur
agent, iar dispunerea acestora este n mod aleatoriu. De asemenea, orientarea
agenilor rmne la valoarea aleatorie stabilit n momentul adugrii. De fapt, dup
ce un agent este creat, acesta este mutat pe un patch de tip pmnt care nu conine
nici un agent. Pentru aceast funcionalitate se folosesc procedurile count, move-to i
turtles-on mpreun cu filtrarea agenilor prin operatorul with (Wilensky, 1999).
24
25
Fiecare sistem critic este format dintr-un set de ageni de tip patch care au
acelai tip i acelai identificator n aa fel nct s lucreze ca un tot unitar. Aceste
sisteme sunt salvate n lista cladiri-monitorizate. De asemenea, orice sistem critic este
prevzut cu o mulime de senzori ce verific diverse evenimente sau stri ce pot
caracteriza sistemul. n cadrul esutului Protocoale sisteme critice realizat, senzorii
reprezint elemente ale mulimii DP. Mecanismul de inferen folosit n procedura
actualizeaza-monitorizarea verific senzorii fiecrui element din lista sistemelor critice
i pe baza acestor verificri decide dac se trece n starea de funcionare sau
nefuncionare i dac se activeaz alarma. Acesta reprezint componentele mulimii
DC din cadrul celulelor <PUC> implementate. Mecanismul este responsabil i pentru
actualizarea elementelor de afiare ce prezint starea curent a acestor sisteme.
Mulimea DA este constituit din elementele de afiare i metodele prin care deciziile
inferenei sunt reflectate n modelul lumii.
4.3.1.1. Aeroportul
Aeroportul (Figura 4.12) este primul sistem critic
adugat att n lista cldirilor afiate, ct i n lista
cldirilor, avnd identificatorul unic 0 i tipul setat
aeroport. Situat n partea stng-sus a modelului
lumii, acesta este conine un grup de patch-uri care
formeaz pista de aterizare pentru avioane i un grup
care realizeaz iluminarea pistei. De asemenea, conine
Figur 4.12. Aeroportul
26
4.3.1.4. Spitalul
Spitalul nu ocup o poziie standard n cadrul modelului
lumii. La fiecare executare a procedurii setup, o cldire mare
este aleas n mod aleatoriu i devine spital, motiv pentru care
identificatorul unic este variabil, iar tipul este spital. Pentru a
putea fi identificat uor, spitalul este redesenat ca o cruce roie
peste un fundal galben, dup cum arat Figura 4.16.
4.3.1.6. Hidrocentrala
Hidrocentrala ocup ultima poziie
din liste, fiind ultima cldire sau structur
adugat
modelului
lumii,
avnd
identificatorul unic de valoare maxim i
tipul setat hidrocentrala. n componena
ei intr i barajul, care este o structur
distinct, ns nemodelat ca fiind un
sistem critic, iar legtura cu restul
modelului lumii se face prin intermediul
unui drum adiacent. Pentru asigurarea
unui efect aspect schematic realist s-au
Figur 4.18. Hidrocentrala i barajul
modelat dou lacuri, unul de acumulare i
unul de vrsare, conectate prin intermediul unui ru ce trece prin hidrocentral. De
fapt, hidrocentrala este format din dou zone distincte, de-o parte i de alta a rului,
ce au acelai tip i identificator unic. Structura hidrocentralei este vizibil n Figura
4.18.
28
Culoarea unui senzor este aleas n funcie de culoarea patch-ului pe care este
amplasat, n aa fel nct acesta s poat fi observat uor n momentul n care este
setat ca fiind vizibil.
4.3.2.2. Agenii inclui n mulimea DA
Mulimea DA opereaz n mod direct cu
agenii de tip element de afiare, modificndu-le
culoarea n funcie de datele furnizate de ctre
mulimea Dp. Fiecare sistem critic are asociat o
mulime de elemente de afiare prin care animeaz
efectele deciziilor luate de ctre mecanismul de
inferen. n Figura 4.21 se arat cum interfaa
arat utilizatorului c sistemul critic Aeroport nu
mai este funcional datorit detectrii unui
cutremur ce depeste magnitudinea prag. De
asemenea, se remarc faptul c alarma nu a fost
declanat deoarece acest eveniment nu
presupune intervenia forelor speciale, spre
deosebire de un incendiu sau o ameninare
terorist.
30
31
32
4.3.3.1. Pietonii
Pietonii au un comportament limitat, modelul
neavnd treceri de pietoni sau semafoare. n
consecin, pietoni se deplaseaz pe trotuarele din
jurul cldirilor, schimbnd n mod aleatoriu direcia
n momentul n care urmeaz s ias de pe trotuar.
Numrul de pietoni din jurul fiecrei cldiri este
alocat aleatori, bazndu-se pe selecia patch-urilor
libere de tip trotuar. Un exemplu de dispunere a
pietonilor pe trotuarul din jurul unei cldiri este
prezentat n Figura 4.23.
Figur 4.25. Trenurile care circul pe ruta Aeroport-Gar periferie, aflate n micare
Interfaa grafic este mprit n cinci zone distincte dup cum urmeaz:
zona pentru setarea lumii (galben), prin care putem alege numrul de ageni
inteligeni i tipul acestora. De asemenea, de aici putem arta sau ascunde
senzorii specifici fiecrui sistem critic. Tot aici se regsesc butoanele pentru
rularea simulrii (butonul go), dar i pentru micorarea numrului de cadre pe
secund (butonul slow).
zona de gestionare a evenimentelor (portocaliu) care ne permite simularea
unui cutremur de magnitudine selectat din elementul de tip slider, precum i
adugarea de evenimente sub forma de incendii, ameninri, pan de curent
sau jafuri n mod izolat pentru fiecare sistem critic n parte. n plus, zona
permite setarea perimetrului de siguran att pentru un spaiu restrns
(cldire), ct i pentru ntreg oraul sau chiar pentru toate structurile din
model, dar i anularea tuturor evenimentelor
zona modelului lumii (rou) n care agenii inteligeni reacioneaz la
evenimentele adugate
zona cu elemente statistice (albastru) precum graficele care urmresc
autovehiculele, ct i numrul agenilor inteligeni de tip rutier prezeni n
ora, dar i timpul efectiv de execuie al modelului
zona de monitorizare (roz) n care regsim agenii de tip elemente de afiare
responsabili pentru reflectarea strilor actuale ale tuturor sistemelor critice din
modelul lumii, fiecare putnd avea evenimente distincte de urmrit.
35
36
Se constat:
scoaterea spitalului din starea de funcionare, cauza fiind vizibil datorit
elementelor de afiare; senzorii au detectat un incendiu
activarea alarmei i, implicit, restictionarea primetrului din jurul spitalului n
scopul de a facilita eventualele echipaje de intervenie chemate de esutul
Intervenie echipaje de urgen
pietonii din jurul spitalului au fost nlocuii de echipaje de intervenie pentru a
simboliza necesitatea i prezena acestora
autovehiculele nu intr n perimetrul restricionat din jurul spitalului
trenurile, avioanele i restul agenilor inteligeni ce nu interacioneaz cu zona
spitalului nu sunt afectai de acest eveniment deoarece el este de tip local
37
38
Figur 4.31. Ilustrarea 3D a efectelor ameninrii grii din interiorul oraului cu bomb
39
40
Figur 4.32. Ilustrarea evacurii i punerii oraului n carantin, evidenind totodat formarea
de cozi de autovehicule ce vor s ias din ora
Figur 4.33. Strile evideniate de ctre elementele de afiare n urma evacurii oraului
41
5. Concluzii
42
Anexe
Procedurile setup i go
to setup
clear-all
; global variables setup:
set butoane []
set cladiri-monitorizate []
set senzori-monitorizare []
set-default-shape senzori "senzor"
set-default-shape copaci "tree"
set elemente-afisare []
set cladiri []
setup-globals
; environmental setup:
setup-harta
; interface setup:
setup-interfata
; agents setup:
setup-agenti
reset-timer
reset-ticks
end
to go
; agent motion:
orienteaza-agenti
misca-agenti
tick
end
43
user-message (word "Imi pare rau, dar cladirea selectata nu are senzor
pentru " eveniment-propus ".\n\nVa rog selectati alta cladire sau alt
eveniment." )
]
[
ask senzor-exista [
set intensitate prag
]
actualizeaza-monitorizarea
]
end
44
[
hide-turtle
if ( color = pink )
[
die
]
]
[
show-turtle
]
]
end
to misca-tren [ tren-x ]
ask one-of tren-x with [ locomotiva = true ]
[
ifelse ( ( all? ( tren-x with [ locomotiva = true ] ) [ [tip] of patchahead ( viteza * size ) = "sina" ] ) )
[
if ( timer-running > ( timp-ajuns-gara + timp-stationare ) )
[
ask tren-x [ forward viteza ]
]
]
[
ask tren-x
[
set timp-ajuns-gara timer-running
set viteza ( - viteza )
]
]
]
end
45
46
47
48
49
Bibliografie
50