2. un agente 竪
sistema che percepisce l'ambiente
esterno (il suo mondo) tramite dei sensori
e agisce su di esso tramite degli attuatori
La scelta dell'azione di un agente in un qualsiasi
istante 竪 funzione della sequenza percettiva (percept
sequence) che l'agente ha accumulato attraverso i
sensori e mai potr dipendere da qualcosa che non
ha mai percepito.
Internamente, la funzione agente di un agente 竪
implementata da un programma agente.
Un programma agente esegue il ciclo:
Agente = architettura + programma agente
Agente: chi era costui?
3. Esempio
aspirapolvere
A B
Sequenza percettiva Azione
[A, pulito] Destra
[A, Sporco] Aspira
[B, pulito] Sinistra
[B, Sporco] Aspira
[A, pulito]
[A, pulito]
Destra
[B, pulito]
[B, pulito]
Sinistra
La sequenza percettiva e la conseguente azione
attuata dall'agente si pu嘆, in genere esprimere
attraverso una tabella che da una parte evidenzia la
sequenza percettiva e dall'altra contiene l'azione
deliberata.
4. Esempio
Agenti umani
Sensori: occhi, orecchie, altri sensi
Attuatori: mani, braccia, gambe, altre parti del corpo
Agenti meccanici
Sensori: videocamera, sensoristica di varia natura
Attuatori: ingranaggi meccanici, motori, etc.
Gli agenti sono ovunque
Termostato
Cellulari
Aspirapolvere
Robot
Alexa Echo
Macchine
Uomini
Etc.
5. Concetto di razionalit
Regola generale
necessario progettare le misure di prestazione di un
agente in base all'effetto che si desidera ottenere
sull'ambiente e non su come si pensa dovrebbe
comportare l'agente
In un dato momento, ci嘆 che 竪 razionale dipende da
quattro fattori:
1. la soglia di prestazione che determina il successo di
un'azione,
2. la conoscenza pregressa dell'agente dell'ambiente in
cui 竪 inserito,
3. le azioni che l'agente pu嘆 effettuare
4. la sequenza percettiva che l'agente possiede per
l'ambiente in cui 竪 inserito
Per ogni possibile sequenza
percettiva un agente
razionale 竪 quello che sceglie
l'azione che massimizzi il
valore di prestazione, ovvero
il successo dell'azione, in
base alla sua conoscenza
pregressa, alla sequenza
percettiva dell'ambiente in
cui 竪 inserito e alle azioni a
sua disposizione
6. Agent task environment
Regola generale
Progettare le misure di prestazione di un
agente in base all'affetto che si desidera
ottenere sull'ambiente e non su come si pensa
dovrebbe comportarsi l'agente
Quando si parla di un agente razionale, si
deve ragionare in termini di task
environment, ovvero del PEAS
dell'agente:
1. Performance = misura di prestazione,
2. Environment = ambiente,
3. Actuators = attuatori,
4. Sensors = sensori
Agente Performance Environment Actuators Sensors
Veicolo a
guida
autonoma
Sicurezza,
Velocit,
Comfort,
Codice della
strada
Strada,
Altri veicoli,
Traffico,
Pedoni
Sterzo,
Acceleratore,
Freni,
Frecce,
Clacson,
Schermo
interfaccia
Telecamere,
GPS,
Sensori stato
motore,
tastiera
Aspirapolvere Efficacia,
Percorrenza
minima,
Battery life,
Sicurezza
Stanza,
Tavoli e sedie,
Tappeti,
Ostacoli
Ruote,
Spazzole di
pulitura
Camera,
Sensori ostacoli,
Sensori per la
polvere,
Etc.
Tutor
interattivo
lingue
Risultati test
studente
Studenti,
Tutors
Visore per
esercizi,
Suggerimenti,
Correzioni
Tastiera
Robot
selezionatore
parti
meccaniche
% pezzi
inseriti nei
contenitori
giusti
Parti
meccaniche
su nastro
trasportatore,
contenitori
Braccio
meccanico
Telecamere,
Sensori di
posizionamento
braccio
meccanico
7. Tipi di ambienti
Completamente osservabile (vs Parzialmente osservabile): i sensori di un agente gli danno accesso allo stato
completo dell'ambiente in ogni momento.
Agente singolo (vs multi-agente): un agente che opera da solo in un ambiente.
Deterministico (vs stocastico): lo stato successivo dell'ambiente 竪 Completamente determinato dallo stato
corrente e dall'azione eseguita dall'agente. (Se l'ambiente 竪 deterministico ad eccezione delle azioni di altri agenti,
allora l'ambiente 竪 strategico)
Episodico (vs. sequenziale): l'esperienza dell'agente 竪 divisa in "episodi" atomici (ciascun episodio consiste
nell'eseguire una singola azione), e la scelta dell'azione in ciascun episodio dipende solo dall'episodio stesso.
Statico (vs dinamico): l'ambiente 竪 invariato mentre un agente sta deliberando. (L'ambiente 竪 semi-dinamico se
l'ambiente stesso non cambia con il passare del tempo ma il punteggio delle prestazioni dell'agente lo fa).
Discreto (vs Continuo): un numero limitato di percezioni e azioni distinte, chiaramente definite. Ad esempio, la
dama 竪 un esempio di un ambiente Discreto, mentre l'auto a guida autonoma si evolve in modo Continuo.
Noto (vs Ignoto): il progettista dell'agente pu嘆 avere o meno conoscenza delle leggi fisiche ambientali. Se
l'ambiente 竪 sconosciuto, l'agente dovr sapere come funziona per decidere.
8. Task environment Osservabile Agenti Deterministico Episodico Statico Discreto
cruciverba Completamente Singolo Deterministico Sequenziale Statico Discreto
Scacchi Completamente Multi Deterministico Sequenziale Semi Discreto
Poker Parzialmente Multi Stocastico Sequenziale Statico Discreto
Veicolo guida
autonoma
Parzialmente Multi Stocastico Sequenziale Dinamico Continuo
Tutor interattivo
lingue
Parzialmente Multi Stocastico Sequenziale Dinamico Discreto
Robot selezione
parti meccaniche
Parzialmente Singolo Stocastico Episodico Dinamico Continuo
Tipi di ambienti: esempi
9. Tipi di Agenti
Agenti reattivi semplici
Agenti reattivi basati su modelli
Agenti basati su obiettivi
Agenti basati sull'utilit
Tutti questi tipi di Agenti si possono ricondurre alla categoria dei learning agents (agenti capaci di apprendere), che
possono migliorare la loro performance e attuare migliori azioni attraverso l'apprendimento.
10. Agenti reattivi semplici
Selezionano un'azione, in base alla
percezione corrente ignorando tutta la
storia percettiva pregressa (es.
aspirapolvere)
Semplici ma limitati
Possono lavorare solo quando l'ambiente (il
suo mondo) 竪 completamente osservabile
Rispondono alla regola condizione-azione
(if la-macchina-davanti-frena then inizia-a-
frenare)
ambiente/mondo
agente
attuatori
sensori
aspetto corrente
del mondo
azione da
eseguire adesso
Regole di
condizione-azione
11. Agenti reattivi basati su modello
Evoluzione degli agenti semplici:
Devono sapere come evolve il mondo
indipendentemente dalle loro azioni
Devono conoscere l'effetto delle loro azioni
sul mondo
Un agente basato su modello tiene traccia
dello stato corrente del mondo mediante un
suo stato interno (che aggiorna
dinamicamente) e sceglie l'azione da
eseguire come un normale agente reattivo
(regole di condizione-azione)
ambiente/mondo
agente
attuatori
sensori
aspetto corrente
del mondo
azione da
eseguire adesso
Regole di
condizione-azione
Cosa fanno le mie
azioni?
Come evolve il
mondo?
Aggiorna stato
12. Agenti reattivi basati su obiettivi (goal)
Evoluzione degli agenti su modello:
Un agente basato su obiettivi, tiene traccia
dello stato dell'ambiente e memorizza un
insieme di obiettivi, quindi sceglie un'azione
che lo porter, prima o poi, a soddisfarli.
ambiente/mondo
agente
attuatori
sensori
aspetto corrente
del mondo
azione da
eseguire adesso
Obiettivi
Cosa fanno le mie
azioni?
Come evolve il
mondo?
Aggiorna stato
Come cambier il mondo
se eseguo l'azione A
13. Agenti reattivi basati sull'utilit
Evoluzione degli agenti su obiettivo:
Un agente basato su utilit, oltre a tener
traccia dello stato dell'ambiente impiega
una funzione di utilit che misura le
preferenze tra i vari stati del mondo.
L'azione prescelta 竪 quella che massimizza
l'utilit attesa, calcolata come media pesata
dei valori di utilit dei diversi stati possibili
per la rispettiva probabilit di verificarsi.
ambiente/mondo
agente
attuatori
sensori
aspetto corrente
del mondo
azione da
eseguire adesso
utilit
Cosa fanno le mie
azioni?
Come evolve il
mondo?
Aggiorna stato
Come cambier il mondo
se eseguo l'azione A
Quanto sar嘆 contento
in uno stato simile
14. Agenti capaci di apprendere (learning agents)
L'apprendimento presenta il vantaggio di permettere
agli agenti di operare in ambienti inizialmente
sconosciuti diventando col tempo pi湛 competitivi.
Un agente capace di apprendere ha quattro
componenti astratte:
1. Elemento di apprendimento (learning element): 竪
responsabile del miglioramento delle azioni
esterne. quello che abbiamo considerato fin qui
come se costituisse l'intero Agente.
2. Elemento esecutivo (performance element): 竪
responsabile della selezione delle azioni esterne
3. Elemento critico (critic element): 竪 quello che a
partire dalle prestazioni correnti dell'agente,
determina se e come modificare l'elemento
esecutivo affinch辿 in futuro si comporti meglio
4. Generatore di problemi (problem generator):
suggerisce azioni che portino ad esperienze nuove
ed esplorative
ambiente/mondo
Learning agent
attuatori
sensori
Generatore di
problemi
elemento di
apprendimento
elemento critico
elemento esecutivo
conoscenza
cambiamenti
feedback
obiettivi di
apprendimento
standard di prestazione
15. Rappresentazione di stati e transizioni
Esistono tre modi in cui i componenti di un agente possono rappresentare l'ambiente abitato dall'agente stesso.
Rappresentazione atomica
Uno stato 竪 una scatola nera
priva di struttura interna.
Ad esempio, trovare un
percorso di guida:
ogni stato 竪 una citt.
Algoritmi AI: ricerca, giochi,
processi decisionali di Markov,
modelli Markov nascosti, ecc.
Rappresentazione fattorizzata
Uno stato 竪 un vettore di
attributi.
Ad esempio, posizione GPS,
quantit di gas nel serbatoio.
Algoritmi AI: soddisfacimento
dei vincoli e reti bayesiane.
Rappresentazione strutturata
Uno stato include oggetti,
ognuno dei quali pu嘆 avere
attributi propri oltre a relazioni
con altri oggetti.
Algoritmi AI: logica del primo
ordine, apprendimento basato
sulla conoscenza, comprensione
del linguaggio naturale.