WOA 2003 Una piattaforma per lo sviluppo di applicazioni multi-agente Boccalatte - Gozzi - Grosso...

15
WOA 2003 Una piattaforma per lo sviluppo di applicazioni multi-agente Boccalatte - Gozzi - Grosso 10/09/2003

Transcript of WOA 2003 Una piattaforma per lo sviluppo di applicazioni multi-agente Boccalatte - Gozzi - Grosso...

Page 1: WOA 2003 Una piattaforma per lo sviluppo di applicazioni multi-agente Boccalatte - Gozzi - Grosso 10/09/2003.

WOA 2003

Una piattaforma per lo sviluppo di applicazioni

multi-agente

Boccalatte - Gozzi - Grosso

10/09/2003

Page 2: WOA 2003 Una piattaforma per lo sviluppo di applicazioni multi-agente Boccalatte - Gozzi - Grosso 10/09/2003.

2

WOA 10-09-2003

Agent Service

Agent Service

• Fornire un’infrastruttura software in grado di offrire soluzioni efficienti ai comuni problemi che si riscontrano nella programmazione di sistemi multi-agente

Definizione del modello di agente e sua implementazione

Realizzazione di una piattaforma ad agenti (Agent Service)

Page 3: WOA 2003 Una piattaforma per lo sviluppo di applicazioni multi-agente Boccalatte - Gozzi - Grosso 10/09/2003.

3

WOA 10-09-2003

Agent Service

• Problematiche della programmazione orientata agli agenti– Gestione della comunità di agenti

Ambiente concorrente (schedulazione, sincronizzazione)Localizzazione e comunicazionePersistenza

MAS e Agenti software

Page 4: WOA 2003 Una piattaforma per lo sviluppo di applicazioni multi-agente Boccalatte - Gozzi - Grosso 10/09/2003.

4

WOA 10-09-2003

Agent Service

CLI e C# • Common Language Infrastructure

– .Net, Rotor, Mono, portable.Net

• Standard ECMA– Common Language Infrastructure - ECMA-335 – C# Language Specifications - ECMA-334

• Common Language Runtime – Threading system– Remoting– Autenticazione, Sicurezza, Integrità dei tipi– Application Domain

Page 5: WOA 2003 Una piattaforma per lo sviluppo di applicazioni multi-agente Boccalatte - Gozzi - Grosso 10/09/2003.

5

WOA 10-09-2003

Agent Service

Il progetto della piattaforma Agent Service

• L’architettura della piattaforma

• Il modello di agente

• La schedulazione delle attività degli agenti

• La libreria Agent Service

• I servizi di comunicazione

Page 6: WOA 2003 Una piattaforma per lo sviluppo di applicazioni multi-agente Boccalatte - Gozzi - Grosso 10/09/2003.

6

WOA 10-09-2003

Agent Service

L’architettura della piattaforma

AgentAgentAgent

ManagementSystem

AgentManagement

System

DirectoryFacilitatorDirectoryFacilitator

Message Transport SystemMessage Transport System

FIPA

Page 7: WOA 2003 Una piattaforma per lo sviluppo di applicazioni multi-agente Boccalatte - Gozzi - Grosso 10/09/2003.

7

WOA 10-09-2003

Agent Service

Il modello di agente• Isolamento

– Autonomia degli agenti

• Comportamenti concorrenti– L’agente è multi-comportamento

• Funzionalità– Gestione dello stato degli agenti– Capacità ad accedere ai servizi della piattaforma– Interazioni con componenti esterni non ad agenti

(es.DBMS)

Page 8: WOA 2003 Una piattaforma per lo sviluppo di applicazioni multi-agente Boccalatte - Gozzi - Grosso 10/09/2003.

8

WOA 10-09-2003

Agent Service

Scheduling• Application Domain

– Il CLR consente l'esecuzione di applicazioni multiple all'interno di un singolo processo

– Forniscono in esecuzione barriere per l'isolamento dei dati, dei tipi, dell'autenticazione …

Intra-process ma garantiscono isolamento

Page 9: WOA 2003 Una piattaforma per lo sviluppo di applicazioni multi-agente Boccalatte - Gozzi - Grosso 10/09/2003.

9

WOA 10-09-2003

Agent Service

Agent Service-Agente• Knowledge

– Strutture dati condivise– Accesso concorrente,

transazionale– Deadlock avoidance– Persistenza

• Behaviour– Attività propria dell’agente– Esecuzione concorrente– Accesso controllato alle

Knowledge– Accesso ai componenti di

servizio

Page 10: WOA 2003 Una piattaforma per lo sviluppo di applicazioni multi-agente Boccalatte - Gozzi - Grosso 10/09/2003.

10

WOA 10-09-2003

Agent Service

Agent Service-DOMAgent

Platform

Behaviour - The base abstract class representing a behaviour ConversationBehaviour - The behaviour class which deal with messaging Scheduler - The class, one per agent, managing the behaviours’ life cycle

Knowledge - The base abstract class representing a knowledge KnowledgeItem - The class representing a generic knowledge item composed by

ID, type, and instance value KnowledgeManager - The class managing the knowledge and granting its

persistence and consistency

MTS - The class providing themessage transport service

AgentMessage, MessageBody,MessageEnvelope - Classesinvolved in the agent messagedefinition

ConversationManager - Theclass dealing with messages’delivering in order of thebehavior that owns theconversation

DF - The class providing the agentdirectory service

ServiceDescription, SearchConstraint -Classes for the yellow pages service

AMS - The class providing the agentmanagement service

AgentDescription - Agent description forwhite pages service

Behaviour

AMS

DF

MTS

Knowledge

Agent - The real Agent class, managingbehaviors' activity, Knowledges, and theaccess to the platform services

AgentTemplate - The base abstract class foruser defined software agents

AgentPersistent - The class containing agentinformation which have to be persistent

AID - The class defining the agent identifier AgentState - The class representing the agent

state

Platform - The class representing theabstraction of the agent platform, providinggeneral services and logic container to agents

PlatformDescription - The class representingthe FIPA description of the agent platform

PlatformPersistent - The class containingplatform state and configuration informationwhich have to be persistent

Page 11: WOA 2003 Una piattaforma per lo sviluppo di applicazioni multi-agente Boccalatte - Gozzi - Grosso 10/09/2003.

11

WOA 10-09-2003

Agent Service

Implementazione Agente

+Inizialize()+Ending()

-behaviourList-knowledgeList

AgentTemplate

+Initialize()+Ending()+Methods()

-know1-behav1-attributes

MyAgent

+Body()

Behaviour

+Body()+Methods()

-knowledge-attributes

MyBehaviour

+AddItem()

-itemList

Knowledge

+Constructor()

-knowledgeItem

MyKnowledge

Page 12: WOA 2003 Una piattaforma per lo sviluppo di applicazioni multi-agente Boccalatte - Gozzi - Grosso 10/09/2003.

12

WOA 10-09-2003

Agent Service

Processo di attivazione dell’agente

AgentTemplate

AssemblyBehaviourTypes

Application Domain

Agent Instance

AgentService Platform

Assembly

Assembly

KnowldgeType1

KnowldgeType2

Platform Interface

Page 13: WOA 2003 Una piattaforma per lo sviluppo di applicazioni multi-agente Boccalatte - Gozzi - Grosso 10/09/2003.

13

WOA 10-09-2003

Agent Service

Directory Facilitator

Agents

Active Directory

AgentService

DF Agent• Registrazione, modifica

e cancellazione della descrizione del servizio

• Ricerca

• Active Directory– Platform – Agent

Page 14: WOA 2003 Una piattaforma per lo sviluppo di applicazioni multi-agente Boccalatte - Gozzi - Grosso 10/09/2003.

14

WOA 10-09-2003

Agent Service

Message Transport Service• Scambio di messaggi• Filtri sui messaggi• Messaggio

• Agente– Coda di messaggi– Conversation Manager

Agent1Queue

MessageDelivery

MessageQueue

MTS Agent

Agent2Queue

AgentNQueue

...

?

Page 15: WOA 2003 Una piattaforma per lo sviluppo di applicazioni multi-agente Boccalatte - Gozzi - Grosso 10/09/2003.

15

WOA 10-09-2003

Agent Service

• Portabilità• FIPA ACL• Servizio Windows – Autenticazione Utente/Agente• Strumenti di amministrazione e sviluppo

– Integrazione con Servizi Web– Tool grafico per generare protocolli di interazione (AUML) – …

• Libreria di Agenti, Knowledge, Behaviour

Sviluppi