universita degli studi di modena e reggio emilia facoltà di ingegneria – sede di modena corso di...
TRANSCRIPT
UNIVERSITA’ DEGLI STUDI DI MODENA E REGGIO EMILIA
Facoltà di Ingegneria – Sede di ModenaCorso di Laurea in Ingegneria Informatica
Progetto e sviluppo di un agente hunter per la ricerca e l’archiviazione
di nuove sorgenti informative
Relatore
Chiar.mo Prof. Sonia Bergamaschi
Correlatore
Ing. Maurizio Vincini
Tesi di Laurea di
Enrico Natalini
Anno Accademico 2001 - 2002
MOMIS:MOMIS:MMediator envirediator envirOOnment for nment for MMultiple ultiple IInformation nformation SSourcesources
Obiettivo:Obiettivo: Realizzazione di uno strumento semi-automatico Realizzazione di uno strumento semi-automatico per l’integrazione di sorgenti eterogenee e distribuiteper l’integrazione di sorgenti eterogenee e distribuite
MOMIS:MOMIS:MMediator envirediator envirOOnment for nment for MMultiple ultiple IInformation nformation SSourcesources
Obiettivo:Obiettivo: Realizzazione di uno strumento semi-automatico Realizzazione di uno strumento semi-automatico per l’integrazione di sorgenti eterogenee e distribuiteper l’integrazione di sorgenti eterogenee e distribuite
Approccio adottato:Approccio adottato: semantico semantico ee virtuale virtuale
MOMIS:MOMIS:MMediator envirediator envirOOnment for nment for MMultiple ultiple IInformation nformation SSourcesources
Obiettivo:Obiettivo: Realizzazione di uno strumento semi-automatico Realizzazione di uno strumento semi-automatico per l’integrazione di sorgenti eterogenee e distribuiteper l’integrazione di sorgenti eterogenee e distribuite
Approccio adottato:Approccio adottato: semantico semantico ee virtuale virtuale
Architettura: Architettura: organizzata in tre livelli:organizzata in tre livelli:
- Livello Mediatore- Livello Mediatore
- - Livello Wrapper
- Livello Utente
MOMIS:MOMIS:MMediator envirediator envirOOnment for nment for MMultiple ultiple IInformation nformation SSourcesources
MIKS:MIKS:MMediator Agent for ediator Agent for IIntegration of ntegration of KKnowledge nowledge SSourcesources::
Obiettivo: Obiettivo: Estendere le funzionalità del sistema MOMIS Estendere le funzionalità del sistema MOMIS utilizzando le caratteristiche dei sistemi multi-agenteutilizzando le caratteristiche dei sistemi multi-agente
MIKS:MIKS:MMediator Agent for ediator Agent for IIntegration of ntegration of KKnowledge nowledge SSourcesources::
Obiettivo della tesi:Obiettivo della tesi:
Sviluppo di un agente hunter capace di: Sviluppo di un agente hunter capace di:
- navigare attraverso Internet alla ricerca di - navigare attraverso Internet alla ricerca di sorgenti informative sorgenti informative
- riconoscere le sorgenti utili al sistema MIKS- riconoscere le sorgenti utili al sistema MIKS
- archiviarle mettendole a disposizione del - archiviarle mettendole a disposizione del sistema MIKS sistema MIKS
Organizzazione del progetto:Organizzazione del progetto:
- Studio del concetto di agente intelligente- Studio del concetto di agente intelligente
- Studio dell’ambiente di sviluppo per agenti - Studio dell’ambiente di sviluppo per agenti JADEJADE proposto dal proposto dal TILABTILAB ( ( TTelecom elecom IItalia talia LLab)ab)
- Implementazione di agenti JADE per - Implementazione di agenti JADE per mostrarne caratteristiche e funzionalità mostrarne caratteristiche e funzionalità
- Implementazione di un agente hunter - Implementazione di un agente hunter utilizzabile da sistema MIKS per ricercare utilizzabile da sistema MIKS per ricercare nuove sorgenti informative nuove sorgenti informative
AGENTI:AGENTI:
Entità software autonome intelligenti capaci di muoversi Entità software autonome intelligenti capaci di muoversi in rete, reperire ed elaborare informazioni e collaborare in rete, reperire ed elaborare informazioni e collaborare fra di lorofra di loro
- Autonomia- Autonomia • • Controllo diretto sulle proprie azioni e stato internoControllo diretto sulle proprie azioni e stato interno • • Capacità di comportamenti reattivi e pro-attiviCapacità di comportamenti reattivi e pro-attivi- Mobilità- Mobilità • • Capacità di muoversi da un ambiente ad un altroCapacità di muoversi da un ambiente ad un altro (ad esempio attraverso Internet) verso dati e risorse(ad esempio attraverso Internet) verso dati e risorse- SocialitàSocialità • • Capacità di comunicare, interagire e cooperareCapacità di comunicare, interagire e cooperare • • Utilizzo di linguaggio e protocolli comuniUtilizzo di linguaggio e protocolli comuni
Caratteristiche principali:Caratteristiche principali:
JJava ava AAgent gent DEDEvelopment Frameworkvelopment Framework
Struttura di sviluppo software mirata alla gestione diStruttura di sviluppo software mirata alla gestione diapplicazioni e sistemi multi-agente conformi agli standardapplicazioni e sistemi multi-agente conformi agli standardFIPA ( FIPA ( FFoundation for oundation for IIntelligent ntelligent PPhysical hysical AAgents )gents )
JADE:JADE:
JADE:JADE:JJava ava AAgent gent DEDEvelopment Frameworkvelopment Framework
MESSAGE TRANSPORT PROTOCOL
DF AGENT AMS
AGENT PLATFORM
AMS ( Agent Management System )
- Gestisce il ciclo di vita degli agenti
- Mantiene una descrizione aggiornata della piattaforma
- Controlla le operazioni legate alla mobilità
JADE:JADE:JJava ava AAgent gent DEDEvelopment Frameworkvelopment Framework
DF ( Director Facilitator )
- Servizio di pagine gialle
- Strumenti per semplificare la gestione di agenti
JADE:JADE:JJava ava AAgent gent DEDEvelopment Frameworkvelopment Framework
MTP ( Message Transport Protocol )
- Gestisce lo scambio di messaggi all’interno della piattaforma
- Gestisce lo scambio di messaggi diretti a piattaforme remote
Agente ‘RicercaDescrizione’
- Richiede all’AMS l’elenco degli agenti e lo stato in cui si trovano
- Memorizza gli indirizzi relativi agli agenti presenti sulla piattaforma
- Estrae gli indirizzi disponibili per comunicare con piattaforme remote
JADE:JADE:JJava ava AAgent gent DEDEvelopment Frameworkvelopment Framework
Agente ‘GestioneMobilità’
- Individua la locazione di un agente
- Richiede all’AMS le locazioni disponibili sulla piattaforma
- Sposta l’agente nella locazione desiderata
JADE:JADE:JJava ava AAgent gent DEDEvelopment Frameworkvelopment Framework
JADE:JADE:JJava ava AAgent gent DEDEvelopment Frameworkvelopment Framework
- Si registra all’interno del DF presente nella piattaforma
- Ricerca tra gli agenti esistenti quelli individuati dalla descrizione ‘Hunter’
Agente ‘IndividuaHunter’
Agente per la ricerca e l’archiviazione di nuove Agente per la ricerca e l’archiviazione di nuove sorgenti informativesorgenti informative
- Conserva tutte le caratteristiche generali tipiche degli agenti
- Permette di ricercare attraverso la rete Internet, sorgenti dati interessanti
- Gestisce le informazioni ottenute creando una struttura ad albero gerarchico e conservando un archivio delle ricerche eseguite
- Mette a disposizione dell’utente un’interfaccia grafica per la propria gestione
Richiede come parametri:
- L’URL del sito da analizzare
- Una o più keyword come parametri di ricerca per identificare i siti che contengono informazioni utili
- La modalità della ricerca da svolgere
Agente per la ricerca e l’archiviazione di nuove Agente per la ricerca e l’archiviazione di nuove sorgenti informativesorgenti informative
Agente per la ricerca e l’archiviazione di nuove Agente per la ricerca e l’archiviazione di nuove sorgenti informativesorgenti informative
- Analizza le pagine HTML contenute nel sito ricercando l’esistenza dei parametri di ricerca inseriti
e tutti i riferimenti ad altre pagine del sito
- Traduce i riferimenti in indirizzi assoluti e li memorizza in una lista
- Utilizzando la lista di URL ottenuta naviga attraverso le pagine del sito individuate
- Memorizza le informazioni relative ad ogni sito in un file
- Costruisce la struttura ad albero gerarchico del sito
Interfaccia inserimento parametri
Agente per la ricerca e l’archiviazione di nuove Agente per la ricerca e l’archiviazione di nuove sorgenti informativesorgenti informative
Struttura ad albero gerarchico relativa al sito ‘www.dbgroup.unimo.it’
Agente per la ricerca e l’archiviazione di nuove Agente per la ricerca e l’archiviazione di nuove sorgenti informativesorgenti informative
Archivio delle ricerche eseguite
Agente per la ricerca e l’archiviazione di nuove Agente per la ricerca e l’archiviazione di nuove sorgenti informativesorgenti informative
Note implementativeNote implementative
- Il software è stato implementato presso il dipartimento di Ingegneria dell’Informazione dell’Università di Modena e Reggio Emilia, sede di Modena;
-Sono state scritte circa 3500 linee di codice in linguaggio Java versione 1.3;
-Piattaforma di sviluppo: Sparc20 (Sun) con sistema Solaris SunOS 5.7
- Ambiente di sviluppo per agenti: JADE 1.4
Conclusioni e possibili sviluppi:Conclusioni e possibili sviluppi:
- Efficacia nella ricerca ed integrazione di sorgenti informative
- Possibilità di creare comunità di agenti caratterizzate dal diverso tipo di attività svolte
- Utilizzo del servizio DF per creare “super agenti” dedicati alla ricerca delle informazioni ottenute
da attività di agenti hunter