Università degli Studi di Parma

Slides:



Advertisements
Presentazioni simili
Presentazione della tesi di laurea di Flavio Casadei Della Chiesa Newsletter: un framework per una redazione web.
Advertisements

USABILITÁ Sembra banale, ma….
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA
Interazione Uomo - Macchina
Analisi e progettazione
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità D1 Architetture di rete.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità B1 Introduzione alle basi di dati.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità A1 Introduzione a Java.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità D1 Architetture di rete.
Unità D2 Database nel web. Obiettivi Comprendere il concetto di interfaccia utente Comprendere la struttura e i livelli che compongono unapplicazione.
PHP.
Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica – Nuovo Ordinamento Protocolli.
UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Progetto e sviluppo di.
Roma, Presentazione del sistema ClicLavoro.
SINCRONIZZAZIONE E TRASFERIMENTO VIA WEB DI IMMAGINI E DATI MULTIMEDIALI CON INFORMAZIONI GEOGRAFICHE E RAPPRESENTAZIONI CARTOGRAFICHE Laureando: Mitja.
Basi di Dati prof. A. Longheu
L'open source a scuola... di Paola Travostino.
Il Software: Obiettivi Programmare direttamente la macchina hardware è molto difficile: lutente dovrebbe conoscere lorganizzazione fisica del computer.
Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a
Sistemi basati su conoscenza (agenti intelligenti) Prof. M.T. PAZIENZA a.a
IL PATRIMONIO DI DATI - LE BASI DI DATI. Il patrimonio dei dati Il valore del patrimonio di dati: –Capacità di rispondere alle esigenze informative di.
Apprendimento collaborativo in rete
Struttura dei sistemi operativi (panoramica)
Eredità culturale e nuove tecnologie: La digitalizzazione del libro antico tra accesso e conservazione Padova, febbraio 2000 La biblioteca digitale:
Linguaggi di markup1 LINGUAGGI DI MARKUP. Linguaggi di markup2 Documenti su Internet Internet permette (tra laltro) di accedere a documenti remoti In.
Data mining for e-commerce sites
Sistemi Operativi GESTIONE DEI PROCESSI.
Virtual Learning Environments (i. e
WOA 2003 Una piattaforma per lo sviluppo di applicazioni multi-agente Boccalatte - Gozzi - Grosso 10/09/2003.
SARAH Shop Assistant in Reti Ad-Hoc Marco Montali.
M.A.E.A.I. Mobile Agent and Enterprise Architecture Integration Il gestore delle politiche Valerio Siri Reti di Calcolatori LS Docente: Antonio Corradi.
KAPPAELLE 2008 Roberto Pirrone Università degli Studi Palermo
Modulo 7 – reti informatiche u.d. 2 (syllabus – )
INTRODUZIONE l sistema operativo è il primo software che lutente utilizza quando accende il computer; 1)Viene caricato nella memoria RAM con loperazione.
Università Politecnica delle Marche
CONOSCERE E UTILIZZARE LA COMUNICAZIONE AUMENTATIVA ALTERNATIVA
U N INFRASTRUTTURA DI SUPPORTO PER SERVIZI DI FILE HOSTING Matteo Corvaro Matricola Corso di Reti di Calcolatori LS – Prof. A. Corradi A.A.
Tesi di laurea Progettazione ed implementazione di un sistema di supporto al ramp management basato su architettura multiagente Anno Accademico 2008/2009.
Non solo Gestione Documentale Day "Apparecchiature di elaborazione testi prossima uscita vedrà 'l'inizio del ufficio senza carta …" 1975.
Il modello di riferimento OSI
Servizi Grid ed agenti mobili : un ambiente di sviluppo e delivering
Il World Wide Web Lidea innovativa del WWW è che esso combina tre importanti e ben definite tecnologie informatiche: Documenti di tipo Ipertesto. Sono.
Alla fine degli anni quaranta nasceva il mito del cervello elettronico, e tutte le attività connesse allutilizzo del computer venivano indicate tramite.
Reti di calcolatori LS Manni Tiziano  IT e nuovi scenari applicativi …  … portabilità dei dati …  … condivisione dati …  … disponibilità.
Robotica Lezione 6. Paradigma Gerarchico Il paradigma gerarchico, altrimenti detto knowledge-based, procede top-down dalla definizione del compito assegnato.
Creato da Riccardo Nuzzone
INTERFACCE Schede elettroniche che permettono al calcolatore di comunicare con le periferiche, che possono essere progettate e costruite in modo molto.
MRS: an Introduction © A. D’Angelo Multi Robot Systems: an Introduction Antonio D’Angelo.
Tecnologie Informatiche ed Elettroniche per le Produzioni Animali (corso TIE) CORSO LAUREA MAGISTRALE IN SCIENZE E TECNOLOGIE DELLE PRODUZIONI ANIMALI.
Intelligenza Artificiale Metodologie di ragionamento Prof. M.T. PAZIENZA a.a
TW Asp - Active Server Pages Nicola Gessa. TW Nicola Gessa Introduzione n Con l’acronimo ASP (Active Server Pages) si identifica NON un linguaggio di.
MCSA Mobile Code System Architecture Infrastruttura a supporto della code mobility Pierfrancesco Felicioni Reti di Calcolatori L.S. 2005/2006.
Supporto per la replicazione attiva di servizi Progetto per il corso di Reti di Calcolatori LS Montanari Mirko Matr:
Sistemi basati su conoscenza (agenti intelligenti) Prof. M.T. PAZIENZA a.a
Zito Daniela Dora Anno accademico Reti di Calcolatori L-S
Sistemi di elaborazione dell’informazione Modulo 3 -Protocolli applicativi Unità didattica 5 -Amministrazione remota Ernesto Damiani Lezione 1 – Gestione.
MASeC: un’infrastruttura ad agenti mobili per l’e-commerce Diego Ruotolo Università degli studi di Bologna, A.A
SnippetSearch Database di snippet bilanciato e replicato di Gianluigi Salvi Reti di calcolatori LS – Prof. A.Corradi.
Tecnologie della lingua Human Language Technology (HLT)
1 FORMA-N è una combinazione di processi di coordinamento prevalentemente non gerarchici e di strutture organizzative basate sull’integrazione per linee.
Informazione e Informatica - presentazione dei concetti di base -
Perché le TIC nella Didattica
ECDL European Computer Driving Licence
Le basi di dati.
I sistemi operativi Funzioni principali e caratteristiche.
Unified Modeling Language. –un linguaggio (e notazione) universale, per rappresentare qualunque tipo di sistema software –uno standard OMG (Object Management.
PPT- Postecert PEC – 05/2009 Postecert Posta Elettronica Certificata.
Interazione Persona Computer prova di progetto Gruppo: IO Componenti: Carlo Solimando Sito analizzato:
LIFELONG LEARNING = APPRENDIMENTO PERMANENTE Colui che crede di essere qualcosa ha smesso di diventare qualcosa.
DDBMS Distributed database system. DDB Una base di dati distribuita è una collezione di dati che appartengono logicamente allo stesso sistema informativo.
Transcript della presentazione:

Università degli Studi di Parma Sistemi ad agenti Agostino Poggi

Cosa è un agente? Un agente è un sistema computazionale che può vivere in ambienti dinamici e complessi; ha dei sensi che gli permettono di percepire l’ambiente e, in particolare, di interagire con i suoi simili e con gli umani; agisce autonomamente soddisfando i suoi obiettivi e eseguendo i compiti per cui è stato progettato.

Perché servono gli agenti? Il computer non è più uno strumento per specialisti, ma uno strumento di massa, infatti: molte operazioni di uso comune sono sempre più basate sul computer o potrebbero essere migliorate con l’uso del computer, ma: molti utenti non sono in grado di sfruttare i vantaggi del computer; molti utenti non sono in grado di utilizzare un computer; molti utenti vogliono utilizzare liberamente un computer.

Perché servono gli agenti? l’informazione è ormai la risorsa più importa per ogni tipo di attività, i computer sono sicuramente lo strumento più adatto per accedervi, ma l’operazione non è semplice per: la quantità di informazione accessibile; la dinamicità del inserimento e della modifica dell’informazione; la strutturazione eterogenea e spesso molto soggettiva dell’informazione.

Perché servono gli agenti? Esistono migliaia di prodotti software che forniscono una grande varietà di informazioni e servizi. il lavoro di un utente è spesso basato sull’uso combinato di più prodotti. questo lavoro può essere facilitato se questi prodotti sono in grado di interoperare cioè di scambiarsi informazioni e/o servizi, ma ciò e quasi sempre impossibile per l’eterogeneità dei prodotti dovuta a: sono sviluppati da persone diverse; sono sviluppati in periodi diversi; sono sviluppati con strumenti diversi; sono spesso modificati.

Perché servono gli agenti? Gli agenti possono semplificare l’interazione dell’utente con il computer e quindi facilitarne la diffusione in tutti i settori di applicazione. In particolare, gli agenti possono: fornire una guida e un aiuto nell’esecuzione delle operazioni; adeguare il sistema al gusto, all’abilità dell’utente; eseguire automaticamente sequenze di operazioni ripetitive; nascondere l’eterogeneità dell’informazione e dei prodotti.

Attività miliari : Agent0 Agent0 può considerarsi il primo linguaggio ad agenti sviluppato da Shoham nei primi anni `90. I maggiori contributi di questo lavoro sono: l’introduzione del concetto di programmazione orientata agli agenti; l’introduzione di un primo linguaggio di comunicazione per gli agenti; l’uso delle speech acts come base di questo linguaggio di comunicazione.

Attività miliari: DARPA Knowledge Sharing Effort È un progetto sponsorizzato dall’agenzia americana per i progetti di ricerca avanzata il cui scopo è quello di sviluppare tecnologie per facilitare la condivisione e lo scambio di conoscenza tra sistemi anche eterogenei. I maggiori contributi di questo lavoro sono: la realizzazione di un linguaggio completo per la comunicazione ad agenti, KQML (Knowledge Query Manipulation Language); la realizzazione di un formato per lo scambio di conoscenza tra sistemi eterogenei KIF (Knowledge Interchange Format); il loro utilizzo combinato in sistemi basati su agenti.

Attività miliari: Telescript È il primo linguaggio di programmazione commerciale basato sugli agenti sviluppato dalla General Magic nel 1994. I maggiori contributi di questo lavoro oltre a quello di essere il primo linguaggio commerciale sono: l’uso della mobilità del codice in alternativa alle remote procedure call; lo studio e la presentazione di alcune soluzioni per la gestione della sicurezza in sistemi ad agenti distribuiti.

Proprietà di un agente Un sistema computazionale per essere considerato un agente deve avere le seguenti proprietà: autonomia reattività intraprendenza. abilità sociale adattabilità mobilità

Proprietà di un agente Un agente è autonomo, cioè ha controllo diretto sulle proprie azioni e sul suo stato interno. Un agente è reattivo, cioè è capace di percepire l’ambiente e di reagire per tempo ai suoi stimoli. Un agente è intraprendente, cioè è capace di mostrare comportamenti mirati alla soddisfazione dei suoi obiettivi e di prendere l’iniziativa.

Proprietà di un agente Un agente ha abilità sociale, cioè è capace di interagire con degli altri agenti per coordinare il loro operato e per negoziare risorse e attività. Il coordinamento permette: la risoluzione dei conflitti fra gli agenti; la realizzazione di compiti comuni. La negoziazione permette: lo scambio di risorse e attività. L’abilità sociale di un agente è possibile grazie a: uso di un linguaggio di comunicazione ad agente comune; uso di strategie di coordinamento e negoziazione.

Linguaggio di comunicazione ad agente Un linguaggio per la comunicazione ad agenti dovrebbe avere le seguenti proprietà: esprimere i diversi atti linguistici (informare, richiedere, …); essere indipendente dal protocollo di comunicazione utilizzato; essere indifferente al contenuto e al formato dell’informazione; essere comprensibile da tutti gli altri agenti. Messaggio Contenuto Comunicazione

Linguaggio di comunicazione ad agente: FIPA ACL

Linguaggio di comunicazione ad agente: FIPA ACL Un agente che comprende il linguaggio ACL potrà provare a soddisfare un messaggio solo se: capisce il linguaggio del contenuto; capisce l’ontologia a cui si riferisce il contenuto. Tuttavia: degli agenti detti mediator o facilitator possono mediare l’interazione tra agenti che operano con linguaggi del contenuto diversi; degli agenti detti ontology server possono: offrire le ontologie necessarie a soddisfare un messaggio; trasformare le componenti di una ontologia nelle componenti di un’altra ontologia.

Strategie di coordinamento e negoziazione Servono a fondere gli agenti in un gruppo di individui operanti in modo coerente: per evitare il caos durante eventuali conflitti di interesse tra due o più agenti; usufruire delle diverse abilità degli agenti; sincronizzare le attività degli agenti. L’uso di una o di un altra strategia dipende principalmente dal tipo di organizzazione: gerarchica; ad autorità strutturata; a mercato; a comunità.

Strategie di coordinamento e negoziazione: pianificazione multi-agente

Strategie di coordinamento e negoziazione: pianificazione multi-agente È una organizzazione completamente master-slave: il master: definisce i diversi piani parziali; invia i piani a un insieme di agenti (slave) che possono eseguire questi piani; ogni slave: esegue il suo piani; invia il risultato; compone i risultati.

Strategie di coordinamento e negoziazione: contrattazione

Strategie di coordinamento e negoziazione: contrattazione È una organizzazione parzialmente master-slave Ad esempio in una rete di contrattazione: un banditore annuncia un compito ad un insieme di possibili contraenti; ogni possibile contraente può candidarsi presentando anche le sue credenziali; il banditore sceglie un contraente; il contraente può accettare o rifiutare il compito; il banditore può licenziare il contraente; il contraente può inviare un rapporto sull’esecuzione del compito.

Strategie di coordinamento e negoziazione: risoluzione distribuita dei problemi

Strategie di coordinamento e negoziazione: risoluzione distribuita dei problemi È una organizzazione completamente democratica. Ad esempio con il metodo dei piani parziali globali: ogni agente: definisce un piano locale; invia il piano locale agli altri agenti coinvolti nel piano; riceve i piani locali degli altri agenti; costruisce un piano parziale globale; e ciclicamente: invia il piano parziale globale agli altri agenti; riceve i piani parziali globali degli altri agenti; modifica il suo piano parziale globale; finché il piano inviato non è uguale ai ricevuti.

Strategie di coordinamento e negoziazione: un esempio

Realizzazione di sistemi ad agenti: Scelta dell’architetture Esistono tre tipi di architetture: deliberative; reattive; ibride. Una architettura deliberata richiede che l’agente abbia un esplicito modello simbolico del mondo. L’agente agisce tramite ragionamento logico. Una architettura reattiva evita la necessità che l’agente abbia un esplicito modello simbolico del mondo e un sistema di ragionamento. L’agente agisce combinando le routine attivate in risposta agli stimoli esterni.

Realizzazione di sistemi ad agenti: l’architettura BDI Una architettura BDI si basa su tre componenti: Belief: informazioni che l’agente ha sul mondo; Desire: obiettivi che l’agente è interessato a raggiugere; Intention: obiettivi che l’agente può correntemente perseguire. Un agente BDI: continua ad acquisire informazioni dal mondo esterno; ragiona su quali obiettivi poter puntare; esegue le azioni atte a raggiungerle.

Realizzazione di sistemi ad agenti: scelta del linguaggio Un linguaggio di programmazione è solo uno strumento per realizzare un agente. Ma: un agente può inseguire diversi obiettivi contemporaneamente; la comunicazione tra agenti avviene attraverso lo scambio di messaggi; non esiste conoscenza in comune se non quella scambiata con i messaggi. Un agente è una estensione di un oggetto.

Realizzazione di sistemi ad agenti: scelta del linguaggio

Realizzazione di sistemi ad agenti: seguire uno standard Per poter interoperare con sistemi sviluppati da altre aziende o da altre organizzazioni, è necessario seguire degli standard. Esistono varie organizzazioni interessate alla definizione di standard per le tecnologie ad agenti: Agent Society; Foundation for Intelligent Physical Agents; Internet Engineering Task Force; Object Management Group; WWW Consortium.

Realizzazione di sistemi ad agenti: lo standard FIPA La Foundation for Intelligent Physical Agents (FIPA) è una associazione internazionale non-profit di aziende il cui scopo è produrre le specifiche per una tecnologia ad agenti che possa divenire uno standard. In particolare, FIPA è in corso di specificare: Agent management ; Agent communication language; Agent/software integration; Human/Agent Interaction; Agent Security; Agent Mobility; Ontology Service.

Realizzazione di sistemi ad agenti: la piattaforma FIPA

Realizzazione di sistemi ad agenti: JADE Ambiente di sviluppo di sistemi multi-agenti in Java le cui proprietà sono: distribuzione degli agenti di un sistema su diversi calcolatori; uso di agenti leggeri multi-tasking; sviluppo di piattaforme conformi allo standard FIPA; registrazione degli agenti trasparente al programmatore; offre interfacce grafiche per la gestione e lo sviluppo dei sistemi; uso di IIOP per connettersi ad altri sistemi standard FIPA.

Realizzazione di sistemi ad agenti: JADE

Realizzazione di sistemi ad agenti: JADE

Realizzazione di sistemi ad agenti: JADE

Applicazioni Gli agenti sono già utilizzati per un vasto insieme di applicazioni: per il recupero e il filtraggio delle informazioni; per la gestione di agende, meeting; per il mercato elettronico; per la gestione di servizi on demand; per la gestione di reti; per l’automazione di processi.

Applicazioni: un sistema per video on demand

Applicazioni: un sistema per video on demand

Applicazioni: un sistema per il controllo di braccio robotico