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

Slides:



Advertisements
Presentazioni simili
Apprendimento per rinforzo
Advertisements

Liste di Interi Esercitazione. Liste Concatenate Tipo di dato utile per memorizzare sequenze di elementi di dimensioni variabile Definizione tipicamente.
Problemi di soddisfacimento di vincoli Maria Simi a.a. 2005/2006.
Ricerca euristica Maria Simi a.a. 2006/ /03/2017
AGENTI CHE RISOLVONO PROBLEMI Ottimizzazione euristica
Generazione di Piani attraverso Grafi di Pianificazione
Time Sharing Il termine “Time Sharing” proviene dall'inglese e significa letteralmente “partizione di tempo”. Questa è una tecnica sviluppatasi negli.
Intelligenza Artificiale Simbolica
Breath-first search Visita in ampiezza di un grafo Algoritmo Esempio
Depth-first search Visita in profondità di un grafo Algoritmo Esempio
Alberi binari di ricerca
Dallalgoritmo minimax allalgoritmo alfa-beta. MINIMAX int minimax(stato, livello) { if((livello == max_livello) || condizione_uscita(stato)) { CAMMINO.
Teoria e Implementazione
Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a
Sistemi basati su conoscenza Metodi di ricerca informata Prof. M.T. PAZIENZA a.a
Camil Demetrescu, Irene Finocchi, Giuseppe F. ItalianoAlgoritmi e strutture dati Copyright © The McGraw - Hill Companies, srl 1 Strutture dati per.
Sistemi basati su conoscenza (agenti intelligenti) Prof. M.T. PAZIENZA a.a
Sistemi basati su conoscenza Ricerca di soluzioni a problemi Prof. M.T. PAZIENZA a.a
Esercizi su alberi binari
1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.
Interrogazioni su un albero binario di ricerca Search(S,k) – dato un insieme S ed un valore chiave k restituisce un puntatore x ad un elemento in S tale.
Algoritmi e Strutture Dati Alberi Binari di Ricerca.
Algoritmi e Strutture Dati (Mod. B)
Algoritmi e Strutture Dati (Mod. B)
QuickSort Quick-Sort(A,s,d) IF s < d THEN q = Partiziona(A,s,d) Quick-Sort(A,s,q-1) Quick-Sort(A,q + 1,d)
Ingegneria della conoscenza e sistemi esperti Dario Bianchi, 1999 Risoluzione di problemi e ricerca.
Intelligenza Artificiale Risoluzione di Problemi
Intelligenza Artificiale
Esercizio 10.* Un cassiere vuole dare un resto di n centesimi di euro usando il minimo numero di monete. a) Descrivere un algoritmo goloso per fare ciò.

Algoritmi e Strutture Dati
Slides Intelligenza Artificiale, Vincenzo Cutello
Alberi binari Definizione della struttura dati: struct tree { };
Cammini minimi da un sorgente
Ordinamento topologico Cammino minimo dalla sorgente
Sistemi basati su conoscenza Gestione della conoscenza Prof. M.T. PAZIENZA a.a
Ricerca di soluzioni a problemi Prof. M.T. PAZIENZA a.a
Ricerca euristica Maria Simi a.a. 2008/2009 Ricerca euristica  La ricerca esaustiva non è praticabile in problemi di complessità esponenziale  Noi.
Capitolo 6 Alberi di ricerca Algoritmi e Strutture Dati.
Camil Demetrescu, Irene Finocchi, Giuseppe F. ItalianoAlgoritmi e strutture dati Copyright © The McGraw - Hill Companies, srl 1 Strutture dati per.
Esercitazione su Vector. Permette di definire collezioni di dati generiche, che sono in grado di memorizzare elementi di ogni sottotipo di Object Definito.
Oltre la ricerca classica Cap 4 – Ricerca locale, ricerca online Maria Simi a.a. 2014/2015.
Algoritmi e Strutture Dati Strutture Dati Elementari.
Sistemi basati su conoscenza Ricerca di soluzioni a problemi Prof. M.T. PAZIENZA a.a
Problemi di soddisfacimento di vincoli Maria Simi a.a. 2008/2009.
Infrastruttura per la gestione distribuita di un sistema di prenotazione Progetto di: Fabio Fabbri Matricola
Sistemi basati su conoscenza Metodi di ricerca informata Prof. M.T. PAZIENZA a.a
Sistemi basati su conoscenza Metodi di ricerca informata Prof. M.T. PAZIENZA a.a
Dipartimento di Ingegneria dell’Informazione Università degli Studi di Parma Intelligenza Artificiale Risoluzione dei Problemi (parte 2) Agostino Poggi.
1 Analisi ammortizzata Si considera il tempo richiesto per eseguire, nel caso pessimo, una intera sequenza di operazioni. Se le operazioni costose sono.
2. Forma estesa (struttura ad albero e matrice dei pagamenti)
Intelligenza Artificiale 1 Gestione della conoscenza lezione 2 Prof. M.T. PAZIENZA a.a
Sistemi basati su conoscenza (agenti intelligenti) Prof. M.T. PAZIENZA a.a
Ricerca locale M. Simi, Algoritmi di ricerca locale  Efficienti in occupazione di memoria: tengono traccia solo dello stato corrente (non.
Dipartimento di Ingegneria dell’Informazione Università degli Studi di Parma Intelligenza Artificiale Risoluzione dei Problemi Agostino Poggi Stefano Cagnoni.
Gli agenti per il problem solving Maria Simi a.a 2007/2008.
Ricerca locale M. Simi, Algoritmi di ricerca locale  Efficienti in occupazione di memoria  tengono traccia solo dello stato corrente (non.
Ricerca euristica Maria Simi a.a. 2005/2006 Ricerca euristica  La ricerca esaustiva non è praticabile in problemi di complessità esponenziale  Noi.
Master Bioinformatica 2002: Visite di Grafi Algoritmi di visita Scopo: visitare tutti i vertici di un grafo per scoprirne proprietà di vario tipo. Alcune.
I giochi con avversario Maria Simi a.a. 2008/2009.

Grafi: rappresentazione e visita
Algoritmi e Strutture Dati
Sistemi e Tecnologie Informatiche Complessità di calcolo.
Ricerca locale Maria Simi Assunzioni sui problemi  Gli algoritmi visti esplorano gli spazi di ricerca alla ricerca di un goal e restituiscono.
Problemi di soddisfacimento di vincoli Maria Simi a.a. 2011/2012.
Agenti risolutori di problemi Risolvere i problemi mediante ricerca Maria Simi a.a 2013/2014.
Ricerca online Maria Simi a.a. 2011/2012 Ambienti più realistici  Gli agenti risolutori di problemi “classici” assumono:  Ambienti completamente osservabili.
Ricerca euristica Maria Simi a.a. 2013/2014 Ricerca euristica  La ricerca esaustiva non è praticabile in problemi di complessità esponenziale  Noi.
Problemi di soddisfacimento di vincoli Maria Simi a.a. 2013/2014.
Transcript della presentazione:

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

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

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) 

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=4h=3h=2h=1 T h=3 h=2h=1h=0 h=4h=3h=2h=1 h=5h=4h=3h=2 h=4h=3h=2h=1 T h=3 h=2h=1h=0 h=4h=3h=2h=1 h=5h=4h=3h=2

Assunzione ulteriore  Ambienti esplorabili in maniera sicura  Non esistono azioni irreversibili  Diversamente non si può garantire una soluzione

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

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 T T T TT T T T T T

Algoritmo DF online function Agente-Online-DFS(s) returns an action static: risultato, notexp, notback, s- ( stato precedente ), a- ( ultima azione) if Goal-Test(s) then return stop if 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

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?

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

Esempio di Real Time Learning A* (LRTA*) T (h=3) 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)

LRTA* function Agente-LRTA*(s) returns an action static: 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 a b  AzioniLegali(s)

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)