+ All Categories
Home > Documents > Agent UML

Agent UML

Date post: 13-Jun-2015
Category:
Upload: guestb70ba
View: 515 times
Download: 3 times
Share this document with a friend
38
Tesina di Ingegneria del Software 2 Agent AUML e sua modellizzazione di Sistemi Multi Agente di Elisa Benetti AA 2007/2008
Transcript
Page 1: Agent UML

Tesina di Ingegneria del Software 2

Agent AUML e sua modellizzazione di Sistemi

Multi Agente

di Elisa BenettiAA 2007/2008

Page 2: Agent UML

Avvento del paradigma ad Agenti

Approccio top-down: Sistemi software analizzati e progettati attraverso il paradigma ad agenti

Approccio bottom-up: Partendo da linguaggi di programmazione esistenti, li si estende utilizzando il paradigma ad agenti

Page 3: Agent UML

Agente: Caratteristiche

Autonomia: dinamica (proattività: capacità di dire 'go'), deterministica (capacità di dire 'no')

Abilità a comunicareCapacità di cooperazioneCapacità di ragionamentoCapacità di adattamentoSinceritàAgire sempre per il bene del suo proprietario

Page 4: Agent UML

Agente: Tipologie

Collaborative Agents (no apprendimento)Interface Agents (no comunicazione altri agenti)Mobile AgentsInformation/Internet AgentsReactive Agents (no proattività)Hybryd AgentsSmart Agents (agenti intelligenti dotati di

autonomia, collaborazione ed apprendimento)

Page 5: Agent UML

Agenti: Ambienti

Proprietà degli ambienti in cui lavorano:

accessibilità/non accessibilitàdeterminismo/non determinismoepisodicità/non episodicitàstaticità/dinamicitàdiscreto/continuo

Page 6: Agent UML

Sistemi Multi Agente (MAS)

Page 7: Agent UML

Organizzazione di un MAS

Organizzazione verticale:Tra due agenti, uno è sempre identificabile come master e l' altro come slave.In questa configurazione il master assegna i compiti allo slave ed utilizza i risultati di quest' ultimo.

Organizzazione orizzontale:Ogni agente può essere sia master che slave.

Page 8: Agent UML

MAS: Modelli Fisici

BlackboardContract-NetCentralized Multiagent PlanningDeductive Belief ModelBody-Head-MouthChoirMolecolare

Page 9: Agent UML

Strategie di coordinamento e negoziazione (1/6)

Pianificazione Multi-agente:

Page 10: Agent UML

Strategie di coordinamento e negoziazione (2/6)

Contrattazione:

Page 11: Agent UML

Strategie di coordinamento e negoziazione (3/6)

Page 12: Agent UML

Strategie di coordinamento e negoziazione (4/6)

Page 13: Agent UML

Strategie di coordinamento e negoziazione (5/6)

Page 14: Agent UML

Strategie di coordinamento e negoziazione (6/6)

Risoluzione distribuita dei problemi:

Page 15: Agent UML

FIPA (Foundation for Intelligent Phisical Agents)

Le specifiche sono sviluppate con la partecipazione diretta dell' insieme dei membri FIPA.

Stati delle specifiche:PreliminareSperimentaleStandardDisapprovatoObsoleto

Page 16: Agent UML

Categorie delle Specifiche FIPA

Page 17: Agent UML

Agente secondo FIPA

AID (Agent Identifier):

Collezione di coppie parametro/valore che oltre al nome comprende tutti gli indirizzi che indicano dove l' agente sia stato, i resolver (agenti presso cui l' agente è registrato) e altri parametri a discrezione del progettista.

“ Un processo computazionale che implementa le funzionalità di autonomia e di comunicazione di un' applicazione”

Page 18: Agent UML

Agent Platform

AMS:Fornisce un servizio di “white pages” e controlla l'accesso alla piattaformaServizi: Register, Deregister, Search, Modify

DF:Servizio di “yellow pages”.Stessi servizi di AMS

MTS:Servizio di comunicazioneNelle comunicazioni interpiattaforma deve essere iplementato uno dei seguenti protocolli: HTTP,WAP, IIOP

Page 19: Agent UML

Messaggi FIPA-ACL

unico elemento obbligatorio

Esempi: inform, accept, agree,

cancel, propose, refuse

elementi che comunque compaiono

nella maggior parte dei

messaggi

Page 20: Agent UML

Differenze tra Agente ed Oggetto

Page 21: Agent UML

UML: Modello della struttura statica

Diagrammi delle classi

Diagrammi degli oggetti

Diagrammi dei package

Page 22: Agent UML

UML: Modello dinamico

Diagrammi di sequenza

Diagrammi di collaborazione

Diagrammi di attività

Diagrammi di stato

Page 23: Agent UML

UML: Modello Use Case e Modello dell' implementazione

Diagrammi use case

Diagrammi dei componenti

Diagrammi di deployment

Page 24: Agent UML

Limiti UML

Modellazione di messaggi: In un MAS la comunicazione non è sincrona

Modellazione dei protocolli di comunicazione: oltre che tra due o più istanze di classe dev'essere possibile farlo tra due o più ruoli

Modellazione dei ruoli: un agente è più dinamico, al mutare dei ruoli muta anche i servizi offerti

Assegnazione dei ruoli a una specifica classe di agente: non esiste un “diagramma dei ruoli”

Page 25: Agent UML

Agent UML

Principali estensioni: Protocolli di interazione: diagrammi di

sequenza/attività Classi di agenti: diagrammi delle classi Elaborazione interna agli agenti: diagrammi

dinamici Modellamento dei ruoli

Page 26: Agent UML

Diagrammi di protocollo (1/2)

parametri generici (unbound parameters).Per applicare il pattern occorre sostituirli ai loro valori effettivi:

Page 27: Agent UML

Diagrammi di protocollo (2/2)

Relazioni fra atti comunicativi:

Rappresentazione di thread concorrenti:

Page 28: Agent UML

Diagrammi di classe

Rappresentazione nuova: Rappresentazione classica:

Page 29: Agent UML

Elaborazione interna degli agenti(1/2)

Diagrammi di attività:

Page 30: Agent UML

Elaborazione interna degli agenti(2/2)

Diagrammi di stato:

Page 31: Agent UML

Rappresentazione dei ruoli (1/2)

Notazione UML classica:

Page 32: Agent UML

Rappresentazione dei ruoli (2/2)

Notazione AUML:

Page 33: Agent UML

Stereotipi

Page 34: Agent UML

Conclusioni

Allo stato attuale FIPA non sta emettendo nuove specifiche riguardo l' Agent UML, in seguito al

rilascio di UML 2.0 ed altri standard come il SysML rilasciato dall' OMG (Object Management

Group) che comprendono molti dei concetti necessari alla descrizione dei MAS.

Page 35: Agent UML

Gestione eccezioni(Lynch e Rajerdan)

try (seq (par (animate (grasp red#4) :throw exit1) (speak (picking up red)) (textOut (grasp red)) ) (par (animate (drop on green#3) :throw exit2) (speak (dropping on green)) (textOut (drop on green)) ) (speak (ok, what now)) ) (catch exit1 (seq (speak (unable to grasp red)))) (catch exit2 (seq (speak (unable to drop on green)))))

Schedule diagram:

Page 36: Agent UML

Tools(?)

I tools più completi e diffusi, come ad esempio Magicdraw, si basano su UML 2 e sullo standard SysML, ma non contemplano

specifiche FIPA sull' Agent UML.L' unico tool che gestisce perlomeno i diagrammi di protocollo è INGENIAS.

Page 37: Agent UML

INGENIAS (1/2)

package

sub protocol

lifeline

column

agent port

alternative box

alternative row

text note

UML comment

Page 38: Agent UML

INGENIAS (2/2)


Recommended