Sunteți pe pagina 1din 34

Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf.

Băncescu Mioara

CAPITOLUL 1. INTRODUCERE ÎN MODELARE. MODELAREA


BAZATĂ PE AGENŢI

Motto: Cibernetica este o știință interdisciplinară, preia la fel de mult din biologie ca și din fizică, la fel de mult
din studiul creierului ca de la studiul calculatoarelor, și se preocupă de limbajul oficial al științei pentru
furnizarea de instrumente cu care poate fi descris comportamentul în toate aceste sisteme în mod obiectiv.
(Stafford Beer)

1.1 Modelarea, principala metodă utilizată în cibernetica economică


Principala metodă utilizată în cibernetica economică pentru studiul sistemelor adaptive
complexe şi a proceselor la care participă acestea o constituie modelarea.

Metoda modelării este completată frecvent de simularea sistemelor adaptive complexe.

Exemple de metode de modelare:

modelarea bazată pe ecuaţii;


modelarea bazată pe agenţi;
modelarea inspirată de natură.

Modelarea bazată ecuaţii utilizează de cele mai multe ori metode din categoria ecuaţiilor cu
diferenţe finite.

Modelarea bazată pe agenţi porneşte de la proprietăţile sistemelor adaptive complexe.

1
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

Un exemplu de program informatic dedicat modelării bazate pe agenţi este NetLogo.


Programul facilitează cercetarea sistemelor adaptive complexe cum ar fi sistemele informatice,
ecosistemele digitale pentru afaceri, reţelele sociale. Net Logo este foarte potrivit pentru
modelarea unor sisteme complexe care evoluează în timp.

NetLogo se bazează pe simularea comportamentului agenţilor, a abilităţii acestora de a


învăţa. In Net Logo se pot realiza simulări a diferitor fenomene naturale, sociale, etc.

Uri Wilensky a creat prima versiune de NetLogo în 1999, iar de atunci programul a fost
îmbunătăţit în mod continuu. Printre funcţionalităţile programului se numără:

• o fereastră de interacţiune cu utilizatorul pe parcursul rulării unui model;


• simulări la care pot participa mai mulţi utilizatori în acelaşi timp;
• vizualizarea rezultatelor în spaţiu tridimensional;
• agenţi de tip monitor care pot inspecta celilalţi agenţi ai unui modelul NetLogo;
• posibilitatea de a executa un model şi a urmări rezultatele execuţiei la viteză normală sau la o
viteză încetinită;
• un modul pentru modelarea sistemelor dinamice.
Modelarea inspirată de natură porneşte de la anumite proprietăţi şi comportamente
observate în sistemele din natură.

Modelarea are drept rezultat elaborarea unui model cu ajutorul căruia se descrie, se
înţelege sau se percepe o situaţie din lumea înconjurătoare care nu este altfel accesibilă
observatorului uman.

2
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

1.2 Definirea agenţilor


Conceptul de agent a devenit în anii 1990 un concept central în câteva dintre
disciplinele ştiinţifice cu o dezvoltare explozivă cum ar fi: inteligenţa artificială, stiinţele
complexităţii, stiinţa calculatoarelor, economia computaţională.

Există o literatură bogată care conţine mai multe definiţii date conceptului de
,,agent”1.

1
În dicţionar agentul este definit ca ,,cineva care, sau prin care se exercită putere sau produce un
efect”. Definiţia indică faptul că agentul exercită o acţiune, schimbă ceva în mediul înconjurător.
3
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

Shardlow (1990), Wooldridge şi Jennings (1995), Jennings et all (1998) se numără


printre cercetătorii care au propus definiţii pentru agenţi.

Agenţii fac
lucruri, ei Definiţie
acţionează,
de aceea ei se Shardlo 1990
numesc w
agenţi

2 termeni
Definiţie pentru a
Wooldridg descrie
1995 e şi agenţii:
Jennings autonomia,
raţionalitatea

3 concepte
cheie:
poziţionarea Definiţie
in raport cu Jennings 1998
mediul; et all
autonomia;
flexibilitatea.

Definiţia propusă de Shardlow (1990), “agenţii fac lucruri, ei acţionează: de aceea ei


se numesc agenţi” ne lasă să ȋnţelegem că agenţii au un rol activ, iniţiind acţiuni prin care este
afectat mediul lor mai degrabă, decât ca ei să fie afectaţi de acest mediu.

Ȋn definiţia propusă de Wooldridge şi Jennings (1995) agenţii sunt definiţi prin 2


cuvinte cheie, autonomia şi raţionalitatea:

4
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

• autonomia - presupune, în general, că un agent funcţionează fără intervenţia directă


a omului sau a altor agenţi ; un agent îşi poate controla complet propriile acţiuni şi
starea sa internă.

• raţionalitatea - presupune că agenţii iniţiază orice acţiune în scopul maximizării


performanţei lor în raport cu o funcţie de evaluare.

Definiţia propusă de Jennings et all (1998) este mai cuprinzătoare: un agent este un
sistem uman sau de calcul situat într-un anumit mediu, care este capabil de acţiune
autonomă flexibilă pentru a realiza obiectivele sale proiectate.

Conceptele cheie
utilizate ȋn cadrul definiţiei
sunt detaliate în continuare:

• poziţionarea în raport
cu mediul

• autonomia

• flexibilitatea.

5
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

1.3 Poziţionarea în raport cu mediul a unui agent

Poziţionarea în raport cu mediul a unui agent se


referă la faptul că agentul primeşte inputuri de la mediul său
şi poate executa acţiuni care schimbă mediul într-un anumit
fel.

Un mediu reprezintă, în esenţă, condiţiile în care


există şi funcţionează un agent.

Exemplu: AGENT UMAN IN CONTEXTUL COVID19

Un exemplu de poziţionare a unui agent în raport cu mediul este un agent uman în


contextul declanşării pandemiei COVID19:

agentul primeşte inputuri de la mediul său în legătură cu virusul, precum incidenţa


cumulată a cazurilor în ultimele 14 zile la nivel judeţean, la nivel naţional, la nivel
internaţional;
poziţionându-se în raport cu mediul, agentul poate executa acţiuni care schimbă
mediul într-unul mai putin prietenos cu virusul, cum ar fi : evitarea călătoriilor în zonele
în care incidenţa cumulată a cazurilor este peste un anumit nivel sau în locurile din
mediu în care rata de transmisie a virusului este ridicată, respectarea regulilor de
distanţare fizică şi igiena a mainilor, purtarea măştilor, aerisirea frecventă încaperilor,
etc.

6
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

Exemplu: MUSUROIUL DE FURNICI

Un alt exemplu de
agent situat într-un mediu este
muşuroiul de furnici. Furnicile
interacţionează una cu cealaltă
prin intermediul feromonilor
pe care ele îl depozitează în
mediu şi acesta le ghidează
acţiunile, drumurilor urmate de furnici prin mediu.

Putem observa comportamentul simulat al drumurilor furniciilor prin mediu folosind


modelul „Ants” din librăria NetLogo.

În figura 1.1, formele de tip hexagon marchează muşuroiul unde se va depozita


mâncarea acumulată de agenţii furnici şi sursele de hrană din mediu.

Agenţii furnici ai modelului respectă reguli de comportament. Când o furnică găsește


mâncare in mediu, aceasta transportă mâncarea spre mușuroi, lăsând urma unei substanțe
chimice în timp ce se deplasează. Când alte furnici detectează substanța chimică, o urmează
ajungand astfel la sursa de hrana. Când din ce in ce mai multe furnici duc mâncarea spre
mușuroi, se eliberează o cantitate de substanță chimică din ce in ce mai mare, urma devine
mai puternică, se evaporă din ce in ce mai greu, atrăgând astfel tot mai multe furnici.

Modelul are valori implicite pentru trei variabile de intrare, valori pe care utilizatorul le
poate modifica pentru a accesa o paletă mai largă de rezultate posibile:

• numărul de furnici (population);


• rata de difuzie (difusion-rate) a substanței chimice în mediu dupa ce o furnica găseşte
o sursă de hrană;
• rata de evaporare (evaporation-rate) a substanței chimice, in funcţie de care ceilalţi
agenţi îşi ghidează acţiunile.

7
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

Figura 1.1. Model NetLogo Ants.

Exemple de simulare a conceptului de pozitionare in raport cu mediul folosind


modelul „Ants”:
micșorăm rata de difuzie a substanței chimice; observăm că urmele lăsate de furnici,
atunci când transportă mâncarea spre mușuroi, devin mai putin vizibile, sunt mai greu
de sesizat de către celelalte furnici, astfel transportul întregii cantități de mâncare are
loc într-un timp mai îndelungat;
mărim rata de evaporare a substanței chimice; observăm că va fi nevoie de mai multe
furnici care să transporte mâncarea pe același traseu pentru a lăsa o urmă pe care să
o detecteze din ce in ce mai mulţi agenţi, iar transportul întregii cantități de mâncare
are loc într-un timp mai mare, dacă nu mărim numărul de furnici din model;
creștem numărul de furnici din model, păstrand neschimbate celelate setari implicite
ale modelului; atunci se observa ca se micșorează timpul de transport a întregii
cantități de mâncare spre muşuroi.

O extensie posibilă a modelului pentru a-l aduce mai aproape de realitate ar fi ca


drumul furnicilor de întoarcere spre muşuroi, cu mancarea găsită, să nu fie în linie dreaptă, ci
conform unor procese haotice.

8
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

Exemplu: FRUNZELE COACILOR


Exemplu: FRUNZELE COPACILOR

Modelul „Autumn” din librăria NetLogo ilustrează, de asemenea, conceptul de


poziționare a agenților în raport cu mediul.

Modelul surprinde fenomenul frumos de toamnă, cand frunzele își transformă


culoarea, înainte de a muri și a cădea din copac.

Agenții modelului sunt frunzele unui copac. Fiecare agent primeşte inputuri de la
mediu (temperatura, intensitatea vântului, intensitatea ploilor, intensitatea căldurii de la
soare) şi poate executa acţiuni de schimbare a culorii sau de desprindere din copac, ceea ce
schimbă aspectul mediului. Astfel, modelul poate fi privit ca un instrument de modelare a
poziționării unor agenți în raport cu mediul.

Figura 1.2. Model NetLogo Autumn. Setari

Interfaţa modelului permite monitorizarea mai multor rezualtate în timpul unei


simulări:

evoluţia numărului de frunze agăţate în copac și a numarului de frunze


desprinse din copac;
evoluţia condiţiilor din mediu: temperatură, ploaie, vant și soare;
evoluţia unor caracteristici la nivelul frunzelor: nivelul mediu de clorofilă, de
apă, de zahăr, de caroten, de antocianin, la care se adaugă caracteristica „atașament”,

9
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

care indică cât de puternic se agață de copac o frunză; atașamentul crește cu ajutorul
factorului apă și scade prin factorii din mediu vânt și ploaie.

Figura 1.3. Model NetLogo Autumn. Monitorizarea rezultatelor

Modelul permite executarea a numerose simulări privind comportamentul agenţilor in


mediu, cum ar fi:
prin creșterea factorului de intensitate a ploii și păstrarea neschimbată a celorlalte
condiţii din mediu, se observă că frunzele își păstrează culoarea verde mai mult
timp, datorită clorofilei, iar timpul necesar desprinderii frunzelor din copac este
mai mare;
prin creșterea factorului de intensitate a vântului și păstrarea neschimbată a
celorlalte condiţii din mediu, se observă că frunzele se pot desprinde chiar dacă
sunt complet verzi, timpul necesar desprinderii frunzelor din copac scazand
semnificativ.

10
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

Modelul „Autumn” din librăria NetLogo surprinde fenomenul de desprindere a


frunzelor din copaci printr-o modelare bazată pe agenți. Pentru a aduce modelul chiar mai
aproape de realitate, o extensie a modelului ar putea simuala ciclurile de evoluție zi – noapte,
noaptea temperaturile scăzand, influențand astfel consumul de zaharuri și timpul de
desprindere a frunzelor din copaci.

1.4. Flexibilitatea agenţilor


Legat de conceptul de flexibilitate în definirea agenţilor, Jennings et all (1998)
detaliază că acesta presupune, în esenţă, că agentul este :

responsiv - agentul percepe


mediul şi răspunde la timp la
schimbările ce apar în el ;
proactiv - acţiunile agentului nu
reprezintă simple reacţii la
mediu, ci este
capabil să exercite
un comportament
orientat către un anumit scop şi
să iniţieze acţiuni care îl
apropie de aceste
scopuri;
social - agentul
este capabil să
interacţioneze cu alţi
agenţi artificiali sau
umani pentru a-şi rezolva propriile probleme şi a-i ajuta pe alţii în
activităţile lor.

Exemplu: TELEFONUL MOBIL INTELIGENT

11
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

Exemplu: TELEFONUL MOBIL INTELIGENT

Conceptul de flexibilitate al unui agent poate fi ilustrat cu ajutorul unui telefon mobil
inteligent.

responsivitatea agentului: prin capacitatea telefonolui inteligent de a-și adapta


luminozitatea display-ului în funcție de intensitatea luminii solare, identificăm
o situație in care agentul percepe mediul și răspunde la timp la schimbările ce
apar în el;
proactivitatea agentului: prin capacitatea telefonolui inteligent de a amâna
automat alarma care a fost setată de către utilizator identificăm o situație in
care agentul exercită un comportament orientat către un anumit scop și este
capabil să iniţieze acţiuni care îl apropie scop; in situația exemplificată scopul
este înștiințarea utilizatorului că este timpul pentru a-și începe ziua. Când ora
prestabilită a fost atinsă, telefonul va emite un semnal sonor. Dacă acest semnal
nu este oprit de către utilizator, atunci alarma se va reprograma cu 5 - 10
minute mai târziu pentru a emite semnalul din nou;
latura socială a agentului: telefonul inteligent, prin structura sa, este capabil să
interacţioneze zilnic cu alţi agenţi artificiali sau umani pentru a-şi rezolva
propriile probleme şi a-i ajuta pe alţii în activităţile lor;
o de exemplu avertismentul emis de către sistemul de operare al
telefonului în momentul în care nivelul bateriei este scăzut, iar acesta
are nevoie de o reîncărcare; prin avertismentul emis, agentul
interacționează cu utilizatorul pentru a-și rezolva problema nivelului
scazut al bateriei;
o un alt exemplu îl reprezintă setarea unei reamintiri pentru o anumită zi
și ora, pentru o activitate oarecare a utilizatorului, ca ajutor în
organizarea de zi cu zi a activitatilor utilizatorului; în momentul în care
agentul va constata că data si ora pentru care a fost setat respectivul
eveniment corespunde cu cea curentă, telefonul va emite un semnal
sonor anunțând utilizatorul că este momentul să își înceapă activitatea.

12
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

1.5 Tipuri şi exemple de agenţi

Agenţi raţionali - iniţiază orice acţiune


în scopul maximizării performanţei lor
în raport cu o funcţie de evaluare.
Exemplu: agenţi software care
realizează testări automate, indicând
dacă rezultatul este cel aşteptat sau
nu, cum ar fi compilatorul programului
Visual Studio

Agenţi raţionali şi autonomi -


orientaţi către un scop şi acţionând
conform acestuia, fără să fie necesară
intervenţia utilizatorului, confirmarea
şi acordul acestuia. Exemplu: dronele
care indeplinesc misiuni de colectare
de date fără intervenţia factorului
uman sau a altor agenţi. Exemplu:
proiectul dronelor companiei Amazon
pentru livrarea coletelor la clienţi

13
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

Agenţi adaptivi - se adaptează


dinamic şi învaţă despre şi din mediul
lor înconjurător ; aceşti agenţi se
adaptează la incertitudine şi
schimbare.

Exemplu (1) : cameleonul, agent


adaptiv

Exemplu (2) : o persoană supusă


unui experiment de a sta cu capul in jos
pentru o perioada indelungata ; creierul s-a
adaptat schimbării de poziţie, actiunile care
luau mult timp la inceput, au devenit
cursive.

Agenţi reactivi - sunt activaţi de


evenimente şi senzitivi la conjunctura
din domeniul realităţii înconjurătoare ;
sunt capabili să simtă şi să acţioneze.
Exemplu: notificari trimise
de telefoanele inteligente.

14
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

Agenţi mobili - se deplasează unde este


nevoie, posibil urmând un itinerar. Deplasarea se
poate face într-un spaţiu real sau virtual.

Exemplu (1): aspiratoarele robot.

Exemplu (2): robotul Atlas, capabil să meargă


pe teren foarte accidentat, să urce sau să coboare
scări

Agenţi interactivi şi sociali - interacţionează cu oamenii, cu alţi agenţi, cu sisteme


legale şi/sau surse informaţionale; colaborează cu alţi agenţi şi/sau oameni pentru
a atinge scopuri comune

15
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

Exemplu de agent interactiv şi social, robotul


Elektro (1939) – primul robot umanoid devenit
celebru; avea o gaura in centrul abdomenului
pentru credibilitate; putea fuma, mergea
autonom; era utilizat in spectavole de
aproximativ 20 de minute; cuvintele
prezentatorului erau transformate de Elektro
in unde electrice, care activau motoarele sale
electrice; numarul cuvintelor prezentatorului
controlau miscarile robotului, nu sensul lor.

Exemplu de agent interactiv şi social, robotul


pianist Wabot-2 (1985) - echipa Universității
din Tokyo a finalizat primul robot capabil să se
comporte ca un pianist complet; WABOT-2
citea și reda partituri folosind două brațe și un
pedalier; a marcat un moment important in
evolutia ideii de inteligenta artificiala in
muzica.

Exemplu de agent interactiv şi social, robotul


cu mers biped WHL-11

Agenţi cooperativi, cu personalitate, inteligenţi - îşi coordonează acţiunile şi


negociază pentru a atinge obiective comune; au caracteristici de personalitate umane
16
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

cum ar fi emoţii, intenţii, convingeri, răspunderi; încorporează caracteristici ce definesc


inteligenţa umană cum sunt inteligenţa emoţională, învăţarea, adaptarea, etc.
Exemplu: robotul Erica

1.6 Construirea modelelor bazate pe agenţi


Conceperea unui model bazat pe agenţi poate fi definit ca fiind procesul în care se
trece prin următorii 4 paşi şi se clarifică următoarele aspecte:

17
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

• Care este arhitectura modelului?

• Care sunt tipurile de interacţiune ȋntre agenţi?

 Cum poate fi făcut să evolueze comportamentul


agenţilor astfel încât ei să înveţe din experienţa trecută?
Care sunt consecinţele asupra comportamentului colectiv al
sistemului multiagent ?

 Cum se realizează practic astfel de sisteme? Care sunt


programele software ce se vor utiliza, ce limbaje de modelare se pot
folosi pentru a descrie agenţii şi sistemele multiagent?

Sistemele multiagent sunt sisteme bazate pe mai mulţi agenţi interconectaţi (agentul
poate fi privit, după cum am definit în subcapitolul anterior, ca sistem uman sau de calcul
situat într-un anumit mediu, capabil de acţiune autonomă flexibilă pentru a realiza
obiectivele sale proiectate).

Pentru a încorpora inteligenţa comportamentală în sistemele multiagent au fost


propuse diverse arhitecturi.

Arhitecturile organizate orizontal sunt acele arhitecturi în care toate nivelele au acces
la senzorii de intrare şi la acţiunea de ieşire a agentului.

18
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

Arhitecturile organizate vertical sunt acele arhitecturi în care doar un singur nivel are
acces la senzorii de intrare şi efectorii agentului (acţiunea de ieşire).

Nivel n

… Output .....
Input
(acţiune)
(percepţie) Nivel 2

Nivel 1

Input Output

(percepţie) (acţiune)

a) b)

Figura 1.4. a)Arhitectură orizontală. b)Arhitectură verticală

Arhitecturile care imită raţionamentul practic se numesc BDI (Belief–Desire–


Intention) şi sunt frecvent utilizate în proiectarea sistemelor bazate pe agenţi.

19
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

Foarte general, convingerile


corespund informaţiei pe
care agentul o are despre
mediul său înconjurător.

Dorinţele reprezintă opţiuni


disponibile agentului pentru
care ar trebui să aloce
resurse.

Iar intenţiile reprezintă stări


pe care agentul le-a ales şi
cărora le va aloca resurse.

Construirea sistemelor bazate pe agenţi necesită introducerea unor protocoale de


comunicare şi interacţiune între agenţi.

În figura 1.5 sunt reprezentate patru situaţii care pot apărea în comunicarea dintre doi
agenţi. Cea mai complexă este situaţia în care cei doi agenţi interacţionează.

20
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

Agent 1 Agent 2

Agent 1 Agent 2

Agent 1 Agent 2

Agent 1 Agent 2

Figura 3.4. Situatii de comunicare dintre agenti


a) Doi agenţi care nu au activitate de comunicare.
b) Un agent comunică către celălalt agent, dar nu primește răspuns.
c) Un agent comunică către celălalt agent. Celălalt agent transmite un răspuns, dar nu
interacționează.
d) Cei doi agenți interacționează. Un agent comunică către celălalt agent. Celălalt agent
transmite un răspuns. Agentul trimite un nou răspuns pe baza răspunsului primit.

Exemplu comunicare: RĂSPÂNDIREA UNUI ZVON

Folosind modelul „Rumor Mill” din librăria NetLogo putem exemplifica protocoalele de
comunicare dintre agenţi.

Agenţii din model sunt un grup de persoane care pot răspândi un zvon vecinilor din
jurul lor. Zvonul se răspândește atunci când o persoană care cunoaște zvonul îl comunică unuia
dintre vecini.

Pentru a realiza diverse scenarii de simulare bazată pe agenţi, modelul oferă


utilizatorului posibilitatea de a modifica una dintre setările prestabilite, după cum se observă
în figura 1.5:

• procentul de persoane care cunoaște zvonul inițial, înainte de executarea


protocoalelor de comunicare (init-clique) cu valoarea prestabilită de 0,1%;

21
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

• modul de definire a vecinilor unei persoane, fie prin patru, fie prin opt persoane
adiacente (eight-mode? on/off), valoarea prestabilită fiind posibilitatea unui agent de
a comunica zvonul catre patru vecini.

Figura 1.5. Modelul Net Logo Rumor Mill

Comunicarea între agenţi poate începe din centrul perimetrului unde sunt poziţionaţi
agenţii, alegând opţiunea „setup-one” sau din diferite puncte ale perimetrului, alegând
opţiunea „setup-random”, similar figurii 1.6.

Simularea se opreşte când zvonul a fost comunicat tuturor agenţilor, moment în care
monitorul rezultatelor modelului („clique %”) arată valoarea 100%.

Figura 1.6. Modelul Net Logo Rumor Mill

Comunicarea dintre agenţi este evidenţiată în cadrul modelului prin opţiuni de colorare
a hărţii răspândirii zvonului, după cum se poate vizualiza în figura 1.7:

22
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

opţiunea de colorare a agenţilor care au auzit deja zvonul; cu roşu este opţiunea
prestabilită;
opţiunea de colorare în nuanţe de galben a agenţilor care au auzit zvonul la
începutul simulării (nunanţe deschise) sau la finalul simulării (nuanţe închise);
opţiunea de colorare în nuanţe de verde a agenţilor care au auzit zvonul din mai
multe surse (nunanţe deschise) sau dintr-o singură sursă (nuanţe închise).

Figura 1.7. Modelul Net Logo Rumor Mill

Exemplu: AFISAREA RECLAMELOR

Legat de pasul 3 al construirii modelelor bazate pe agenţi, comportamentul agenţilor


este făcut să evolueze astfel încât ei să înveţe din experienţa trecută, un exemplu este un
sistem de calcul care personalizează reclamele afisate atunci cand o persoană navighează
pe internet. Sistemul memorează paginile vizitate de către utilizator si îsi creează o bază de
date din experienţele de navigare ale utilizatorului. Sistemul ajunge să ofere recomandări
de vizitare a unor reclame utile utilizatorului, fiind bazate pe experienţele trecute de
navigare. Sistemul culege date în mod continuu despre interesele utilizatorului si învaţă să
afiseze reclame din ce in ce mai precis. De exemplu, dacă o persoană este interesată de
achiziţionarea de mobilier, acesta va naviga diverse pagini care comercializează astfel de
produse. Agenţii de calcul dotaţi cu capacitatea de învaţare, prezenţi pe paginile web ale
diferitor site-uri, învată că persoana respectivă este interesată de mobilier si va duce la
afisarea a diverse reclame legate de mobilier în timpul experienţei de navigare online.
Sistemul multiagent ajunge sa înveţe cand interesul pentru mobilier nu mai este unul valid
si va afisa reclame corespunzătoare.

23
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

Tipurile principale de interacţiuni ȋntre agenţi sunt :

cooperarea
coordonarea
negocierea
competiţia

Cooperarea - lucrul împreună a doi sau mai


mulţi agenţi pentru atingerea unui scop comun;
rezolvarea unor subprobleme, prin repartizarea
de sarcini.

Coordonarea - organizarea activităţii de


rezolvare a sarcinilor de catre agenţi astfel încât
interacţiunile dăunătoare să fie eliminate, iar
cele favorabile să fie utilizate.

Negocierea - ajungerea la un acord care să fie


acceptabil pentru toate părţile implicate.

24
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

Competiţia – întrecerea între doi sau mai mulţi


agenţi pentru obţinerea unui scop.

Exemplu cooperare: CINA FILOSOFILOR

Putem exemplifica interacţiunea de cooperare dintre agenţi folosind modelul „Dining


Philosophers” din librăria NetLogo.

Agenții din model sunt un grup de filosofi care pot avea 3 stări pe parcursul execuţiei
modelului: pot fi în proces de meditaţie (colorați în albastru), pot fi înfometați (colorați în
rosu), sau mănâncă (colorați în verde).

După cum vizualizăm în figura 1.8, filosofii sunt așezați în jurul unei mese, având o
farfurie cu spaghete în mijlocul acesteia, iar între fiecare filosof există câte o furculiță. Pentru
a putea mânca spaghetele, este necesar ca filosoful să utilizeze 2 furculițe în același timp,
generând astfel imposibilitatea ca doi filosofi vecini sa mănânce în același timp.

25
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

Figura 1.8. Modelul Net Logo Dining Philosophers

Modelul are valori prestabilite pentru trei variabile de intrare, valori pe care utilizatorul
le poate modifica pentru a realiza diverse scenarii de simulare bazată pe agenţi:

• numărul de filosofi (num-philosophers) cu valoarea prestabilită de 20;


• șansa ca filosofii să fie înfometați sau nu (hungry-chance), cu valoarea
prestabilită de 50%;
• șansa ca filosofii să fie sătuli sau nu la scurt timp după ce încep să mănânce
(fullchance), cu valoarea prestabilită de 50%;
• modul de cooperare între agenţi activat sau nu (cooperation? on/off), valoarea
prestabilită fiind lipsa cooperării.

Toți filosofii sunt inițial în starea de gândire, fiind colorați în albastru. Cu fiecare unitate
de timp trecută, un filosof care gândește poate trece în starea de înfometare, schimbându-şi
culoarea din albastru in roşu. Un filosof înfometat va încerca să obțină ambele furculițe. In
momentul când le obţine, începe imediat să mănânce utilizând cele 2 furculițe, va deveni de
culoare verde până în momentul în care nu îi mai este foame, revenind apoi la starea de
gândire.

26
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

Setarea de cooperare activă sau nu intre agenti determină ce strategie va fi utilizată


pentru achiziționarea și eliberarea furculițelor.
Scenariul în care filosofii nu cooperează
Având setarea de cooperare oprită, următoarea strategie este folosită:

• dacă este disponibilă furculița din stânga, agentul o achiziţionează;


• dacă este disponibilă furculița din dreapta, agentul o achiziţionează;
• dacă agentul are ambele furculițe, începe să mănânce; în caz contrar, încearcă
din nou să achiziționeze furculițele;
• când agentul nu mai este înfometat, furculițele sunt eliberate.
După o perioadă de timp de executie a modelului, putem observa din figura 1.9 că
predomină filosofii înfometați, iar consumul de spaghete poate diferi mult de la un filosof la
altul.

Figura 1.9. Modelul Net Logo Dining Philosophers

Scenariul în care filosofii cooperează

27
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

Având setarea de cooperare activă modelul folosește o strategie mai sofisticată pentru
achiziționarea și eliberarea furculițelor:

• dacă este disponibilă furculița din stânga, agentul o achiziţionează;

• dacă agentul are furculița din stânga dar nu deține furculița din dreapta,
eliberează furculița din stânga (acest comportament este diferit de cel de la
scenariul anterior, în care agenţii nu cooperau);
• dacă este disponibilă furculița dreapta, agentul o achiziţionează;
• dacă agentul are furculița dreaptă dar nu deține pe cea din stânga, eliberează
furculița din dreapta (acest comportament este diferit de cel de la scenariul
anterior, în care agenţii nu cooperau);
• dacă agentul are ambele furculițe, începe să mănânce; în caz contrar, încearcă
din nou să achiziționeze furculițele;
• când agentul nu mai este înfometat, furculițele sunt eliberate.
După cum putem observa din figura 1.10, numărul filosofilor înfometați este mai scăzut
in acest scenariu decat în cel în care filosofii nu cooperează. Consumul de spaghete este acum
similar pentru fiecare filosof, accesul la mâncare fiind echitabil în scenariul în care filosofii
cooperează.

28
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

Figura 1.10. Modelul Net Logo Dining Philosophers

În concluzie, în scenariul de cooperare, printr-o bună repartizare a sarcinilor de


achiziţionare şi eliberare a furculiţelor, filosofii ating mai bine scopul de a avea cat mai puţini
dintre ei infometaţi şi cât mai mult timp pentru meditaţie.

1.7 Exemple de modele bazate pe agenţi


Aplicaţiile agenţilor şi modelelor bazate pe agenţi sunt extraordinar de diversificate în
privinţa domeniilor abordate: economic, industrial, comercial, financiar, militar, informatic,
etc.

29
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

Agenţii pot fi utilizaţi într-o mare varietate de aplicaţii.

Exemple de utilizare a agenţilor în sisteme de dimensiuni mici:

• filtrele personalizate pentru email


– agenţi care mută mesaje email in
dosare dedicate, pe baza unui set
de reguli pe care le învaţă;

• agenţii pentru cumpărături care


filtrează automat un produs dintr-o multitudine de coşuri de cumpărături
online (“shopbot”).

Exemple de utilizare a agenţilor în sisteme de dimensiuni mari:

• fluxuri şi procese de difuzie:


fluxul de cumpărători din
magazine, fluxul de aprovizionare
cu materii prime a
unei
organizaţii, difuzia inovaţiilor;

• pieţe: piaţa acţiunilor, piaţa valutară, diferite pieţe ale


bunurilor;

• organizaţii: proiectarea
organizaţiilor virtuale; modelarea
riscurilor operaţionale într-o
organizaţie; modelarea structurii
ierarhice din cadrul organizaţiei
după diferite tipologii: funcţional,
matricial, organizare pe proiecte, etc;

În continuare exemplificăm trei modele bazate pe agenţi din domeniul economic:


modelul Simstore, modelul Macy’s, modelul Transims.

30
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

1.7.1 Modelul Simstore


Modelul Simstore conţine agenţi software, fiecare dintre aceştia având propria sa listă
de cumpărături.

Agenţii îşi aleg propria cale printr-un magazin virtual, alegând bunurile aflate pe rafturi
şi punându-le în propriile coşuri.

Agenţii respectă principiul vecinătăţii celei mai apropiate, adică se deplasează la locaţia
cea mai apropiată unde se află un articol de pe lista proprie de cumpărături.

Modelul generează drumurile alese de clienţi, după care calculează densitatea


clienţilor pe fiecare locaţie din magazinul virtual.

Un algoritm al modelului realocă diferitele bunuri pe rafturi astfel încât să fie


minimizată sau maximizată lungimea drumului ales de cei mai mulţi dintre clienţi.

Cumpărătorii, desigur, nu doresc să piardă timpul, astfel că ei preferă cel mai scurt
drum. Dar managementul magazinului ar dori ca ei să treacă prin cât mai multe raioane astfel
încât să impulsioneze cumpărăturile.

1.7.2. Modelul Macy’s


Modelul Macy’s este un alt exemplu de model bazat pe agenţi din domeniul economic.

Modelul a fost construit pentru a ajuta conducerea unui lanţ de magazine să


stabilească numărul potrivit de vânzători pe un etaj.

31
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

Agenţii din model reprezintă vânzătorii, dar şi casierii, supraveghetorii sau alţi angajaţi
aflaţi în interacţiune.

Modelul ţine cont de proximitatea dintre produse, asezarea produselor de brand,


generează vânzările înregistrate pe fiecare etaj al magazinului, estimează numărul potrivit de
vânzători pe un etaj, pe intervale orare si zile ale saptamanii şi repartizează optim vânzările.

Prin aplicarea modelului s-au obţinut rezultate bune în ce priveşte costurile cu


angajaţii. De asemenea, s-au depistat factori de care conducerea lanţului de magazine nu ţinea
cont cum ar fi:

• importanţa pe care o are proximitatea dintre produse;


• proximitatea produselor de brand pentru impulsionarea cumpărăturilor.

1.7.3. Modelul Transims


Modelul Transims este un model bazat pe agenţi pentru managementul traficului
rutier.

Modelul permite simularea mişcării vehiculelor individuale într-o reţea de transport


regională şi estimează poluarea aerului generată de aceasta.

2
Modelul a fost dezvoltat în cadrul laboratoarelor naţionale Los Alamos din SUA.

32
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

Modelul înglobează observaţii zilnice privind deplasarea vehiculelor, rutele zilnice pe


care participanţii la trafic le aleg de-a lungul unei zile întregi, folosind diferitele posibilităţi de
transport pe care le au (maşina proprie, transport în comun cu autobuze, metrou, tren etc.).

Modelul creează o regiune metropolitană virtuală cu o reprezentare completă a


indivizilor din regiune, a activităţilor lor (mersul la slujbă, ieşirea la cumpărături, ieşirea la
activităţi recreative, etc.) şi a infrastructurii de transport.

Modelul ţinteşte să determine interacţiunea dintre diferite subsisteme de transport


astfel încât planurile agenţilor să poată fi realizate şi întregul sistem de transport să
funcţioneze fără blocaje.

De exemplu, când o călătorie devine prea lungă, agenţii caută alte rute, trec de la
automobil la autobuz sau metrou, pleacă mai devreme sau mai târziu sau chiar renunţă la
anumite activităţi planificate.

Modelul propune măsuri de îmbunătăţire a traficului şi a siguranţei acestuia. Rezultate


raportate ȋn urma aplicării modelului ȋn regiunile metropolitane americane Dallas, Forht
Worth, Portland, Oregon:

• reducerea timpului mediu de ajungere la slujbă de la 20-30 minute, la 10-12 minute;

• scăderea semnificativă a emisiilor de gaze poluante ;

• previzionarea unor fenomene neprevăzute care pot să apară (ambuteiaje, blocaje ale
traficului, etc).

33
Cap 1. Introducere în modelare. Modelarea bazată pe agenţi. Suport de curs 2021-2022, Conf. Băncescu Mioara

Bibliografie
Scarlat, E., Chiriţă N. (2012), “Bazele Ciberneticii Economice”, Ed. Economică, Bucureşti

34

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