La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Presentazioni simili


Presentazione sul tema: ""— Transcript della presentazione:

4 Agenti intelligenti Maria Simi a.a. 2011/2012

5 IA debole vs IA forte IA debole: le macchine posso agire in maniera intelligente? (come se lo fossero) IA forte: le macchine possono veramente pensare? (come fa l’uomo) Cap 26 Aspetti filosofici per approfondimenti

6 In questa lezione (cap 2 AIMA) …
Definire meglio la nozione di agente razionale Diversi tipi di ambienti, le loro caratteristiche che possono influenzare il progetto degli agenti Diverse architetture per gli agenti dalla più semplice alla più complessa. Gli ambienti hanno caratteristiche che influenzano la complessità del progetto di una soluzione adeguata per il problema.

7 Agenti intelligenti: la prospettiva di AIMA
Un agente è una entità che percepisce il suo ambiente mediante dei sensori ed agisce su di esso mediante degli attuatori. Es. Uomo, agente robotico, agente software …

8 Percezioni e azioni Percezione
Sequenza percettiva: storia completa delle percezioni La scelta dell’azione è funzione unicamente della sequenza percettiva Funzione agente: definisce l’azione da compiere per ogni seguenza percettiva. Implementata da un programma agente Percezione: quello che l’agente riceve dall’ambiente in un determinato istante di tempo, input percettivo. Sequenza di percezioni (o percettiva): tutto ciò che l’agente ha percepito nel passato. L’azione è in genere determinata dall’intera sequenza di percezioni dell’agente: Funzione agente: è una funzione dall’insieme delle possibili percezioni alle azioni possibili, idealmente può essere vista come una enorme tabella di corrispondenze ma che tipicamente è realizzata da un programma agente.

9 Agente e ambiente Architettura di programma agente astratta e relazione con l’ ambiente.

10 Agenti razionali Un agente razionale interagisce con il suo ambiente in maniera “efficace” (fa la cosa giusta; la sequenza di stati è desiderabile). Serve un criterio di valutazione oggettivo dell’effetto delle azioni dell’agente (della sequenza di stati dell’ambiente) Agente intelligente interagisce con il suo ambiente in maniera “efficace”, fa transitare il suo ambiente attraverso una serie di stati desiderabili gente razionale: criterio di valutazione delle prestazioni oggettivo (esterno)

11 Valutazione della prestazione
Misura di prestazione Esterna (come vogliamo che il mondo evolva?) Scelta dal progettista a seconda del problema considerando una evoluzione desiderabile del mondo Valutazione su ambienti diversi

12 Agente razionale: definizione
La razionalità è relativa a: la misura di prestazioni le conoscenze pregressa dell’ambiente le percezioni presenti e passate le capacità dell’agente Agente razionale: per ogni sequenza di percezioni compie l’azione che massimizza il valore atteso della misura delle prestazioni, considerando le sue percezioni passate e la sua conoscenza pregressa.

13 Razionalità non onniscienza
Non si pretendono perfezione e capacità predittive, basta massimizzare il risultato atteso Ma potrebbe essere necessarie azioni di acquisizione di informazioni o esplorative Razionalità non onnipotenza Razionalità diverso da omniscenza. Razionalità diverso da onnipotenza. Razionalità come alta aspettativa di successo considerando: Le percezioni passate Le capacità dell’agente Le sue conoscenze “built-in” sul mondo Agente razionale ideale: per ogni sequenza di percezioni compie l’azione che massimizza la sua misura delle prestazioni, basandosi sulle percezioni passate e sulla sua conoscenza predefinita. Le capacità dell'agente possono essere limitate

14 Razionalità e apprendimento
Raramente tutta la conoscenza sull’ambiente può essere fornita “a priori”. L’agente razionale deve essere in grado di modificare il proprio comportamento con l’esperienza (le percezioni passate).

15 Agenti autonomi Agente autonomo: un agente è autonomo nella misura in cui il suo comportamento dipende dalla sua esperienza. Un agente il cui comportamento fosse determinato solo dalla sua conoscenza built-in, sarebbe non autonomo e poco flessibile

16 Ambienti Per definire un problema dobbiamo anche considerare l’ambiente in cui l’agente opera (ambiente operativo) Descrizione PEAS dei problemi Performance|prestazione Environment|ambiente Actuators|attuatori Sensors|sensori

17 Agente guidatore di taxi
Prestazione Ambiente Attuatori Sensori Sicuro, veloce, ligio alla legge, viaggio confortevole, profitti massimi Strada, altri veicoli, pedoni, clienti Sterzo, acceleratore, freni, frecce, clacson, schermo di interfaccia o sintesi vocale Telecamere, sensori a infrarossi e sonar, tachimetro, GPS, contachilometri, acelerometro, sensori sullo stato del motore, tastiera o microfono

18 Formulazione PEAS dei problemi
Problema P E A S Diagnosi medica Diagnosi corretta, cura del paziente Pazienti, ospedale Domande, suggerimenti test, diagnosi Sintomi, Test clinici, risposte paziente Robot “raccoglitore” Dividerle a seconda del tipo Nastro trasportatore Raccogliere le parti e metterle nei cestini Immagini (pixel di varia intensità) Giocatore di calcio Fare più goal dell’avversario Altri giocatori, campo di calcio, porte Dare calci al pallone, correre Locazione pallone altri giocatori, porte Bibliotecario Information broker Insegnante di inglese Agenti software (softbot) e robot Ambienti reali e artificiali Altri esempi

19 Proprietà dell’ambiente-problema
Completamente/parzialmente osservabile Agente singolo/multi-agente Deterministico/stocastico/non deterministico Episodico/sequenziale Statico/dinamico Discreto/continuo Completamente o parzialmente osservabile L’apparato percettivo è in grado di dare una conoscenza completa dell’ambiente o almeno tutto quello che serve a decidere l’azione. Non c’è bisogno di mantenere uno stato del mondo. Un ambiente pùo essere non completamente osservabile a causa di limiti o inaccuratezze dell’apparato sensoriale. Deterministico o stocastico Se lo stato successivo è completamente determinato dallo stato corrente e dall’azione si dice che l’ambiente-problema è deterministico. Es. Scacchi deterministico; tiro in porta non deterministico. Se l’ incertezza è causata dal comportamento di altri agenti l’ ambiente si dice strategico. Briscola? Episodico o sequenziale L’esperienza dell’agente è divisa in episodi atomici indipendenti. La scelta dell’azione non influenza gli episodi futuri e non dipende da quelli passati. In ambienti episodici non c’è bisogno di pianificare. Statico o dinamico Il mondo resta immutato mentre l’agente decide l’azione (statico) oppure può cambiare per effetto di altri agenti o di eventi (dinamico). Si dice semi-dinamico se il mondo non cambia con il passare del tempo ma le prestazioni dell’agente sì (es. scacchi con timer). Discreto o continuo Lo stato, il tempo, le percezioni e le azioni possono avere valori discreti o continui (scacchi vs. guida veicolo). Agente singolo o multi-agente Qui è critico decidere quali sono gli agenti e quali possono essere considerati eventi che accadono nell’ambiente. Un gioco con due avversari è un ambiente multi-agente, ma come devono essere considerati gli altri veicoli nell’ambiente del guidatore? Si può distinguere tra ambiente competitivo e cooperativo. La comunicazione è un elemento importante di razionalità in questo tipo di ambienti. In ambienti competitivi un comportamento stocastico può essere razionale perché impedisce all’avversario di anticipare le mosse.

20 Osservabilità Ambiente completamente osservabile
L’apparato percettivo è in grado di dare una conoscenza completa dell’ambiente o almeno tutto quello che serve a decidere l’azione Non c’è bisogno di mantenere uno stato del mondo Ambiente parzialmente osservabile Sono presenti limiti o inaccuratezze dell’apparato sensoriale.

21 Ambiente singolo/multiagente
Distinzione agente/non agente Il mondo può anche cambiare per eventi, non necessariamente per azioni di agenti. Ambiente multi-agente competitivo Comportamento randomizzato Ambiente multi-agente cooperativo Comunicazione

22 Predicibilità Deterministico Stocastico Non deterministico
Se lo stato successivo è completamente determinato dallo stato corrente e dall’azione. Esempio: scacchi Stocastico Esistono elementi di incertezza con associata probabilità. Esempi: guida, tiro in porta Non deterministico Se gli stati possibili sono equiprobabili Nota: non si considera l’incertezza dovuta ad altri agenti, questo porterebbe a definire l’ ambiente come strategico.

23 Episodico/sequenziale
L’esperienza dell’agente è divisa in episodi atomici indipendenti. In ambienti episodici non c’è bisogno di pianificare. Sequenziale Ogni decisione influenza le successive

24 Statico/dinamico Statico Dinamico Semi-dinamico
il mondo non cambia mentre l’ agente decide l’azione Dinamico tardare equivale a non agire Semi-dinamico L’ambiente non cambia ma la valutazione dell’agente sì. Esempio: Scacchi con timer.

25 Discreto/continuo Possono assumere valori discreti o continui
lo stato: solo un numero finito di stati il tempo le percezioni le azioni La guida del taxi è un problema con stato e tempo continui

26 Noto/ignoto Distinzione riferita allo stato di conoscenza dell’agente
L’agente conosce l’ambiente oppure deve compiere azioni esplorative? Noto diverso da osservabile Ambienti reali: parzialmente osservabili, stocastici, sequenziali, dinamici, continui, multi-agente, ignoti

27 Deterministico/stocastico Episodico/sequenziale
Tipologie di ambiente Osservabile? Deterministico/stocastico Episodico/sequenziale Statico/ dinamico Discreto/continuo Mono/multi-agente? Gioco 15 Osservabile Deterministico Sequenziale Statico Discreto Mono Briscola Scacchi Scacchi con scadenza Sudoku Taxi driver Agenti software (softbot) e robot Ambienti reali e artificiali Altri esempi

28 Simulatore di ambienti
Uno strumento software che si occupa di: generare stimoli per gli agenti raccogliere le azioni in risposta aggiornare lo stato dell’ambiente [attivare altri processi che influenzano l’ambiente] valutare le prestazioni degli agenti

29 Simulatore function Run-Eval-Environment
(state, Update-Fn, agents, Performance-Fn) returns scores local variables: scores (a vector of size = #agents, all 0)  repeat for each agent in agents do Percept[agent]  Get-Percept(agent, state) end Action[agent]  Program[agent](Percept[agent]) state  Update-Fn(actions, agents, state) scores  Performance-Fn(scores, agents, state) until termination(state) return scores

30 Agente = Architettura + Programma
Struttura di un agente Agente = Architettura + Programma Ag: P  Az percezioni azioni Il programma dell’agente implementa la funzione Ag Il programma agente realizza una funzione dall’insieme delle percezioni alle azioni. Data una percezione in ogni momento il programma decide l’azione da compiere.

31 Programma agente function Skeleton-Agent (percept) returns action
static: memory, the agent’s memory of the world memory  UpdateMemory(memory, percept) action  Choose-Best-Action(memory) memory  UpdateMemory(memory, action) return action

32 Agente basato su tabella
La scelta dell’azione è un accesso a una tabella che associa un’azione ad ogni possibile sequenza di percezioni. Problemi: 1.  Per giocare a scacchi tabella con righe! 2.  Difficile da costruire 3.  Nessuna autonomia 4.  Di difficile aggiornamento, apprendimento complesso. Il programma agente potrebbe essere definito da una tabella che per ogni possibile input (sequenza di percezioni) definisce l’azione da compiere. Nota: il problema non è la mancanza di intelligenza.

33 Agenti reattivi semplici
Agiscono “per riflesso” e sono dotati di regole condizione  azione La condizione cattura una serie di situazioni attuali. Vanno bene solo se l’azione può essere decisa solo sulla base delle percezioni attuali e quindi tipicamente richiede che l’ambiente sia completamente osservabile.

34 Agenti reattivi - programma
function Agente-Reattivo-Semplice (percezione) returns azione persistent: regole, un insieme di regole condizione-azione stato  Interpreta-Input(percezione) regola  Regola-Corrispondente(stato, regole) azione  regola.Azione return azione

35 Agenti basati su modello
L’agente contiene anche un modello del mondo: ·      una rappresentazione del mondo ·      conoscenze sull’evoluzione del mondo ·      conoscenze sull’effetto delle azioni sul mondo

36 Agenti basati su modello
function Agente-Basato-su-Modello (percezione) returns azione persistent: stato, una descrizione dello stato corrente modello, conoscenza del mondo regole, un insieme di regole condizione-azione azione, l’azione più recente stato  Aggiorna-Stato(stato, azione, percezione, modello) regola  Regola-Corrispondente(stato, regole) azione  regola.Azione return azione

37 Agenti con obiettivo A volte che cosa è meglio dipende da qual è l'obiettivo da raggiungere (es. da che parte devo girare?). Se l'obiettivo è direttamente raggiungibile ok, altrimenti bisogna pianificare una sequenza di azioni per raggiungere l’obiettivo. Bisogna pensare al futuro. Apparentemente meno efficiente ma più flessibile di un agente con riflesso: se cambiano le condizioni si potrebbe cambiare l'obiettivo e ripianificare; non così con un insieme rigido di regole.

38 Agenti con obiettivo Sono guidati da un obiettivo nella scelta dell’azione A volte l’azione migliore dipende da qual è l'obiettivo da raggiungere (es. da che parte devo girare?). Devono pianificare una sequenza di azioni per raggiungere l’obiettivo. Meno efficienti ma più flessibili di un agente reattivo Se cambiano le condizioni si potrebbe cambiare l'obiettivo e ripianificare; non così con un insieme rigido di regole. Luis Carroll Alice: Would you tell me, please, which way I ought to go from here? The Cat: That depends a good deal on where you want to get to

39 Agenti con valutazione di utilità
Se gli stati obiettivo sono più o meno desiderabili (utili) per l’agente, l’agente deve decidere verso quali di questi vuole raggiungere. La desiderabilità di uno stato obiettivo viene misurata da una funzione di utilità (che associa ad uno stato un numero reale). Inoltre ci potrebbero essere obiettivi in conflitto e l’agente deve decidere quale perseguire. In altri casi alcuni obiettivi sono più facilmente raggiungibili di altri: la funzione di utilità è in grado di pesare la probabilità di successo insieme con l’importanza dell’obiettivo.

40 Agenti con valutazione di utilità
Obiettivi alternativi l’agente deve decidere verso quali di questi muoversi. necessaria una funzione di utilità (che associa ad uno stato obiettivo un numero reale). Obiettivi più facilmente raggiungibili di altri la funzione di utilità tiene conto anche della probabilità di successo: utilità attesa

41 Agenti che apprendono

42 Agenti che apprendono Componente di apprendimento Elemento esecutivo
Produce cambiamenti al programma agente Elemento esecutivo Il programma agente Elemento critico Osserva e da feedback sul comportamento Generatore di problemi Suggerisce nuove situazioni da esplorare

43 Tipi di rappresentazione
Tre modi di rappresentare stati e transizioni tra stati. Atomica: ogni stato e’ indivisibile, non ha struttura interna, è una scatola nera. Se l’ obiettivo è raggiungere uno stato si può pianificare un percorso di azioni che ci portta in quello stato, seza guardarci dentro. Possiamo decrivere uno stato mediante tutto un insieme di caratteristiche rilevanti o feature con relativi valori e questo ci consente di confrontare stati, dare metriche di distanza tra stati … Molti algoritmi importanti si basano su stati fattorizzati, I problemi CSP, e quelli di apprendimento per esempio. Le rappresentazioni strutturate sono ancora più ricche e necessitano di rappresentare oggetti e relazioni tra questi oggetti. Di solito si usano inguaggi di rappresentazione più ricchi basati sulla logica. Rappresentazione atomica Rappresentazione fattorizzata Rappresentazione strutturata

44 Conclusioni Agenti e programmi agente Misure di prestazioni
Classificazione degli ambienti operativi Diverse architetture di complessità crescente per i programmi agente Tutti gli agenti possono migliorarsi con l’apprendimento


Scaricare ppt ""

Presentazioni simili


Annunci Google