Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

34
Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010

Transcript of Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Page 1: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Gestione dei dati e della conoscenza(agenti intelligenti)

M.T. PAZIENZA

a.a. 2009-2010

Page 2: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Agenti

Un agente è qualcosa che percepisce ed agisce in un ambiente, che fa qualcosa relazionandosi con l’ambiente.

• Agenti umani• Agenti robotici• Agenti software

Il concetto di agente è solo uno strumento adatto all’analisi dei sistemi e non una caratterizzazione assoluta che divide il mondo in agenti e non agenti!

Page 3: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Un agente (concetto) è uno strumento adatto all’analisi di sistemi

Page 4: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Agenti

Un agente può essere, per esempio, l’insieme di

• un sistema di calcolo e di attuatori fisici e sensori (robot)

• un sistema esperto ed un umano che fornisce le informazioni (percezioni) al sistema

• un programma che agisce in un ambiente puramente computazionale (info-robot).

Page 5: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Agenti

Un agente intelligente è un sistema che

• agisce intelligentemente; • fa ciò che è appropriato per la situazione e per i suoi

obiettivi, • è flessibile al variare dell’ambiente e degli obiettivi,• eventualmente impara dall’esperienza e fa scelte

appropriate date le sue percezioni (limitate) ed i limiti della capacità computazionale.

Page 6: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Agenti

E’ importante capire i principi che rendono possibile realizzare un comportamento intelligente di un agente sia in un ambiente naturale che artificiale. L’agente intelligente di più immediata definizione è quello che si comporta come un umano.

L’ipotesi principale è che l’agente intelligente sappia ragionare.

L’obiettivo dell’ingegneria della conoscenza è quello di specificare le metodologie per disegnare artefatti intelligenti ed utili, e quindi realizzarli.

Page 7: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Agente logico basato su conoscenza

Parte con una conoscenza generale del mondo e delle proprie azioni

Usa il ragionamento logico per :

1. Mantenere una descrizione del mondo consistente all’arrivo di nuove percezioni

2. Dedurre una sequenza di azioni che porteranno al raggiungimento dei propri obiettivi

Page 8: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Agenti intelligenti

Un agente è una entità in grado di percepire il proprio ambiente attraverso sensori e di agire in quell’ambiente attraverso degli attuatori

Un agente software possiede stringhe di bit al posto delle proprie percezioni e azioni

La nozione di agente è intesa come strumento per l’analisi di sistemi

Page 9: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Progettazione di un agente

Page 10: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Agire razionalmente

Agire razionalmente significa agire:

• per raggiungere i propri obiettivi,

• date le proprie conoscenze,

• in funzione della sequenza di percezioni ricevute,

• date le azioni che si è in grado di compiere.

Le nuove percezioni non influenzano la descrizione (rappresentazione) del mondo dell’agente

Page 11: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Agire razionalmente (2)

Un agente razionale fa la cosa giusta, ovvero quell’azione che procurerà all’agente il maggior successo massimizzando la misura di prestazione attesa

Misura di prestazione (valutare – come e quando – il successo atteso, considerato ciò che è stato percepito).

Page 12: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Descrizione/costruzione di un agente

Corrispondenza tra

sequenze di percezioni ed azioni

Un agente può essere descritto attraverso:• un elenco completo delle azioni che può compiere in

risposta ad ogni possibile sequenza di percezioni

o• la definizione delle corrispondenze (funzione di

corrispondenza) senza dover fornire un elenco esaustivo

Page 13: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Agenti razionali

Un agente è un’entità/funzione che agisce, date alcune percezioni

Un agente razionale ideale si descrive attraverso la specifica della lista di azioni che può compiere in risposta a qualsiasi sequenza possibile di percezioni. (progetto/programma di agente ideale)

Un agente è autonomo se è dotato di capacità di apprendimento (che gli permettono di aggiornare le sue conoscenze iniziali)

APf *:

Page 14: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Agenti razionali reali

Limiti computazionali impediscono di raggiungere la perfetta razionalità

Negli agenti razionali reali esisteranno varie modalità per la modellazione di

Autonomia e capacità di apprendimentoValutazione delle prestazioni

Agente con la migliore prestazione come per un qualunque sistema

Page 15: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Progettazione di un agente

Progettare il programma di un agente significa implementare la funzione corrispondenza dalle percezioni alle azioni all’interno di un ambiente e con prestazioni predefinite

Agente = architettura + programma

Page 16: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Progettazione di un agente

La funzione agente è una descrizione matematica astratta, formale

Il programma agente è una sua implementazione concreta in esecuzione sull’architettura dell’agente

L’architettura (meccanismo di calcolo) fornisce le percezioni al programma, esegue il programma e trasmette agli attuatori le azioni scelte dal programma.

Page 17: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Progettazione di un agente

Prerequisiti:

Conoscenza dettagliata di:

• tutte le percezioni e le possibili azioni conseguenti• ambiente (= il problema di cui l’agente costituisce la

soluzione) per scegliere tra tutte le possibili azioni quelle che saranno applicabili

• misura delle prestazioni (definita a priori per non alterare la valutazione)

• obiettivi (per selezionare/valutare percezioni ed azioni)

Page 18: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Programma di un agente

Schema:

A fronte della conoscenza precedente e delle percezioni provenienti dall’ambiente (che “aggiornano” eventualmente la conoscenza <> incrementalità)

vengono generate delle azioni congruenti i risultati delle “procedure di decisione”.

L’obiettivo e la misura delle prestazioni vengono applicate esternamente all’agente.

Page 19: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Schema di agente (semplice)

Mantiene memoria della sequenza di percezioni (incrementalità)

Si possono definire sistemi ad agenti cooperanti per applicazioni più complesse

Page 20: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Agente basato su tabella

Tabella totalmente e precedentemente specificata

Agente tiene conto della sequenza delle percezioni consultando la tabella

La tabella non viene aggiornata (in quanto totalmente e precedentemente specificata)

Page 21: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Agente basato su tabella

Vantaggi:• Progettazione semplice, completa, efficace

Svantaggi:• Dimensioni sempre crescenti (funzione della complessità

dell’applicazione)• Time-consuming per il progettista• Nessuna autonomia è prevista per l’agente (non necessaria

a causa della totale definizione delle corrispondenze)

In ambiti limitati funzionano bene (ruolo dell’ambiente)

Page 22: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Tipologie di programmi di agente

Agente con riflessi semplici (rispondono alle percezioni)Agenti che tengono conto del mondo (considerano

l’evolversi del mondo circostante)Agenti basati su obiettivi (agiscono per raggiungere i propri

obiettivi)Agenti basati su utilità (cercano di massimizzare le propria

utilità)

Sono agenti specializzati, ovvero ottimizzati rispetto a ciò che vogliamo misurare

Page 23: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Agente con riflessi semplici

regole di produzione if-then-else

Page 24: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Agente con riflessi semplici

Trova la prima regola di produzione in accordo con situazione corrente (definita da percezione in un ambiente completamente osservabile). Compie azione associata.

Cambiando le regole, cambia il tipo di agente.

Page 25: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Agente che tiene conto del mondo

La conoscenza che l’agente ha del mondo (state), di come esso evolve (how…) e di cosa fanno le proprie azioni (what…), si chiama modello del mondo.

Page 26: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Agente che tiene conto del mondo

Trova regola in accordo situazione corrente (definita da percezioni e stato interno)

Compie azione associataAggiorna lo stato del mondo

Page 27: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Agenti basati su obiettivi (goal) / Pianificatori

Conoscere lo stato attualeattuale dell’ambiente non è sufficiente per decidere cosa fareBisogna avere un obiettivo La ricerca di una soluzione e la pianificazione permetteranno di identificare la

sequenza di azioni che mettono in grado un agente di raggiungere i propri obiettivi

Page 28: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Agenti basati su utilitàTeoria delle decisioni

Page 29: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Agenti basati su utilitàTeoria delle decisioni

L’utilità è una funzione predefinita che associa ad uno stato (o sequenza di stati se stiamo misurando l’utilità a lungo termine) dell’agente un numero reale che descrive il grado associato di “felicità”

Uno stato del mondo preferibile ad un altro ha per l’agente una maggiore utilità.

Si definisce una funzione di utilità.

Page 30: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Agenti

Tutti gli agenti possono migliorare le loro prestazioni mediante l’apprendimento.

Per apprendimento di un agente intelligente si intende il processo che modifica ogni suo componente affinché si accordi meglio con l’informazione di feedback disponibile, migliorando così le prestazioni dell’agente.

Page 31: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Agenti ed ambienti

Indipendentemente dal tipo di agente, la natura della sua connessione con l’ambiente è di un unico tipo:

le azioni sono fatte dall’agente sull’ambiente, che a sua volta fornisce percezioni all’agente

Lo stato dell’agente dipende dalle sue percezioni

Lo stato dell’ambiente dipende dalle azioni di ogni singolo agente

Page 32: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Proprietà degli ambienti

Accessibile (osservabile) / Inaccessibile (nonosservabile)

Deterministico / Non deterministico (stocastico)

Episodico / Non episodico (sequenziale)

Statico / DinamicoDiscreto / Continuo

Agenti vengono progettati per classi di ambienti

Page 33: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Tipi di ambienti

Il tipo di ambiente determina fortemente il disegno dell’agente

Il mondo reale è:

Inaccessibile, stocastico, sequenziale dinamico e continuo

Page 34: Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a. 2009-2010.

Argomenti trattati in questa lezione

• Definizione di un agente

• Diverse tipologie di agenti

• Progettazione di un agente

• Ruolo del contesto nella progettazione di un agente