Esercizio 1: Automobili Le variabili decisionali sono i quattro pesi da attribuire alle quattro caratteristiche. Si tratta di variabili intere maggiori o uguali a 1, minori o uguali a 5, che sommate devono dare 10 e che moltiplicate forniscono il peso espresso in percentuale, come richiesto. Domanda 1. Non c è niente da ottimizzare, basta dare alle variabili i valori suggeriti e vedere qual è il risultato corrispondente. La migliore automobile risulta KK con un punteggio di 2,5. V. foglio Automobili 1 nel file Excel Automobili.xls. Domanda 2. Si può risolvere per 5 volte il problema relativo a ciascuno dei 5 modelli, dove le variabili sono le stesse 4 descritte sopra, i vincoli sono gli stessi descritti sopra e l obiettivo è quello di massimizzare il voto. Si possono anche mettere insieme i 5 sotto-problemi in un problema fittizio unico che ha come obiettivo la massimizzazione della somma di tutti i voti. Ovviamente però le variabili vanno separate per ogni sottoproblema, quindi si hanno in questo caso 20 variabili e non 4. V. foglio Automobili 2 nel foglio Excel. Domanda 3. A questa domanda si può rispondere senza calcoli né modelli, ma solo applicando la definizione di dominanza tra due soluzioni in problemi con più obiettivi. Le soluzioni dominate non possono risultare prime in classifica per nessuna pesatura. Tali soluzioni sono facilmente identificabili in M2 e Sp (entrambe dominate da KK). In alternativa si può rispondere alla domanda 4 e identificare quali sono i modelli per cui la soluzione ottima risulta di valor negativo (distacco negativo = non è prima in classifica). Domanda 4. In questo caso è più semplice risolvere ciascuno dei 5 sotto-problemi indipendentemente, per non complicare troppo il modello. Per ogni casa automobilistica i=1..5 le variabili sono solo 4, con i soliti vincoli già considerati nei casi precedenti. Tutti i modelli ricevono un voto. Si considera una variabile aggiuntiva, y(i), che indica il distacco minimo tra il modello della casa automobilistica i considerata e tutti gli altri modelli j=1..5 (j diverso da i). Tale variabile deve risultare minore o uguale a tutte le differenze di voto tra il modello i e i concorrenti e va massimizzata. Nel foglio Automobili 3 e 4 del file Excel è indicata la matrice delle differenze di punteggio. Per ogni sottoproblema i è significativa la colonna i-esima. Le variabili y(i) sono riportate sotto la matrice e i loro valori ottimi sono stati riportati a loro volta più in basso. Quelli evidenziati in rosa indicano i modelli che non possono avere un distacco positivo rispetto ai concorrenti.
Esercizio 2: Rover esploratori Le variabili decisionali in questo problema sono esclusivamente variabili binarie che definiscono l assegnamento delle operazioni ai rover. Ci sono quindi tante variabili binarie quanto il numero delle operazioni moltiplicato per il numero dei rover, cioè 20x2=40. I vincoli del problema impongono che ogni operazione sia assegnato al massimo una volta (è lecito assegnarla zero volte, cioè tralasciarla), e che il consumo complessivo delle due risorse scarse, tempo ed energia, non ecceda le quantità disponibili per ciascun rover. Il valore della soluzione è dato dal prodotto scalare del vettore dei valori scientifici per il vettore che contiene il numero di assegnamenti di ciascuna operazione (che può essere solo pari a 0 o a 1). Domande 1 e 2. La soluzione ottima (foglio Esploratori 1 e 2 nel file Excel Esploratori.xls ) vale 127800 Euro. Domanda 3. Modificando il termine noto di uno dei vincoli si ottiene facilmente la nuova soluzione ottima, di valore 116000 Euro (foglio Esploratori 3 del file Excel).
Esercizio 3: La spesa di Marilù Il problema richiede di determinare per ogni giorno delle prossime tre settimane se fare la spesa in quel giorno e, in caso affermativo, quanta pasta comprare. La prima decisione viene rappresentata da una variabile binaria, la seconda da una variabile continua, non-negativa. La nota sulla pasta fatta in casa serve a specificare che non è necessario che le variabili che definiscono la quantità di pasta siano variabili intere, come accadrebbe se la pasta fosse acquistata in confezioni. Dette y(i) le variabili binarie che indicano se fare o no la spesa in ogni giorno i=1...21 e x(i) le variabili continue che indicano quanta pasta acquistare in ogni giorno i=1...21, deve valere il vincolo x(i) <= Q y(i) dove Q è la capacità del cestino. Per poter verificare che la pasta sia sufficiente in ogni sera, occorre definire le scorte z(i) presenti in dispensa al termine di ogni giorno i=0...21 (le scorte al termine del giorno 0 sono le scorte inizialmente disponibili). Anche le quantità z(i) sono continue. Perché la pasta sia sempre sufficiente bisogna imporre che le variabili z(i) siano tutte non-negative. Detta d(i) la domanda di pasta nel giorno i=1...21, tra le variabili vale la relazione: per ogni giorno i=1...21. z(i-1) + x(i) = d(i) + z(i) La funzione obiettivo richiede di minimizzare il numero di viaggi, cioè la somma delle variabili y(i). Il modello è nel foglio Marilù 1 e 2 del file Excel Marilu.xls. Domande 1 e 2. La soluzione ottima prevede tre viaggi (domanda 1), che possono essere compiuti ad esempio (domanda 2) nei giorni 1, 6 e 11, acquistando rispettivamente le quantità 1500, 1500 e 1070. Il costo di questa soluzione sarebbe pari a Euro 3,8025. Non è detto che la soluzione ottima sia unica. Domanda 3. Imponendo che il numero dei viaggi sia pari a 3 e ottimizzando come nuova funzione obiettivo i costi, si ottiene una soluzione di costo 3,395 Euro, che prevede i viaggi nei giorni 1, 5 e 12, acquistando rispettivamente le quantità 1070, 1500 e 1500, come riportato nel foglio Marilù 3 del file Excel. Non è detto che questa soluzione ottima sia unica. Domanda 4. Modificando il termine noto del vincolo sul numero di viaggi, da 3 a 4, si ottiene una nuova soluzione ottima di costo 3,291 Euro, come riportato sul foglio Marilù 4 del file Excel.
Esercizio 4: Rete logistica L esercizio è stato tratto dal testo G.Ghiani, R. Musmanno, Modelli e Metodi per l Organizzazione dei Sistemi Logistici, Pitagora Editrice Bologna, 2000. Le variabili decisionali in questo esercizio sono le quantità di flusso di prodotto che vengono trasportate su ciascuno dei collegamenti della rete logistica. Ci sono due collegamenti da Rotterdam ai due magazzini e 2x4=8 collegamenti dai 2 magazzini ai 4 punti-vendita. Quindi in totale i collegamenti sono 10 e altrettante sono le variabili del problema (continue, non-negative). I vincoli del problema impongono che la quantità totale annua di prodotto in arrivo ad ogni punto-vendita sia pari alla domanda del mercato, che il totale annuo di prodotto uscente dal magazzino sia pari alla domanda annua complessiva e che per entrambi i magazzini il totale annuo entrante sia uguale al totale annuo uscente. Inoltre esiste un vincolo di capacità sui magazzini che impone che il totale annuo entrante ed uscente dal magazzino non ecceda la capacità. I costi di trasporto complessivi, che rappresentano la funzione obiettivo da minimizzare, si ottengono sommando i costi su ogni collegamento. A loro volta i costi su ogni singolo collegamento si ottengono moltiplicando il costo unitario di trasporto (dato) per la quantità di flusso di prodotto che viene trasportato annualmente su quel collegamento (variabile). Domanda 1. Il modello che consente di rispondere alla domanda 1 è riportato nel primo foglio del file Excel Rete logistica.xls. La soluzione ottima risulta essere: Da Rotterdam A Bristol 150000 A Middlesborough 140000 TOTALE 290000 A Londra A Birmingham A Leeds A Edimburgo TOTALE Da Bristol 90000 60000 0 0 150000 Da Middlesborough 0 20000 50000 70000 140000 TOTALE 90000 80000 50000 70000 Domanda 2. Il costo minimo risulta pari a 9906000 Euro/anno. Domanda 3. Aumentando le capacità dei magazzini da 150000 a 180000 e risolvendo nuovamente il modello (secondo foglio dello stesso file), si osserva che la nuova soluzione ottima prevede un transito di 170000 unità di prodotto da Bristol e 120000 da Middlesborough. Perciò l ampliamento di Bristol è utile, l altro è inutile. Il risparmio che si consegue è di 156000 Euro/anno. Poiché è necessario ampliare un magazzino e ciò costa 390000 Euro, l investimento viene ammortizzato in 2,5 anni.
Esercizio 5: Tiro al piattello L esercizio richiede anzitutto di esprimere la funzione obiettivo (probabilità di colpire il piattello) come funzione del tempo (si chiede infatti di determinare in quale istante sia meglio sparare): la variabile decisionale è un istante di tempo. La funzione obiettivo è il prodotto di due indicatori (visibilità e stabilità), che vanno quindi espressi entrambi in funzione del tempo. Visibilità. E immediato esprimere la visibilità in funzione dell altezza del piattello da terra. Si tratta quindi di esprimere l altezza in funzione del tempo. E noto (nozioni di cinematica + esperienza della fase locale esercizio Artiglieria ) che il piattello, soggetto all attrazione gravitazionale, percorre una traiettoria parabolica. La componente verticale (l unica che interessa) del vettore posizione, cioè l altezza da terra, è data dalla formula del moto uniformemente accelerato: h(t) = Vy t ½ g t^2, dove Vy indica la componente verticale del vettore velocità iniziale. E possibile determinare per via analitica il valore di Vy calcolando la derivata prima di h(t), dh/dt = Vy g t uguagliandola a 0 per trovare il valore di t corrispondente all apice, dh/dt = 0 t_apice = Vy/g trovare il corrispondente valore di h h_apice = h(t_apice) = Vy^2 / g ½ g (Vy/g)^2 = Vy^2 / 2g e infine ponendo che quest ultimo sia uguale all inverso di alfa, che è dato: h_apice = 1/alfa Vy = sqrt(2g/alfa) Una volta ottenuto il valore di Vy, si conosce quindi la funzione h(t): Quindi la visibilità è data da: h(t) = sqrt(2g/alfa) t ½ g t^2. v = alfa h(t) = sqrt(2 g alfa) t ½ g alfa t^2. Un modo equivalente di esprimere la stessa funzione è: v = t/t_apice ( 2 t/t_apice) Questo procedimento può essere seguito dagli studenti che conoscono il calcolo differenziale e quindi sanno trovare t_apice e h_apice calcolando la derivata prima e ponendola uguale a zero. Il valore di t_apice però si può ricavare anche più semplicemente considerando il tempo che impiegherebbe il piattello a cadere al suolo se partisse da fermo da un altezza pari ad h_apice (che è nota), ossia sqrt(2 g h_apice).
E possibile tuttavia ricavare il valore di Vy anche risolvendo un problema (ausiliario) di ottimizzazione! Il valore di Vy cercato è infatti il minimo valore di Vy sufficiente a far sì che il piattello raggiunga l altezza 1/alfa. Il problema si formula quindi come: min s.t. Vy Vy t ½ g t^2 >= 1/alfa Vy >= 0 t >= 0 che ha come soluzione ottima Vy = 19.809 m/sec e t = 2.019 sec. Il valore di t così ricavato è t_apice. Domanda 1. Quindi la risposta alla domanda 1 può essere data sia con il calcolo differenziale, sia impostando un modellino di ottimizzazione non lineare. Quale delle due strade viene seguita non ha alcuna influenza sulla possibilità di rispondere alle domande successive. Stabilità. La stabilità è già data come funzione del tempo, quindi non c è bisogno di ulteriori calcoli o elaborazioni. Basta rappresentare nel modello s = e^(- t / beta) Domanda 2. Il modello completo (ovviamente non-lineare, ma convesso) è nel file Excel Piattello.xls. Il modello ha una sola variabile continua non-negativa, che è l istante in cui sparare. La variabile inoltre è limitata inferiormente dal tempo di reazione, pari a 0,5 secondi (il vincolo comunque non è attivo all ottimo). La soluzione ottima risulta: t* = 0,647 sec h* = 10,77 m v* = 0,538 s* = 0,445 P*=24% Domande 3 e 4. In questa variante si devono raddoppiare le variabili, cioè considerare due istanti di sparo, t1 e t2, con il vincolo ulteriore che siano distanziati di almeno 0,25 secondi. La funzione obiettivo è di tipo min-max. Il modello è nel terzo worksheet del file Excel. La soluzione ottima risulta: t1* = 0,53 sec t2* = 0,78 sec P1* = P2* = 23,5%