2. Forma estesa (struttura ad albero e matrice dei pagamenti)

Slides:



Advertisements
Presentazioni simili
Game Playing Intelligenza Artificiale - Game Playing.
Advertisements

Problemi di soddisfacimento di vincoli Maria Simi a.a. 2005/2006.
Le forme di mercato: oligopolio e concorrenza monopolistica
Teoria dei giochi Eliminazione iterata delle strategie strettamente dominate Il diritto di proprietà.
Il Dilemma del Prigioniero
Elementi di Teoria dei giochi.
3. Negoziazione e interazioni strategiche La teoria dei giochi
Chiara Mocenni - Sistemi di Supporto alle Decisioni I – aa Sistemi di Supporto alle Decisioni I Lezione 2 Chiara Mocenni Corso di laurea L1.
Alberi binari di ricerca
Game Playing Intelligenza Artificiale - Game Playing.
Dallalgoritmo minimax allalgoritmo alfa-beta. MINIMAX int minimax(stato, livello) { if((livello == max_livello) || condizione_uscita(stato)) { CAMMINO.
Introduzione alla Teoria dei giochi
Camil Demetrescu, Irene Finocchi, Giuseppe F. ItalianoAlgoritmi e strutture dati Copyright © The McGraw - Hill Companies, srl 1 Ordinamenti ottimi.
Sistemi basati su conoscenza Metodi di ricerca informata Prof. M.T. PAZIENZA a.a
Algoritmi Paralleli e Distribuiti a.a. 2008/09 Lezione del 29/05/2009 Prof. ssa ROSSELLA PETRESCHI a cura del Dott. SAVERIO CAMINITI.
U V U V (a) |cfc|=2 prima e dopo (b) |cfc|=2 prima e |cfc|=1 dopo
Algoritmi e strutture Dati - Lezione 7
Algoritmi e Strutture Dati Alberi Binari di Ricerca.
Algoritmi e Strutture Dati (Mod. B)
Algoritmi e Strutture Dati (Mod. A)
Algoritmi e Strutture Dati
CAPITOLO 19 L’avversione al rischio e l’utilità attesa
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
Teoria dei giochi Università degli Studi di Parma Parma,
Colludere o non colludere? Il dilemma del prigioniero
Radix-Sort(A,d) // A[i] = cd...c2c1
Algoritmi e Strutture Dati
Intelligenza Artificiale
INFORMATICA PER IL COMMERCIO ELETTRONICO
Heap Ordinamento e code di priorità Ugo de Liguoro.
Slides di Teoria dei Giochi, Vincenzo Cutello
Problemi con soddisfacimento dei vincoli
Slides Intelligenza Artificiale, Vincenzo Cutello
3. Forma Strategica e ricerca dell’equilibrio
TOKEN ECONOMY LA TOKEN ECONOMY E’ UN VERO E PROPRIO CONTRATTO EDUCATIVO TRA INSEGNANTE E STUDENTE LA TOKEN, utilissima.
Teoria dei giochi e comportamento strategico
Automatismi Scacchistici
Apertura Cos’è ed a cosa serve.
Algoritmi online Maria Simi, a.a. 2007/08 Problemi di esplorazione  Gli agenti per il problem-solving assumono:  ambienti deterministici e osservabili.
Problemi di soddisfacimento di vincoli Maria Simi a.a. 2008/2009.
1 Interpretazione astratta: un approccio sistematico all’analisi statica.
Algoritmi e strutture Dati - Lezione 7 1 Algoritmi di ordinamento ottimali L’algoritmo Merge-Sort ha complessità O(n log(n))  Algoritmo di ordinamento.
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.
Intelligenza Artificiale 1 Gestione della conoscenza lezione 2 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.
Intelligenza Artificiale Risoluzione di Problemi
Dipartimento di Ingegneria dell’Informazione Università degli Studi di Parma Intelligenza Artificiale Risoluzione dei Problemi (parte 4) Agostino Poggi.
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.
I giochi con avversario Maria Simi a.a. 2008/2009.
Giochiamo a tris. Un campo di esperienza per il problem-solving: i giochi di interazione strategica.

Ideare un Piano di Gioco Parte Terza: Il Centro Aperto.
Ideare un Piano di Gioco Parte Prima. Perché ideare un Piano di gioco?
Ideare un Piano di Gioco Parte Seconda. Come si inventa un Piano di Gioco?
Ricerca locale Maria Simi Assunzioni sui problemi  Gli algoritmi visti esplorano gli spazi di ricerca alla ricerca di un goal e restituiscono.
Algoritmi e Strutture Dati HeapSort. Select Sort: intuizioni L’algoritmo Select-Sort  scandisce tutti gli elementi dell’array a partire dall’ultimo elemento.
Problemi di soddisfacimento di vincoli Maria Simi a.a. 2011/2012.
Vortice Schemi di Gioco 3.
Ricerca online Maria Simi a.a. 2011/2012 Ambienti più realistici  Gli agenti risolutori di problemi “classici” assumono:  Ambienti completamente osservabili.
La teoria dei giochi (Cabral cap. n.4 )‏ Davide Vannoni Corso di Economia Manageriale e Industriale a.a
Teoria dei Giochi M.S. Bernabei “Theory of Games and Economic Behavior” di John von Neumann e Oskar Morgenstern 1953 John Forbes Nash jr., Premio.
Università degli Studi di Napoli Federico II IL “GIOCO” DEL CALCIO FACOLTA’ DI INGEGNERIA Scuola di Dottorato in Ingegneria Industriale Claudio D’Ambra.
Analisi ed Approfondimento dell’Equilibrio di Nash: Lo studio di situazioni critiche UNIVERSITA' DEGLI STUDI "G.d'ANNUNZIO" CHIETI-PESCARA LAUREANDA: Ileana.
ASD a.a.2010/2011- Lezione 12 Algoritmi e Strutture dati a.a.2010/2011 Prof.ssa Rossella Petreschi Backtracking/ Branch and Bound Lezione n°12.
Applicazioni della teoria dei giochi Valentina Meliciani.
Transcript della presentazione:

2. Forma estesa (struttura ad albero e matrice dei pagamenti) Teoria dei giochi 2. Forma estesa (struttura ad albero e matrice dei pagamenti) Slides di Teoria dei Giochi, Vincenzo Cutello

Struttura ad albero: Gioco dei fiammiferi 2 2 A B 1 2 0 2 0 2 1 1 1 0 0 1 0 0 Struttura ad albero (mossa dopo mossa) Gioco finito ad informazione perfetta Vince sempre B (ossia il secondo che muove) in questo esempio. Ma si può dimostrare in generale? Slides di Teoria dei Giochi, Vincenzo Cutello

Matrice dei pagamenti: il dilemma del prigioniero B A C NC (2,2) (0,7) (7,0) (1,1) Se B confessa, ad A conviene confessare Se B non confessa, ad A conviene confessare. Morale: se è razionale confessa. Slides di Teoria dei Giochi, Vincenzo Cutello

Assioma di razionalità Un giocatore sceglie l’azione che gli consente di ottenere i risultati migliori, qualunque sia la mossa dell’avversario Per entrambi i due prigionieri la strategia migliore è quella di confessare. Situazione di equilibrio. B A C NC (2,2) (0,7) (7,0) (1,1) Slides di Teoria dei Giochi, Vincenzo Cutello

Slides di Teoria dei Giochi, Vincenzo Cutello Teorema di Zermelo Nel gioco degli scacchi (gioco finito a informazione perfetta) può sussistere una ed una sola delle seguenti tre alternative: Il bianco può forzare nero alla sconfitta Il nero può forzare il bianco alla sconfitta Entrambi i giocatori possono forzare il pareggio Ma che razza di teorema è questo? E perché mai è importante che il gioco sia finito a informazione perfetta Risposta: quanto vi piace disegnare alberi ? Slides di Teoria dei Giochi, Vincenzo Cutello

Slides di Teoria dei Giochi, Vincenzo Cutello Esempio 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Due giocatori (A e B) a turno possono togliere una casella dal quadrato Togliendo una casella si tolgono tutte quelle sopra e quelle a destra della casella. Chi toglie la casella “13” perde. Slides di Teoria dei Giochi, Vincenzo Cutello

Slides di Teoria dei Giochi, Vincenzo Cutello Esempio: cont. E’ un gioco finito e ad informazione perfetta: Non esiste il pareggio Per il teorema di Zermelo, o esiste una strategia vincente per A (chi muove per primo) o esiste una strategia vincente per B (chi muove per secondo). Secondo voi ?? Slides di Teoria dei Giochi, Vincenzo Cutello

Giochi come problemi di ricerca Avversario “imprevedibile”  la soluzione è un piano di emergenza Limiti di tempo  a meno di trovare la soluzione, dobbiamo approssimare Piano di attacco: Algoritmi per giocatori perfetti (Von Neumann, 1944) Orizzonte finito, valutazione approssimata (Zuse, 1945; Shannon, 1950; Samuel, 1952-57) Taglio per ridurre i costi (McCarty, 1956) Slides di Teoria dei Giochi, Vincenzo Cutello

Slides di Teoria dei Giochi, Vincenzo Cutello Tipi di giochi Deterministici Elemento di fortuna Informazione perfetta Scacchi, dama, go, otello Backgammon, monopoli Informazione imperfetta Bridge, poker, guerra Slides di Teoria dei Giochi, Vincenzo Cutello

Slides di Teoria dei Giochi, Vincenzo Cutello Minimax Giocatori perfetti per giochi deterministici ad informazione perfetta Idea: scegli la mossa che porta alla posizione con il più alto minimax value = miglior risultato raggiungibile contro il miglior avversario Per esempio, gioco a 2 giocatori: 3 MAX A1 A3 A2 3 2 2 MIN A21 A31 A33 A11 A13 A23 A12 A22 A32 3 12 8 2 4 6 14 5 2 Slides di Teoria dei Giochi, Vincenzo Cutello

Slides di Teoria dei Giochi, Vincenzo Cutello Algoritmo Minimax function DECISIONE-MINIMAX (gioco) returns un operatore for each op in OPERATORI[gioco] do VALORE[op]  VALORE-MINIMAX (APPLICA(op,game), game) end return op con il più alto valore VALORE[op] function VALORE-MINIMAX (stato, gioco) returns un valore di utilità if VERIFICA-TERMINALE[gioco] then return UTILITA’[gioco](stato) else if MAX deve muovere nello stato then return il più alto valore VALORE-MINIMAX di SUCCESSORI(stato) else return il più basso valore VALORE-MINIMAX di SUCCESSORI(stato) Slides di Teoria dei Giochi, Vincenzo Cutello

Slides di Teoria dei Giochi, Vincenzo Cutello Proprietà di minimax Completo ?? Si, se l’albero è finito (gli scacchi hanno regole specifiche per questo) Ottimo ?? Si, contro un avversario ottimale. Altrimenti ? Complessità temporale ?? O(bm) Complessità spaziale ?? O(bm) (esplorazione depth-first) Per gli scacchi b ≈ 35, m ≈ 100 per partite tipiche  soluzione esatta non raggiungibile Slides di Teoria dei Giochi, Vincenzo Cutello

Slides di Teoria dei Giochi, Vincenzo Cutello Limiti delle risorse Supponiamo di avere 100 secondi, esploriamo 104 nodi/secondo  106 nodi per mossa Approccio standard: Test di taglio cioè, limite di profondità (probabile aggiunta della ricerca di quiescenza) Funzione di valutazione stima della desiderabilità di una posizione Slides di Teoria dei Giochi, Vincenzo Cutello

Funzioni di valutazioni Per gli scacchi, una tipica somma lineare pesata delle caratteristiche EVAL(s) = w1f1(s)+ w2f2(s)+…+ wnfn(s) per esempio, w1 = 9 f1(s) = (# di regine bianche)-(# di regine nere) w2 = 7 f2(s) = (# di torri bianche)-(# di torri nere) etc Slides di Teoria dei Giochi, Vincenzo Cutello

Slides di Teoria dei Giochi, Vincenzo Cutello Valore esatto ? MAX MIN 1 2 1 2 1 2 2 4 1 20 2 400 Il comportamento è preservato rispetto ad una qualsiasi trasformazione monotonica di EVAL: Interessa solo l’ordine Payoff nei giochi deterministici agisce come una funzione di utilità ordinale Slides di Teoria dei Giochi, Vincenzo Cutello

Slides di Teoria dei Giochi, Vincenzo Cutello Tagliando la ricerca MINIMAXCUTOFF è identica alla VALORE-MINIMAX eccetto per Terminale rimpiazzata da CUTOFF ? UTILITA’ rimpiazzata da EVAL Funziona in pratica ? function MINIMAX-CUTOFF(stato, gioco) returns un valore di utilità if VERIFICA-CUTOFF[gioco] then return EVAL[gioco](stato) else if MAX deve muovere nello stato then return il più alto valore VALORE-MINIMAX di SUCCESSORI(stato) else return il più basso valore VALORE-MINIMAX di SUCCESSORI(stato) Slides di Teoria dei Giochi, Vincenzo Cutello

Slides di Teoria dei Giochi, Vincenzo Cutello Esempio di α-β pruning ≥3 MAX 3 ≤2 2 ≤5 ≤14 MIN 3 12 8 2 X X 14 5 2 Slides di Teoria dei Giochi, Vincenzo Cutello

Slides di Teoria dei Giochi, Vincenzo Cutello Proprietà di α-β Il pruning non altera il risultato finale Il buon ordinamento delle mosse migliora l’efficienza del pruning Con “ordine perfetto”, complessità temporale = O(bm/2)  doppia profondità di ricerca  Può facilmente raggiungere profondità 8 e giocare bene a scacchi Slides di Teoria dei Giochi, Vincenzo Cutello

Slides di Teoria dei Giochi, Vincenzo Cutello Perché si chiama α-β ? MAX α MIN .. MAX MIN V α è il miglior valore (rispetto a MAX) trovato fino ad ora nel percorso corrente Se V è peggiore di α, MAX lo eviterà  pota quel ramo Definiamo β similmente per MIN Slides di Teoria dei Giochi, Vincenzo Cutello

Slides di Teoria dei Giochi, Vincenzo Cutello L’algoritmo α-β function MAX-VALUE(stato, gioco, α, β) returns il valore minimax di stato inputs: stato, stato corrente del gioco gioco, descrizione del gioco α, il miglior punteggio per MAX attrraverso il percorso per stato β, il miglior punteggio per MIN attraverso il percorso per stato if TEST-DI-TAGLIO(stato) then return EVAL(stato) for each s in SUCCESSORI (stato) do α  MAX(α, MIN-VALUE(s, gioco, α, β)) if α ≥ β then return β end return α _____________________________________________________________________ function MIN_VALUE (stato, game, α, β) if TEST-DI-TAGLIO(stato) then return EVAL(stato) for each s in SUCCESSORI(stato) do β  MIN (β, MAX-VALUE (s, gioco, α, β)) if β ≤ α then return α return β Slides di Teoria dei Giochi, Vincenzo Cutello

Giochi deterministici in pratica Dama: Chinook pose termine al dominio assoluto durato 40 anni della campionessa del mondo Marion Tinsley in 1994. Venne usato un database per le posizioni finali che definiva una strategia perfetta per tutte le posizioni che coinvolgevano al più 8 pezzi sulla scacchiera per un totale di 443.748.401.247 posizioni. Scacchi: Deep Blue sconfisse il campione del mondo Gary Kasparov nel 1997. Deep Blue ricercava 200 milioni di posizioni al secondo, una valutazione molto sofisticata e alcuni metodi per estendere la ricerca fino a 40 mosse Slides di Teoria dei Giochi, Vincenzo Cutello

Giochi deterministici in pratica Othello: I campioni umani rifiutano di competere contro i computer perché sono di gran lunga superiori. Go: I campioni umani rifiutano di competere contro i computer perché sono troppo scarsi. Nel Go, b > 300, così la maggior parte dei programmi usa basi di conoscenza per effettuare delle mosse plausibili. Slides di Teoria dei Giochi, Vincenzo Cutello

Giochi non deterministici Per esempio, nel risico, i dadi determinano le mosse legali Esempio semplificato con lancio della moneta al posto dei dadi MAX 2.5 -1 CHANCE 0.5 0.5 0.5 0.5 MIN 1 4 -2 1 4 7 4 6 5 -2 Slides di Teoria dei Giochi, Vincenzo Cutello

Algoritmo per giochi non deterministici EXPECTIMINIMAX fornisce un giocatore perfetto Come il MINIMAX eccetto per il fatto che dobbiamo gestire i nodi di fortuna … if stato è un nodo di fortuna then return la media di EXPECTIMINIMAX-VALUE di SUCCESSORI(stato) Slides di Teoria dei Giochi, Vincenzo Cutello

Giochi non deterministici nella pratica Il lancio dei dadi incrementa b: 11 possibili risultati con 2 dadi Mentre la profondità incrementa la probabilità di raggiungere un dato nodo diminuisce diminuisce il valore di lookahead α-β pruning è meno efficace in questo caso Slides di Teoria dei Giochi, Vincenzo Cutello

Valori esatti necessari Il comportamento è preservato solo da trasformazioni lineari positive di EVAL Quindi EVAL dovrebbe essere proporzionale al payoff atteso MAX CHANCE 2.1 1.3 21 40.9 0.9 0.1 0.9 0.1 0.9 0.1 0.9 0.1 MIN 2 3 1 4 20 30 1 400 2 1 1 4 4 20 20 30 30 1 1 400 400 2 3 3 Slides di Teoria dei Giochi, Vincenzo Cutello

Riassunto I giochi sono divertenti ! (e pericolosi) Tramite essi si illustrano parecchi importanti questioni inerenti l’AI La perfezione non è ottenibile ==> dobbiamo approssimare Buona idea per pensare su cosa occorre pensare L’incertezza vincola l’assegnamento del valore agli stati PENSIERO FINALE: I giochi stanno all’AI come la Formula 1 sta all’industria automobilistica Slides di Teoria dei Giochi, Vincenzo Cutello