Sunteți pe pagina 1din 6

SISTEME MULTI-AGENT

Vilciu Marius Florin


Mindilica Alexandru Costin
Facultatea de Inginerie Electrică, Electronică și Tehnologia Informației
Universitatea Valahia din Târgoviște
E-mail: valciu.1234@gmail.com
mindilica96@gmail.com

Rezumat entități, ceea ce, la rândul lor, le limitează


Sistemele multi-agent (SMA) au primit o atenție flexibilitatea. [1]
remarcabilă din partea savanților din diferite discipline, Sistemele multi-agent (SMA), care sunt principalul
inclusiv informatică și inginerie civilă, ca mijloc de
obiectiv al acestei lucrări, constau din entități
rezolvare a problemelor complexe prin împărțirea lor în
sarcini mai mici. Sarcinile individuale sunt alocate autonome cunoscute sub numele de agenți. În mod
entităților autonome, cunoscute sub numele de agenți. similar cu entitățile de calcul din DPS, agenții rezolvă
Fiecare agent decide asupra unei acțiuni adecvate pentru în colaborare sarcini, dar oferă mai multă flexibilitate
a rezolva sarcina folosind mai multe intrări, de ex. istoria datorită capacității lor inerente de a învăța și de a lua
acțiunilor, interacțiunile cu agenții săi vecini și scopul
decizii autonome.
său. În ciuda aplicabilității lor largi, există încă o serie de
provocări cu care se confruntă SMA, inclusiv Agenții își folosesc interacțiunile cu agenții vecini
coordonarea între agenți, securitate și alocarea sau cu mediul pentru a învăța noi contexte și acțiuni.
sarcinilor. Aceasta lucrare cuprinde aspecte cu privire la Ulterior, agenții își folosesc cunoștințele pentru a
definiții, caracteristici, aplicații, dar și modul de decide și a efectua o acțiune asupra mediului pentru
funcționare al acestora.
a-și rezolva sarcina alocată. Această flexibilitate face
ca SMA să fie adecvat pentru rezolvarea problemelor
Cuvinte cheie: Sisteme multi-agent, arhitecturi de
agenți, limbaje de modelare, entitate, agenți dintr-o varietate de discipline, inclusiv informatică,
inteligenți, aplicabiliatea modelelor multi-agent. inginerie civilă și inginerie electrică. Pentru a
dezvolta SMA necesită abordarea unei game variate
de provocări complexe, cum ar fi coordonarea între
agenți, învățare și securitate. [2]
1. INTRODUCERE

În ultimii ani, Inteligența Artificială Distribuită (DAI) 2. AGENȚI


a primit o atenție extraordinară din partea mediului
academic datorită capacității sale de a aborda Agentul reprezintă o entitate care este plasată într-un
probleme complexe de calcul.[1] mediu și detectează diferiți parametri care sunt
Algoritmii DAI sunt clasificați în trei categorii, pe utilizați pentru a lua o decizie pe baza obiectivului
baza metodelor fundamentale utilizate pentru entității. Entitatea efectuează acțiunea necesară
rezolvarea sarcinilor, și anume: IA paralel, asupra mediului pe baza acestei decizii.
Rezolvarea Problemelor Distribuite (DPS) și Definiția de mai sus cuprinde patru cuvinte cheie care
Sistemele multi-agent (MAS). IA paralel implică pot fi elaborate în continuare:
dezvoltarea de algoritmi paraleli, limbaje și
a) Entitate: Entitatea se referă la tipul agentului. Un
arhitecturi pentru creșterea eficienței algoritmilor AI
agent poate fi un software, de ex. agenți de securitate
clasici, utilizând paralelismul sarcinilor. DPS implică
daemon, o componentă hardware, de ex. termostat
împărțirea unei sarcini în sub-taskuri, fiecare dintre
sau o combinație a ambelor, de ex. un robot.
acestea fiind alocată unui nod dintr-un set de noduri
de cooperare, cunoscute sub numele de entități de b) Mediu: Acesta se referă la locul în care se află
calcul. Entitățile de calcul au partajat cunoștințe sau agentul. Mediul poate fi o rețea în cazul agenților de
resurse, precum și comunicări predefinite cu alte monitorizare a traficului, un software atunci când
agentul monitorizează acțiunile componentelor exemplu, atunci când robotul de fotbal lovește
software etc. Un agent folosește informațiile detectate mingea, poziția mingii se schimbă într-un set
din mediu pentru luarea deciziilor. Mediul are mai continuu de acțiuni, agentul poate efectua acțiuni
multe caracteristici care afectează complexitatea unui nelimitate, de ex. jocul de fotbal. Într-un set discret
sistem bazat pe agenți [1]: de acțiuni se pot efectua un set finit de acțiuni, de ex.
 Accesibilitate: Accesibilitatea se referă la un agent care controlează un termostat într-o cameră.
acuratețea cu care agenții pot detecta datele din
Scopul fiecărui agent este să-și rezolve sarcina
mediu. De exemplu, un agent de firewall de rețea
alocată, pentru a atinge acest scop, agentul detectează
poate captura întregul flux de trafic al unei rețele. În
mai întâi parametrii din mediu. Acesta ar putea
schimb, într-un mediu inaccesibil agentul detectează
folosi și cunoștințele vecinilor săi. Aceste cunoștințe,
date zgomotoase și/sau incomplete. Lumea fizică,
împreună cu istoricul acțiunilor anterioare întreprinse
adică orice eveniment de pe pământ, este un exemplu
și obiectivul sunt furnizate unui motor de inferență
de mediu inaccesibil, deoarece senzorii care captează
care decide asupra acțiunii adecvate care trebuie
datele introduc zgomot inerent care perturbă
efectuate de către agent.(Figura 1)
semnalul observat (și astfel măsurat).
 Determinism: Aceasta se referă la
predictibilitatea rezultatelor unei acțiuni. Într-un
mediu determinist, rezultatele sunt previzibile, de ex.
într-un mediu care poate fi modelat de o mașină cu
stare finită, agentul cunoaște cu precizie următoarea
stare pentru fiecare acțiune. În medii non-
deterministe, rezultatul unei acțiuni nu este complet
previzibil, deoarece poate fi influențat de alți factori,
de ex. într-un joc, rezultatul depinde de acțiunile
tuturor participanților.
 Dinamism: Aceasta se referă la schimbările
care au loc în mediu, care sunt independente de
Figura 1. Agenți și mediul
acțiunile întreprinse de agenți. Un mediu în care
schimbările pot apărea doar ca o consecință a acțiunii 3. ARHITECTURI DE AGENȚI
agenților este considerat static. În toate celelalte
În general, se consideră că există trei arhitecturi
cazuri, un mediu este considerat a fi dinamic. Știm că
principale de agenți care sunt:
procesul de luare a deciziilor agenților se bazează pe
Arhitectură reactivă: Agentul se comportă în
informațiile percepute din mediu. Când mediul se
conformitate cu o buclă de răspuns stimul, care
schimbă, este posibil ca informațiile percepute
reprezintă conexiuni simple între percepția agentului
anterior să nu mai fie corecte. Astfel, într-un mediu
și setul de operații disponibile.
dinamic, agenții trebuie să detecteze o schimbare în
Arhitectura cognitivă: acest tip de arhitecturi se
starea mediului și să actualizeze informațiile
bazează pe presupunerea că agenții ar putea raționa
detectate, în comparație cu mediile statice în care
din cunoștințe descrise cu un formalism simbolic.
informațiile inițiale detectate pot fi utilizate pentru
Diferit de arhitectura reactivă, cunoștințele agenților
luarea deciziilor pe durata de viață a agentului.
cognitivi reprezintă în mod explicit mediul lor și
c) Parametri: Diferitele tipuri de date pe care un ceilalți agenți. Cea mai cunoscută arhitectură
agent le poate capta din mediu sunt denumite cognitivă este modelul BDI (Belief-Desire-Intention).
parametri. De exemplu, parametrii pentru un agent Arhitectură hibridă: este o abordare care combină
robot de fotbal sunt poziția și viteza membrilor cele două tipuri de arhitecturi reactive și cognitive
echipei și a adversarilor, dar și poziția mingii. pentru a construi o arhitectură mai flexibilă.
Problema cheie în această arhitectură este
d) Acțiune: Fiecare agent poate efectua o acțiune
echilibrarea modulului reactiv și cognitiv în
care are ca rezultat unele schimbări în mediu. De
arhitectura hibridă și asigurarea unei bune colecție de agenți specializați care produc și
coordonări. [1] reacționează la stimuli existenți în cadrul sistemului.
Sistemele multi-agent modeleaza un sistem interactiv
4. SISTEME MULTI-AGENT (SMA)
prin intermediul unor unități computaționale
Caracteristicile esențiale ale sistemelor multi agent, specializate numite agenți. Un agent se află la un
inclusiv eficiența, costul redus, flexibilitatea și moment dat într-o stare, posedă o bază de cunoștințe
fiabilitatea, îl fac o soluție eficientă pentru rezolvarea și este capabil să inițieze sau să raspundă la acțiuni.
sarcinilor complexe. Un sistem multi-agent poate fi privit ca un sistem în
Eficiența lor este datorată faptului că o sarcină evoluție în care fiecare agent desfășoară o activitate
complexă este împărțită în mai multe sarcini mai independentă. În cadrul unui sistem multi-agent,
mici, fiecare dintre acestea fiind atribuită unui agent fiecare agent își desfășoară activitatea, teoretic,
distinct. Bineînțeles, costurile generale asociate, de independent de existența celorlalți agenți. Sistemele
exemplu, procesarea și consumul de energie, sunt multi-agent sunt instrumente foarte folositoare pentru
împărțite mai multor agenți, ceea ce duce adesea la o modelarea sistemelor de informație distribuită cu o
soluție cu costuri reduse în comparație cu o abordare interacțiune sincronă sau asincronă.
în care întreaga problemă complexă trebuie rezolvată Teoria sistemelor multi-agent este o consecință logică
de o singură entitate puternică. a dorinței de a dezvolta sisteme inteligente. În
În proiectarea de sisteme mari şi/sau complexe, un prezent, nu există o metodologie care să permită o
agent este o abstracţie care facilitează proiectarea metoda de analiza, specificare, proiectare și
unor componente diferite care colaborează în implementare a unui sistem multi-agent. Pentru
rezolvarea diferitelor aspecte ale unei probleme. specificarea completă a unui sistem multi-agent este
Fiecare agent este conceput în paradigma cea mai necesară definirea cunoștințelor și comportamentului
potrivită pentru a rezolva partea sa de o problemă. Un intern al agenților și modul de interacțiune cu ceilalți
sistem multi-agent este folosit pentru a rezolva o agenți cu care coexistă în cadrul sistemului multi-
problemă complexă care nu poate fi rezolvată de agent. În cadrul sistemului multi-agent, intențiile
către o entitate unică a sistemului. Agenţii au agentului pot fi definite ca un scop ce trebuie atins în
capacitatea de a procesa eficient datele locale şi de a momentul realizării unui set de acțiuni. „Cunoștința“
comunica cu alţi agenţi atunci când este necesar, în (know-how) unui agent este abilitatea sau potențialul
cazul în care sarcinile cu care se confruntă sunt de a executa o acțiune sau un set de acțiuni, și în
dincolo de domeniul lor de cunoştinţe. același timp de a emana inteligența ca urmare a
Sisteme multi-agent au fost utilizate într-un spectru rezultatelor obtinuțe.
larg de aplicaţii, cum ar fi e-commerce, e-learning, Caracteristicile sistemelor multi-agent sunt
comunicare, data mining, simulare, robotică, sisteme următoarele:
de transport şi de grid computing. Au fost iniţiate, de - fiecare agent posedă informații sau capabilități
asemenea, studii teoretice în specificaţile şi incomplete;
raţonamentelor sistemelor multi-agent, reprezentarea - nu există un control global al sistemului;
şi prelucrarea cunoştinţelor, precum şi în ştiinţele - datele sunt necentralizate;
cognitive. - calculul se desfășoară în maniera asincronă.
Studiul sistemelor multi-agent a stat la baza cercetării
noastre. Metodologia implementării agenţilor,
5. FUNCȚIONAREA UNUI SISTEM
proprietăţile definitorii ale acestora, modul de
MULTI-AGENT
comunicare şi arhitecturile sistemelor multi-agent
studiate ne-au permis realizarea sistemului multi- Toate acțiunile sau sarcinile pe care un agent le poate
agent prezentat în capitolul al patrulea al lucrării. [2] îndeplini în cadrul sistemului în care există, sunt
Sistemele multi-agent sunt folosite în proiectarea cerute de către un alt agent care coexistă în același
unor sisteme software interactive care se bazează pe mediu. Funcționalitatea unui agent este definită în
funcționarea într-un sistem stimul-raspuns. Sistemele concordanță cu rolul sau în cadrul sistemului.
multi-agent modelează un sistem interactiv printr-o
Fiecare agent memorează intern, în structura sa, un Principalele abilități ale unui sistem multi-agent sunt:
set de cunoștințe despre sistemul în care 'trăiește'. - de a rezolva probleme prea extinse pentru un singur
Controlul agentului este realizat în strânsă legatură cu agent centralizat;
specificația task-urilor pe care trebuie să le ducă la - de a obține soluții pentru probleme distribuite de
bun sfârșit și a strategiilor pe care le folosește. Modul ordin esențial, ca de exemplu controlul traficului
de definire a scopurilor, planurilor, strategiilor este aerian cu mai mulți agenți;
diferit în funcție de rolul ficărui agent. Agenții - de a mări viteza, încrederea și extensibilitatea ( de a
reusesc să conviețuiască în cadrul aceluiași sistem schimba numărul de procesoare destinate unei
printr-un mecanism de comunicare care este bazat pe probleme), de a tolera cunosținte nesigure.
transmiterea unor mesaje într-o manieră sincronă sau Modelul sistemului multi-agent poate fi folosit pentru
asincronă. a simula orice mediu cooperativ, indiferent de
Acest proces de comunicare dintre agenți se supune complexitate.
unor reguli precise: În acest sens, sistemele multi-agent profită de
- agenții sunt conectați prin legaturi de comunicație participarea dinamică a fiecărei părți componente în
unidirecționale destinate transmiterii de mesaje beneficiul tuturor:
discrete; - agenții individuali nu trebuie să țină o istorie a
- se presupune că nu există întârziere în transmisia- informațiilor obținute de la alți agenți;
recepția unui mesaj; - datorită procesului continuu de emitere sau de
- în momentul recepției unui mesaj, agentul receptor consumare de informații, informațiile vehiculate în
cunoaște proveniența mesajului (agentul care a emis sistem nu sunt învechite;
mesajul); - replicarea informației este evitată, menținându-se în
- există definită o relație de ordine în ceea ce privește acest mod consistentă în cadrul sistemului;
emisia-recepția mesajelor; - modelul bazat pe multi-agenți este scalabil deoarece
- se presupune că transportul mesajelor este fiabil. numărul agenților este sau poate fi într-o continuă
Pe lângă acest schimb de mesaje, trebuie realizată o schimbare.
ințelegere între agenți pentru satisfacerea Modele multi-agent care implementează sisteme cu o
constrângerilor la care sunt supuși datorită arhitectură modulară paralelă propagă conceptul de
coexistenței în cadrul aceluiași sistem. Acest lucru se unități de interacțiune și cooperare.
realizează printr-un proces de negociere format din
coordonare și cooperare. Cooperarea se referă la
6. APLICABILIATEA MODELELOR
faptul că soluția unei probleme este rezultatul unei
MULTI-AGENT
interacțiuni cooperative la care participă toți agenții.
Coordonarea dintre grupele de agenți permite analiza Modularitatea și paralelismul sunt mecanisme care
task-urilor ce trebuie realizate și asignarea proceselor sprijină proiectarea iterativă a interfețelor utilizator, a
grupelor de agenți fără a duplica volumul de muncă. aplicațiilor distribuite și pentru manipularea
Sistemul multi-agent poate fi folosit pentru a simula dialogurilor multithread :
orice mediu cooperativ, indiferent de complexitate. - suport pentru proiectare iterativă: un agent definește
Fiecare componentă a sistemelor multi-agent unitatea modularitate. Ca urmare a implementării
participă dinamic în beneficiul tuturor: acestui concept, este posibil să se modifice
- agenții individuali nu trebuie să țină o istorie a comportarea agentului fără a pune în pericol
informațiilor obținute de la alți agenți; integritatea sistemului.
- datorită procesului continuu de emitere sau de - suport pentru aplicații distribuite: agentul definește
consumare de informații, informațiile ce circulă în unitatea în cazul procesării. De aceea este posibil ca
sistem nu sunt învechite; agentul să își manifeste comportamentul pe
- replicarea informației este evitată, menținându-se în procesoare diferite decât pe cel pe care a fost creat.
acest mod consistența în cadrul sistemului; - suport pentru manipularea dialogurilor multithread
- modelul bazat pe un sistem multi-agent este scalabil un agent poate fi asociat fiecărui fir de execuție
deoarece numărul agenților este sau poate fi într-o (thread). Deoarece starea este menținută local de
continuă schimbare.
către agent, interacțiunea dintre agent și utilizator În concluzie un sistem multi-agent poate fi privit ca
poate fi suspendată până în momentul în care un sistem în evoluție în care fiecare agent desfașoară
utilizatorul dorește reluarea activității. În cazurile în o activitate independentă. Modelul bazat pe agenți
care un fir de execuție (thread) este prea complex poate fi asemănat cu un model care are la bază
pentru a fi modelat printr-un singur agent, atunci este principiile dinamicii populației și de stabilitate. În
posibil ca problema să fie realizată de o colecție de cadrul unui sistem multi-agent, fiecare agent iși
agenții (cooperare într-un sistem multi-agent). desfașoară activitatea, teoretic, independent de
În plus, pentru a proiecta interfețe utilizator existența celorlalți agenți. În cadrul sistemului multi-
performante, modelul multi-agent poate fi agent, intențiile agentului pot fi definite ca un scop ce
implementat foarte ușor prin paradigmele limbajelor trebuie atins în momentul realizării unui set de
orientate pe obiecte. Acest lucru poate fi realizat prin acțiuni. „Cunostința“ (know-how) unui agent este
asocierea „clasa obiect“ - „agent“, unde operatorii abilitatea sau potențialul de a executa o acțiune sau
clasei și atributele clasei modelează setul de acțiuni un set de acțiuni, și în același timp de a emana
(reguli) și starea agentului. Un obiect și un agent sunt inteligența ca urmare a rezultatelor obținute.
unități de procesare specializate, ambii decizând
propria stare. [3]
Bibliografie
7. CERCETAREA LIMBAJELOR DE
MODELARE / PROGRAMARE MAS

Limbajul de programare pentru istemele multiagent


este un subcamp important în cercetarea tehnologiei
acestor sisteme. Cercetătorii și organizațiile au
propus câteva metodologii în dezvoltarea SMA
pentru a ajuta dezvoltatorii să ușureze procesul de
dezvoltare și să rezolve problemele de complexitate
internă.
Cu toate acestea, implementarea cu succes pentru o
astfel de aplicație este încă dificilă, chiar dacă
metodologiile și cadrele SMA sunt disponibile
dezvoltatorilor. Ar putea fi parțial atribuit imaturității
limbajelor și instrumentelor de programare actuale.

8. DEZAVANTAJE:

 Lipsa instrumentului de depanare;


 Tehnicile sunt limitate în timpul mapării
unei construcții de programe la un model abstract sau
la un concept de proiectare;
 Lipsa de competență în tratarea
caracteristicilor specifice diferitelor platforme;
 Paradigma de programare MAS, care este
baza dezvoltării, urmează să fie diseminată către
programatori.

9. CONCLUZIE
[1] M. Wooldridge, An introduction to multiagent systems. John Wiley & Sons, 2009.

[2] T. ShaoPeng, "A Research on Multi Agent Modeling Language," SciVerse ScienceDirect, 2011.

[3] A. V. SĂNDIŢĂ, "mecanica.ucv.ro," 2015. [Online]. Available:


http://mecanica.ucv.ro/ScoalaDoctorala_v/Temp/Rezumate/Sandita_Ro.pdf. [Accessed 21 05
2021].

[4] "Caracterizarea sumara a sistemelor multiagent," [Online]. Available:


https://www.scrigroup.com/diverse/Caracterizarea-sumara-a-sistem25395.php. [Accessed 18
05 2021].

[5] A. Dorri, "Multi-Agent Systems: A survey," IEEE Access, vol. 6, 2018.

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