Algoritmi online Maria Simi, a.a. 2007/08 Problemi di esplorazione Gli agenti per il...

13
Algoritmi online Maria Simi, a.a. 2007/08

Transcript of Algoritmi online Maria Simi, a.a. 2007/08 Problemi di esplorazione Gli agenti per il...

Page 1: Algoritmi online Maria Simi, a.a. 2007/08 Problemi di esplorazione  Gli agenti per il problem-solving assumono:  ambienti deterministici e osservabili.

Algoritmi online

Maria Simi, a.a. 2007/08

Page 2: Algoritmi online Maria Simi, a.a. 2007/08 Problemi di esplorazione  Gli agenti per il problem-solving assumono:  ambienti deterministici e osservabili.

Problemi di esplorazione Gli agenti per il problem-solving

assumono: ambienti deterministici e osservabili il piano generato può essere generato

offline e eseguito senza imprevisti Che cosa succede se rilasciamo queste

assunzioni? Solo lo stato corrente è osservabile, non si

conosce l’effetto delle azioni e il loro costo Gli stati futuri e le azioni che saranno

possibili non sono conosciute a priori

Page 3: Algoritmi online Maria Simi, a.a. 2007/08 Problemi di esplorazione  Gli agenti per il problem-solving assumono:  ambienti deterministici e osservabili.

Algoritmi online

Si devono compiere azioni esplorative Si alternano pianificazione e azione Cosa conosce un agente online …

Le azioni legali nello stato attuale Il costo della mossa c(s1, a, s2) ma dopo averla

eseguita Goal-test(s) La stima della distanza: dal goal: h(s)

Page 4: Algoritmi online Maria Simi, a.a. 2007/08 Problemi di esplorazione  Gli agenti per il problem-solving assumono:  ambienti deterministici e osservabili.

Esempio: Teseo con mappa e senza

Con mappa applicabili tutti gli

algoritmi di pianificazione visti

Senza mappa l'agente non può

pianificare può solo esplorare nel modo più razionale possibile

Ricerca online

h=4 h=3 h=2 h=1

Th=3

h=2 h=1 h=0

h=4 h=3 h=2 h=1

h=5 h=4 h=3 h=2

h=4 h=3 h=2 h=1

Th=3

h=2 h=1 h=0

h=4 h=3 h=2 h=1

h=5 h=4 h=3 h=2

Page 5: Algoritmi online Maria Simi, a.a. 2007/08 Problemi di esplorazione  Gli agenti per il problem-solving assumono:  ambienti deterministici e osservabili.

Assunzione ulteriore

Ambienti esplorabili in maniera sicura Non esistono azioni

irreversibili Diversamente non

si può garantire una soluzione

Page 6: Algoritmi online Maria Simi, a.a. 2007/08 Problemi di esplorazione  Gli agenti per il problem-solving assumono:  ambienti deterministici e osservabili.

Ricerca in profondità online

Gli agenti online ad ogni passo decidono l'azione da fare (non il piano) e la eseguono.

Ricerca in profondità online Un metodo locale Il backtracking significa tornare sui propri

passi È necessario ricordarsi ciò che si è scoperto Esplorazione sistematica delle alternative

Page 7: Algoritmi online Maria Simi, a.a. 2007/08 Problemi di esplorazione  Gli agenti per il problem-solving assumono:  ambienti deterministici e osservabili.

Esempio

Nota: aggiunta di un violo cieco per mostrare backtracking

Sceglie il primo tra (1,1) e (2,2)

In (1, 1) deve tornare indietro

1 2 3 4

1

2

3

4

T

T

T T T

T

T T

T

T

Page 8: Algoritmi online Maria Simi, a.a. 2007/08 Problemi di esplorazione  Gli agenti per il problem-solving assumono:  ambienti deterministici e osservabili.

Algoritmo DF onlinefunction Agente-Online-DFS(s) returns an action

static: risultato, notexp, notback, s- (stato precedente), a- (ultima azione)

if Goal-Test(s) then return stopif s nuovo stato then notexpl[s] AzioniLegali(s) if s- non è null then risultato[a-, s-] s;

notback[s] s-;if notexpl[s] vuoto then

if notbackl[s] vuoto then return stop else a azione per tornare in POP(notback[s])

else a POP(notexpl[s])s- s; return a

Page 9: Algoritmi online Maria Simi, a.a. 2007/08 Problemi di esplorazione  Gli agenti per il problem-solving assumono:  ambienti deterministici e osservabili.

Ricerca euristica online

Nella ricerca online si conosce il valore della funzione euristica una volta esplorato lo stato.

Un algoritmo di tipo Best First non funzionerebbe.

Serve un metodo locale Hill-climbing con random-restart non

praticabile Come sfuggire a minimi locali?

Page 10: Algoritmi online Maria Simi, a.a. 2007/08 Problemi di esplorazione  Gli agenti per il problem-solving assumono:  ambienti deterministici e osservabili.

Due soluzioni Random-walk

si fanno mosse casuali in discesa Apprendimento Real-Time:

esplorando si aggiustano i valori dell'euristica per renderli più realistici.

H: migliore stima fin qui Come si valutano i successori:

Costo-LRTA*(s, a, s', H) = h(s) se s' indefinito H(s') + costo(s,a,s') altrimenti

Page 11: Algoritmi online Maria Simi, a.a. 2007/08 Problemi di esplorazione  Gli agenti per il problem-solving assumono:  ambienti deterministici e osservabili.

Esempio di Real Time Learning A* (LRTA*)

T(h=3)

1 2 3 4

1

2

3

4

T(h=4)

T(h=3)

T(h=2)

T(h=3)

T(h=2)

T(h=1)

T(h=2)

(h=3)

T(h=3)

(h=4)

T(h=2)

T(h=1)

T(h=0)

Page 12: Algoritmi online Maria Simi, a.a. 2007/08 Problemi di esplorazione  Gli agenti per il problem-solving assumono:  ambienti deterministici e osservabili.

LRTA*function Agente-LRTA*(s) returns an actionstatic: risultato, H, s-, a- if Goal-Test(s) then return stop if s nuovo (non in H) then H[s] h[s]1. if s- null

risultato[a-, s-] s H[s-] min Costo-LRTA*(s-, b, risultato[b, s-], H)

2. a un'azione b tale che minimizza Costo-LRTA*(s, b, risultato[b, s], H)

s- s; return ab AzioniLegali(s)

Page 13: Algoritmi online Maria Simi, a.a. 2007/08 Problemi di esplorazione  Gli agenti per il problem-solving assumono:  ambienti deterministici e osservabili.

Considerazioni su LRTA*

LRTA* cerca di simulare A* con un metodo locale: tiene conto del costo delle mosse come può aggiornando al volo la H

Completo in spazi esplorabili in maniera sicura Nel caso pessimo visita tutti gli stati due volte

ma è mediamente più efficiente della profondità online

Non ottimale, a meno di usare una euristica perfetta(non basta una f=g+h con h ammissibile)