Teoria della Complessità Computazionale Parte II: Classi di Complessità

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Teoria della Complessità Computazionale Parte II: Classi di Complessità"

Transcript

1 Teoria della Complessità Computazionale arte II: Classi di Complessità Daniele Vigo D.E.I.S. - Università di Bologna dvigo@deis.unibo.it rev Ottobre 2003 Classi di complessità: ed N classe dei problemi in RV per cui si conosce un algoritmo polinomiale (Es. Ricerca, SST ) N classe dei problemi in RV per cui si può verificare che la soluzione è SI in un numero polinomiale di passi (certificato polinomiale) (Es. HC N, un circuito è Hamiltoniano se visita n vertici) Compl-II.2

2 Classe N Un problema in N: certificato polinomiale risolubile con un albero decisionale di altezza µ (I) Risolubile in tempo polinomiale da un calcolatore non deterministico (N = Non-deterministic olynomial) Compl-II.3 Classe N (2) Se un problema N c è la speranza di risolverlo in tempo polinomiale Quasi tutti i problemi di Ott. Comb. in RV N N N er la maggior parte dei problemi di Ott. Comb. non si conosce un algoritmo polinomiale = N? (MOLTO IMROBABILE) Compl-II.4

3 Classi di complessità: co-n co-n classe dei problemi in RV per cui si può verificare che la soluzione è NO in un numero polinomiale di passi (Es. verifica se G non contiene HC co-n, dato un HC la risposta è NO) N co-n Compl-II.5 Confronto tra OV e RV Th. Un problema in OV ed il suo equivalente in RV hanno la stessa difficoltà DIM. a) RV non è più difficile di OV: risolvendo il problema in OV si può stabilire se la risposta per RV è SI o NO Es. K01 in RV ( p,w,w,k ) algoritmo per K01 in OV ( p,w,w ) z * se z * K la risposta è SI, altrimenti è NO Compl-II.6

4 Confronto tra OV e RV (2) b) sotto l ipotesi (realistica) che il valore massimo U della f. obiettivo sia codificabile con un n. di bit polinomiale nella dimensione del problema, OV non è più difficile di RV: si usa più volte un algoritmo per RV con valori di tentativo per z * (risposta SI/NO) usando la ricerca binaria si trova z * in al più log 2 U (n. polinomiale) di esecuzioni di RV Compl-II.7 Ricerca binaria per K01 (OV) 1. oni U = Σ i=1, n p i, L = 0, K = (U-L)/2 2. Risolvi K01 in RV 3. Se la risposta è SI poni L=K altrimenti U=K 4. Se U L vai al passo 2 L=K SI L = 0 K=50 K=75 U=100 Compl-II.8

5 Trasformazioni polinomiali A N è trasformabile polinomialmente in B N (A B) se algoritmo polinomiale che istanza di A definisce un istanza di B che ha soluzione SI se e solo se l istanza di A ha soluzione SI A non è più difficile di B Es. Cammino più lungo in RV (L): Istanza : grafo G pesato, vertici s e t, un intero Κ Domanda : cammino elem. da s a t, avente costo K? Compl-II.9 Trasf. olinomiali: HC L 1) istanza di HC: G =(V, A) 2) istanza di L: (V, A, c, σ, ρ, K ) v 1 v 1 v 1 V =V {v 1 }; A = (A\{(v j,v 1 ) A}) {(v j,v 1 ):(v j,v 1 ) A} c ij = 1 (v i,v j ) A L(V, A, c, v 1, v 1, V ) HC è SI L è SI (il cammino più lungo vale V ) Compl-II.10

6 Trasformazioni polinomiali Se A B: algoritmo polinomiale per B algoritmo polinomiale per A Se A B e B C A C Dim. La somma di polinomi è un polinomio Compl-II.11 roblemi N-completi A N è N completo se B N, B A Se algoritmo polinomiale per A, allora algoritmo polinomiale per tutti i problemi N. A non è più facile di ogni problema N ogni problema N è un caso particolare di A Compl-II.12

7 roblemi N-completi (2) N-c N Difficoltà crescente Compl-II.13 roblemi N-completi (3) fino al 1970 Non si conoscono problemi Nc Soddisfacibilità SAT Istanza : un espressione booleana (and,or,not) in forma congiuntiva normale in n variabili x 1,,x n Domanda : un assegnamento dei valori VERO e FALSO alle variabili che rende vera l espressione? Es. n = 5 (x 1 x 2 x 3 ) (x 4 ) (x 5 x 6 ) Compl-II.14

8 roblemi N-completi (4) 1971 Cook dimostra che SAT è N-c N N-c Compl-II.15 roblemi N-completi (5) 1972 Karp dimostra che SAT HC, SAT K01, SAT altri 4 problemi N-c N Compl-II.16

9 roblemi N-completi (6) 1973-oggi Viene dimostrato che moltissimi problemi sono N-c. Restano alcuni problemi aperti. N N-c? Compl-II.17 Dimostrazioni di N-c (1) er dimostrare che un problema A è N-c: 1) dimostrare che A N certificato olinomiale del SI o risolubile con albero decisionale di altezza µ (I) 2) B N, B A, OURE 2 ) B N c : B A Compl-II.18

10 Dimostrazioni di N-c (2) Es. L N-c infatti HC N-c e L HC (già visto) Es. L01 N-c L01 N (triviale), trasf da SAT ( N-c) SAT L01 n variabili booleane x j k clausole C i ; poni { + 1 se x j C i a ij = 1 se x j C i b 0 altrimenti i = 1 - {j : x j C i } Compl-II.19 Dimostrazioni di N-c (3) Es. SAT L01 (x 1 ) ( x 1 x 2 x 3 ) ( x 3 ) x 1 1 x 1 + x 2 x 3 1 x 3 1 Compl-II.20

11 Dimostrazioni di N-c (4) Cammino semplice da v a se stesso con costi degli archi qualsiasi N-c Un cammino semplice da un vertice a se stesso ha al più n archi: se ne ha esattamente n è un HC HC N-c Dato un grafo G=(V, A) definendo c ij = 1 per ogni (i,j) A, se il cammino semplice di costo minimo da un qualunque vertice v a se stesso ha costo n, tale cammino è un HC Compl-II.21

Teoria della Complessità Computazionale

Teoria 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

Dettagli

Teoria della Complessità Computazionale Parte I: Introduzione

Teoria della Complessità Computazionale Parte I: Introduzione Teoria della Complessità Computazionale Parte I: Introduzione Daniele Vigo D.E.I.S. - Università di Bologna dvigo@deis.unibo.it rev. 3.0 - ottobre 2003 Teoria della Complessità Studia la difficoltà dei

Dettagli

Teoria della Complessità Computazionale

Teoria 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

Dettagli

Problemi intrattabili

Problemi intrattabili Tempo polinomiale ed esponenziale Una Tm M ha complessita in tempo T(n) se, dato un input w di lunghezza n, M si ferma dopo al massimo T (n) passi. Problemi intrattabili Ci occuperemo solo di problemi

Dettagli

Problemi intrattabili, classi P e NP. Problemi intrattabili, classi P e NP

Problemi intrattabili, classi P e NP. Problemi intrattabili, classi P e NP roblemi intrattabili Ci occuperemo solo di problemi decidibili, cioe ricorsivi. Tra loro, alcuni sono detti trattabili, se si puo provare che sono risolvibili in tempo polinomiale in modo deterministico.

Dettagli

Problemi decisionali. Esempi

Problemi decisionali. Esempi Problemi decisionali La teoria della complessità computazionale è definita principalmente in termini di problemi di decisione Essendo la risposta binaria, non ci si deve preoccupare del tempo richiesto

Dettagli

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

Automi e Linguaggi Formali

Automi e Linguaggi Formali Automi e Linguaggi Formali Problemi intrattabili, classi P e NP A.A. 2014-2015 Alessandro Sperduti sperduti@math.unipd.it Problemi intrattabili Ci occuperemo solo di problemi decidibili, cioè ricorsivi.

Dettagli

NP completezza. Problemi astratti

NP completezza. Problemi astratti NP completezza Vittorio Maniezzo - Università di Bologna Problemi astratti Un problema è un entità astratta (es. il TSP). Una istanzadel problema è un suo caso particolare in cui vengono specificati tutti

Dettagli

NP completezza. Vittorio Maniezzo - Università di Bologna

NP completezza. Vittorio Maniezzo - Università di Bologna NP completezza Vittorio Maniezzo - Università di Bologna Problemi astratti Un problema è un entità astratta (es. il TSP). Una istanzadel problema è un suo caso particolare in cui vengono specificati tutti

Dettagli

Certificati dei problemi in NP

Certificati dei problemi in NP Certificati dei problemi in NP La stringa y viene in genere denominata un certificato Un Certificato è una informazione ausiliaria che può essere utilizzata per verificare in tempo polinomiale nella dimensione

Dettagli

Complessità Strutturale e NP-Completezza

Complessità Strutturale e NP-Completezza Complessità Strutturale e NP-Completezza Una breve introduzione Francesco De Rose Alberto Giorgi Università degli Studi di Brescia Facoltà di Ingegneria Corso di Laurea Specialistica in Ingegneria Informatica

Dettagli

Teoria della NP-completezza. Damiano Macedonio

Teoria della NP-completezza. Damiano Macedonio Teoria della NP-completezza Damiano Macedonio mace@unive.it Copyright 2010, Moreno Marzolla, Università di Bologna, Italy (http://www.moreno.marzolla.name/teaching/asd2009/) This work is licensed under

Dettagli

Teoria della NP-completezza

Teoria della NP-completezza Teoria della NP-completezza Ivan Lanese Dipartimento di Informatica Scienza e Ingegneria Università di Bologna Ivan.lanese@gmail.com http://www.cs.unibo.it/~lanese/ NP-completezza 2 Complessità di problemi

Dettagli

Teoria della Complessità Concetti fondamentali

Teoria della Complessità Concetti fondamentali Teoria della Complessità Concetti fondamentali L oggetto della teoria della complessità è stabilire se un problema sia facile o difficile La difficoltà di un problema è una caratteristica generale e non

Dettagli

Algoritmo per A. !(x) Istanza di B

Algoritmo per A. !(x) Istanza di B Riduzioni polinomiali Una funzione f: T*!T* è detta computabile in tempo polinomiale se esiste una macchina di Turing limitata polinomialmente che la computi. Siano L 1 e L 2 " T* due linguaggi. Una funzione

Dettagli

Partizioni intere. =! i# P. Es: Dato {38, 17, 52, 61, 21, 88, 25} possiamo rispondere positivamente al quesito poiché

Partizioni intere. =! i# P. Es: Dato {38, 17, 52, 61, 21, 88, 25} possiamo rispondere positivamente al quesito poiché Partizioni intere PARTIZIONAMENTO: Dato un insieme di n interi non negativi rappresentati in binario, trovare un sottoinsieme P! {1,2,..., n } tale che! i"p a i =! i# P a i Es: Dato {38, 17, 52, 61, 21,

Dettagli

1. Problemi di ottimizzazione combinatoria

1. Problemi di ottimizzazione combinatoria 1. Problemi di ottimizzazione combinatoria Un istanza I di un problema di ottimizzazione combinatoria è la coppia (X, f), dove: o X Ω è un insieme finito (soluzioni ammissibili) o f è una funzione di costo

Dettagli

Capitolo 9: Trattabilitá e intrattabilitá dei problemi

Capitolo 9: Trattabilitá e intrattabilitá dei problemi Capitolo 9: Trattabilitá e intrattabilitá dei problemi 1 La classe P : é considerata tradizionalmente come una caratterizzazione formale dei problemi trattabili. n = 2 n = 5 n = 10 n = 100 n = 1000 n 2

Dettagli

Note sulle classi di complessità P, NP e NPC per ASD (DRAFT)

Note sulle classi di complessità P, NP e NPC per ASD (DRAFT) Note sulle classi di complessità P, NP e NPC per ASD 2010-11 (DRAFT) Nicola Rebagliati 20 dicembre 2010 1 La complessità degli algoritmi Obiettivo principale della teoria della complessità: ottenere una

Dettagli

Complessità Computazionale

Complessità Computazionale Complessità Computazionale La teoria della Computabilità cattura la nozione di algoritmo nel senso che per ogni problema sia esso decisionale o di calcolo di funzione stabilisce dei criteri per determinare

Dettagli

In prima approssimazione definiamo trattabili i problemi che possono essere risolti in tempo polinomiale con MT. Motivazioni:

In prima approssimazione definiamo trattabili i problemi che possono essere risolti in tempo polinomiale con MT. Motivazioni: 6.5 Trattabilita' computazionale. In prima approssimazione definiamo trattabili i problemi che possono essere risolti in tempo polinomiale con MT. Motivazioni: - la forte differenza nell'andamento asintotico

Dettagli

In prima approssimazione definiamo trattabili i problemi che possono essere risolti in tempo polinomiale con MT. Motivazioni:

In prima approssimazione definiamo trattabili i problemi che possono essere risolti in tempo polinomiale con MT. Motivazioni: 6.5 Trattabilita' computazionale. In prima approssimazione definiamo trattabili i problemi che possono essere risolti in tempo polinomiale con MT. Motivazioni: - la forte differenza nell'andamento asintotico

Dettagli

Ancora su 2-SAT. può essere pensata come una coppia di implicazioni!! " 1

Ancora su 2-SAT. può essere pensata come una coppia di implicazioni!!  1 Ancora su 2-SAT Qualsiasi clausola a 1! a 2 può essere pensata come una coppia di implicazioni!! " 1 " a 2 e " 2 " a 1 Il caso di letterale singolo a viene considerato come "" a Partendo da una istanza

Dettagli

PROBLEMA DEI CAMMINI MINIMI [CORMEN ET AL. CAP. 24] Il costo di cammino minimo da un vertice u ad un vertice v è definito nel seguente modo:

PROBLEMA DEI CAMMINI MINIMI [CORMEN ET AL. CAP. 24] Il costo di cammino minimo da un vertice u ad un vertice v è definito nel seguente modo: PROBLEMA DEI CAMMINI MINIMI [CORMEN ET AL. CAP. 24] Sia G = (V,E) un grafo orientato ai cui archi è associato un costo W(u,v). Il costo di un cammino p = (v 1,v 2,...,v k ) è la somma dei costi degli archi

Dettagli

Complessità computazionale

Complessità computazionale Complementi di Algoritmi e Strutture Dati Complessità computazionale Docente: Nicolò Cesa-Bianchi versione 6 marzo 2019 Attenzione: Questo è un riassunto di alcune lezioni messo a disposizione dal docente.

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

Teoria dei Grafi Parte I

Teoria dei Grafi Parte I Teoria dei Grafi Parte I Daniele Vigo D.E.I.S. - Università di Bologna dvigo@deis.unibo.it Teoria dei Grafi Paradigma di rappresentazione di problemi Grafo G : coppia (V,E) V = insieme di vertici E = insieme

Dettagli

Dentro P e oltre NP?

Dentro P e oltre NP? Dentro P e oltre NP? Tra P e EXPTIME? EXPTIME PSPACE conp NP P Si sa solo che P EXPTIME PSPACE completezza Un linguaggio A è PSPACE completo se 1.A è in PSPACE, cioè esiste una TM T che accetta A con complessità

Dettagli

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

3-SAT CLIQUE VERTEX-COVER INDEPENDENT-SET 3-COLORING

3-SAT CLIQUE VERTEX-COVER INDEPENDENT-SET 3-COLORING Sommario Esempi di problemi NP-completi: 3-S CLIQUE VEREX-COVER INDEPENDEN-SE 3-COLORING HamCycle SP 3S Consideriamo formule booleane in forma normale congiuntiva (CN) con esattamente 3 letterali per clausola

Dettagli

Il problema del commesso viaggiatore (TSP) la somma delle distanze tra le città. essere espresso dalla domanda:

Il problema del commesso viaggiatore (TSP) la somma delle distanze tra le città. essere espresso dalla domanda: Classe NP: il TSP Il problema del commesso viaggiatore (TSP)! È definito in termini di un insieme di n città c 1,..., c n e di una matrice delle distanze: D = ( d(i,j) ) d(i,j) = distanza(c i, c j )! Un

Dettagli

Il problema del commesso viaggiatore

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

Dettagli

Teoria dei Grafi Parte I. Alberto Caprara DEIS - Università di Bologna

Teoria dei Grafi Parte I. Alberto Caprara DEIS - Università di Bologna Teoria dei Grafi Parte I Alberto Caprara DEIS - Università di Bologna acaprara@deis.unibo.it Teoria dei Grafi Paradigma di rappresentazione di problemi Grafo G : coppia (V,E) V = insieme di vertici E =

Dettagli

Teoria della complessità

Teoria della complessità Teoria della complessità Materiale consigliato: testo del corso capitolo 34 Introduzione agli algoritmi e strutture dati T.H. Cormen, C.E. Leiserson, R.L. Rivest, C. Stein McGraw Hill, 2005 Denise Salvi

Dettagli

Aniello Murano Classe dei problemi NP. Nella lezione precedente abbiamo visto alcuni problemi che ammettono soluzione polinomiale

Aniello Murano Classe dei problemi NP. Nella lezione precedente abbiamo visto alcuni problemi che ammettono soluzione polinomiale Aniello Murano Classe dei problemi NP 13 Lezione n. Parole chiave: Classe NP Corso di Laurea: Informatica Codice: Email Docente: murano@ na.infn.it A.A. 2008-2009 Introduzione alla lezione Nella lezione

Dettagli

Alberi di copertura. Mauro Passacantando. Dipartimento di Informatica Largo B. Pontecorvo 3, Pisa

Alberi di copertura. Mauro Passacantando. Dipartimento di Informatica Largo B. Pontecorvo 3, Pisa Alberi di copertura Mauro Passacantando Dipartimento di Informatica Largo B. Pontecorvo, Pisa mpassacantando@di.unipi.it M. Passacantando TFA 0/ - Corso di Ricerca Operativa Università di Pisa / 9 Definizioni

Dettagli

Sommario. Esempi di problemi NP-completi: 3-COLORING TSP. HamCycle

Sommario. Esempi di problemi NP-completi: 3-COLORING TSP. HamCycle Sommario Esempi di problemi NP-completi: 3-COLORING HamCycle SP 3-Coloring è NP-hard Una colorazione di un grafo G=(V,E) è una funzione f : V {1,...,n} tale che {u,v} E f(u) f(v). Una 3- colorazione usa

Dettagli

Dispensa di Informatica Teorica (Elementi) - Teorema di Cook

Dispensa di Informatica Teorica (Elementi) - Teorema di Cook Teorema di ook (Idea generale) Dato L NP, costruire una trasformazione polinomiale f da L a L (sodd, e), cioè il linguaggio composto dalle stringhe che corrispondono ad istanze del problema sodd. La trasformazione

Dettagli

1) Data la seguente istanza di TSP (grafo completo con 5 nodi): c 12 = 52; c 13 = 51; c 14 = 40; c 15 = 53; c 23 = 44;

1) Data la seguente istanza di TSP (grafo completo con 5 nodi): c 12 = 52; c 13 = 51; c 14 = 40; c 15 = 53; c 23 = 44; 1) Data la seguente istanza di TSP (grafo completo con 5 nodi): c 12 = 52; c 13 = 51; c 14 = 40; c 15 = 53; c 23 = 44; c 24 = 15; c 25 = 12; c 34 = 32; c 35 = 55; c 45 = 24 Si calcoli l ottimo duale (formulazione

Dettagli

Soddisfacibilità e Semantic Tableau [1]

Soddisfacibilità e Semantic Tableau [1] Intelligenza Artificiale I Soddisfacibilità e Semantic Tableau Marco Piastra Soddisfacibilità e Semantic Tableau [1] Problemi e decidibilità (automatica) Problema Un problema è una relazione tra istanze

Dettagli

Soddisfacibilità e Semantic Tableau [1]

Soddisfacibilità e Semantic Tableau [1] Intelligenza Artificiale I Soddisfacibilità e Semantic Tableau Marco Piastra Soddisfacibilità e Semantic Tableau [1] Problemi e decidibilità (automatica) Problema In forma rigorosa, un problema è una relazione

Dettagli

Capitolo 8: Teoria della complessitá

Capitolo 8: Teoria della complessitá Capitolo 8: Teoria della complessitá 1 La Teoria della calcolabilitá considera aspetti qualitativi della soluzione di problemi. Distingue il calcolabile dal non calcolabile. La Teoria della complessitá

Dettagli

a cura di Luca Cabibbo e Walter Didimo

a cura di Luca Cabibbo e Walter Didimo a cura di Luca Cabibbo e Walter Didimo Esercizi di Informatica teorica - Luca Cabibbo e Walter Didimo 1 tipologie di problemi e notazioni sulla complessità classi di complessità appartenenza di problemi

Dettagli

Problemi, istanze, soluzioni

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

Dettagli

Sommario. Problemi di decisione, di ricerca e di ottimizzazione: come sono legate le complessità delle diverse versioni dei problemi?

Sommario. Problemi di decisione, di ricerca e di ottimizzazione: come sono legate le complessità delle diverse versioni dei problemi? Sommario Problemi di decisione, di ricerca e di ottimizzazione: come sono legate le complessità delle diverse versioni dei problemi? Decisione vs ricerca Se disponiamo di un efficiente algoritmo per risolvere

Dettagli

Algoritmi Euristici. Corso di Laurea in Informatica e Corso di Laurea in Matematica. Roberto Cordone DI - Università degli Studi di Milano

Algoritmi Euristici. Corso di Laurea in Informatica e Corso di Laurea in Matematica. Roberto Cordone DI - Università degli Studi di Milano Algoritmi Euristici Corso di Laurea in Informatica e Corso di Laurea in Matematica Roberto Cordone DI - Università degli Studi di Milano Lezioni: Martedì 14.30-16.30 in Aula Omega Venerdì 14.30-16.30 in

Dettagli

Sommario. Caratterizzazione alternativa di NP: il verificatore polinomiale la classe conp e le relazioni tra P, NP,coNP e EXPTIME

Sommario. Caratterizzazione alternativa di NP: il verificatore polinomiale la classe conp e le relazioni tra P, NP,coNP e EXPTIME Sommario Caratterizzazione alternativa di NP: il verificatore polinomiale la classe conp e le relazioni tra P, NP,coNP e EXPTIME HAMPATH - 1 HAMPATH = { G è un grafo diretto con un cammino hamiltoniano

Dettagli

Sommario. Problemi di decisione, di ricerca e di ottimizzazione: come sono legate le complessità delle diverse versioni dei problemi?

Sommario. Problemi di decisione, di ricerca e di ottimizzazione: come sono legate le complessità delle diverse versioni dei problemi? Sommario Problemi di decisione, di ricerca e di ottimizzazione: come sono legate le complessità delle diverse versioni dei problemi? Decisione vs ricerca! Se disponiamo di un efficiente algoritmo per risolvere

Dettagli

Definizione 1.3 (Arco accoppiato) Un arco è accoppiato se è appartenente al matching M.

Definizione 1.3 (Arco accoppiato) Un arco è accoppiato se è appartenente al matching M. Matching. Definizioni Definizione. (Matching di un grafo G = (N, A)) Il matching di un grafo è un sottoinsieme M di archi tali per cui nessuna coppia di essi condivida lo stesso nodo. Definizione.2 (Matching

Dettagli

acuradi Luca Cabibbo e Walter Didimo Esercizi di Informatica teorica - Luca Cabibbo e Walter Didimo 1

acuradi Luca Cabibbo e Walter Didimo Esercizi di Informatica teorica - Luca Cabibbo e Walter Didimo 1 acuradi Luca Cabibbo e Walter Didimo Esercizi di Informatica teorica - Luca Cabibbo e Walter Didimo 1 tipologie di problemi e notazioni sulla complessità classi di complessità appartenenza di problemi

Dettagli

Progettazione di Algoritmi

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

Dettagli

Lucchetto con combinazione (3 numeri tra 0 e 39)

Lucchetto con combinazione (3 numeri tra 0 e 39) Complessita computazionale ed il problema P / NP Fondamenti di Informatica 2011/12 Lucchetto con combinazione (3 numeri tra 0 e 39) Perche e sicuro? (escludendo che lo si rompa) Combinazione di 3 numberi

Dettagli

ALBERI ORIENTATI. Definizione: Albero orientato = rooted tree = grafo orientato con le seguenti proprietà: - ha un nodo fissato, detto radice (r);

ALBERI ORIENTATI. Definizione: Albero orientato = rooted tree = grafo orientato con le seguenti proprietà: - ha un nodo fissato, detto radice (r); ALBERI ORIENTATI Pagina 1 ALBERI ORIENTATI 15:05 Definizione: Albero orientato = rooted tree = grafo orientato con le seguenti proprietà: - ha un nodo fissato, detto radice (r); - per ogni nodo v, esiste

Dettagli

Sommario. Caratterizzazione alternativa di NP: il verificatore polinomiale esempi di problemi in NP

Sommario. Caratterizzazione alternativa di NP: il verificatore polinomiale esempi di problemi in NP Sommario Caratterizzazione alternativa di NP: il verificatore polinomiale esempi di problemi in NP I conjecture that there is no good algorithm for the traveling salesman problem. My reasons are the same

Dettagli

TEORIA DELLA COMPLESSITÀ

TEORIA DELLA COMPLESSITÀ TEORIA DELLA COMPLESSITÀ MATERIALE CONSIGLIATO: TESTO DI RIFERIMENTO SULLA TEORIA DELLA COMPLESSITÀ: Computers and Intractibility A Guide to the Theory of NP-Completeness M. R. Garey, D. S. Johnson Freeman

Dettagli

Le classi P, NP, PSPACE

Le classi P, NP, PSPACE Le classi P, NP, PSPACE Argomenti della lezione Classi di complessità notevoli I teoremi di gerarchia Il teorema di Savitch Problemi aperti Classi di complessità notevoli LOGSPACE = DSPACE(log n) P P=

Dettagli

Indecidibilità del problema della fermata in C

Indecidibilità del problema della fermata in C Indecidibilità del problema della fermata in C Si può vedere che si può dimostrare l indecidibilità del problema della fermata usando un qualsiasi linguaggio di programmazione, che è quindi un linguaggio

Dettagli

e Algoritmi Marco Piastra Intelligenza Artificiale I Soddisfacibilità

e Algoritmi Marco Piastra Intelligenza Artificiale I Soddisfacibilità Intelligenza Artificiale I Soddisfacibilità e Algoritmi Marco Piastra Intelligenza Artificiale I - A.A. 2010- Soddisfacibilità e Semantic Tableau [1] Problemi e decidibilità (automatica) Problema Un problema

Dettagli

Algoritmi di approssimazione

Algoritmi di approssimazione Algoritmi di approssimazione Corso di Laurea Magistrale in Matematica A.A. 2014/2015 Algoritmi di approssimazione: elementi di complessità Sommario Informazioni generali Richiami di algoritmica Un primo

Dettagli

Teoria della Complessità Concetti fondamentali. la teoria della complessità computazionale tenta di rispondere a domande del tipo

Teoria della Complessità Concetti fondamentali. la teoria della complessità computazionale tenta di rispondere a domande del tipo Teoria della Complessità Concetti fondamentali la teoria della complessità computazionale tenta di rispondere a domande del tipo quanto è efficiente un algoritmo? quanto è intrinsecamente difficile un

Dettagli

COMPITO DI RICERCA OPERATIVA APPELLO DEL 07/04/04

COMPITO DI RICERCA OPERATIVA APPELLO DEL 07/04/04 COMPITO DI RICERCA OPERATIVA APPELLO DEL 07/04/04 Esercizio 1 1)Dato il seguente problema di PL: max 2x 1 x 2 x 1 + x 2 2 x 1 + 2x 2 7 x 1 + x 2 1 x 1, x 2 0 trasformarlo in forma standard (2 punti) 2)

Dettagli

Ricerca Operativa A.A. 2007/ Esercitazione di laboratorio: Branch and Bound.

Ricerca Operativa A.A. 2007/ Esercitazione di laboratorio: Branch and Bound. Ricerca Operativa A.A. 2007/2008 17. Esercitazione di laboratorio: Branch and Bound. Luigi De Giovanni - Ricerca Operativa - 17. Esercitazione di laboratorio: Branch and Bound 17.1. Luigi De Giovanni -

Dettagli

Ricerca Operativa A.A. 2007/ Esercitazione di laboratorio: Branch and Bound.

Ricerca Operativa A.A. 2007/ Esercitazione di laboratorio: Branch and Bound. Ricerca Operativa A.A. 2007/2008 17. Esercitazione di laboratorio: Branch and Bound. Luigi De Giovanni - Ricerca Operativa - 17. Esercitazione di laboratorio: Branch and Bound 17.1 . Luigi De Giovanni

Dettagli

Capitolo 1 Concetti matematici di base Insiemi, relazioni e funzioni... 1

Capitolo 1 Concetti matematici di base Insiemi, relazioni e funzioni... 1 iv Indice Capitolo 1 Concetti matematici di base 1 1.1 Insiemi, relazioni e funzioni.................... 1 Capitolo 2 Linguaggi formali 35 2.1 Grammatiche di Chomsky..................... 36 2.2 Grammatiche

Dettagli

Algoritmi e complessità

Algoritmi e complessità Appendice A Algoritmi e complessità In questa appendice vogliamo brevemente richiamare alcuni concetti fondamentali della teoria della complessità computazionale, utili per meglio comprendere la diversa

Dettagli

Problemi difficili e ricerca esaustiva intelligente

Problemi difficili e ricerca esaustiva intelligente Problemi difficili e ricerca esaustiva intelligente Progettazione di Algoritmi a.a. 2016-17 Matricole congrue a 1 Docente: Annalisa De Bonis Gli argomenti di questa lezione sono tratti da Dasgupta, Papadimitriou,

Dettagli

ESERCIZI DI LOGICA MATEMATICA A.A Alessandro Combi

ESERCIZI DI LOGICA MATEMATICA A.A Alessandro Combi ESERCIZI DI LOGICA MATEMATICA A.A. 2015-16 Alessandro Combi Esercizio 1.7 Per ogni formula A, dimostrare che ρ(a) = min{n A F n } Soluzione: Chiamo rank(a) = min{n A F n }. Bisogna provare che rank segue

Dettagli

Algoritmi e strutture dati 16 Dicembre 2004 Canali A L e M Z Cognome Nome Matricola

Algoritmi e strutture dati 16 Dicembre 2004 Canali A L e M Z Cognome Nome Matricola Algoritmi e strutture dati 16 Dicembre 04 Canali A L e M Z Cognome Nome Matricola Problema 1 (6 punti) Determinare la funzione calcolata dal metodo mistero e la sua complessità computazionale in funzione

Dettagli

Macchine parallele M 1 M 2 M 3 J 1 J 2 LAVORI J 3 J 4

Macchine parallele M 1 M 2 M 3 J 1 J 2 LAVORI J 3 J 4 Macchine parallele M 1 J 1 J 2 LAVORI M 2 J 3 J 4 M 3 Macchine parallele Scheduling su macchine parallele scorrelate R C max Descrizione del problema n lavori devono essere processati da m macchine diverse

Dettagli

PSPACE completezza. Un linguaggio A è PSPACE completo se. 1. A è in PSPACE, cioè esiste una TM T che accetta A con complessità di spazio polinomiale.

PSPACE completezza. Un linguaggio A è PSPACE completo se. 1. A è in PSPACE, cioè esiste una TM T che accetta A con complessità di spazio polinomiale. Sommario Il problema della verità per formule booleane pienamente quantificate è PSPACE - completo PSPACE come la classe dei giochi. Il gioco geografico generalizzato è PSPACE - completo 1 PSPACE completezza

Dettagli

Lucchetto con combinazione (3 numeri tra 0 e 39)

Lucchetto con combinazione (3 numeri tra 0 e 39) Complessita computazionale ed il problema P / NP Fondamenti di Informatica 2010/11 Lucchetto con combinazione (3 numeri tra 0 e 39) Perche e sicuro? (escludendo che lo si rompa) Ans: Combinazione di 3

Dettagli

Diario delle Lezioni del Corso di Algoritmimodulo

Diario delle Lezioni del Corso di Algoritmimodulo Diario delle Lezioni del Corso di Algoritmimodulo Complessità A.A. 2010-2011 Dott.ssa Margherita Zorzi 1 Materiale didattico Libro di testo C.H. Papadimitrious, Computational Complexity, ed Addison-Wesley

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Cognome................................ Nome................................... Matricola............................... Algoritmi e Strutture Dati Prova scritta del 4 luglio 207 TEMPO DISPONIBILE: 2 ore

Dettagli

Esame di Ricerca Operativa del 06/02/17

Esame di Ricerca Operativa del 06/02/17 Esame di Ricerca Operativa del 0/0/7 (Cognome) (Nome) (Numero d Matricola) Esercizio. Completare la seguente tabella considerando il problema di programmazione lineare: max 7 x x x x x x x + x x x 0 x

Dettagli

Programmazione Matematica: VII La scomposizione di Dantzig Wolfe

Programmazione Matematica: VII La scomposizione di Dantzig Wolfe Programmazione Matematica: VII La scomposizione di Dantzig Wolfe Daniele Vigo D.E.I.S. Università di Bologna dvigo@deis.unibo.it rev..0 Maggio 2004 Scomposizione di problemi Accade spesso che un problema

Dettagli

Processi di cost management - Programmazione multiperiodale

Processi di cost management - Programmazione multiperiodale Processi di cost management - Programmazione multiperiodale Queste slide (scrte da Carlo Mannino) riguardano il problema di gestione delle attivà di un progetto allorché i costi di esecuzione sono legati

Dettagli

Formulazioni. Consideriamo il seguente problema di Knapsack 0-1. max (5x x 2. ) st 3x x 2. < 6 x {0,1} 2

Formulazioni. Consideriamo il seguente problema di Knapsack 0-1. max (5x x 2. ) st 3x x 2. < 6 x {0,1} 2 Formulazioni Consideriamo il seguente problema di Knapsack 0-1 max (5x 1 + 2x 2 ) st 3x 1 + 4x 2 < 6 x {0,1} 2 Insiemi ammissibili F = {(0, 0), (0, 1), (1, 0)} Rappresentiamo sul piano gli insiemi ammissibili.

Dettagli

ALGORITMI DI OTTIMIZZAZIONE M Esercizi Parte I

ALGORITMI DI OTTIMIZZAZIONE M Esercizi Parte I ALGORITMI DI OTTIMIZZAZIONE M Esercizi Parte I Esercizio 1 Dati n oggetti ed un contenitore, ad ogni oggetto j (j = 1,, n) sono associati un peso p j ed un costo c j (con p j e c j interi positivi). Si

Dettagli

Introduzione Problemi e codifiche Classe P e linguaggi Da NP a NP-C Il mondo NP-C Conclusioni. NP-Completezza

Introduzione Problemi e codifiche Classe P e linguaggi Da NP a NP-C Il mondo NP-C Conclusioni. NP-Completezza NP-Completezza e la complessità strutturale degli algoritmi Simone Frassanito Dipartimento di Elettronica per l Automazione Università degli Studi di Brescia Cosa non è l NP-Completezza Si potrebbe pensare

Dettagli

INSTRADAMENTO: ALGORITMO DI KRUSKAL

INSTRADAMENTO: ALGORITMO DI KRUSKAL UNIVERSITA' DEGLI STUDI DI BERGAMO Dipartimento di Ingegneria INSTRADAMENTO: ALGORITMO DI KRUSKAL FONDAMENTI DI RETI E TELECOMUNICAZIONE A.A. 2012/13 - II Semestre Esercizio 1 Sia dato il grafo G= (N,

Dettagli

2 OTTIMIZZAZIONE SU GRAFI. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

2 OTTIMIZZAZIONE SU GRAFI. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 2 OTTIMIZZAZIONE SU GRAFI E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 Molti problemi decisionali possono essere formulati utilizzando il linguaggio della teoria dei grafi. Esempi: - problemi di

Dettagli

Intelligenza Artificiale. Logica proposizionale: calcolo automatico

Intelligenza Artificiale. Logica proposizionale: calcolo automatico Intelligenza Artificiale Logica proposizionale: calcolo automatico Marco Piastra Logica formale (Parte 3) - Parte 3 Calcolo automatico Forme normali ed a clausole Risoluzione e refutazione Forward chaining

Dettagli

Appunti lezione Capitolo 13 Programmazione dinamica

Appunti lezione Capitolo 13 Programmazione dinamica Appunti lezione Capitolo 13 Programmazione dinamica Alberto Montresor 12 Novembre, 2015 1 Domanda: Fattore di crescita dei numeri catalani Vogliamo dimostrare che cresce almeno come 2 n. La nostra ipotesi

Dettagli

Progettazione di Algoritmi

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

Dettagli

Esame di Ricerca Operativa del 16/02/15. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 16/02/15. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare: Esame di Ricerca Operativa del /0/ Cognome) Nome) Corso di laurea) Esercizio. Completare la seguente tabella considerando il problema di programmazione lineare: min y + y +0 y +0 y +y + y y y +y y y y

Dettagli

Progetto e analisi di algoritmi versione 1.0.4

Progetto e analisi di algoritmi versione 1.0.4 Progetto e analisi di algoritmi versione.0.4 Appunti 28 gennaio 2007 Indice Complessità asintotica 2. Compresa........... 2.2 Limite inferiore........ 2.3 Limite superiore....... 3 2 N P 4 2. Asimmetria

Dettagli

Esame di Ricerca Operativa

Esame di Ricerca Operativa Esame di Ricerca Operativa (Cognome) (Nome) (Corso di laurea) Esercizio. Completare la seguente tabella considerando il problema di programmazione lineare: min y + y + y +7 y +y + y y y +y y y = y y +y

Dettagli

Programmazione Matematica: I - Introduzione

Programmazione Matematica: I - Introduzione Programmazione Matematica: I - Introduzione Daniele Vigo D.E.I.S. Università di Bologna dvigo@deis.unibo.it rev. 3.0 ottobre 2002 Problemi di Ottimizzazione x = (x,, x n ) R n : vettore di variabili decisionali

Dettagli

Ottimizzazione Combinatoria

Ottimizzazione Combinatoria Ottimizzazione Combinatoria Riepilogo degli argomenti trattati nel corso a.a. 2018/2019 1 Algoritmi e complessità computazionale (dispense n. 1) Riepilogo sulla programmazione strutturata e sugli algoritmi;

Dettagli

Elementi di Complessità Computazionale

Elementi di Complessità Computazionale Elementi di Complessità Computazionale Ultima modifica 23.06.2004 Il problema Esiste una misura oggettiva per valutare l'efficienza di un algoritmo? In che relazione sono gli input di un algoritmo con

Dettagli

AMPL Problemi su Reti

AMPL Problemi su Reti Dipartimento di Matematica Università di Padova Corso di Laurea Informatica Outline Problemi su Reti Cammino Minimo Molti problemi di ottimizzazione combinatoria possono essere modellati ricorrendo ai

Dettagli

Appunti introduttivi sulle classi di complessità

Appunti introduttivi sulle classi di complessità Appunti introduttivi sulle classi di complessità A. Agnetis 1 Introduzione Lo scopo di queste note è quello di fornire una introduzione ad alcuni concetti di complessità computazionale che, nati in ambito

Dettagli

Ragionamento Automatico Richiami di tableaux proposizionali

Ragionamento Automatico Richiami di tableaux proposizionali Richiami di logica e deduzione proposizionale Ragionamento Automatico Richiami di tableaux proposizionali (L. Carlucci Aiello & F. Pirri: SLL, Cap. 5) La logica proposizionale I tableau proposizionali

Dettagli