Ricerca Operativa e Logistica

Размер: px
Начинать показ со страницы:

Download "Ricerca Operativa e Logistica"

Транскрипт

1 Ricerca Operativa e Logistica Dott. F.Carrabs e Dott.ssa M.Gentili A.A. 2011/2012 Lezione 7: Analisi di Sensitività con AMPL

2 Esempio : Il caseificio Un caseificio vuole pianificare la produzione giornaliera di burro, ricotta e mozzarella avendo a disposizione 7 operai e 120 litri di latte. La massima domanda di ciascun prodotto è di 9, 23 e 18 Kg rispettivamente. La quantità di latte richiesta per ogni Kg di prodotto è rispettivamente di 20, 2 e 5 litri. Ciascuno operaio può produrre ognuno dei 3 prodotti e la massima quantità che produrrebbe se si occupasse solamente di uno di essi è rispettivamente di 2, 7 e 3 Kg. Infine il prezzo di vendita per ogni Kg di prodotto è di 2.5, 1.1 e 2 euro. Rispondere alle seguenti domande: 1. Formulare un modello AMPL per determinare il piano di produzione che massimizza il guadagno totale. 2. Quali vincoli di domanda sono attivi? 3. Conoscendo i valori delle variabili di slack dei vincoli di domanda che cosa si può dire sui prezzi ombra? 4. Quali sono le risorse scarse e quali quelle abbondanti? 5. Su quale risorsa mi conviene investire? Perché? 6. Di quanto aumenta il profitto: Ø se portiamo a 130 i litri di latte disponibili? Ø se portiamo la domanda massima della ricotta a 28? Ø se riduciamo a 6 gli operai? 9. Di quanto dovrebbe aumentare il guadagno unitario del burro per iniziare a produrlo? 10. Il caseificio vuole valutare la possibilità di produrre panna. Sapendo che la produzione di 1Kg di panna richiede 15 litri e che ogni operaio può produrre al massimo una quota di 4 Kg di panna, a partire da quale prezzo conviene iniziare a produrla? Si assuma che non ci siano limiti di domanda. 11. Quali sono i range di variabilità dei coefficienti di costo entro i quali la base ottima non cambia? 12. Quali sono i range di variabilità dei termini noti entro i quali la base ottima non cambia?

3 Caseificio: modello matematico max2.5x B +1.1x R + 2x M s.t. 20x B + 2x R + 5x M! x B x R x M! 7 x B! 9 x R! 23 x M!18 x i " 0 Latte disponibile Vincolo sugli operai Vincoli di domanda Risorse disponibili

4 Caseificio: file.mod set PRODOTTI; var x{prodotti} >=0; param prezzo_vendita{prodotti}; param b_max_domanda{prodotti}; param A_richiesta_latte{PRODOTTI}; param A_richiesta_operai{PRODOTTI}; param b_latte_disp; param b_operai_disp; max2.5x B +1.1x R + 2x M s.t. 20x B + 2x R + 5x M! x B x R x M! 7 x B! 9 x R! 23 x M!18 x i " 0 Latte disponibile Vincolo sugli operai Vincoli di domanda maximize profitto: sum{i in PRODOTTI} prezzo_vendita[i]*x[i]; s.t. latte_disponibile: sum{i in PRODOTTI} A_richiesta_latte[i]*x[i]<=b_latte_disp; s.t. vinc_max_domanda {i in PRODOTTI}: x[i] <=b_max_domanda[i]; s.t. operai_disponibili: sum{i in PRODOTTI} A_richiesta_operai[i]*x[i] <=b_operai_disp;

5 Caseificio: file.dat set PRODOTTI:= BURRO RICOTTA MOZZARELLA; param prezzo_vendita:= BURRO 2.5 RICOTTA 1.1 MOZZARELLA 2; param b_max_domanda:= BURRO 9 RICOTTA 23 MOZZARELLA 18; param A_richiesta_latte:= BURRO 20 RICOTTA 2 MOZZARELLA 5; param A_richiesta_operai:= BURRO 0.5 RICOTTA MOZZARELLA ; param b_latte_disp:=120; param b_operai_disp:=7; (.run) max2.5x B +1.1x R + 2x M s.t. 20x B + 2x R + 5x M! x B x R x M! 7 x B! 9 x R! 23 x M!18 x i " 0 Latte disponibile Vincolo sugli operai Vincoli di domanda reset; option solver cplex; option cplex_options 'sensitivity timing=1'; options presolve 0; model./example/caseificio.mod; data./example/caseificio.dat; solve; display solve_result; display x;

6 Caseificio: risultati del solver ampl: include./example/caseificio.run; CPLEX : sensitivity timing=1 Times (seconds): Input = 0 Solve = 0 Output = Tempo impiegato per risolvere il problema CPLEX : optimal solution; obective dual simplex iterations (0 in phase I) Valore ottimo suffix up OUT; suffix down OUT; suffix current OUT; solve_result = solved Risultato del solver x [*] := BURRO 0 MOZZARELLA RICOTTA 23; Soluzione ottima

7 . solve_result = solved Caseificio: risultati del solver option solve_result_table '\ 0 solved\ 100 solved?\ 200 infeasible\ 300 unbounded\ 400 limit\ 500 failure\ '; number string interpretation 0-99 solved optimal solution found solved? optimal solution indicated, but error likely infeasible constraints cannot be satisfied unbounded obective can be improved without limit limit stopped by a limit that you set (such as on iterations) failure stopped by an error condition in the solver routines

8 Caseificio: risultati del solver (.run) reset; option solver cplex; option cplex_options 'sensitivity timing=1 timelimit=0 iterations=100'; options presolve 0; model./example/caseificio.mod; data./example/caseificio.dat; solve; display solve_result; display x;

9 Richiami di Ricerca Operativa Se il problema ammette ottimo finito allora: l Il punto di ottimo coincide con un vertice della regione ammissibile, i.e. 1 esiste una soluzione di base ammissibile x B = A b e x B N = 0 in cui la funzione obiettivo assume valore ottimo. l Il valore della funzione obiettivo è pari a: con z = c B A 1 B a 1 B * z = c A b + ( c z ) x B N l Condizione di ottimalità di una sol. di base ammissibile: Problema di minimo: c z 0 N Problema di massimo: c z 0 N T T 1 l Dal teorema della dualità forte si ha che w = c e quindi: B AB * T T z = w b + ( c z ) x e z = w a N

10 Caseificio: vincoli attivi set PRODOTTI; var x{prodotti} >=0; param prezzo_vendita{prodotti}; param b_max_domanda{prodotti}; param A_richiesta_latte{PRODOTTI}; param A_richiesta_operai{PRODOTTI}; param b_latte_disp; param b_operai_disp; maximize profitto: sum{i in PRODOTTI} prezzo_vendita[i]*x[i]; s.t. latte_disponibile: sum{i in PRODOTTI} A_richiesta_latte[i]*x[i]<=b_latte_disp; s.t. vinc_max_domanda {i in PRODOTTI}: x[i] <=b_max_domanda[i]; s.t. operai_disponibili: sum{i in PRODOTTI} A_richiesta_operai[i]*x[i] <=b_operai_disp; Quali vincoli di domanda sono attivi? ampl: display vinc_max_domanda.slack; vinc_max_domanda.slack [*] := BURRO 9 MOZZARELLA RICOTTA 0; Solo il vincolo associato alla ricotta. Conoscendo i valori delle variabili di slack dei vincoli di domanda che cosa si può dire sui prezzi ombra?

11 Caseificio: prezzi ombra set PRODOTTI; var x{prodotti} >=0; param prezzo_vendita{prodotti}; param b_max_domanda{prodotti}; param A_richiesta_latte{PRODOTTI}; param A_richiesta_operai{PRODOTTI}; param b_latte_disp; param b_operai_disp; maximize profitto: sum{i in PRODOTTI} prezzo_vendita[i]*x[i]; s.t. latte_disponibile: sum{i in PRODOTTI} A_richiesta_latte[i]*x[i]<=b_latte_disp; s.t. vinc_max_domanda {i in PRODOTTI}: x[i] <=b_max_domanda[i]; s.t. operai_disponibili: sum{i in PRODOTTI} A_richiesta_operai[i]*x[i] <=b_operai_disp; Conoscendo i valori delle variabili di slack dei vincoli di domanda che cosa si può dire sui prezzi ombra? ampl: display vinc_max_domanda; vinc_max_domanda [*] := BURRO 0 MOZZARELLA 0 RICOTTA ; Il prezzo ombra sia del burro che della mozzarella sono nulli mentre quello della ricotta è diverso da zero.

12 Caseificio: risorse scarse ed abbondanti set PRODOTTI; var x{prodotti} >=0; param prezzo_vendita{prodotti}; param b_max_domanda{prodotti}; param A_richiesta_latte{PRODOTTI}; param A_richiesta_operai{PRODOTTI}; param b_latte_disp; param b_operai_disp; maximize profitto: sum{i in PRODOTTI} prezzo_vendita[i]*x[i]; s.t. latte_disponibile: sum{i in PRODOTTI} A_richiesta_latte[i]*x[i]<=b_latte_disp; s.t. vinc_max_domanda {i in PRODOTTI}: x[i] <=b_max_domanda[i]; s.t. operai_disponibili: sum{i in PRODOTTI} A_richiesta_operai[i]*x[i] <=b_operai_disp; Quali sono le risorse scarse e quali quelle abbondanti? ampl: display latte_disponibile.slack,operai_disponibili.slack; latte_disponibile.slack = operai_disponibili.slack = 0 Il latte è una risorsa abbondante mentre gli operai sono una risorsa scarsa

13 Caseificio: prezzi ombra set PRODOTTI; var x{prodotti} >=0; param prezzo_vendita{prodotti}; param b_max_domanda{prodotti}; param A_richiesta_latte{PRODOTTI}; param A_richiesta_operai{PRODOTTI}; param b_latte_disp; param b_operai_disp; maximize profitto: sum{i in PRODOTTI} prezzo_vendita[i]*x[i]; s.t. latte_disponibile: sum{i in PRODOTTI} A_richiesta_latte[i]*x[i]<=b_latte_disp; s.t. vinc_max_domanda {i in PRODOTTI}: x[i] <=b_max_domanda[i]; s.t. operai_disponibili: sum{i in PRODOTTI} A_richiesta_operai[i]*x[i] <=b_operai_disp; Su quale risorsa mi conviene investire? Perché? ampl: display latte_disponibile,operai_disponibili latte_disponibile = 0 operai_disponibili =

14 Caseificio: prezzi ombra set PRODOTTI; var x{prodotti} >=0; param prezzo_vendita{prodotti}; param b_max_domanda{prodotti}; param A_richiesta_latte{PRODOTTI}; param A_richiesta_operai{PRODOTTI}; param b_latte_disp; param b_operai_disp; maximize profitto: sum{i in PRODOTTI} prezzo_vendita[i]*x[i]; s.t. latte_disponibile: sum{i in PRODOTTI} A_richiesta_latte[i]*x[i]<=b_latte_disp; s.t. vinc_max_domanda {i in PRODOTTI}: x[i] <=b_max_domanda[i]; s.t. operai_disponibili: sum{i in PRODOTTI} A_richiesta_operai[i]*x[i] <=b_operai_disp; Di quanto aumenta il profitto: Ø se portiamo a 130 i litri di latte disponibili? Ø se portiamo la domanda massima della ricotta a 28? Ø se riduciamo a 6 gli operai? ampl: display latte_disponibile,vinc_max_domanda,operai_disponibili; latte_disponibile = 0 vinc_max_domanda [*] := BURRO 0 MOZZARELLA 0 RICOTTA ; operai_disponibili =

15 Caseificio: variazione coefficienti di costo set PRODOTTI; var x{prodotti} >=0; param prezzo_vendita{prodotti}; param b_max_domanda{prodotti}; param A_richiesta_latte{PRODOTTI}; param A_richiesta_operai{PRODOTTI}; param b_latte_disp; param b_operai_disp; maximize profitto: sum{i in PRODOTTI} prezzo_vendita[i]*x[i]; s.t. latte_disponibile: sum{i in PRODOTTI} A_richiesta_latte[i]*x[i]<=b_latte_disp; s.t. vinc_max_domanda {i in PRODOTTI}: x[i] <=b_max_domanda[i]; s.t. operai_disponibili: sum{i in PRODOTTI} A_richiesta_operai[i]*x[i] <=b_operai_disp; Di quanto dovrebbe aumentare il guadagno unitario del burro per iniziare a produrlo? T * z = w b + ( c z ) x N ampl: display x['burro'].rc; x['burro'].rc =

16 Caseificio: introduzione nuovo prodotto set PRODOTTI; var x{prodotti} >=0; param prezzo_vendita{prodotti}; param b_max_domanda{prodotti}; param A_richiesta_latte{PRODOTTI}; param A_richiesta_operai{PRODOTTI}; param b_latte_disp; param b_operai_disp; maximize profitto: sum{i in PRODOTTI} prezzo_vendita[i]*x[i]; s.t. latte_disponibile: sum{i in PRODOTTI} A_richiesta_latte[i]*x[i]<=b_latte_disp; s.t. vinc_max_domanda {i in PRODOTTI}: x[i] <=b_max_domanda[i]; s.t. operai_disponibili: sum{i in PRODOTTI} A_richiesta_operai[i]*x[i] <=b_operai_disp; Il caseificio vuole valutare la possibilità di produrre panna. Sapendo che la produzione di 1Kg di panna richiede 15 litri di latte e che ogni operaio può produrre al massimo una quota di 4 Kg di panna, qual è il prezzo minimo a cui bisogna vendere la panna affinchè sia conveniente produrla? Si assuma che non ci siano vincoli di domanda. T * z = w b + ( c z ) x N z = w T a ampl: display latte_disponibile,operai_disponibili; latte_disponibile = 0 operai_disponibili = Basta imporre c p >wa p = 0* *1/4=1,5015

17 Caseificio: range coefficienti di costo set PRODOTTI; var x{prodotti} >=0; param prezzo_vendita{prodotti}; param b_max_domanda{prodotti}; param A_richiesta_latte{PRODOTTI}; param A_richiesta_operai{PRODOTTI}; param b_latte_disp; param b_operai_disp; maximize profitto: sum{i in PRODOTTI} prezzo_vendita[i]*x[i]; s.t. latte_disponibile: sum{i in PRODOTTI} A_richiesta_latte[i]*x[i]<=b_latte_disp; s.t. vinc_max_domanda {i in PRODOTTI}: x[i] <=b_max_domanda[i]; s.t. operai_disponibili: sum{i in PRODOTTI} A_richiesta_operai[i]*x[i] <=b_operai_disp; Quali sono i range di variabilità dei coefficienti di costo entro i quali la base ottima non cambia? ampl: display x.up, x.down; : x.up x.down := BURRO e+20 MOZZARELLA RICOTTA 1e ; Se porto il prezzo di vendita del burro ad un valore superiore ai euro cambia la base ottima. Invece il prezzo può essere decrementato all infinito senza mai cambiare la base ottima. VERIFICHIAMOLO!!!

18 Caseificio: variabili in e fuori base Lo stato delle variabili al termine della risoluzione può essere mostrato tramite il suffisso.sstatus. La seguente tabella mostra quali possono essere i vari stati di una variabile: ampl: option sstatus_table; option sstatus_table '\ 0 none no status assigned\ 1 bas basic\ 2 sup superbasic\ 3 low nonbasic <= (normally =) lower bound\ 4 upp nonbasic >= (normally =) upper bound\ 5 equ nonbasic at equal lower and upper bounds\ 6 btw nonbasic between bounds\ ';

19 Caseificio: variabili in e fuori base Per prima cosa stampiamo quali sono le variabili nella base ottima individuate dal solver con il seguente comando: ampl: display x.sstatus; x.sstatus [*] := BURRO low MOZZARELLA bas RICOTTA bas; Le variabili associate alla mozzarella e alla ricotta sono in base. ampl: display latte_disponibile.sstatus, vinc_max_domanda.sstatus,operai_disponibili.sstatus; latte_disponibile.sstatus = bas vinc_max_domanda.sstatus [*] := BURRO bas MOZZARELLA bas RICOTTA upp; Le variabili di slack associate al vincolo del latte e ai vincoli di domanda del burro e della mozzarella sono in base. operai_disponibili.sstatus = upp Portiamo il prezzo di vendita del burro a 3.1 euro e risolviamo nuovamente il problema.

20 Caseificio: variabili in e fuori base Il risultato del problema modificato è il seguente: ampl: display x; x [*] := BURRO MOZZARELLA RICOTTA 23; ampl: display x.sstatus; x.sstatus [*] := BURRO bas MOZZARELLA bas RICOTTA bas; Le variabili associate ai tre prodotti sono in base. ampl: display latte_disponibile.sstatus, vinc_max_domanda.sstatus,operai_disponibili.sstatus; latte_disponibile.sstatus = upp vinc_max_domanda.sstatus [*] := BURRO bas MOZZARELLA bas RICOTTA upp; Le variabili di slack associate ai vincoli di domanda del burro e della mozzarella sono in base. operai_disponibili.sstatus = upp

21 Caseificio: range dei termini noti Quali sono i range di variabilità dei termini noti entro i quali la base ottima non cambia? ampl: display latte_disponibile.up, vinc_max_domanda.up,operai_disponibili.up; latte_disponibile.up = 1e+20 vinc_max_domanda.up [*] := BURRO 1e+20 MOZZARELLA 1e+20 RICOTTA ; operai_disponibili.up = ampl: display latte_disponibile.down, vinc_max_domanda.down,operai_disponibili.down; latte_disponibile.down = vinc_max_domanda.down [*] := BURRO 0 MOZZARELLA RICOTTA 7.007; operai_disponibili.down =

22 max 14x 1 +19x x x 4! ( *0.7) x 1! ( * * 0.5)x 2! s.t.! (0.1+ 4* * * 0.4)x 3! (0.3+ 4* * 0.7)x 4! x x x x 4 " x x x x 4 " x x 3 " x 3 " x 4 " 500 x 1 #15 x 2 #11 x 3 # 20 x 4 # 5 0.4x x x x 4 " 960 x # 0 Azienda dolciaria: Confetti zucchero mandorla latte cioccolato limone classico prod.min. doppio latte prod.min. al cioccolato prod.min. delizia al limone prod.min. Ore di lavorazione

23 Azienda dolciaria: Confetti

24 Azienda dolciaria: Confetti Il direttore dell azienda dolciaria ha chiesto il nostro aiuto per definire il piano di produzione che massimizza il profitto mensile ma anche per avere risposte alle seguenti domande: 1. Quali sono le risorse scarse e quali quelle abbondanti? 2. Di quanto aumenta il profitto dell azienda se si incrementa di 20kg la mandorla? E se invece si aumenta di 20kg la cioccolata? Ed infine di 20 kg lo zucchero? 3. Quale risorsa garantisce un tasso di aumento del profitto maggiore? 4. L azienda vuole valutare la possibilità di produrre un confetto quasi completamente fatto di mandorla. Sapendo che la produzione di 1Kg di questi confetti richiede 0.3 kg di zucchero e 0.9 kg di mandorla e che richieste 1 ora di lavorazione, qual è il prezzo di vendita che rende conveniente produrre questo nuovo confetto? 5. Quali sono i range di variabilità dei coefficienti di costo della funzione obiettivo entro i quali la base ottima non cambia? 6. Quali sono i range di variabilità dei termini noti entro i quali la base ottima non cambia?

25 Azienda dolciaria: Confetti Times (seconds): Input = Solve = Output = CPLEX : optimal solution; obective dual simplex iterations (1 in phase I) suffix up OUT; suffix down OUT; suffix current OUT; solve_result = solved ##################################### ############ Variables: ########### x [*] := ALCIOCCOLATO 20 CLASSICO DLATTE 11 DLIMONE 234.5; ########################################### ############ Slack Variables: ########### ingredienti_disponibili.slack [*] := CIOCCOLATO 192 LATTE LIMONE MANDORLA ZUCCHERO 0; vinc_min_domanda.slack [*] := ALCIOCCOLATO 0 CLASSICO DLATTE 0 DLIMONE 229.5; ore_disponibili.slack = ##################################### ############ Dual Variables: ########### ingredienti_disponibili [*] := CIOCCOLATO 0 LATTE 0 LIMONE 0 MANDORLA 0 ZUCCHERO 4.4 ; vinc_min_domanda [*] := ALCIOCCOLATO -3 CLASSICO 0 DLATTE -0.9 DLIMONE 0 ; ore_disponibili = 22.6 ######################################### ############ Ranges Coefficienti: ########### x.up [*] := ALCIOCCOLATO 25.3 CLASSICO 16.8 DLATTE 16.7 DLIMONE 35.1 ; x.down [*] := ALCIOCCOLATO -1e+20 CLASSICO DLATTE -1e+20 DLIMONE 28.9; ########################## ####### Ranges termini noti: ########## ingredienti_disponibili.up [*] := CIOCCOLATO 1e+20 LATTE 1e+20 LIMONE 1e+20 MANDORLA 1e+20 ZUCCHERO ; ingredienti_disponibili.down [*] := CIOCCOLATO 8 LATTE 11.5 LIMONE MANDORLA ZUCCHERO 223.5; vinc_min_domanda.up [*] := ALCIOCCOLATO CLASSICO DLATTE DLIMONE 234.5; vinc_min_domanda.down [*] := ALCIOCCOLATO 0 CLASSICO -1e+20 DLATTE 0 DLIMONE -1e+20; ore_disponibili.up = ore_disponibili.down =

Ricerca Operativa. Analisi della sensitività in AMPL. Andrea Raiconi

Ricerca Operativa. Analisi della sensitività in AMPL. Andrea Raiconi Ricerca Operativa Analisi della sensitività in AMPL Andrea Raiconi [email protected] Corso di Laurea Magistrale in Ingegneria Informatica Università degli Studi di Cassino e del Lazio Meridionale Esempio

Подробнее

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

Подробнее

Ottimizzazione Combinatoria

Ottimizzazione Combinatoria Ottimizzazione Combinatoria Esercitazione AMPL A.A. 2-22 Esercitazione a cura di Silvia Canale contatto e-mail: [email protected] Università i di Roma La Sapienza Dipartimento di Informatica e Sistemistica

Подробнее

Ricerca Operativa A.A. 2007/ Esercitazione di laboratorio: analisi di sensitività

Ricerca Operativa A.A. 2007/ Esercitazione di laboratorio: analisi di sensitività Ricerca Operativa A.A. 2007/2008 14. Esercitazione di laboratorio: analisi di sensitività Luigi De Giovanni - Ricerca Operativa - 14. Laboratorio: analisi di sensitività 14.1 Problema di mix della produzione

Подробнее

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

Подробнее

AMPL: Risoluzione di Problemi Nonlineari Parte 2

AMPL: Risoluzione di Problemi Nonlineari Parte 2 AMPL: Risoluzione di Problemi Nonlineari Parte 2 Dipartimento di Matematica Università di Padova Corso di Laurea Matematica Outline Esempio 1: Gestione Ottima di un Portafoglio Titoli Esempio 1 Abbiamo:

Подробнее

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,

Подробнее

Linguaggi di modellizzazione

Linguaggi di modellizzazione p. 1/5 Linguaggi di modellizzazione Come visto, il primo passo per risolvere un problema di decisione consiste nel formularne il modello matematico. Una volta definito il modello matematico lo dobbiamo

Подробнее

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: [email protected] Università di Roma La Sapienza Dipartimento di Informatica

Подробнее

Prova di Ricerca Operativa - canale (A-L)

Prova di Ricerca Operativa - canale (A-L) Prova di Ricerca Operativa - canale (A-L) Ingegneria Gestionale Un industria produce 4 differenti prodotti P1, P2, P3, P4 ciascuno dei quali deve essere lavorato in tutti i suoi 3 reparti. La tabella che

Подробнее

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

Подробнее

Uso avanzato di AMPL. Renato Bruni. prendendo come esempio il problema di Localizzazione di Impianti.

Uso avanzato di AMPL. Renato Bruni. prendendo come esempio il problema di Localizzazione di Impianti. Uso avanzato di AMPL prendendo come esempio il problema di Localizzazione di Impianti Renato Bruni [email protected] www.dis.uniroma1.it/~bruni Localizzazione di Impianti Consideriamo il problema di

Подробнее

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.

Подробнее

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 [email protected], http://www.dis.uniroma1.it/ liuzzi

Подробнее

Introduzione. AMPL Introduzione. F. Rinaldi. Dipartimento di Matematica Università di Padova. Corso di Laurea Matematica. F. Rinaldi AMPL Introduzione

Introduzione. AMPL Introduzione. F. Rinaldi. Dipartimento di Matematica Università di Padova. Corso di Laurea Matematica. F. Rinaldi AMPL Introduzione Dipartimento di Matematica Università di Padova Corso di Laurea Matematica Outline Introduzione Utilizzo di un Solver Definizione Un solver (o risolutore) è un software che riceve in input una descrizione

Подробнее

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

Подробнее

Modelli di programmazione lineare. Il metodo grafico è basato su linearità della funzione obiettivo linearità dei vincoli

Modelli di programmazione lineare. Il metodo grafico è basato su linearità della funzione obiettivo linearità dei vincoli Ricerca Operativa 2. Modelli di Programmazione Lineare Modelli di programmazione lineare Il metodo grafico è basato su linearità della funzione obiettivo linearità dei vincoli Sotto queste ipotesi (come

Подробнее

Ricerca Operativa e Logistica

Ricerca Operativa e Logistica Ricerca Operativa e Logistica Dott. F.Carrabs e Dott.ssa M.Gentili A.A. 20/202 Lezione 6-8 Rappresentazione di funzioni non lineari: - Costi fissi - Funzioni lineari a tratti Funzioni obiettivo non lineari:

Подробнее

Programmazione Matematica: III.1 - Programmazione Lineare

Programmazione Matematica: III.1 - Programmazione Lineare Programmazione Matematica: III.1 - Programmazione Lineare Daniele Vigo D.E.I.S. Università di Bologna [email protected] rev. 1.0 ottobre 2003 Programmazione Lineare Def.: (F, ϕ ) è un problema di Programmazione

Подробнее

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

Подробнее

Ottimizzazione Combinatoria

Ottimizzazione Combinatoria Ottimizzazione Combinatoria Esercitazione AMPL A.A. 2009-2010 Esercitazione a cura di Silvia Canale contatto e-mail: [email protected] Università di Roma La Sapienza Dipartimento di Informatica e

Подробнее

Esercizi svolti di Programmazione Lineare. a cura di Laura Scrimali Dipartimento di Matematica e Informatica Università di Catania

Esercizi svolti di Programmazione Lineare. a cura di Laura Scrimali Dipartimento di Matematica e Informatica Università di Catania Esercizi svolti di Programmazione Lineare a cura di Laura Scrimali Dipartimento di Matematica e Informatica Università di Catania Formulazione matematica e risoluzione grafica Esercizio Una pasticceria

Подробнее

AMPL: Esempi e Comandi Avanzati

AMPL: Esempi e Comandi Avanzati Dipartimento di Matematica Università di Padova Corso di Laurea Matematica Outline Comandi Avanzati Script per Operazioni Complesse Ciclo For for {e in INSIEME}{... } Ciclo Repeat While (termina se espressione

Подробнее

Vediamo come risolvere un problema di PL con Excel. Riprendiamo un esercizio già visto.

Vediamo come risolvere un problema di PL con Excel. Riprendiamo un esercizio già visto. Esempio di risoluzione di un problema di PL con Excel Vediamo come risolvere un problema di PL con Excel. Riprendiamo un esercizio già visto. Un azienda vinicola desidera produrre due tipi di vino: uno

Подробнее

Data Science A.A. 2018/2019

Data Science A.A. 2018/2019 Corso di Laurea Magistrale in Economia Data Science A.A. 2018/2019 Esercitazione GAMS 1 Data Science 2018/2019 1 Esercizio 1 - AVL La AVL produce tre composti chimici, A, B e C, che possono essere venduti

Подробнее

Teoria della Dualità: I Introduzione

Teoria della Dualità: I Introduzione Teoria della Dualità: I Introduzione Daniele Vigo D.E.I.S. Università di Bologna [email protected] rev. 1.2 Maggio 2004 Dualità Per ogni problema PL, detto primale, ne esiste un altro, detto duale, costruito

Подробнее

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

Подробнее

Si consideri il seguente tableau ottimo di un problema di programmazione lineare

Si consideri il seguente tableau ottimo di un problema di programmazione lineare ESERCIZIO 1 Si consideri il seguente tableau ottimo di un problema di programmazione lineare -25/3 0 4/3 19/6 9/2 0 0 0 7/6 1 0 1-1/2-3/2 1 0 0 3/2 11/3 1-2/3-1/3 0 0 0 0 2/3 2/3 0 1/3 1/6-1/2 0 1 0 7/6

Подробнее

SIMULAZIONE ESAME di OTTIMIZZAZIONE Corso di Laurea in Ingegneria Gestionale 2 o anno

SIMULAZIONE ESAME di OTTIMIZZAZIONE Corso di Laurea in Ingegneria Gestionale 2 o anno SIMULAZIONE ESAME di OTTIMIZZAZIONE 28 novembre 2005 SIMULAZIONE ESAME di OTTIMIZZAZIONE Corso di Laurea in Ingegneria Gestionale 2 o anno Cognome : XXXXXXXXXXXXXXXXX Nome : XXXXXXXXXXXXXX VALUTAZIONE

Подробнее

La programmazione lineare

La programmazione lineare La programmazione lineare Se un problema economico si traduce in un problema di scelta in condizioni di certezza e con effetti immediati siamo in presenza di un problema di Programmazione lineare. Abbiamo

Подробнее

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,

Подробнее

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

RICERCA OPERATIVA. Tema d esame del 04/03/2008 (Simulazione) RICERCA OPERATIVA Tema d esame del 04/03/2008 (Simulazione) COGNOME: NOME: MATRICOLA:. Una nota azienda automobilistica produce due modelli di auto (un utilitaria e una berlina), che rivende con un guadagno

Подробнее

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: [email protected] Università di Roma La Sapienza Dipartimento di Informatica

Подробнее

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,

Подробнее

Fondamenti di Business Analytics classi M2/M3 Michele Impedovo anno accademico

Fondamenti di Business Analytics classi M2/M3 Michele Impedovo anno accademico Fondamenti di Business Analytics 20486 classi M2/M3 Michele Impedovo anno accademico 2016-2017 Lezione 9 Il report di sensibilità del Solver Sensitivity analysis (1): coefficienti della funzione obiettivo

Подробнее

Stufa a pellet ad alta efficienza MODELLO 8

Stufa a pellet ad alta efficienza MODELLO 8 MODELLO 8 - ø litri - Mod. 8 6,97-2,84 6,42-2,64 1,42-0,58 92,7-92,06 29-12 499 x 476 x 899 90 4 MODELLO 10 - ø litri - Mod. 10 8,87-2,84 8,02-2,64 1,81-0,58 92,7-90,5 29-9,5 499 x 476 x 899 90 5 MODELLO

Подробнее

Appunti di Matematica

Appunti di Matematica Appunti di Matematica Funzioni economiche problemi di ottimizzazione Massimo Pasquetto IPSEOA Angelo Berti classe 5AS 16-17 febbraio 2017 massimo pasquetto Appunti di Matematica 16-17 febbraio 2017 1 /

Подробнее

Esercitazione R.O. 2. Andrea Raiconi A.A. 2008-2009

Esercitazione R.O. 2. Andrea Raiconi A.A. 2008-2009 Esercitazione R.O. 2 Andrea Raiconi A.A. 2008-2009 Esercitazione R.O.2 Formulare per ognuno dei seguenti problemi un modello di programmazione lineare che lo descriva. Implementare i modelli formulati

Подробнее

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

Подробнее

Ricerca Operativa e Logistica Dott. F.Carrabs e Dott.ssa M.Gentili

Ricerca Operativa e Logistica Dott. F.Carrabs e Dott.ssa M.Gentili Ricerca Operativa e Logistica Dott. F.Carrabs e Dott.ssa M.Gentili Il modello matematico 2: Funzioni obiettivo: ma.min, Min-ma Tipologie di Vincoli Funzione obiettivo ma-min: Esempio Scommesse Il signor

Подробнее

Ottimizzazione e Controllo 2015/2016 ESERCITAZIONE

Ottimizzazione e Controllo 2015/2016 ESERCITAZIONE Ottimizzazione e Controllo 2015/2016 ESERCITAZIONE Esercizio 1. Sono dati 6 job da processare su un centro di lavorazione automatizzato che può eseguire una sola lavorazione alla volta. Di ciascun job

Подробнее

(i punti frontiera del dominio appartengono al dominio stesso). Esempio. Determina i massimi e i minimi della funzione y x 2x

(i punti frontiera del dominio appartengono al dominio stesso). Esempio. Determina i massimi e i minimi della funzione y x 2x PROGRAMMAZIONE LINEARE I problemi di programmazione lineare sono particolari problemi nei quali si devono determinare i massimi o i minimi vincolati di una funzione in due o più variabili. Definizione.

Подробнее

AMPL Sintassi ed Esempi

AMPL Sintassi ed Esempi Dipartimento di Matematica Università di Padova Corso di Laurea Informatica Outline Sintassi Elementi di un problema Insiemi Parametri Variabili Funzione Obiettivo Vincoli Dati Insiemi Gli insiemi definiscono

Подробнее

Esercizi soluzione grafica e Branch and Bound. Daniele Vigo

Esercizi soluzione grafica e Branch and Bound. Daniele Vigo Esercizi soluzione grafica e Branch and Bound Daniele Vigo [email protected] Mix Mangimi Il gestore di un allevamento desidera determinare il mix ottimale di mangimi da aggiungere al riso per la dieta

Подробнее

IL METODO DEL SIMPLESSO

IL METODO DEL SIMPLESSO IL METODO DEL SIMPLESSO Il metodo del Simplesso 1 si applica nella risoluzione di un problema di Programmazione Lineare 2 (funzione e vincoli lineari) quando le variabili di azione o iniziali sono almeno

Подробнее

LOCALIZZAZIONE DEGLI IMPIANTI Algoritmo di Erlenkotter

LOCALIZZAZIONE DEGLI IMPIANTI Algoritmo di Erlenkotter DESCRIZIONE DEL PROBLEMA LOCALIZZAZIONE DEGLI IMPIANTI Algoritmo di Erlenkotter Un azienda possiede 5 piccoli impianti per la produzione di mattoni, che vengono spediti e venduti in 6 città. Per ogni impianto

Подробнее

Laboratorio di Ricerca Operativa Cad Ingegneria Gestionale (BGER3 - I semestre) a.a Homework n 23. Docente: Laura Palagi

Laboratorio di Ricerca Operativa Cad Ingegneria Gestionale (BGER3 - I semestre) a.a Homework n 23. Docente: Laura Palagi Laboratorio di Ricerca Operativa Cad Ingegneria Gestionale (BGER3 - I semestre) a.a. 0-3 Homework n 3 Docente: Laura Palagi HOMEWORK DI RICERCA OPERATIVA Realizzato da : Bartolini Giancarlo Cornacchione

Подробнее

La dualità nella Programmazione Lineare

La dualità nella Programmazione Lineare Capitolo 3 La dualità nella Programmazione Lineare 3.1 Teoria della dualità Esercizio 3.1.1 Scrivere il problema duale del seguente problema di Programmazione Lineare: min x 1 x 2 + x 3 2x 1 +3x 2 3 x

Подробнее

Laboratorio di Ricerca Operativa Cad Ingegneria Gestionale (BGER3 - I semestre) a.a Homework n 10. Docente: Laura Palagi

Laboratorio di Ricerca Operativa Cad Ingegneria Gestionale (BGER3 - I semestre) a.a Homework n 10. Docente: Laura Palagi Laboratorio di Ricerca Operativa Cad Ingegneria Gestionale (BGER3 - I semestre) a.a. 2012-13 Homework n 10 Docente: Laura Palagi Smaltimento dei rifiuti solidi urbani HOMEWORK N 10 Francesco Cambiotti

Подробнее

1 Breve introduzione ad AMPL

1 Breve introduzione ad AMPL 1 Breve introduzione ad AMPL Il primo passo per risolvere un problema reale attraverso strumenti matematici consiste nel passare dalla descrizione a parole del problema al modello matematico dello stesso.

Подробнее

Elementi di un modello di Programmazione Matematica

Elementi di un modello di Programmazione Matematica 1 Ricerca Operativa Laboratorio: utilizzo di solver per programmazione matematica Elementi di un modello di Programmazione Matematica Insiemi: elementi del sistema; Parametri: dati del problema; Variabili

Подробнее

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

Подробнее

A.A Fondamenti di Ricerca Operativa. 2. Determinare β affinchè il poliedro descritto dal sistema di disequazioni

A.A Fondamenti di Ricerca Operativa. 2. Determinare β affinchè il poliedro descritto dal sistema di disequazioni A.A. 08-09 Fondamenti di Ricerca Operativa. Si consideri il problema min x + x + 4x 3 3x 4 x + x 3 = 5 x + x 4 = x, x, x 3, x 4 0 Stabilire se il problema ha insieme ammissibile vuoto, oppure è illimitato,

Подробнее

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)

Подробнее

Ricerca Operativa. Esercizi proposti

Ricerca Operativa. Esercizi proposti Ricerca Operativa Esercizi proposti 1. Un fiorista deve addobbare una sala per un ricevimento. Ha a disposizione quattro tipi di fiori: rose, gerbere, lilium e calle. Rose, gerbere e lilium sono disponibili

Подробнее

ALCUNI ESEMPI DI PROBLEMI TIPICI DI RICERCA OPERATIVA

ALCUNI ESEMPI DI PROBLEMI TIPICI DI RICERCA OPERATIVA ALCUNI ESEMPI DI PROBLEMI TIPICI DI RICERCA OPERATIVA nov 5 0.13 1 1A. Una fabbrica di detersivi può produrre giornalmente al massimo 70 Kg di detersivo, che rivende a 1.8 al Kg. Per la produzione sostiene

Подробнее

Introduzione al Metodo del Simplesso. 1 Soluzioni di base e problemi in forma standard

Introduzione al Metodo del Simplesso. 1 Soluzioni di base e problemi in forma standard Introduzione al Metodo del Simplesso Giacomo Zambelli 1 Soluzioni di base e problemi in forma standard Consideriamo il seguente problema di programmazione lineare (PL), relativo all esempio di produzione

Подробнее

Modelli di programmazione lineare. Il metodo grafico è basato su linearità della funzione obiettivo linearità dei vincoli

Modelli di programmazione lineare. Il metodo grafico è basato su linearità della funzione obiettivo linearità dei vincoli Ricerca Operativa 2. Modelli di Programmazione Lineare - TESTI Modelli di programmazione lineare Il metodo grafico è basato su linearità della funzione obiettivo linearità dei vincoli Sotto queste ipotesi

Подробнее

Ottimizzazione marginale

Ottimizzazione marginale Ottimizzazione marginale R. Pesenti Problema di faceness Formulazione del problema Il vostro supermercato deve disporre i prodotti A, B, C e D sugli scaffali 1, 2, e 3 ognuno di lunghezza 100 cm. Dato

Подробнее

Dualità e analisi della sensitività nella Programmazione Lineare

Dualità e analisi della sensitività nella Programmazione Lineare 4 Dualità e analisi della sensitività nella Programmazione Lineare Come abbiamo visto nel capitolo precedente, attraverso il comando display è possibile ottenere informazioni sul problema duale di un problema

Подробнее

Excel: una piattaforma facile per l ottimizzazione. Excel ha un toolbox di ottimizzazione: Risolutore

Excel: una piattaforma facile per l ottimizzazione. Excel ha un toolbox di ottimizzazione: Risolutore Excel: una piattaforma facile per l ottimizzazione Excel ha un toolbox di ottimizzazione: Risolutore Il problema di produzione con Excel Consideriamo il foglio Excel Variabili di decisione reali c8,d8

Подробнее