Assegnamento generalizzato: generazione di piani di taglio e branch-and-cut

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Assegnamento generalizzato: generazione di piani di taglio e branch-and-cut"

Transcript

1 Assegnamento generalizzato: generazione di piani di taglio e branch-and-cut Riprendiamo il problema di assegnamento generalizzato considerato a esercitazione nell esercizio 4.4: max p ij x ij s.t. i I,j J x ij 1 j J i I w ij x ij b j j J i I x ij {0,1 i I,j J. Consideriamo la specifica istanza dove P = W = Documento preparato da S. Coniglio, L. Taccari, V. Danese 1

2 b = (a) Si formuli il problema in termini di Programmazione Lineare Intera e lo si risolva mediante AMPL e CPLEX. (b) Si proponga un insieme di disuguaglianze valide per il problema. (c) Si formuli il problema di separazione per suddette disuguaglianze. (d) Si implementi un algoritmo di generazione di piani di taglio per l insieme di disuguaglianze proposte. (e) Si risolva il problema mediante l algoritmo di branch-and-cut implementato in CPLEX, valutando la differenza in numero di nodi dell albero di branch-and-bound generati nei casi in cui l introduzione di piano di taglio sia attiva (come da default di CPLEX) o completamente disabilitata. Si utilizzino i parametri di CPLEX indicati nel file ga.run. Suggerimento: si osservino le disuguaglianze singolarmente. A quale problema studiato sono riconducibili? Dato un problema (A) e un suo rilassamento (B), le disuguaglianze valide per (B) sono valide anche per (A)? Documento preparato da S. Coniglio, L. Taccari, V. Danese 2

3 Traccia di soluzione File dati ga.dat: #ga.dat param m := 10 param n := 5 param p: := param w: := param b := Documento preparato da S. Coniglio, L. Taccari, V. Danese 3

4 Segue il file ga-i.mod contenente il modello parziale della formulazione (DFJ), da completare: #ga.mod param m param n set I := 1..m set J := 1..n param p{i,j param w{i,j param b{j #Variables #Objective function #Constraints Documento preparato da S. Coniglio, L. Taccari, V. Danese 4

5 Implementazione parziale dell algoritmo di piani di taglio, file cuttingplanes-i.run: #cuttingplanes-i.run #load.mod and.dat files option solver cplex problem primal: #list vars, objective function, constraints names problem separation: #list vars, objective function, constraints names let nc := 0 param violation, default 1e300 param found, binary, default 0 repeat { solve primal for {jj in J { let j_bar := jj let {i in I x_star[i] := x[i,j_bar] let found := 0 solve separation let violation := violationobj if (violation <= 0.1) then { continue else { #add the cut to the constraints of the primal problem let found := 1 break while (found == 1) File con parametrizzazione CPLEX per l esecuzione dell algoritmo di branch-and-cut, file Documento preparato da S. Coniglio, L. Taccari, V. Danese 5

6 ga.run: #ga.run model ga.mod data ga.dat option solver cplex option cplex_options "presolve 0 \ zerohalfcuts=-1 \ mipcuts=-1 \ covercuts=-1 \ mipdisplay=5" solve display x Per abilitare la generazione della famiglia di disuguaglianze proposta si cambi la riga covercuts=-1 in covercuts=0. Documento preparato da S. Coniglio, L. Taccari, V. Danese 6

7 Soluzione (a) File di modello ga.mod: #ga.mod param m param n set I := 1..m set J := 1..n param p{i,j param w{i,j param b{j var x{i,j, binary maximize obj: sum{i in I, j in J x[i,j] * p[i,j] s.t. assignment{i in I: sum{j in J x[i,j] <= 1 s.t. knapsack{j in J: sum{i in I w[i,j]*x[i,j] <= b[j] File.run: model Lab3_ _AMPL/ga.mod data Lab3_ _AMPL/ga.dat option solver cplex solve display x option relax_integrality 1 solve display x Documento preparato da S. Coniglio, L. Taccari, V. Danese 7

8 Soluzione della formulazione di PLI e del suo rilassamento continuo: CPLEX : optimal integer solution objective MIP simplex iterations 0 branch-and-bound nodes 9 cover cuts 2 clique cuts 1 Gomory cut 3 zero-half cuts x [*,*] : := CPLEX : optimal solution objective dual simplex iterations (9 in phase I) x [*,*] : := (b) Il problema può essere visto come una generalizzazione del problema dello zaino binario, in cui si hanno J zaini con capacita b j. Considerando singolarmente le disuguaglianze del problema, possiamo quindi utilizzare delle diseguaglianze valide per il problema di zaino, ovvero le diseguaglianze di copertura (cover inequalities). Data la diseguaglianza relativa a j J w ij x ij b j, i I definiamo un insieme di copertura C, o cover, come un sottoinsieme C I tale che: w ij > b j. i C Intuitivamente, un insieme di copertura C contiene gli indici di item i che, se assegnati contemporaneamente a j, eccedono la capacità b j. E evidente quindi che, in una soluzione ammissibile, le variabili binarie associate agli indici in un insieme di copertura C non possono assumere tutte valore 1. In altre parole, data una cover C, risulta valida la Documento preparato da S. Coniglio, L. Taccari, V. Danese 8

9 corrispondente diseguaglianza di copertura x ij C 1, i C che può anche essere equivalentemente espressa come (1 x ij ) 1, indicando che almeno una delle variabili deve essere posta a 0. i C Le diseguaglianze di copertura sono valide per il problema di assegnamento, ma non per il suo rilassamento continuo. Attraverso la generazione di diseguaglianze di copertura possiamo quindi migliorare la formulazione del rilassamento continuo del problema, rendendola più stringente. (c) Per la generazione di diseguaglianze di copertura, si consideri una soluzione ottima x del rilassamento continuo. Si risolve quindi il problema di separazione che permette di trovare un insieme C I per cui la diseguaglianza di copertura non è soddisfatta da x e si aggiunge tale diseguaglianza al modello. Tale problema comporta la massimizzazione della violazione di una diseguaglianza di copertura (1 x ij ) 1, i C utilizzando delle variabili binarie α ij che indicano quali indici i appartengano alla cover C per una diseguaglianza j. In particolare, la diseguaglianza è violata se 1 i I x ijα ij > 0. Affinché l insieme definito dagli α sia effettivamente un insieme di copertura relativo alla j-esima diseguaglianza, occorre che w ij α ij > b j. i I Poichè in AMPL i vincoli vengono formulati con dei vincoli di tipo (e non >), scegliamo di esprimere la condizione con il vincolo i I w ijα ij b j +ǫ, dove ǫ > 0. Possiamo fissare ǫ = 1 per ogni j J perchè dal file ga.dat osserviamo che il minimo comune multiplo dei numeri { {w ij i I,b j è maggiore o uguale ad 1 per ogni j J (in altre parole i numeri { {wij i I,b j sono interi per ogni j J): ciò, insieme al fatto che le variabili αij sono intere, assicura che anche la differenza i I w ijα ij b j è un multiplo intero di 1. Il procedimento è iterato finché non esistono più diseguaglianze di copertura violate. Documento preparato da S. Coniglio, L. Taccari, V. Danese 9

10 (d) File di modello del rilassamento continuo predisposto per l inserimento di nuove disuguaglianze: #primal.mod param m param n set I := 1..m set J := 1..n param p{i,j param w{i,j param b{j param nc >= 0 set CUTS := 1..nc set C{CUTS within I param J_bar{CUTS symbolic within J var x{i,j, >= 0, <=1 maximize obj: sum{i in I, j in J x[i,j] * p[i,j] s.t. assignment{i in I: sum{j in J x[i,j] <= 1 s.t. knapsack{j in J: sum{i in I w[i,j]*x[i,j] <= b[j] s.t. cover_cuts{k in CUTS: sum{i in C[k] x[i,j_bar[k]] <= card(c[k]) - 1 File di modello del problema di separazione, separation.mod: #separation.mod param j_bar symbolic within J param x_star{i, >=0, <= 1 var alpha{i, binary maximize violationobj: 1 - sum{i in I ( 1 - x_star[i] ) * alpha[i] s.t. cover: sum{i in I w[i,j_bar]*alpha[i] >= b[j_bar] + 1 Documento preparato da S. Coniglio, L. Taccari, V. Danese 10

11 Implementazione completa dell algoritmo di piani di taglio, file cuttingplanes.run: #cuttingplanes.run model primal.mod model separation.mod data ga.dat option solver cplex problem primal: x, obj, assignment, knapsack, cover_cuts problem separation: alpha, violationobj, cover let nc := 0 param violation, default 1e300 param found, binary, default 0 repeat { solve primal display x for {jj in J { let j_bar := jj display nc, j_bar let {i in I x_star[i] := x[i,j_bar] let found := 0 solve separation expand display x_star, alpha let violation := violationobj if (violation <= 0.1) then { continue else { let nc := nc + 1 let C[nc] := setof{i in I: alpha[i] = 1 i let J_bar[nc] := j_bar let found := 1 display C[nc], j_bar break while (found == 1) solve primal display x display C, J_bar Documento preparato da S. Coniglio, L. Taccari, V. Danese 11

12 Soluzione ottenuta con l algoritmo dei piani di taglio: CPLEX : optimal solution objective simplex iterations (0 in phase I) x [*,*] : := nc = 15 set C[1] := set C[2] := set C[3] := set C[4] := 1 6 set C[5] := 6 set C[6] := set C[7] := set C[8] := set C[9] := 2 8 set C[10] := 2 10 set C[11] := 4 7 set C[12] := 4 9 set C[13] := 4 6 set C[14] := 7 8 set C[15] := 6 J_bar [*] := Dalla soluzione riportata nel punto a) possiamo osservare che il rilassamento continuo forniva un limite superiore sul valore ottimo pari a 595.7, mentre la formulazione con l aggiunta di disuguaglianze di copertura ne fornisce uno di 587.6, avvicinandosi al valore del problema di PLI originale: ciò conferma che questi tagli restringono la regione ammissibile individuata dal rilassamento continuo. Documento preparato da S. Coniglio, L. Taccari, V. Danese 12

13 (e) La generazione di piani di taglio può essere tipicamente usata all interno di un branch-andbound, ottenendo un metodo cosiddetto di branch-and-cut. Attivando l opzione di CPLEX che permette la generazione di diseguaglianze di copertura (cover cuts) è possibile notare la differenza di comportamento. Soluzione ottenuta disabilitando le disuguaglianze di copertura: CPLEX : optimal integer solution objective MIP simplex iterations 329 branch-and-bound nodes x [*,*] : := Soluzione ottenuta abilitando la separazione di disuguaglianze di copertura: CPLEX : optimal integer solution objective MIP simplex iterations 0 branch-and-bound nodes 14 cover cuts x [*,*] : := Osserviamo che attivando la generazione di disuguaglianze di copertura il numero di nodi dell albero di enumerazione si riduce grandemente. Ciò conferma che l aggiunta di tali disuguaglianze contribuisce a rendere più stringenti le formulazioni dei vari sottoproblemi, migliorandone i rispettivi bound e rendendo il processo di branch-and-bound più efficiente. Documento preparato da S. Coniglio, L. Taccari, V. Danese 13

Risoluzione del rilassamento continuo del problema del commesso viaggiatore

Risoluzione del rilassamento continuo del problema del commesso viaggiatore Risoluzione del rilassamento continuo del problema del commesso viaggiatore Sia G = (V,E) un grafo orientato completo, con un costo c ij R associato a ciascun arco (i, j) E. Si consideri la seguente formulazione

Dettagli

Risoluzione del rilassamento continuo del problema del commesso viaggiatore

Risoluzione del rilassamento continuo del problema del commesso viaggiatore Risoluzione del rilassamento continuo del problema del commesso viaggiatore Sia G = (V,E) un grafo orientato completo, con un costo c ij R associato a ciascun arco (i, j) E. Si consideri la seguente formulazione

Dettagli

Progetto di rete con unica sorgente e costi fissi

Progetto di rete con unica sorgente e costi fissi Progetto di rete con unica sorgente e costi fissi Si consideri la topologia di rete data dal grafo G = (V,E) in figura. Ogni nodo i V = {1...n} rappresenta un router connesso ad una rete fissa ed ogni

Dettagli

Miscelazione di benzine

Miscelazione di benzine Miscelazione di benzine Una raffineria deve miscelare 4 tipi di petrolio grezzo per ottenere 3 tipi di benzina. La tabella seguente mostra la massima quantità disponibile per ogni tipo di petrolio grezzo

Dettagli

Pianificazione Multiperiodo

Pianificazione Multiperiodo Pianificazione Multiperiodo Si vuole pianificare la produzione di tre prodotti A 1, A 2, A 3, su un orizzonte temporale di quattro mesi, da Gennaio ad Aprile. La domanda cambia non solo da un prodotto

Dettagli

Problema del Set Covering (PLI)

Problema del Set Covering (PLI) Problema del Set Covering (PLI) Una società deve decidere sulla costruzione di alcuni nuovi impianti per la depurazione di acque in un distretto di 5 città C i, i 1... 5. Ha a disposizione 12 aree A i,

Dettagli

Scopo del laboratorio

Scopo del laboratorio p. 1/1 Scopo del laboratorio Imparare ad usare programmi che implementino metodi di ottimizzazione: simplesso, branch and bound ecc. utilizzarli per risolvere un problema proposto Modellatori Solver p.

Dettagli

Ottimizzazione Combinatoria

Ottimizzazione Combinatoria Ottimizzazione Combinatoria Esercitazione AMPL A.A. 2-22 Esercitazione a cura di Silvia Canale contatto e-mail: canale@dis.uniroma.it Università i di Roma La Sapienza Dipartimento di Informatica e Sistemistica

Dettagli

Progetto e ottimizzazione di reti 2

Progetto e ottimizzazione di reti 2 Progetto e ottimizzazione di reti 2 Esercitazione AMPL A.A. 2009-2010 Esercitazione a cura di Silvia Canale contatto e-mail: canale@dis.uniroma1.it Università di Roma La Sapienza Dipartimento di Informatica

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

Progetto e ottimizzazione di reti 2

Progetto e ottimizzazione di reti 2 Progetto e ottimizzazione di reti 2 Esercitazione AMPL A.A. 29-2 Esercitazione a cura di Silvia Canale contatto e-mail: canale@dis.uniroma.it Università di Roma La Sapienza Dipartimento di Informatica

Dettagli

TSP con eliminazione di sottocicli

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

Dettagli

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

5.3 Tagli di Chvàtal-Gomory per il problema della massima clique

5.3 Tagli di Chvàtal-Gomory per il problema della massima clique 5.1 Posizionamento di aeroporti hub Nel trasporto aereo non ci sono connessioni dirette tra ogni coppia di aeroporti. Ad esempio, i passeggeri dei viaggi intercontinentali in partenza da aeroporti minori

Dettagli

TSP con eliminazione di sottocicli

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

Dettagli

Ottimizzazione Combinatoria

Ottimizzazione Combinatoria Ottimizzazione Combinatoria Esercitazione AMPL A.A. 2009-2010 Esercitazione a cura di Silvia Canale contatto e-mail: canale@dis.uniroma1.it Università di Roma La Sapienza Dipartimento di Informatica e

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

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

Algoritmi generali per PLI

Algoritmi generali per PLI Programmazione Lineare Intera: II Algoritmo Cutting Planes Daniele Vigo D.E.I.S. Università di Bologna dvigo@deis.unibo.it rev.. ottobre Algoritmi generali per PLI Metodi esatti tradizionali (anni 6 oggi):

Dettagli

Ottimizzazione Combinatoria

Ottimizzazione Combinatoria Ottimizzazione Combinatoria Esercitazione AMPL A.A. 2010-20112011 Esercitazione a cura di Silvia Canale contatto e-mail: canale@dis.uniroma1.it Università i di Roma La Sapienza Dipartimento di Informatica

Dettagli

Metodi e Modelli per l Ottimizzazione Combinatoria Cover inequalities

Metodi e Modelli per l Ottimizzazione Combinatoria Cover inequalities Metodi e Modelli per l Ottimizzazione Combinatoria Cover inequalities L. De Giovanni M. Di Summa In questa lezione introdurremo una classe di disuguaglianze, dette cover inequalities, che permettono di

Dettagli

Ottimizzazione Combinatoria

Ottimizzazione Combinatoria Ottimizzazione Combinatoria Esercitazione AMPL A.A. 2-22 Esercitazione a cura di Silvia Canale contatto e-mail: canale@dis.uniroma.it Università i di Roma La Sapienza Dipartimento di Informatica e Sistemistica

Dettagli

Problemi di Localizzazione Impianti

Problemi di Localizzazione Impianti Sapienza Sapienza Università di Roma - Dipartimento di Ingegneria Informatica, Automatica e Gestionale Problemi di Localizzazione Impianti Renato Bruni bruni@dis.uniroma1.it Il materiale presentato è derivato

Dettagli

126 APPROFONDIMENTI SUI PARAMETRI. SCRIPT IN AMPL

126 APPROFONDIMENTI SUI PARAMETRI. SCRIPT IN AMPL 126 APPROFONDIMENTI SUI PARAMETRI. SCRIPT IN AMPL Esempio 8.3.2 Una fabbrica produce divani in tessuto acquistando da un magazzino all ingrosso i quantitativi di tessuto che gli occorrono settimanalmente.

Dettagli

Problema del Trasporto

Problema del Trasporto Problema del Trasporto Una ditta di trasporto deve trasferire container vuoti dai propri 6 Magazzini, situati a Verona, Perugia, Roma, Pescara, Taranto e Lamezia, ai principali Porti nazionali (Genova,

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

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

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

Prima prova Intermedia di Ricerca Operativa 2 COMPITO A Esercizio 1 (7 punti): LIFO

Prima prova Intermedia di Ricerca Operativa 2 COMPITO A Esercizio 1 (7 punti): LIFO Prima prova Intermedia di Ricerca Operativa 2 COMPITO A 13 novembre 2015 Nome e Cognome Matricola: Esercizio 1 (7 punti): Si consideri il seguente problema di programmazione lineare intera. max 32x 1 +

Dettagli

Esercizi sulla Programmazione Lineare Intera

Esercizi sulla Programmazione Lineare Intera Soluzioni 4.7-4.0 Fondamenti di Ricerca Operativa Prof. E. Amaldi Esercizi sulla Programmazione Lineare Intera 4.7 Algoritmo del Simplesso Duale. Risolvere con l algoritmo del simplesso duale il seguente

Dettagli

Algoritmo Branch and Cut (B&C)

Algoritmo Branch and Cut (B&C) Programmazione Lineare Intera: III Algoritmo Branch and Cut Daniele Vigo DEIS Università di Bologna dvigo@deisuniboit rev.0 aprile 2005 Algoritmo Branch and Cut (B&C) Sviluppato negli anni 90, nasce come

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

Uso del linguaggio di modellazione AMPL

Uso del linguaggio di modellazione AMPL Sapienza Sapienza Universitàdi Roma - Dipartimento di Ingegneria Informatica, Automatica e Gestionale Uso del linguaggio di modellazione AMPL Renato Bruni bruni@dis.uniroma1.it www.dis.uniroma1.it/~bruni

Dettagli

La Ricerca Operativa ha lo scopo di fornire un supporto scientifico alle decisioni che si può sintetizzare nei seguenti passi fondamentali:

La Ricerca Operativa ha lo scopo di fornire un supporto scientifico alle decisioni che si può sintetizzare nei seguenti passi fondamentali: Ricerca Operativa La Ricerca Operativa ha lo scopo di fornire un supporto scientifico alle decisioni che si può sintetizzare nei seguenti passi fondamentali: 1 Definizione del problema: c è un sistema

Dettagli

4.1 Localizzazione e pianificazione delle base station per le reti UMTS

4.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),

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

Programmazione Lineare Intera. Programmazione Lineare Intera p. 1/4

Programmazione Lineare Intera. Programmazione Lineare Intera p. 1/4 Programmazione Lineare Intera Programmazione Lineare Intera p. 1/4 Programmazione Lineare Intera Problema di PLI in forma standard: max cx Ax = b x 0, x I n I insieme degli interi. Regione ammissibile:

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

città

città Esercitazione 11-4-18 Esercizio 1. Si consideri il problema di trovare il ciclo hamiltoniano di costo minimo su una rete di 5 città, le cui distanze reciproche sono indicate in tabella: città 2 3 4 5 1

Dettagli

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

COMPITO DI RICERCA OPERATIVA. max 5 2x 1 + 3x 2 x 3 = 2 + x 1 5x 2 x 4 = 5 + x 2. x 5 = 1 + x 1 x 2 COMPITO DI RICERCA OPERATIVA ESERCIZIO. ( punti) La riformulazione di un problema di PL rispetto alla base B = {x, x, x } è la seguente: max 2x + x 2 x = 2 + x x 2 x = + x 2 x = 2 + x + x 2 x, x 2, x,

Dettagli

AMPL: Risoluzione di Problemi Nonlineari

AMPL: Risoluzione di Problemi Nonlineari Dipartimento di Matematica Università di Padova Corso di Laurea Matematica Outline Risoluzione Problemi Non Lineari Generazione Sequenza Randomica investimenti2.run # cancella eventuali dati memorizzati

Dettagli

COMPITO DI RICERCA OPERATIVA. min 2x 1 x 2 + x 3 x 4 x 1 x 2 + x 3 + x 4 = 5 x 1 + x 2 + x 3 3. x 1, x 2, x 3, x 4, x 5 I

COMPITO DI RICERCA OPERATIVA. min 2x 1 x 2 + x 3 x 4 x 1 x 2 + x 3 + x 4 = 5 x 1 + x 2 + x 3 3. x 1, x 2, x 3, x 4, x 5 I COMPITO DI RICERCA OPERATIVA ESERCIZIO. (8 punti) Sia dato il seguente problema di PL: min x x + x x 4 x x + x + x 4 = 5 x + x + x x, x, x, x 4 0 Lo si trasformi in forma standard ( punto). Si determini

Dettagli

Esame di Ricerca Operativa del 08/09/17

Esame di Ricerca Operativa del 08/09/17 Esame di Ricerca Operativa del 08/09/ (Cognome) (Nome) (Numero di Matricola) Esercizio. Una dieta giornaliera consiste di tre cibi C, C e C, che vengono assunti nella quantità complessiva di 00 grammi.

Dettagli

Esame di Ricerca Operativa del 18/06/18

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

Dettagli

Soluzione di problemi di Programmazione Lineare Intera

Soluzione di problemi di Programmazione Lineare Intera 10 Soluzione di problemi di Programmazione Lineare Intera 10.1 ESERCIZI SULLA SOLUZIONE DI PROBLEMI DI PROGRAMMAZIONE LINEARE INTERA Esercizio 10.1.1 Risolvere con il metodo del Branch and Bound il seguente

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

Appunti delle Esercitazioni di Ottimizzazione V.O. AMPL: A Mathematical Programming Language

Appunti delle Esercitazioni di Ottimizzazione V.O. AMPL: A Mathematical Programming Language Appunti delle Esercitazioni di Ottimizzazione V.O. AMPL: A Mathematical Programming Language a cura di G. Liuzzi and V. Piccialli a.a. 2004-2005 liuzzi@dis.uniroma1.it, http://www.dis.uniroma1.it/ liuzzi

Dettagli

Ottimizzazione Combinatoria

Ottimizzazione Combinatoria Ottimizzazione Combinatoria Esercitazione AMPL A.A. 29-2 Esercitazione a cura di Silvia Canale contatto e-mail: canale@dis.uniroma.it Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica

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 euristiche greedy

Tecniche euristiche greedy Tecniche euristiche greedy PRTLC - Schema delle esercitazioni Come ricavare la soluzione ottima Modelli Solver commerciali Schema delle esercitazioni Come ricavare la soluzione ottima Modelli Solver commerciali

Dettagli

Esame di Ricerca Operativa del 05/09/18

Esame di Ricerca Operativa del 05/09/18 Esame di Ricerca Operativa del 0/09/8 (Cognome) (Nome) (Numero di Matricola) Esercizio. Un azienda agricola produce mensilmente 0 ettolitri di olio (O) e 0 ettolitri di vino (V) che vengono venduti all

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

Appunti delle Esercitazione di Ricerca Operativa AMPL Plus v1.6

Appunti delle Esercitazione di Ricerca Operativa AMPL Plus v1.6 Appunti delle Esercitazione di Ricerca Operativa AMPL Plus v1.6 acuradig.liuzzi a.a. 2001-2002 1 Uso di variabili e parametri a 3 o più dimensioni: un modello di pianificazione Negli esempi precedenti

Dettagli

Il Branch & Bound. Definizione 1. Sia S R n. La famiglia S = {S 1, S 2,..., S k S} tale che S 1 S 2 S k = S viene detta suddivisione di S.

Il Branch & Bound. Definizione 1. Sia S R n. La famiglia S = {S 1, S 2,..., S k S} tale che S 1 S 2 S k = S viene detta suddivisione di S. Il Branch & Bound Il metodo Branch & Bound è una tecnica che permette di risolvere all ottimo un generico problema di Programmazione Lineare Intera. Tale metodo si basa su due concetti cardine: quello

Dettagli

Altri esempi e introduzione alla Programmazione Lineare Intera

Altri esempi e introduzione alla Programmazione Lineare Intera 5 Altri esempi e introduzione alla Programmazione Lineare Intera Prima di introdurre i modelli di Programmazione Lineare Intera, vediamo un altro esempio di implementazione in AMPL di un modello di Programmazione

Dettagli

Esame di Ricerca Operativa del 03/09/2015

Esame di Ricerca Operativa del 03/09/2015 Esame di Ricerca Operativa del 0/09/201 (Cognome) (Nome) (Matricola) Esercizio 1. Una raffineria di petrolio miscela tipi di greggio per ottenere tipi di carburante: senza piombo, diesel e blu diesel.

Dettagli

Esame di Ricerca Operativa del 07/09/2016

Esame di Ricerca Operativa del 07/09/2016 Esame di Ricerca Operativa del 0/09/201 (Cognome) (Nome) (Matricola) Esercizio 1. Un industria chimica produce due tipi di fertilizzanti (A e B) la cui lavorazione è affidata ai reparti di produzione e

Dettagli

Contenuto e scopo presentazione. Modelli Lineari Interi/Misti. Piani di taglio. Piani di taglio. Piani di taglio Versione 31/08/

Contenuto e scopo presentazione. Modelli Lineari Interi/Misti. Piani di taglio. Piani di taglio. Piani di taglio Versione 31/08/ Contenuto e scopo presentazione Contenuto: viene presentato un altro metodo di soluzione di problemi di ILP o di MILP. Modelli Lineari Interi/Misti Piani di taglio Versione /8/. Scopo: fornire le capacità

Dettagli

Gestione Impresa. Mese 1 2 3 4 5 6 Unità richieste 700 600 500 800 900 800

Gestione Impresa. Mese 1 2 3 4 5 6 Unità richieste 700 600 500 800 900 800 Gestione Impresa Un impresa di produzione produce un solo tipo di merce. Ci sono 40 operai, ciascuno dei quali produce 20 unità di merce al mese. La domanda fluttua nel corso di un semestre secondo la

Dettagli

Pianificazione di Produzione in DEC

Pianificazione di Produzione in DEC Pianificazione di Produzione in DEC L esempio considerato qui è un problema reale che la Digital Equipment Corporation (DEC) ha dovuto affrontare nell autunno del 1988 per preparare la pianificazione di

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

Esame di Ricerca Operativa del 12/02/18. P 1 P 2 P 3 P 4 P 5 P 6 Peso bagaglio km di viaggio

Esame di Ricerca Operativa del 12/02/18. P 1 P 2 P 3 P 4 P 5 P 6 Peso bagaglio km di viaggio Esame di Ricerca Operativa del /0/8 (Cognome) (Nome) (Numero di Matricola) Esercizio. L autista di un taxi puo trasportare al massimo persone richiedendo a ciascuna Euro a km per il viaggio. Fanno richiesta

Dettagli

Modelli di Programmazione Lineare Intera

Modelli di Programmazione Lineare Intera 6 Modelli di Programmazione Lineare Intera Come è noto, quando tutte le variabili di un problema di Programmazione Lineare sono vincolate ad assumere valori interi, si parla di Programmazione Lineare Intera.

Dettagli

Esame di Ricerca Operativa del 19/01/2016

Esame di Ricerca Operativa del 19/01/2016 Esame di Ricerca Operativa del 19/01/201 (Cognome) (Nome) (Matricola) Esercizio 1. Una banca offre ai suoi clienti diversi tipi di prestito: mutuo casa, credito auto, credito famiglia, che rendono un interesse

Dettagli

Esame di Ricerca Operativa del 06/02/17

Esame di Ricerca Operativa del 06/02/17 Esame di Ricerca Operativa del 0/0/ (Cognome) (Nome) (Numero d Matricola) Esercizio. Uno studente vuole definire un piano di studio settimanale per preparare gli esami A, B e C, massimizzando le ore (h)

Dettagli

Esame di Ricerca Operativa del 11/07/2016

Esame di Ricerca Operativa del 11/07/2016 Esame di Ricerca Operativa del /0/01 (Cognome) (Nome) (Matricola) Esercizio 1. Un erboristeria vuole produrre una nuova tisana utilizzando tipi di tisane già in commercio. Tali tisane sono per lo più composte

Dettagli

Esame di Ricerca Operativa del 16/07/18

Esame di Ricerca Operativa del 16/07/18 Esame di Ricerca Operativa del /0/8 (Cognome) (Nome) (Numero di Matricola) Esercizio. Un terreno agricolo è costituito dalla miscela di tre tipi di terra T, T e T. Da un analisi di laboratorio viene rilevata,

Dettagli

Esame di Ricerca Operativa del 11/02/2015

Esame di Ricerca Operativa del 11/02/2015 Esame di Ricerca Operativa del /0/0 (Cognome) (Nome) (Matricola) Esercizio. Un azienda produce tipi di TV (, 0, 0 e pollici) ed è divisa in stabilimenti (A e B). L azienda dispone di 0 operai in A e 0

Dettagli

Soluzione dei problemi di Programmazione Lineare Intera

Soluzione dei problemi di Programmazione Lineare Intera Fondamenti di Ricerca Operativa T-A a.a. 2014-2015 Soluzione dei problemi di Programmazione Lineare Intera Andrea Lodi, Enrico Malaguti, Daniele Vigo rev. 1.1.a ottobre 2014 Fondamenti di Ricerca Operativa

Dettagli

Esame di Ricerca Operativa del 15/01/2015

Esame di Ricerca Operativa del 15/01/2015 Esame di Ricerca Operativa del 1/01/01 (Cognome) (Nome) (Matricola) Esercizio 1. Un azienda produce palloni da basket e da calcio che vende rispettivamente a 1 e euro. L azienda compra ogni settimana 00

Dettagli

Esame di Ricerca Operativa del 15/01/2015

Esame di Ricerca Operativa del 15/01/2015 Esame di Ricerca Operativa del 1/01/201 (Cognome) (Nome) (Matricola) Esercizio 1. Un azienda produce palloni da calcio e da basket che vende a 1 e 20 euro rispettivamente. L azienda compra ogni settimana

Dettagli

Esame di Ricerca Operativa del 19/01/2016

Esame di Ricerca Operativa del 19/01/2016 Esame di Ricerca Operativa del 9/0/06 (Cognome) (Nome) (Matricola) Esercizio. Una banca offre ai suoi clienti diversi tipi di prestito: mutuo casa, credito auto, credito famiglia, che rendono un interesse

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

Problemi di localizzazione di servizi (Facility Location Problems)

Problemi di localizzazione di servizi (Facility Location Problems) 9. Problemi di Localizzazione di Servizi 1 Problemi di localizzazione di servizi (Facility Location Problems) Dato un insieme di clienti richiedenti una data domanda di merce e dato un insieme di possibili

Dettagli

Esame di Ricerca Operativa del 16/06/2015

Esame di Ricerca Operativa del 16/06/2015 Esame di Ricerca Operativa del 1/0/01 (Cognome) (Nome) (Matricola) Esercizio 1. Una ditta produce vernici in tre diversi stabilimenti (Pisa, Cascina, Empoli) e le vende a tre imprese edili (A, B, C). Il

Dettagli

Esame di Ricerca Operativa del 21/06/17

Esame di Ricerca Operativa del 21/06/17 Esame di Ricerca Operativa del /0/7 (Cognome) (Nome) (Numero di Matricola) Esercizio. Un azienda vinicola produce tre qualitá di vino Q, Q, Q che vende ad un prezzo di 0E, 0E, 0E ad ettolitro, rispettivamente

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

ESAME di OTTIMIZZAZIONE - Compito A Corso di Laurea in Ingegneria Gestionale 2 o anno

ESAME di OTTIMIZZAZIONE - Compito A Corso di Laurea in Ingegneria Gestionale 2 o anno ESAME di OTTIMIZZAZIONE 12 gennaio pomeriggio 2005 ESAME di OTTIMIZZAZIONE - Compito A Corso di Laurea in Ingegneria Gestionale 2 o anno Cognome : Nome : VALUTAZIONE Per gli esercizi 1,2,3,4 le risposte

Dettagli

3.4 Metodo di Branch and Bound

3.4 Metodo di Branch and Bound 3.4 Metodo di Branch and Bound Consideriamo un generico problema di Ottimizzazione Discreta dove X è la regione ammissibile. (P ) z = max{c(x) : x X} Metodologia generale di enumerazione implicita (Land

Dettagli

Esame di Ricerca Operativa. x 1 +2 x 2 6 x 1 +x 2 6 x 1 4 x 1 1

Esame di Ricerca Operativa. x 1 +2 x 2 6 x 1 +x 2 6 x 1 4 x 1 1 Esame di Ricerca Operativa (Cognome) (Nome) (Corso di laurea) Esercizio. Completare la seguente tabella considerando il problema di programmazione lineare: max x + x x +x x 0 x + x x +x x x Base Soluzione

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

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

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

Fac-simile dell esame di Ricerca Operativa. max 7 x 1 2 x 2 3 x 1 +x 2 2 x 1 2 x 2 3 x x 1 +x x 1 x 2 5

Fac-simile dell esame di Ricerca Operativa. max 7 x 1 2 x 2 3 x 1 +x 2 2 x 1 2 x 2 3 x x 1 +x x 1 x 2 5 Fac-simile dell esame di Ricerca Operativa (Cognome) (Nome) (Numero di Matricola) Esercizio. Completare la seguente tabella considerando il problema di programmazione lineare: max x x x +x x x x x +x x

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

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

ISTRUZIONI A B K A, B, K A<B? SI A<B? SI A<B? SI

ISTRUZIONI A B K A, B, K A<B? SI A<B? SI A<B? SI SECONDA PARTE 6. LA RIPETIZIONE while ISTRUZIONI A B K A, B, K 0 10 0 While A

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

Strumenti software per la soluzione di problemi di PL e PLI

Strumenti software per la soluzione di problemi di PL e PLI Strumenti software per la soluzione di problemi di PL e PLI Fabrizio Marinelli marinelli@di.univaq.it Università degli Studi dell Aquila Pescara, 2 dicembre 2004 www.oil.di.univaq.it Agenda L OTTIMIZZAZIONE

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

Problema del Trasporto. Container vuoti Verona 10 Perugia 12 Roma 20 Pescara 24 Taranto 18 Lamezia 40

Problema del Trasporto. Container vuoti Verona 10 Perugia 12 Roma 20 Pescara 24 Taranto 18 Lamezia 40 Problema del Trasporto Una ditta di trasporto deve trasferire container vuoti dai propri 6 Magazzini, situati a Verona, Perugia, Roma, Pescara, Taranto e Lamezia, ai principali Porti nazionali (Genova,

Dettagli

Branch and Bound. Branch and Bound p. 1/3

Branch and Bound. Branch and Bound p. 1/3 Branch and Bound Branch and Bound p. 1/3 Branch-and-bound Un esempio di problema di PLI: P 0 : max x 1 + 3x 2 (u 1 ) x 1 1 2 (u 2 ) 5x 1 + 3x 2 5 (u 3 ) x 1 + 7 5 x 2 13 2 x 1,x 2 0 x 1,x 2 I Branch and

Dettagli

Ottimizzazione dei Sistemi Complessi

Ottimizzazione dei Sistemi Complessi 1 Martedì 17 Maggio 2016 1 Istituto di Analisi dei Sistemi ed Informatica IASI - CNR Programmazione con incertezza Una società di autonoleggio dispone (attualmente, oggi) di 50 macchine tutte dislocate

Dettagli