Algoritmi e Strutture Dati II: Parte B Anno Accademico Lezione 8
|
|
- Angelo Severino Franceschi
- 4 anni fa
- Visualizzazioni
Transcript
1 Algoritmi e Strutture Dati II: Parte B Anno Accademico Docente: Ugo Vaccaro Lezione 8 Ricordiamo ancora una volta il nostro meta-algoritmo per il progetto di algoritmi di approssimazione: 1. Formula il problema in questione come un problema di PL a vincoli interi 2. Rilassa il problema, sostituendo i vincoli di interezza con semplici vincoli di non negatività 3. Usa la soluzione al problema rilassato per ottenere una soluzione al problema a vincoli interi, di valore prossimo all ottimo Nelle lezioni scorse abbiamo visto vari metodi per implementare il passo 3. In questa lezione ne vedremo un ulteriore, abbastanza simile all ultimo metodo visto ed applicato nella lezione scorsa. Intendiamo riferirci all uso diretto del duale e delle condizioni complementari di slackness, cosí come usate per progettare un algoritmo di approssimazione per Hitting Set. La differenza con il metodo che vedremo oggi consiste nel fatto che esso, invece di risolvere innanzitutto il sistema duale e poi usare la sua soluzione e le condizioni complementari di slackness per costruire una soluzione intera al primale, costruisce passo passo una soluzione al duale, imponendo che la condizione complementare di slackness duale sia sempre soddisfatta. Il metodo risulta essere maggiormente flessibile di quello visto nella lezione scorsa, in quanto nella costruzione della soluzione del duale (visto che la realizziamo noi) ci permette in linea teorica di poter conto di addizionali informazioni che potremmo eventualmente avere sulla struttura del problema di ottimizzazione sotto esame. Inotre risulta essere più veloce in pratica, in quanto non richiede la soluzione preliminare di un sistema di PL. Useremo la formulazione di PL del problema in questione solo come una guida per il progetto e l analisi dell algoritmo. Il metodo generale (che va sotto il nome di Primale-Duale) lo possiamo descrivere nella Figura 1 appresso presentata. Per illustrare l applicazione dello schema della Figura 1 ad algoritmi di approssimazione, applichiamo il metodo al primo problema di ottimizzazione visto in questo corso: Vertex Cover. Ricordiamo il problema VERTEX COVER Input: grafo G = (V, E), V = {v 1,..., v n }, E = {e 1,..., e m } Output: sottoinsieme S V di minima cardinalità S tale che (u, v) E valga {u, v} S. 1
2 y 0, x 0 Esiste x soluzione intera ammissibile per il primale e slack. complementare a y? SI Stop Output x NO Incrementa y mantenendo la sua ammissibilita Figure 1: Schema generale per Primale Duale La sua formulazione via PL è : x v (1) v V x u + x v 1 e = (u, v) E (2) x v {0, 1} u V. (3) Il corrispondente sistema rilassato è x v (4) v V x u + x v 1 e = (u, v) E (5) x v [0, 1] u V. (6) Per derivare il duale di (4) introduciamo una variabile duale y e per ogni vincolo (5), ottenendo il sistema massimizzare y e (7) e E e:v e y e 1 v V (8) y e [0, 1] e E. (9) 2
3 É istruttivo, per un momento, osservare una particolare classe di soluzioni al sistema (7). Sia M un matching del grafo G, ovvero una collezione di archi disgiunti di G. Definiamo il vettore z = (z e1,..., z em ) come { 1 se ei M, z ei = 0 se e i / M. É semplice verificare che z è una soluzione ammissibile al sistema (7), in particolare che soddisfa i vincoli (8), proprio perchè, corrispondendo z ad un matching in G, su ogni vertice v V incide uno ed un solo arco di M. Pertanto, dal Teorema debole della dualità abbiamo che M = e E z e OP T, dove OP T è il valore della soluzione ottima al sistema di PL (1), ovvero OP T è la cardinalità di un Vertex Cover per G di cardinalità minima. Ritroviamo quindi, come conseguenza del Teorema della dualità debole, la limitazione inferiore alla cardinalità del VC di cardinalità minima derivato nella Lezione 1. Vediamo ora come è possibile derivare un algoritmo di approssimazione per Vertex Cover usando lo schema generale Primale-Duale illustrato nella Figura 1. Lo schema ci suggerisce di partire con una soluzione y ammissibile per il duale (7), in cui tutte le componenti sono poste a 0, ed una soluzione non ammissibile x al primale intero (1) in cui tutte le componenti sono poste a 0. Se x non è ammissibile (e fin quando lo sarà ), vuol dire che e = (u, v) E tale che il relativo vincolo (2) non è soddisfatto, ovvero vale x u + x v = 0. (10) Allora, sempre in accordo allo schema generale Primale-Duale della Figura 1, incrementiamo la corrispondente variabile duale y e il più possibile, mantenendo il rispetto dei vincoli del duale, ed in modo tale che il vincolo (8) sia soddisfatto con l uguaglianza. In altri termini, nel nostro caso specifico del Vertex Cover, stiamo ponendo y e = 1. Poichè lo schema generale Primale-Duale ci impone che le condizioni di slackness primali debbano essere sempre soddisfatte, dobbiamo porre anche x u = x v = 1, in quanto adesso i vincoli duali e:v e y e 1 sono soddisfatti con l uguaglianza sia per il vertice u che per il vertice v. In altre parole, stiamo mettendo sia il vertice u che il vertice v nella costruenda soluzione S per il problema del Vertex Cover. Iteriamo il procedimento: ogni qualvolta troviamo un vincolo nel primale intero che il vettore x non soddisfa ancora (ovvero, troviamo un qualche e = (u, v) E per cui x u + x v = 0), poniamo y e = 1 nella soluzione del duale, imponendo poi che le condizioni di slackness primali siano soddisfatte per x, cioè incrementiamo le componenti x u e x v a 1. 3
4 Prima o poi otterremo una soluzione intera x che soddisfa tutti i vincoli del primale (1), con x che soddisfa anche x v = ( ) y e x v (11) v V v V e:v e = ( ) x v y e (12) e E v e 2 e E y e (13) 2OP T R 2OP T (14) dove la uguaglianza (11) vale in quanto e:v e y e = 1 per costruzione, per tutti i vertici v per cui x v = 1; la uguaglianza (12) la si ottiene riorganizzando la somma; la diseguaglianza (13) vale in quanto il vettore x è ammissibile per il primale e quindi soddisfa tutti i vincoli di (1). Abbiamo quindi (ri)ottenuto un algoritmo di approssimazione con fattore 2 per il problema del Vertex Cover. Una analisi attenta di esso ci informa che l algoritmo appena ottenuto, mediante il metodo Primale-Duale, è perfettamente analogo a quello presentato nella Lezione 1. Infatti, nell algoritmo appena derivato noi inseriamo nella soluzione S, ad ogni passo dell algoritmo, entrambi i vertici u e v corrispondenti ad un arco e = (u, v) per cui abbiamo posto y e = 1 nel duale. D altra parte, il vettore y è sempre costretto ad essere una soluzione ammissibile a (7), ovvero deve rispettare i vincoli y e 1 v V. e:v e Questo implica che v V uno solo degli y e nella somma di sopra può assumere valore 1, cioè uno solo degli y e corrispondenti ad archi e incidenti su v può essere posto ad 1. Di conseguenza, l insieme A = {e : y e = 1} è una collezione di archi disgiunti (un matching), per ogni iterazione dell algoritmo. Al completamento dell algoritmo l insieme A è ovviamente un matching massimale, mentre la soluzione S prodotta dall algoritmo corrisponde evidentemente all insieme dei vertici incidenti sugli archi del matching massimale A. Applichiamo ora la tecnica Primale-Duale al problema del Set Cover. Ricordiamo la sua formulazione SET COVER Input: insieme U = {e 1,..., e n }, famiglia S = {S 1,..., S k }, con S i U, per i = 1,..., k; funzione costo c : S S c(s) R + ; Output: sottofamiglia S S di costo c(s ) = S S c(s) minimo tale che S S S U. 4
5 La sua formulazione via PL è La versione rilassata del sistema di PL è x(s)c(s) (15) S S x(s) 1 e U (16) S:e S x(s) {0, 1} S S. (17) x(s)c(s) (18) S S S:e S x(s) 1 e U (19) x(s) 0 S S. (20) Introducendo una variabile y e per ogni vincolo del problema otteniamo il programma duale massimizzare y e (21) e U e:e S y e c(s) S S (22) y e 0 e U. (23) Il seguente algoritmo implementa la strategia Primale-Duale per il problema del Set Cover. Algoritmo Primale-Duale per SET COVER I y e 0 e U While e U tale che e / j I S j do Sia l l indice per il quale il min h:e Sh {c(s h ) a S h y a } è raggiunto ɛ l c(s l ) a S l y a y e y e + ɛ l I I {l} Return I 5
6 Lemma 1 L algoritmo Primale-Duale ritorna un set cover. Dim. Ovvio, in quanto la condizione di terminazione per il ciclo While è proprio che si sia raggiunto un set cover. Lemma 2 L algoritmo Primale-Duale costruisce una soluzione y ammissibile per il duale. Dim. Procediamo per induzione sui cicli dell algoritmo. Il caso base è ovvio in quanto all inizio vale ovviamente a S h y e = 0 c(s h ), h = 1,... m. Per il passo induttivo, assumiamo induttivamente che entrando in una iterazione del ciclo While avevamo a S h y e c(s h ), h = 1,... m. (24) La sola variabile duale il cui valore è incrementato dall esecuzione del ciclo While è la variabile y e (dove e è un elemento per cui e / j I S j), pertanto tutte le diseguaglianze (24) per gli insiemi S h tali che e / S h rimangono inalterate e quindi continuano a valere. Se invece e S h, allora per la nostra scelta dell indice l abbiamo che y a + ɛ l = y a + (c(s l ) y a ) a S h a S h a S l y a + (c(s h ) y a ) a S h a S h = c(s h ) Pertanto, i vincoli del duale sono soddisfatti anche dopo l esecuzione del ciclo While, e quindi, per il principio di induzione, anche alla terminazione dell algoritmo. Lemma 3 Se j I allora e S j y e = c(s j ). Dim. Se in un qualche passo abbiamo aggiunto j a I, allora per come opera l algoritmo, abbiamo anche aumentato y e, per qualche e S j, tale da rendere il vincolo e S j y e c(s j ) soddisfatto con l uguaglianza. Teorema 1 L algoritmo Primale-Duale per Set Cover è un algoritmo di approssimazione con fattore di approssimazione f, dove f = max e U f(e), e f(e) = numero di insiemi S S che contengono e. Dim. Abbiamo SOL = c(s j ) j I = j I e S j y e 6
7 = e U y e {j : e S j } f e U y e f OP T dove la prima uguaglianza è per definizione, la seconda a causa del Lemma 3, la terza in quanto la variabile y e compare nella somma tante volte quanti sono gli insiemi S j che contengono il corrispondente e, la quarta per definizione di f, e l ultima per il Teorema della dualità debole. Concludiamo la lezione affermando che la tecnica Primale-Duale sembra essere a tutt oggi la metodologia più efficace per il progetto di algoritmi di approssimazione. Si è visto in tempi recenti che vari algoritmi derivati negli anni scorsi mediante procedimenti ad hoc, sono in realtà interpretabili come esempi di algoritmi Primale-Duale. Inoltre, in molti casi, la tecnica Primale- Duale ha prodotto algoritmi di approssimazione che risultano essere, a tutt oggi, i migliori sia in termini di fattore di approssimazione, che in termini di complessità computazionale. 7
Algoritmi e Strutture Dati II: Parte B Anno Accademico Lezione 5
Algoritmi e Strutture Dati II: Parte B Anno Accademico 2004-2005 Docente: Ugo Vaccaro Lezione 5 In questa lezione inizieremo a studiare gli algoritmi di approssimazione per problemi di ottimizzazione NP-hard
DettagliAlgoritmi e Strutture Dati II: Parte B Anno Accademico Lezione 7
Algoritmi e Strutture Dati II: Parte B Anno Accademico 2004-2005 Docente: Ugo Vaccaro Lezione 7 Nelle lezioni scorse abbiamo visto varie applicazioni della PL al progetto di algoritmi di approssimazione
DettagliAlgoritmi e Strutture Dati II: Parte B Anno Accademico Lezione 1
Algoritmi e Strutture Dati II: Parte B Anno Accademico 004-005 Docente: Ugo Vaccaro Lezione 1 Dalla Teoria della NP-Completezza abbiamo appreso che esiste una classe di problemi (NPhard) per cui non è
DettagliNote per la Lezione 17 Ugo Vaccaro
Progettazione di Algoritmi Anno Accademico 2018 2019 Note per la Lezione 17 Ugo Vaccaro Per la risoluzione di Problemi di Ottimizzazione (ovvero problemi per cui desideriamo trovare la migliore soluzione
DettagliSi consideri il seguente tableau ottimo di un problema di programmazione lineare
ESERCIZIO 1 Si consideri il seguente tableau ottimo di un problema di programmazione lineare -25/3 0 4/3 19/6 9/2 0 0 0 7/6 1 0 1-1/2-3/2 1 0 0 3/2 11/3 1-2/3-1/3 0 0 0 0 2/3 2/3 0 1/3 1/6-1/2 0 1 0 7/6
DettagliFormulazioni. 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.
Dettagli1) 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
DettagliIl teorema di dualità forte
Complementi di Algoritmi e Strutture Dati Il teorema di dualità forte Docente: Nicolò Cesa-Bianchi versione 13 maggio 2018 Ricordiamo la formulazione del problema di programmazione lineare nella sua forma
DettagliRICERCA OPERATIVA (a.a. 2012/13) Nome: Cognome: Matricola:
o Appello 7// RICERCA OPERATIVA (a.a. /) Nome: Cognome: Matricola: ) Si individui un albero dei cammini minimi di radice sul grafo in figura utilizzando l algoritmo più appropriato dal punto di vista della
DettagliRICERCA OPERATIVA (a.a. 2011/12) Nome: Cognome: Matricola:
5 o Appello 8/0/0 RICERCA OPERATIVA (a.a. 0/) Nome: Cognome: Matricola: ) Si individui un albero dei cammini minimi di radice sul grafo in figura, utilizzando l algoritmo più appropriato dal punto di vista
DettagliCammini minimi fra tutte le coppie
Capitolo 12 Cammini minimi fra tutte le coppie Consideriamo il problema dei cammini minimi fra tutte le coppie in un grafo G = (V, E, w) orientato, pesato, dove possono essere presenti archi (ma non cicli)
DettagliDualitá in Programmazione Lineare e alcune conseguenze
Dualitá in Programmazione Lineare e alcune conseguenze Giacomo Zambelli 1 Dualitá per problemi in forma standard Si consideri il seguente problema di PL in forma standard: z = max c x Ax = b (1) ove A
DettagliAlgoritmi e Strutture Dati II: Parte B Anno Accademico Lezione 4
Algoritmi e Strutture Dati II: Parte B Anno Accademico 2004-2005 Docente: Ugo Vaccaro Lezione 4 In questa lezione deriveremo un algoritmo di approssimazione per il seguente problema. Approfitteremo dell
DettagliRICERCA OPERATIVA (a.a. 2017/18) Nome: Cognome: Matricola:
Sesto appello 7/7/8 RICERCA OPERATIVA (a.a. 7/8) Nome: Cognome: Matricola: ) Si risolva il seguente problema di PL applicando l algoritmo del Simplesso Duale, per via algebrica, a partire dalla base B
DettagliComplessità 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.
Dettagli3.2 Rilassamenti lineari/combinatori e bounds
3.2 Rilassamenti lineari/combinatori e bounds Consideriamo un problema di Ottimizzazione Discreta min{f(x) : x X} e sia z il valore di una soluzione ottima x X. Metodi di risoluzione spesso generano una
DettagliPossibile applicazione
p. 1/4 Assegnamento Siano dati due insiemi A e B entrambi di cardinalità n. Ad ogni coppia (a i,b j ) A B è associato un valore d ij 0 che misura la "incompatibilità" tra a i e b j, anche interpretabile
DettagliMatematica Computazionale(6cfu) Ottimizzazione(8cfu) (a.a , lez.3)
Docente: Marco Gaviano (e-mail:gaviano@unica.it) Corso di Laurea in Infomatica Corso di Laurea in Matematica Matematica Computazionale(6cfu) Ottimizzazione(8cfu) (a.a. -4 lez.) Matematica Computazionale
DettagliCondizioni di Karush-Kuhn-Tucker e Programmazione Lineare
Condizioni di Karush-Kuhn-Tucker e Programmazione Lineare A. Agnetis 1 Richiami su condizioni di Karush-Kuhn-Tucker e convessità Si consideri il problema di ottimizzazione vincolata: min f(x) (1) x X R
DettagliCOMPITO DI RICERCA OPERATIVA. max x 1 + x 2 x 1 + x 2 1 x 1 + x 2 2. Lo si trasformi in forma standard e se ne determini una soluzione ottima.
COMPITO DI RICERCA OPERATIVA APPELLO DEL 06/07/05 ESERCIZIO 1. (5 punti) Sia dato il seguente problema di PL: max x 1 + x 2 x 1 + x 2 1 x 1 + x 2 2 x 1 0 x 2 0 Lo si trasformi in forma standard e se ne
Dettaglimin det det Allora è unimodulare se e solo se det 1, 1, 0 per ogni sottomatrice quadrata di di qualsiasi dimensione.
Se è unimodulare e è intero allora il poliedro 0 ha vertici interi. Sia un vertice di Per definizione esiste allora una base di tale che, 0 Poiché è non singolare ( invertibile det 0) si ha che det 1 è
DettagliTeoria dell Informazione II Anno Accademico Lezione 6-7
Teoria dell Informazione II Anno Accademico 2017 2018 Lezione 6-7 Ugo Vaccaro ( ) 1 2 n Data una variabile casuale X = che assume valori i, con probabilità p p 1 p 2 p i, per i = 1,...,n, n vogliamo studiare
DettagliAlgoritmi Avanzati Soluzioni dello scritto del 2 febbraio 2004 (appello straordinario)
Algoritmi Avanzati Soluzioni dello scritto del febbraio 004 (appello straordinario) 1. Tengo nascosto nel taschino della giacca un grafo misterioso di 7 nodi. Vi dico solo che listando le valenze (= numero
DettagliRICERCA OPERATIVA (9 cfu)
a PROVA scritta di RICERCA OPERATIVA (9 cfu) gennaio Cognome Nome Ai fini della pubblicazione (cartacea e elettronica) del risultato ottenuto nella prova di esame, autorizzo al trattamento dei miei dati
DettagliEsercizio 1. Variabili decisionali:
Esercizio 1 Si noti che i costi sono dati per tonnellata, mentre molti vincoli riguardano il numero di navi. Si introducono pertanto DUE tipi di variabili, uno relativo al numero di tonnellate per tipo
DettagliOttimizzazione Discreta Esercizi V: Soluzioni
Ottimizzazione Discreta Esercizi V: Soluzioni Grafi e cammini minimi A.A. 214/215 Esercizio 1 (a) Nella terminologia della teoria dei grafi, si chiede di dimostrare che ogni grafo non orientato G = (V,E),
DettagliAlgoritmi e Strutture Dati II: Parte B Anno Accademico Lezione 3
Algoritmi e Strutture Dati II: Parte B Anno Accademico 2004-2005 Docente: Ugo Vaccaro Lezione 3 In questa lezione deriveremo algoritmi di approssimazione per alcuni classici problemi su grafi pesati. Iniziamo
DettagliRICERCA OPERATIVA (a.a. 2018/19)
Secondo appello //9 RICERCA OPERATIVA (a.a. 8/9) Nome: Cognome: Matricola: ) Si consideri il seguente problema di PL: min y + y y y y y = y + y y = y, y, y, y Si verifichi se la soluzione ȳ =,,, sia ottima
DettagliSe il grafo è bipartito, un accoppiamento viene anche detto assegnamento.
1. Accoppiamento Definizione. Dato un grafo (non orientato) G =(N,E), un sottoinsieme M di archi, tale che ogni nodo del grafo è incidente in al più unarcodim, viene detto accoppiamento, (matching). I
DettagliParte V: Rilassamento Lagrangiano
Parte V: Rilassamento Lagrangiano Tecnica Lagrangiana Consideriamo il seguente problema di Programmazione Lineare Intera: P 1 min c T x L I Ax > b Cx > d x > 0, intera in cui A = matrice m x n C = matrice
Dettagli4. METODI DUALI DEL SIMPLESSO
4. MEODI DUALI DEL SIMPLESSO R. adei 1 Una piccola introduzione R. adei 2 MEODI DUALI DEL SIMPLESSO L obiettivo del capitolo è illustrare e giustificare i metodi duali del simplesso. Entrambi i metodi
DettagliParte IV: Matrici totalmente unimodulari
Parte IV: Matrici totalmente unimodulari 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)}
DettagliDomini di funzioni di due variabili. Determinare i domini delle seguenti funzioni di due variabili (le soluzioni sono alla fine del fascicolo):
UNIVERSITA DEGLI STUDI DI SALERNO C.d.L. in INGEGNERIA GESTIONALE Esercizi di Ricerca Operativa Prof. Saverio Salerno Corso tenuto nell anno solare 2009 I seguenti esercizi sono da ritenersi di preparazione
DettagliTEORIA della DUALITÀ. Una piccola introduzione. Ricerca Operativa. Prof. R. Tadei. Politecnico di Torino. Teoria della Dualità / 1.
Prof. R. adei EORIA della DUALIÀ Una piccola introduzione R. adei 1 R. adei 2 EORIA DELLA DUALIA' Il concetto di dualità fu introdotto nel 1947 da Von Neumann, anche se il teorema della dualità fu formulato
DettagliUniversità degli Studi di Roma La Sapienza
Università degli Studi di Roma La Sapienza Dipartimento di Informatica e Sistemistica A. Ruberti Proff. Gianni Di Pillo and Laura Palagi Note per il corso di OTTIMIZZAZIONE (a.a. 2007-08) Dipartimento
DettagliRICERCA OPERATIVA (a.a. 2015/16) Nome: Cognome: Matricola:
o Appello // RICERCA OPERATIVA (a.a. /) Nome: Cognome: Matricola: ) Si consideri il seguente problema di PL: max x + x x x x x x + x x Si applichi l algoritmo del Simplesso Duale, per via algebrica, a
DettagliUniversità degli Studi di Salerno. Note per il Corso di Algoritmi e Strutture Dati II Parte B. Docente: Ugo Vaccaro
Università degli Studi di Salerno Note per il Corso di Algoritmi e Strutture Dati II Parte B Docente: Ugo Vaccaro Corso di Laurea in Informatica Anno Accademico 2004-2005 Indice Lezione 1: Definizione
DettagliProblema di flusso massimo
p. 1/5 Problema di flusso massimo Si consideri una rete, ovvero un grafo orientato G = (V,A). Attraverso tale rete si fa viaggiare quello che chiameremo genericamente un flusso di "prodotto". A seconda
DettagliRICERCA OPERATIVA. Stock bamboline automobiline libri peluches costo (euro)
RICERCA OPERATIVA Tema d esame del 15/12/2008 (5 crediti) COGNOME: NOME: MATRICOLA: 1. Babbo Natale deve organizzare gli acquisti per le prossime festività. Sono arrivate richieste di 15000 bamboline,
DettagliSommario della lezione
Università degli Studi di Salerno Corso di Algoritmi Prof. Ugo Vaccaro Anno Acc. 2009/10 p. 1/21 Sommario della lezione Ulteriori applicazioni del Massimo Flusso 1. Connettività di grafi 2. Selezione di
DettagliRicerca Operativa. G. Liuzzi. Lunedí 20 Aprile 2015
1 Lunedí 20 Aprile 2015 1 Istituto di Analisi dei Sistemi ed Informatica IASI - CNR Rilassamento di un problema Rilassare un problema di Programmazione Matematica vuol dire trascurare alcuni (tutti i)
DettagliFigura 1: 1) Si scriva la formulazione del problema come problema di PLI (con un numero minimo di vincoli) e la matrice dei vincoli.
ESERCIZIO 1 Sia dato il grafo orientato in Figura 1. Si consideri il problema di flusso a 1 2 4 Figura 1: costo minimo su tale grafo con b 1 = 4 b 2 = 2 b = b 4 = e c 12 = 2 c 1 = 4 c 14 = 1 c 2 = 1 c
DettagliSommario della lezione
Sommario della lezione Analisi dell Algoritmo di Ford e Fulkerson per il calcolo del massimo flusso Applicazioni del massimo flusso: Matching in Grafi Bipartiti Cammini disgiunti tra vertici Università
DettagliIntroduzione al Column Generation Caso di Studio: il Bin Packing Problem
Introduzione al Column Generation Caso di Studio: il Bin Packing Problem November 15, 2014 1 / 26 Introduzione Il column generation è una metodologia che può essere usata per risolvere problemi di ottimizzazione
DettagliOttimizzazione Combinatoria 2 Presentazione
Ottimizzazione Combinatoria Presentazione ANTONIO SASSANO Università di Roma La Sapienza Dipartimento di Informatica, Automatica e Gestionale «Antonio Ruberti» Roma, Febbraio Prerequisiti (cosa sapete)
DettagliLezione 4 Ugo Vaccaro
Progettazione di Algoritmi Anno Accademico 2017 2018 Lezione 4 Ugo Vaccaro Introduciamo ora la notazione Ω, che ci sarà utile quando vorremo valutare limitazioni inferiori al tempo di esecuzione di algoritmi
DettagliLa dualità nella Programmazione Lineare
Capitolo 3 La dualità nella Programmazione Lineare 3.1 Teoria della dualità Esercizio 3.1.1 Scrivere il problema duale del seguente problema di Programmazione Lineare: min x 1 x 2 + x 3 2x 1 +3x 2 3 x
DettagliSull algoritmo di ascesa duale per il problema della localizzazione di impianti
Sull algoritmo di ascesa duale per il problema della localizzazione di impianti A. Agnetis In queste note presentiamo l algoritmo di ascesa duale per la generazione di lower bound di buona qualità per
DettagliLezione 11 Ugo Vaccaro
Teoria dell Informazione II Anno Accademico 207 208 Lezione Ugo Vaccaro Abbiamo visto finora che in vari problemi collegati alla codifica di emissioni di una sorgente di informazione la entropia H(P )
DettagliMatroidi, algoritmi greedy e teorema di Rado
Matroidi, algoritmi greedy e teorema di Rado per il corso di Laboratorio di Algoritmi e Ricerca Operativa Dott. Alberto Leporati / Prof.ssa Enza Messina Dipartimento di Informatica, Sistemistica e Comunicazione
DettagliProgrammazione Matematica / A.A Soluzioni di alcuni esercizi
Programmazione Matematica / A.A. 7-8 Soluzioni di alcuni esercizi Esercizi - I. Aggiungiamo al problema una variabile v, e richiediamo che v soddisfi v n a ij x j b i. j= Fissato x, il minimo v che soddisfa
DettagliA T x b x 0. che chiameremo problema primale, possiamo associare ad esso un altro problema di PL, detto problema duale, definito come segue.
1 Dualitá Dato un problema di PL in forma canonica max c T x A T x b x 0 che chiameremo problema primale, possiamo associare ad esso un altro problema di PL, detto problema duale, definito come segue min
DettagliTeoria della Dualità: I Introduzione
Teoria della Dualità: I Introduzione Daniele Vigo D.E.I.S. Università di Bologna dvigo@deis.unibo.it rev. 1.2 Maggio 2004 Dualità Per ogni problema PL, detto primale, ne esiste un altro, detto duale, costruito
DettagliLezione n 16. Lezioni di Ricerca Operativa. Corso di Laurea in Informatica Università di Salerno. Prof. Cerulli Dott.ssa Gentili Dott.
Lezioni di Ricerca Operativa Corso di Laurea in Informatica Università di Salerno Lezione n 6 Teoria della dualità: - Esempio Prof. Cerulli Dott.ssa Gentili Dott. Carrabs Esercizio (P) min - 4 5 a) Data
DettagliRICERCA OPERATIVA (a.a. 2015/16) Nome: Cognome: Matricola:
o Appello 8// RICERCA OPERATIVA (a.a. /) Nome: Cognome: Matricola: ) Si risolva il seguente problema di PL max x x x x x x + x x per via algebrica, mediante l algoritmo del Simplesso Primale a partire
DettagliRICERCA OPERATIVA (a.a. 2016/17) Nome: Cognome: Matricola:
Secondo appello //0 RICERCA OPERATIVA (a.a. 0/) Nome: Cognome: Matricola: ) Si risolva il seguente problema di PL max x x x x x + x x x per via algebrica, mediante l algoritmo del Simplesso Primale a partire
DettagliQuinto appello 27/6/ = 4. B b B = 2 b N = 4
Quinto appello // RICERCA OPERATIVA (a.a. /) Nome: Cognome: Matricola: ) Si risolva il problema di PL dato applicando l algoritmo del Simplesso Duale, per via algebrica, a partire dalla base B {, }. Per
DettagliEsame di Ricerca Operativa - 18 aprile 2007 Facoltà di Ingegneria - Udine - CORREZIONE -
Esame di Ricerca Operativa - 18 aprile 007 Facoltà di Ingegneria - Udine - CORREZIONE - Problema 1 (4 punti): Una raffineria miscela 4 tipi di petrolio greggio in diverse proporzioni per ottenere 3 diversi
DettagliRICERCA OPERATIVA (a.a. 2018/19) Nome: Cognome: Matricola:
Primo appello //9 RICERCA OPERATIVA (a.a. /9) Nome: Cognome: Matricola: ) Si risolva il seguente problema di PL max x + x x + x x + x x x x x applicando l algoritmo del Simplesso Primale, per via algebrica,
DettagliGrafi e reti di flusso
Grafi e reti di flusso Molti problemi di ottimizzazione sono caratterizzati da una struttura di grafo: in molti casi questa struttura emerge in modo naturale, in altri nasce dal particolare modo in cui
DettagliOttimizzazione su grafi: massimo flusso (parte 1) Ottimizzazione su grafi:massimo flusso (parte 1) p. 1/33
Ottimizzazione su grafi: massimo flusso (parte 1) Ottimizzazione su grafi:massimo flusso (parte 1) p. 1/33 Ottimizzazione su grafi:massimo flusso (parte 1) p. 2/33 Reti di flusso Una rete di flusso è una
DettagliMetodi e Modelli per l Ottimizzazione Combinatoria Ripasso sulla teoria della dualità in programmazione lineare
Metodi e Modelli per l Ottimizzazione Combinatoria Ripasso sulla teoria della dualità in programmazione lineare L. De Giovanni G. Zambelli 1 Definizione del problema duale La teoria della dualità in programmazione
DettagliMetodi e Modelli per l Ottimizzazione Combinatoria Ripasso sulla teoria della dualità in programmazione lineare
Metodi e Modelli per l Ottimizzazione Combinatoria Ripasso sulla teoria della dualità in programmazione lineare L. De Giovanni G. Zambelli 1 Definizione del problema duale La teoria della dualità in programmazione
DettagliParte II: Ottimalità, rilassamenti e bound
Parte II: Ottimalità, rilassamenti e bound Ottimalità, rilassamenti e bound Consideriamo il seguente problema z * = max {c T x : x X, X {0,1} n } dove z* è il valore della soluzione ottima x*. Domanda:
DettagliProgettazione di algoritmi. Reti di flusso (2)
Progettazione di algoritmi Reti di flusso (2) Correttezza e complessità dell algoritmo di Ford-Fulkerson Il teorema del massimo flusso-minimo taglio L algoritmo di Ford-Fulkerson per il calcolo del massimo
DettagliTeorema 1. Il problema AP è N P-complete.
(Dalla prova scritta d esame del 18/12/2006.) Si consideri il seguente problema AssegnazioneProgetto (AP). Input: un insieme, P, di n persone, ed un insieme V di m vincoli. Ogni vincolo ha la forma k#(l
DettagliRICERCA OPERATIVA. Tema d esame del 04/12/2008 (Simulazione 2)
RICERCA OPERATIVA Tema d esame del 04/12/2008 (Simulazione 2) COGNOME: NOME: MATRICOLA: 1. Un azienda di telefonia mobile deve installare delle antenne per la copertura di sei zone sul territorio. Sono
DettagliIl modello duale. Capitolo settimo. Introduzione
Capitolo settimo Il modello duale Introduzione Il modello duale e la teoria della dualità assumono una grande importanza nella teoria della programmazione matematica. In questo testo i modelli primale
DettagliLunghezza media. Teorema Codice D-ario prefisso per v.c. X soddisfa. L H D (X). Uguaglianza vale sse D l i. = p i. . p.1/27
Lunghezza media Teorema Codice D-ario prefisso per v.c. X soddisfa L H D (X). Uguaglianza vale sse D l i = p i.. p.1/27 Lunghezza media Teorema Codice D-ario prefisso per v.c. X soddisfa L H D (X). Uguaglianza
DettagliELEMENTI DI LOGICA MATEMATICA LEZIONE VII
ELEMENTI DI LOGICA MATEMATICA LEZIONE VII MAURO DI NASSO In questa lezione introdurremo i numeri naturali, che sono forse gli oggetti matematici più importanti della matematica. Poiché stiamo lavorando
DettagliSoluzione. 2.1 Pianificazione multiperiodo della produzione energetica
Soluzione. Pianificazione multiperiodo della produzione energetica a) Diamo una prima formulazione nonlineare del problema. Insiemi T :insiemedeiperiodiditempo S = {,, 3}: insieme degli indici dei range
DettagliRICERCA OPERATIVA. Tema d esame del 04/03/2008 (Simulazione)
RICERCA OPERATIVA Tema d esame del 04/03/2008 (Simulazione) COGNOME: NOME: MATRICOLA:. Una nota azienda automobilistica produce due modelli di auto (un utilitaria e una berlina), che rivende con un guadagno
DettagliSommario. 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
Dettagli4.1 Localizzazione e pianificazione delle base station per le reti UMTS
esercitazione Ottimizzazione Prof E Amaldi Localizzazione e pianificazione delle base station per le reti UMTS Consideriamo il problema di localizzare un insieme di stazioni radio base, base station (BS),
DettagliTecniche di Decomposizione per Programmazione Lineare Intera (Mista)
Tecniche di Decomposizione per Programmazione Lineare Intera (Mista) Domenico Salvagnin 2011-06-12 1 Introduzione Dato un problema di programmazione lineare intera (mista), non è sempre possibile (o conveniente)
DettagliCOMPITO DI RICERCA OPERATIVA. max x 1 + 2x 2 + x 3 x 1 x 2 + x 3 = 1 2x 1 + 3x 2 + x 4 = 2
COMPITO DI RICERCA OPERATIVA ESERCIZIO. (9 punti) Sia dato il seguente problema di PL: max x + 2x 2 + x 3 x x 2 + x 3 = 2x + 3x 2 + x 4 = 2 x, x 2, x 3, x 4 0 Si determini il duale del problema ( punto).
DettagliParte IV: Rafforzamento di formulazioni e algoritmo dei piani di taglio
Parte IV: Rafforzamento di formulazioni e algoritmo dei piani di taglio Nozioni di geometria Definizione: Un vettore y R n è combinazione conica dei vettori { 1,, k } se esistono k coefficienti reali λ
DettagliIl rilassamento Lagrangiano nella soluzione di problemi di programmazione lineare intera
Il rilassamento Lagrangiano nella soluzione di problemi di programmazione lineare intera Alessandro Agnetis, Paolo Detti January 24, 212 1 La tecnica Lagrangiana L applicazione di algoritmi di enumerazione
DettagliProgrammazione Matematica / A.A Soluzioni di alcuni esercizi
Programmazione Matematica / A.A. 8-9 Soluzioni di alcuni esercizi Esercizi - I 3. Aggiungiamo al problema una variabile v, e richiediamo che v soddisfi v n a ij x j b i. j= Fissato x, il minimo v che soddisfa
DettagliNote per la Lezione 18 Ugo Vaccaro
Progettazione di Algoritmi Anno Accademico 2018 2019 Note per la Lezione 18 Ugo Vaccaro Continuiamo con l applicazione della tecnica Greedy, ricordando che un algoritmo Greedy costruisce una soluzione
DettagliProblema del Bin Packing
M. Monaci - Problema del Bin Packing 1 Problema del Bin Packing Michele Monaci Dipartimento di Ingegneria dell Informazione, Università di Padova Viale Gradenigo, 6/A - 35131 - Padova monaci@dei.unipd.it
DettagliLe condizioni di Karush-Kuhn-Tucker
Capitolo 9 Le condizioni di Karush-Kuhn-Tucker 9. Introduzione In questo capitolo deriveremo le condizioni necessarie di Karush-Kuhn-Tucker (KKT) per problemi vincolati in cui S è descritto da vincoli
Dettagli2.1 Pianificazione multiperiodo della produzione energetica. 2.2 Confronto tra formulazioni per il problema dell albero di supporto di costo minimo
. Pianificazione multiperiodo della produzione energetica Consideriamo il problema di approvvigionamento energetico dell Italia su un orizzonte di T = 0 anni. Sia d t il consumo di potenza elettrica stimato
DettagliFACOLTA DI ECONOMIA ESAME SCRITTO DI RICERCA OPERATIVA. Verona, 6 Giugno 1996
Verona, Giugno ) E dato il seguente problema di Programmazione Lineare: min( x + ) x x x Rappresentare il problema geometricamente e successivamente scriverlo in forma standard. a) Determinare una soluzione
DettagliAlgoritmi Approssimanti per -TSP
Dispensa del corso di TAA redatta da Amati Di auro Rattà. Algoritmo 5 e APX per il problema Algoritmi Approssimanti per -TSP Definizione (TSP) Il problema del commesso viaggiatore (TSP) è definito come
DettagliNote per la Lezione 6 Ugo Vaccaro
Progettazione di Algoritmi Anno Accademico 2016 2017 Note per la Lezione 6 Ugo Vaccaro Ancora sulla tecnica Programmazione Dinamica Nella lezione scorsa abbiamo appreso che la tecnica Divide-et-Impera,
DettagliSommario. 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
DettagliAlgoritmi greedy. Gli algoritmi che risolvono problemi di ottimizzazione devono in genere operare una sequenza di scelte per arrivare alla soluzione
Algoritmi greedy Gli algoritmi che risolvono problemi di ottimizzazione devono in genere operare una sequenza di scelte per arrivare alla soluzione Gli algoritmi greedy sono algoritmi basati sull idea
DettagliEsercitazione 6 Ancora sul Network Flow
Esercitazione 6 Ancora sul Network Flow Problema 14 (appello 28/09/2015) Un importante azienda di sviluppo software ha n progetti da portare a termine entro la fine dell anno. Il manager dell azienda stima
DettagliRICERCA OPERATIVA (a.a. 2008/09) Nome: Cognome: Matricola:
o Appello /09/009 RICERCA OPERATIVA (a.a. 008/09) Nome: Cognome: Matricola: ) Si applichi l algoritmo di Kruskal per determinare un albero di copertura di costo minimo sul grafo in figura. Per ogni iterazione
DettagliEsame di Ricerca Operativa - 21 gennaio 2009 Facoltà di Architettura - Udine - CORREZIONE -
Esame di Ricerca Operativa - 2 gennaio 29 Facoltà di Architettura - Udine - CORREZIONE - Problema ( punti): Un azienda chimica produce quattro tipi di colla, A, B, C, D, utilizzando materie prime P, P
DettagliIntroduzione ai grafi
TFA A048 Anno Accademico 2012-13 Outline Cenni storici sui grafi Nozioni introduttive: cammini, connessione, alberi, cicli Cammini di costo minimo Origini storiche La nascita della teoria dei grafi risale
DettagliMassimo flusso e matching
Capitolo Massimo flusso e matching. Problema del massimo matching. Nel problema del massimo matching è dato un grafo non orientato G(V, A); un matching in G è un insieme di archi M A tale che nessuna coppia
Dettagli1 Il metodo dei tagli di Gomory
Il metodo dei tagli di Gomory Esercizio Sia dato il problema min(x x ) x + x (P 0 ) x + x x, x 0, interi. Calcolare la soluzione ottima applicando il metodo dei tagli di Gomory. Risoluzione Per applicare
DettagliProblemi. sbj. x 0, x intero
Problemi Spiegare e dimostrare in quali intervalli di R la funzione arctan x è concava, convessa o nessuno dei due casi. Si ricordi che la derivata prima di arctan x è +x 2. Si codifichi in una formula
DettagliCOMPITO 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)
DettagliAlgoritmi e Strutture Dati (Mod. B) Algoritmi Greedy (parte I)
Algoritmi e Strutture Dati (Mod. B) Algoritmi Greedy (parte I) Algoritmi greedy Gli algoritmi per problemi di ottimizzazione devono in genere operare una sequenza di scelte per arrivare alla soluzione
DettagliCOMPITO DI RICERCA OPERATIVA. max 8 5x 1 3x 2 x 3 = 1 + 4x 1 + x 2 x 4 = 1 x 1 + x 2 x 5 = 5 x 1 x 2
COMPITO DI RICERCA OPERATIVA ESERCIZIO. (5 punti) Dato un problema di PL, la sua riformulazione rispetto alla base B = {x 3, x, x 5 } é la seguente: max 8 5x 3x x 3 = + x + x x = x + x x 5 = 5 x x Solo
Dettagli