Sunteți pe pagina 1din 66

Modelarea și analiza

sistemelor multi-agent
2. Arhitecturi de agenți (I)

Florin Leon

Universitatea Tehnică „Gheorghe Asachi” Iași


Facultatea de Automatică și Calculatoare

http://florinleon.byethost24.com/curs_masma.htm
Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm
Arhitecturi de agenți (I)
1. Arhitecturi abstracte
2. Arhitecturi logice
3. MetateM
4. Arhitecturi reactive
5. Arhitectura de subsumare

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 2


Arhitecturi de agenți (I)
1. Arhitecturi abstracte
2. Arhitecturi logice
3. MetateM
4. Arhitecturi reactive
5. Arhitectura de subsumare

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 3


Definiție
 O arhitectură de agenți este o anumită metodologie
pentru construirea agenților, care specifică în ce mod
poate fi un agent descompus într-o mulțime de
module și cum trebuie să interacționeze acestea.
Mulțimea totală a modulelor trebuie să precizeze în
ce mod datele de la senzori și starea curentă a
agentului determină acțiunile și următoarea stare
internă a agentului. O arhitectură cuprinde tehnicile
și algoritmii care stau la baza acestei metodologii.
(după Pattie Maes)

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 4


Formalizare: agent și mediu
 Stările mediului
 S = { s1, s2, ... }
 Acțiunile posibile, date de capacitatea efectorică
 A = { a1, a2, ... }

 Un agent standard poate fi văzut ca o funcție:


 action : S*  A
 S* este mulțimea șirurilor de elemente ale lui S
 Comportamentul mediului:
 env : S x A  (S)
 (S) este mulțimea părților lui S
Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 5
Determinismul mediului
 Mediu determinist
 env(s,a) are o singură valoare (singleton)
 Mediu nedeterminist
 env(s,a) are mai multe valori

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 6


Istoricul
 Modalitate de reprezentare a interacțiunilor
dintre agent și mediu

starea inițială

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 7


Proprietate invariantă
 O proprietate invariantă a sistemului se
păstrează în toate istoricele posibile
 De exemplu:
 Agent controller de reactor nuclear
 Proprietate invariantă: reactorul nu explodează

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 8


Echivalență comportamentală
 hist(ag, env) = mulțimea tuturor istoricelor agentului
ag în mediul env

 Agenții ag1 și ag2 sunt echivalenți comportamental


în mediul env dacă și numai dacă
hist(ag1, env) = hist(ag2, env)

 Agenții ag1 și ag2 sunt echivalenți comportamental


dacă și numai dacă hist(ag1) = hist(ag2) pentru toate
mediile

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 9


Agent pur reactiv
 Un agent pur reactiv decide acțiunile fără a-și
lua în considerare istoricul
 action : S  A
 S în loc de S*
 Exemplu: termostatul

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 10


Percepția și acțiunea
 see : S  P
 ieșirea funcției see
este un percept
  precept (principiu,
normă)
 action : P*  A

 s1, s2  S, s1  s2, dar see(s1) = see(s2)


  s1 și s2 sunt stări indistinctibile

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 11


Exemplu: stări indistinctibile
 Pentru un termostat, combinația de stări:
 „Temperatura este OK” (x)
 „Iohannis este președinte” (y)

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 12


Capacitatea perceptivă

Agent fără capacitate perceptivă Agent omniscient


|E|=1 |E|=|S|

E = mulțimea stărilor diferite percepute


S = mulțimea tuturor stărilor

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 13


Agenți cu stare
 Agentul pornește cu starea
internă it = i0
 Observă starea mediului s
 p = see(s)
 Își actualizează starea internă
 it+1 = next(it, p)
 Selectează o acțiune
 see : S  P
 a = action(it+1)
 next : I x P  I
 I este mulțimea stărilor interne
 Repetă de la observare
 action : I  A

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 14


Arhitecturi de agenți
 La început (până în 1985), aproape toți agenții
proiectați în cadrul cercetărilor de IA au folosit
raționamentul simbolic
 Raționament logic explicit pentru a decide acțiunile
 Problemele legate de raționamentul simbolic au
provocat o reacție împotriva acestei abordări,
mișcarea agenților reactivi (după 1985)
 Din 1990, au fost propuse o serie de alternative:
arhitecturi hibride, care încearcă să combine
avantajele arhitecturilor simbolice și a celor reactive

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 15


Arhitecturi de agenți
 Patru clase principale de arhitecturi:
 Deliberative
 Agenți folosind raționamentul deductiv
 Agenți folosind raționamentul practic
 Reactive
 Hibride

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 16


Arhitecturi de agenți (I)
1. Arhitecturi abstracte
2. Arhitecturi logice
3. MetateM
4. Arhitecturi reactive
5. Arhitectura de subsumare

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 17


Arhitecturi logice
 Abordarea tradițională pentru
construirea de sisteme
inteligente
 Reprezentare simbolică a
mediului și comportamentului
 Formule logice
 Manipulare sintactică a
acestei reprezentări
 Deducții logice sau
demonstrații de teoreme

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 18


Agenți deliberativi
 A delibera = a examina în detaliu, a rezolva,
a soluționa
 Folosesc formule ale logicii predicative de
ordin I
 Exemple:

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 19


Comportamentul
 L = mulțimea  see : S  P
propozițiilor logice de
ordin I  next : D x P  D
 D = (L)  action : D  A
 Starea internă a unui
agent este un element
Δ al lui D
 Notăm
dacă formula  poate fi
dedusă din Δ folosind
doar regulile de
deducție ρ

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 20


Pseudocod

încearcă mai întâi să


găsească o acțiune care
poate fi dedusă din baza
de date Δ

încearcă apoi să
găsească o acțiune
coerentă (care nu este
interzisă explicit)

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 21


Lumea aspiratorului
 Predicatele domeniului:

 Percepte: dirt (murdărie), null


 Acțiuni: forward (un pas înainte), suck (aspiră),
turn (întoarcere la dreapta cu 90°)

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 22


Reguli

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 23


Raționalitate computațională
 engl. “calculative rationality”
 Un program care, dacă s-ar executa infinit de rapid,
ar demonstra un comportament perfect rațional
 Un program de șah cu raționalitate computațională
ar alege mutarea optimă, dar luarea deciziei ar putea
dura un miliard de ani
 Demonstrarea de teoreme este lentă
 Dacă mediul se poate schimba mai repede decât
viteza de decizie a agentului, raționalitatea
computațională este inacceptabilă

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 24


Discuție
 Avantajele arhitecturilor logice
 Semantică simplă, elegantă
 Formalizare foarte bună
 Există multe sisteme de demonstrare automată a teoremelor
 Probleme
 Transformarea stărilor mediului în reprezentare simbolică
 De exemplu extragerea de proprietăți declarative din imagini
 Modele neintuitive, complicate
 Complexitatea computațională

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 25


Arhitecturi de agenți (I)
1. Arhitecturi abstracte
2. Arhitecturi logice
3. MetateM
4. Arhitecturi reactive
5. Arhitectura de subsumare

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 26


Propoziții temporale
 antecedent (despre trecut) 
consecvent (despre prezent și viitor)
 Pe baza informațiilor despre trecut,
acționează în prezent și viitor
 MetateM face distincție între acțiunile
agentului și acțiunile mediului

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 27


Notații

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 28


Definiții temporale

Since: φ𝒮ψ este satisfăcut acum dacă ψ este adevărat la un moment în trecut și φ este adevărat
la orice moment după acel moment

Zince (since slab): φ𝒵ψ este satisfăcut acum dacă (ψ este adevărat la un moment în trecut și
φ este adevărat la orice moment după acel moment) SAU ψ s-a întâmplat întotdeauna în trecut

Until: φ𝒰ψ este satisfăcut acum dacă ψ este adevărat la un moment în viitor și φ este adevărat la
orice moment înainte de acel moment

Unless: φ𝒲ψ este satisfăcut acum dacă (ψ este adevărat la un moment în viitor și φ este
adevărat la orice moment înainte de acel moment) SAU ψ se va întâmpla întotdeauna în viitor

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 29


Definiții temporale
σ este un șir de stări s1, s2, ...
i este indexul de timp („acum”)

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 30


Definiții temporale

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 31


Teorema separației

formulă despre formulă despre


trecut prezent și viitor

Dacă ξi este adevărat la momentul de timp n,


atunci execută ψi

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 32


Exemplul 1: îmbinarea cozilor
 Două cozi la aeroport: cetățeni (1) și străini (2)
 Un singur ghișeu al poliției de frontieră
 b = coada 1 este mai mare decât coada 2
 m1: preia din coada 1
 m2: preia din coada 2
 Reguli:

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 33


Exemplul 2: manager de
resurse
 Dacă o resursă este cerută de un proces,
atunci va trebui la un moment dat alocată
acelui proces
 Dacă resursa nu este cerută, atunci nu
trebuie alocată
 La un moment dat, resursa trebuie alocată cel
mult unui singur proces

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 34


Reguli de execuție

Dacă un proces a cerut resursa la momentul anterior, i se va aloca cândva în viitor


Dacă un proces nu a cerut resursa niciodată (∎¬r1 din definiția zince) SAU la un moment
dat i-a fost alocată și nu a cerut-o atunci (a1 ∧ ¬r1 de după 𝒵) iar din acel moment nu a mai
cerut-o din nou (¬r1 dinaintea lui 𝒵), atunci nu trebuie să-i fie alocată resursa (¬a1)
Dat fiind orice moment anterior, resursa nu poate fi alocată simultan ambelor procese
Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 35
Limbajul MetateM
// The agent that says 'hello' to everyone it knows

type agent;

ability send: metatem.agent.ability.Send;


ability print: metatem.agent.ability.Print;

logging FINE;

ruleblock: {
start => greet ;
greet & in(X,known) => NEXT send(X,hello);
receive(From, Message) => NEXT print("Received message, ", Message, ", from ", From, ".");
}

( http://www.csc.liv.ac.uk/~anthony/metatem.html )

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 36


Alte exemple
 GALATEA (Glider with Autonomous, Logic-based
Agents, TEmporal reasoning and Abduction): o
familie de limbaje pentru modelarea și simularea de
sisteme multi-agent
 Aximo: instrument de verificare a cunoștințelor în
scenarii dinamice multi-agent
 AnyLogic: instrument de modelare și simulare care
include și simulări bazate pe agenți

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 37


Arhitecturi de agenți (I)
1. Arhitecturi abstracte
2. Arhitecturi logice
3. MetateM
4. Arhitecturi reactive
5. Arhitectura de subsumare

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 38


Caracteristici
 Comportamentul este definit de reguli de tipul:
situație  acțiune
 Mai multe comportamente se pot „aprinde”
(engl. “fire”) simultan
 De exemplu regulile CLIPS/Jess sau Jason
 Comportamentele sunt aranjate pe straturi
 Cu cât un strat este mai jos, cu atât are prioritate mai mare
 Straturile inferioare pot inhiba straturile superioare
 Exemplu: dacă i se apropie cuiva o muscă de ochi, închide
ochii din reflex, chiar dacă atunci era concentrat să citească
o carte
Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 39
Comportamentul
 Comportamentul este o pereche (c, a)
 c  P este o condiție, a  A este o acțiune
 Comportamentul se va aprinde dacă:
see(s)  c, cu s  S
 Beh este mulțimea tuturor perechilor (c, a)
 Relație de inhibiție: ≺ ⊆ R x R, cu R ⊆ Beh
 Notație: b1 ≺ b2 dacă (b1, b2)  ≺
 b1 inhibă b2

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 40


Pseudocod

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 41


Exemplu
 Explorarea unei planete și colectarea unor roci
 Reguli:
 1. Dacă detectezi un obstacol, atunci schimbă direcția
 2. Dacă transporți roci și ești la bază, atunci descarcă rocile
 3. Dacă transporți roci și nu ești la bază, atunci mergi în
sensul creșterii gradientului semnalului de la bază
 4. Dacă detectezi o rocă, atunci ridic-o
 5. Dacă (adevărat), atunci mergi aleatoriu
 Ierarhia de comportamente:
 1≺2≺3≺4≺5
 Comportamentul global este emergent

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 42


Cooperare
 Rocile pot fi grupate în anumite locuri
 Agenții lasă urme de particule radioactive
când găsesc roci și se întorc la bază
 Alți agenți le urmează în sensul descrescător
al gradientului semnalului și ridică particule
 Intensitatea urmei scade

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 43


Cooperare
 Noi reguli:
 6. Dacă transporți roci și nu ești la bază, atunci
lasă 2 particule și mergi în sensul creșterii
gradientului semnalului de la bază
 7. Dacă percepi particule atunci ridică 1 particulă
și mergi în sensul descreșterii gradientului
semnalului de la bază
 Ierarhia de comportamente:
 1≺2≺6≺4≺7≺5

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 44


Discuție
 Avantaje
 Simplitate, economie, calcule mai rapide, robustețe, eleganță
 Dezavantaje
 Neavând modele ale mediului, agenții trebuie să aibă suficiente
informații locale. Implicit vor „gândi” pe termen scurt
 Nu este evident cum ar putea învăța agenții din propria experiență
 Emergența implică dificultatea de înțelegere a comportamentului
global
 Nu există o metodologie clară pentru construirea unor astfel de sisteme
 Metoda „încercare și eroare”
 Sunt greu de constuit agenți cu multe straturi de comportament
(de exemplu > 10)
 Dinamica interacțiunilor devine prea complexă
 Posibilă soluție: agenți care evoluează
Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 45
Arhitecturi de agenți (I)
1. Arhitecturi abstracte
2. Arhitecturi logice
3. MetateM
4. Arhitecturi reactive
5. Arhitectura de subsumare

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 46


Arhitectura de subsumare
 engl. “subsumption architecture”
 Propusă de Rodney Brooks în 1986 pentru roboți
 “A Robust Layered Control System for a Mobile Robot”
 Extinsă într-o nouă perspectivă asupra inteligenței
artificiale
 “Intelligence without Reason”
 “Intelligence without Representation”

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 47


Musca și robotul 
 O muscă probabil:  Însă musca probabil:
 Nu își construiește o  Are legături strânse între
descriere 3D a obiectelor senzori și efectori
 Nu raționează asupra  Are modele pre-cablate de
amenințării unui om cu o comportament
paletă sau despre  Are tehnici de navigație
convingerile și scopurile simple
acestuia  Funcționează aproape ca o
 Nu își construiește teorii mașină deterministă
fizice elementare asupra
 Şi totuși se descurcă mai
aterizării pe tavan
bine în lumea reală decât
mulți roboți inteligenți
construiți de om până acum

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 48


Metode anterioare de control
pentru roboți
 Foloseau o abordare „divide-et-impera”
 Percepție (senzori) – modelare – planificare – execuție –
control motor – acțiune (efectori)
 Opinia lui Brooks:
 Inteligența de nivel uman este foarte dificil de implementat
și nu este singurul tip de inteligență
 Abordarea „divide-et-impera” a condus la blocaje în
rezolvarea unor probleme irelevante
 Modelul rezultat nu are robostețe
 Toate subsistemele sunt necesare pentru ca robotul să
funcționeze

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 49


Motivație
 Brooks consideră comportamentul uman doar
aparent rațional
 Acesta ar fi expresia externă a unor comportamente
independente fără control central
 Se urmează calea evolutivă a inteligenței
 Se începe cu o inteligență simplă, mai ușor de implementat
decât inteligența umană
 După asigurarea succesului, modelul se extinde cu niveluri
mai înalte de inteligență
 Model robust deoarece straturile inferioare pot funcționa în
continuare chiar și atunci când straturile superioare eșuează

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 50


Idei de bază
 Comportamentul inteligent:
 Nu necesită reprezentări explicite
 Nu necesită raționamente abstracte (simbolice)
 Emerge din interacțiunea unor comportamente simple
 Raționalitatea necesită un mediu
 Scopul lui Brooks era să dezvolte creaturi artificiale
complete, capabile să acționeze în lumea reală, nu
într-un mediu simplificat

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 51


Arhitectura de subsumare
 Metodologie stratificată pentru sisteme de control al roboților
 Straturile inferioare sunt asemănătoare reflexelor
 Straturile superioare permit atingerea unor scopuri de nivel mai
înalt

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 52


Automate finite augmentate
 Fiecare strat este format din procesoare simple conectate:
automate finite augmentate (augmented finite state machines)
 Automate finite completate cu cronometre

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 53


Aspecte importante ale
automatelor
 Ieșirile sunt funcții simple de intrări și starea internă
 Intrările pot fi suprimate (suppressed)
 Ieșirile pot fi inhibate (inhibited)
 Aceasta permite straturilor superioare să subsumeze
funcțiile straturilor inferioare
 Pentru ca o situație să fie tratată pe un strat superior,
intrarea unui strat inferior este suprimată și acesta nu mai
știe de existența situației
 Straturile inferioare continuă să funcționeze la fel ca
în absența straturilor superioare

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 54


Subsumarea
 Fiecare strat are acces direct la informațiile senzoriale din
mediu
 Fiecare strat are propriul scop
 Straturile lucrează concurent și asincron
 Suprimarea substituie semnalul de intrare al unui automat
dintr-un strat inferior cu semnalul dat de pe un nivel
superior
 Inhibiția elimină semnalul de ieșire al unui automat
dintr-un strat inferior
 Noi straturi pot fi adăugate deasupra unora existente, fără
a fi nevoie de modificarea straturilor inferioare

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 55


Caracteristici
 Nu există o ierarhie clasică a straturilor de tipul
subsistemelor, subrutinelor etc.
 Nu există sincronizare
 Mesajele pot fi pierdute fără notificare
 Trebuie retrimise de mai multe ori
 Straturile funcționează în paralel
 Se poate folosi mediul extern pentru comunicare
 Stările automatelor se schimbă când primesc mesaje
sau când expiră perioada de timp desemnată
 Robotul Herbert: o stare durează maxim 3 secunde

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 56


Roboții lui Brooks
 Allen
 Evită obstacolele și se îndreaptă către o locație
 Herbert
 Găsește cutii de suc și le aduce la locația de start

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 57


Allen

 Stratul 0
 Evită obstacolele, fuge dacă se apropie ceva
 Stratul 1
 Se adaugă deplasarea aleatorie
 Stratul 2
 Se adaugă urmărirea unui obiectiv îndepărtat

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 58


 Stratul 0
 Evită obiecte statice sau în mișcare
 Folosește 12 sonare cu ultrasunete: 12 măsurători pe secundă,
cu zgomot puternic
 Calculează o forță de respingere rezultantă pe baza ponderilor
proporționale cu 1 / d 2
 Acțiuni: stă pe loc sau fuge

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm59


 Stratul 1
 Deplasare cu un unghi aleatoriu, schimbat o dată la 10 secunde
 Direcția aleasă dă o forță de atracție

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm60


Stratul 2
 Asigură explorarea la distanță
 Inhibă mișcarea aleatorie din stratul 1
 Suprimă intrarea în modulul avoid, pentru a injecta
noua comandă de direcție
 pathplan comandă direcția
 integrate asigură actualizările pentru pathplan,
folosind un motor de diferențe: forțează robotul să se
deplaseze în direcția dorită, compensând modificările
date de evitarea obstacolelor

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 61


Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm62
Herbert
 Dispozitive
 Scanner cu laser pentru a găsi cutiile
 Senzori de proximitate cu infraroșu pentru a identifica pereții
 Busolă magnetică pentru a se orienta
 Senzori pe „mână” pentru apucarea cutiilor
 Nu există comunicare directă între straturile interne
 Când se opresc roțile, pornesc senzorii pentru cutii
 Când o cutie este între „degete”, apucă și trage „mâna”
 Reguli diferite înainte și după găsirea unei cutii
 Pe baza condiției de separare a „degetelor”
 Navigare pentru a se întoarce în locația inițială: după ce treci de o
ușă mergând spre sud, întoarce-te la stânga
Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 63
Toto (Mataric)
 Robotul construiește un graf intern, corespunzător
hărții mediului
 Se alocă autonom noduri noi pentru repere noi și se
actualizează relațiile de vecinătate
 Pentru deplasarea la o anumită locație, se produce o
excitație în graful intern a locației scop
 Excitația se răspândește până la locația curentă,
analog cu un plan
 Când robotul se mișcă, se schimbă și reprezentarea
locației

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 64


Aspecte tipice ale arhitecturii
 Sistemele cu subsumare pot face predicții, planuri și
pot avea scopuri, fără reprezentări centralizate,
manipulabile și simbolice
 Nu necesită modele ale lumii reale
 Nu există comunicare de nivel înalt între straturi
 Nu există memorie comună
 Lumea reală este folosită drept model
 Lumea reală este propriul său model
 Acuratețe
 Nu sunt necesare calcule pentru actualizare

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 65


Concluzii
 Arhitecturile logice folosesc reprezentări simbolice bazate pe
logică ale mediului, de exemplu logică predicativă de ordin I
sau logică temporală
 Manipularea acestor cunoștințe se face prin demonstrații automate
de teoreme
 Arhitecturile reactive se bazează pe existența unor
comportamente aranjate pe straturi
 Mai multe comportamente se pot activa simultan atunci când
precondițiile lor permit acest lucru, dar comportamentelor le sunt
atribuite priorități diferite
 Acțiunea aleasă de un agent este dată de comportamentul activ cel
mai prioritar

Florin Leon, Modelarea si analiza sistemelor multi-agent, http://florinleon.byethost24.com/curs_masma.htm 66

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