Fondamenti dell Informatica

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Fondamenti dell Informatica"

Transcript

1 Fondamenti dell Informatica Prof.ssa E. Gentile Informatica e Comunicazione Digitale - sede di Taranto a.a

2 Etimologia della parola: Algoritmo La parola algoritmo ha origine nel Medio Oriente. Proviene dall ultima parte del nome dello studioso persiano Abu Jàfar Mohammed Ibn Musa Al-Knowarizmi Il suo testo di aritmetica (825 DC circa) esercitò una grande influenza nei secoli successivi Fondamenti dell'informatica 2

3 Definizione di Algoritmo Def.: Per Algoritmo si intende un elenco di istruzioni che specificano una serie di operazioni con le quali è possibile risolvere ogni problema di un dato tipo. Fondamenti dell'informatica 3

4 Algoritmo Euclideo Dati due numeri positivi a e b, trovare il loro massimo comune divisore. Il Massimo Comune Divisore di due (o più) numeri è il numero naturale più grande per il quale possono entrambi essere divisi. Fondamenti dell'informatica 4

5 Istruzioni 1. Considerare la coppia di numeri a, b. 2. Confrontare i due numeri considerati (determinare se il primo è uguale, maggiore o minore del secondo). 3. Se i due numeri sono uguali, ognuno di essi fornisce il risultato richiesto; il calcolo si arresta. Altrimenti continua. 4. Se il primo numero è minore del secondo, scambiare i due numeri. 5. Sottrarre il secondo numero dal primo e rimpiazzare i due numeri considerati rispettivamente col sottraendo e con la differenza. Ritornare alla istruzione 2. Fondamenti dell'informatica 5

6 Algoritmo numerico Un algoritmo per risolvere un sistema di equazioni lineari in due incognite: a a 1 2 x x b 1 b 2 y y c 1 c 2 Fondamenti dell'informatica 6

7 Soluzioni x c b 1 2 c 2 b 1 a b 1 2 a 2 b 1 y a c 1 2 a 2 c 1 a b 1 2 a 2 b 1 Fondamenti dell'informatica 7

8 Soluzioni possibili Per qualsiasi scelta dei coefficienti: a,,,, , a b b c c 2 Ammesso che: a b a b Fondamenti dell'informatica 8

9 Algoritmo come funzione Un algoritmo definisce implicitamente una funzione dall insieme dei dati di ingresso all insieme dei dati di uscita. Al tempo stesso indica un procedimento effettivo che permette di determinare, per ogni possibile configurazione in ingresso, i corrispondenti valori in uscita. Def.: Dato un algoritmo A, indichiamo con la funzione che associa ad ogni valore in ingresso il corrispondente valore in uscita. f A x f A Fondamenti dell'informatica 9

10 Problema Def.: Un Problema è una funzione P : definita su un insieme D I di elementi che chiamiamo istanze, ed a valori su un insieme di soluzioni. D S D I D S Diciamo che un algoritmo A risolve un problema P se P x f x, per ogni A istanza. x Fondamenti dell'informatica 10

11 Programma «Un programma è l esposizione di un algoritmo in un linguaggio accuratamente definito. Quindi, il programma di un calcolatore rappresenta un algoritmo, per quanto l algoritmo stesso sia un costrutto intelligente che esiste indipendentemente da qualsiasi rappresentazione. Allo stesso modo, il concetto di numero 2 esiste nella nostra mente anche quando non sia espresso graficamente.» (D.E. Knuth Fundamental Algorithms vol I, The Art of Computer Programming, 1968) Fondamenti dell'informatica 11

12 Costo di calcolo Def.: Il costo relativo all esecuzione di un programma viene definito come la quantità di risorse di calcolo che il programma utilizza durante l esecuzione. Fondamenti dell'informatica 12

13 Risorse di calcolo Le risorse di calcolo a disposizione del programma sono: 1. Il Tempo utilizzato per eseguire l algoritmo; 2. Lo Spazio di lavoro utilizzato per memorizzare i risultati intermedi; (memoria) 3. Il Numero degli esecutori, se più esecutori collaborano per risolvere lo stesso problema (processori). Fondamenti dell'informatica 13

14 Efficienza dell algoritmo Def.: Un algoritmo è efficiente se fa un uso contenuto delle risorse di calcolo a sua disposizione. Fondamenti dell'informatica 14

15 Modelli di calcolo Def.: Un modello di calcolo è semplicemente una astrazione di un esecutore reale, in cui si omettono dettagli irrilevanti allo studio di un algoritmo per risolvere un problema. Fondamenti dell'informatica 15

16 Scelta del modello di calcolo 1. Capacità espressiva del modello in relazione al problema assegnato; 2. Livello di astrazione; 3. Generalità. Fondamenti dell'informatica 16

17 Irrisolubilità Def.: Un problema è non risolubile algoritmicamente se nessun procedimento di calcolo è in grado di fornire la soluzione in tempo finito. Fondamenti dell'informatica 17

18 Problemi risolubili Si considera risolti una classe di problemi quando si è trovato un algoritmo per risolverli. In alcuni casi se non è possibile risolvere problemi di un dato tipo è possibile individuare dei casi particolari nei quali ciò invece è possibile. Fondamenti dell'informatica 18

19 Intrattabilità Def.: Un problema è intrattabile se qualunque algoritmo che lo risolva richieda una quantità molto elevata di risorse. Per esempio, alcuni giochi sono considerati intrattabili Fondamenti dell'informatica 19

20 Algoritmi Deterministici Un algoritmo deve essere dato sotto forma di una lista finita di istruzioni che specificano il procedimento esatto da eseguire in ogni passo del calcolo. In altri termini, il calcolo non dipende da chi lo esegue; esso è un processo deterministico che può essere ripetuto con successo da chiunque in qualunque momento. Fondamenti dell'informatica 20

21 Generalità degli Algoritmi Un algoritmo è un unica lista di istruzioni le quali definiscono il calcolo che può essere eseguito su un insieme qualunque di dati iniziali, e che in ogni caso fornisce il risultato corretto. In altre parole, un algoritmo indica come risolvere non un solo problema particolare, ma un intera classe di problemi simili. Fondamenti dell'informatica 21

22 Definizione di Knuth L Algoritmo è un insieme di regole (o istruzioni) avente le seguenti caratteristiche: Finito Non Ambiguo Dati di ingresso precisi Fornisce un risultato Eseguibile Fondamenti dell'informatica 22

23 Algoritmi dei giochi

24 Algoritmi per giochi Un gioco è la descrizione di una situazione in cui un certo numero di giocatori ha bisogno di prendere decisioni che si influenzano vicendevolmente. Una soluzione è la descrizione formale delle azioni che i giocatori possono o devono intraprendere e delle situazioni in cui si vengono a trovare dopo aver eseguito una particolare azione. Fondamenti dell'informatica 24

25 Il gioco dell undici Undici oggetti sono su una tavola. I due giocatori si alternano nel raccogliere 1, 2 o 3 oggetti finché non restano più oggetti sul tavolo. Il giocatore costretto a raccogliere l ultimo oggetto perde. Fondamenti dell'informatica 25

26 Strategia vincente 1. A raccoglie 2 oggetti. 2. B raccoglie K oggetti (k 3) 3. A raccoglie 4 K oggetti Fondamenti dell'informatica 26

27 Gioco del pari Il gioco comincia con 27 oggetti su una tavola. Alternandosi, i giocatori raccolgono ogni volta da 1 a 4 fiammiferi. Vince chi ha in mano un numero pari di oggetti quando questi sono stati tutti raccolti. Fondamenti dell'informatica 27

28 Strategia vincente 1. A raccoglie 2 oggetti 2. Sia r il resto ottenuto dividendo per 6 il numero di oggetti ancora da raccogliere. 3. Se B ha un numero pari di oggetti: 1. Se r = 2, 3, 4 o 5 allora A raccoglie, rispettivamente 1, 2, 3 o 4 oggetti 4. Se B ha un numero dispari di oggetti: 1. Se r = 0, 1, 2 o 3 e se sulla tavola restano ancora almeno 4 oggetti, allora A raccoglie, rispettivamente 1, 2, 3 o 4 oggetti 2. Se r = 4 allora A raccoglie 4 oggetti 3. Se sulla tavola restano 1 o 3 oggetti allora A li raccoglie tutti Fondamenti dell'informatica 28

29 La Dama Unidimensionale Regole di gioco: I due giocatori dispongono di una pedina (bianca o nera) ciascuno, che sono collocate nelle caselle estreme della scacchiera (una sola riga di sei caselle). I giocatori muovono i pezzi alternativamente. Inizia il bianco. Con la prima mossa il giocatore può spostare la sua pedina di una o due caselle; in tutte le mosse che seguono può spostarla di una sola casella. Se la casella successiva è occupata dalla pedina dell avversario, il giocatore deve scavalcarla. Vince chi riesce a collocare per primo la sua pedina all altra estremità della scacchiera, purché il suo avversario non lo faccia alla mossa successiva. In quest ultimo caso infatti la partita termina con un pareggio. Fondamenti dell'informatica 29

30 Albero della dama unidimensionale Fondamenti dell'informatica 30

31 Esapedina L esapedina si gioca su una scacchiera 3x3 con tre pedine da entrambe le parti disposte sulla prima e sull ultima fila della scacchiera. Sono permessi solamente due tipi di mossa: 1. Una pedina può avanzare di un quadrato fino a un quadrato vuoto. 2. Una pedina può catturare una pedina nemica muovendosi diagonalmente di un quadrato, a destra o a sinistra. Il pezzo catturato viene tolto dalla scacchiera. Si vince la partita in uno dei seguenti modi: 1. facendo avanzare una pedina fino alla terza riga; 2. catturando tutti i pezzi avversari; 3. arrivando ad una situazione in cui l avversario non può muovere (negli scacchi si avrebbe patta per stallo). Le mosse dei giocatori si alternano e ognuno muove un pezzo alla volta. Il primo a muovere è il nero. Fondamenti dell'informatica 31

32 Primo caso Fondamenti dell'informatica 32

33 Secondo caso Fondamenti dell'informatica 33

34 Proprietà dei giochi 1. Il gioco è condotto da due giocatori che eseguono alternativamente una mossa 2. Il gioco termina con esattamente uno di due possibili risultati: 1. O vince A il giocatore che gioca per primo 2. O vince B l avversario 3. Ogni mossa consiste in una scelta da parte del giocatore di una mossa tra un insieme di mosse possibili Fondamenti dell'informatica 34

35 Proprietà dei giochi 4. Ad ogni istante del gioco, i giocatori sono informati completamente su tutte le mosse già compiute e su tutte quelle che potranno venir fatte 5. Esiste un limite superiore per il numero di mosse in una partita Fondamenti dell'informatica 35

36 Teorema: Strategia vincente In ogni gioco che soddisfi le proprietà da 1 a 5 già definite, esiste una strategia vincente per uno dei giocatori. Fondamenti dell'informatica 36

37 Classificazione dei giochi Cooperazione Giochi non cooperativi Giochi cooperativi Informazione Giochi ad informazione perfetta Giochi ad informazione imperfetta Tempo Giochi strategici normali Giochi strategici a conoscenza successiva Fondamenti dell'informatica 37

38 Giochi combinatori Sono 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 Fondamenti dell'informatica 38

39 Come giocare Un possibile approccio ad un gioco combinatorio: Considera tutte le mosse ammissibili nello stato iniziale 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 base di gioco Generazione di tutte le posizioni risultanti Valutazione di una posizione Fondamenti dell'informatica 39

40 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 Fondamenti dell'informatica 40

41 Albero di un gioco x x x x x x x x x x O x O x O x O x x O x O x x x O O O x x x O O O x x x x x O x x x O O f(s) =+1 se la posizione è vincente per X f(s) =-1 se la posizione è vincente per O f(s) = 0 se la posizione è patta Fondamenti dell'informatica 41

42 Albero del gioco I vertici rappresentano le diverse situazioni che si possono presentare in una partita I rami rappresentano le possibili scelte che un giocatore può fare Fondamenti dell'informatica 42

43 Potatura alfa-beta Possiamo migliorare l efficienza dell albero con una potatura Idea di base: Se hai un idea che di certo non è buona non perdere tempo per capire quanto sia cattiva Non valutiamo dei nodi che non è necessario valutare Fondamenti dell'informatica 43

44 Gioco del sei Su una tavola ci sono 6 oggetti Ogni giocatore, a turno, ne sceglie uno o due. Perde il giocatore che raccoglie l ultimo oggetto Fondamenti dell'informatica 44

45 Albero del gioco del sei 6 A B B B B B A A A A 1 2 A A B A B A B A B A Fondamenti dell'informatica 45

46 Regole Il massimo livello in un albero viene detto ordine. È uguale alla massima lunghezza di una partita. I vertici di livello dispari corrispondono alle mosse di A, quelli di livello pari alle mosse di B. Fondamenti dell'informatica 46

47 Dimostrazione L algoritmo è costruito per induzione sulla lunghezza v della più lunga partita possibile nel gioco (v è l ordine dell albero) v=0: nessuna mossa. Se è vero per gli ordini v dimostriamo che è vero per v+1 Fondamenti dell'informatica 47

48 Storia della Teoria dei Giochi 1912 Bermelo - gioco degli scacchi 1921 Borel poker 1928 Von Neumann giochi combinatori 1950 Nash equilibrio nei giochi non a somma zero 1966 Rapoport giochi a 2 giocatori Fondamenti dell'informatica 48

49 Dilemma del prigioniero Due prigionieri accusati dello stesso crimine hanno queste possibilità: Se solo uno dei due confessa, chi ha confessato evita la pena; l altro però viene condannato a 7 anni di carcere; Se entrambi confessano, vengono entrambi condannati a 6 anni di carcere; Se nessuno dei due confessa, vengono entrambi condannati a 1 anno di carcere. Fondamenti dell'informatica 49

50 Dilemma del prigioniero confessa non confessa confessa (6,6) (0,7) non confessa (7,0) (1,1) Se Confessa: Caso migliore 0 anni Caso peggiore 6 anni Se Non Confessa: Caso migliore 1 anno Casso peggiore 7 anni Fondamenti dell'informatica 50

51 Gioco del pollo Basato sulla sfida automobilistica del film Gioventù Bruciata. se entrambi sterzano fanno entrambi una magra figura con gli amici Se uno sterza per primo e l altro continua per un tratto di strada: uno fa la figura del pollo e l altro guadagna il rispetto degli amici Se entrambi continuano, moriranno Fondamenti dell'informatica 51

52 Gioco del pollo sterza continua sterza (pari,pari) (pollo,vince) continua (vince,pollo) (muore,muore) Il problema sta nel convincere l altro che non si è disposti a sterzare nonostante l alto rischio implicito di questa scelta. La cooperazione in questo gioco è la soluzione migliore Fondamenti dell'informatica 52

53 Gioco dell eroe L eroe cerca il gesto eclatante Nessun altro deve compiere lo stesso gesto coopera defeziona coopera (1,1) (3,4) defeziona (4,3) (2,2) La cooperazione ha il minimo vantaggio Fondamenti dell'informatica 53

54 Gioco del leader Uno sceglie il conflitto, l altro si allea coopera defeziona coopera (2,2) (3,4) defeziona (4,3) (1,1) Uno deve imporre la propria volontà all altro La cooperazione è ottimale Fondamenti dell'informatica 54

55 Teorema di Nash Estendeva la teoria dei giochi ad un numero arbitrario di partecipanti e dimostrava che, in certe condizioni, esiste sempre una situazione di equilibrio che si ottiene quando ciascun individuo sceglie la sua mossa strategica in modo da massimizzare la sua funzione di retribuzione. Tutti i giocatori possono così operare una scelta dalla quale ciascuno trae un vantaggio o limita il suo svantaggio al minimo Fondamenti dell'informatica 55

56 Equilibrio Equilibrio in Strategia dominante Io faccio meglio che posso indipendentemente da ciò che fai tu Tu fai meglio che puoi indipendentemente da ciò che faccio io Equilibrio di Nash Io faccio meglio che posso dato ciò che fai tu Tu fai meglio che puoi dato ciò che faccio io Fondamenti dell'informatica 56

57 Dilemma del viaggiatore Una compagnia aerea ha danneggiato due oggetti preziosi identici che due viaggiatori avevano acquistato durante un viaggio di piacere. Il comandante chiede ad ognuno di loro di indicare il valore dell oggetto compreso tra 2,00 e 100,00 precisando che: Rimborserà ad entrambi la cifra più bassa Premierà con 2,00 chi ha espresso il valore più basso Ridurrà il rimborso di 2,00 all altro viaggiatore Fondamenti dell'informatica 57

58 Problema del commesso viaggiatore Un rappresentante deve consegnare della merce in diversi paesi Attraverso il navigatore satellitare conosce esattamente le distanze effettive presenti tra i paesi Si vuole minimizzare la distanza totale che occorre percorrere per effettuare il giro completo dei clienti, senza passare due volte per lo stesso paese e ritornare alla località di partenza Fondamenti dell'informatica 58

59 Labirinto Possiamo immaginare un labirinto come un sistema finito di nodi dai quali si dipartono dei corridoi. Ogni corridoio congiunge due nodi che vengono detti adiacenti. I nodi morti sono quelli da cui si diparte un solo corridoio. Fondamenti dell'informatica 59

60 Rappresentazione grafica H C E I M B D N L A F K Fondamenti dell'informatica 60

61 Regola Diciamo che un nodo Y è accessibile da un nodo X se esiste un cammino che conduce da X a Y attraverso qualche successione di corridoi intermedi. Se Y è accessibile da X allora esiste un cammino semplice tra i due nodi, cioè un cammino che non attraversa più di una volta ciascun nodo. Fondamenti dell'informatica 61

62 Algoritmo del labirinto Corridoio: Verde: non è mai passato Giallo: è passato una volta Rosso: è passato due volte Modalità di passaggio: Svolgendo il filo (passa da verde a giallo) Riavvolgendo il filo (passa da giallo a rosso) Non è possibile passare in un corridoio rosso Fondamenti dell'informatica 62

63 Condizione dei Nodi Arrivo: si è raggiunta la meta Ciclo: esistono almeno due altri corridoi gialli che si dipartono dal nodo Verde: Esiste almeno un corridoio verde che si diparte dal nodo Partenza: Ci troviamo nel nodo iniziale Quinto caso: Non si verifica nessuna delle condizioni precedenti Fondamenti dell'informatica 63

64 Metodo di ricerca Condizione 1. Arrivo 2. Ciclo 3. Verde 4. Partenza 5. Quinto caso Mossa 1. Stop 2. Riavvolgere il filo 3. Svolgere il filo 4. Stop 5. Riavvolgere il filo Fondamenti dell'informatica 64

65 Motivazioni del metodo 1. Qualunque sia la posizione di Partenza e di Arrivo nel labirinto, alla fine, dopo un numero finito di mosse, si deve raggiungere un ordine di Stop. 2. Se l ordine di Stop giunge in Arrivo, il punto è accessibile. Inoltre, siamo giunti attraverso un cammino semplice e riavvolgendo il filo possiamo tornare alla Partenza. 3. Se l ordine di Stop giunge in Partenza, vuol dire che l Arrivo è inaccessibile. Fondamenti dell'informatica 65

66 Esempio 1 Numero della mossa Condizione trovata Mossa Corridoio scelto Stato dopo la mossa 1 Verde Svolge AB Giallo 2 Verde Svolge BC Giallo 3 Verde Svolge CD Giallo 4 Verde Svolge DH Giallo 5 Verde Svolge HI Giallo 6 Quinto caso Riavvolge IH Rosso 7 Quinto caso Riavvolge HD Rosso 8 Verde Svolge DB Giallo 9 Ciclo Riavvolge BD Rosso 10 Verde Svolge DF Giallo 11 Arrivo Stop Stop Stop Fondamenti dell'informatica 66

67 Esempio 2 Numero della mossa Condizione trovata Mossa Corridoio scelto Stato dopo la mossa 1 Verde Svolge KN Giallo 2 Verde Svolge NL Giallo 3 Verde Svolge LM Giallo 4 Verde Svolge MN Giallo 5 Ciclo Riavvolge NM Rosso 6 Quinto caso Riavvolge ML Rosso 7 Quinto caso Riavvolge LN Rosso 8 Quinto caso Riavvolge NK Rosso 9 Partenza Stop Stop Stop Fondamenti dell'informatica 67

68 La regola della destra Entra nel labirinto. Quando ti trovi a un nodo prendi il ramo più a destra. Se arrivi a un vicolo cieco, ritorna sui tuoi passi fino all'ultimo nodo e prendi il ramo più a destra tra quelli ancora inesplorati. Il modo migliore per visualizzare questo algoritmo è toccare con la mano destra il muro alla propria destra per tutto il labirinto, senza saltare mai un ramo situato alla propria destra. Naturalmente la "regola della sinistra" funziona altrettanto bene. È solo necessario essere coerenti una volta entrati nel labirinto. Fondamenti dell'informatica 68

69 Il metodo di Tremaux Entra nel labirinto. Dapprima vai dove ti pare, contrassegnando il sentiero con un filo, o con sassolini, o molliche di pane, o con qualsiasi cosa tu abbia a disposizione. Continua così finché arrivi: alla meta (se hai fortuna), oppure a un vicolo cieco, oppure a un nodo che avevi già attraversato in precedenza. Se arrivi a un vicolo cieco, ritorna al nodo precedente, assicurandoti di contrassegnare il percorso anche a ritroso: in tal modo, se entri ed esci da un vicolo cieco, questo avrà due piste di briciole di pane. Ciò ti permetterà di evitarlo in futuro. Nell'algoritmo di Tremaux non si esplora mai un ramo più di due volte. Fondamenti dell'informatica 69

70 Il metodo di Tremaux Se arrivi a un nodo già attraversato, fai così: se sei arrivato da un ramo fino ad allora inesplorato (una sola pista di briciole di pane dietro di te) ripercorri quello stesso ramo fino al nodo precedente, altrimenti se c'è un ramo ancora inesplorato a partire dal nodo, prendi questa direzione, altrimenti: prendi qualsiasi ramo che sia stato percorso una sola volta. Queste regole esauriscono l'algoritmo di Tremaux. Seguendole scrupolosamente farai un giro completo del labirinto, attraversando ogni ramo due volte, in ciascuna direzione. Ovviamente, puoi anche fermarti quando raggiungi la meta, se non è necessario percorrere l'intero labirinto. Fondamenti dell'informatica 70

71 Il metodo di Ore Entra nel labirinto. Se non sei già a un nodo, raggiungi quello più vicino. Se non sai quale direzione conduca a quello più vicino, vai a caso fino a incontrare un nodo. Poi contrassegna in qualche maniera questo nodo: sarà la tua casa base. Partendo dal nodo base, esplora ogni ramo che si diparte da questo. Metti un contrassegno (ad esempio un ciottolo) all'entrata di ciascun ramo quando cominci a percorrerlo. Esplora ciascun ramo solo fino al nodo successivo. Poi metti un ciottolo all'estremità lontana del ramo e ritorna sui tuoi passi fino alla casa base. Fondamenti dell'informatica 71

72 Il metodo di Ore Prima fase Identifica i vicoli ciechi (ad es. con un ciottolo rosso, o chiudendoli con uno spago). Una volta contrassegnato in questo modo, un ramo potrà essere ignorato in futuro. Se un ramo gira su se stesso e ritorna al nodo originario, contrassegnalo come un vicolo cieco: è altrettanto privo di utilità. A te interessa individuare quei rami che conducono a nodi con rami nuovi. Alla fine dell'esplorazione preliminare ciascun percorso potenziale verso la meta ha un ciottolo a ciascuna estremità, e tu ti trovi di nuovo al nodo base. Adesso esplora fino a una profondità di due nodi. Cammina lungo ciascun ramo che non sia un vicolo cieco fino al nuovo nodo, ed esplora allo stesso modo ciascun ramo che si diparte da questo. Fondamenti dell'informatica 72

73 Il metodo di Ore Seconda fase Aggiungi un ciottolo a ciascuna estremità dei rami primari, cosicché adesso avranno due ciottoli su ciascuna estremità, e metti un ciottolo su ciascuna estremità dei nuovi rami secondari. Ciò ti consentirà di ritrovare la strada fino al nodo base: il ramo che conduce a quest'ultimo ha un ciottolo in più rispetto agli altri. Come in precedenza, contrassegna le entrate dei vicoli ciechi e dei percorsi circolari. Se un ramo conduce a un nodo già esplorato (con almeno un ciottolo segnaletico) contrassegna anche questo sentiero a entrambe le estremità. Alla fine sarai tornato sui tuoi passi e ti ritroverai di nuovo al nodo base. Fondamenti dell'informatica 73

74 Il metodo di Ore Terza fase Nella terza fase di esplorazione, spingiti fino a una distanza di tre nodi dal nodo base, aggiungendo un ciottolo a ciascuna estremità di ogni ramo esplorato. Prosegui l'esplorazione sempre più in profondità, fino a raggiungere la meta. L'algoritmo di Ore ti permetterà di individuare la via più breve verso la meta. Ovviamente l'andamento dell'esplorazione non seguirà questa via più breve, ma se, ad es., la via più breve attraversa cinque nodi allora la troverai nella quinta fase dell'esplorazione, e saprai che quella è la via più breve. Fondamenti dell'informatica 74

Fondamenti di Informatica. Algoritmi per giochi. Il gioco dell undici. Prof.V.L.Plantamura Informatica e Comunicazione Digitale a.a.

Fondamenti di Informatica. Algoritmi per giochi. Il gioco dell undici. Prof.V.L.Plantamura Informatica e Comunicazione Digitale a.a. Fondamenti di Informatica Prof.V.L.Plantamura Informatica e Comunicazione Digitale a.a. 2005-200 lgoritmi per giochi Trovare un algoritmo che fornisca un unico metodo per risolvere ogni particolare problema

Dettagli

Algoritmi e giochi combinatori

Algoritmi e giochi combinatori Algoritmi e giochi combinatori Panoramica Giochi combinatori Programmi che giocano Albero di un gioco L algoritmo Minimax 1 Perché studiare i giochi? Problemi che coinvolgono agenti in competizione tra

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

Teoria dell Informazione

Teoria dell Informazione Corso di Laurea Magistrale in Scienze dell Informazione Editoriale, Pubblica e Sociale Teoria dell Informazione Cosa è l informazione L informazione è qualcosa che si possiede e si può dare ad un altro

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

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

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

INFORMATICA GENERALE Prof. Alberto Postiglione Dipartimento Scienze della Comunicazione Università degli Studi di Salerno

INFORMATICA GENERALE Prof. Alberto Postiglione Dipartimento Scienze della Comunicazione Università degli Studi di Salerno INFORMATICA GENERALE Prof. Alberto Postiglione Dipartimento Scienze della Comunicazione Università degli Studi di Salerno : Gli Algoritmi INFORMATICA GENERALE Prof. Alberto Postiglione Dipartimento Scienze

Dettagli

INFORMATICA GENERALE Prof. Alberto Postiglione. Università degli Studi di Salerno. UD 3.1a: Gli Algoritmi

INFORMATICA GENERALE Prof. Alberto Postiglione. Università degli Studi di Salerno. UD 3.1a: Gli Algoritmi INFORMATICA GENERALE Prof. Alberto Postiglione Scienze della Comunicazione Università degli Studi di Salerno : Gli Algoritmi INFORMATICA GENERALE Prof. Alberto Postiglione Scienze della Comunicazione 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

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

Una prima distinzione nell ambito della teoria dei giochi è quella tra: Giochi cooperativi (si possono fare accordi vincolanti)

Una prima distinzione nell ambito della teoria dei giochi è quella tra: Giochi cooperativi (si possono fare accordi vincolanti) Una prima distinzione nell ambito della teoria dei giochi è quella tra: Giochi cooperativi (si possono fare accordi vincolanti) Giochi non cooperativi (non si possono fare accordi vincolanti) Ci occuperemo

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

Elementi di Teoria dei giochi

Elementi di Teoria dei giochi Elementi di Teoria dei giochi Teoria dei giochi Studio dei modelli matematici di cooperazione e conflitto tra individui intelligenti e razionali. Razionalità: ciascun individuo massimizza la sua utilità

Dettagli

REGOLE DI BASE DEL GIOCO DEGLI SCACCHI

REGOLE DI BASE DEL GIOCO DEGLI SCACCHI REGOLE DI BASE DEL GIOCO DEGLI SCACCHI Queste sono le regole di base del gioco degli scacchi. Per giocare nei tornei occorre seguire anche altre regole comportamentali ed agonistiche. Il regolamento completo

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

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

Sistemi lineari. Lorenzo Pareschi. Dipartimento di Matematica & Facoltá di Architettura Universitá di Ferrara

Sistemi lineari. Lorenzo Pareschi. Dipartimento di Matematica & Facoltá di Architettura Universitá di Ferrara Sistemi lineari Lorenzo Pareschi Dipartimento di Matematica & Facoltá di Architettura Universitá di Ferrara http://utenti.unife.it/lorenzo.pareschi/ lorenzo.pareschi@unife.it Lorenzo Pareschi (Univ. Ferrara)

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

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

Teoria dei Giochi Prova del 30 Novembre 2012

Teoria dei Giochi Prova del 30 Novembre 2012 Cognome, Nome, Corso di Laurea, email: Teoria dei Giochi Prova del 30 Novembre 2012 Esercizio 1. Si consideri il seguente gioco. Il primo giocatore può scegliere un numero tra {3,4,8,16,38}; il secondo

Dettagli

Concetti Introduttivi. Il Computer

Concetti Introduttivi. Il Computer Concetti Introduttivi Il Computer Introduzione Informazione Notizia, dato o elemento che consente di avere conoscenza più o meno esatta di fatti, situazioni, modi di essere Messaggio Tutto ciò che porta

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

Teoria dei Giochi. Anna Torre

Teoria dei Giochi. Anna Torre Teoria dei Giochi Anna Torre Almo Collegio Borromeo 16 marzo 2010 email: anna.torre@unipv.it sito web del corso:www-dimat.unipv.it/atorre/borromeo2010.html GIOCHI RIPETUTI: COLLUSIONE GIOCHI RIPETUTI:

Dettagli

WIND RIVER. Introduzione

WIND RIVER. Introduzione WIND RIVER Introduzione Prima dell'arrivo dei primi coloni nelle grandi praterie, la vita dei nativi americani ruotava attorno agli spostamenti delle mandrie di bisonti. Ogni giocatore è un capo tribù

Dettagli

In Action with Math. Competizione e Strategia: Teoria dei Giochi. Giulia Bernardi, Roberto Lucchetti. 3 dicembre Giochi in forma strategica

In Action with Math. Competizione e Strategia: Teoria dei Giochi. Giulia Bernardi, Roberto Lucchetti. 3 dicembre Giochi in forma strategica In Action with Math Competizione e Strategia: Teoria dei Giochi Giulia Bernardi, Roberto Lucchetti 3 dicembre 2014 1 / 20 Gioco in forma strategica Due o più giocatori con un numero nito di mosse a disposizione.

Dettagli

Kangourou della Matematica 2009 finale nazionale italiana Mirabilandia, 11 maggio 2009

Kangourou della Matematica 2009 finale nazionale italiana Mirabilandia, 11 maggio 2009 Kangourou della Matematica 2009 finale nazionale italiana Mirabilandia, 11 maggio 2009 LIVELLO JUNIOR J1. (5 punti ) Un asta lunga 10 metri va spezzata in modo che sia possibile riporre (eventualmente

Dettagli

Lezione 4. Problemi trattabili e soluzioni sempre più efficienti. Gianluca Rossi

Lezione 4. Problemi trattabili e soluzioni sempre più efficienti. Gianluca Rossi Lezione 4 Problemi trattabili e soluzioni sempre più efficienti Gianluca Rossi Trattabile o intrattabile? Consideriamo ora il problema, ben noto a tutti gli studenti a partire dalla scuola media, di calcolare

Dettagli

Gara Matematica. Dipartimento di Matematica Ulisse Dini. Viale Morgagni 67/a Firenze. Soluzioni edizione 2011

Gara Matematica. Dipartimento di Matematica Ulisse Dini. Viale Morgagni 67/a Firenze. Soluzioni edizione 2011 Gara Matematica Dipartimento di Matematica Ulisse Dini Viale Morgagni 67/a - 50134 Firenze Soluzioni edizione 011 Esercizio 1. Determinare tutti gli interi positivi non nulli n che sono uguali alla somma

Dettagli

Esercizi per il corso di. Logistica I. a.a Daniela Favaretto. Dipartimento di Matematica Applicata Università Ca Foscari di Venezia

Esercizi per il corso di. Logistica I. a.a Daniela Favaretto. Dipartimento di Matematica Applicata Università Ca Foscari di Venezia sercizi per il corso di Logistica I a.a. - aniela avaretto ipartimento di Matematica pplicata Università a oscari di Venezia sercizio Individuare un albero di supporto di lunghezza minima (SST) sul seguente

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

Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Termine algoritmo da:

Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Termine algoritmo da: Algoritmi Algoritmi Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Termine algoritmo da: http://it.wikipedia.org/wiki/al-khwarizmi Un

Dettagli

1 Fattorizzazione di polinomi

1 Fattorizzazione di polinomi 1 Fattorizzazione di polinomi Polinomio: un polinomio di grado n nella variabile x, è dato da p(x) = a n x n + a n 1 x n 1 + + a 1 x + a 0 con a n 0, a 0 è detto termine noto, a k è detto coefficiente

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

Altrimenti, il M.C.D. di a e b è anche divisore di r (e.g. a=15,b=6,r=3 che è il M.C.D.)

Altrimenti, il M.C.D. di a e b è anche divisore di r (e.g. a=15,b=6,r=3 che è il M.C.D.) Elaboratore Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni sui dati digitale l informazione è rappresentata in forma numerica

Dettagli

Insiemistica. Capitolo 1. Prerequisiti. Obiettivi. Gli insiemi numerici di base Divisibilità e fattorizzazione nei numeri interi

Insiemistica. Capitolo 1. Prerequisiti. Obiettivi. Gli insiemi numerici di base Divisibilità e fattorizzazione nei numeri interi Capitolo 1 Insiemistica Prerequisiti Gli insiemi numerici di base Divisibilità e fattorizzazione nei numeri interi Obiettivi Sapere utilizzare opportunamente le diverse rappresentazioni insiemistiche Sapere

Dettagli

Analogico vs. Digitale. LEZIONE II La codifica binaria. Analogico vs digitale. Analogico. Digitale

Analogico vs. Digitale. LEZIONE II La codifica binaria. Analogico vs digitale. Analogico. Digitale Analogico vs. Digitale LEZIONE II La codifica binaria Analogico Segnale che può assumere infiniti valori con continuità Digitale Segnale che può assumere solo valori discreti Analogico vs digitale Il computer

Dettagli

SOLUZIONI. u u In un quadrato magico sommando gli elementi di una riga, di una

SOLUZIONI. u u In un quadrato magico sommando gli elementi di una riga, di una 1 a GARA MATEMATICA CITTÀ DI PADOVA 2 Aprile 2016 SOLUZIONI 1.- Sia n un numero intero. È vero che se la penultima cifra di n 2 è dispari allora l ultima è 6? Possiamo supporre n positivo. Sia : n = 100c

Dettagli

Moltiplicazione. Divisione. Multipli e divisori

Moltiplicazione. Divisione. Multipli e divisori Addizione Sottrazione Potenze Moltiplicazione Divisione Multipli e divisori LE QUATTRO OPERAZIONI Una operazione aritmetica è quel procedimento che fa corrispondere ad una coppia ordinata di numeri (termini

Dettagli

Modulo 10. Teoria dei giochi

Modulo 10. Teoria dei giochi Modulo 10 Teoria dei giochi Teoria dei giochi La teoria dei giochi analizza situazioni in cui gli agenti comprendono che le loro azioni influenzano le azioni degli altri agenti. Tali situazioni si definiscono

Dettagli

Sviluppo di programmi

Sviluppo di programmi Sviluppo di programmi Per la costruzione di un programma conviene: 1. condurre un analisi del problema da risolvere 2. elaborare un algoritmo della soluzione rappresentato in un linguaggio adatto alla

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

Teoria dei Giochi Prova del 9 Settembre 2011. se tutti i giocatori scelgono lo stesso numero, il payoff è zero per ciascun giocatore;

Teoria dei Giochi Prova del 9 Settembre 2011. se tutti i giocatori scelgono lo stesso numero, il payoff è zero per ciascun giocatore; Teoria dei Giochi Prova del 9 Settembre 2011 Cognome, Nome, Numero di Matricola, email: Esercizio 1 Considera il seguente gioco non cooperativo. I giocatori sono n, con n dispari. Ciascun giocatore sceglie

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Introduzione al Corso Maria Rita Di Berardini (Camerino), Emanuela Merelli (Ascoli) 1 1 Scuola di Scienze e Tecnologie - Sezione di Informatica Università di Camerino Parte I Il concetto di Algoritmo Il

Dettagli

Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe.

Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe. Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe. 1) Comprendere il problema 2) Stabilire quali sono le azioni da eseguire per risolverlo 3) Stabilire la

Dettagli

Burg appenzell. ( Traduzione a cura di Andrea Turing70 Casarino della Tana dei Goblin )

Burg appenzell. ( Traduzione a cura di Andrea Turing70 Casarino della Tana dei Goblin ) Burg appenzell ( Traduzione a cura di Andrea Turing70 Casarino della Tana dei Goblin ) Nota importante: al fine di un agevole comprensione di questa traduzione del regolamento è necessario fare riferimento

Dettagli

Sistemi di numerazioni e metodi di trasformazione

Sistemi di numerazioni e metodi di trasformazione B Sistemi di numerazioni e metodi di trasformazione Nei calcolatori attuali vengono utilizzati quattro sistemi di numerazione: binario, in base otto, decimale ed esadecimale. Ognuno di essi ha pregi che

Dettagli

Introduzione teoria dei giochi pt. 2. Corso di Scienza Politica 10/11 Luca Pinto

Introduzione teoria dei giochi pt. 2. Corso di Scienza Politica 10/11 Luca Pinto Introduzione teoria dei giochi pt. 2 Corso di Scienza Politica 10/11 Luca Pinto Soluzioni es. 1 (2, 1), (B, A) Soluzioni es. 2 1, (A, A), (sx, dx) Es. 3: ordinamento preferenze Terroristi: violenza 3 negoziazione,

Dettagli

In molte applicazioni sorge il problema di sapere in quanti modi possibili si può presentare un certo fenomeno.

In molte applicazioni sorge il problema di sapere in quanti modi possibili si può presentare un certo fenomeno. Definizione Oggetto del calcolo combinatorio è quello di determinare il numero dei modi mediante i quali possono essere associati, secondo prefissate regole, gli elementi di uno stesso insieme o di più

Dettagli

Cosa è l Informatica?

Cosa è l Informatica? Cosa è l Informatica? Scienza degli elaboratori elettronici (Computer Science) Scienza dell informazione Scienza della rappresentazione, memorizzazione, elaborazione e trasmissione dell informazione Elaboratore

Dettagli

= < < < < < Matematica 1

= < < < < < Matematica  1 NUMERI NATURALI N I numeri naturali sono: 0,1,2,3,4,5,6,7,8,9,10,11,12,13,... L insieme dei numeri naturali è indicato con la lettera. Si ha cioè: N= 0,1,2,3,4,5,6,7,.... L insieme dei naturali privato

Dettagli

Informatica, Algoritmi, Linguaggi

Informatica, Algoritmi, Linguaggi Elementi di Informatica e Applicazioni Numeriche T Informatica, Algoritmi, Linguaggi Cos'è l'informatica? Che cos'è l'informatica? Cos'è l'informatica? Che cos'è l'informatica? Dell'informatica possiamo

Dettagli

La codifica. dell informazione

La codifica. dell informazione 00010010101001110101010100010110101000011100010111 00010010101001110101010100010110101000011100010111 La codifica 00010010101001110101010100010110101000011100010111 dell informazione 00010010101001110101010100010110101000011100010111

Dettagli

La codifica digitale

La codifica digitale La codifica digitale Codifica digitale Il computer e il sistema binario Il computer elabora esclusivamente numeri. Ogni immagine, ogni suono, ogni informazione per essere compresa e rielaborata dal calcolatore

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

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

Concentriamo la nostra attenzione sull insieme dei numeri razionali Q. In Q sono definite

Concentriamo la nostra attenzione sull insieme dei numeri razionali Q. In Q sono definite Lezioni del 22 e 24 settembre. Numeri razionali. 1. Operazioni, ordinamento. Indichiamo con N, Z, Q gli insiemi dei numeri naturali, interi relativi, e razionali: N = {0, 1, 2,...} Z = {0, ±1, ±2,...}

Dettagli

INFORMATICA DI BASE Linguaggio C Prof. Andrea Borghesan

INFORMATICA DI BASE Linguaggio C Prof. Andrea Borghesan INFORMATICA DI BASE Linguaggio C Prof. Andrea Borghesan venus.unive.it/borg borg@unive.it Ricevimento lunedì, prima o dopo lezione? Aula? 1 Analisi e programmazione Tramite un elaboratore si possono risolvere

Dettagli

Il problema del commesso viaggiatore

Il problema del commesso viaggiatore Il problema del commesso viaggiatore Mauro Passacantando Dipartimento di Informatica Largo B. Pontecorvo 3, Pisa mpassacantando@di.unipi.it M. Passacantando TFA 2012/13 - Corso di Ricerca Operativa Università

Dettagli

Kangourou della Matematica 2012 Coppa a squadre Kangourou Semifinale turno A Cervia, 5 maggio Quesiti

Kangourou della Matematica 2012 Coppa a squadre Kangourou Semifinale turno A Cervia, 5 maggio Quesiti Kangourou della Matematica 0 Coppa a squadre Kangourou Semifinale turno A Cervia, 5 maggio 0 Quesiti. umeri di quest anno Quanti numeri interi positivi n sono tali che entrambi i numeri n 0 e n + 0 siano

Dettagli

Dal Problema all Algoritmo. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Dal Problema all Algoritmo. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Dal Problema all Algoritmo Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Cosa Impareremo Informazioni e codici Definizione e soluzione di un problema Individuazione dei dati Definizione

Dettagli

Lezione 1. Fondamentali

Lezione 1. Fondamentali La Scacchiera La figura seguente illustra il terreno dello scontro tra i due giocatori, i pezzi disponibili e la posizione di inizio del gioco. GIOCATORE CON IL NERO SEDUTO DA QUESTA PARTE GIOCATORE CON

Dettagli

Come ragiona il computer. Problemi e algoritmi

Come ragiona il computer. Problemi e algoritmi Come ragiona il computer Problemi e algoritmi Il problema Abbiamo un problema quando ci poniamo un obiettivo da raggiungere e per raggiungerlo dobbiamo mettere a punto una strategia Per risolvere il problema

Dettagli

Algoritmi. Pagina 1 di 5

Algoritmi. Pagina 1 di 5 Algoritmi Il termine algoritmo proviene dalla matematica e deriva dal nome di in algebrista arabo del IX secolo di nome Al-Khuwarizmi e sta ad indicare un procedimento basato su un numero finito operazioni

Dettagli

giochi sulla persistenza

giochi sulla persistenza UdA 6 Applicazioni Web in PHP lezione 1 giochi sulla persistenza In questa lezione impareremo... ad applicare i campi nascosti, le sessioni e i cookies per realizzare semplici giochi Primo esempio: il

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

Lunghezza media. Teorema Codice D-ario prefisso per v.c. X soddisfa. L H D (X). Uguaglianza vale sse D l i. = p i. . p.1/27

Lunghezza media. Teorema Codice D-ario prefisso per v.c. X soddisfa. L H D (X). Uguaglianza vale sse D l i. = p i. . p.1/27 Lunghezza media Teorema Codice D-ario prefisso per v.c. X soddisfa L H D (X). Uguaglianza vale sse D l i = p i.. p.1/27 Lunghezza media Teorema Codice D-ario prefisso per v.c. X soddisfa L H D (X). Uguaglianza

Dettagli

1 L estrazione di radice

1 L estrazione di radice 1 L estrazione di radice Consideriamo la potenza 3 2 = 9 di cui conosciamo: Esponente 3 2 = 9 Valore della potenza Base L operazione di radice quadrata consiste nel chiedersi qual è quel numero x che elevato

Dettagli

- Ball handling senza scambiarsi la palla (gara 1c1 a tempo)

- Ball handling senza scambiarsi la palla (gara 1c1 a tempo) 1) Palloni sparsi sul campo Corsa libera e: - saltare i palloni staccando su un piede - saltare i palloni staccando su due piedi (arresto a un tempo) - fermarsi davanti al pallone con un piede arretrato

Dettagli

Esercizi su Python. 14 maggio Scrivere una procedura che generi una stringa di 100 interi casuali tra 1 e 1000 e che:

Esercizi su Python. 14 maggio Scrivere una procedura che generi una stringa di 100 interi casuali tra 1 e 1000 e che: Esercizi su Python 14 maggio 2012 1. Scrivere una procedura che generi una stringa di 100 interi casuali tra 1 e 1000 e che: 1. conti quanti elementi pari sono presenti nella lista; 2. conti quanti quadrati

Dettagli

La tabella è completa perché l'addizione è un'operazione sempre possibile.

La tabella è completa perché l'addizione è un'operazione sempre possibile. Operazioni aritmetiche fondamentali in N Addizione Operazione che a due numeri (addendi) ne associa un terzo (somma) ottenuto contando di seguito al primo tante unità quante ne rappresenta il secondo.

Dettagli

Teoria dei giochi e comportamento strategico

Teoria dei giochi e comportamento strategico Capitolo 14 Teoria dei giochi e comportamento strategico Soluzioni delle Domande di ripasso 1. Un equilibrio di Nash in un gioco si verifica quando ogni giocatore sceglie una strategia che gli fornisce

Dettagli

PROBLEMI ALGORITMI E PROGRAMMAZIONE

PROBLEMI ALGORITMI E PROGRAMMAZIONE PROBLEMI ALGORITMI E PROGRAMMAZIONE SCIENZE E TECNOLOGIE APPLICATE CLASSE SECONDA D PROGRAMMARE = SPECIFICARE UN PROCEDIMENTO CAPACE DI FAR SVOLGERE AD UNA MACCHINA UNA SERIE ORDINATA DI OPERAZIONI AL

Dettagli

ESERCITAZIONE MICROECONOMIA (CORSO B) 21-12-2009 ESEMPI DI ESERCIZI DI TEORIA DEI GIOCHI

ESERCITAZIONE MICROECONOMIA (CORSO B) 21-12-2009 ESEMPI DI ESERCIZI DI TEORIA DEI GIOCHI ESERCITZIONE MICROECONOMI (CORSO ) --009 ESEMPI DI ESERCIZI DI TEORI DEI GIOCHI Questo documento contiene alcuni esempi di esercizi di teoria dei giochi. Gli esercizi presentati non corrispondono esattamente

Dettagli

per un altro; le più importanti sono quelle di seguito elencate.

per un altro; le più importanti sono quelle di seguito elencate. 2 Abilità di calcolo I quiz raccolti in questo capitolo sono finalizzati alla valutazione della rapidità e della precisione con cui esegui i calcoli matematici. Prima di cimentarti con i test proposti,

Dettagli

Algoritmi di ricerca. Per ricerca si intende qui il procedimento di localizzare una particolare informazione in un elenco di dati.

Algoritmi di ricerca. Per ricerca si intende qui il procedimento di localizzare una particolare informazione in un elenco di dati. E. Calabrese: Fondamenti di Informatica Algoritmi-1 Algoritmi di ricerca Per ricerca si intende qui il procedimento di localizzare una particolare informazione in un elenco di dati. Per esempio: - cercare

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

Corso di Informatica di Base

Corso di Informatica di Base Corso di Informatica di Base A.A. 2011/2012 Algoritmi e diagrammi di flusso Luca Tornatore Cos è l informatica? Calcolatore: esecutore di ordini o automa Programma: insieme di istruzioni che possono essere

Dettagli

Esempio 1 Si consideri il seguente gioco in forma estesa:

Esempio 1 Si consideri il seguente gioco in forma estesa: Best reply: strategie pure e miste c Fioravante Patrone Esempio Si consideri il seguente gioco in forma estesa: 5 T L R L R 4 4 B T B a) scriverne la forma strategica; b) determinarne gli equilibri di

Dettagli

Il teorema di Rouché-Capelli

Il teorema di Rouché-Capelli Luciano Battaia Questi appunti (1), ad uso degli studenti del corso di Matematica (A-La) del corso di laurea in Commercio Estero dell Università Ca Foscari di Venezia, campus di Treviso, contengono un

Dettagli

Introduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software

Introduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software Introduzione alla programmazione Algoritmi e diagrammi di flusso F. Corno, A. Lioy, M. Rebaudengo Sviluppo del software problema idea (soluzione) algoritmo (soluzione formale) programma (traduzione dell

Dettagli

La Teoria dei Giochi. (Game Theory)

La Teoria dei Giochi. (Game Theory) La Teoria dei Giochi. (Game Theory) Giochi simultanei, Giochi sequenziali, Giochi cooperativi. Mario Sportelli Dipartimento di Matematica Università degli Studi di Bari Via E. Orabona, 4 I-70125 Bari (Italy)

Dettagli

RAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO

RAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO RAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO Rappresentazione degli algoritmi Problema Algoritmo Algoritmo descritto con una qualche notazione Programma Defne del procedimento

Dettagli

Il Sistema di numerazione decimale

Il Sistema di numerazione decimale Il Sistema di numerazione decimale Il NUMERO è un oggetto astratto, rappresentato da un simbolo (o cifra) ed è usato per contare e misurare. I numeri usati per contare, 0,1,2,3,4,5,. sono detti NUMERI

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

Informatica/ Ing. Meccanica/ Edile/ Prof. Verdicchio/ 30/06/2016/ Foglio delle domande / VERSIONE 1

Informatica/ Ing. Meccanica/ Edile/ Prof. Verdicchio/ 30/06/2016/ Foglio delle domande / VERSIONE 1 Informatica/ Ing. Meccanica/ Edile/ Prof. Verdicchio/ 30/06/2016/ Foglio delle domande/ VERSIONE 1 1) In Python, se scrivo v = [ ] in un programma, vuol dire che a) v è un quadrato b) v è un insieme vuoto

Dettagli

Fondamenti di programmazione!! Parte 2!

Fondamenti di programmazione!! Parte 2! Fondamenti di programmazione!! Parte 2! 1! Definizione intuitiva di algoritmo! n Elenco finito di istruzioni che specificano una serie di operazioni, eseguendo le quali e possibile risolvere ogni istanza

Dettagli

Errori di misura Teoria

Errori di misura Teoria Errori di misura Teoria a misura operazione di misura di una grandezza fisica, anche se eseguita con uno strumento precisissimo e con tecniche e procedimenti accurati, è sempre affetta da errori. Gli errori

Dettagli

Modulo 1 Concetti di base della Tecnologia dell Informazione

Modulo 1 Concetti di base della Tecnologia dell Informazione Modulo 1 Concetti di base della Tecnologia dell Informazione 1.0.1.1 1.0.1.2 1.0.1.3 Algoritmi Definizione di algoritmo e sua rappresentazione grafica Per algoritmo si intende un procedimento, che permette

Dettagli

Per la terza classe della scuola secondaria di I grado. Numeri e rettangoli

Per la terza classe della scuola secondaria di I grado. Numeri e rettangoli Per la terza classe della scuola secondaria di I grado Numeri e rettangoli Qui sotto vedete due rettangoli, disegnati sulla carta a quadretti: il primo ha un lato di 39 quadretti e l altro di 27; il secondo

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

1 Giochi a somma costante, a somma zero e antagonistici

1 Giochi a somma costante, a somma zero e antagonistici AVVERTENZA: Di seguito trovate alcuni appunti, poco ordinati e poco formali, che uso come traccia durante le lezioni. Non sono assolutamente da considerarsi sostitutivi del materiale didattico. Riferimenti:

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

FINALE 30 agosto 2008

FINALE 30 agosto 2008 FINALE 30 agosto 2008 INIZIO CATEGORIA CE 1- LE SETTE CARTE (coefficiente 1) Matilde ha messo 7 carte sulla tavola una dopo l'altra. In che ordine lo ha fatto? 2 - LE GOBBE (coefficiente 2) Una carovana

Dettagli

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

CONVERSIONE DA DECIMALE A BINARIO

CONVERSIONE DA DECIMALE A BINARIO CONVERSIONE DA DECIMALE A BINARIO Il procedimento per convertire in forma binaria un certo numero decimale n consiste nello scrivere, andando da destra verso sinistra, le cifre oppure seguendo delle determinate

Dettagli

CERCACI SU FACEBOOK WORLDCUBEASSOCIATION.ORG CUBINGITALY.ORG GUIDA VERSIONE 3.0

CERCACI SU FACEBOOK WORLDCUBEASSOCIATION.ORG CUBINGITALY.ORG GUIDA VERSIONE 3.0 CERCACI SU FACEBOOK WORLDCUBEASSOCIATION.ORG CUBINGITALY.ORG GUIDA VERSIONE 3.0 QUESTA GUIDA E SOLO PER USO PERSONALE. PER SCOPI COMMERCIALI SCRIVICI A INFOMASTERCUBO@GMAIL.COM 1 CONOSCERE IL CUBO IL CUBO

Dettagli

Calcolatori: Sistemi di Numerazione

Calcolatori: Sistemi di Numerazione Calcolatori: Sistemi di Numerazione Sistemi di Numerazione: introduzione In un Calcolatore, i Dati e le Istruzioni di un Programma sono codificate in forma inaria, ossia in una sequenza finita di e. Un

Dettagli

Il Dilemma del Prigioniero

Il Dilemma del Prigioniero TEORIA DEI GIOCHI La teoria dei giochi studia come gli individui si comportano in situazioni strategiche. Le decisioni strategiche implicano il tenere conto di come il comportamento degli altri possa influire

Dettagli

Kangourou Italia Gara del 15 marzo 2007 Categoria Student Per studenti di quarta o quinta della secondaria di secondo grado

Kangourou Italia Gara del 15 marzo 2007 Categoria Student Per studenti di quarta o quinta della secondaria di secondo grado Testi_07.qxp 6-04-2007 2:07 Pagina 28 Kangourou Italia Gara del 5 marzo 2007 Categoria Per studenti di quarta o quinta della secondaria di secondo grado I quesiti dal N. al N. 0 valgono 3 punti ciascuno.

Dettagli