Modelli LP (complementi) Daniele Vigo D.E.I.S. - Università di Bologna dvigo@deis.unibo.it rev. 1.0 - ottobre 2003 1. Comprare o fabbricare? Electro-Poly è un produttore leader di lavatrici Ha ricevuto un ordine di $750,000 per 3 modelli Modello 1 Modello 2 Modello 3 Quantità ordinata 3,000 2,000 900 Ore di cablaggio/unità 2 1.5 3 Ore di rifinitura/unità 1 2 1 Costo di fabbricazione $50 $83 $130 Costo di acquisto $61 $97 $145 La compagnia ha 10,000 ore di capacità di cablaggio e 5,000 ore di capacità di rifinitura ModLP.2
Variabili decisionali M 1 M 2 M 3 B 1 B 2 B 3 = N. di lavatrici del modello 1 da costruire = N. di lavatrici del modello 2 da costruire = N. di lavatrici del modello 3 da costruire = N. di lavatrici del modello 1 da acquistare = N. di lavatrici del modello 2 da acquistare = N. di lavatrici del modello 3 da acquistare ModLP.3 Funzione obiettivo Minimizzare il costo totale per l evasione dell ordine: min: 50M 1 + 83M 2 + 130M 3 + 61B 1 + 97B 2 + 145B 3 ModLP.4
Definizione dei vincoli Vincoli sulla domanda: M 1 + B 1 = 3,000 } modello 1 M 2 + B 2 = 2,000 } modello 2 M 3 + B 3 = 900 } modello 3 Vincoli di risorsa: 2M 1 + 1.5M 2 + 3M 3 <= 10,000 } cablaggio 1M 1 + 2.0M 2 + 1M 3 <= 5,000 } rifinitura Condizioni di non negatività: M 1, M 2, M 3, B 1, B 2, B 3 >= 0 ModLP.5 2. Problema di investimento Un cliente della Retirement Planning Services, Inc. desidera investire $750,000 in obbligazioni Compagnia Utile Scadenza (Anni) Valutazione Acme Chemical 8.65% 11 1-Eccellente DynaStar 9.50% 10 3-Buono Eagle Vision 10.00% 6 4-Accettabile Micro Modeling 8.75% 10 1-Eccellente OptiPro 9.25% 7 3-Buono Sabre Systems 9.00% 13 2-Molto Buono ModLP.6
Vincoli per l investimento Non più del 25% può essere investito in una singola compagnia Almeno il 50% dovrebbe essere investito in obbligazioni di lungo termine (Scadenza in più di 10 anni) Non più del 35% può essere investito in obbligazioni con rating buono o inferiore (DynaStar, Eagle Vision ed OptiPro) ModLP.7 Variabili decisionali x 1 = somma di denaro da investire in Acme Chemical x 2 = somma di denaro da investire in DynaStar x 3 = somma di denaro da investire in Eagle Vision x 4 = somma di denaro da investire in MicroModeling x 5 = somma di denaro da investire in OptiPro x 6 = somma di denaro da investire in Sabre Systems ModLP.8
Funzione obiettivo Massimizzare l utile complessivo annuale dell investimento : max:.0865x 1 +.095x 2 +.10x 3 +.0875x 4 +.0925x 5 +.09x 6 ModLP.9 Definizione dei vincoli Somma totale investita: x 1 + x 2 + x 3 + x 4 + x 5 + x 6 = 750,000 Non più del 25% in ciascun investimento x i <= 187,500, per tutti gli i Almeno 50% dell investimento a lungo termine. x 1 + x 2 + x 4 + x 6 >= 375,000 Al più 35% di DynaStar, Eagle Vision e OptiPro. x 2 + x 3 + x 5 <= 262,500 Condizioni di non negatività x i >= 0, per tutti gli i ModLP.10
3. Problema di trasporti: Tropicsun Disponibilità (q) 275,000 Campi Mt. Dora 1 21 Distanza (in Km) 50 Impianti Ocala 4 Capacità (q) 200,000 40 400,000 Eustis 2 35 22 30 Orlando 5 600,000 55 300,000 Clermont 3 25 20 Leesburg 6 225,000 ModLP.11 Variabili decisionali x ij = # di quintali trasportati dal nodo i al nodo j In particolare, le nove variabili decisionali sono: x 14 = # di quintali trasportati da Mt. Dora (nodo 1) a Ocala (nodo 4) x 15 = # di quintali trasportati da Mt. Dora (nodo 1) a Orlando (nodo 5) x 16 = # di quintali trasportati da Mt. Dora (nodo 1) a Leesburg (nodo 6) x 24 = # di quintali trasportati da Eustis (nodo 2) a Ocala (nodo 4) x 25 = # di quintali trasportati da Eustis (nodo 2) a Orlando (nodo 5) x 26 = # di quintali trasportati da Eustis (nodo 2) a Leesburg (nodo 6) x 34 = # di quintali trasportati da Clermont (nodo 3) a Ocala (nodo 4) x 35 = # di quintali trasportati da Clermont (nodo 3) a Orlando (nodo 5) x 36 = # di quintali trasportati da Clermont (nodo 3) a Leesburg (nodo 6) ModLP.12
Funzione obiettivo Minimizzare il numero totale di quintali/km min: 21x 14 + 50x 15 + 40x 16 + 35x 24 + 30x 25 + 22x 26 + 55x 34 + 20x 35 + 25x 36 ModLP.13 Definizione dei vincoli Vincoli di capacità degli impianti x 14 + x 24 + x 34 <= 200,000 } Ocala x 15 + x 25 + x 35 <= 600,000 } Orlando x 16 + x 26 + x 36 <= 225,000 } Leesburg Vincoli di fornitura dei campi x 14 + x 15 + x 16 = 275,000 } Mt. Dora x 24 + x 25 + x 26 = 400,000 } Eustis x 34 + x 35 + x 36 = 300,000 } Clermont Condizioni di non negatività x ij >= 0 per tutti gli i e j ModLP.14
Trasporto merci (in generale) Distribuzione da m sorgenti (fabbriche) ad n destinazioni (clienti) di beni Per ogni sorgente i=1,, m: capacità r i Per ogni destinazione j=1,, n: domanda d j Per ogni coppia sorgente-destinazione (i, j): Costi di traporto in per unità trasportata, c ij Determinare la distribuzione di costo complessivo minimo Variabili decisionali: x ij flusso inviato tra la sorgente i e la destinazione j ModLP.15 Modello matematico Funzione obiettivo (min. costi di trasporto) min Σ i=1,m Σ j=1,n c ij x ij Capacità delle sorgenti: Σ j=1,n x ij r i (i = 1,, m) Domanda delle destinazioni: Σ i=1,m x ij d j (j = 1,, n) (anche =) x ij 0 (i,=1,,m; j = 1,, n) ModLP.16
4. Problema di miscelazione (dieta) Agri-Pro ha ricevuto un ordine per 8,000 Kg di mangime per polli che deve essere composto dai seguenti alimenti Percentuale di alimento in Alimento Cibo 1 Cibo 2 Cibo 3 Cibo 4 Avena 30% 5% 20% 10% Grano 10% 3% 15% 10% Minerali 20% 20% 20% 30% Costo per Kg $0.25 $0.30 $0.32 $0.15 Il mangime deve contenere almeno 20% di avena, 15% di grano, e 15% di minerali. ModLP.17 Variabili decisionali x 1 = Kg di cibo 1 da usare nel mix x 2 = Kg di cibo 2 da usare nel mix x 3 = Kg di cibo 3 da usare nel mix x 4 = Kg di cibo 4 da usare nel mix ModLP.18
Funzione Obiettivo Minimizzare il costo totale di esecuzione dell ordine min: 0.25x 1 + 0.30x 2 + 0.32x 3 + 0.15x 4 ModLP.19 Definizione dei Vincoli Produrre 8,000 Kg di mangime x 1 + x 2 + x 3 + x 4 = 8,000 Il mix deve contenere almeno il 20% di avena (0.3x 1 + 0.05x 2 + 0.2x 3 + 0.1x 4 )/8000 >= 0.2 Il mix deve contenere almeno il 15% di grano (0.1x 1 + 0.03x 2 + 0.15x 3 + 0.1x 4 )/8000 >= 0.15 Il mix deve contenere almeno il 15% di minerali (0.2x 1 + 0.2x 2 + 0.2x 3 + 0.3x 4 )/8000 >= 0.15 Condizioni di non negatività x 1, x 2, x 3, x 4 >= 0 ModLP.20
Scaling dei coefficineti Il coefficiente di x 2 nel vincolo avena è 0.05/8000 = 0.00000625 La memorizzazione in virgola mobile e precisione finita obbliga il computer ad approssimare i coefficienti Gli errori di approssimazione sul risultato delle operazioni algebriche sono grandi se i coefficienti interessati sono molto diversi tra loro in valore assoluto I problemi di scaling possono rendere impossibile la soluzione accurata del problema La maggior parte dei problemi può essere formulata in modo da minimizzare gli errori di scaling Moltiplicando/dividendo i vincoli per 10 Cambiando il fattore di scala delle variabili ModLP.21 Ridefinizione variabili decisionali x 1 = migliaia di Kg di cibo 1 da usare nel mix x 2 = migliaia di Kg di cibo 2 da usare nel mix x 3 = migliaia di Kg di cibo 3 da usare nel mix x 4 = migliaia di Kg di cibo 4 da usare nel mix ModLP.22
Ridefinizione funzione obiettivo Minimizzare il costo totale di esecuzione dell ordine min: 250x 1 + 300x 2 + 320x 3 + 150x 4 ModLP.23 Ridefinizione dei vincoli Produrre 8,000Kg di cibo x 1 + x 2 + x 3 + x 4 = 8 Il mix deve contenere almeno il 20% di avena (0.3x 1 + 0.05x 2 + 0.2x 3 + 0.1x 4 )/8 >= 0.2 Il mix deve contenere almeno il 15% di grano (0.1x 1 + 0.03x 2 + 0.15x 3 + 0.1x 4 )/8 >= 0.15 Il mix deve contenere almeno il 15% di minerali (0.2x 1 + 0.2x 2 + 0.2x 3 + 0.3x 4 )/8 >= 0.15 Condizioni di non negatività x 1, x 2, x 3, x 4 >= 0 ModLP.24
L opzione Assumi modello lineare La finestra di dialogo Opzioni del Risolutore di Excel ha un opzione chiamata Assumi il Modello Lineare Se attivata il Risolutore compie alcuni test per verificare la linearità del modello Nel caso il modello non sia ben scalato il test di linearità spesso fallisce anche se il modello è lineare ModLP.25 5. Pianificazione della produzione Upton Corporations deve pianificare la produzione dei compressori per i prossimi 6 mesi 1 2 3 4 5 6 Costo Unitario di Prod. $240 $250 $265 $285 $280 $260 Unità Richieste (D i ) 1,000 4,500 6,000 5,500 3,500 4,000 Produzione Massima 4,000 3,500 4,000 4,500 4,000 3,500 Produzione Minima 2,000 1,750 2,000 2,250 2,000 1,750 Magazzino Iniziale = 2,750 unità Scorta di Sicurezza = 1,500 unità Costo unitario di Stoccaggio = 1.5% costo un. di produzione Capacità massima del Magazzino = 6,000 unità ModLP.26
Variabili decisionali P i = numero di unità da produrre nel mese i, i=1,,6 B i = scorta a magazzino iniziale del mese i, i=1,,6 ModLP.27 Funzione obiettivo Minimizzare i costi totali di produzione e di magazzino min: 240P 1 + 250P 2 + 265P 3 + 285P 4 + 280P 5 + 260P 6 + 3.6(B 1 +B 2 )/2 + 3.75(B 2 +B 3 )/2 + 3.98(B 3 +B 4 )/2 + 4.28(B 4 +B 5 )/2 + 4.20(B 5 + B 6 )/2 + 3.9(B 6 +B 7 )/2 Il magazzino iniziale in ciascun mese è uguale al magazzino finale nel mese precedente Il costo di stoccaggio si applica alla scorta media del mese ModLP.28
Definizione dei vincoli (1) Livelli di Produzione: 2,000 <= P 1 <= 4,000 } mese 1 1,750 <= P 2 <= 3,500 } mese 2 2,000 <= P 3 <= 4,000 } mese 3 2,250 <= P 4 <= 4,500 } mese 4 2,000 <= P 5 <= 4,000 } mese 5 1,750 <= P 6 <= 3,500 } mese 6 ModLP.29 Definizione dei vincoli (2) Magazzino finale (E i = B i + P i -D i ): 1,500 <= B 1 + P 1-1,000 <= 6,000 } mese 1 1,500 <= B 2 + P 2-4,500 <= 6,000 } mese 2 1,500 <= B 3 + P 3-6,000 <= 6,000 } mese 3 1,500 <= B 4 + P 4-5,500 <= 6,000 } mese 4 1,500 <= B 5 + P 5-3,500 <= 6,000 } mese 5 1,500 <= B 6 + P 6-4,000 <= 6,000 } mese 6 ModLP.30
Definizione dei vincoli (3) Bilancio iniziale B 1 = 2750 B 2 = B 1 + P 1-1,000 B 3 = B 2 + P 2-4,500 B 4 = B 3 + P 3-6,000 B 5 = B 4 + P 4-5,500 B 6 = B 5 + P 5-3,500 B 7 = B 6 + P 6-4,000 Si noti che B i può essere calcolato da P i Quindi, solo le P i sono le vere variabili decisionali ModLP.31 6. Flusso di Cassa di Multiperiodo Taco-Viva ha bisogno di stabilire una strategia di investimento per pagare $800,000 per la costruzione di un nuovo ristorante nei prossimi 6 mesi I pagamenti devono avvenire come segue: $250,000 alla fine del mese 2 $250,000 alla fine del mese 4 pagamento finale di $300,000 alla fine del mese 6 Il capitale prima di effettuare i pagamenti può essere investito per brevi periodi (da 1 a 6 mesi) ModLP.32
Investimenti possibili Possono essere effettuati i seguenti investimenti: Tipo Inizio (mese) Durata (mesi) Redimento A 1, 2, 3, 4, 5, 6 1 1.8% B 1, 3, 5 2 3.5% C 1, 4 3 5.8% D 1 6 11.0% Si desidera definire il piano degli investimenti che permette di avere disponibili le somme necessarie per i pagamenti quando servono e tale da minimizzare il capitale necessario ad inizio periodo ModLP.33 Possibile flusso di cassa Flusso di cassa in/out all inizio del mese (per $ investito) Investimento 1 2 3 4 5 6 7 A 1-1 1.018 B 1-1 < > 1.035 C 1-1 < > < > 1.058 D 1-1 < > < > < > < > < > 1.11 A 2-1 1.018 A 3-1 1.018 B 3-1 < > 1.035 A 4-1 1.018 C 4-1 < > < > 1.058 A 5-1 1.018 B 5-1 < > 1.035 A 6-1 1.018 Rich. di Pagam. $0 $0 $250 $0 $250 $0 $300 ModLP.34
Variabili decisionali A i =somma (in $1,000) collocata nell investimento A all inizio del mese i=1, 2, 3, 4, 5, 6 B i =somma (in $1,000) collocata nell investimento B all inizio del mese i=1, 3, 5 C i =somma (in $1,000) collocata nell investimento C all inizio del mese i=1, 4 D i =somma (in $1,000) collocata nell investimento D all inizio del mese i=1 ModLP.35 Funzione obiettivo Minimizzare il denaro totale investito nel mese 1: min: A 1 + B 1 + C 1 + D 1 ModLP.36
Definizione dei Vincoli Vincoli di Flusso di Cassa 1.018A 1 1A 2 = 0 } mese 2 1.035B 1 + 1.018A 2 1A 3 1B 3 = 250 } mese 3 1.058C 1 + 1.018A 3 1A 4 1C 4 = 0 } mese 4 1.035B 3 + 1.018A 4 1A 5 1B 5 = 250 } mese 5 1.018A 5 1A 6 = 0 } mese 6 1.11D 1 + 1.058C 4 + 1.035B 5 + 1.018A 6 = 300 } mese 7 Condizioni di non negatività A i, B i, C i, D i >= 0, per tutti gli i ModLP.37 6 bis. Gestione del Rischio Assumiamo che la direzione abbia assegnato la seguente valutazione di rischio per ciascun investimento in scala da 1 a 10 (10 = rischio max) Investimento Rischio A 1 B 3 C 8 D 6 Si vuole che il rischio medio non superi 5 ModLP.38
Definizione dei Vincoli Vincoli di Rischio 1A 1 + 3B 1 + 8C 1 + 6D 1 <= 5 A 1 + B 1 + C 1 + D 1 } mese 1 1A 2 + 3B 1 + 8C 1 + 6D 1 <= 5 A 2 + B 1 + C 1 + D 1 } mese 2 1A 3 + 3B 3 + 8C 1 + 6D 1 <= 5 A 3 + B 3 + C 1 + D 1 } mese 3 1A 4 + 3B 3 + 8C 4 + 6D 1 <= 5 A 4 + B 3 + C 4 + D 1 } mese 4 ModLP.39 Versione alternativa dei Vincoli Vincoli di Rishio equivalente -4A 1-2B 1 + 3C 1 + 1D 1 <= 0 } mese 1 2B 1 + 3C 1 + 1D 1 4A 2 <= 0 } mese 2 3C 1 + 1D 1 4A 3 2B 3 <= 0 } mese 3 1D 1 2B 3 4A 4 + 3C 4 <= 0 } mese 4 1D 1 + 3C 4 4A 5 2B 5 <= 0 } mese 5 1D 1 + 3C 4 2B 5 4A 6 <= 0 } mese 6 Ciascun coefficiente è uguale al fattore di rischio per l investimento meno 5 (massimo rischio medio possibile) ModLP.40