Complessità e Approssimazione

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Complessità e Approssimazione"

Transcript

1 1 Complessità e Approssimazione Corso di Laurea in Scienze dell'informazione Corso di Laurea Specialistica in Matematica Docente: Mauro Leoncini

2 2 Aspetti organizzativi Sito web: quindi seguire i link alla didattica Ricevimento (semestre di lezione): Mercoledì h , Giovedì h Materiale didattico: trasparenze e materiale disponibile in rete (segnalato dal docente) Modalità d'esame: solo orale CFU assegnati: 7 per CdL Scienze dell'informazione, 5 per CdL specialistica in Matematica

3 3 Argomenti trattati Esistenza di problemi computazionalmente difficili Abbondanza in molti contesti applicativi (logica, teoria dei grafi, ricerca operativa, economia, biologia, informatica,...) Teoria della NP-completezza (NP-completeness) Algoritmi di approssimazione per problemi NPdifficili (NP-hard) Algoritmi probabilistici Difficoltà come risorsa: crittografia a chiave pubblica e firma digitale

4 4 Richiami dal corso di Algoritmica Problema e istanza il problema dell'ordinamento un ben preciso insieme di chiavi da ordinare (istanza) Dimensione di un'istanza: numero di bit/word sufficiente a rappresentare l'istanza in modo compatto Esempio: un numero intero n è rapprentato in modo compatto mediante notazione binaria; la dimensione è dunque log n Esempio: un grafo G=(V,E) tale che V={1,2,...,n} ed E =m è rappresentabile in modo compatto mediante n+2m numeri in notazione binaria

5 5 Richiami dal corso di Algoritmica (2) Misuriamo il costo computazionale di un dato algoritmo contando il numero di operazioni elementari (a livello di bit o di word) in funzione della dimensione delle istanze di input considerando, per ogni data dimensione, il costo massimo (analisi worst-case) Considerare le operazioni a livello di bit può essere necessario nel caso di problemi che coinvolgono (anche) numeri Importanza di codificare i problemi in modo compatto

6 6 Richiami dal corso di Algoritmica (3) La complessità computazionale di un problema è la quantità minima di risorse (spazio o tempo) sufficienti per risolverlo, ovvero il costo dell'algoritmo di minimo costo che risolve il problema Anche la complessità può quindi essere analizzata nel worst-case, sia a livello di bit che di word Molti autori usano anche la locuzione complessità di un algoritmo, che noi invece eviteremo

7 7 Un primo esempio: il crivello di Eratostene Input n Tentativamente, marca i numeri 2,3,4,...,n come primi i = 2 Finché i sqrt(n) trova il primo numero j i marcato come primo smarca i numeri 2j, 3j,..., n/j j i=j+1 Stampa i numeri ancora marcati Esempio: n=18 ( sqrt(18) =4)

8 8 Un primo esempio: il crivello di Eratostene Input n Tentativamente, marca i numeri 2,3,4,...,n come primi i = 2 Finché i sqrt(n) trova il primo numero j i marcato come primo smarca i numeri 2j, 3j,..., n/j j i=j+1 Stampa i numeri ancora marcati Esempio: n=18 ( sqrt(18) =4)

9 9 Un primo esempio: il crivello di Eratostene Input n Tentativamente, marca i numeri 2,3,4,...,n come primi i = 2 Finché i sqrt(n) trova il primo numero j i marcato come primo smarca i numeri 2j, 3j,..., n/j j i=j+1 Stampa i numeri ancora marcati Esempio: n=18 ( sqrt(18) =4)

10 10 Il crivello di Eratostene Il costo dell'algoritmo è O(n) Tuttavia, la dimensione dell'input non è n, bensì log n Ne consegue (correttamente) che il crivello di Eratostene è un algoritmo (di costo) esponenziale Considerare n come dimensione dell'input equivale a scrivere l'input in unario, quindi in modo non compatto Qual è la complessità del problema risolto dal crivello di Eratostene?

11 11 Alcuni problemi che ricorreranno spesso SAT (abbreviazione di SATisfiability): data una formula proposizionale F in forma normale congiuntiva, dire se esiste un assegnamento di verità alla proposizioni elementari che rende vera F Esempio: F = (a b) ( b c) ( a c) è soddisfattibile assegnando ad a il valore vero e a b e c il valore falso k-sat: come SAT, ma ogni espressione in and contiene esattamente k letterali

12 12 Alcuni problemi che ricorreranno spesso (2) INDEPENDENT SET: dato un grafo G=(V,E) e un intero k non maggiore di V, dire se esiste un sottoinsieme V' di V di dimensione almeno k tale che in G non ci sono archi che uniscono vertici di V' Esempio: nel grafo seguente esiste un insieme indipendente di dimensione 3

13 13 Alcuni problemi che ricorreranno spesso (3) VERTEX COVER: dato un grafo G=(V,E) e un intero k non maggiore di V, dire se esiste un sottoinsieme V' di V di dimensione al più k tale che ogni arco di G ha almeno un estremo in V' Esempio: nel grafo seguente esiste una copertura degli archi con 4 vertici

14 Alcuni problemi che ricorreranno spesso (4) SET COVER: data una collezione di sottoinsiemi B1, B 2,..., B m, di uno stesso insieme S, ed un intero k m, dire se ci sono k sottoinsiemi la cui unione coincide con S Esempio: sia S={1,2,3,4,5,6}, B 1 ={1,4}, B 2 ={2,4,6}, B 3 ={1,5}, B 4 ={3,5,6}; è facile vedere che 3 sottoinsiemi sono necessari e che S = B 1 B 2 B 4 = B 2 B 3 B 4 14

15 15 Alcuni problemi che ricorreranno spesso (5) TSP (Travelling Salesman Problem): date tutte le (n-1)n/2 distanze fra n città e un valore t, dire se esiste un cammino chiuso di lunghezza non maggiore di t che tocca tutte le città una e una sola volta HAMILTONIAN GRAPH: dato un grafo con n vertici, dire se è Hamiltoniano, cioè ( se contiene un cammino chiuso che passa una e una sola volta da ogni nodo

16 16 Il problema fondamentale: stabilire la difficoltà dei problemi Non possiamo cercare risultati precisi del tipo: il problema A si risolve in tempo O(n 2 ) In modo molto più brusco, possiamo invece classificare i problemi in facili o difficili (o addirittura solo presumibilmente difficili) Ma che cosa vuol dire, per un problema, essere (computazionalmente) facile/difficile?

17 17 Il problema fondamentale: stabilire la difficoltà dei problemi (2) Cominciamo col fissare una scala di difficoltà Al riguardo, definiamo alcune importanti famiglie di funzioni polinomi: sono del tipo n k, con k>0 costante superpolinomi: sono del tipo n log kn, con k>0 costante esponenziali: sono del tipo b nk, con b>1 e k>0 costanti Due problemi le cui complessità sono funzioni nella stessa famiglia hanno la stessa difficoltà Diversamente, esponenziale è più difficile di superpolinomiale che è più difficile di polinomiale

18 18 Classi di problemi I problemi vengono classificati utilizzando le amplie classi di funzioni ricordate Alcune classi importanti P = {A: esiste una costante k e un algoritmo P che risolve ogni istanza I di A in tempo al più I k } EXPTIME = {A: esiste una costante k e un algoritmo P che risolve ogni istanza I di A in tempo al più 2 I k } PSPACE = {A: esiste una costante k e un algoritmo P che risolve ogni istanza I di A usando al più I k bit di memoria} Risulta P PSPACE EXPTIME e P EXPTIME

19 19 Più precisamente il nucleo della teoria che svilupperemo considererà solo problemi decisionali Tipi di problemi decisionali: sono quelli che ammettono risposta SI/NO, o VERO/FALSO (ad esempio: il numero p è primo?) di ricerca: sono quelli che chiedono di trovare una soluzione (ad esempio, trovare una componente connessa di un grafo) di ottimizzazione: chiedono di trovare la migliore soluzione (ad esempio, trovare il cammino minimo che congiunge due vertici di un grafo orientato pesato) Le classi P, PSPACE e EXPTIME sono definite in termini di problemi decisionali

20 20 Ritorniamo alla domanda fondamentale: quand'è che un problema è facile? Se il bit-cost di ogni possibile algoritmo per A è esponenziale, allora A è certamente difficile Se invece esiste un algoritmo di bit-cost polinomiale, allora diciamo che A è facile Sembra non accettabile. E se il polinomio fosse n 100?

21 21 Una spiegazione Il costo esponenziale deriva dalla (eventuale) necessità di analizzare un numero esponenziale (nella dimensione dell'input) di oggetti Esempio: nel caso di SAT, se la formula contiene n proposizioni elementari, ci sono 2 n possibili assegnamenti di verità. Ce n'è almeno uno buono? Esempio: nel caso del TSP ci sono (n-1)! possibili permutazioni che corrispondono ad altrettanti ordini di attraversamento delle città (immaginando di partire ed arrivare alla città 1). Ce n'è una cui corrisponde una lunghezza minore di t?

22 22 Una spiegazione (2) Se un algoritmo è polinomiale non può dunque esaminare tutte le possibili soluzioni, deve usare una strategia più intelligente Questa osservazione teorica è supportata da considerazioni pratiche, cioè funziona davvero se un problema ammette un algoritmo polinomiale, allora quasi sempre il polinomio è di grado basso e quasi sempre esistono implementazioni concrete efficienti La classe di tutti i polinomi ha importanti proprietà di chiusura (somma, prodotto e composizione di polinomi producono ancora polinomi)

23 23 Ricapitolando Se prendiamo per buona la spiegazione data i problemi nella classe P sono facili i problemi nell'insieme differenza EXPTIME\P sono difficili Sfortunatamente, i problemi che abbiamo elencato come pure molti altri di grande interesse applicativo non sono a tutt'oggi classificabili ne' come facili ne' come difficili

24 24 La situazione attuale Per SAT non abbiamo di un algoritmo polinomiale è un problema difficile? Non abbiamo però neppure una dimostrazione (cioè una prova certa) della sua difficoltà è un problema facile? Detto in altri termini: per SAT non abbiamo limiti superiori di complessità polinomiali ne' limiti inferiori esponenziali Per gli altri problemi la situazione è la stessa

25 25 Un obiettivo più modesto (rispetto alla classificazione in facile/difficile) Esplorare lo spazio dei problemi computazionalmente difficili... dando evidenza (in assenza di prove certe) della difficoltà di alcuni problemi... caratterizzando almeno una ampia classe di essi da un punto di vista matematico il problema A è almeno tanto difficile quanto B il problema A è il più difficile nell'ambito di una classe C

26 26 Uno strumento fondamentale: le riduzioni Supponiamo di disporre di un algoritmo che risolve un problema B, che possiamo utilizzare come sottoprogramma Diremo che un problema A è riducible a B in tempo polinomiale (o che A è polinomialmente riducibile a B), e scriveremo A B, se esiste un P algoritmo per A che impiega tempo polinomiale attribuendo costo unitario ad ogni eventuale chiamata del sottoprogramma (o black-box) per B.

27 27 Significato delle riduzioni Se A P B allora B è almeno tanto difficile quanto A Infatti, per le proprietà di chiusura dei polinomi, se esiste un algoritmo polinomiale per B, allora esiste anche per A Alternativamente, se la complessità di A è esponenziale (o superpolinomiale) allora non può esistere un algoritmo polinomiale per B, pena contraddizione Se A B e B A allora A e B hanno la stessa P P difficoltà (scriveremo A P B)

28 28 Generalità dei problemi decisionali Come già anticipato, nel perseguire il nostro obiettivo considereremo solo problemi di tipo decisionale Non è una limitazione è ovvio che la versione decisionale di INDEPENDENT SET è non più difficile della versione di ottimizzazione tuttavia, curiosamente, è vero anche il contrario lo stesso si può dire per tutti gli altri problemi considerati o che considereremo per verificare questo fatto, usiamo una riduzione

29 29 Una (auto)riduzione per INDEPENDENT SET (IS) Disponiamo di un sottoprogramma D per risolvere la sola versione decisionale di IS e vogliamo costruire un algoritmo per la versione di ottimizzazione Se il grafo ha n vertici, con un processo di ricerca binaria si determina la dimensione massima k di un IS mediante al più log n chiamate a D Si procede quindi in successione alla individuazione di k vertici che formano un IS si considera un vertice v, lo si elimina dal grafo (continua)

30 30 Una (auto)riduzione per INDEPENDENT SET (IS) (continua) si verifica (con una chiamata a D) se la dimensione del massimo IS si riduce in caso affermativo, il nodo v è necessariamente parte dell'is di dimensione massima, e dunque viene inserito nell'insieme risultato; inoltre, si elimina dal grafo ogni vertice adiacente a v e si procede cercando un IS di dimensione k-1 altrimenti si procede cercando ancora un IS di dimensione k Il numero di chiamate a D è al più è n+log n Dunque, se D impiegasse tempo polinomiale, anche la versione di ottimizzazione sarebbe facile

31 31 Prime riduzioni per problemi decisionali Stabiliremo i seguenti risultati, che illustrano l'uso delle riduzioni IS e VC hanno la stessa difficoltà SC è almeno tanto difficile quanto VC IS è almeno tanto difficile quanto 3-SAT

32 32 Difficoltà relativa di IS e Vertex Cover (VC) Un semplice risultato: dato un grafo G=(V,E), un sottoinsieme S di V è un IS se e solo se V \ S è un VC se (x,y) è un arco di G, allora al più solo uno fra i vertici x e y può stare in S, e quindi almeno uno fra x e y sta in V \ S, ne consegue che l'arco (x,y) è coperto e dunque V \ S è un VC anche il viceversa è immediato Questo implica che un grafo G ha un IS di dimensione almeno k se e solo se G ha un VC di dimensione non maggiore di n-k (n= V )

33 33 Difficoltà relativa di IS e VC È facile immaginare le riduzioni in termini algoritmici: data una black-box per VC, se voglio sapere se il grafo G in input ha un IS di dimensione almeno k, chiedo alla black-box se G ha un VC di dimensione non maggiore di n-k e fornisco la stessa risposta data dalla black-box Vale cioè IS VC P Poiché vale anche IS P VC, risulta IS P VC e cioè i due problemi hanno la stessa difficoltà

34 34 Set COVER (SC) è almeno tanto difficile quanto VC In altri termini VC P SC Dato un problema di vertex covering su un grafo G=(V,E), poniamo S=E e B i ={archi incidenti nel nodo i}, cioè ogni sottoinsieme è in corrispondenza biunivoca con un vertice Naturalmente, se esiste una collezione di k sottoinsiemi che copre S, allora i vertici corrispondenti formano un vertex cover

35 35 IS è non meno difficile di 3-SAT In altri termini 3-SAT P IS Data una formula booleana in forma normale congiuntiva con k espressioni in and, ognuna con esattamente 3 letterali in or, costruiamo un grafo fatto di k triangoli opportunamente collegati Esempio: sia data la formula F = (a b c) ( a b c) ( a b c) il grafo corrispondente avrà 3 triangoli (slide successiva)

36 36 IS è non meno difficile di 3-SAT (2) a b a b a b c c c Ogni vertice v di un triangolo (oltre agli altri vertici dello stesso triangolo) è collegato con tutti quei vertici logicamente incompatibili con il letterale rappresentato da v È facile verificare che la formula (con k espressioni in and) è soddisfattibile se e solo se il grafo ha un independent set di dimensione k

37 37 IS è non meno difficile di 3-SAT (3) Algoritmicamente, la riduzione è un po' più complessa di quelle viste in precedenza Data la formula, il programma deve costruire il grafo con i triangoli e quindi invocare la black-box per IS Tutte le riduzioni viste finora (con l'ovvia eccezione dell'autoriduzione per IS) sono però costituite da una sola chiamata alla black-box (mentre la definizione di riduzione consente un numero polinomiale di invocazioni)

38 38 La struttura comune delle riduzioni A P B input Costruzione input per la black-box algoritmo per A Black box per B si no

39 39 Alcune osservazioni finali Le riduzioni viste finore 3-SAT P IS P VC P SC, oltre a VC P IS e La riducibilità è una relazione transitiva (deriva dalle proprietà dei polinomi) Ne consegue, ad esempio, che 3-SAT P SC

40 40 A che punto siamo? Mediante le riduzioni possiamo arrivare a conclusioni del tipo il problema B è almeno tanto difficile quanto A o anche A e B sono problemi di uguale difficoltà Non siamo in grado di dare una caratterizzazione più ampia dei problemi (apparentemente) difficili, semplicemente perché non sappiamo bene neppure... di quali problemi stiamo parlando! In altri termini, quali sono le caratteristiche comuni di 3-SAT, IS, VC...?

41 41 La classe NP Sembra esserci una chiara differenza, ben sperimentabile in molti contesti, fra lo sforzo necessario a trovare una soluzione di un problema e verificare che un candidato costituisce effettivamente una soluzione Esempi: in matematica, calcolare un integrale e verificare che una funzione è primitiva di un'altra funzione negli scacchi, trovare le mosse che portano ad un matto e verificare che una sequenza porta effettivamente allo scacco matto in automobile, trovare una destinazione o verificare la correttezza delle indicazioni del navigatore satellitare

42 42 La classe NP (2) I problemi considerati per SAT, è facile verificare (in tempo proporzionale alla lunghezza della formula F) se un assegnamento di verità dato ai letterali della formula soddisfa F per IS, è facile verificare (in tempo proporzionale al numero di archi) se un insieme di vertici è indipendente per TSP, è facile verificare (in tempo proporzionale al numero di città) se la lunghezza di un dato ciclo è minore della soglia richiesta...

43 43 La classe NP (3) Dato un problema decisionale A, l'insieme degli input legali per i quali la risposta è sì è detto insieme delle istanze positive per A Un programma C è detto certificatore efficiente per A se soddisfa le seguenti condizioni (1) C accetta due parametri in input (2) C impiega tempo polinomiale nella dimensione dell'input (3) esiste una costante k tale che, per ogni istanza positiva I di A esiste una stringa S (certificato) di lunghezza al più I k tale che C(I,S)=sì

44 44 La classe NP (4) Definizione della classe NP: insieme dei problemi decisionali che posseggono un certificatore efficiente Un risultato immediato: P NP Stabilire se l'inclusione sia propria è uno dei principali problemi aperti in Informatica e uno dei sette Millennium Prize Problems del Clay Mathematics Institute NP è in realtà l'acronimo di Nondeterministic Polinomial (Time)

45 45 Il nuovo interrogativo Quali sono i problemi candidati a stare in NP \ P, sempre che questo insieme non sia vuoto? Dalle riduzioni viste possiamo dire, ad esempio, che se ci stesse 3-SAT, cioè se si provasse che 3-SAT è difficile, a maggior ragione ci starebbe anche IS Equivalentemente, se non ci stesse IS (cioè se si potesse provare che IS è facile) allora non ci starebbe neanche 3-SAT Esiste un problema A più difficile della classe NP, tale cioè che o A NP \ P oppure NP \ P è vuota?

46 46 Problemi completi I problemi più difficili per una data classe vengono detti problemi completi per quella classe Un problema A è completo per la classe NP (o, più semplicemente, NP-completo) se e solo se A NP se B NP allora B P A Un problema completo racchiude tutta la difficoltà della classe Trovare un problema completo sembra sensibilmente più difficile che stabilire la difficoltà relativa di due problemi specifici (non è neppure detto che esista!)

47 47 Il risultato fondamentale Esistono problemi NP-completi (risultato dovuto indipendentemente a Cook e Levin) In particolare, SAT è NP-completo (teorema di Cook) La dimostrazione non è neppure troppo complessa! In breve, il teorema di Cook fa vedere che i problemi in NP possono essere decisi da un opportuno modello di calcolo, la Macchina di Turing (MdT) non deterministica data la descrizione di una MdT M e un input I per M, si può costruire una espressione in forma normale congiuntiva che è soddisfattibile se e solo se l'output di M su input I è sì la lunghezza della formula è polinomiale in M e in I

48 48 Altri problemi NP-completi Per dimostrare che un problema A è NP-completo non occorre rifare l'equivalente del teorema di Cook per A! È invece sufficiente trovare un problema B che si sa essere NP-completo e dimostrare che B A P Ad esempio, alla luce delle riduzioni già operate, se provassimo che SAT P 3-SAT dimostreremmo anche che 3-SAT, IS, VC e SC sono problemi NP-completi In questo modo il vocabolario di problemi NPcompleti cresce

3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 Scopo: Stimare l onere computazionale per risolvere problemi di ottimizzazione e di altra natura

Dettagli

Problemi computazionali

Problemi computazionali Problemi computazionali Intrattabilità e classi computazionali Decidibilità e Trattabilità Problemi decidibili possono richiedere tempi di risoluzione elevati: Torri di Hanoi Decidibilità e Trattabilità

Dettagli

Le parole dell informatica: modello di calcolo, complessità e trattabilità

Le parole dell informatica: modello di calcolo, complessità e trattabilità Le parole dell informatica: modello di calcolo, complessità e trattabilità Angelo Montanari Dipartimento di Matematica e Informatica Università degli Studi di Udine Ciclo di seminari su un Vocabolario

Dettagli

Note del Corso di Modelli Biologici Discreti: Un paio di algoritmi DNA per risolvere SAT

Note del Corso di Modelli Biologici Discreti: Un paio di algoritmi DNA per risolvere SAT Note del Corso di Modelli Biologici Discreti: Un paio di algoritmi DNA per risolvere SAT Giuditta Franco Corso di Laurea in Bioinformatica - AA 2012/2013 Uno dei più grossi risultati nell informatica degli

Dettagli

PROVA FINALE V. AULETTA G. PERSIANO ALGORITMI II - -MAGIS INFO

PROVA FINALE V. AULETTA G. PERSIANO ALGORITMI II - -MAGIS INFO PROVA FINALE V. AULETTA G. PERSIANO ALGORITMI II - -MAGIS INFO 1. Load Balancing Un istanza del problema del load balancing consiste di una sequenza p 1,..., p n di interi positivi (pesi dei job) e un

Dettagli

Esercizi di Ricerca Operativa I

Esercizi di Ricerca Operativa I Esercizi di Ricerca Operativa I Dario Bauso, Raffaele Pesenti May 10, 2006 Domande Programmazione lineare intera 1. Gli algoritmi per la programmazione lineare continua possono essere usati per la soluzione

Dettagli

Introduzione ai problemi NP-completi

Introduzione ai problemi NP-completi Corso di Algoritmi e Strutture Dati Introduzione ai problemi NP-completi Nuova versione del capitolo 13 delle dispense (basata sui modelli non deterministici) Anno accademico 2007/2008 Corso di laurea

Dettagli

Corso di Calcolo Numerico

Corso di Calcolo Numerico Corso di Calcolo Numerico Dott.ssa M.C. De Bonis Università degli Studi della Basilicata, Potenza Facoltà di Ingegneria Corso di Laurea in Ingegneria Meccanica Sistemi di Numerazione Sistema decimale La

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

TSP con eliminazione di sottocicli

TSP con eliminazione di sottocicli TSP con eliminazione di sottocicli Un commesso viaggiatore deve visitare 7 clienti in modo da minimizzare la distanza percorsa. Le distanze (in Km) tra ognuno dei clienti sono come segue: 3 5 7-8 9 57

Dettagli

La macchina universale

La macchina universale La macchina universale Una immediata conseguenza della dimostrazione è la seguente Corollario il linguaggio L H = {M (w) M rappresenta una macchina di Turing che si ferma con input w} sull alfabeto {0,1}*

Dettagli

Il problema del commesso viaggiatore

Il problema del commesso viaggiatore ITTS Vito Volterra Progetto ABACUS Ottimizzazione combinatoria Il problema del commesso viaggiatore Studente: Davide Talon Esame di stato 2013 Anno scolastico 2012-2013 Indice 1. Introduzione........................................

Dettagli

risulta (x) = 1 se x < 0.

risulta (x) = 1 se x < 0. Questo file si pone come obiettivo quello di mostrarvi come lo studio di una funzione reale di una variabile reale, nella cui espressione compare un qualche valore assoluto, possa essere svolto senza necessariamente

Dettagli

Parte 3. Rango e teorema di Rouché-Capelli

Parte 3. Rango e teorema di Rouché-Capelli Parte 3. Rango e teorema di Rouché-Capelli A. Savo Appunti del Corso di Geometria 203-4 Indice delle sezioni Rango di una matrice, 2 Teorema degli orlati, 3 3 Calcolo con l algoritmo di Gauss, 6 4 Matrici

Dettagli

Esercizio 1 Dato il gioco ({1, 2, 3}, v) con v funzione caratteristica tale che:

Esercizio 1 Dato il gioco ({1, 2, 3}, v) con v funzione caratteristica tale che: Teoria dei Giochi, Trento, 2004/05 c Fioravante Patrone 1 Teoria dei Giochi Corso di laurea specialistica: Decisioni economiche, impresa e responsabilità sociale, A.A. 2004/05 Soluzioni degli esercizi

Dettagli

TSP con eliminazione di sottocicli

TSP con eliminazione di sottocicli TSP con eliminazione di sottocicli Un commesso viaggiatore deve visitare 7 clienti in modo da minimizzare la distanza percorsa. Le distanze (in Km) tra ognuno dei clienti sono come segue: 7-8 9 7 9-8 79

Dettagli

Complessità computazionale degli algoritmi

Complessità computazionale degli algoritmi Complessità computazionale degli algoritmi Lezione n. 3.bis I precursori dei calcolatore Calcolatore di Rodi o di Andikithira 65 a.c. Blaise Pascale pascalina XVII secolo Gottfried Leibniz Joseph Jacquard

Dettagli

I SISTEMI DI NUMERAZIONE

I SISTEMI DI NUMERAZIONE Istituto di Istruzione Superiore G. Curcio Ispica I SISTEMI DI NUMERAZIONE Prof. Angelo Carpenzano Dispensa di Informatica per il Liceo Scientifico opzione Scienze Applicate Sommario Sommario... I numeri...

Dettagli

MATEMATICA DEL DISCRETO elementi di teoria dei grafi. anno acc. 2009/2010

MATEMATICA DEL DISCRETO elementi di teoria dei grafi. anno acc. 2009/2010 elementi di teoria dei grafi anno acc. 2009/2010 Grafi semplici Un grafo semplice G è una coppia ordinata (V(G), L(G)), ove V(G) è un insieme finito e non vuoto di elementi detti vertici o nodi di G, mentre

Dettagli

Metodi e Modelli per l Ottimizzazione Combinatoria Il problema del flusso di costo minimo

Metodi e Modelli per l Ottimizzazione Combinatoria Il problema del flusso di costo minimo Metodi e Modelli per l Ottimizzazione Combinatoria Il problema del flusso di costo minimo L. De Giovanni G. Zambelli 1 Problema del flusso a costo minimo Il problema del flusso a costo minimo é definito

Dettagli

Capitolo 3: Ottimizzazione Discreta. E. Amaldi DEIB, Politecnico di Milano

Capitolo 3: Ottimizzazione Discreta. E. Amaldi DEIB, Politecnico di Milano Capitolo 3: Ottimizzazione Discreta E. Amaldi DEIB, Politecnico di Milano 3.1 Modelli di PLI e PLMI Moltissimi problemi decisionali complessi possono essere formulati o approssimati come problemi di Programmazione

Dettagli

APPUNTI SUI METODI PERT-C.P.M.

APPUNTI SUI METODI PERT-C.P.M. APPUNTI SUI METODI PERT-C.P.M. (corso di ricerca operativa) A cura di: Antonio Scalera 1 PERT/C.P.M. I metodi Pert e C.P.M. studiano lo sviluppo di un progetto attraverso la programmazione delle attività

Dettagli

NP-Completezza. Andrea S. Gozzi Valerio Romeo. Andrea Samuele 1

NP-Completezza. Andrea S. Gozzi Valerio Romeo. Andrea Samuele 1 NP-Completezza di Andrea S. Gozzi Valerio Romeo Andrea Samuele 1 Argomenti trattati Out of intense complexities, intense simplicities emerge. Winston Churchill Concetti base & formalismi Introduzione alla

Dettagli

Appunti di Logistica. F. Mason E. Moretti F. Piccinonno

Appunti di Logistica. F. Mason E. Moretti F. Piccinonno Appunti di Logistica F. Mason E. Moretti F. Piccinonno 2 1 Introduzione La Logistica è una disciplina molto vasta che, in prima approssimazione, si suddivide in logistica interna (alle aziende) e logistica

Dettagli

Le Macchine di Turing

Le Macchine di Turing Le Macchine di Turing Come è fatta una MdT? Una MdT è definita da: un nastro una testina uno stato interno un programma uno stato iniziale Il nastro Il nastro è infinito suddiviso in celle In una cella

Dettagli

Dimensione di uno Spazio vettoriale

Dimensione di uno Spazio vettoriale Capitolo 4 Dimensione di uno Spazio vettoriale 4.1 Introduzione Dedichiamo questo capitolo ad un concetto fondamentale in algebra lineare: la dimensione di uno spazio vettoriale. Daremo una definizione

Dettagli

Dimensionamento dei lotti di produzione: il caso con variabilità nota

Dimensionamento dei lotti di produzione: il caso con variabilità nota Dimensionamento dei lotti di produzione: il caso con variabilità nota A. Agnetis In questi appunti studieremo alcuni modelli per il problema del lot sizing, vale a dire il problema di programmare la dimensione

Dettagli

(ETC) MATRICOLE DISPARI

(ETC) MATRICOLE DISPARI Elementi di Teoria della Computazione (ETC) MATRICOLE DISPARI Docente: Prof. Luisa Gargano BENVENUTI! Finalità: Fornire gli elementi di base delle teorie che sono di fondamento all'informatica 1. Computabilità

Dettagli

Serie numeriche. 1 Definizioni e proprietà elementari

Serie numeriche. 1 Definizioni e proprietà elementari Serie numeriche Definizioni e proprietà elementari Sia { } una successione, definita per ogni numero naturale n n. Per ogni n n, consideriamo la somma s n degli elementi della successione di posto d s

Dettagli

Cenni di logica & algebra booleana

Cenni di logica & algebra booleana Cenni di algebra booleana e dei sistemi di numerazione Dr. Carlo Sansotta - 25 2 Parte Cenni di logica & algebra booleana 3 introduzione L elaboratore elettronico funziona secondo una logica a 2 stati:

Dettagli

L interesse nella macchina di Turing

L interesse nella macchina di Turing Aniello Murano Macchina di Turing universale e problema della fermata 6 Lezione n. Parole chiave: Universal Turing machine Corso di Laurea: Informatica Codice: Email Docente: murano@ na.infn.it A.A. 2008-2009

Dettagli

Corso di Analisi Matematica. Successioni e serie numeriche

Corso di Analisi Matematica. Successioni e serie numeriche a.a. 2011/12 Laurea triennale in Informatica Corso di Analisi Matematica Successioni e serie numeriche Avvertenza Questi sono appunti informali delle lezioni, che vengono resi disponibili per comodità

Dettagli

(ETC) MATRICOLE DISPARI

(ETC) MATRICOLE DISPARI Elementi di Teoria della Computazione (ETC) MATRICOLE DISPARI Docente: Prof. Luisa Gargano BENVENUTI! Finalità: Fornire gli elementi di base delle teorie che sono di fondamento all'informatica 1. Computabilità

Dettagli

Tecniche avanzate di sintesi di algoritmi: Programmazione dinamica Algoritmi greedy

Tecniche avanzate di sintesi di algoritmi: Programmazione dinamica Algoritmi greedy Tecniche avanzate di sintesi di algoritmi: Programmazione dinamica Algoritmi greedy Dr Maria Federico Programmazione dinamica Solitamente usata per risolvere problemi di ottimizzazione il problema ammette

Dettagli

Funzioni in due variabili Raccolta di FAQ by Andrea Prevete

Funzioni in due variabili Raccolta di FAQ by Andrea Prevete Funzioni in due variabili Raccolta di FAQ by Andrea Prevete 1) Cosa intendiamo, esattamente, quando parliamo di funzione reale di due variabili reali? Quando esiste una relazione fra tre variabili reali

Dettagli

Proof. Dimostrazione per assurdo. Consideriamo l insieme complementare di P nell insieme

Proof. Dimostrazione per assurdo. Consideriamo l insieme complementare di P nell insieme G Pareschi Principio di induzione Il Principio di Induzione (che dovreste anche avere incontrato nel Corso di Analisi I) consente di dimostrare Proposizioni il cui enunciato è in funzione di un numero

Dettagli

2 Formulazione dello shortest path come problema di flusso

2 Formulazione dello shortest path come problema di flusso Strumenti della Teoria dei Giochi per l Informatica A.A. 2009/10 Lecture 20: 28 Maggio 2010 Cycle Monotonicity Docente: Vincenzo Auletta Note redatte da: Annibale Panichella Abstract In questa lezione

Dettagli

ESEMPIO P.L. : PIANIFICAZIONE DI INVESTIMENTI

ESEMPIO P.L. : PIANIFICAZIONE DI INVESTIMENTI ESEMPIO P.L. : PIANIFICAZIONE DI INVESTIMENTI PROBLEMA: un azienda deve scegliere fra due possibili investimenti al fine di massimizzare il profitto netto nel rispetto delle condizioni interne e di mercato

Dettagli

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0 Rappresentazione dei numeri I numeri che siamo abituati ad utilizzare sono espressi utilizzando il sistema di numerazione decimale, che si chiama così perché utilizza 0 cifre (0,,2,3,4,5,6,7,8,9). Si dice

Dettagli

Rappresentazione grafica di entità e attributi

Rappresentazione grafica di entità e attributi PROGETTAZIONE CONCETTUALE La progettazione concettuale, ha il compito di costruire e definire una rappresentazione corretta e completa della realtà di interesse, e il prodotto di tale attività, è lo schema

Dettagli

UD 3.4b: Trattabilità e Intrattabilità. Dispense, cap. 4.2

UD 3.4b: Trattabilità e Intrattabilità. Dispense, cap. 4.2 UD 3.4b: Trattabilità e Intrattabilità Dispense, cap. 4.2 Problemi Intrattabili Esistono problemi che, pur avendo un algoritmo di soluzione, non forniranno mai una soluzione in tempi ragionevoli nemmeno

Dettagli

1. Considerazioni generali

1. Considerazioni generali 1. Considerazioni generali Modelli di shop scheduling In molti ambienti produttivi l esecuzione di un job richiede l esecuzione non simultanea di un certo numero di operazioni su macchine dedicate. Ogni

Dettagli

1. PRIME PROPRIETÀ 2

1. PRIME PROPRIETÀ 2 RELAZIONI 1. Prime proprietà Il significato comune del concetto di relazione è facilmente intuibile: due elementi sono in relazione se c è un legame tra loro descritto da una certa proprietà; ad esempio,

Dettagli

4.1 Modelli di calcolo analisi asintotica e ricorrenze

4.1 Modelli di calcolo analisi asintotica e ricorrenze 4 Esercizi Prima Parte 4.1 Modelli di calcolo analisi asintotica e ricorrenze Esercizio 4 1 Rispondere alle seguenti domande: 1. Come misuriamo l efficienza di un algoritmo?. Quali sono gli algoritmi più

Dettagli

Sommario della lezione

Sommario della lezione Università degli Studi di Salerno Corso di Algoritmi Prof. Ugo Vaccaro Anno Acc. 2014/15 p. 1/33 Sommario della lezione Ancora sui cammini minimi: Cammini minimi in grafi con archi di costo negativo Algoritmi

Dettagli

b) Costruire direttamente le relazioni e poi correggere quelle che presentano anomalie

b) Costruire direttamente le relazioni e poi correggere quelle che presentano anomalie TEORIA RELAZIONALE: INTRODUZIONE 1 Tre metodi per produrre uno schema relazionale: a) Partire da un buon schema a oggetti e tradurlo b) Costruire direttamente le relazioni e poi correggere quelle che presentano

Dettagli

Testing: basato su analisi dinamica del codice. Metodi Formali: basato su analisi statica del codice.

Testing: basato su analisi dinamica del codice. Metodi Formali: basato su analisi statica del codice. Convalida: attività volta ad assicurare che il SW sia conforme ai requisiti dell utente. Verifica: attività volta ad assicurare che il SW sia conforme alle specifiche dell analista. Goal: determinare malfunzionamenti/anomalie/errori

Dettagli

Appunti di informatica. Lezione 2 anno accademico 2015-2016 Mario Verdicchio

Appunti di informatica. Lezione 2 anno accademico 2015-2016 Mario Verdicchio Appunti di informatica Lezione 2 anno accademico 2015-2016 Mario Verdicchio Sistema binario e logica C è un legame tra i numeri binari (0,1) e la logica, ossia la disciplina che si occupa del ragionamento

Dettagli

IL PROBLEMA DELLO SHORTEST SPANNING TREE

IL PROBLEMA DELLO SHORTEST SPANNING TREE IL PROBLEMA DELLO SHORTEST SPANNING TREE n. 1 - Formulazione del problema Consideriamo il seguente problema: Abbiamo un certo numero di città a cui deve essere fornito un servizio, quale può essere l energia

Dettagli

4. Operazioni elementari per righe e colonne

4. Operazioni elementari per righe e colonne 4. Operazioni elementari per righe e colonne Sia K un campo, e sia A una matrice m n a elementi in K. Una operazione elementare per righe sulla matrice A è una operazione di uno dei seguenti tre tipi:

Dettagli

Algoritmi e strutture dati. Codici di Huffman

Algoritmi e strutture dati. Codici di Huffman Algoritmi e strutture dati Codici di Huffman Memorizzazione dei dati Quando un file viene memorizzato, esso va memorizzato in qualche formato binario Modo più semplice: memorizzare il codice ASCII per

Dettagli

5. La teoria astratta della misura.

5. La teoria astratta della misura. 5. La teoria astratta della misura. 5.1. σ-algebre. 5.1.1. σ-algebre e loro proprietà. Sia Ω un insieme non vuoto. Indichiamo con P(Ω la famiglia di tutti i sottoinsiemi di Ω. Inoltre, per ogni insieme

Dettagli

LEZIONE 14. a 1,1 v 1 + a 1,2 v 2 + a 1,3 v 3 + + a 1,n 1 v n 1 + a 1,n v n = w 1

LEZIONE 14. a 1,1 v 1 + a 1,2 v 2 + a 1,3 v 3 + + a 1,n 1 v n 1 + a 1,n v n = w 1 LEZIONE 14 141 Dimensione di uno spazio vettoriale Abbiamo visto come l esistenza di una base in uno spazio vettoriale V su k = R, C, permetta di sostituire a V, che può essere complicato da trattare,

Dettagli

Varianti Macchine di Turing

Varianti Macchine di Turing Varianti Macchine di Turing Esistono definizioni alternative di macchina di Turing. Chiamate Varianti. Tra queste vedremo: MdT a più nastri e MdT non deterministiche. Mostriamo: tutte le varianti ragionevoli

Dettagli

Un po di teoria dei numeri

Un po di teoria dei numeri Un po di teoria dei numeri Applicazione alla crittografia RSA Christian Ferrari Liceo di Locarno Matematica Sommario 1 L aritmetica modulare di Z n Le congruenze L anello Z n Le potenze in Z n e algoritmo

Dettagli

Reti complesse modelli e proprietà

Reti complesse modelli e proprietà Reti complesse Modelli e proprietà dellamico@disi.unige.it Applicazioni di rete 2 A.A. 2006-07 Outline Modello di Erdös Rényi 1 Modello di Erdös Rényi Denizione Proprietà 2 Introduzione Modello Barabási

Dettagli

Parte 2. Determinante e matrice inversa

Parte 2. Determinante e matrice inversa Parte. Determinante e matrice inversa A. Savo Appunti del Corso di Geometria 013-14 Indice delle sezioni 1 Determinante di una matrice, 1 Teorema di Cramer (caso particolare), 3 3 Determinante di una matrice

Dettagli

Alcuni Preliminari. Prodotto Cartesiano

Alcuni Preliminari. Prodotto Cartesiano Alcuni Preliminari Prodotto Cartesiano Dati due insiemi A e B, si definisce il loro prodotto cartesiano A x B come l insieme di tutte le coppie ordinate (a,b) con a! A e b! B. Es: dati A= {a,b,c} e B={,2,3}

Dettagli

Permutazione degli elementi di una lista

Permutazione degli elementi di una lista Permutazione degli elementi di una lista Luca Padovani padovani@sti.uniurb.it Sommario Prendiamo spunto da un esercizio non banale per fare alcune riflessioni su un approccio strutturato alla risoluzione

Dettagli

Dispense del corso di Logica a.a. 2015/16: Problemi di primo livello. V. M. Abrusci

Dispense del corso di Logica a.a. 2015/16: Problemi di primo livello. V. M. Abrusci Dispense del corso di Logica a.a. 2015/16: Problemi di primo livello V. M. Abrusci 12 ottobre 2015 0.1 Problemi logici basilari sulle classi Le classi sono uno dei temi della logica. Esponiamo in questa

Dettagli

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Dispensa 05 La rappresentazione dell informazione Carla Limongelli Ottobre 2011 http://www.dia.uniroma3.it/~java/fondinf/ La rappresentazione

Dettagli

1.2 Funzioni, dominio, codominio, invertibilità elementare, alcune identità trigonometriche

1.2 Funzioni, dominio, codominio, invertibilità elementare, alcune identità trigonometriche . Funzioni, dominio, codominio, invertibilità elementare, alcune identità trigonometriche Per le definizioni e teoremi si fa riferimento ad uno qualsiasi dei libri M.Bertsch - R.Dal Passo Lezioni di Analisi

Dettagli

Codifica binaria e algebra di Boole

Codifica binaria e algebra di Boole Codifica binaria e algebra di Boole Corso di Programmazione A.A. 2008/09 G. Cibinetto Contenuti della lezione Codifica binaria dell informazione Numeri naturali, interi, frazionari, in virgola mobile Base

Dettagli

Tipologie di macchine di Turing

Tipologie di macchine di Turing Tipologie di macchine di Turing - Macchina di Turing standard - Macchina di Turing con un nastro illimitato in una sola direzione - Macchina di Turing multinastro - Macchina di Turing non deterministica

Dettagli

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

Strumenti della Teoria dei Giochi per l Informatica A.A. 2009/10. Lecture 22: 1 Giugno 2010. Meccanismi Randomizzati

Strumenti della Teoria dei Giochi per l Informatica A.A. 2009/10. Lecture 22: 1 Giugno 2010. Meccanismi Randomizzati Strumenti della Teoria dei Giochi per l Informatica AA 2009/10 Lecture 22: 1 Giugno 2010 Meccanismi Randomizzati Docente Vincenzo Auletta Note redatte da: Davide Armidoro Abstract In questa lezione descriveremo

Dettagli

Ricerca Operativa. Claudio Arbib Universitàdi L Aquila. Problemi combinatorici (Gennaio 2006)

Ricerca Operativa. Claudio Arbib Universitàdi L Aquila. Problemi combinatorici (Gennaio 2006) Claudio Arbib Universitàdi L Aquila Ricerca Operativa Problemi combinatorici (Gennaio 2006) Sommario Problemi combinatorici Ottimizzazione combinatoria L algoritmo universale Il metodo greedy Problemi

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T3 1-Sottoprogrammi 1 Prerequisiti Tecnica top-down Programmazione elementare 2 1 Introduzione Lo scopo di questa Unità è utilizzare la metodologia di progettazione top-down

Dettagli

Entropia. Motivazione. ? Quant è l informazione portata dalla sequenza? Abbiamo una sequenza S di N simboli (campioni audio, pixel, caratteri,...

Entropia. Motivazione. ? Quant è l informazione portata dalla sequenza? Abbiamo una sequenza S di N simboli (campioni audio, pixel, caratteri,... Entropia Motivazione Abbiamo una sequenza S di N simboli (campioni audio, pixel, caratteri,... ) s,s 2,s 3,... ognuno dei quali appartiene ad un alfabeto A di M elementi.? Quant è l informazione portata

Dettagli

Ricerca Operativa e Logistica

Ricerca Operativa e Logistica Ricerca Operativa e Logistica Dott. F.Carrabs e Dott.ssa M.Gentili A.A. 2011/2012 Lezione 10: Variabili e vincoli logici Variabili logiche Spesso nei problemi reali che dobbiamo affrontare ci sono dei

Dettagli

x u v(p(x, fx) q(u, v)), e poi

x u v(p(x, fx) q(u, v)), e poi 0.1. Skolemizzazione. Ogni enunciato F (o insieme di enunciati Γ) è equisoddisfacibile ad un enunciato universale (o insieme di enunciati universali) in un linguaggio estensione del linguaggio di F (di

Dettagli

Elementi di informatica

Elementi di informatica Elementi di informatica Sistemi di numerazione posizionali Rappresentazione dei numeri Rappresentazione dei numeri nei calcolatori rappresentazioni finalizzate ad algoritmi efficienti per le operazioni

Dettagli

I Sistemi di numerazione e la rappresentazione dei dati

I Sistemi di numerazione e la rappresentazione dei dati I Sistemi di numerazione e la rappresentazione dei dati LA RAPPRESENTAZIONE DELLE INFORMAZIONI (1) Per utilizzare un computer è necessario rappresentare in qualche modo le informazioni da elaborare e il

Dettagli

Liceo Linguistico I.F.R.S. Marcelline. Curriculum di Matematica

Liceo Linguistico I.F.R.S. Marcelline. Curriculum di Matematica Liceo Linguistico I.F.R.S. Marcelline Curriculum di Matematica Introduzione La matematica nel nostro Liceo Linguistico ha come obiettivo quello di far acquisire allo studente saperi e competenze che lo

Dettagli

3 GRAFICI DI FUNZIONI

3 GRAFICI DI FUNZIONI 3 GRAFICI DI FUNZIONI Particolari sottoinsiemi di R che noi studieremo sono i grafici di funzioni. Il grafico di una funzione f (se non è specificato il dominio di definizione) è dato da {(x, y) : x dom

Dettagli

Capitolo II Le reti elettriche

Capitolo II Le reti elettriche Capitolo II Le reti elettriche Fino ad ora abbiamo immaginato di disporre di due soli bipoli da collegare attraverso i loro morsetti; supponiamo ora, invece, di disporre di l bipoli e di collegarli tra

Dettagli

Lezioni di Matematica 1 - I modulo

Lezioni di Matematica 1 - I modulo Lezioni di Matematica 1 - I modulo Luciano Battaia 16 ottobre 2008 Luciano Battaia - http://www.batmath.it Matematica 1 - I modulo. Lezione del 16/10/2008 1 / 13 L introduzione dei numeri reali si può

Dettagli

ALGEBRA I: CARDINALITÀ DI INSIEMI

ALGEBRA I: CARDINALITÀ DI INSIEMI ALGEBRA I: CARDINALITÀ DI INSIEMI 1. CONFRONTO DI CARDINALITÀ E chiaro a tutti che esistono insiemi finiti cioè con un numero finito di elementi) ed insiemi infiniti. E anche chiaro che ogni insieme infinito

Dettagli

APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI

APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI Indice 1 Le frazioni algebriche 1.1 Il minimo comune multiplo e il Massimo Comun Divisore fra polinomi........ 1. Le frazioni algebriche....................................

Dettagli

Obiettivi Cognitivi OBIETTIVI MINIMI

Obiettivi Cognitivi OBIETTIVI MINIMI Docente Materia Classe Mugno Eugenio Matematica 1F Programmazione Preventiva Anno Scolastico 2012/2013 Data 25/11/2012 Obiettivi Cognitivi OBIETTIVI MINIMI conoscere il concetto di numero intero; conoscere

Dettagli

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. Algoritmi 1 Sommario Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. 2 Informatica Nome Informatica=informazione+automatica. Definizione Scienza che si occupa dell

Dettagli

2 Progetto e realizzazione di funzioni ricorsive

2 Progetto e realizzazione di funzioni ricorsive 2 Progetto e realizzazione di funzioni ricorsive Il procedimento costruttivo dato dal teorema di ricorsione suggerisce due fatti importanti. Una buona definizione ricorsiva deve essere tale da garantire

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

Per lo svolgimento del corso risulta particolarmente utile considerare l insieme

Per lo svolgimento del corso risulta particolarmente utile considerare l insieme 1. L insieme R. Per lo svolgimento del corso risulta particolarmente utile considerare l insieme R = R {, + }, detto anche retta reale estesa, che si ottiene aggiungendo all insieme dei numeri reali R

Dettagli

Capitolo 5: Ottimizzazione Discreta. E. Amaldi DEI, Politecnico di Milano

Capitolo 5: Ottimizzazione Discreta. E. Amaldi DEI, Politecnico di Milano Capitolo 5: Ottimizzazione Discreta E. Amaldi DEI, Politecnico di Milano 5.1 Modelli di PLI, formulazioni equivalenti ed ideali Il modello matematico di un problema di Ottimizzazione Discreta è molto spesso

Dettagli

Alcune nozioni preliminari di teoria elementare di insiemi e funzioni

Alcune nozioni preliminari di teoria elementare di insiemi e funzioni Alcune nozioni preliminari di teoria elementare di insiemi e funzioni Alberto Pinto Corso di Matematica - NUCT 1 Insiemi 1.1 Generalità Diamo la definizione di insieme secondo Georg Cantor, matematico

Dettagli

Prof. Ing. Michele Marra - Appunti delle Lezioni di Ricerca Operativa Sequenze CAPITOLO II

Prof. Ing. Michele Marra - Appunti delle Lezioni di Ricerca Operativa Sequenze CAPITOLO II CAPITOLO II 2. - PROBLEMI DI SEQUENZA I problemi di sequenza si presentano ogni qualvolta vi sono delle attività che richiedono delle risorse limitate ed indivisibili e bisogna definire l'ordine secondo

Dettagli

Esercizi su lineare indipendenza e generatori

Esercizi su lineare indipendenza e generatori Esercizi su lineare indipendenza e generatori Per tutto il seguito, se non specificato esplicitamente K indicherà un campo e V uno spazio vettoriale su K Cose da ricordare Definizione Dei vettori v,,v

Dettagli

MAPPE DI KARNAUGH e sintesi ottima

MAPPE DI KARNAUGH e sintesi ottima MAPPE DI KARNAUGH e sintesi ottima (prima stesura da rivedere) Sappiamo che una funzione logica può essere espressa in diverse forme, tra loro equivalenti e noi siamo già in grado di passare da una all

Dettagli

I SISTEMI DI NUMERAZIONE E LA NUMERAZIONE BINARIA

I SISTEMI DI NUMERAZIONE E LA NUMERAZIONE BINARIA I SISTEMI DI NUMERAZIONE E LA NUMERAZIONE BINARIA Indice Introduzione Il sistema decimale Il sistema binario Conversione di un numero da base 10 a base 2 e viceversa Conversione in altri sistemi di numerazione

Dettagli

Fasi del ciclo di vita del software (riassunto) Progetto: generalità. Progetto e realizzazione (riassunto)

Fasi del ciclo di vita del software (riassunto) Progetto: generalità. Progetto e realizzazione (riassunto) Università degli Studi di Roma La Sapienza Facoltà di Ingegneria Sede di Latina Laurea in Ingegneria dell Informazione Fasi del ciclo di vita del software (riassunto) Corso di PROGETTAZIONE DEL SOFTWARE

Dettagli

2) Codici univocamente decifrabili e codici a prefisso.

2) Codici univocamente decifrabili e codici a prefisso. Argomenti della Lezione ) Codici di sorgente 2) Codici univocamente decifrabili e codici a prefisso. 3) Disuguaglianza di Kraft 4) Primo Teorema di Shannon 5) Codifica di Huffman Codifica di sorgente Il

Dettagli

Aritmetica: operazioni ed espressioni

Aritmetica: operazioni ed espressioni / A SCUOLA DI MATEMATICA Lezioni di matematica a cura di Eugenio Amitrano Argomento n. : operazioni ed espressioni Ricostruzione di un abaco dell epoca romana - Museo RGZ di Magonza (Germania) Libero da

Dettagli

Algebra Booleana 1 ALGEBRA BOOLEANA: VARIABILI E FUNZIONI LOGICHE

Algebra Booleana 1 ALGEBRA BOOLEANA: VARIABILI E FUNZIONI LOGICHE Algebra Booleana 1 ALGEBRA BOOLEANA: VARIABILI E FUNZIONI LOGICHE Andrea Bobbio Anno Accademico 2000-2001 Algebra Booleana 2 Calcolatore come rete logica Il calcolatore può essere visto come una rete logica

Dettagli

Insiemi con un operazione

Insiemi con un operazione Capitolo 3 Insiemi con un operazione 3.1 Gruppoidi, semigruppi, monoidi Definizione 309 Un operazione binaria su un insieme G è una funzione: f : G G G Quindi, un operazione binaria f su un insieme G è

Dettagli

+ P a n n=1 + X. a n = a m 3. n=1. m=4. Per poter dare un significato alla somma (formale) di infiniti termini, ricorriamo al seguente procedimento:

+ P a n n=1 + X. a n = a m 3. n=1. m=4. Per poter dare un significato alla somma (formale) di infiniti termini, ricorriamo al seguente procedimento: Capitolo 3 Serie 3. Definizione Sia { } una successione di numeri reali. Ci proponiamo di dare significato, quando possibile, alla somma a + a 2 +... + +... di tutti i termini della successione. Questa

Dettagli

Ancora sugli insiemi. Simbologia

Ancora sugli insiemi. Simbologia ncora sugli insiemi Un insieme può essere specificato in vari modi; il più semplice è fare un elenco dei suoi elementi. d esempio l insieme delle nostre lauree triennali è { EOOM, EON, EOMM, EOMK EOTU}

Dettagli

CUTPOINTS BRIDGES BLOCKS BLOCK GRAPHS - CUTPOINT GRAPHS

CUTPOINTS BRIDGES BLOCKS BLOCK GRAPHS - CUTPOINT GRAPHS CUTPOINTS BRIDGES BLOCKS BLOCK GRAPHS - CUTPOINT GRAPHS INTRODUZIONE Per conoscere la struttura di un grafo connesso è importante individuare nel grafo la distribuzione di certi punti detti cutpoints (punti

Dettagli

Alternanza, parallelismo e complessità

Alternanza, parallelismo e complessità Facoltà di Scienze Matematiche, Fisiche e Naturali Corso di Laurea Triennale in Matematica Tesi di Laurea Triennale Alternanza, parallelismo e complessità Candidato Pietro Battiston Relatore Prof. Alessandro

Dettagli

PROVA INTRACORSO TRACCIA A Pagina 1 di 6

PROVA INTRACORSO TRACCIA A Pagina 1 di 6 PROVA INTRACORSO DI ELEMENTI DI INFORMATICA MATRICOLA COGNOME E NOME TRACCIA A DOMANDA 1 Calcolare il risultato delle seguenti operazioni binarie tra numeri interi con segno rappresentati in complemento

Dettagli