You are on page 1of 14

Agenti Mobili part.

Introducere
Agentii mobili sunt entitati software autonome care sunt
capabile sa migreze n medii de executie diferite.
Termenul de agent a fost introdus datorita faptului ca
pentru un numar tot mai mare de aplicatii era necesara
existenta unor sisteme care pot decide in mod
independent ceea ce au nevoie in vederea indeplinirii
obiectivelor pentru care au fost proiectate. Aceste
sisteme sunt cunoscute si sub denumirea de sisteme
multiagenti.

Arhitectura agentilor mobili

Comunicarea intre agenti mobili


FIPA - Foundation for Intelligent Physical Agents este o organizatie
internationala dedicate promovarii industriei agentilor inteligenti prin
dezvoltarea specificatiilor care suporta interoperabilitatea intre agenti
si aplicatii bazate pe agenti. Specificatiile se refera la gestiunea
agentilor, limbajele de comunicare intre agenti, formatul mesajelor de
comunicare etc.
Un mesaj ACL (Agent Communication Languages) descrie o stare
dorita intr-un limbaj declarative, bazat pe Speech Act
Theory. ACL gestioneaza propozitii, reguli si actiuni

Acte de comunicare
Informative: - query_if, subscribe, inform, inform_if, confirm,
disconfirm, not_understood.
Distributie taskuri: - request, request_whenever, cancel, agree,
refuse, failure.
Negociere: - cfp, propose, accept_proposal, reject_proposal

JADE - Java Agent Development


Framework
JADE este un framework implementat in Java. Acesta
simplifica implementarea sistemelor multi-agent printr-un
middle-ware care respecta specificarile FIPA si printr-un set
de instrumente care ajuta la fazele de debugging si instalare
Platforma pe care sunt implementati agentii poate fi
distribuita pe mai multe masini ce pot folosi sisteme de
operare diferite, si configuratia poate fi controlata prin
intermediul unei interfete grafice.
Arhitectura comunicatiei ofera o cale eficienta si flexibila de
a trimite mesaje, unde JADE creaza si gestioneaza o coada
de mesaje ACL, private pentru fiecare agent

Platforma JADE
JADE a fost implementat pentru a oferi programatorilor
urmatoare functionalitati de baza gata de a fi utilizate si
usor de adaptat:
Un sistem distribuit populat de agenti, fiecare ruland pe un
thread separat, pe masini diferite, si capabili sa comunice
transparent intre ei.
Transport eficient al mesajelor asincrone printr-un set de APIuri transparent in ceea ce priveste locatiile.
O gestionare simpla dar eficienta a ciclului de viata al
agentilor.
Suport pentru mobilitatea agentilor.
O multime de instrumente grafice pentru facilitarea la

Arhitectura JADE
O platforma JADE este alcatuita din mai multe
containere pentru agenti ce sunt distribuite intr-o retea.
Agentii exista in containere care reprezinta procesul
Java care suporta JADE in timpul executiei si toate
servicile necesare mentinerii si executiei agentilor.
Exista un container special numit main (principal) care
reprezinta punctul de legatura al platformei si este
primul container care a fost lansat in executie, si toate
celelalte containere trebuie sa se inregistreze la un
container principal.

Arhitectura JADE

Arhitectura JADE
Containerul principal are urmatoarele responsabilitati:
Gestionarea tabelei de containere (CT) care contine referinte
la obiecte si adrese de transport ale tuturor containelor ce
apartin platformei.
Gestionarea tabelei global de descrieri ale agentilor (GADT)
ce contine informatii despre toti agentii existenti pe platforma
inclusiv statutul curent si locatia.
Hostarea AMS si DF, cei doi agenti speciali care furnizeaza
serviciile de gestiune agenti si white pages, si respectiv
serviciul yellow pages al platformei.

Consola JADE

In Containerul Principal (Main - Container) se afla:


Cei doi agenti creati: PrimulAgent si respectiv AlDoileaAgent
Trei agenti speciali: AMS si DF care furnizeaza serviciile de gestiune a
agentilor, iar al treilea este agentul JADE RMA este un instrument ce
implementeaza o consola grafica pentru gestiunea sistemului.

Transmiterea mesajelor

PrimulAgent trimite un mesaj de tip inform celui de-al doilea agent avand ca si
continut test.

Receptionarea mesajului

In sectiunea Incoming Messages al agentului se poate citi tipul si


continutul mesajului

You might also like