Ricerca Operativa e Logistica
|
|
|
- Baldo Pisani
- 9 anni fa
- Просмотров:
Транскрипт
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 [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 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 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/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 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 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 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
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 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) 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 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 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 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 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
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 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
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 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 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 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 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 Formulazione matematica e risoluzione grafica Esercizio Una pasticceria
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.
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
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 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' 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
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 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 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 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) 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 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) 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 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
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 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 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 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 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 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
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
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 [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 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
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. 0-3 Homework n 3 Docente: Laura Palagi HOMEWORK DI RICERCA OPERATIVA Realizzato da : Bartolini Giancarlo Cornacchione
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. 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 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
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
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. 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
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 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 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 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
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 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
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 Il problema di produzione con Excel Consideriamo il foglio Excel Variabili di decisione reali c8,d8
