Parte II: Ottimalità, rilassamenti e bound

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Parte II: Ottimalità, rilassamenti e bound"

Transcript

1 Parte II: Ottimalità, rilassamenti e bound

2 Sommario Definizioni di bound primali e duali. Rilassamento di un problema di OC. Esempi di rilassamenti per il problema del TSP: Il rilassamento albero. Il rilassamento abbinamento. Bound primali per il TSP: Nearest Neighbor e Insertion. Algoritmi approssimati (Double Tree, Christofides). Bound dal rilassamento lineare: Il rilassamento lineare del knapsack. Bound primali: algoritmo greedy. Bound per dualità. Formulazioni di PL. Formulazioni ideali e matrici TU.

3 Ottimalità, rilassamenti e bound Consideriamo il seguente problema z * = max {c T x : x X, X {,} n } dove z* è il valore della soluzione ottima x*. Domanda: In che modo è possibile certificare che la soluzione x* è ottima? In generale, se disponessimo di un algoritmo che genera le due sequenze di soluzioni: z UB > z UB > > z UB h > z* z LB < z LB < < z LB k < z* potremmo fornire come criterio di arresto z UB h z LB k < ε (> )

4 Lower (upper) bound Bound primali Ogni soluzione x X ammissibile è un lower (upper) bound per un problema di massimizzazione (minimizzazione) z* z LB z LB z UB z UB z*

5 Upper (lower) bound Bound duali Al contrario dei bound primali, trovare upper (lower) bound di buona qualità per problemi di massimo (minimo) è tipicamente difficile. Buoni bound duali si ottengono attraverso lo studio delle proprietà strutturali del problema di OC. Le proprietà di un problema di OC si caratterizzano tramite:. Rilassamenti del problema. Definizione e studio di problemi duali.

6 Rilassamento Definizione: Il problema (RP) z R = max {f(x) : x T, T R n } (z R = min {f(x) : x T, T R n }) si definisce rilassamento del problema (P) z = max {c T x : x X, X {,} n } (z = min {c T x : x X, X {,} n }) se e solo se: i) X T, ii) f(x) > c T x per ogni x X (f(x) < c T x per ogni x X) Proprietà : Se RP è un rilassamento di P, allora z R > z * (z R < z * ). Proprietà : Se x R sol. ottima di RP è ammissibile per P allora x R = x *.

7 Esempi di rilassamenti Problema del commesso viaggiatore (simmetrico). Dati: grafo G = (V, E); pesi sugli archi c e per ogni arco e E. Domanda: trovare il ciclo hamiltoniano di peso minimo. Definizione: Un albero è un sottografo di G che consiste di due archi adiacenti al nodo più gli archi di un albero ricoprente i nodi {,, n}. Esempio 3 4

8 Rilassamenti per il TSP Osservazione: Un ciclo hamiltoniano è un particolare albero. 3 4 Pertanto, il problema Dati: grafo G = (V,E), pesi sugli archi c e per ogni arco e E. Domanda: trovare l albero di peso minimo. è un rilassamento del problema del TSP, perché l insieme X di tutti i cicli hamiltoniani è contenuto nell insieme T di tutti gli alberi.

9 Rilassamenti per il TSP Definizione: Dato un grafo G = (V, E), un abbinamento su G è un insieme di archi M tale che ogni nodo in V è estremo di esattamente due archi in M Un abbinamento forma un insieme di cicli disgiunti.

10 Rilassamenti per il TSP Osservazione: Un ciclo hamiltoniano è un particolare abbinamento, difatti è un abbinamento privo di sottocicli (subtour). 3 6 Pertanto, il problema 4 Dati: grafo G = (V,E), pesi sugli archi c e per ogni arco e E Domanda: trovare il abbinamento di peso minimo è un rilassamento del problema del TSP, perché l insieme X di tutti i cicli hamiltoniani è contenuto nell insieme T di tutti i abbinamenti.

11 Un esempio Consideriamo la seguente istanza del problema del Commesso Viaggiatore:

12 Un esempio

13 Un esempio Il abbinamento di peso minimo ha valore

14 Un esempio L albero di peso minimo ha valore

15 Un esempio Il ciclo hamiltoniano di peso minimo ha valore

16 Un esempio () Il abbinamento di peso minimo ha valore

17 Un esempio () L albero di peso minimo ha valore

18 Un esempio () Il ciclo hamiltoniano di peso minimo ha valore

19 Ricapitolando Abbiamo definito per il TSP due lower bound con le seguenti proprietà:. Sono lower bound combinatori, ovvero si ottengono tramite la soluzione di un problema di OC.. Tutti e due i problemi la cui soluzione genera i lower bound sono facili, ovvero hanno complessità polinomiale. La proprietà. è una proprietà chiave per ogni bound duale. Infatti, se il calcolo del bound fosse un problema NPcompleto sappiamo che calcolare il bound diventa almeno tanto difficile quanto risolvere il problema stesso. Domanda: Come si possono calcolare bound primali (ovvero soluzioni ammissibili di buona qualità) per il problema del TSP?

20 Algoritmi euristici Definizione: Un algoritmo A si dice euristico per un problema P se restituisce una soluzione ammissibile z A che non è garantito essere la soluzione ottima. Definizione: Sia P un problema di minimizzazione. Un algoritmo euristico si dice δapprossimato se. ha complessità polinomiale, e. per ogni istanza I di P con soluzione ottima z*(i), si ha z A (I) / z*(i) < δ () Osservazione: Se P è un problema di massimo, allora δ < e la condizione () vale con il segno di >.

21 Euristiche per il TSP Sia G = (V, E) un grafo completo e sia c uv il costo di ciascun arco uv E. Euristiche costruttive: tentano di costruire un buon ciclo hamiltoniano a partire da un sottociclo eventualmente vuoto. Euristiche migliorative: a partire da una soluzione ammissibile, si tenta di migliorarla attraverso miglioramenti locali.

22 Euristica Nearest Neighbor Input: G = (V,E). Output: ciclo hamiltoniano T. procedure nearest_neighbor () Scegli un vertice u V qualsiasi; W = V \ {u}, aggiungi u alla lista T while W > { scegli v W tale che c uv = min {c uj : j W} Aggiungi {v} alla lista T W = W \ {v} u = v }

23 Esempio Nearest Neighbor 4 La soluzione di valore è ottima?

24 Esempio Nearest Neighbor 4 La soluzione ottima vale. Osservazione: il rapporto z A (I)/z*(I) può essere reso grande a piacere.

25 Euristiche di inserimento

26 Euristiche di inserimento

27 Euristiche di inserimento

28 Euristiche di inserimento Input: G=(V,E). Output: ciclo hamiltoniano T. procedure insertion_heuristic () Inizializza T con un sottociclo W = V /T; while ( W > ) { } scegli un vertice u W; scegli la posizione in cui inserire u in T; inserisci u in T; elimina u da W;

29 Selezione del vertice da inserire Definizione: Si definisce distanza di un vertice u da un ciclo T il peso del più piccolo arco che collega il vertice ad un altro qualsiasi vertice del ciclo. T = (,,.., k) dist (u, T) = min { c uv : v T}. Nearest Insertion: Inserisci il vertice u che minimizza dist (u, T), u T. Farthest Insertion: Inserisci il vertice u che massimizza dist (u, T), u T.

30 Selezione della posizione di inserimento Osservazione: Scegliere la posizione equivale a scegliere l arco da eliminare nel ciclo T. Un vertice può essere inserito in ogni posizione di T. Siano T = (v, v,, v n ) il ciclo corrente e c(t) il costo di T e sia u il nodo da aggiungere al ciclo. Se c(t(i)) è il costo del ciclo ottenuto da T inserendo il nodo u nella posizione iesima, il costo di inserimento è pari a c(t(i)) c(t). Si seleziona la posizione che minimizza c(t(i)) c(t).

31 Esempio d = d =

32 Esempio T = {,, 3} d = d =

33 Esempio C =

34 Esempio C = 6

35 Esempio C = 7

36 Altre regole di selezione del vertice Random Insertion: Si sceglie un vertice a caso fra quelli non ancora inseriti nel ciclo. Cheapest Insertion: Si sceglie il vertice che può essere aggiunto al ciclo con il minimo aumento di costo.

37 Una proprietà strutturale Si dice che la matrice delle distanze di un grafo G soddisfa la disuguaglianza triangolare se comunque prendo un triangolo e, e, e 3 in G si ha c ei + c ej > c ek per i j k, i, j, k {,, 3}

38 Richiamo Definizione: G = (V, E) è un grafo euleriano se e solo se il grado di ogni nodo è pari. Se G = (V, E) è un grafo euleriano e v è un vertice di G allora è possibile costruire un percorso che inizia e finisce in v e che attraversa ogni arco esattamente una volta. Teorema: Sia H = (V, F) un grafo completo con la matrice dei costi che soddisfa la disuguaglianza triangolare. Sia G = (V, E) un sottografo euleriano connesso di H. H contiene un ciclo hamiltoniano di lunghezza al più Σ e E c e.

39 Dimostrazione (idea) 3 Sottografo euleriano 4 Come posso ricavare un ciclo hamiltoniano? Poiché vale la disuguaglianza triangolare, c < c 3 + c 3.

40 Euristica Double Tree. Calcola un minimo albero ricoprente K.. Raddoppia gli archi di K, formando un percorso euleriano. 3. Ricava un ciclo hamiltoniano dal percorso euleriano. Indichiamo con z H DT il valore della soluzione che si ottiene applicando l euristica Double Tree.

41 Da un percorso euleriano ad un ciclo hamiltoniano Consideriamo un percorso euleriano (v,, v k ). procedure obtain_hamiltonian () T = {v }, i=, v = v while T < n { if v i T T = T {v i } collega v a v i v = v i i ++ } collega v a v T è un ciclo hamiltoniano.

42 Esempio Tour euleriano (,4,,3,,3,,3,,6,,8,9,8,,8,7,,7,8,) Tour hamiltoniano (,4,,3,,3,,3,,6,,8,9,8,,8,7,,7,8,)

43 Proprietà Double tree è un algoritmo approssimato per il TSP. Dimostrazione:. z* > z TREE (albero è un rilassamento per TSP).. Per costruzione, la lunghezza del doppio albero è * z TREE. 3. z H DT < * z TREE. Pertanto: z H DT / z* < * z TREE / z TREE =.

44 Euristica di Christofides. Calcola un minimo albero ricoprente K.. Sia V V l insieme dei vertici che hanno grado dispari in K. 3. Trova il matching perfetto M di peso minimo sui nodi V. 4. M K è un percorso euleriano.. Ricava un ciclo hamiltoniano dal percorso euleriano. Indichiamo con z H CH il valore della soluzione che si ottiene applicando l euristica di Christofides.

45 Esempio Matching perfetto Nodi di grado dispari Tour euleriano (,,3,6,,4,9,8,,,7,8,,3,) Tour hamiltoniano (,,3,6,,4,9,8,,,7,8,,3,)

46 L algoritmo di Christofides per il TSP è 3/approssimato. Dimostrazione: Proprietà. z* > z TREE (albero è un rilassamento per TSP) Siano {t, t,..., t k } i vertici di grado dispari del minimo albero ricoprente etichettati nell ordine in cui si incontrano nel ciclo hamiltoniano ottimo. 3 Esempio: T* = {,, 3, 4,, 6} Min albero ricoprente in rosso 4 {t, t,..., t k } = {, 3,, 6} 6

47 Dimostrazione Sia C il ciclo formato dai vertici {t, t,..., t k } e z(c) il suo costo. Si ha che:. C è l unione di matching perfetti {t t, t 3 t 4,... t k t k } {t t 3, t 4 t,... t k t } e quindi z(c) > z M, con z M valore del matching perfetto di costo minimo.. z(c) < z* per la disuguaglianza triangolare. Difatti ognuno degli archi di C ha un costo minore o uguale al corrispondente sottocammino in T. Pertanto, z* > z(c) > z M, ovvero z M < z*/. Quindi: z H CH < z TREE + z M < z* + z*/ < 3/ z*

48 Il problema della bisaccia Avete a disposizione un budget b per gli investimenti dell anno 8. Ad ogni progetto è associato un costo a j (> ) un guadagno atteso c j (>). Problema: Scegliere l insieme di progetti in modo che sia massimizzato il guadagno atteso senza eccedere il budget b. Se ogni progetto può essere attivato non solo per intero ma anche in parte si parla di knapsack continuo.

49 Il knapsack continuo Consideriamo il seguente problema max st n j= x j= c x a j x j b (KRL) per j =,..., n j n j j KRL è un rilassamento del problema di knapsack. Infatti, la collezione degli insiemi ammissibili del problema di knapsack è contenuta nella regione ammissibile del problema di knapsack continuo.

50 Il knapsack continuo Come si risolve il problema di knapsack continuo? Essendo formulato come problema di Programmazione Lineare, si può risolvere utilizzando il metodo del simplesso. In alternativa: Supponiamo di riordinare gli elementi della bisaccia in modo che: c a h c cn... e sia h l indice minimo per cui a a j= n a j > b La soluzione f = b a h j= h a j x =, x =,..., xh =, xh = f, xh+ =,..., xn = è ottima per (KLR). con

51 Dimostrazione Supponiamo, senza perdita di generalità, che gli elementi del problema soddisfino c c cn > >... > a a an e sia x LP = (x,, x n ) la soluzione ottenuta con la formula precedente. Consideriamo una soluzione x ottima, diversa da x LP. Ora, x differisce da x LP per almeno un elemento x k con k > h. Infatti, se x fosse diversa da x LP soltanto perché x h =, allora x non sarebbe ottima. Ciò significa che esiste un indice i < h tale che x i < e un indice k > h tale che x k >. Sia d = min { a x', a ( x )} Per costruzione, d >. Consideriamo la soluzione: k k i i

52 Dimostrazione che si ottiene da x sostituendo x i e x k con: è ammissibile. Infatti: Inoltre,. Infatti: Ma, allora, la soluzione x non è ottima (contraddizione). ) ',...,,..,,..., ', ' ( n k i x x x x x x = k k k a d x x = ' i i i a d x x + = ' x b a d a a a d x a x a k k n j i i j j n j j j = + = = = ' cx' x c > = = = > + = n j j j n j k k i i j j n j j j x c a c a c d x c x c ' ' <

53 Bound primale per il knapsack Il seguente algoritmo, applicato agli elementi della bisaccia riordinati secondo il criterio c a restituisce, invece una soluzione ammissibile per il problema di knapsack: Algorithm Greedy_knapsack () d = ; z = ; for (j = ; j < n; j ++) { if (d + a j < b) then x j = ; d = d + a j ; z = z + c j ; else x j = ; } return z; c... a c a n n

54 Ricapitolando Abbiamo definito per il knapsack un upper bound con le seguenti proprietà:. L upper bound è continuo, nel senso che si ottiene dalla soluzione di un problema di Programmazione Lineare e non da un problema di OC.. L upper bound può essere calcolato con un algoritmo più efficiente rispetto al metodo del simplesso e polinomiale. Domanda: Può essere generalizzata questa tecnica di rilassamento? Sostituendo la stipula x {, } con il vincolo < x < di una formulazione di un problema di PL{,}, si ottiene sempre un rilassamento denominato Rilassamento Lineare.

55 Dualità Definizione: Due problemi di ottimizzazione z = max {f(x) : x X} w = min {g(y) : y Y } formano una coppia duale debole se f(x) < g(y) per ogni x X e y Y. Se z = w si dice che formano una coppia duale forte. Vantaggio fondamentale rispetto al rilassamento: Per ottenere un bound attraverso il rilassamento, il problema rilassato va risolto all ottimo. Invece, per una coppia duale ogni soluzione ammissibile y Y (x X) è un upper (lower) bound per z (w).

56 Esempi. Il problema di trovare un matching di massima cardinalità e quello di trovare un node cover di minima cardinalità formano una coppia duale debole per ogni grafo G.. Il problema di trovare un insieme stabile di massima cardinalità e quello di trovare un edge cover di minima cardinalità formano una coppia duale debole per ogni grafo G. Entrambe queste coppie di problemi godono della dualità forte se G è bipartito (Teorema di Konig e Teorema di Gallai).

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

58 Insiemi ammissibili x (, ) (, ) (, ) (, ) x

59 Formulazione Un poliedro P è una formulazione di un problema di OC se e solo se P {,} n = F x x

60 Il rilassamento lineare Il problema di knapsack max x + x 3x + 4x < 6 x {,} ha come rilassamento lineare max x + x 3x + 4x < 6 x > x > x < x <

61 è un poliedro x 3x + 4x < 6 x < x > x < x > x

62 ovvero, è una formulazione x x

63 Gerarchia di formulazioni Quando una formulazione è migliore di un altra? Definizione: Se un poliedro P, formulazione di F, è contenuto in P, formulazione di F, diciamo che P è migliore di P. In generale P P P 3 Esiste una formulazione ideale?

64 Formulazione ideale Geometricamente la formulazione ideale coincide con il più piccolo poliedro contenente F. x Come si ottiene la formulazione ideale? x

65 Proprietà Osservazione: Ogni vertice del poliedro associato alla formulazione ideale è in corrispondenza biunivoca con un insieme ammissibile. Definizione: Dati due vettori x e x di R n si definisce combinazione convessa il vettore y = λx + ( λ) x con λ [, ] Esempio: x y x

66 Involucro convesso Definizione: L insieme di tutte le possibili combinazioni convesse di un insieme di vettori X di R n prende il nome di involucro convesso e si indica con conv(x). Osservazione: conv(x) è un poliedro. Pertanto, la formulazione ideale di F è conv (F).

67 Calcolo di conv (F) In linea di principio Dati gli insiemi ammissibili F = {(, ), (, ), (, )} y conv(f) se e solo se si può esprimere come,, = = λ λ λ λ λ λ λ λ λ y y

68 a questo punto Attenzione: questo sistema è nello spazio R n+m, se m sono gli insiemi ammissibili. Quindi per ottenere la formulazione ideale è necessario proiettare il sistema nello spazio R n. A questo scopo è possibile utilizzare l algoritmo di Fourier Motzkin che consente di eliminare le variabili λ.

69 Punto della situazione Dato un problema di OC. Elenco tutti gli insiemi ammissibili.. Rappresento gli insiemi ammissibili come vettori a componenti in {,}. 3. Scrivo l involucro convesso applicando la definizione. 4. Con l algoritmo di FourierMotzkin elimino i coefficienti della combinazione convessa e ottengo una formulazione ideale nello spazio R n.. Applico il metodo del simplesso e trovo la soluzione ottima. È efficiente questo algoritmo?

70 Efficienza del calcolo di conv(f) Problemi del precedente algoritmo. Gli insiemi ammissibili sono tipicamente in numero esponenziale.. L algoritmo di FourierMotzkin non ha complessità polinomiale. Però sappiamo che una formulazione ideale esiste sempre e quindi. Caso MOLTO fortunato: abbiamo una formulazione che è proprio la formulazione ideale.. Tentiamo di approssimare la formulazione ideale costruendo una gerarchia di formulazioni a partire da una formulazione iniziale.

71 Gerarchia di formulazioni Quando una formulazione è migliore di un altra? Definizione: Se un poliedro P, formulazione di F, è contenuto in P, formulazione di F, diciamo che P è migliore di P. In generale, una gerarchia di formulazioni è costituita da un insieme di poliedri P P P 3

72 Esempio Consideriamo un problema di knapsack con il vincolo che l oggetto k può essere scelto se e solo se nella bisaccia sono stati scelti gli oggetti i e j. Formulazione. Formulazione. max c x x x k k x x T i j {,} x max c st st ax b ax n x x k T b x x {,} i + x n j

73 Esempio (II) Il rilassamento lineare della Formulazione è migliore di quello della Formulazione. Infatti, il vincolo x x + k i x j è implicato dai vincoli x x k k x x i j Quindi, P P.

74 Formulazione ideale La formulazione del problema di knapsack NON è una formulazione ideale. Domanda: Esistono casi fortunati in cui la formulazione coincide con la formulazione ideale? E possibile caratterizzare le formulazioni ideali in modo da riconoscerle in tempo polinomiale?

75 Il caso fortunato Consideriamo il seguente problema di PL in forma standard, in cui A è una matrice intera e b è un vettore intero: con rg (A) = m < n. min c T x Ax = b x > Se il problema ammette soluzione ottima finita, allora il metodo del simplesso restituisce la soluzione ottima in corrispondenza di una SBA del tipo: x x = x = B * B b N

76 Il caso fortunato (II) Osservazione: Se la base ottima B ha determinante det(b )= +, allora RL ha una soluzione intera. Infatti: B = B a /det(b), dove B a è la matrice aggiunta. Gli elementi di B a sono tutti prodotti di termini di B. Pertanto B a è una matrice intera e, poiché det(b)=+, B è ancora intera. Pertanto la soluzione di base x B = B b è intera per ogni intero b.

77 Matrici unimodulari Definizione: Una matrice A intera m n (m < n) si dice unimodulare se ogni sua sottomatrice B di dimensioni m m ha det(b) = {,, +}. Dall osservazione precedente si ottiene il seguente risultato: Teorema: Se A è una matrice unimodulare e b è un vettore intero, il poliedro P = {Ax = b, x > } è intero.

78 Matrici totalmente unimodulari Consideriamo ora il rilassamento lineare di una formulazione di PL{,}. In generale, sarà del tipo: min c T x Ax b (P ) x > Per portare questo problema in forma standard bisogna inserire le variabili di slack y: min c T x Ax Iy = b x, y > (P )

79 Matrici totalmente unimodulari Definizione: Una matrice A si dice TOTALMENTE UNIMODULARE (TU) se ogni sottomatrice quadrata di A ha determinante {, +, }. Proprietà delle matrici TU Una matrice A è TU se e solo se i) la matrice trasposta A T è TU. ii) la matrice (A, I) è TU.

80 Teorema Teorema (HoffmanKruskal [96]): Sia A una matrice intera. Il poliedro P definito da Ax b, x è intero per ogni vettore intero b se e solo se A è TU. Attenzione: Il teorema non vale se P = {x R n ; Ax = b}. Infatti, in questo caso P può essere intero ma A può non essere TU.

81 Condizioni per la TU Osservazione: Se A è TU, allora a ij {,, }. Teorema: A è TU se i) a ij {,, } ii) Ogni colonna ha al più due coefficienti non nulli iii) Esiste una partizione (M, M ) dell insieme delle righe M tale che ogni colonna j contenente due coefficienti non nulli soddisfa a = ij i M ij a i M Osservazione: se la colonna j contiene due elementi a ij e a kj dello stesso segno allora i M e k M. se la colonna j contiene due elementi a ij e a kj di segno opposto allora i, k M oppure i,k M.

82 Dimostrazione Dobbiamo dimostrare che ogni sottomatrice quadrata B di A ha det(b) {,, }. Procediamo per induzione: Se B è una sottomatrice, banalmente det(b) {,,}. Supponiamo ora che la tesi valga per ogni sottomatrice di A di dimensioni (n ) (n ) e consideriamo una sottomatrice B n n. Se B contiene una colonna nulla, det(b) =.

83 Dimostrazione Se B contiene una colonna con un unico elemento diverso da zero, allora det(b) = +det(b ), dove B è di ordine (n ) (n ). Pertanto, dall ipotesi induttiva, det(b) {,,}. Se ogni colonna di B contiene due elementi, dall ipotesi si ottiene Questo implica che det(b) =. a = i M ij a i ij M

84 Esempi di matrici TU G (N, A) grafo diretto a b c e i g d f h l l i h g f e d c b a A Matrice di incidenza nodiarchi M = M, M =

85 Formulazione del problema di cammino minimo Dati: G (N, A) grafo diretto, due nodi (s, t), vettore c R + A z = min st ( i, j) A c ij x ij k + ( i) x ik k ( i) x ki = per i = s k + ( i) x ik k ( i) x ki = per ogni i V \ { s, t} k + ( i) x ik k ( i) x ki = per i = t x {,} A

86 Cammino minimo z = min ( i, j) A st Ax = x x x {,} A c ij x ij La stipula di interezza può essere rimossa in quanto A è TU

87 Matrice di incidenza di grafi bipartiti 4 3 e d c b a 3 4 M M a b c d e Esercizio: Quali problemi di OC noti ammettono una formulazione avente come matrice dei coefficienti la matrice di incidenza di un grafo bipartito?

88 Matrici di incidenza Domanda:Tutte le matrici di incidenza sono TU? NO!!! a 3 a b c b c 3

Parte II: Ottimalità, rilassamenti e bound

Parte 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:

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

Parte IV: Matrici totalmente unimodulari

Parte 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)}

Dettagli

Ottimizzazione Combinatoria A. A

Ottimizzazione Combinatoria A. A Ottimizzazione Combinatoria A. A. 2006-2007 Docente Fabrizio Rossi Orario di ricevimento mercoledi 7-9 oppure su appuntamento Telefono 086243339 e-mail rossi@di.univaq.it Sito web http://www.di.univaq.it/~oil

Dettagli

Ottimizzazione Combinatoria A. A

Ottimizzazione Combinatoria A. A Ottimizzazione Combinatoria A. A. 2005-2006 Docente Fabrizio Rossi Orario di ricevimento mercoledi 17-19 oppure su appuntamento Telefono 0862433139 e-mail rossi@di.univaq.it Sito web http://www.di.univaq.it/~oil

Dettagli

3.2 Rilassamenti lineari/combinatori e bounds

3.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

Dettagli

ESERCIZIO 1: Punto 1

ESERCIZIO 1: Punto 1 ESERCIZIO : Punto La seguente matrice è una matrice delle distanze di un istanza del problema del Commesso Viaggiatore. - - - - - - - Calcolare.Il valore del rilassamento che si ottiene determinando l

Dettagli

min det det Allora è unimodulare se e solo se det 1, 1, 0 per ogni sottomatrice quadrata di di qualsiasi dimensione.

min 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 è

Dettagli

Matrici unimodulari e totalmente unimodulari

Matrici unimodulari e totalmente unimodulari Matrici unimodulari e totalmente unimodulari Sia una matrice intera di dimensione con, si dice unimodulare se presa una qualsiasi sottomatrice di ordine massimo (di dimensione ) vale det = 1, +1, 0. Una

Dettagli

Metodi e Modelli per l Ottimizzazione Combinatoria Problema dell assegnamento e matrici totalmente unimodulari

Metodi e Modelli per l Ottimizzazione Combinatoria Problema dell assegnamento e matrici totalmente unimodulari Metodi e Modelli per l Ottimizzazione Combinatoria Problema dell assegnamento e matrici totalmente unimodulari L. De Giovanni G. Zambelli 1 Problema dell assegnamento Sia dato un grafo non orientato bipartito

Dettagli

I Appello Ricerca Operativa 2 bis Compito A

I Appello Ricerca Operativa 2 bis Compito A I Appello Ricerca Operativa 2 bis Compito A Cognome e nome:. Esercizio 1. Si consideri il problema del matching di cardinalità massima in un grafo G ed il suo problema di decisione associato: esiste un

Dettagli

3.3 Problemi di PLI facili

3.3 Problemi di PLI facili 3.3 Problemi di PLI facili Consideriamo un generico problema di PLI espresso in forma standard min{c t x : Ax = b, x Z n +} (1) dove A Z m n con n m, e b Z m. Supponiamo che A sia di rango pieno. Sia P

Dettagli

Ricerca Operativa. G. Liuzzi. Lunedí 20 Aprile 2015

Ricerca 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)

Dettagli

Massimo flusso e matching

Massimo 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

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

Parte III: Algoritmo di Branch-and-Bound

Parte III: Algoritmo di Branch-and-Bound Parte III: Algoritmo di Branch-and-Bound Divide et Impera Sia z * max {c T x : x S} (1) un problema di ottimizzazione combinatoria difficile da risolvere. Domanda: E possibile decomporre il problema (1)

Dettagli

Algoritmi esatti. La teoria ci dice che per problemi difficili (come il

Algoritmi esatti. La teoria ci dice che per problemi difficili (come il p. 1/4 Algoritmi esatti La teoria ci dice che per problemi difficili (come il KNAPSACK o, ancora di più, il TSP ) i tempi di risoluzione delle istanze, calcolati tramite analisi worst-case, tendono a crescere

Dettagli

Gestione della produzione e della supply chain Logistica distributiva. Paolo Detti Dipartimento di Ingegneria dell Informazione Università di Siena

Gestione della produzione e della supply chain Logistica distributiva. Paolo Detti Dipartimento di Ingegneria dell Informazione Università di Siena Gestione della produzione e della supply chain Logistica distributiva Paolo Detti Dipartimento di Ingegneria dell Informazione Università di Siena Un algoritmo per il flusso a costo minimo: il simplesso

Dettagli

Gestione della produzione e della supply chain Logistica distributiva

Gestione della produzione e della supply chain Logistica distributiva Gestione della produzione e della supply chain Logistica distributiva Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena Convergenza dell algoritmo Se non

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

Parte V: Rilassamento Lagrangiano

Parte 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

Dettagli

Ottimizzazione Combinatoria 2 Presentazione

Ottimizzazione 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)

Dettagli

METODI DELLA RICERCA OPERATIVA

METODI DELLA RICERCA OPERATIVA Università degli Studi di Cagliari FACOLTA' DI INGEGNERIA CORSO DI METODI DELLA RICERCA OPERATIVA Dott.ing. Massimo Di Francesco (mdifrance@unica.it) i i Dott.ing. Maria Ilaria Lunesu (ilaria.lunesu@unica.it)

Dettagli

Lezioni di Ricerca Operativa

Lezioni di Ricerca Operativa Lezioni di Ricerca Operativa Estratto per la parte di programmazione lineare e ottimizzazione sui grafi Corso di Metodi di Ottimizzazione per l'ingegneria della Sicurezza Laurea Magistrale in Ingegneria

Dettagli

COMPITO 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. 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).

Dettagli

PROBLEMA DEL COMMESSO VIAGGIATORE

PROBLEMA DEL COMMESSO VIAGGIATORE PROBLEMA DEL COMMESSO VIAGGIATORE INTRODUZIONE Il problema del commesso viaggiatore (traveling salesman problem :TSP) è un classico problema di ottimizzazione che si pone ogni qual volta, dati un numero

Dettagli

Introduzione al Column Generation Caso di Studio: il Bin Packing Problem

Introduzione 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

Dettagli

Registro dell'insegnamento

Registro dell'insegnamento Registro dell'insegnamento Anno accademico 2016/2017 Prof. MARCO SCIANDRONE Settore inquadramento MAT/09 - RICERCA OPERATIVA REGISTRO Scuola Ingegneria NON CHIUSO Dipartimento Ingegneria dell'informazione

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

Domini di funzioni di due variabili. Determinare i domini delle seguenti funzioni di due variabili (le soluzioni sono alla fine del fascicolo):

Domini 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

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

Richiami di Teoria dei Grafi. Paolo Detti Dipartimento di Ingegneria dell Informazione Università di Siena

Richiami di Teoria dei Grafi. Paolo Detti Dipartimento di Ingegneria dell Informazione Università di Siena Richiami di Teoria dei Grafi Paolo Detti Dipartimento di Ingegneria dell Informazione Università di Siena Teoria dei grafi La Teoria dei Grafi costituisce, al pari della Programmazione Matematica, un corpo

Dettagli

Parte V: Rafforzamento di formulazioni e algoritmo dei piani di taglio

Parte V: Rafforzamento di formulazioni e algoritmo dei piani di taglio Parte V: Rafforamento di formulaioni e algoritmo dei piani di taglio Noioni di geometria Definiione: Un vettore y R n è combinaione conica dei vettori {,, k } se esistono k coefficienti reali λ,,λ k tali

Dettagli

3.6 Metodi basati sui piani di taglio

3.6 Metodi basati sui piani di taglio 3.6 Metodi basati sui piani di taglio Problema generale di Programmazione Lineare Intera (PLI) con A matrice m n e b vettore n 1 razionali min{ c t x : x X = {x Z n + : Ax b} } Sappiamo che esiste una

Dettagli

Poliedri e formulazioni

Poliedri e formulazioni Poliedri e formulazioni Def.: Un poliedro P R n è l insieme dei punti che soddisfano un numero finito di disequazioni lineari, ossia P = {x R n : Ax b} dove A è una matrice di dimensioni m n e b è un vettore

Dettagli

Euristiche per il Problema del Commesso Viaggiatore

Euristiche per il Problema del Commesso Viaggiatore Sapienza Università di Roma - Dipartimento di Ingegneria Informatica, Automatica e Gestionale Euristiche per il Problema del Commesso Viaggiatore Renato Bruni bruni@dis.uniroma.it Il materiale presentato

Dettagli

Programmazione Lineare Intera: Piani di Taglio

Programmazione Lineare Intera: Piani di Taglio Programmazione Lineare Intera: Piani di Taglio Andrea Scozzari a.a. 2014-2015 April 22, 2015 Andrea Scozzari (a.a. 2014-2015) Programmazione Lineare Intera: Piani di Taglio April 22, 2015 1 / 23 Programmazione

Dettagli

Possibile applicazione

Possibile 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

Dettagli

Figura 1: 1) Si scriva la formulazione del problema come problema di PLI (con un numero minimo di vincoli) e la matrice dei vincoli.

Figura 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

Dettagli

Ottimizzazione Combinatoria A. A

Ottimizzazione Combinatoria A. A Ottimizzazione Combinatoria Docente: Mara Servilio A. A. 2008-2009 Orario delle lezioni: Mercoledì 11:30-13:30; Giovedì 11:30-13:30 Orario di ricevimento: Mercoledì 15:00-17:00 E-mail: servilio@di.univaq.it

Dettagli

Metodi e Modelli per l Ottimizzazione Combinatoria Ripasso sulla Programmazione Lineare e il metodo del Simplesso (parte I)

Metodi e Modelli per l Ottimizzazione Combinatoria Ripasso sulla Programmazione Lineare e il metodo del Simplesso (parte I) Metodi e Modelli per l Ottimizzazione Combinatoria Ripasso sulla Programmazione Lineare e il metodo del Simplesso (parte I) Luigi De Giovanni Giacomo Zambelli 1 Problemi di programmazione lineare Un problema

Dettagli

5.3 Metodo dei piani di taglio

5.3 Metodo dei piani di taglio 5.3 Metodo dei piani di taglio (PLI) min s.v. c T x Ax b x interi X Ipotesi: a ij, c j e b i interi Osservazione: La regione ammissibile di un PLI può essere descritta mediante dei vincoli più o meno stringenti

Dettagli

Teoria della Programmazione Lineare Intera

Teoria della Programmazione Lineare Intera 0 Teoria della Programmazione Lineare Intera 0. INTRODUZIONE Come visto precedentemente, molti problemi particolarmente importanti dal punto di vista applicativo sono riconducibili alla soluzione di un

Dettagli

Programmazione Lineare Intera

Programmazione Lineare Intera Programmazione Lineare Intera Andrea Scozzari a.a. 2012-2013 May 10, 2013 Andrea Scozzari (a.a. 2012-2013) Programmazione Lineare Intera May 10, 2013 1 / 16 Programmazione Lineare Intera: Metodo dei Piani

Dettagli

Teoria della Programmazione Lineare Intera

Teoria della Programmazione Lineare Intera Teoria della Programmazione Lineare Intera Laura Galli Dipartimento di Informatica Largo B. Pontecorvo, 567 Pisa laura.galli@unipi.it http://www.di.unipi.it/~galli 7 Ottobre 0 Ricerca Operativa Laurea

Dettagli

Algoritmi Approssimanti per -TSP

Algoritmi 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

Dettagli

Rilassamento Lagrangiano

Rilassamento Lagrangiano RILASSAMENTO LAGRANGIANO 1 Rilassamento Lagrangiano Tecnica più usata e conosciuta in ottimizzazione combinatoria per il calcolo di lower/upper bounds (Held and Karp (1970)). Si consideri il seguente problema

Dettagli

5.1 Metodo Branch and Bound

5.1 Metodo Branch and Bound 5. Metodo Branch and Bound Si consideri il problema min{ c(x) : x X } Idea: Ricondurre la risoluzione di un problema difficile a quella di sottoproblemi più semplici effettuando una partizione (ricorsiva)

Dettagli

Ricerca Operativa 2. Ricerca Operativa 2 p. 1/6

Ricerca Operativa 2. Ricerca Operativa 2 p. 1/6 Ricerca Operativa 2 Ricerca Operativa 2 p. 1/6 Introduzione In questo corso ci occuperemo di problemi di ottimizzazione. Ricerca Operativa 2 p. 2/6 Introduzione In questo corso ci occuperemo di problemi

Dettagli

Ottimizzazione Combinatoria A. A

Ottimizzazione Combinatoria A. A Ottimizzazione Combinatoria Docente: Mara Servilio A. A. 2007-2008 Orario delle lezioni: Mercoledì 11:30-13:30; Giovedì 11:30-13:30 Orario di ricevimento: giovedì 15:00-17:00 E-mail: servilio@di.univaq.it

Dettagli

5.5 Metodi generali per la soluzione di problemi

5.5 Metodi generali per la soluzione di problemi 5.5 Metodi generali per la soluzione di problemi di PLI I problemi di PLI hanno caratteristiche molto diverse dai problemi di PL. In alcuni casi, la soluzione del problema lineare rilassato, ottenuto cioè

Dettagli

Università degli Studi di Roma La Sapienza

Università 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

Dettagli

RICERCA OPERATIVA (a.a. 2015/16) Nome: Cognome: Matricola:

RICERCA 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

Dettagli

COMPITO 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. 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

Dettagli

UNIVERSITÀ DEGLI STUDI ROMA TRE Collegio Didattico in Ingegneria Informatica corso di Ricerca operativa 2. Esercizi sul problema dell assegnamento

UNIVERSITÀ DEGLI STUDI ROMA TRE Collegio Didattico in Ingegneria Informatica corso di Ricerca operativa 2. Esercizi sul problema dell assegnamento UNIVERSITÀ DEGLI STUDI ROMA TRE Collegio Didattico in Ingegneria Informatica corso di Ricerca operativa Esercizi sul problema dell assegnamento Richiami di Teoria Ricordiamo che, dato un grafo G=(N,A),

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

5.5 Metodi dei piani di taglio

5.5 Metodi dei piani di taglio 5.5 Metodi dei piani di taglio Problema generale di Programmazione Lineare Intera (PLI) max{c t x : x X} dove X = {x Z n + : Ax b}, con A matrice m n e b vettore n 1 razionali Proposizione: conv(x) = {x

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

Stime dell ottimo - Rilassamenti. PRTLC - Rilassamenti

Stime dell ottimo - Rilassamenti. PRTLC - Rilassamenti Stime dell ottimo - Rilassamenti PRTLC - Rilassamenti Schema delle esercitazioni Come ricavare la soluzione ottima Modelli Solver commerciali Come ricavare una stima dell ottimo: rilassamenti Rilassamento

Dettagli

Introduzione ai grafi. Introduzione ai grafi p. 1/2

Introduzione ai grafi. Introduzione ai grafi p. 1/2 Introduzione ai grafi Introduzione ai grafi p. 1/2 Grafi Un grafo G é costituito da una coppia di insiemi (V,A) dove V é detto insieme dei nodi e A é detto insieme di archi ed é un sottinsieme di tutte

Dettagli

Il teorema di dualità forte

Il 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

Dettagli

RICERCA OPERATIVA. Tema d esame del 04/12/2008 (Simulazione 1)

RICERCA OPERATIVA. Tema d esame del 04/12/2008 (Simulazione 1) RICERCA OPERATIVA Tema d esame del 04/12/2008 (Simulazione 1) COGNOME: NOME: MATRICOLA: 1. Un azienda meccanica deve pianificare il lavoro delle sue tre macchine per un dato giorno. I lotti che è possibile

Dettagli

Quinto appello 27/6/ = 4. B b B = 2 b N = 4

Quinto 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

Dettagli

Branch-and-bound per TSP

Branch-and-bound per TSP p. 1/6 Branch-and-bound per TSP Anche qui, rispetto allo schema generale visto in precedenza dobbiamo specificare: p. 1/6 Branch-and-bound per TSP Anche qui, rispetto allo schema generale visto in precedenza

Dettagli

RICERCA OPERATIVA (a.a. 2014/15) Nome: Cognome: Matricola:

RICERCA OPERATIVA (a.a. 2014/15) Nome: Cognome: Matricola: 3 o Appello /2/2 RICERCA OPERATIVA (a.a. 2/) Nome: Cognome: Matricola: ) Si risolva algebricamente il seguente problema di PL max x 2x 2 x x 2 2 x x + x 2 3 x 2 7 mediante l algoritmo del Simplesso Primale

Dettagli

Dualitá in Programmazione Lineare e alcune conseguenze

Dualitá 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

Dettagli

Ottimizzazione Discreta Esercizi V: Soluzioni

Ottimizzazione 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),

Dettagli

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

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

Dettagli

PROGRAMMAZIONE LINEARE E DUALITA'

PROGRAMMAZIONE LINEARE E DUALITA' PROGRAMMAZIONE LINEARE E DUALITA' 1) Dati i punti di R 2 (1, 2), (1, 4), (2, 3), (3, 5), (4, 1), (4, 2), (5, 5), (6, 2), (6, 5). Determinare graficamente: A - L'involucro convesso di tali punti. B - Quali

Dettagli

Introduzione ai grafi. Introduzione ai grafi p. 1/2

Introduzione ai grafi. Introduzione ai grafi p. 1/2 Introduzione ai grafi Introduzione ai grafi p. 1/2 Grafi Un grafo G è costituito da una coppia di insiemi (V,A) dove V è detto insieme dei nodi e A è detto insieme di archi ed è un sottinsieme di tutte

Dettagli

COMPITO DI RICERCA OPERATIVA. max x 1 + x 2 x 1 2x 2 + x 3 = 4 x 1 x 2 x 3 = 3 x 2 + 2x 3 = 1 x 1, x 2, x 3 0

COMPITO DI RICERCA OPERATIVA. max x 1 + x 2 x 1 2x 2 + x 3 = 4 x 1 x 2 x 3 = 3 x 2 + 2x 3 = 1 x 1, x 2, x 3 0 COMPITO DI RICERCA OPERATIVA ESERCIZIO. (5 punti) Sia dato il seguente problema di PL: max x + x 2 x 2x 2 + x 3 = 4 x x 2 x 3 = 3 x 2 + 2x 3 = x, x 2, x 3 0 Utilizzando il metodo due fasi, si stablisca

Dettagli

Tecniche di Decomposizione per Programmazione Lineare Intera (Mista)

Tecniche 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)

Dettagli

RICERCA OPERATIVA GRUPPO A prova scritta del 21 luglio 2010

RICERCA OPERATIVA GRUPPO A prova scritta del 21 luglio 2010 RICERCA OPERATIVA GRUPPO A prova scritta del luglio 00. Dato il problema di programmazione lineare P) min z = x + x + x max y + y x + x + x = y + y < x + x x y + y < x, x, x 0 y y < y > 0 a) costruirne

Dettagli

COMPITO DI RICERCA OPERATIVA APPELLO DEL 08/01/04

COMPITO DI RICERCA OPERATIVA APPELLO DEL 08/01/04 COMPITO DI RICERCA OPERATIVA APPELLO DEL 08/01/04 Esercizio 1 Si risolva con il metodo branch-and-bound il seguente problema di PLI max x 1 + x 4x 1 + x + x = 0 x 1 + x + x 4 = x 1, x, x, x 4 0 x 1, x,

Dettagli

Se il grafo è bipartito, un accoppiamento viene anche detto assegnamento.

Se 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

Dettagli

COMPITO 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. 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

Teoria dei Grafi Elementi di base della Teoria dei Grafi

Teoria dei Grafi Elementi di base della Teoria dei Grafi L. Pallottino, Sistemi Robotici Distribuiti - Versione del 4 Marzo 2015 42 Teoria dei Grafi Elementi di base della Teoria dei Grafi Definizione 1. Un grafo G = (V, E) è composto da un insieme finito di

Dettagli

Algoritmi Avanzati Soluzioni dello scritto del 2 febbraio 2004 (appello straordinario)

Algoritmi 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

Dettagli

Programmazione Lineare

Programmazione Lineare Programmazione Lineare Andrea Scozzari a.a. 2012-2013 March 14, 2013 Andrea Scozzari (a.a. 2012-2013) Programmazione Lineare March 14, 2013 1 / 18 Metodo del Simplesso Dato un problema di PL in forma standard

Dettagli

Esercizio 1. Variabili decisionali:

Esercizio 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

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

Ricerca Operativa 2. Ricerca Operativa 2 p. 1/6

Ricerca Operativa 2. Ricerca Operativa 2 p. 1/6 Ricerca Operativa 2 Ricerca Operativa 2 p. 1/6 Introduzione In questo corso ci occuperemo di problemi di ottimizzazione. Tali problemi sono tipicamente raggruppati in classi ognuna delle quali è formata

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

TECNICHE ALGORITMICHE PER PROBLEMI DI OTTIMIZZAZIONE

TECNICHE ALGORITMICHE PER PROBLEMI DI OTTIMIZZAZIONE TECNICHE ALGORITMICHE PER PROBLEMI DI OTTIMIZZAZIONE - Tecniche golose (greedy). - Algoritmi sequenziali. - Ricerca locale. - Metodi basati su programmazione lineare. - Metodi basati su approccio primale-duale.

Dettagli

Flusso a Costo Minimo

Flusso a Costo Minimo Sapienza Università di Roma - Dipartimento di Ingegneria Informatica, Automatica e Gestionale Flusso a Costo Minimo Docente: Renato Bruni bruni@dis.uniroma.it Corso di: Ottimizzazione Combinatoria Dal

Dettagli

Rilassamento Lagrangiano

Rilassamento Lagrangiano Rilassamento Lagrangiano AA 2009/10 1 Rilassamento Lagrangiano Tecnica più usata e conosciuta in ottimizzazione combinatoria per il calcolo di lower/upper bounds (Held and Karp (1970)). Si consideri il

Dettagli

Nome Cognome Matricola Firma Metodi e Modelli di Ottimizzazione Discreta 1 On Line AA Appello del 21 Novembre 2008 Compito A

Nome Cognome Matricola Firma Metodi e Modelli di Ottimizzazione Discreta 1 On Line AA Appello del 21 Novembre 2008 Compito A AA 2007-2008 Appello del 21 Novembre 2008 Compito A 1. Un frantoio deve effettuare le consegne dell olio. Non possedendo i furgoni per la consegna, li deve noleggiare. Si può scegliere tra 3 furgoni, il

Dettagli

RICERCA OPERATIVA (a.a. 2016/17) Nome: Cognome: Matricola:

RICERCA 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

Dettagli

i completi l'esecuzione dell'algoritmo di programmazione dinamica per questo problema restituendo il valore ottimo e una soluzione ottima del problema

i completi l'esecuzione dell'algoritmo di programmazione dinamica per questo problema restituendo il valore ottimo e una soluzione ottima del problema Compito di Ricerca Operativa II Esercizio ( punti). ia dato il problema di flusso massimo sulla rete in figura (le capacit a degli archi sono riportate sopra di essi). 0 8 i consideri il seguente flusso

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

Problemi lineari equivalenti

Problemi lineari equivalenti Problemi lineari equivalenti Introduzione Nel seguito verranno presentati alcuni esempi di trasformazione di problemi di problemi di programmazione lineare in forme equivalenti. Un problema di programmazione

Dettagli

COMPITO DI RICERCA OPERATIVA. max 3x 1 + 2x 2 x x 2 + x 3 = 4 2x 1 + x 2 + x 4 = 3

COMPITO DI RICERCA OPERATIVA. max 3x 1 + 2x 2 x x 2 + x 3 = 4 2x 1 + x 2 + x 4 = 3 COMPITO DI RICERCA OPERATIVA ESERCIZIO 1. (7 punti) Sia dato il seguente problema di PL: max 3x 1 + 2x 2 x 1 + 1 2 x 2 + x 3 = 4 2x 1 + x 2 + x 4 = 3 Lo si risolva con l algoritmo che si ritiene più opportuno

Dettagli

Problemi di Flusso: Il modello del Trasporto

Problemi di Flusso: Il modello del Trasporto Problemi di Flusso: Il modello del rasporto Andrea Scozzari a.a. 2014-2015 April 27, 2015 Andrea Scozzari (a.a. 2014-2015) Problemi di Flusso: Il modello del rasporto April 27, 2015 1 / 25 Problemi su

Dettagli

Il problema del commesso viaggiatore e problemi di vehicle routing

Il problema del commesso viaggiatore e problemi di vehicle routing Il problema del commesso viaggiatore e problemi di vehicle routing Laura Galli Dipartimento di Informatica Largo B. Pontecorvo 3, 56127 Pisa laura.galli@unipi.it http://www.di.unipi.it/~galli 2 Dicembre

Dettagli