MODULO 1 Linguaggi di Programmazione (Complementi) 1 IMPLEMENTAZIONE DEL SISTEMA MULTI-AGENTE ABACO CON LA PIATTAFORMA RTP.

Slides:



Advertisements
Presentazioni simili
Le forze ed i loro effetti
Advertisements

Informatica II – Basi di Dati (08/09) – Parte 1
Meccanismi di IPC Problemi classici di IPC
Sistema per la gestione del
/ fax
Corsi per il personale Bicocca-Insubria
Java Enterprise Edition (JEE)
File System Cos’è un File System File e Directory
1 Astrazioni sui dati : Specifica ed Implementazione di Tipi di Dato Astratti in Java.
Gestione del processore
1 la competenza alfabetica della popolazione italiana CEDE distribuzione percentuale per livelli.
1 Il punto di vista Un sistema è una parte del mondo che una persona o un gruppo di persone, durante un certo intervallo di tempo, sceglie di considerare.
1 Tavolo del Patto per la crescita intelligente, sostenibile e inclusiva Il ricorso agli ammortizzatori sociali nei territori colpiti dagli eventi sismici.
1 Area Comunicazione e Sviluppo Web09/10/2003Sito Web Provincia di Torino Provincia di Torino Area Relazioni e Comunicazione 1 01/12/03 Portale della Provincia.
DISEGNO TECNICO INDUSTRIALE
Marketing MARKETING DEL TURISMO Facoltà di Scienze Politiche e
1 Istruzioni, algoritmi, linguaggi. 2 Algoritmo per il calcolo delle radici reali di unequazione di 2 o grado Data lequazione ax 2 +bx+c=0, quali sono.
Reaching Definitions. Tino CortesiTecniche di Analisi di Programmi 2 Reaching definitions Dato un punto del programma, quali sono i comandi di assegnamento.
1 9: Progettazione Architetturale Obiettivo: stabilire la struttura globale di un sistema software Descriveremo diversi tipi di modello di architettura,
1 14. Verifica e Validazione Come assicurarsi che il software corrisponda alle necessità dellutente? Introdurremo i concetti di verifica e validazione.
Sistemi basati su conoscenza (agenti intelligenti) Prof. M.T. PAZIENZA a.a
Sistemi Informativi e Sistemi ERP
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Puntatori Marco D. Santambrogio – Ver. aggiornata al 21 Marzo 2013.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Lab 2 – Info B Marco D. Santambrogio – Riccardo Cattaneo –
Corso di Informatica (Basi di Dati)
1 Corso di Informatica (Programmazione) Lezione 4 (24 ottobre 2008) Architettura del calcolatore: la macchina di Von Neumann.
Corso di Informatica (Programmazione)
1 Corso di Informatica (Programmazione) Raffaella Rizzi DISCO Dipartimento di Informatica Sistemistica e Comunicazione Edificio U14 - primo piano - stanza.
eliana minicozzi linguaggi1a.a lezione2
1 Anatomia di una pagina Un insieme di pagine web hanno generalmente una parte invariante (o poco): header, navigazione, footer una parte variabile: contenuti.
Introduzione ai PLC.
CONTROLLO DI SUPPLY CHAIN MEDIANTE TECNICHE H-INFINITO E NEGOZIAZIONE
DHTML: Modello degli Eventi 1. 2 Sommario Introduzione Evento onclick Evento onload Gestione errori con onerror Gestione mouse con levento onmousemove.
Concetti introduttivi
Strutture di controllo in C -- Flow Chart --
Dipartimento di Economia
Analisi di Immagini e Dati Biologici
La struttura organizzativa e informativa del controllo
1 Packet Manager Sistema di gestione di pacchetti software per il progetto dell'esame di Reti di Calcolatori LS Progetto realizzato da Fabio Parisini.
19 Lezione 21/5/04 Composizione dell'immagine 1 COMPOSIZIONE DELLIMMAGINE.
Sviluppo di un modulo di interscambio di dati sanitari per teleconsulto: il caso dell'ospedale di Jirapa.
La nuova Intranet della Provincia di Ferrara e l’innovazione dei processi interni Ludovica Baraldi Bologna, 25 maggio 2006.
Test Reti Informatiche A cura di Gaetano Vergara Se clicchi sulla risposta GIUSTA passi alla domanda successiva Se clicchi sulla risposta ERRATA passi.
Scheda Ente Ente Privato Ente Pubblico. 2ROL - Richieste On Line.
1 SOSTEGNO PSICOLOGICO SCUOLE DELLAQUILA. 2 Aiuto ai docenti in qualità di persone. L obiettivo è quello di sostenere e contenere lo stato emotivo personale.
1 Quale e-learning per lintegrazione dei sistemi e lo sviluppo della qualità Marianna Forleo Area Sperimentazione Formativa ISFOL.
Roma, 20 febbraio 2006 PROGETTO CONTENZIOSO. Simulazione pratica della gestione - mediante il sistema Workflow del contenzioso tributario - di un ricorso.
Introduzione alla programmazione Object Oriented
Bando Arti Sceniche. Per poter procedere è indispensabile aprire il testo del Bando 2ROL - Richieste On Line.
1 Questionario di soddisfazione ATA - a. sc. 2008/09 Il questionario è stato somministrato nel mese di aprile Sono stati restituiti 29 questionari.
1101 = x 10 x 10 x x 10 x = CORRISPONDENZE
File system distribuito transazionale con replicazione
14 marzo 2002 Avvisi:.
Bando di Residenza Cap Scheda ENTE 3ROL - Richieste On Line.
1Piero Scotto - C14. Finalità del corso Programma Materiale Requisiti Spendibilità 2Piero Scotto - C14.
Pippo.
Teoria e Metodologia del movimento umano
Bando Pittori e Scultori in Piemonte alla metà del ‘700
12/03//02 1 Dichiarazione OnLine di cambio di abitazione Compilazione guidata dei moduli Ricezione via della ricevuta di invio Ricezione via .
lun mar mer gio ven SAB DOM FEBBRAIO.
1 PerfectFit06 Sistema di personalizzazione dei contenuti per gli scavi archeologici di Ercolano Candidato: Vincenzo Scognamiglio Relatore: Prof. Ernesto.
Realizzazione di un sito internet per l’informazione scientifica e la formazione della popolazione sulle problematiche sanitarie derivanti dall’utilizzo.
Programmazione ad oggetti
SISR-QUALITÀ UN MODELLO DI QUALITÀ PER I SITI WEB fonte prof Polillo.
1 Esercitazione Sistemi distribuiti: sistemi che risisedono su più calcolatori interconnessi da una rete di comunicazione Algoritmi distribuiti: programmi.
IL GIOCO DEL PORTIERE CASISTICA. Caso n. 1 Il portiere nella seguente azione NON commette infrazioni.
Mobile Agent and Enterprise Architecture Integration Il gestore della mobilità degli agenti Raffaelli Massimo matricola
Transcript della presentazione:

MODULO 1 Linguaggi di Programmazione (Complementi) 1 IMPLEMENTAZIONE DEL SISTEMA MULTI-AGENTE ABACO CON LA PIATTAFORMA RTP

MODULO 1 Linguaggi di Programmazione (Complementi)2 ABACO: elementi base ABACO è unarchittettura concettuale Requisiti per implementare ABACO RTP: introduzione Contenuto lezione IMPLEMENTAZIONE DEL SISTEMA MULTI-AGENTE ABACO CON LA PIATTAFORMA RTP

MODULO 1 Linguaggi di Programmazione (Complementi)3 Implementazione di ABACO con RTP Agenti ABACO con RTP Comunicazione tra agenti La strategia per gestire i comportamenti Un esempio Contenuto lezione IMPLEMENTAZIONE DEL SISTEMA MULTI-AGENTE ABACO CON LA PIATTAFORMA RTP

MODULO 1 Linguaggi di Programmazione (Complementi)4 Considerazioni per sviluppi futuri Il linguaggio ACL Larchitettura Demo implementazione corrente Contenuto lezione IMPLEMENTAZIONE DEL SISTEMA MULTI-AGENTE ABACO CON LA PIATTAFORMA RTP

MODULO 1 Linguaggi di Programmazione (Complementi)5 è stata definita come unarchitettura multi- agente i cui componenti sono agenti reattivi che utilizzano un linguaggio comune (ACL). á è stata concepita per supportare il coordinamento di attivitá svolte da attori (umani) ABACO (Agent-Based Architecture for Cooperation) ABACO: ELEMENTI BASE

MODULO 1 Linguaggi di Programmazione (Complementi)6 localitá localitá interazione interazione capacitá di percepire lambiente capacitá di percepire lambiente La composizione di agenti da origine al meccanismo di coordinamento al meccanismo di coordinamento Il Comportamento globale di tale meccanismo emerge da: interazioni locali + reazione a stimoli dallambiente Agenti ABACO Caratteristiche: ABACO: ELEMENTI BASE

MODULO 1 Linguaggi di Programmazione (Complementi)7 Agenti ABACO Struttura: Working memory attribute value script local databehavior internal state script ABACO: ELEMENTI BASE

MODULO 1 Linguaggi di Programmazione (Complementi)8 ACL (Agent Communication Language) ABACO: ELEMENTI BASE * ; * ::= * | behavior ::= * | new-behavior: ::= tell ( [{ *}]) | ask ( [{ *}]) | create ( * [{ *}]) | define ( * [{ *}]) ::= + | + ::= all ( ) | anyof ( ) ::= send to : ::= | ::= | ; ::= [IF ] | ::= + ::= [IF ] | [IF ] //

MODULO 1 Linguaggi di Programmazione (Complementi)9 ABACO È UNARCHITTETTURA CONCETTUALE ABACO è unarchitettura concettuale Non fa riferimento ad alcuna piattaforma esistente Ricercare quale piattaforma concreta può essere utilizzata per limplementazione

MODULO 1 Linguaggi di Programmazione (Complementi)10 REQUISITI PER IMPLEMENTARE ABACO Requisiti per implementare ABACO Supportare flessibilità che rifletta complessità di supportare il coordinamento tra le persone: Dinamicità della topologia Dinamicità delle interazioni tra agenti Sviluppo incrementale

MODULO 1 Linguaggi di Programmazione (Complementi)11 Scelto piattaforma RTP (Real Time Performer) Paradigma component-connector Altamente distribuita Definizione dinamica della topologia Supporto per interazioni dinamiche tra agenti REQUISITI PER IMPLEMENTARE ABACO

MODULO 1 Linguaggi di Programmazione (Complementi)12 RTP: INTRODUZIONE RTP (Real Time Performer) Elementi messi a disposizione dalla piattaforma: Performers: componenti computazionali passive Projectos: componenti che consentono scambio di comunicazioni tra Performers Topologists: componenti che definiscono Performers e Projectors Strategists: forniscono politiche su come e quando le componenti interagiscono Engine:motore del sistema, quando attivo le componenti possono interagire.

MODULO 1 Linguaggi di Programmazione (Complementi)13 RTP: INTRODUZIONE RTP (Real Time Performer) Un esempio di uso di RTP un sistema di monitoraggio ambientale in cui diversi sensori (Fs i ) leggono dei valori (SAMPLE) dallambiente, li passano ad una centralina (Monitor) che li elabora (COMPUTE) e li passa ad un sistema centrale (Central System)

MODULO 1 Linguaggi di Programmazione (Complementi)14 RTP: INTRODUZIONE SAMPLE COMPUTE PRESENT SYNC Topologist CREATE Strategist add request(SAMPLE,FS1) commandperformer Engine get request

MODULO 1 Linguaggi di Programmazione (Complementi)15 IMPLEMENTAZIONE DI ABACO CON RTP Implementare ABACO con RTP Mappare gli elementi costitutivi di ABACO AGENTI (ed interazioni tra) In termini di elementi costitutivi di RTP Performer, Strategist, Topologist, Projector, Engine,... Cosa vuol dire:

MODULO 1 Linguaggi di Programmazione (Complementi)16 IMPLEMENTAZIONE DI ABACO CON RTP Implementare ABACO con RTP In particolare per quel che riguarda i comportamenti ABACO RTP Agenti comportamenti (ACL) Componenti comandi (1 o +) Classi metodi

MODULO 1 Linguaggi di Programmazione (Complementi)17 IMPLEMENTAZIONE DI ABACO CON RTP Implementare ABACO con RTP COME?

MODULO 1 Linguaggi di Programmazione (Complementi)18 AGENTI ABACO CON RTP Agenti ABACO in termini di RTP Agente= Agente Strategist Topologist Engine Performer Trace Stato Comportamenti Input port Output port Local port Ogni Agente: può essere creato dinamicamente da un altro agente può modificare dinamicamente i propri comportamenti e il proprio stato può modificare dinamicamente i comportamenti e lo stato di altri agenti può essere definito in modo incrementale

MODULO 1 Linguaggi di Programmazione (Complementi)19 La comunicazione avviene attraverso i messaggi composti da primitiva, parametri e destinatario La comunicazione avviene attraverso i messaggi composti da primitiva, parametri e destinatario Ogni agente pu comunicare con altri agenti attraverso un projector che collega la propria porta di Output con la porta di Input dellagente a cui destinato il messaggio Ogni agente può comunicare con altri agenti attraverso un projector che collega la propria porta di Output con la porta di Input dellagente a cui è destinato il messaggio Comunicazione tra Agenti Agente A OutIn Agente B OutInPj Primitiva: CREAAGENTE Parametri: Nome-AgenteC Parametri: Nome-AgenteC Tipo -IAgent Destinatario:NomeAgente Destinatario:NomeAgente Messaggio COMUNICAZIONE TRA AGENTI

MODULO 1 Linguaggi di Programmazione (Complementi)20 La Strategia LA STRATEGIA PER GESTIRE I COMPORTAMENTI StrategistTrace Engine Off On COPIAAZIONEPerformer MATCHMESSAGGIOPerformer Performer Input messaggio Topologist MessageList messaggio Output Comportamenti Messaggio reazione Local reazione ActionList reazione Reazione.primitivaPerformer

MODULO 1 Linguaggi di Programmazione (Complementi)21 Un messaggio da inviare ad un altro agente: questo verrá copiato sulla porta di Output Un messaggio da inviare ad un altro agente: questo verrá copiato sulla porta di Output Unazione locale o di sistema, come aggiornare attributi o creare agenti: questa verrá copiata sulla porta locale Unazione locale o di sistema, come aggiornare attributi o creare agenti: questa verrá copiata sulla porta locale Reazioni LA STRATEGIA PER GESTIRE I COMPORTAMENTI MessaggioReazione Messaggio Azione locale (da eseguire) MessaggioMessaggio (da inviare) La reazione ad un messaggio ricevuto puo essere:

MODULO 1 Linguaggi di Programmazione (Complementi)22 MessaggioReazione AGGIUNGICOMPORTAMENTO AGGIUNGICOMPORTAMENTO CREATE CREAAGENTE CREAAGENTE ASK TELL DEFINE AGGIUNGIATTRIBUTO Ogni Agente e in grado di: Aggiornare i propri comportamenti e quelli di altri Agenti Aggiornare i propri comportamenti e quelli di altri Agenti Creare altri Agenti Creare altri Agenti Comunicare con altri Agenti Comunicare con altri Agenti Aggiornare e aggiungere attributi propri e di altri Agenti Aggiornare e aggiungere attributi propri e di altri Agenti Funzionalita dellAgente LA STRATEGIA PER GESTIRE I COMPORTAMENTI

MODULO 1 Linguaggi di Programmazione (Complementi)23 E il meccanismo che permette ad ogni agente che riceve un messaggio del quale non destinatario sulla propria porta di Input di connettersi al destinatario tramite projector e recapitare il messaggio E il meccanismo che permette ad ogni agente che riceve un messaggio del quale non è destinatario sulla propria porta di Input di connettersi al destinatario tramite projector e recapitare il messaggio Il meccanismo di Forward LA STRATEGIA PER GESTIRE I COMPORTAMENTI Agente A Pj OutputInput Agente B InputOutput Messaggio per Agente B

MODULO 1 Linguaggi di Programmazione (Complementi)24 Ogni componente computazionale (Performers, Projectors, Topologists) di ogni agente deve essere battezzato sul NameServer. Ogni componente computazionale (Performers, Projectors, Topologists) di ogni agente deve essere battezzato sul NameServer. Ogni componente battezzato visibile dagli altri componenti del sistema. Ogni componente battezzato è visibile dagli altri componenti del sistema. Il NameServer LA STRATEGIA PER GESTIRE I COMPORTAMENTI NameServer Rif#PerformerNomeAgente Rif#TopologistNomeAgenteTopologist Rif#ProjectorNomeAgenteOut_NomeAgenteIN

MODULO 1 Linguaggi di Programmazione (Complementi)25 Esempio (Inizializzazione e Clonazione di un Agente) UN ESEMPIO Agente A InOut Messaggio Primitiva: Parametri: Parametri: Dest.: Dest.: Mess=CREATE<nome,tipo> Reaz= CREAAGENTE Reaz= CREAAGENTE AGGIUNGICOMPORTAMENTO AgenteA Messaggio Primitiva: Parametri: Parametri: Dest.: Dest.: Nome=Agente B Tipo=AgentClass CREATE AgenteA Agente B InOut Messaggio Primitiva: Parametri: Parametri: Dest.: Dest.: Mess=ASK Mess=ASK Reaz=TELL Reaz=TELL AGGIUNGICOMPORTAMENTO AgenteA Pj

MODULO 1 Linguaggi di Programmazione (Complementi)26 Il linguaggio ACL Larchitettura Considerazioni per sviluppi futuri CONSIDERAZIONI PER SVILUPPI FUTURI

MODULO 1 Linguaggi di Programmazione (Complementi)27 ACL (Agent Communication Language) IL LINGUAGGIO ACL * ; * ::= * | behavior ::= * | new-behavior: ::= tell ( [{ *}]) | ask ( [{ *}]) | create ( * [{ *}]) | define ( * [{ *}]) ::= + | + ::= all ( ) | anyof ( ) ::= send to : ::= | ::= | ; ::= [IF ] | ::= + ::= [IF ] | [IF ] //

MODULO 1 Linguaggi di Programmazione (Complementi)28 Semplificazioni implementazione corrente: IL LINGUAGGIO ACL * ::= * | behavior ::= * | new-behavior: ::= tell ( [{ *}]) | ask ( [{ *}]) | create ( * [{ *}]) | define ( * [{ *}]) ::= send to : | ::= ::= + ::= La sintassi dellACL è stata semplificata come mostrato in tabella

MODULO 1 Linguaggi di Programmazione (Complementi)29 LARCHITETTURA

MODULO 1 Linguaggi di Programmazione (Complementi)30 Semplificazioni implementazione corrente: LARCHITETTURA Si è considerato un unico livello (senza distinguere tra applicazione e sistema); Si è considerato un unico livello (senza distinguere tra applicazione e sistema); Tutti gli agenti sono dello stesso tipo, non esistono differenze tra agenti utente, di sistema o interfaccia; ogni agente costituisce unentità capace di connettersi ad altri agenti, di processare i messaggi che riceve e di assumere i comportamenti adeguati. Tutti gli agenti sono dello stesso tipo, non esistono differenze tra agenti utente, di sistema o interfaccia; ogni agente costituisce unentità capace di connettersi ad altri agenti, di processare i messaggi che riceve e di assumere i comportamenti adeguati. La comunicazione avviene in modo diretto, un agente A può mandare un messaggio allagente B utilizzando un Projector senza bisogno di alcun agente interfaccia. Questo è possibile in quanto i nostri agenti hanno la capacità di redirezionare i messaggi ricevuti indirizzandoli allagente destinatario senza che vengano elaborati (forward) La comunicazione avviene in modo diretto, un agente A può mandare un messaggio allagente B utilizzando un Projector senza bisogno di alcun agente interfaccia. Questo è possibile in quanto i nostri agenti hanno la capacità di redirezionare i messaggi ricevuti indirizzandoli allagente destinatario senza che vengano elaborati (forward)

MODULO 1 Linguaggi di Programmazione (Complementi)31 Demo implementazione corrente IMPLEMENTAZIONE DEL SISTEMA MULTI-AGENTE ABACO CON LA PIATTAFORMA RTP