Sunteți pe pagina 1din 15

Arhitecturi de ageni

inteligeni
Coordonator tiinific :
Asist. Dr. Gheorghe Silaghi
Absolvent :
Aionese Cristian
2007

Inteligena artificial
Inteligena artifcial (IA) se ocup cu realizarea de sisteme care pot s gndeasc, s
acioneze ca fiina uman sau care pot s gndeasc i s acioneze raional.
Gruparea sistemelor care fac obiectul inteligenei artificiale
la fel ca omul

raional

a gndi

Sisteme care gndesc la fel ca oamenii

Sisteme care pot s gndeasc raional

a aciona

Sisteme care acioneaz ca oamenii

Sisteme care acioneaz raional

Cele dou direcii (cea referitoare la procesele cognitive gndire i raionament i cea
referitoare la comportament) genereaz dou ntrebri de baz. n realizarea sistemului de IA ne
intereseaz gndirea sau comportamentul? Vrem ca sistemul s modeleze activitatea uman sau si creeze propriul mod de aciune conform unui standard ideal? n orice caz , ipoteza de baz este
c inteligena se refer la aciuni raionale. n cazul ideal, un sistem (agent) inteligent va alege cea
mai bun aciune posibil ntr-o anumit soluie.
Toate problemele inteligenei artificiale pot fi reunite sub conceptul de agent inteligent.

Inteligena artificial se ocup cu descrierea i construirea agenilor care


primesc percepii de la mediul nconjurtor i execut aciuni.

Ageni inteligeni
Definiia cea mai adecvat pentru agenii inteligeni aparine lui Wooldridge i Jennings. Ei
consider c un agent inteligent este un sistem hardware sau (mai ales) software, care se bucur de
urmtoarele proprieti :
autonomie (engl. autonomy): agentul opereaz ca un proces de sine stttor, fr intervenie
uman direct, i deine controlul asupra aciunilor i strii sale interne;
reactivitate (engl. reactivity): agentul i percepe mediul (care poate fi de exemplu lumea fizic, un
utilizator prin intermediul unei interfee grafice, o colecie de ali ageni, Internet-ul, etc.) i rspunde
prompt schimbrilor petrecute n mediul respectiv;
proactivitate (engl. pro-activeness): agentul nu numai c reacioneaz la schimbrile mediului su
de execuie, ci este capabil s manifeste un comportament orientat spre scop, prin preluarea iniiativei;
aptitudini sociale (engl. social ability): agentul poate interaciona cu ali ageni (sau cu oamenii)
printr-un anumit limbaj de comunicare.
Cercettorii mai sus menionai apreciaz inteligena drept capacitatea de aciune autonom
flexibil, unde flexibilitatea presupune reactivitate, proactivitate i aptitudini sociale.
Caracteristicile agenilor inteligeni se pot mpri n caracteristici interne (autonomia,
reactivitatea, proactivitatea, mobilitatea) i caracteristici externe (comunicarea, cooperarea). n
ipoteza n care un agent inteligent este capabil s nvee, s raioneze i s planifice aciuni, el devine
un agent cognitiv.
Agent = arhitectur agent + program agent
n general arhitectura agent (aa numitul comportament al agentului) face percepiile
accesibile programului agent (aa numita parte intern a agentului), ruleaz programul agent i
acioneaz efectorii pe baza alegerilor de aciune efectuate de program.

Sisteme multi-agent
Gerhard Wei apreciaz c inteligena este profund i inevitabil legat de
interaciune. Ideea se bazeaz pe o teorie socio-biologic, n care se presupune c inteligena a
aprut datorit nevoii de dezvoltare a interaciunilor sociale. n consecin, sistemele multiagent ar
deine n mod implicit potenialul unui comportament inteligent, pe baza interaciunilor dintre
componente.
Capacitile de comunicare ale unui agent duc la conceptul de sistem multiagent. Aadar,
un sistem multiagent este o reea distribuit de ageni software, care lucreaz mpreun pentru a
rezolva anumite probleme care sunt peste capacitile individiuale ale fiecrui agent n parte. Se
poate spune c un sistem multiagent este o colecie de habitate unde agenii sunt rulai. ntr-un
sistem multiagent, se consider de obicei c fiecare agent are informaii incomplete despre problem
i mediu. Orice agent considerat individual are o capacitate limitat de calcul, n general insuficient
pentru a rezolva singur problema.
Sisteme cu un singur agent vs. Sisteme multiagent
Sistemele centralizate pe un singur agent (eng. single-agent) au un singur agent care ia
toate deciziile, n timp ce restul agenilor se comport ca i clieni. Cu toate c, aparent, sistemele
bazate pe un agent central ar trebui s fie mai simple dect sistemele multiagent, n cazul anumitor
sarcini complexe, se ntmpl chiar invers. Explicatia rezid n ideea conform creia controlul
sistemului fiind distribuit ntre mai muli ageni, fiecare agent poate fi construit mai simplu.

Sisteme cu un singur agent


n general, agentul dintr-un sistem de tip centralizat single-agent se modeleaz pe el i
mediul nconjurtor. Bineneles, agentul face parte din mediu, dar putem considera c un agent are
anumite componente care nu fac parte din mediu. Agentul este o entitate independent, cu propriile
lui eluri, aciuni i cunotine. ntr-un sistem de tip single-agent, nici o alt entitate de acest gen nu
va fi recunoscut de ctre agent. Prin urmare, chiar dac exist ali ageni n mediul respectiv, ei vor
fi considerai ca fcnd parte din mediul nconjurtor.

Figura 1 : Un framework general pentru sistemele cu un singur agent

Sisteme multi-agent
Sistemele multi-agent reale difer fa de sistemele centralizate pe un singur agent, n
primul rnd prin faptul c agenii existeni ntr-un sistem multi-agent i modeleaz elurile i
comportamentul n funcie de ceilali ageni din sistem. Cu toate c aceast interaciune ar putea fi
privit ca un stimul din partea mediului nconjurtor, interaciunea (comunicarea) ntre ageni este
vzut ca fiind separat de mediu.
Din punct de vedere al agentului individual, sistemele multi-agent difer fa de sistemele
centralizate datorit faptului c dinamica sistemului poate fi determinat de ali ageni din sistem. Pe
lng incertitudinea care este prezent n mediu, i ceilali ageni pot afecta mediul n moduri
imprevizibile. De aceea, toate sistemele multi-agent pot fi privite ca avnd un comportament
dinamic.
ntr-un sistem multi-agent, pot exista ageni care au capacitatea de a comunica cu ali
ageni, respectiv ageni care nu pot comunica direct.

Figura 2 : Un scenariu general multi-agent complet

Domeniul prad-prdtor (Urmririi)


Acest domeniu a fost introdus de M. Benda. n decursul anilor, cercettorii au studiat
diferite variaii ale formulei originale.
Domeniul urmririi este studiat de obicei cu patru prdtori i o prad. Domeniul poate
varia utiliznd alte numere. Scopul prdtorilor este de a captura prada sau de a o ncercui astfel nct
s nu se poat mica pe o poziie neocupat. O poziie de capturare este prezentat n Figura 3. Dac
spaiul n care are loc urmrirea are 4 muchii, mai puin de 4 prdtori pot captura prada prinznd-o
ntr-un col sau n apropierea unei muchii. Un alt criteriu posibil de a captura prada este atunci cnd
prdtorul ocup poziia pe care se afl i prada.
Aa cum este prezentat n Figura 3, prdtorul i prada se mic n interiorul unui spaiu
format din mai multe ptrate. Deplasarea se face numai spre o poziie adiacent, n orice direcie. Un
alt parametru care este specificat este dac deplasarea are loc simultan sau n ture, ct de mult spaiu
pot vedea prdtorii i dac acetia pot comunica.
Captur

Figura 3 : O instaniere particular a domeniului urmririi

Rezolvarea problemei urmririi folosind MAS

Pentru rezolvarea problemei am folosit un sistem multiagent cu ageni perfect raionali.


Un agent raional ntruchipeaz un agent care alege ntotdeauna aciunea corect, mai
exact acea aciune care i va aduce cea mai mare satisfacie.
Agentul raional ideal este reprezentat de acel agent care acioneaz n sensul maximizrii
performanelor sale, pe baza informaiilor care le are despre mediu (furnizate de secvena
perceptual) i pe baza cunoaterii proprii pe care o are ncorporat n structura sa intern.
Implementarea se bazeaz pe descrierea jocului i a definiiilor unitilor de msurare a
performanei care sunt descrise n [Stephens and Merx, 1990].
Pornim de la o gril dreptunghiular de 3030 care conine o singur prad n mijloc
(Figura 3). Aceast prad alege la ntamplare ntre posibilele sale aciuni: s rmn unde este, ori s
se mite n una dintre cele patru direcii (sau mai puine, dac unele direcii sunt blocate). Micrile
diagonale nu sunt premise. Prdtorii sunt amplasai n diferite poziii aleatoare. La fiecare pas, prada
se mut prima. Apoi se mut prdtorii. Ei se mut unul dup altul pentru a evita coliziunea.
Rezultatele posibile pot fi capturarea, impasul (patul) i fuga/evadarea. Capturarea apare
cnd cele patru poziii din jurul przii (stnga, dreapta , sus i jos) sunt ocupate (Figura 4). Dac
prada ncearc s se mute dincolo de margine/grani, se consider evadare numai dac doi prdtori
ocup dou dintre aceste patru poziii (Figura 4), n restul cazurilor se socotete a fi impas(pat) aa
cum se poate observa i n Figura 4.

Figura 4 : Rezultatele posibile a unei simulri

n ceea ce privete msurtorile performanei, Stephens i Merx folosesc trei astfel de


msuratori: Raportul Captur, Raportul Succes, Eficiena Succesului. Stephens i Merx i bazeaz
strategiile pe poziiile de capturare. Poziiile de capturare sunt cele patru poziii care nconjoar
prada. Ei examineaz trei strategii. Cea cu cea mai slab comunicare este controlul local, unde un
agent anun ceilali ageni cnd el ocup o poziie de capturare. A doua strategie o reprezint
controlul distribuit. Aici, inteniile (o poziie de captur pe care un agent vrea s o ocupe) sunt
transmise naintea ciclului de mutare. n final, cu controlul central, un agent comand ceilali
ageni. Dintre cele trei strategii amintite am optat n implementarea mea pentru cea a controlului
local.
n lipsa unui mecanism adecvat care s ghideze interaciunile, rezultatul categoric al
adunrii mai multor ageni ntr-un sistem multiagent constituie un haos. Datorit restriciei impuse
de cele cteva astfel de mecanisme existente cum c pot fi utilizai doar agenii care au fost special
concepui pentru aplicaia pe care ei o rezolv, a fost definit un mecanism de coordonare pentru
sistemele multi-agent care permite agenilor dintr-un domeniu independent s acioneze cu folos
ntr-un mediu necunoscut. Pentru a nva cum s fac acest lucru, li se furnizeaz semnale de
evaluare ale coordonrii, semnale pe care ali ageni dintr-un domeniu specific le trimit.
n acest sens am creat un framework a carui idee principal este aceea c un agent care
cunoate comportamentul vizat ntr-un anumit domeniu va direciona ali ageni, ageni dintr-un
domeniu independent cu ajutorul semnalelor care reflect evaluarea (exprimarea n cifre)
coordonrii ntre propriile aciuni i aciunile lor. Mecanismele de coordonare sunt necesare pentru
a permite crearea sistemelor deschise multi-agent.
Scopul realizrii unui astfel de framework a fost acela de a testa posibilitatea de
realizare a ghidrii unui agent cu semnale de evaluare a coordonrii i, mai mult, de a acumula
experien n ceea ce privete instanierea structurii ntr-un domeniu de prob, problema urmririi.

Design-ul orientat obiect al framework-ului este ilustrat n Figura 5 i const n 5 clase


centrale. Un sistem multiagent care acioneaz n acord cu framework-ul semnalului de coordonare
este o instaniere a unei subclase a clasei Mediu. Poate conine ageni care au toi propriul obiect de
Interaciune. Obiectul de Interaciune reprezint interaciunea agentului cu mediul nconjurtor.

Figura 5 : Diagrama OMT obiect a Agenilor, Mediului i Interaciunii


Un obiect de interaciune are semnale de intrare i de ieire.
Dou clase sunt derivate din clasa Agent: Agentul de Semnalare a Coordonrii i
Agentul de Invare a Coordonarii. Un Agent de nvare a Coordonrii nva sa-i coordoneze
aciunile relaionnd semnalele pe care le primete de la Agentul de Semnalare a coordonrii cu
mediul inconjurtor.

Instanierea framework-ului la un domeniu


Pentru a creea o instaniere a framework-ului pentru un domeniu ales(n cazul de fa
domeniul urmririi), trebuie proiectate urmtoarele clase:
O subclas a Mediului: Aceast subclas conine toate obiectele din mediu. Clasa Mediu se
ocup de actualizarea obiectelor de interaciune ale agenilor prezeni. Dac este necesar, metoda
responsabil pentru acest lucru poate fi supradefinit.
O subclas a Interaciunii:Aceast subclas ar trebui s furnizeze metode specifice domeniului,
s acceseze i s modeleze mediul. De asemenea, stabilete care obiecte i informaii din mediu
influeneaz agentul i ce efect au aciunile agenilor. Acest lucru se realizeaz alimentnd continuu
intrrile obiectului de interaciune cu semnale din mediu i studiind ieirile obiectului de
interaciune i interpretndu-le ca aciuni, ceea ce s-ar putea s afecteze mediul. Acest mecanism
permite agenilor s interacioneze cu medii necunoscute. Pe deasupra, obiectele de interaciune
stocheaz semnalele de evaluare care au fost recepionate.
O subclas a Agentului de Semnalare a Coordonrii: Acesta este de obicei un agent specific
domeniului. Agenii acestei clase pot evalua situaia curent din mediu, i dup cum le spune i
numele, ei transmit continuu semnale reprezentnd aceast evaluare altor ageni, de exemplu
vecinilor lor.

Am implementat acest mediu i un agent care poate evalua coordonarea ntre el nsui
i vecinii lui apropiai. Agentul, denumit Prdtorul de Coordonare Maxim compar pur i
simplu pentru fiecare aciune posibil evaluarea coordonrii care ar rezulta din ea i alege
aciunea care maximizeaz aceast evaluare. Astfel, daca aceasta este una corect, este clar c
acest agent acioneaz raional.
Am proiectat Interaciunea si un mediu specific problemei urmririi, design-ul obinut
fiind cel ilustrat n Figura 6.
Design-ul aplicaiei mele folosete o variant simplificat a modelului orientat obiect
din Figura 6, utiliznd n acest sens subclase ale claselor CoordinationSignalingAgent,
Environment i Interaction, respectiv subclasele MaxCoordinationPredator, PursuitWorld i
PursuitWorldInteraction.

Figura 6 : Prdtorul MaxCoordinationPredator poate aciona n Mediile PursuitWorld i


poate s trimit semnale de evaluare vecinilor si.

Un pas important n realizarea unei instanieri a framework-ului Semnalului de


Coordonare este definirea semnalelelor de coordonare specifice aplicaiei. Aceste semnale vor fi
folosite n viitor pentru a nva agenii dintr-un domeniu independent cum s-i aleag micarea
corect n fiecare situaie.

Figura 7 : Efectul unui factor de rspndire nalt: unghiurile optime dintre prdtori sunt
preferate n detrimentul minimizrii distanei
Figura 7 ilustreaz o prad nconjurat de patru prdtori, A1A4. Agentul de
Semnalare a Coordonrii A transmite evaluri ale coordonrii dintre el i vecinii din stnga i
din dreapta lui. Prin urmare, primete evaluri ale coordonrilor din partea vecinilor din stnga,
respectiv dreapta lui. Prdtorul de Coordonare Maxim ii alege micrile maximiznd suma
celor dou evaluri primite. n figur, A1 are ca vecini pe A2 i pe A3 i de aceea se va muta la
poziia care maximizeaz suma :

Ar trebui notat faptul c n unele cazuri, agentul va avea vecini diferii ntr-o poziie pe
care acesta o cerceteaz ca pe o posibil opiune de mutare. Cum evaluarea coordonrii n problema
urmririi a fost fcut sa se aplice numai la vecinii direci, agentul va lua n calcul evaluarea
coordonrii unui nou vecin, si nu a vecinului din poziia curent.
n domeniul Problemei Urmririi, doi factori sunt importani n ncercuirea przii:
deplasarea nspre prad i nconjurarea ei. De aceea, evaluarea coordonrii combin un factor de
distan i un factor de rspndire.
Factorul de distan ar trebui s ncurajeze minimizarea distanei dintre prdtor i prad.
Minimizarea distanei pn la prad se poate face de ctre orice individ i nu necesit coordonare.
Pentru a coordona mutarea nspre prad, combinm acest factor cu gradul n care un agent i vecinul
lui sunt la aceeai distan de prad; ideea de baz ar fi c ei ar trebui s se apropie de prad gradual.
Toi factorii de evaluare sunt situai n intervalul [0..1], 0 reprezentnd o evaluare slab i 1
reprezentnd una perfect.
Parametrul Echidistan stabilete greutatea care este atribuit echidistanei n comparaie
cu factorul distan. Spre exemplu, un parametru de echidistan cu valoarea 1 nu ia n calcul distana
absolut, ci numai unghiul n care distanele agentului i ale vecinului lui sunt la fel, n timp ce unul
de 0.5 ar lua n considerare ambii factori n mod egal. Poziia unui agent este exprimat n coordonate
polare relative la prad.
Factorul de raspndire poate fi calculat cu ajutorul unui factor care ia n calcul unghiurile
prdtorilor n comparaie cu prada. Cnd agenii sunt rspndii la maximum, unghiurile dintre ei
sunt egale cu:

Semnalul de evaluare a ntregii coordonri este o singur valoare care combin factorul
de distan i factorul de rspndire.

Pentru un agent A, A. reprezint unghiul i A.d reprezint distana, amndou


relative la prad. constituie parametrul distan (greutatea factorului Dist, relativ la factorul
Spread). reprezint parametrul de echidistan (greutatea factorului de echidistan, relativ la
factorul distan). Emax constituie eroarea maxim a unghiului.
Prdtorul de Coordonare Maxim i face alegerea folosind informaii care sunt
determinate local. Acest lucru sugereaz ca agentului nu i sunt cunoscute inteniile altor ageni
(si nici informaiile n care acetia sunt implicai). Prdtorul de Coordonare Maxim nu
cunoate inteniile altor ageni, lucru ce l-ar pune n egalitate cu controlul lor local. Cu toate
acestea, dispune de o viziune global pe care, de fapt, o folosete tocmai pentru a stabili poziiile
celor doi vecini ai si. Pare greu de comparat valoarea acestei informaii cu valoarea cunoaterii
inteniilor altor ageni.

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