Algoritmi e giochi combinatori

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Algoritmi e giochi combinatori"

Transcript

1 Algoritmi e giochi combinatori Panoramica Giochi combinatori Programmi che giocano Albero di un gioco L algoritmo Minimax 1

2 Perché studiare i giochi? Problemi che coinvolgono agenti in competizione tra loro Problemi interessanti e ardui, facili da descrivere Definiscono spesso spazi di ricerca molto ampi Divertente Giochi combinatori Giochi a 2 giocatori I giocatori alternano le proprie mosse Somma zero: un giocatore vince nella misura in cui l altro perde Informazione perfetta: i due giocatori conoscono completamente lo stato del gioco ogni volta che muovono; nessuna informazione è nascosta ad uno dei due giocatori. Deterministici: nessun elemento di casualità Finiti: il numero di scelte possibili ad ogni mossa è finito, e il gioco dura un numero finito di mosse 2

3 Giochi combinatori e non Non è finito Non è deterministico Solitario Informazione incompleta Ok Troppi giocatori Ok Stato dell arte Che livello raggiungono i migliori algoritmi? Scacchi: Deep Blue batte Garry Kasparov nel 1997 Garry Kasparov vs. Deep Junior (Feb 2003): patta! Kasparov vs. X3D Fritz (Nov 2003): patta! Dama: Chinook è stato campione del mondo. Go: programmi appena sufficienti 3

4 Come giocare Un possibile approccio ad un gioco combinatorio: Considera tutte le mosse ammissibili nello stato attuale Calcola la nuova posizione risultante da ogni mossa Valuta ogni posizione risultante e determina la migliore Gioca la mossa corrispondente Attendi la mossa dell avversario e ricomincia Difficoltà: Rappresentazione della scacchiera Generazione di tutte le posizioni risultanti Valutazione di una posizione Funzione di valutazione Una funzione di valutazione viene usata per stimare la bontà di una situazione di gioco Per l assunzione di somma nulla, una singola funzione è sufficiente a valutare la situazione di entrambi i giocatori f(s) > 0: la posizione s è buona per il primo giocatore e cattiva per il secondo f(s) < 0: la posizione s è cattiva per il primo giocatore e buona per il secondo f(s) = 0: la posizione s è neutra 4

5 Esempi di funzioni di valutazione Esempio di funzione di valutazione per il gioco del Tris: f(s) = [# di tris possibili per A] - [# di tris possibili per B] Una funzione di valutazione per gli scacchi: f(s) = w(s)/b(s) dove w(s) = somma del valore dei punti dei pezzi bianchi b(s) = somma del valore dei punti dei pezzi neri Spesso le funzioni di valutazione sono la somma pesata di singole caratteristiche della posizione: f(s) = w 1 *car 1 (s) + w 2 *car 2 (s) w k *car k (s) Esempi di caratteristiche per gli scacchi: numero di pezzi, piazzamento dei pezzi, caselle controllate, ecc. Deep Blue aveva oltre 8000 caratteristiche nella sua funzione di valutazione Albero di un gioco Lo spazio di ricerca di un gioco è rappresentabile da un albero Un nodo rappresenta una posizione di gioco; il giocatore decide quale singola mossa eseguire portando così ad un determinato nodo figlio La funzione di valutazione assegna un valore ad ogni nodo Gli archi rappresentano le mosse ammissibili per un giocatore Se è il turno del primo giocatore, il nodo è etichettato MAX, altrimenti MIN Dato che i giocatori alternano le proprie mosse, su ogni cammino dalla radice ad una foglia le etichette si alternano 5

6 L algoritmo Minimax Crea un nodo radice di tipo MAX con la posizione iniziale Espandi i nodi fino ad una certa profondità nel gioco Applica la funzione di valutazione ai nodi foglia Calcola induttivamente all indietro i valori dei nodi interni fino ad arrivare alla radice: Ai nodi MIN, poni il valore al minimo dei valori associati a ciascun nodo figlio. Ai nodi MAX, poni il valore al massimo dei valori associati a ciascun nodo figlio. L arco (=mossa) scelto a ciascuno nodo è quello il cui figlio ha valore pari al valore del nodo L algoritmo Minimax Valutazione delle posizioni Mossa selezionata da Minimax MAX MIN

7 L albero del gioco del Tris f(s) = +1 se la posizione è vincente per X. f(s) = -1 se la posizione è vincente per O. f(s) = 0 se la posizione è una patta. Pseudocodice per Minimax function MAX-VALUE (state) if TERMINAL(state) then return UTILITY(state) v := - for each s in SUCCESSORS (state) do v := MAX (v, MIN-VALUE (s)) end return v function MIN-VALUE (state) if TERMINAL(state) then return UTILITY(state) v := + for each s in SUCCESSORS (state) do v := MIN (v, MAX-VALUE (s)) end return v 7

8 Potatura alfa-beta Possiamo migliorare l efficienza dell algoritmo minimax con la potatura alfa-beta Idea di base: Se hai un idea che di certo non è buona, non perdere tempo per capire quanto sia cattiva. MAX >=2 MIN =2 MAX <=1? Non abbiamo bisogno di valutare questo nodo. A prescindere dal suo valore, non potrà influenzare il valore della radice. Potatura alfa-beta Visita l albero del gioco in profondità Ad ogni nodo MAX s, alfa(s) = massimo valore trovato finora Ad ogni nodo MIN s, beta(s) = minimo valore trovato finora I valori alfa partono da -infinito e possono solo crescere, mentre i valori beta partono da +infinito e possono solo diminuire. Soglia Alfa: taglia la ricerca su un nodo s di tipo MIN se beta(s) <= alfa(i) per qualche nodo i di tipo MAX che sia antenato di s. Soglia Beta: taglia la ricerca su un nodo s di tipo MAX se alfa(s) >= beta(i) per qualche nodo i di tipo MIN che sia antenato di s. 8

9 Potatura alfa-beta: esempio MAX 3 MIN taglia taglia L algoritmo alfa-beta function MAX-VALUE (state, α, β) // α = MAX attuale; β = MIN attuale if TERMINAL-TEST (state) then return UTILITY(state) v := - for each s in SUCCESSORS (state) do v := MAX (v, MIN-VALUE (s, α, β)) if v >= β then return v α := MAX (α, v) end return v function MIN-VALUE (state, α, β) if TERMINAL-TEST (state) then return UTILITY(state) v := for each s in SUCCESSORS (state) do v := MIN (v, MAX-VALUE (s, α, β)) if v <= α then return v β := MIN (β, v) end return v 9

10 L efficacia di alfa-beta Alfa-beta calcola sempre lo stesso valore di Minimax Caso peggiore: nessuna potatura, esamina O(b d ) nodi dove d è la profondità della ricerca e b il numero massimo di figli di ogni nodo Nel caso migliore, esamina solo O(b d/2 ) nodi In Deep Blue, l uso della potatura alfa-beta ha portato il fattore di branching medio da 35 a 6! 10

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

Teoria dei giochi. 2. Forma estesa (struttura ad albero e matrice dei pagamenti) Slides di Teoria dei Giochi, Vincenzo Cutello 1 Teoria dei giochi 2. Forma estesa (struttura ad albero e matrice dei pagamenti) Vincenzo Cutello 1 Struttura ad albero: Gioco dei fiammiferi 2 2 1 2 0 2 0 2 1 1 1 0 0 1 0 0 A B Struttura ad albero (mossa

Dettagli

I giochi con avversario. I giochi con avversario. Introduzione. Giochi come problemi di ricerca. Il gioco del NIM.

I giochi con avversario. I giochi con avversario. Introduzione. Giochi come problemi di ricerca. Il gioco del NIM. I giochi con avversario I giochi con avversario Maria Simi a.a. 26/27 Regole semplici e formalizzabili eterministici, due giocatori, turni alterni, zero-sum, informazione perfetta (ambiente accessibile)

Dettagli

I giochi con avversario. I giochi con avversario. Introduzione. Il gioco del NIM. Il gioco del NIM. Giochi come problemi di ricerca

I giochi con avversario. I giochi con avversario. Introduzione. Il gioco del NIM. Il gioco del NIM. Giochi come problemi di ricerca I giochi con avversario I giochi con avversario Maria Simi a.a. 200/20 Regole semplici e formalizzabili Deterministici, due giocatori, turni alterni, zero-sum, informazione perfetta (ambiente accessibile)

Dettagli

I giochi con avversario. I giochi con avversario. Sommario. Il gioco del NIM. Il gioco del NIM. Giochi come problemi di ricerca

I giochi con avversario. I giochi con avversario. Sommario. Il gioco del NIM. Il gioco del NIM. Giochi come problemi di ricerca I giochi con avversario I giochi con avversario Maria Simi a.a. 203/204 Regole semplici e formalizzabili deterministici, ambiente accessibile due giocatori, turni alterni, a somma zero, informazione perfetta

Dettagli

Ricerca con avversari: GIOCHI

Ricerca con avversari: GIOCHI Ricerca con avversari: GIOCHI Ambiente multi-agente che deve tenere conto della presenza di un avversario Teoria dei giochi branca dell economia Giochi formali (piu che reali), anche se esiste una competizione

Dettagli

La strategia MiniMax e le sue varianti

La strategia MiniMax e le sue varianti La strategia MiniMax e le sue varianti Paolo Boldi 29 gennaio 2002 1 Preliminari In questa dispensa studieremo una strategia per l analisi di alcuni giochi deterministici (cioè, giochi di pura abilità

Dettagli

GIOCHI. L'intelligenza artificiale considera giochi con le seguenti proprietà: 1) Sono giochi a due giocatori in cui le mosse sono alternate;

GIOCHI. L'intelligenza artificiale considera giochi con le seguenti proprietà: 1) Sono giochi a due giocatori in cui le mosse sono alternate; GIOCHI L'intelligenza artificiale considera giochi con le seguenti proprietà: ) Sono giochi a due giocatori in cui le mosse sono alternate; 2) Sono giochi con conoscenza perfetta in cui i giocatori hanno

Dettagli

Intelligenza Artificiale. Lezione 15. Intelligenza Artificiale Daniele Nardi, 2003 Lezione 15 0

Intelligenza Artificiale. Lezione 15. Intelligenza Artificiale Daniele Nardi, 2003 Lezione 15 0 Intelligenza Artificiale Lezione 15 Intelligenza Artificiale Daniele Nardi, 2003 Lezione 15 0 Sommario CSP RN 3.8, 4.3, 4.5 Giochi RN 5.1, 5.2, 5.3, 5.4 Algoritmi genetici RN 20.8 Intelligenza Artificiale

Dettagli

Intelligenza Artificiale. Lezione 6bis. Sommario. Problemi di soddisfacimento di vincoli: CSP. Vincoli CSP RN 3.8, 4.3, 4.5.

Intelligenza Artificiale. Lezione 6bis. Sommario. Problemi di soddisfacimento di vincoli: CSP. Vincoli CSP RN 3.8, 4.3, 4.5. Sommario Intelligenza Artificiale CSP RN 3.8, 4.3, 4.5 Giochi RN 5 Lezione 6bis Intelligenza Artificiale Daniele Nardi, 2004 Lezione 6bis 0 Intelligenza Artificiale Daniele Nardi, 2004 Lezione 6bis 1 Problemi

Dettagli

... Max. Max. ... Min ... Albero di gioco

... Max. Max. ... Min ... Albero di gioco Ricerca con avversari: GIOCHI Ambiente multi-agente che deve tenere conto della presenza di un avversario Teoria dei giochi branca dell economia Giochi formali (più che reali), anche se esiste una competizione

Dettagli

I giochi con avversario. Maria Simi a.a. 2016/2017 Credits: Alessio Micheli Russell-Norvig

I giochi con avversario. Maria Simi a.a. 2016/2017 Credits: Alessio Micheli Russell-Norvig I giochi con avversario Maria Simi a.a. 2016/2017 Credits: Alessio Micheli Russell-Norvig I giochi con avversario Regole semplici e formalizzabili Ambiente accessibile e determistico Due giocatori, turni

Dettagli

L'intelligenza artificiale considera giochi con le seguenti proprietà: 1) Sono giochi a due giocatori in cui le mosse sono alternate;

L'intelligenza artificiale considera giochi con le seguenti proprietà: 1) Sono giochi a due giocatori in cui le mosse sono alternate; GIOCHI L'intelligenza artificiale considera giochi con le seguenti proprietà: ) Sono giochi a due giocatori in cui le mosse sono alternate; 2) Sono giochi con conoscenza perfetta in cui i giocatori hanno

Dettagli

GIOCHI. Ambiente multi-agente presenza di un avversario. avversario economia anche se esiste una competizione di calcio fra robot

GIOCHI. Ambiente multi-agente presenza di un avversario. avversario economia anche se esiste una competizione di calcio fra robot Ricerca con avversari: : GIOCHI Ambiente multi-agente che deve tenere conto della presenza di un avversario avversario Teoria dei giochi branca dell economia economia Giochi formali (piu che reali), anche

Dettagli

ESERCIZIO MIN-MAX Si consideri il seguente albero di gioco dove i punteggi sono tutti dal punto di vista del primo giocatore.

ESERCIZIO MIN-MAX Si consideri il seguente albero di gioco dove i punteggi sono tutti dal punto di vista del primo giocatore. ESERCIZIO MIN- Si consideri il seguente albero di gioco dove i punteggi sono tutti dal punto di vista del primo giocatore. B C D E F G H I J K L M N O P Q R S T U (6) (8) (5) (0) (-2) (2) (5) (8) (9) (2)

Dettagli

Alfa. Il GO tra gioco, matematica ed economia. Alla ricerca della strategia ottimale

Alfa. Il GO tra gioco, matematica ed economia. Alla ricerca della strategia ottimale Alfa Il GO tra gioco, matematica ed economia Alla ricerca della strategia ottimale (ovvero il famoso collegamento tra GO ed informatica promesso nei poster) Pescara, Ottobre 2008 Invincibile Scopo del

Dettagli

. Max. Max. Min. Min ... ... ... Albero di gioco

. Max. Max. Min. Min ... ... ... Albero di gioco Ricerca con avversari: GIOCHI Ambiente multi-agente che deve tenere conto della presenza di un avversario Teoria dei giochi branca dell economia Giochi formali (piu che reali), anche se esiste una competizione

Dettagli

Giochi a due giocatori

Giochi a due giocatori Giochi a due giocatori Caratteristiche : mosse alternate non c è intervento del caso (no giochi di carte ) ogni giocatore ha informazioni complete sullo stato del gioco. Esempi: scacchi, dama, filetto,

Dettagli

Intelligenza Artificiale. Risoluzione dei Problemi

Intelligenza Artificiale. Risoluzione dei Problemi Intelligenza Artificiale Risoluzione dei Problemi Ricerca con avversari I Giochi I giochi sono stati uno dei primi campi in cui è stata applicata l IA. La presenza di un avversario rende più complicato

Dettagli

INTRODUZIONE ALLA TEORIA DEI GIOCHI

INTRODUZIONE ALLA TEORIA DEI GIOCHI Corso di Identificazione dei Modelli e Controllo Ottimo Prof. Franco Garofalo INTRODUZIONE ALLA TEORIA DEI GIOCHI A cura di Elena Napoletano elena.napoletano@unina.it Teoria dei Giochi Disciplina che studia

Dettagli

Problemi, istanze, soluzioni

Problemi, istanze, soluzioni lgoritmi e Strutture di Dati II 2 Problemi, istanze, soluzioni Un problema specifica una relazione matematica tra dati di ingresso e dati di uscita. Una istanza di un problema è formata dai dati di un

Dettagli

Algoritmi di Ricerca

Algoritmi di Ricerca Algoritmi e Strutture Dati Autunno 01 Algoritmi di Ricerca Dip. Informatica ed Appl. Prof. G. Persiano Università di Salerno 1 Ricerca esaustiva 1 2 Backtrack 3 2.1 Backtrack per enumerazione......................................

Dettagli

Giochi in forma estesa Esempi. In Action with Math. Competizione e Strategia: Teoria dei Giochi. Giulia Bernardi, Roberto Lucchetti.

Giochi in forma estesa Esempi. In Action with Math. Competizione e Strategia: Teoria dei Giochi. Giulia Bernardi, Roberto Lucchetti. In Action with Math Competizione e Strategia: Teoria dei Giochi Giulia Bernardi, Roberto Lucchetti 22 ottobre 2014 1 / 21 Descrizione del gioco Pagamenti Quali sono le informazioni rilevanti per studiare

Dettagli

Intelligenza Artificiale. Lezione 6bis. Intelligenza Artificiale Daniele Nardi, 2004 Lezione 6bis 0

Intelligenza Artificiale. Lezione 6bis. Intelligenza Artificiale Daniele Nardi, 2004 Lezione 6bis 0 Intelligenza Artificiale Lezione 6bis Intelligenza Artificiale Daniele Nardi, 2004 Lezione 6bis 0 Sommario CSP RN 3.8, 4.3, 4.5 Giochi RN 5 Intelligenza Artificiale Daniele Nardi, 2004 Lezione 6bis 1 Problemi

Dettagli

Intelligenza artificiale

Intelligenza artificiale Intelligenza artificiale Appunti NON UFFICIALI del corso del prof. Francesco Amigoni Politecnico di Milano Marcello Pogliani marcello.pogliani - at - gmail - dot - com A.A. 2012 2013 Questo documento raccoglie

Dettagli

In Action With Math. Competizione e Strategia - Teoria dei Giochi. Roberto Lucchetti - Giulia Bernardi. Politecnico di Milano

In Action With Math. Competizione e Strategia - Teoria dei Giochi. Roberto Lucchetti - Giulia Bernardi. Politecnico di Milano In Action With Math Competizione e Strategia - Teoria dei Giochi Roberto Lucchetti - Giulia Bernardi Politecnico di Milano www.gametheory.polimi.it 22 ottobre 2015 1 / 13 Riassunto Gioco Un modello per

Dettagli

Cercare il percorso minimo Ant Colony Optimization

Cercare il percorso minimo Ant Colony Optimization Cercare il percorso minimo Ant Colony Optimization Author: Luca Albergante 1 Dipartimento di Matematica, Università degli Studi di Milano 4 Aprile 2011 L. Albergante (Univ. of Milan) PSO 4 Aprile 2011

Dettagli

Minimo albero di copertura

Minimo albero di copertura apitolo 0 Minimo albero di copertura efinizione 0.. ato un grafo G = (V, E) non orientato e connesso, un albero di copertura di G è un sottoinsieme T E tale che il sottografo (V, T ) è un albero libero.

Dettagli

Alberi ed Alberi Binari

Alberi ed Alberi Binari Alberi ed Alberi Binari Il tipo di dato Albero Un albero è una struttura di data organizzata gerarchicamente. È costituito da un insieme di nodi collegati tra di loro: ogni nodo contiene dell informazione,

Dettagli

I giochi con avversario

I giochi con avversario I giochi con avversario Alessio Micheli a.a. 2015/2016 Credits: Maria Simi Russell-Norvig I giochi con avversario Cavallo di battaglia storico dell AI, natura astratta Regole semplici e formalizzabili

Dettagli

Algoritmi e Strutture Dati. HeapSort

Algoritmi e Strutture Dati. HeapSort Algoritmi e Strutture Dati HeapSort Selection Sort: intuizioni L algoritmo Selection-Sort scandisce tutti gli elementi dell array a partire dall ultimo elemento fino all inizio e ad ogni iterazione: Viene

Dettagli

Esercizi di Algoritmi e Strutture Dati

Esercizi di Algoritmi e Strutture Dati Esercizi di Algoritmi e Strutture Dati Moreno Marzolla marzolla@cs.unibo.it Ultimo aggiornamento: 3 novembre 2010 1 Trova la somma/1 Scrivere un algoritmo che dati in input un array A[1... n] di n interi

Dettagli

Note per la Lezione 4 Ugo Vaccaro

Note per la Lezione 4 Ugo Vaccaro Progettazione di Algoritmi Anno Accademico 2016 2017 Note per la Lezione 4 Ugo Vaccaro Ripasso di nozioni su Alberi Ricordiamo che gli alberi rappresentano una generalizzazione delle liste, nel senso che

Dettagli

Esercizi Capitolo 11 - Strutture di dati e progettazione di algoritmi

Esercizi Capitolo 11 - Strutture di dati e progettazione di algoritmi Esercizi Capitolo 11 - Strutture di dati e progettazione di algoritmi Alberto Montresor 19 Agosto, 2014 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore

Dettagli

Ricerca Combinatoria

Ricerca Combinatoria Ricerca Combinatoria Theo Gonella 27 marzo 2005 1 Generalità Gli algoritmi combinatori servono per risolvere problemi di due tipi: - Decision Problem, che richiede la semplice ricerca di una soluzione.

Dettagli

Grammatiche. Grammatiche libere da contesto Grammatiche regolari Potenza delle grammatiche libere e regolari Struttura di frase: Alberi di derivazione

Grammatiche. Grammatiche libere da contesto Grammatiche regolari Potenza delle grammatiche libere e regolari Struttura di frase: Alberi di derivazione Grammatiche Grammatiche libere da contesto Grammatiche regolari Potenza delle grammatiche libere e regolari Struttura di frase: Alberi di derivazione Esempio dei numeri interi Si consideri il linguaggio

Dettagli

Albero di Riscorsione

Albero di Riscorsione Albero di Riscorsione Albero di ricorsione Un albero di ricorsione è un modo di visualizzare cosa accade in un algoritmo divide et impera L etichetta della radice rappresenta il costo non ricorsivo della

Dettagli

Informatica Generale Homework di Recupero 2016

Informatica Generale Homework di Recupero 2016 Informatica Generale Homework di Recupero 016 docente: Ivano Salvo Sapienza Università di Roma Gruppo 1 Esercizio 1.1 Scrivere un programma C che presi in input due interi positivi a ed b (a, b > 0) calcola

Dettagli

Agenti risolutori di problemi. Risolvere i problemi mediante ricerca Maria Simi a.a 2014/2015

Agenti risolutori di problemi. Risolvere i problemi mediante ricerca Maria Simi a.a 2014/2015 Agenti risolutori di problemi Risolvere i problemi mediante ricerca Maria Simi a.a 2014/2015 Agenti risolutori di problemi Adottano il paradigma della risoluzione di problemi come ricerca in uno spazio

Dettagli

TECNOLOGIE INFORMATICHE MULTIMEDIALI

TECNOLOGIE INFORMATICHE MULTIMEDIALI TECNOLOGIE INFORMATICHE MULTIMEDIALI ««Gli errori sono necessari, utili come il pane e spesso anche belli: per esempio, la torre di Pisa.» (Gianni Rodari, Il libro degli errori) Prof. Giorgio Poletti giorgio.poletti@unife.it

Dettagli

Manuale di Kiriki. Albert Astals Cid Eugene Trounev Traduzione dell interfaccia: Marcello Anni Traduzione della documentazione: Federico Zenith

Manuale di Kiriki. Albert Astals Cid Eugene Trounev Traduzione dell interfaccia: Marcello Anni Traduzione della documentazione: Federico Zenith Albert Astals Cid Eugene Trounev Traduzione dell interfaccia: Marcello Anni Traduzione della documentazione: Federico Zenith 2 Indice 1 Introduzione 5 2 Come giocare 6 3 Regole del gioco, strategie e suggerimenti

Dettagli

Intelligenza Artificiale. Ricerca euristica Algoritmo A*

Intelligenza Artificiale. Ricerca euristica Algoritmo A* Intelligenza Artificiale Ricerca euristica Algoritmo A* Marco Piastra Metodi di ricerca - Ricerca non informata Ricerca nello spazio degli stati Definizione di un grafo come spazio degli stati I nodi rappresentano

Dettagli

TEORIA DEI GIOCHI. Progetto Lauree Scientifiche : Liceo Gabriele D Annunzio di Fidenza Università degli Studi di Parma

TEORIA DEI GIOCHI. Progetto Lauree Scientifiche : Liceo Gabriele D Annunzio di Fidenza Università degli Studi di Parma Progetto Lauree Scientifiche 2010-2011: TEORIA DEI GIOCHI Liceo Gabriele D Annunzio di Fidenza Università degli Studi di Parma Docenti della scuola superiore: M. Armani, S. Di Maiolo Docenti dell università:

Dettagli

REGOLE DI BASE. Quando orientiamo la scacchiera la casa posta nell'angolo a destra di ogni giocatore deve essere di colore chiaro.

REGOLE DI BASE. Quando orientiamo la scacchiera la casa posta nell'angolo a destra di ogni giocatore deve essere di colore chiaro. REGOLE DI BASE La partita a scacchi si disputa tra due giocatori che muovono i loro pezzi, a turno, su una scacchiera. Vince chi riesce a catturare il Re avversario. La scacchiera è una superficie quadrata

Dettagli

Economia Industriale

Economia Industriale Università del Piemonte Orientale Amedeo Avogadro Facoltà di Economia A.A. 2005/2006 Economia Industriale Dott. Massimiliano Piacenza Lezione 2 L impresa come rapporto principale-agente (cenni, Cabral

Dettagli

Vivere da Re.! Giocatori di scacchi umani e artificiali! a confronto

Vivere da Re.! Giocatori di scacchi umani e artificiali! a confronto Vivere da Re.! Giocatori di scacchi umani e artificiali! a confronto Paolo Ciancarini Università di Bologna Festival della Scienza Genova 26 Ottobre 2008 Chi sono io? Ordinario di Informatica, Univ. di

Dettagli

Grammatiche Parse trees Lezione del 17/10/2012

Grammatiche Parse trees Lezione del 17/10/2012 Fondamenti di Programmazione A.A. 2012-2013 Grammatiche Parse trees Lezione del 17/10/2012 AUTILI MARCO http://www.di.univaq.it/marco.autili/ Riassunto lezione precedente Sintassi vs Semantica Stringhe,

Dettagli

Fondamenti dell Informatica

Fondamenti dell Informatica Fondamenti dell Informatica Prof.ssa E. Gentile Informatica e Comunicazione Digitale - sede di Taranto a.a. 2015-2016 Etimologia della parola: Algoritmo La parola algoritmo ha origine nel Medio Oriente.

Dettagli

Ambienti più realistici. Ricerca online. Azioni non deterministiche L aspirapolvere imprevedibile. Soluzioni più complesse. Alberi di ricerca AND-OR

Ambienti più realistici. Ricerca online. Azioni non deterministiche L aspirapolvere imprevedibile. Soluzioni più complesse. Alberi di ricerca AND-OR Ambienti più realistici Ricerca online Maria Simi a.a. 2011/2012 Gli agenti risolutori di problemi classici assumono: Ambienti completamente osservabili e deterministici il piano generato può essere generato

Dettagli

IL GIOCO DELLE SCACCHIERE LINEARI

IL GIOCO DELLE SCACCHIERE LINEARI IL GIOCO DELLE SCACCHIERE LINEARI SIMONE CASTELLAN (5C) FEDERICO MORODEI (5C) MARTINO WONG (5C) ABSTRACT. In questo articolo vengono analizzate le caratteristiche di alcuni giochi chiamati imparziali risolvendo

Dettagli

Alberi e alberi binari I Un albero è un caso particolare di grafo

Alberi e alberi binari I Un albero è un caso particolare di grafo Alberi e alberi binari Un albero è un caso particolare di grafo È costituito da un insieme di nodi collegati tra di loro mediante archi Gli archi sono orientati (ogni arco esce da un nodo origine ed entra

Dettagli

Problema del cammino minimo

Problema del cammino minimo Algoritmi e Strutture di Dati II Problema del cammino minimo Un viaggiatore vuole trovare la via più corta per andare da una città ad un altra. Possiamo rappresentare ogni città con un nodo e ogni collegamento

Dettagli

Algoritmi e loro proprietà. Che cos è un algoritmo? Un esempio di algoritmo

Algoritmi e loro proprietà. Che cos è un algoritmo? Un esempio di algoritmo 1 Cos è l informatica? L informatica è la scienza della rappresentazione e dell elaborazione dell informazione Algoritmi e loro proprietà Proprietà formali degli Algoritmi Efficienza rispetto al tempo

Dettagli

Interpretazione economica della dualità

Interpretazione economica della dualità Interpretazione economica della dualità Interpretazione economica delle variabili duali Interpretazione economica del problema duale nei problemi di allocazione risorse e miscelazione Applicazioni della

Dettagli

Teoria dei Giochi M.S. Bernabei

Teoria dei Giochi M.S. Bernabei Teoria dei Giochi M.S. Bernabei 1944 Theory of Games and Economic Behavior di John von Neumann e Oskar Morgenstern 1953 John Forbes Nash jr., Premio Nobel per l Economia nel 1994 1 Che cos è un gioco?

Dettagli

Sono casi particolari di MCF : SPT (cammini minimi) non vi sono vincoli di capacità superiore (solo x ij > 0) (i, j) A : c ij, costo di percorrenza

Sono casi particolari di MCF : SPT (cammini minimi) non vi sono vincoli di capacità superiore (solo x ij > 0) (i, j) A : c ij, costo di percorrenza Il problema di flusso di costo minimo (MCF) Dati : grafo orientato G = ( N, A ) i N, deficit del nodo i : b i (i, j) A u ij, capacità superiore (max quantità di flusso che può transitare) c ij, costo di

Dettagli

c) 64 caselle, identificate prima da una lettera, poi da un numero.

c) 64 caselle, identificate prima da una lettera, poi da un numero. La Notazione algebrica: caratteristiche e terminologia La scacchiera e a forma di quadrato, ed e composta da: a) 8 colonne, identificate da lettere b) 8 righe, identificate da numeri, e chiamate traverse

Dettagli

2.1) Ogni pietra avversaria catturata vale un punto.

2.1) Ogni pietra avversaria catturata vale un punto. Le regole del go 1)I due giocatori, bianco e nero, giocano una mossa ciascuno, per convenzione inizia nero. Si gioca sulle intersezioni. Le pietre possono essere messe in qualunque posizione libera. Entrambi

Dettagli

Esercitazione gennaio 2015

Esercitazione gennaio 2015 Esercitazione 10 19 gennaio 2015 Termine per la consegna dei lavori: martedì 26 gennaio ore 23.59. Istruzioni I lavori dovranno essere salvati in una cartella che deve contenere tutto e solo ciò che volete

Dettagli

Intelligenza Artificiale. Lezione 14. Intelligenza Artificiale Daniele Nardi, 2003 Lezione 14 0

Intelligenza Artificiale. Lezione 14. Intelligenza Artificiale Daniele Nardi, 2003 Lezione 14 0 Intelligenza Artificiale Lezione 14 Intelligenza Artificiale Daniele Nardi, 2003 Lezione 14 0 Sommario Russell & Norvig Capitolo 4, Paragrafi 3 4 IDA* SMA* Ricerca Hill-climbing Simulated annealing Intelligenza

Dettagli

Intelligenza Artificiale Ing. Tiziano Papini

Intelligenza Artificiale Ing. Tiziano Papini Intelligenza Artificiale Ing. Tiziano Papini Email: papinit@dii.unisi.it Web: http://www.dii.unisi.it/~papinit Game Playing Intelligenza Artificiale - Game Playing Tiziano Papini - 2011 2 Cosa vedremo

Dettagli

MATEMATICA PER LO STUDIO DELLE INTERAZIONI STRATEGICHE: TEORIA DEI GIOCHI. Anna TORRE

MATEMATICA PER LO STUDIO DELLE INTERAZIONI STRATEGICHE: TEORIA DEI GIOCHI. Anna TORRE MATEMATICA PER LO STUDIO DELLE INTERAZIONI STRATEGICHE: TEORIA DEI GIOCHI Anna TORRE Dipartimento di Matematica, Università di Pavia, Via Ferrata 1, 27100, Pavia, Italy. E-mail: anna.torre@unipv.it GIOCHI

Dettagli

Roberto Messa e Maria Teresa Mearini. Il Gioco degli Scacchi

Roberto Messa e Maria Teresa Mearini. Il Gioco degli Scacchi Roberto Messa e Maria Teresa Mearini Il Gioco degli Scacchi Indice La scacchiera e i pezzi 5 La scacchiera 5 I pezzi 6 Come si muovono i pezzi 8 Il Re 8 La Donna 11 La Torre 13 L Alfiere 13 Il Cavallo

Dettagli

1 SOLUZIONE DEI PROBLEMI TRAMITE GRAFI

1 SOLUZIONE DEI PROBLEMI TRAMITE GRAFI 1 SOLUZIONE DEI PROBLEMI TRAMITE GRAFI Questo capitolo tratta della possibilità di risolvere problemi analizzando le diverse possibilità prodotte dalla scelta dell agente. Abbiamo già visto come un agente

Dettagli

Il metodo dei Piani di Taglio (Cutting Planes Method)

Il metodo dei Piani di Taglio (Cutting Planes Method) Il metodo dei Piani di Taglio (Cutting Planes Method) E un metodo di soluzione dei problemi (IP) di tipo generale. L idea di base: Se la soluzione di (RL) non è intera allora la soluzione ottima intera

Dettagli

Rappresentazione con i diagrammi di flusso (Flow - chart)

Rappresentazione con i diagrammi di flusso (Flow - chart) Rappresentazione con i diagrammi di flusso (Flow - chart) Questo tipo di rappresentazione grafica degli algoritmi, sviluppato negli anni 50, utilizza una serie di simboli grafici dal contenuto evocativo

Dettagli

Algoritmo basato su cancellazione di cicli

Algoritmo basato su cancellazione di cicli Algoritmo basato su cancellazione di cicli Dato un flusso ammissibile iniziale, si costruisce una sequenza di flussi ammissibili di costo decrescente. Ciascun flusso è ottenuto dal precedente flusso ammissibile

Dettagli

Progetto: Dama. 1 - Descrizione. 2 - Regole del gioco. Appello di febbraio 2003

Progetto: Dama. 1 - Descrizione. 2 - Regole del gioco. Appello di febbraio 2003 Appello di febbraio 2003 Progetto: Dama Laurea triennale in Comunicazione Digitale Laboratorio di Informatica Generale 1 - Descrizione Il progetto consiste nell implementare un rudimentale programma di

Dettagli

Progettazione di algoritmi

Progettazione di algoritmi Progettazione di algoritmi Discussione dell'esercizio [palindroma] Dobbiamo trovare un algoritmo efficiente che data una stringa s di n caratteri trova la più lunga sottostringa di s che sia palindroma.

Dettagli

Algoritmi e Strutture Dati - Prof. Roberto De Prisco A.A Seconda prova di verifica (4 Febbraio 2005)

Algoritmi e Strutture Dati - Prof. Roberto De Prisco A.A Seconda prova di verifica (4 Febbraio 2005) Algoritmi e Strutture Dati - Prof. Roberto De Prisco A.A. 004-00 Seconda prova di verifica (4 Febbraio 00) Laurea/Diploma in Informatica Università di Salerno Nome e Cognome: Matricola: 1 3 4 TOTALE /1

Dettagli

Metodi e modelli per le decisioni

Metodi e modelli per le decisioni Metodi e modelli per le decisioni Roberto Cordone A. A. 2015-16 11.7 Esercizi Nota : Devo molti di questi esercizi a temi d esame del prof. Alberto Colorni. Nota : Diversi esercizi sono molto più complicati

Dettagli

Breve guida iniziale all'uso degli scacchi

Breve guida iniziale all'uso degli scacchi Breve guida iniziale all'uso degli scacchi Posizione e Notazione L'ultima casella di destra della prima fila ("casa d'angolo") è bianca. Le caselle sono definite in base alla lettera della colonna e al

Dettagli

Progettazione di algoritmi

Progettazione di algoritmi Progettazione di algoritmi Discussione dell'esercizio [labirinto] Nel testo dell'esercizio abbiamo considerato come lunghezza del percorso il numero di bivi ma possiamo stimare meglio la lunghezza reale

Dettagli

ThreeChess. Ovvero, come giocare a scacchi in tre.

ThreeChess. Ovvero, come giocare a scacchi in tre. ThreeChess Ovvero, come giocare a scacchi in tre http://otto.lorenzo.click/?p=823 Riferimenti e note Questo libricino nasce per lo più come un riassunto, una traduzione ed una impaginazione di testo tratto

Dettagli

ThreeChess. Ovvero, come giocare a scacchi in tre

ThreeChess. Ovvero, come giocare a scacchi in tre ThreeChess Ovvero, come giocare a scacchi in tre Gli scacchi sono lo sport delle meningi. In altri sport si esercitano i muscoli, qui si allena il cervello. Nicola Palladino Le regole di base sono le

Dettagli

Ricerca Automatica. Esercitazione 3. Intelligenza Artificiale Daniele Nardi, 2004 Esercitazione 3 0

Ricerca Automatica. Esercitazione 3. Intelligenza Artificiale Daniele Nardi, 2004 Esercitazione 3 0 Ricerca Automatica Esercitazione 3 Intelligenza Artificiale Daniele Nardi, 2004 Esercitazione 3 0 Ascensore In un grattacielo ci sono 3 coppie formate da marito e moglie. Il cancello delle scale viene

Dettagli

Algoritmi di Ricerca ad Albero Monte Carlo Applicati all Intelligenza Artificiale nel Gioco della Briscola a Cinque

Algoritmi di Ricerca ad Albero Monte Carlo Applicati all Intelligenza Artificiale nel Gioco della Briscola a Cinque POLITECNICO DI MILANO Corso di Laurea Magistrale in Ingegneria Informatica Facoltà di Ingegneria Industriale e dell Informazione Algoritmi di Ricerca ad Albero Monte Carlo Applicati all Intelligenza Artificiale

Dettagli

Agenti che risolvono problemi attraverso la ricerca in uno spazio di stati

Agenti che risolvono problemi attraverso la ricerca in uno spazio di stati Università di Bergamo Facoltà di Ingegneria Intelligenza Artificiale Paolo Salvaneschi A5_1 V1.4 Agenti che risolvono problemi attraverso la ricerca in uno spazio di stati Il contenuto del documento è

Dettagli

2. STORIA E PERSONAGGI

2. STORIA E PERSONAGGI INDICE XIII XVII Introduzione Il gioco più difficile del mondo? 1 1. REGOLE 3 Le regole 3 Scacchiera e pezzi 4 Schieramento iniziale 6 Il gioco 7 Il movimento dei pezzi 14 Arrocco 16 Scacco e scacco matto

Dettagli

2.3 Cammini ottimi. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

2.3 Cammini ottimi. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 . Cammini ottimi E. Amaldi Fondamenti di R.O. Politecnico di Milano .. Cammini minimi e algoritmo di Dijkstra Dato un grafo orientato G = (N, A) con una funzione di costo c : A c ij R e due nodi s e t,

Dettagli

2.2 Alberi di supporto di costo ottimo

2.2 Alberi di supporto di costo ottimo . Alberi di supporto di costo ottimo Problemi relativi ad alberi hanno numerose applicazioni: progettazione di reti (comunicazione, teleriscaldamento,...) memorizzazione compatta di sequenze (DNA) diffusione

Dettagli

Sviluppo di programmi. E ora, finalmente. Si comincia! 1. Analizzare il problema. 2. Progettare una soluzione (1) E necessario capire:

Sviluppo di programmi. E ora, finalmente. Si comincia! 1. Analizzare il problema. 2. Progettare una soluzione (1) E necessario capire: Sviluppo di programmi Per scrivere un programma C corretto bisogna: E ora, finalmente Si comincia! DD Cap. pp.4974 Analizzare il problema (input, output, casi estremali) 2. Progettare una soluzione (algoritmo)

Dettagli

Implementazione del gioco del Bantumi Corso di Intelligenza Artificiale 2012

Implementazione del gioco del Bantumi Corso di Intelligenza Artificiale 2012 Implementazione del gioco del Bantumi Corso di Intelligenza Artificiale 2012 Nicola Febbrari Università degli Studi di Verona Facoltà MM.FF.NN. nicola.febbrari@studenti.univr.it 22 gennaio 2013 1 Introduzione

Dettagli

Grafi pesati Minimo albero ricoprente

Grafi pesati Minimo albero ricoprente Algoritmi e Strutture Dati Definizioni Grafi pesati Minimo albero ricoprente Sia G=(V,E) un grafo non orientato e connesso. Un albero ricoprente di G è un sottografo T G tale che: T è un albero; T contiene

Dettagli

LE STRUTTURE DATI DINAMICHE: GLI ALBERI. Cosimo Laneve

LE STRUTTURE DATI DINAMICHE: GLI ALBERI. Cosimo Laneve LE STRUTTURE DATI DINAMICHE: GLI ALBERI Cosimo Laneve 1 argomenti 1. definizione di alberi e nozioni relative 2. implementazione degli alberi, creazione, visita 3. algoritmo di visita iterativa e sua implementazione

Dettagli

Spiegazioni ASD 2012 Luddisti Spaziali

Spiegazioni ASD 2012 Luddisti Spaziali Spiegazioni ASD 2012 Luddisti Spaziali Risultati Statistiche Numero sottoposizioni: 2088 450 250 400 350 200 Sottomissioni 300 250 200 Sottomissioni 150 100 150 50 100 50 10 11 12 13 14 15 16 17 18 19

Dettagli

Ricerca con avversari

Ricerca con avversari Ricerca con avversari Roberto Tagliaferri Dipartimento di Informatica Università di Salerno ( Sa ) 84084 Fisciano rtagliaferri@unisa.it Indice I giochi Decisioni ottime nei giochi L algoritmo minimax Potatura

Dettagli

Giochi e dilemmi Parte I Giochi ad informazione completa

Giochi e dilemmi Parte I Giochi ad informazione completa Giochi e dilemmi Parte I Giochi ad informazione completa Alberto Abbondandolo Elena Visibelli Pietro Battiston Università di Pisa Stage di orientamento in Matematica 2008 Cosa è un gioco ad informazione

Dettagli

Tecniche Algoritmiche /2 Paradigma selettivo: la tecnica enumerativa e la tecnica di backtracking

Tecniche Algoritmiche /2 Paradigma selettivo: la tecnica enumerativa e la tecnica di backtracking Tecniche Algoritmiche /2 Paradigma selettivo: la tecnica enumerativa e la tecnica di backtracking Algoritmi e Strutture Dati + Lab A.A. 14/15 Informatica Università degli Studi di Bari Aldo Moro Nicola

Dettagli

Sommario. Rappresentazione dei grafi. Ordinamento topologico. Visita in ampiezza Visita in profondità

Sommario. Rappresentazione dei grafi. Ordinamento topologico. Visita in ampiezza Visita in profondità Visite Grafi Sommario Rappresentazione dei grafi Visita in ampiezza Visita in profondità Ordinamento topologico Visita in ampiezza La visita in ampiezza breadth-first-search (BFS) di un grafo dato un vertice

Dettagli

Dati e Algoritmi I (Pietracaprina) Esercizi sugli Alberi

Dati e Algoritmi I (Pietracaprina) Esercizi sugli Alberi Dati e Algoritmi I (Pietracaprina) Esercizi sugli Alberi Dati e Algoritmi I (Pietracaprina): Esercizi 1 Problema 1 Dimostrare che un albero non vuoto con n nodi interni, dove ogni nodo interno ha almeno

Dettagli

Costruzione di espressioni regolari 4

Costruzione di espressioni regolari 4 ostruzione di espressioni regolari 4 Indicando con d uno dei possibili digits {,, 2,,9} --possiamo esprimere il sotto linguaggio dei digits come d = ( + + 2 +.. + 9) Quale linguaggio produce l espressione:

Dettagli

MATEMATICA PER LO STUDIO DELLE INTERAZIONI STRATEGICHE: TEORIA DEI GIOCHI. Anna TORRE

MATEMATICA PER LO STUDIO DELLE INTERAZIONI STRATEGICHE: TEORIA DEI GIOCHI. Anna TORRE MATEMATICA PER LO STUDIO DELLE INTERAZIONI STRATEGICHE: TEORIA DEI GIOCHI Anna TORRE Dipartimento di Matematica, Università di Pavia, Via Ferrata 1, 27100, Pavia, Italy. E-mail: anna.torre@unipv.it 1 GIOCHI

Dettagli

Cos è la teoria dei giochi

Cos è la teoria dei giochi Cos è la teoria dei giochi Teoria matematica che intende descrivere la scelta razionale dei giocatori (individui, famiglie, imprese, ) in situazioni di interazione strategica, cioè in situazioni in cui

Dettagli

Progettazione di Algoritmi

Progettazione di Algoritmi Corso di laurea in Informatica Prova scritta del: Progettazione di Algoritmi 0/06/06 Prof. De Prisco Inserire i propri dati nell apposito spazio. Non voltare la finché non sarà dato il via. Dal via avrai

Dettagli

La Talpa del Perú. G. Mezzetti 27 novembre 2004

La Talpa del Perú. G. Mezzetti 27 novembre 2004 La Talpa del Perú G. Mezzetti 27 novembre 2004 Quello che viene qui presentato è un gioco non nuovo e abbastanza noto, descritto sia in libri di giochi matematici, sia in libri per ragazzi (se non ricordo

Dettagli

Progetto e analisi di algoritmi

Progetto e analisi di algoritmi Progetto e analisi di algoritmi Roberto Cordone DTI - Università degli Studi di Milano Polo Didattico e di Ricerca di Crema Tel. 0373 / 898089 E-mail: cordone@dti.unimi.it Ricevimento: su appuntamento

Dettagli

Esempio : i numeri di Fibonacci

Esempio : i numeri di Fibonacci Esempio : i numeri di Fibonacci La successione di Fibonacci F 1, F 2,... F n,... è definita come: F 1 =1 F 2 =1 F n =F n 1 F n 2,n 2 Leonardo Fibonacci (Pisa, 1170 Pisa, 1250) http://it.wikipedia.org/wiki/leonardo_fibonacci

Dettagli

Il problema delle azioni

Il problema delle azioni Il problema delle azioni Per studiare l andamento del mercato azionario bisogna seguire i prezzi delle azioni in un lasso di tempo abbastanza lungo, diciamo n giorni. Se si dispone dei prezzi di un azione

Dettagli

Breve corso per i bambini che apprendono gli scacchi Relazione di fine Corso per Istruttori di Scacchi UISP - FSI Perugia 25 e 26 Giugno 2005

Breve corso per i bambini che apprendono gli scacchi Relazione di fine Corso per Istruttori di Scacchi UISP - FSI Perugia 25 e 26 Giugno 2005 Breve corso per i bambini che apprendono gli scacchi Relazione di fine Corso per Istruttori di Scacchi UISP - FSI Perugia e Giugno 00 Antonio Misericordia antonio.misericordia@libero.it Luglio 00 Sommario

Dettagli

3.4 Metodo di Branch and Bound

3.4 Metodo di Branch and Bound 3.4 Metodo di Branch and Bound Consideriamo un generico problema di Ottimizzazione Discreta dove X è la regione ammissibile. (P ) z = max{c(x) : x X} Metodologia generale di enumerazione implicita (Land

Dettagli