3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1
|
|
- Geronimo Arcuri
- 8 anni fa
- Visualizzazioni
Transcript
1 3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE E. Amaldi Fondamenti di R.O. Politecnico di Milano 1
2 Scopo: Stimare l onere computazionale per risolvere problemi di ottimizzazione e di altra natura Due tipi di obiettivi: Determinare l efficienza di un specifico algoritmo A per risolvere un dato problema P Tentare di valutare la difficoltà intrinseca di un dato problema P Particolare attenzione ai problemi di ottimizzazione combinatoria E. Amaldi Fondamenti di R.O. Politecnico di Milano 2
3 3.1 Complessità degli algoritmi Scopo: stimare l onere computazionale di algoritmi alternativi per risolvere un dato problema P al fine di selezionare quello più efficiente Definizione: Una istanza I di un problema P è un caso specifico del problema. Esempio Problema P : ordinare m numeri interi c 1,..., c m Istanza I : m = 3, c 1 = 2, c 2 = 7, c 3 = 5 E. Amaldi Fondamenti di R.O. Politecnico di Milano 3
4 Tempo di calcolo valutato in termini di numero di operazioni elementari ( aritmetiche, confronti, accessi memoria,... ) necessarie per risolvere una data istanza I Ipotesi: tutte le operazioni elementari richiedono un unità di tempo Chiaramente il numero di operazioni elementari dipende dalla dimensione dell istanza I E. Amaldi Fondamenti di R.O. Politecnico di Milano 4
5 Dimensione di una istanza Definizione: La dimensione di un istanza I, indicata I, è il numero di bit necessari a codificare (descrivere) I. Esempio Istanza specificata dai valori di m e c 1,..., c m Poiché la codifica di un intero i richiede lo g i bit, I log m + m log c max dove c max = max{c j : 1 j m} Per istanza m = 3, c 1 = 2, c 2 = 7, c 3 = 5 I log log 7 E. Amaldi Fondamenti di R.O. Politecnico di Milano 5
6 Rapidità di crescita asintotica: f(n) = O(g(n)) se c > 0 tale che f(n) c g(n) per n sufficientemente grande c g(n) f (n) Si dice che f(n) è dell ordine di g(n) n 0 n Esempio Per il problema di ordinamento di m interi I log m + m log c max = O(log m + m log c max ) E. Amaldi Fondamenti di R.O. Politecnico di Milano 6
7 Ordine di complessità Si cerca una funzione f (n) tale che, per ogni istanza I di dimensione I n, il numero di operazioni elementari per risolvere istanza I sia f (n) Osservazioni: Poiché f (n) è un limite superiore I con I n, si considera il caso peggiore f (n) espressa in termini di rapidità di crescita asintotica Esempio Per l ordinamento di m interi esistono algoritmi con complessità O(m log m) E. Amaldi Fondamenti di R.O. Politecnico di Milano 7
8 Definizione: Un algoritmo è polinomiale se richiede, nel caso peggiore, un numero di operazioni elementari f(n) = O(n d ) dove d è costante e n = I è la dimensione dell istanza. Si distinguono algoritmi con ordini di complessità: O(n d ) polinomiale O(2 n ) esponenziale Un algoritmo in O(n 7 ) non è efficiente in pratica! E. Amaldi Fondamenti di R.O. Politecnico di Milano 8
9 Esempi Algoritmo di Dijkstra per problema dei cammini minimi Dimensione di una istanza: I = O(m log n + m log c max ) Complessità: O(n 2 ) dove n è il numero di nodi Rapidità di crescita polinomiale rispetto a I ( I m n -1) Versione di base dell algoritmo di Ford-Fulkerson per problema di flusso massimo Dimensione di una istanza: I = O(m log n + m log k max ) Complessità: O(m 2 k max ) dove m è il numero di archi Rapidità di crescita non polinomiale rispetto a I E. Amaldi Fondamenti di R.O. Politecnico di Milano 9
10 3.2 Complessità dei problemi Scopo: stimare la difficoltà intrinseca di un problema per adottare l approccio risolutivo più adeguato Intuitivamente, la difficoltà intrinseca corrisponde alla complessità del migliore possibile algoritmo! Definizione: Un problema P è polinomiale ( facile ) se esiste un algoritmo polinomiale che fornisce una soluzione (ottima) per ogni istanza. Esempi: cammini minimi, flussi di valore massimo,... E. Amaldi Fondamenti di R.O. Politecnico di Milano 10
11 ? Esistono problemi difficili? Per molti problemi di ottimizzazione i migliori algoritmi noti tutt oggi richiedono un numero di operazioni elementari che cresce, nel caso peggiore, esponenzialmente con la dimensione dell istanza N.B.: Non dimostra che sono effettivamente difficili! E. Amaldi Fondamenti di R.O. Politecnico di Milano 11
12 Problema del commesso viaggiatore Travelling Salesman Problem (TSP) Un commesso viaggiatore deve visitare ciascuna di n città esattamente una volta e ritornare al punto di partenza nel minor tempo possibile. collegamenti con tempi Problema Dato G = (N, A) orientato con un costo c ij Z per ogni (i, j) A, determinare un circuito di costo minimo che visita esattamente una volta ogni nodo. E. Amaldi Fondamenti di R.O. Politecnico di Milano 12
13 Definizione: Un circuito C è hamiltoniano se passa esattamente una volta per ogni nodo. Indicando con H l insieme di tutti i circuiti hamiltoniani di G, il problema equivale a m in C H ( i, j ) C c ij H contiene un numero finito di elementi: H ( n 1 )! Applicazioni: distribuzione, sequenziamento ottimo, VLSI, Numerose varianti ed estensioni (Vehicle Routing Problem --VRP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 13
14 14
15 3.3 Teoria della NP-completezza Si fa riferimento ai problemi di riconoscimento e non a quelli di ottimizzazione Definizione: Un problema di riconoscimento è un problema che richiede una risposta si / no Ad ogni problema di ottimizzazione viene associata una versione di riconoscimento Esempio TSP-r Dato G = (N, A) con distanze c ij intere e un intero L, esiste un circuito hamiltoniano di lunghezza L? E. Amaldi Fondamenti di R.O. Politecnico di Milano 15
16 Problemi di riconoscimento Qualsiasi problema di ottimizzazione è almeno altrettanto difficile della sua versione di riconoscimento Esempio Se si riesce a individuare un circuito hamiltoniano di lunghezza minima si può chiaramente rispondere alla domanda di TSP-r (ne esiste uno di lunghezza L?) Se versione di riconoscimento è difficile il problema di ottimizzazione è anch esso difficile E. Amaldi Fondamenti di R.O. Politecnico di Milano 16
17 Classe di complessità P Definizione: P indica l insieme dei problemi di riconoscimento che si possono risolvere in tempo polinomiale. Esempi: quelli associati ai problemi di alberi ottimi, di cammini minimi e di flussi massimi Per ciascuno di essi esiste un algoritmo che permette di stabilire per ogni istanza I se la risposta è si o no in tempo polinomiale in I Definizione formale di P in termini di macchina di Turing (deterministica) polinomiale E. Amaldi Fondamenti di R.O. Politecnico di Milano 17
18 Classe di complessità NP Definizione: NP indica l insieme dei problemi di riconoscimento tali che per ogni istanza con risposta si esiste una prova concisa (certificato) che permette di verificare in tempo polinomiale che la risposta è si. Esempio TSP-r poiché si può verificare in tempo polinomiale se una sequenza di nodi è un circuito hamiltoniano e se lunghezza L E. Amaldi Fondamenti di R.O. Politecnico di Milano 18
19 Definizione formale: NP indica l insieme dei problemi di riconoscimento per i quali un polinomio p(n) e un algoritmo di verifica del certificato A vc tale che : istanza I ha risposta si un certificato (I) di dimensione polinomiale ( (I) p( I ) ) e A vc applicato all input I, (I) da risposta si in un numero di operazioni elementari p( I ). N.B.: Non importa quanto è difficile ottenere il certificato (può essere fornito da un oracolo ) basta che esista e sia verificabile in tempo polinomiale! E. Amaldi Fondamenti di R.O. Politecnico di Milano 19
20 Chiaramente P NP P P NP Congettura P NP Uno dei Millennium Prize Problems 2000!! NP non sta per Non Polinomiale ma per Nondeterministico Polinomiale (fa riferimento alle macchine di Turing non-deterministiche polinomiali) E. Amaldi Fondamenti di R.O. Politecnico di Milano 20
21 Riduzione polinomiale tra problemi Concetto di riduzione polinomiale permette di confrontare i problemi di riconoscimento ed individuare quelli più difficili Definizione: Sia P 1 e P 2 NP, P 1 si riduce in tempo polinomiale a P 2 (P 1 P 2 ) se esiste un algoritmo per risolvere P 1 che chiama un certo numero di volte un ipotetico algoritmo per P 2, e risulta polinomiale se si suppone che quello per P 2 richieda un unica unità di tempo. E. Amaldi Fondamenti di R.O. Politecnico di Milano 21
22 Caso più semplice: l algoritmo per P 2 viene chiamato un unica volta. Esempio P 1 : Dato un grafo non orientato G = ( N, E ) con costi e un intero L, un ciclo hamiltoniano di lunghezza L? P 2 : Dato un grafo orientato G = ( N, A ) con costi e un intero L, un circuito hamiltoniano di lunghezza L? P 1 P 2 E. Amaldi Fondamenti di R.O. Politecnico di Milano 22
23 Riduzione polinomiale dal caso non orientato a quello orientato : in tempo e spazio polinomiale I 1 P 1 è facile costruire una particolare I 2 P G=(N,E) G =(N,A ) L = 15 L = tale che I 1 ha risposta si I 2 ha la risposta si E. Amaldi Fondamenti di R.O. Politecnico di Milano 23
24 Conseguenza: Se P 1 P 2 e P 2 è risolubile mediante un algoritmo polinomiale, allora anche P 1 può essere risolto in tempo polinomiale. P 2 P P 1 P E. Amaldi Fondamenti di R.O. Politecnico di Milano 24
25 Problemi NP-completi Definizione: Un problema P è NP-completo se e solo se 1) appartiene a NP 2) ogni altro problema in NP è riducibile ad esso in tempo polinomiale ( P P, P NP ) NP-completi P NP E. Amaldi Fondamenti di R.O. Politecnico di Milano 25
26 Proprietà: Se un problema NP-completo P fosse risolubile in tempo polinomiale (se P ), allora lo sarebbero tutti i problemi di NP, cioè si avrebbe P =NP!! eventualità considerata estremamente improbabile La NP-completezza è quindi un forte indizio di difficoltà intrinseca cf. lunga lista di problemi di riconoscimento importanti che risultano NP-completi e per i quali non sono noti algoritmi polinomiali E. Amaldi Fondamenti di R.O. Politecnico di Milano 26
27 Esistono problemi NP-completi? Soddisfacibilità (SAT) Date m clausole booleane C 1,, C m ( disgiunzioni -- OR -- di variabili booleane y j e loro complementi y j ), esiste un assegnamento di valori vero o falso alle variabili che rende vere tutte le clausole? Esempio C 1 : ( y 1 y 2 y 3 ) C 2 : ( y 1 y 2 ) C 3 : ( y 2 y 3 ) assegnamento: y 1 = vero, y 2 = falso, y 3 = falso E. Amaldi Fondamenti di R.O. Politecnico di Milano 27
28 Primo problema dimostrato NP-completo: Teorema (Cook 1971) SAT è NP-completo Stephen A.Cook Tramite i concetti di macchina di Turing e riduzione polinomiale E. Amaldi Fondamenti di R.O. Politecnico di Milano 28
29 (1974) Richard M. Karp Mostra che le versioni di riconoscimento di 21 problemi di ottimizzazione combinatoria sono NP-completi E. Amaldi Fondamenti di R.O. Politecnico di Milano 29
30 Come mostrare la NP-completezza? Per stabilire che P 2 NP è NP-completo basta mostrare che un problema NP-completo P 1 si riduce polinomialmente a P 2 : P P 1, P NP, e P 1 P 2 implica per transitività che P P 2, P NP Esempio P 1 : Dato G non orientato con costi e un intero L, un ciclo hamiltoniano di lunghezza L? P 2 : Dato G orientato con costi e un intero L, un circuito hamiltoniano di lunghezza L? P 2 NP e P 1 P 2 con P 1 NP-completo E. Amaldi Fondamenti di R.O. Politecnico di Milano 30
31 Dato G = (N, E) non orientato, esiste un ciclo hamiltoniano? (Karp 74) Dato un sistema lineare A x b con coefficienti interi, esiste una soluzione x con componenti 0-1?. Esempi di problemi NP-completi Dato G = (N, A) orientato, due nodi assegnati s e t, e un intero L, esiste un cammino semplice (con nodi distinti) da s a t che contiene un numero di archi L? Dato G = (N, A) orientato con costi sugli archi, due nodi s e t, e un intero L, esiste un cammino semplice da s a t di costo L? E. Amaldi Fondamenti di R.O. Politecnico di Milano 31
32 Problemi NP-difficili Definizione: Un problema è NP-difficile se ogni problema in NP è riducibile ad esso in tempo polinomiale (anche se non appartiene ad NP ) Esempio TSP poiché TSP-r (esiste un circuito hamiltoniano di lunghezza L?) è NP-completo. Tutti i problemi di otttimizzazione di cui la versione di riconoscimento è NP-completa sono NP-difficili. E. Amaldi Fondamenti di R.O. Politecnico di Milano 32
33 Programmazione Lineare Intera (PLI): Dati A m n, b m 1 e c n 1 con coefficienti interi, trovare x con componenti intere tale che Ax b e minimizza c T x. Proposizione (Karp 74): PLI è NP-difficile. 1) Verificare che la versione di riconoscimento del caso binario, r-pl0-1, appartiene a NP. r-pl0-1: Dato A x b con coefficienti interi, esiste una soluzione x {0, 1} n? 2) Mostrare che SAT (NP-completo) si riduce polinomialmente a r-pl0-1. (cf. esercizio 3.3) E. Amaldi Fondamenti di R.O. Politecnico di Milano 33
34 Esempi di problemi NP-difficili Dato G = (N, A) orientato con costi sugli archi, due nodi assegnati s e t, determinare un cammino semplice di costo massimo tra s e t. Dato G = (N, A) orientato con costi sugli archi, due nodi s e t, determinare un cammino semplice di costo minimo tra s e t. Dati matrice A m n, e vettori b m 1 e c n 1 con componenti intere, trovare un x {0, 1} n che soddisfi Ax b e minimizzi c T x.. E. Amaldi Fondamenti di R.O. Politecnico di Milano 34
35 Esercizio Qual è la dimensione di un istanza del problema dell albero di supporto di costo minimo? E. Amaldi Fondamenti di R.O. Politecnico di Milano 35
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
DettagliCapitolo 4: Ottimizzazione non lineare non vincolata parte II. E. Amaldi DEIB, Politecnico di Milano
Capitolo 4: Ottimizzazione non lineare non vincolata parte II E. Amaldi DEIB, Politecnico di Milano 4.3 Algoritmi iterativi e convergenza Programma non lineare (PNL): min f(x) s.v. g i (x) 0 1 i m x S
DettagliLe 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
DettagliOttimizzazione Multi Obiettivo
Ottimizzazione Multi Obiettivo 1 Ottimizzazione Multi Obiettivo I problemi affrontati fino ad ora erano caratterizzati da una unica (e ben definita) funzione obiettivo. I problemi di ottimizzazione reali
DettagliCapitolo 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
DettagliTSP 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
DettagliMetodi 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
DettagliNote 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
DettagliESEMPIO 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
DettagliSommario. Linguaggi formali: motivazioni, definizione ed esempi operazioni su parole e linguaggi
Sommario Linguaggi formali: motivazioni, definizione ed esempi operazioni su parole e linguaggi 1 Tipi di problemi Nelle teorie della calcolabilità e della complessità si considerano problemi di decisione,
DettagliEsercizi Capitolo 6 - Alberi binari di ricerca
Esercizi Capitolo 6 - Alberi binari di ricerca Alberto Montresor 23 settembre 200 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente, è possibile
DettagliIl 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........................................
DettagliEsercizi 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
DettagliSistemi Operativi mod. B. Sistemi Operativi mod. B A B C A B C P 1 2 0 0 P 1 1 2 2 3 3 2 P 2 3 0 2 P 2 6 0 0 P 3 2 1 1 P 3 0 1 1 < P 1, >
Algoritmo del banchiere Permette di gestire istanze multiple di una risorsa (a differenza dell algoritmo con grafo di allocazione risorse). Ciascun processo deve dichiarare a priori il massimo impiego
DettagliMacchine a stati finiti G. MARSELLA UNIVERSITÀ DEL SALENTO
Macchine a stati finiti 1 G. MARSELLA UNIVERSITÀ DEL SALENTO Introduzione Al più alto livello di astrazione il progetto logico impiega un modello, la cosiddetta macchina a stati finiti, per descrivere
DettagliTSP 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
Dettaglib i 1,1,1 1,1,1 0,1,2 0,3,4
V o Appello // RICERCA OPERATIVA - Corso A (a.a. 9/) Nome Cognome: Corso di Laurea: L C6 LS LM Matricola: ) Si consideri il problema di flusso di costo minimo in figura. Si verifichi se il flusso ammissibile
DettagliAlgoritmi 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
DettagliAlgoritmo. I dati su cui opera un'istruzione sono forniti all'algoritmo dall'esterno oppure sono il risultato di istruzioni eseguite precedentemente.
Algoritmo Formalmente, per algoritmo si intende una successione finita di passi o istruzioni che definiscono le operazioni da eseguire su dei dati (=istanza del problema): in generale un algoritmo è definito
DettagliPROVA 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
DettagliProblema del trasporto
p. 1/1 Problema del trasporto Supponiamo di avere m depositi in cui è immagazzinato un prodotto e n negozi che richiedono tale prodotto. Nel deposito i è immagazzinata la quantità a i di prodotto. Nel
DettagliCalcolatori: Algebra Booleana e Reti Logiche
Calcolatori: Algebra Booleana e Reti Logiche 1 Algebra Booleana e Variabili Logiche I fondamenti dell Algebra Booleana (o Algebra di Boole) furono delineati dal matematico George Boole, in un lavoro pubblicato
DettagliIntroduzione 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
DettagliComplessità 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
DettagliMacchine a stati finiti. Sommario. Sommario. M. Favalli. 5th June 2007
Sommario Macchine a stati finiti M. Favalli 5th June 27 4 Sommario () 5th June 27 / 35 () 5th June 27 2 / 35 4 Le macchine a stati si utilizzano per modellare di sistemi fisici caratterizzabili mediante:
Dettagli4.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ù
DettagliComplessità Computazionale
Complessità Computazionale Analisi Algoritmi e pseudocodice Cosa significa analizzare un algoritmo Modello di calcolo Analisi del caso peggiore e del caso medio Esempio di algoritmo in pseudocodice INSERTION
DettagliMacchine a stati finiti. Sommario. Sommario. M. Favalli. Le macchine a stati si utilizzano per modellare di sistemi fisici caratterizzabili mediante:
Sommario Macchine a stati finiti M. Favalli Engineering Department in Ferrara 4 Sommario (ENDIF) Analisiesintesideicircuitidigitali / 35 (ENDIF) Analisiesintesideicircuitidigitali 2 / 35 4 Le macchine
Dettagli(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à
DettagliRicerca Operativa A.A. 2007/2008
Ricerca Operativa A.A. 2007/2008 9. Cenni su euristiche e metaeuristiche per ottimizzazione combinatoria Motivazioni L applicazione di metodi esatti non è sempre possibile a causa della complessità del
DettagliSommario. 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
DettagliIl Metodo Branch and Bound
Il Laura Galli Dipartimento di Informatica Largo B. Pontecorvo 3, 56127 Pisa laura.galli@unipi.it http://www.di.unipi.it/~galli 4 Novembre 2014 Ricerca Operativa 2 Laurea Magistrale in Ingegneria Gestionale
Dettagli2) 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
DettagliComplessità e Approssimazione
1 Complessità e Approssimazione Corso di Laurea in Scienze dell'informazione Corso di Laurea Specialistica in Matematica Docente: Mauro Leoncini 2 Aspetti organizzativi Sito web: http://algo.ing.unimo.it/people/mauro
DettagliCorso di Matematica per la Chimica
Dott.ssa Maria Carmela De Bonis a.a. 203-4 I sistemi lineari Generalità sui sistemi lineari Molti problemi dell ingegneria, della fisica, della chimica, dell informatica e dell economia, si modellizzano
DettagliUD 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
DettagliCodifiche a lunghezza variabile
Sistemi Multimediali Codifiche a lunghezza variabile Marco Gribaudo marcog@di.unito.it, gribaudo@elet.polimi.it Assegnazione del codice Come visto in precedenza, per poter memorizzare o trasmettere un
DettagliEsame di Ricerca Operativa del 19/01/2016
Esame di Ricerca Operativa del 19/01/201 (Cognome) (Nome) (Matricola) Esercizio 1. Una banca offre ai suoi clienti diversi tipi di prestito: mutuo casa, credito auto, credito famiglia, che rendono un interesse
DettagliMatematica generale CTF
Successioni numeriche 19 agosto 2015 Definizione di successione Monotonìa e limitatezza Forme indeterminate Successioni infinitesime Comportamento asintotico Criterio del rapporto per le successioni Definizione
DettagliMATEMATICA 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
DettagliMetodi Computazionali
Metodi Computazionali Elisabetta Fersini fersini@disco.unimib.it A.A. 2009/2010 Catene di Markov Applicazioni: Fisica dinamica dei sistemi Web simulazione del comportamento utente Biologia evoluzione delle
DettagliMacchine sequenziali
Corso di Calcolatori Elettronici I A.A. 2010-2011 Macchine sequenziali Lezione 14 Università degli Studi di Napoli Federico II Facoltà di Ingegneria Automa a Stati Finiti (ASF) E una prima astrazione di
DettagliEsame di Ricerca Operativa del 19/01/2016
Esame di Ricerca Operativa del 9/0/06 (Cognome) (Nome) (Matricola) Esercizio. Una banca offre ai suoi clienti diversi tipi di prestito: mutuo casa, credito auto, credito famiglia, che rendono un interesse
DettagliANALISI DEL CONDIZIONAMENTO DI UN SISTEMA LINEARE
ANALISI DEL CONDIZIONAMENTO DI UN SISTEMA LINEARE Algebra lineare numerica 121 Ax = b A, b affetti dall errore di round-off si risolve sempre un sistema perturbato: con (A + A)(x + x) = b + b A = ( a i,j
DettagliPlanning as Model Checking Presentazione della Tesina di Intelligenza Artificiale
Planning as Model Checking Presentazione della Tesina di Intelligenza Artificiale di Francesco Maria Milizia francescomilizia@libero.it Model Checking vuol dire cercare di stabilire se una formula è vera
DettagliSeconda Prova di Ricerca Operativa. Cognome Nome Numero Matricola A 1/12 A 2/12
A / A / Seconda Prova di Ricerca Operativa Cognome Nome Numero Matricola Nota: LA RISOLUZIONE CORRETTA DEGLI ESERCIZI CONTRADDISTINTI DA UN ASTERISCO È CONDIZIONE NECESSARIA PER IL RAGGIUNGIMENTO DELLA
DettagliApprossimazione polinomiale di funzioni e dati
Approssimazione polinomiale di funzioni e dati Approssimare una funzione f significa trovare una funzione f di forma più semplice che possa essere usata al posto di f. Questa strategia è utilizzata nell
DettagliSVM. Veronica Piccialli. Roma 11 gennaio 2010. Università degli Studi di Roma Tor Vergata 1 / 14
SVM Veronica Piccialli Roma 11 gennaio 2010 Università degli Studi di Roma Tor Vergata 1 / 14 SVM Le Support Vector Machines (SVM) sono una classe di macchine di che derivano da concetti riguardanti la
DettagliDispense 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
Dettaglie-dva - eni-depth Velocity Analysis
Lo scopo dell Analisi di Velocità di Migrazione (MVA) è quello di ottenere un modello della velocità nel sottosuolo che abbia dei tempi di riflessione compatibili con quelli osservati nei dati. Ciò significa
DettagliRicerca 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
DettagliCognome:.. Nome:.. 1/5
Cognome:.. Nome:.. 1/5 Sistemi P2P Prova del 17/12/2007 Note: 1) Per ogni risposta corretta a domande di tipo A vengono assegnati 4 punti 2) Per ogni risposta scorretta a domande di tipo A viene sottratto
DettagliCapitolo 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
DettagliAlgoritmi e Strutture Dati (Mod. B) Introduzione
Algoritmi e Strutture Dati (Mod. B) Introduzione Modulo B Orari Lunedì ore 11-13 aula A6 Mercoledì ore 14-16 aula A6 Ricevimento Martedì ore 14-16 Ufficio 2M13 Dip. Fisica (2 piano edificio M) Laboratori
DettagliOttimizzazione nella gestione dei progetti Capitolo 4: la gestione dei costi (Programmazione multimodale): formulazioni
Ottimizzazione nella gestione dei progetti Capitolo 4: la gestione dei costi (Programmazione multimodale): formulazioni CARLO MANNINO Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica
DettagliComparatori. Comparatori di uguaglianza
Comparatori Scopo di un circuito comparatore é il confronto tra due codifiche binarie. Il confronto può essere effettuato per verificare l'uguaglianza oppure una relazione d'ordine del tipo "maggiore",
Dettagli1. Sia dato un poliedro. Dire quali delle seguenti affermazioni sono corrette.
. Sia dato un poliedro. (a) Un vettore x R n è un vertice di P se soddisfa alla seguenti condizioni: x P e comunque presi due punti distinti x, x 2 P tali che x x e x x 2 si ha x = ( β)x + βx 2 con β [0,
DettagliCorrettezza. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 10. A. Miola Novembre 2007
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa 10 Correttezza A. Miola Novembre 2007 http://www.dia.uniroma3.it/~java/fondinf1/ Correttezza 1 Contenuti Introduzione alla correttezza
DettagliSono 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
DettagliProof. 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
DettagliTeoria della Complessità Computazionale
Teoria della Complessità Computazionale Daniele Vigo D.E.I.S. - Università di Bologna dvigo@deis.unibo.it Rev. 1.3, 11/00 rev. 1.3 - Novembre 2000 Teoria della Complessità Studia la difficoltà dei problemi
DettagliLuigi Piroddi piroddi@elet.polimi.it
Automazione industriale dispense del corso 10. Reti di Petri: analisi strutturale Luigi Piroddi piroddi@elet.polimi.it Analisi strutturale Un alternativa all analisi esaustiva basata sul grafo di raggiungibilità,
Dettaglici sono più problemi che programmi esiste un problema che non si può risolvere con un programma
Calcolabilità problemi facili trovare la media di due numeri stampare le linee di un file che contengono una parola problemi difficili trovare il circuito minimo data una tabella determinare la migliore
DettagliProgrammazione dinamica
Capitolo 6 Programmazione dinamica 6.4 Il problema della distanza di edit tra due stringhe x e y chiede di calcolare il minimo numero di operazioni su singoli caratteri (inserimento, cancellazione e sostituzione)
DettagliTeoria della Complessità Computazionale
Teoria della Complessità Computazionale Laura Galli Dipartimento di Informatica Largo B. Pontecorvo 3, 56127 Pisa laura.galli@unipi.it http://www.di.unipi.it/~galli 21 Ottobre 2014 Ricerca Operativa 2
DettagliI Problemi e la loro Soluzione. Il Concetto Intuitivo di Calcolatore. Risoluzione di un Problema. Esempio
Il Concetto Intuitivo di Calcolatore Fondamenti di Informatica A Ingegneria Gestionale Università degli Studi di Brescia Docente: Prof. Alfonso Gerevini I Problemi e la loro Soluzione Problema: classe
DettagliEQUAZIONI DIFFERENZIALI. 1. Trovare tutte le soluzioni delle equazioni differenziali: (a) x = x 2 log t (d) x = e t x log x (e) y = y2 5y+6
EQUAZIONI DIFFERENZIALI.. Trovare tutte le soluzioni delle equazioni differenziali: (a) x = x log t (d) x = e t x log x (e) y = y 5y+6 (f) y = ty +t t +y (g) y = y (h) xy = y (i) y y y = 0 (j) x = x (k)
DettagliAppunti sulla Macchina di Turing. Macchina di Turing
Macchina di Turing Una macchina di Turing è costituita dai seguenti elementi (vedi fig. 1): a) una unità di memoria, detta memoria esterna, consistente in un nastro illimitato in entrambi i sensi e suddiviso
DettagliSequenziamento a minimo costo di commutazione in macchine o celle con costo lineare e posizione home (In generale il metodo di ottimizzazione
Sequenziamento a minimo costo di commutazione in macchine o celle con costo lineare e posizione home (In generale il metodo di ottimizzazione presentato in questo file trova la seq. a costo minimo per
DettagliProblemi computazionali
Problemi computazionali Intrattabilità e classi computazionali Decidibilità e Trattabilità Problemi decidibili possono richiedere tempi di risoluzione elevati: Torri di Hanoi Decidibilità e Trattabilità
DettagliCenni su algoritmi, diagrammi di flusso, strutture di controllo
Cenni su algoritmi, diagrammi di flusso, strutture di controllo Algoritmo Spesso, nel nostro vivere quotidiano, ci troviamo nella necessità di risolvere problemi. La descrizione della successione di operazioni
DettagliReti sequenziali sincrone
Reti sequenziali sincrone Un approccio strutturato (7.1-7.3, 7.5-7.6) Modelli di reti sincrone Analisi di reti sincrone Descrizioni e sintesi di reti sequenziali sincrone Sintesi con flip-flop D, DE, T
DettagliCPM - PERT CPM - PERT. Rappresentazione di un progetto. Gestione di un progetto. Critical Path Method Project Evaluation and Review Technique
CPM - PERT CPM - PERT CPM e PERT sono metodologie per la gestione di progetti composti da più attività in cui esistano relazioni di precedenza. Critical Path Method Project Evaluation and Review Technique
DettagliNozione di algoritmo. Gabriella Trucco
Nozione di algoritmo Gabriella Trucco Programmazione Attività con cui si predispone l'elaboratore ad eseguire un particolare insieme di azioni su particolari informazioni (dati), allo scopo di risolvere
DettagliAutomazione Industriale (scheduling+mms) scheduling+mms. adacher@dia.uniroma3.it
Automazione Industriale (scheduling+mms) scheduling+mms adacher@dia.uniroma3.it Introduzione Sistemi e Modelli Lo studio e l analisi di sistemi tramite una rappresentazione astratta o una sua formalizzazione
DettagliEsponenziali elogaritmi
Esponenziali elogaritmi Potenze ad esponente reale Ricordiamo che per un qualsiasi numero razionale m n prendere n>0) si pone a m n = n a m (in cui si può sempre a patto che a sia un numero reale positivo.
DettagliSistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. Implementazione del File System. Struttura del File System. Implementazione
IMPLEMENTAZIONE DEL FILE SYSTEM 9.1 Implementazione del File System Struttura del File System Implementazione Implementazione delle Directory Metodi di Allocazione Gestione dello spazio libero Efficienza
DettagliBarriere assorbenti nelle catene di Markov e una loro applicazione al web
Università Roma Tre Facoltà di Scienze M.F.N Corso di Laurea in Matematica a.a. 2001/2002 Barriere assorbenti nelle catene di Markov e una loro applicazione al web Giulio Simeone 1 Sommario Descrizione
DettagliOttimizazione vincolata
Ottimizazione vincolata Ricordiamo alcuni risultati provati nella scheda sulla Teoria di Dini per una funzione F : R N+M R M di classe C 1 con (x 0, y 0 ) F 1 (a), a = (a 1,, a M ), punto in cui vale l
DettagliCrittografia. Primalità e Fattorizzazione. Corso di Laurea Specialistica. in Informatica
Crittografia Corso di Laurea Specialistica in Informatica Primalità e Fattorizzazione Alberto Leporati Dipartimento di Informatica, Sistemistica e Comunicazione Università degli Studi di Milano Bicocca
DettagliCorso 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
DettagliStima per intervalli Nei metodi di stima puntuale è sempre presente un ^ errore θ θ dovuto al fatto che la stima di θ in genere non coincide con il parametro θ. Sorge quindi l esigenza di determinare una
DettagliForze come grandezze vettoriali
Forze come grandezze vettoriali L. Paolucci 23 novembre 2010 Sommario Esercizi e problemi risolti. Per la classe prima. Anno Scolastico 2010/11 Parte 1 / versione 2 Si ricordi che la risultante di due
DettagliProblemi complessi : come trovare una soluzione soddisfacente?
Informatica nel futuro, sfide e prospettive - evento scientifico per i 40 anni di ated Manno, 7 ottobre 2011 Problemi complessi : come trovare una soluzione soddisfacente? Marino Widmer Università di Friburgo
DettagliComputational Game Theory
Computational Game Theory Vincenzo Bonifaci 24 maggio 2012 5 Regret Minimization Consideriamo uno scenario in cui un agente deve selezionare, più volte nel tempo, una decisione tra un insieme di N disponibili:
DettagliSintesi di Reti Sequenziali Sincrone
LABORATORIO DI ARCHITETTURA DEI CALCOLATORI lezione n 9 Prof. Rosario Cerbone rosario.cerbone@uniparthenope.it a.a. 2007-2008 http://digilander.libero.it/rosario.cerbone Sintesi di Reti Sequenziali Sincrone
DettagliParte 6. Applicazioni lineari
Parte 6 Applicazioni lineari A Savo Appunti del Corso di Geometria 203-4 Indice delle sezioni Applicazioni fra insiemi, 2 Applicazioni lineari tra spazi vettoriali, 2 3 Applicazioni lineari da R n a R
DettagliEquazioni alle differenze finite (cenni).
AL 011. Equazioni alle differenze finite (cenni). Sia a n } n IN una successione di numeri reali. (Qui usiamo la convenzione IN = 0, 1,,...}). Diremo che è una successione ricorsiva o definita per ricorrenza
DettagliI.I.S. Primo Levi Badia Polesine A.S. 2012-2013
LGEBR DI BOOLE I.I.S. Primo Levi Badia Polesine.S. 2012-2013 Nel secolo scorso il matematico e filosofo irlandese Gorge Boole (1815-1864), allo scopo di procurarsi un simbolismo che gli consentisse di
DettagliTipologie 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
DettagliFunzioni con dominio in R n
0.1 Punti e vettori di R n Politecnico di Torino. Funzioni con dominio in R n Nota Bene: delle lezioni. Questo materiale non deve essere considerato come sostituto Molto spesso risulta che una quantita
Dettaglix 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
DettagliIl sapere tende oggi a caratterizzarsi non più come un insieme di contenuti ma come un insieme di metodi e di strategie per risolvere problemi.
E. Calabrese: Fondamenti di Informatica Problemi-1 Il sapere tende oggi a caratterizzarsi non più come un insieme di contenuti ma come un insieme di metodi e di strategie per risolvere problemi. L'informatica
DettagliOttimizzazione delle interrogazioni (parte I)
Ottimizzazione delle interrogazioni I Basi di Dati / Complementi di Basi di Dati 1 Ottimizzazione delle interrogazioni (parte I) Angelo Montanari Dipartimento di Matematica e Informatica Università di
DettagliAlbero semantico. Albero che mette in corrispondenza ogni formula con tutte le sue possibili interpretazioni.
Albero semantico Albero che mette in corrispondenza ogni formula con tutte le sue possibili interpretazioni. A differenza dell albero sintattico (che analizza la formula da un punto di vista puramente
DettagliLa Programmazione Lineare
4 La Programmazione Lineare 4.1 INTERPRETAZIONE GEOMETRICA DI UN PROBLEMA DI PROGRAMMAZIONE LINEARE Esercizio 4.1.1 Fornire una rappresentazione geometrica e risolvere graficamente i seguenti problemi
DettagliInterpolazione ed approssimazione di funzioni
Interpolazione ed approssimazione di funzioni Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ 9 novembre 2007 Outline 1 Polinomi Valutazione di un polinomio Algoritmo di Horner
DettagliDI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1
DIAGRAMMI A BLOCCHI TEORIA ED ESERCIZI 1 1 Il linguaggio dei diagrammi a blocchi è un possibile formalismo per la descrizione di algoritmi Il diagramma a blocchi, o flowchart, è una rappresentazione grafica
DettagliLa programmazione. Sviluppo del software
La programmazione problema Sviluppo del software idea (soluzione informale) algoritmo (soluzione formale) programma (traduzione dell algoritmo in una forma comprensibile da un elaboratore elettronico)
Dettagli