Esercizi di Ricerca Operativa I
|
|
|
- Maurizio Coppola
- 9 anni fa
- Visualizzazioni
Transcript
1 Esercizi di Ricerca Operativa I Raffaele Pesenti, Dario Bauso March 29, 2006 Domande Introduzione 1. Cos e la Ricerca Operativa? 2. Quali problemi affronta un ricercatore operativo? Fare un esempio indicando i diversi livelli decisionali? 3. Nella filosofia di approccio a un problema, quali sono i passi da affrontare? Tracciare un (possibile) schema. 4. Nello sviluppo di un modello, da cosa dipende la sua complessità? Da cosa dipendono i limiti di un modello, ovvero la qualità delle risposte da esso ottenibili? Come si cerca di superare i limiti di un modello? Modelli Lineari. Le domande in questa sessione fanno riferimento ai modelli presentati sui lucidi. Ovviamente sotto ipotesi diverse da quelle presentate nei lucidi si potrebbero presentare modelli differenti. 1. Come si definisce un problema di Programmazione Lineare? 2. Si descriva la formulazione generale del problema del mix di produzione, precisando il significato della funzione obiettivo, dei vincoli, delle leve decisionali e dei dati tecnologici. 3. Si descriva la formulazione generale del problema della dieta, precisando il significato della funzione obiettivo, dei vincoli, delle leve decisionali e dei dati tecnologici. 4. Come si modifica il modello della dieta in presenza di costi convessi per l alimento 1 se acquistato in quantità superiore a UB? 5. Si descriva la formulazione generale del problema del trasporto, precisando il significato della funzione obiettivo, dei vincoli, delle leve decisionali e dei dati tecnologici. 6. Si descriva la formulazione generale del problema della miscela, precisando il significato della funzione obiettivo, dei vincoli, delle leve decisionali e dei dati tecnologici. 1
2 7. Si descriva la formulazione generale del problema del portafoglio titoli, precisando il significato della funzione obiettivo, dei vincoli, delle leve decisionali e dei dati tecnologici. 8. Cosa accade al problema del portafoglio titoli se trascuriamo il vincolo sul budget disponibile? Motivare la risposta e fare un esempio grafico nel piano. 9. Nella pianificazione della produzione, si precisi il significato della funzione obiettivo, dei vincoli, delle leve decisionali e dei dati tecnologici. 10. Si descriva la formulazione generale del problema dello scheduling, precisando il significato della funzione obiettivo, dei vincoli, delle leve decisionali e dei dati tecnologici. Programmazione Lineare: approccio geometrico. 1. Quanti vincoli verifica all uguaglianza una soluzione di base ammissibile non degenere? All intersezione di quanti iperpiani giace una soluzione di base ammissibile non degenere? Come si individuano tali iperpiani? 2. Quando una soluzione di base ammissibile si dice degenere? Che vuol dire geometricamente? 3. Perchè è importante la matrice M = B N? 0 I 4. Perchè è importante la matrice M 1 = B 1 B 1 N? 0 I 5. Che vuol dire algebricamente muoversi su uno spigolo che diparte da un vertice? 6. Per fissata base B, come si esprimono le variabili in base in funzione delle sole variabili fuori base? Commentare la formula dal punto di vista geometrico. 7. Per fissata base B, come si esprime la funzione obiettivo in funzione delle sole variabili fuori base? Commentare la formula dal punto di vista geometrico. 8. Nella formula z = c B B 1 b (c B B 1 N c N )x N che dimensioni ha, come è definito e che cosa indica, i) il termine noto c B B 1 b? ii) il vettore tra parentesi (c N c B B 1 N)? 9. Che vuol dire che il costo ridotto c j è positivo? Commentare dal punto di vista geometrico. 10. In cosa consiste, dal punto di vista geometrico, la verifica di ottimalità che il simplesso esegue ad ogni iterazione. 11. In cosa consiste, dal punto di vista geometrico, la verifica di ammissibilità e il conseguente cambio di base che il simplesso esegue ad ogni iterazione. 12. Si enunci il teorema di ottimalità. 13. Si enunci il teorema di illimitatezza. Programmazione lineare, approccio primale 2
3 1. Quale è il numero massimo di soluzioni di base ammissibili che possono esistere per un problema di programmazione lineare su cinque variabili con tre vincoli di disuguaglianza? 2. Quale è il numero massimo di iterazioni che la fase II del simplesso può dovere eseguire per trovare la soluzione ottima di un problema di 6 variabili, 3 vincoli di disuguaglianza e 3 vincoli di uguaglianza? Supporre che la prima soluzione di base ammissibile sia nota. 3. Stimare quale è il tempo di esecuzione massimo che l algoritmo del simplesso può richiedere per risolvere un problema con 1000 vincoli di disuguaglianza e variabili. Supporre di avere a disposizione un calcolatore da 10 teraflop e che il calcolatore sia capace di eseguire un iterazione del simplesso con sole 10 operazioni floating point. 4. Stimare quale è il tempo di esecuzione medio che l algoritmo del simplesso può richiedere per risolvere un problema con 1000 vincoli di disuguaglianza e variabili. Supporre di avere a disposizione un calcolatore da 10 teraflop e che il calcolatore sia capace di eseguire un iterazione del simplesso con sole 10 operazioni floating point. Supporre in che in media l algoritmo del simplesso esegua tra fase I e fase II un numero di iterazioni di circa 10m, dove m è il numero di vincoli. 5. Quale è l idea fondamentale su cui si basa l algoritmo del simplesso? 6. Perché il metodo di ricerca dell ottimo del simplesso può essere definito di ricerca locale? Quali difficoltà possono incontrarsi nella nell applicazione di metodi di ricerca locale per altri problemi di ottimizzazione? 7. Perché l algoritmo del simplesso è suddiviso in due fasi? 8. Come viene determinata la funzione obiettivo della fase I del simplesso? Che cosa si può concludere circa l esistenza di soluzioni ammissibili per il problema originale una volta noto il valore ottimo della funzione obiettivo della Fase I del simplesso. 9. Cosa si intende quando si afferma che il problema max{cx, Ax = b} è banale? 10. Enunciare il Teorema Fondamentale della Programmazione Lineare. 11. Che cosa sono le soluzioni di base ammissibili di un problema di programmazione lineare e perché sono di interesse? 12. Quale è il significato matematico dei costi ridotti? 13. Cosa significa dal punto di vista economico che, per un problema di produzione, all ottimo il costo ridotto della variabile x A è uguale a 3? 14. Cosa significa dal punto di vista economico che, per un problema di dieta, all ottimo il costo ridotto della variabile x A è uguale a 2? 15. Quale è il significato matematico dei prezzi ombra? 16. Cosa significa dal punto di vista economico che, per un problema di produzione, all ottimo il prezzo ombra del vincolo associato alla risorsa R è uguale a 5? 3
4 17. Cosa significa dal punto di vista economico che, per un problema di dieta, all ottimo il prezzo ombra del vincolo associato all elemento nutrizionale R è uguale a 4? 18. Si abbia un problema di programmazione lineare di massimizzazione. Sia 2 il valore del prezzo ombra associato al vincolo x 1 + 5x 2 6, sia inoltre [ 3, 4] l intervallo di validità determinato dall analisi di sensibilità. Determinare di quanto varia il valore ottimo della funzione obiettivo per variazioni del termine noto dei seguenti valori: 3, 6, -1, Si abbia un problema di programmazione lineare di minimizzazione. Sia 2 il valore del prezzo ombra associato al vincolo x 1 + 5x 2 6, sia inoltre [ 3, 4] l intervallo di validità determinato dall analisi di sensibilità. Determinare di quanto varia il valore ottimo della funzione obiettivo per variazioni del termine noto dei seguenti valori: 3, 6, -1, Si abbia un problema di programmazione lineare di massimizzazione. Sia 2 il valore del prezzo ombra associato al vincolo x 1 + 5x 2 6, sia inoltre [ 3, 4] l intervallo di validità determinato dall analisi di sensibilità. Determinare di quanto varia il valore ottimo della funzione obiettivo per variazioni del termine noto dei seguenti valori: 3, 6, -1, Si abbia un problema di programmazione lineare di minimizzazione. Sia 2 il valore del prezzo ombra associato al vincolo x 1 + 5x 2 6, sia inoltre [ 3, 4] l intervallo di validità determinato dall analisi di sensibilità. Determinare di quanto varia il valore ottimo della funzione obiettivo per variazioni del termine noto dei seguenti valori: 3, 6, -1, Si abbia un problema di programmazione lineare di massimizzazione. Sia 2 il valore del costo ridotto associato alla variabile x 1 0, sia inoltre [, 2] l intervallo di validità determinato dall analisi di sensibilità. Determinare di quanto varia il valore ottimo della funzione obiettivo per variazioni uguali a 1, 6, -5 del coefficiente c 1 associato alla variabile x 1 nella funzione obiettivo stessa. 23. Si abbia un problema di programmazione lineare di minimizzazione. Sia 0 il valore del costo ridotto associato alla variabile x 2 0 in base, sia inoltre [ 3, 4] l intervallo di validità determinato dall analisi di sensibilità. Determinare di quanto varia il valore ottimo della funzione obiettivo per variazioni uguali a 3, 6, -1, -5 del coefficiente c 2 associato alla variabile x 1 nella funzione obiettivo stessa. 24. Dimostrare che è sempre possibile eliminare una variabile non vincolata in segno da un problema di programmazione lineare in forma standard. 25. Cosa è il cycling? Cosa viene fatto nella pratica per evitarlo? 26. L algoritmo del simplesso primale (nella fase II) richiede che le soluzioni di base ottenute ad ogni iterazione siano ammissibili. Cosa implica questa richiesta nella struttura dei tableau determinati ad ogni iterazione? 27. Come si può determinare se un problema di LP ha soluzione ottima all infinito? 4
5 Programmazione lineare, approccio duale 1. Enunciare e dimostrare il Teorema della Dualità Debole. 2. Enunciare il Teorema della Dualità Forte. Spiegare in che modo può essere utilizzato nella dimostrazione dell ottimalità di una soluzione. 3. Enunciare il Teorema dello Scarto Complementare. Spiegare in che modo può essere utilizzato nella dimostrazione dell ottimalità di una soluzione. 4. Discutere l applicazione economica del Teorema della Dualità Debole al problema della produzione. 5. Discutere l applicazione economica del Teorema della Dualità Debole al problema della dieta. 6. È possibile che aggiungendo un ulteriore vincolo ad un problema di LP di cui si è già determinata una soluzione ottima si ottenga un nuovo problema di LP con soluzione ottima all infinito? E un problema di LP senza soluzioni ammissibili? 7. È possibile che aggiungendo un ulteriore variabile ad un problema di LP di cui si è già determinata una soluzione ottima si ottenga un nuovo problema di LP con soluzione ottima all infinito? E un problema di LP senza soluzioni ammissibili? 8. Cosa si può concludere sul valore ottimo del problema duale se il problema primale associato ha soluzione finita / ha soluzione all infinito / non ha soluzione ammissibile? 9. Dato il seguente problema di programmazione lineare verificare attraverso il Teorema di Dualità Forte se la soluzione x = (0, 11, 32 3 ) è ottima max z = 19x 1 10x x 3 4x 1 x 2 + 2x x 1 2x 2 + 3x 3 10 x 1 + x 2 11 x 1, x 2, x Provare, sempre attraverso il Teorema di Dualità Forte, che per lo stesso problema all esercizio precedente la soluzione x = ( 10 3, 0, 0) non è ottima. Programmazione lineare, domande a risposta multipla 1. Un problema di programmazione lineare deve avere tutti i vincoli di disuguaglianza del tipo se: (a) è un problema di massimo VERO FALSO (b) il suo duale è un problema di minimo e a variabili libere VERO FALSO (c) il suo duale è un problema di massimo VERO FALSO (d) il suo duale è un problema di minimo e tutti i vincoli sono del tipo VERO FALSO (e) è un problema di massimo con variabili non negative VERO FALSO 5
6 (f) il suo duale è un problema di minimo con variabili non negative VERO FALSO 2. Un problema di programmazione lineare ha alcune variabili che possono essere libere se: (a) ammette soluzioni ammissibili solo se tutti i suoi vincoli sono equazioni VERO FALSO (b) solo se il suo duale è un problema di massimo con vincoli del tipo = e del tipo VERO FALSO (c) è un problema di minimo che ammette soluzione ottima illimitata VERO FALSO (d) il suo duale ha alcuni vincoli del tipo = VERO FALSO (e) il suo duale ha variabili che possono essere libere VERO FALSO (f) il suo duale ha vincoli di uguaglianza solo se il problema originale è di massimo VERO FALSO 3. Un problema di programmazione lineare ha soluzioni ammissibili se: (a) il suo duale ha soluzioni ammissibili ma non ha soluzioni ottime VERO FALSO (b) il suo duale ha certamente una soluzione ottima finita VERO FALSO (c) il suo duale ha certamente delle soluzioni ammissibili VERO FALSO (d) è il duale di un problema che ha certamente delle soluzioni ammissibili VERO FALSO (e) la Fase I del metodo del simplesso termina con una soluzione non positiva VERO FALSO (f) tutte le variabili artificiali si possono porre fuori base alla fine della Fase I del metodo del simplesso VERO FALSO 4. Nel metodo del simplesso primale (a partire da un problema di max): (a) si determina prima la riga e poi la colonna del pivot VERO FALSO (b) se una colonna del tableau ha tutti gli elementi non positivi la funzione obiettivo non è limitata all interno della regione ammissibile VERO FALSO (c) se si sbaglia di scegliere la colonna del pivot si rischia il cycling VERO FALSO (d) il valore della funzione obiettivo non aumenta mai da un iterazione alla successiva VERO FALSO (e) se si ottiene un tableau con alcuni termini noti negativi bisogna proseguire con il metodo duale del simplesso VERO FALSO (f) la scelta della riga del pivot è indifferente VERO FALSO 5. In un problema di programmazione lineare continuo: (a) si può imporre che x 1 sia non superiore a 2 o non inferiore a 5 VERO FALSO (b) si può imporre che il valore assoluto di x 1 sia superiore a 1 VERO FALSO (c) si può imporre che il valore assoluto di x 1 sia non superiore a 1 VERO FALSO (d) si può imporre che il valore assoluto di x 1 sia uguale a 1 VERO FALSO 6. Dato un problema di produzione: 6
7 (a) i costi ridotti positivi delle variabili strutturali esprimono di quanto diminuisce il profitto se si forza la produzione di un unità dei prodotti corrispondenti VERO FALSO (b) se, dato un mix di produzione ammissibile, il costo ridotto di una variabile strutturale è positivo, allora il profitto non peggiora se si intraprende la produzione del manufatto corrispondente VERO FALSO (c) il prezzo ombra delle risorse critiche è sempre nullo VERO FALSO (d) le variabili di slack dei vincoli che non siano facce del poliedro delle soluzioni sono sempre nulli VERO FALSO (e) le risorse associate a vincoli ridondanti non vengono utilizzate nella produzione VERO FALSO 7. Sia x la soluzione ottima di un problema di programmazione lineare di minimo, se si aggiunge una variabile non negativa al problema: (a) può darsi che si producano diverse soluzioni ottime distinte, ma solo se anche prima dell introduzione della nuova variabile accadeva la stessa cosa VERO FALSO (b) il valore ottimo della funzione obiettivo non può aumentare VERO FALSO (c) può darsi che i costi ridotti delle variabili originali rimangano invariati VERO FALSO (d) cambia certamente il valore ottimo di qualche variabile di slack o di surplus VERO FALSO (e) se [x 0] risulta ammissibile per il nuovo problema, allora è anche ottima VERO FALSO 8. Un problema di programmazione lineare ha soluzioni duali ammissibili se: (a) ha soluzioni ammissibili ma non ha soluzioni ottime VERO FALSO (b) ha soluzioni ottime VERO FALSO (c) ha soluzioni ammissibili VERO FALSO (d) la Fase I del metodo del simplesso termina con una soluzione non positiva VERO FALSO (e) tutte le variabili artificiali si possono porre fuori base alla fine della Fase I del metodo del simplesso VERO FALSO 9. Un problema di programmazione lineare non ha soluzioni duali ammissibili se: (a) ha soluzioni ammissibili ma non ha soluzioni ottime VERO FALSO (b) ha soluzioni ottime VERO FALSO (c) se non ha soluzioni ammissibili VERO FALSO (d) la Fase I del metodo del simplesso termina con una soluzione strettamente positiva VERO FALSO 10. Un problema di programmazione lineare non ha soluzioni ammissibili se: (a) il suo duale ha soluzioni ammissibili ma non ha soluzioni ottime VERO FALSO (b) il suo duale ha soluzioni ottime multiple VERO FALSO (c) il suo duale non ha soluzioni ammissibili VERO FALSO 7
8 (d) è il duale di un problema che non ha soluzioni ammissibili VERO FALSO (e) la I Fase del metodo del simplesso indica una soluzione illimitata VERO FALSO (f) tutte le variabili artificiali si trovano fuori base all inizio della II Fase del metodo del simplesso VERO FALSO 11. Nel metodo del simplesso duale: (a) si determina prima la riga e poi la colonna del pivot VERO FALSO (b) ci accorgiamo che la funzione obiettivo non e limitata all interno della regione ammissibile se una colonna del tableau ha tutti gli elementi non positivi VERO FALSO (c) se si sbaglia di scegliere la colonna del pivot si ottiene un tableau con qualche coefficiente negativo nella riga della funzione obiettivo VERO FALSO (d) se il problema primale è un problema di massimizzazione, il valore della funzione obiettivo non aumenta mai da un iterazione alla successiva VERO FALSO (e) la scelta della riga del pivot è indifferente VERO FALSO (f) se si ottiene un tableau con tutti i termini noti positivi o nulli bisogna proseguire con il metodo normale (primale) del simplesso VERO FALSO 12. In un problema di programmazione lineare: (a) le variabili possono essere vincolate a stare in un intervallo, estremi esclusi VERO FALSO (b) è sempre possibile fare in modo che tutte le variabili siano non positive VERO FALSO (c) una variabile può essere vincolata a NON assumere un dato valore VERO FALSO (d) una variabile può essere vincolata a NON assumere i valori INTERNI a un dato intervallo VERO FALSO (e) se è un problema di massimo non ci possono essere vincoli del tipo VERO FALSO 13. Se dopo aver risolto un problema di programmazione lineare si aumenta un termine noto del tableau iniziale: (a) il valore ottimo della funzione obiettivo aumenta anch esso VERO FALSO (b) può darsi che il valore ottimo della funzione obiettivo non vari VERO FALSO (c) cambia certamente il valore ottimo di qualche variabile strutturale VERO FALSO (d) può darsi che il nuovo problema non abbia soluzioni ammissibili, ma solo nei due casi in cui non ne avesse avute neanche prima, oppure in cui sia un problema di minimo VERO FALSO Risposte agli esercizi Introduzione (1) E un approccio scientifico all analisi di problemi e al decision making. 8
9 (2) Problemi di progettazione e gestione efficace ed efficiente di sistemi in presenza di risorse limitate. Esempio: Industria manifatturiera. A livello strategico ci si occupa del lay-out degli stabilimenti, magazzini, macchinari, oppure della pianificazione aggregata delle scorte della produzione. A livello tattico, ci si occupa della turnazione del personale, mix di produzione e cicli di lavorazione. A livello operativo, ci si occupa dello scheduling della produzione, della gestione operativa delle scorte, di approvigionamento dai fornitori e distribuzione ai clienti. (3) Individuazione e formulazione problema definizione obiettivi, leve decisionali... costruzione modello e raccolta dati codifica verifica validazione pianificazione esperimenti realizzazione esperimenti stesura report implementazione. (4) Dai dati che dovranno essere raccolti e dall onere computazionale richiesto per la risoluzione. Mediante analisi di sensibilit e/o analisi di scenario. Modelli Lineari (1) Problema di ottimizzazione in cui: la funzione obiettivo lineare, le condizioni che descrivono l insieme ammissibile sono lineari, le soluzioni ammissibili sono continue e i parametri deterministici. (2) Funzione obiettivo: massimizzare profitti vincoli; vincoli: non consumare piu materie prime di quelle disponibili; leve decisionali: quantita prodotte di beni; dati tecnologici: c i profitto unitario bene i-mo, a ji consumo unitario di materia prima j-ma per produrre bene i-mo, b j disponibilita materia prima j-ma. n max c i x i n a ji x i b j, j = 1,..., m x i 0 i = 1,..., n. (3) Funzione obiettivo: minimizzare costi; vincoli: soddisfare requisiti alimentari minimi; leve decisionali: quantità di alimenti acquistati; dati tecnologici: c i costo unitario alimento i-mo, a ji apporto nutriente j-mo per unita di alimento i-mo, b j richiesta minima di nutriente j-mo n min c i x i n a ji x i b j, j = 1,..., m x i 0 i = 1,..., n. (4) Introducendo una variabile aggiuntiva y 1 che indica la quantita di alimento 1 acquistato a prezzo maggiorato, e imponendo che la quantita di alimento 1 acquistata a prezzo normale non 9
10 ecceda UB. Il modello diventa: n min c i x i + c 1 y 1 n a ji x i + a j1 y 1 b j, 0 x 1 UB, j = 1,..., m y 1, x i 0 i = 2,..., n. (5) Funzione obiettivo: minimizzare costi di trasporto; vincoli: nessun fornitore può inviare più della propria capacità, e tutti i clienti devono ricevere almeno quanto desiderato; leve decisionali: quantità inviate dai fornitori ai clienti; dati tecnologici: c ij costo di trasporto unitario da fornitore imo a cliente jmo, a i capacità fornitore imo, b j richiesta minima cliente j-mo n m min c ij x ij j=1 m x ij a i, j=1 n x ij b j, i = 1,..., n j = 1,..., m x i 0 i = 1,..., n. (6) Funzione obiettivo: minimizzare i costi di acquisto composti base per unità di miscela desiderata; vincoli: la miscela deve soddisfare le caratteristiche richieste; leve decisionali: quantità ogni composto base da utilizzare in termini percentuali di miscela finale; dati tecnologici: c i costo unitario (in peso) composto imo, a ji caratteristica jma composto base imo, b j caratteristica j-ma per miscela desiderata n min c i x i n a ji x ij = b j, n x i = 1, j = 1,..., m x i 0 i = 1,..., n. (7) Funzione obiettivo: massimizzare il ritorno atteso; vincoli: il portafoglio deve garantire un livello minimo per ciascuna caratteristica (e.g., affidabilità, maturità...) e deve essere differenziato come tipologia di titoli, e, deve rispettare il budget disponibile; leve decisionali: quantità da acquistare di ogni titolo i; dati tecnologici: p i profitto atteso unitario titolo imo, t i tassazione titolo imo, c i costo unitario titolo imo, a ji caratteristica jma titolo imo, b j caratteristica j-ma minima richiesta al portafoglio, d k numero minimo titoli di tipo kmo che devono essere presenti 10
11 nel portafoglio, Q k insieme dei titoli di tipo kmo, C budget disponibile. n max p i (1 t i )x i n a ji x i b j i Q(k) n x i, x i d k, n c i x i C, j = 1,..., m k = 1,..., q x i 0 i = 1,..., n. (8) Il problema diventa illimitato. A partire da una qualunque soluzione ammissibile x (1) esiste sempre una seconda soluzione x (2) = x (1) + λx (1), λ 0 anch essa ammissibile e con un valore superiore della funzione obiettivo. (9) Funzione obiettivo: massimizzare il profitto (ricavo-costi) lungo un orizzonte temporale di pianificazione di lunghezza T, il ricavo deriva dalla vendita dei prodotti finiti, i costi comprendono i costi di acquisto materia prima, costi di mantenimento del magazzino, costi di produzione dei manufatti, costi di penuria domande non soddisfatte; vincoli: rispettare capacità produttive e di rifornimento, conservatività delle risorse, non offrire più della domanda; leve decisionali: quantità materie prime da utilizzare e prodotti finiti da realizzare; dati tecnologici: oltre ai ricavi e costi succitati, le capacità produttive e di rifornimento, la lunghezza dell orizzonte di pianificazione T, la domanda attesa lungo l orizzonte, i livelli di scorte (materie prime e prodotti finiti), quantità materie prime richieste per unità di manufatto realizzato. (10) Funzione obiettivo: minimizzare il tempo di completamento di tutte le attività; vincoli: vincoli di precedenza tra le attività; leve decisionali: istanti di inizio di ogni attività; dati tecnologici: p i tempo di esecuzione attività ima, prec(i) insieme di attività che precedono la ima. min T T t i + p i, t i t j + p j, i = 1,..., n i = 1,..., n, j prec(i) t i 0 i = 1,..., n. Programmazione Lineare: approccio geometrico (1) Per un problema con n variabili e m vincoli, una soluzione di base ammissibile non degenere verifica n vincoli all uguaglianza. Pertanto, giace all intersezione di n iperpiani. I primi m iperpiani derivano dai vincoli Ax = b, i rimanenti n m iperpiani si ottengono imponendo che le variabili in base siano nulle, x N = 0. 11
12 (2) Quando verifica all uguaglianza più di n vincoli. Geometricamente vuol dire che il vertice associato giace all interesezione di più di n iperpiani (si pensi, ad esempio nel caso tridimensionale, al vertice di una piramide a base quadrata) (3) Perché le righe di M sono le direzioni normali agli n iperpiani su cui giace la soluzione di base ammissibile associata alla base B. (4) Perché le ultime n m colonne di M 1 indicano le direzioni di n m spigoli che si dipartono dal vertice associato alla base B. Conoscendo tali direzioni, si può proiettare il gradiente c della funzione obiettivo su di esse e appurare se muovendosi lungo uno degli spigoli associati la funzione obiettivo cresce o decresce. (5) Ogni spigolo è associato a una variabile fuori base. Muoversi lungo tale spigolo, allontanandosi dal vertice corrente, algebricamente significa far assumere alla variabile fuori base valori che da zero divengono via via crescenti (mantenendo nulle le rimanenti variabili fuori base). (6) Le variabili di base x B si possono esprimere secondo la formula x B = B 1 b B 1 Nx N. Se, ad esempio, facciamo aumentare una sola variabile fuori base mantenendo nulle le rimanenti, la formula esprime le variazioni conseguenti dei valori delle variabili in base. Geometricamente questo corrisponde a calcolare il valore che assumono le variabili in base x B quando ci si muove lungo lo spigolo che diparte dal vertice corrente e associato alla variabile fuori base in questione. (7) Il valore z della funzione obiettivo può essere espresso secondo la formula z = c B B 1 b (c B B 1 N c N )x N. Se, ad esempio, facciamo aumentare una sola variabile fuori base mantenendo nulle le rimanenti, la formula esprime la variazione conseguente del valore della funzione obiettivo. Geometricamente questo corrisponde a calcolare il valore che assume z quando ci si muove lungo lo spigolo che diparte dal vertice corrente e associato alla variabile fuori base in questione. (8) i) Il termine noto c B B 1 b è uno scalare e indica il valore della funzione obiettivo in corrispondenza alla BFS associata alla base B. ii) Il vettore (c N c B B 1 N) ha dimensioni 1 (n m). È definito vettore dei costi ridotti e ciascuna sua componente c j indica la proiezione del gradiente c della funzione obiettivo lungo la direzione η j dello spigolo jmo che si diparte dal vertice. (9) Se c j > 0 allora che la funzione obiettivo cresce se facciamo aumentare la variabile fuori base x j, ovvero se ci muoviamo lungo lo spigolo di direzione η j. Geometricamente significa che il gradiente c della funzione obiettivo e la direzione dello spigolo η j formano un angolo acuto, infatti c η j > 0. (10) Ad ogni iterazione di simplesso, la verifica di ottimalità consiste nel proiettare il gradiente c della funzione obiettivo lungo gli spigoli di direzione η j, j R che si dipartono dal vertice corrente (associato alla BFS corrente). Se tutte le proiezioni sono negative allora la soluzione corrente è 12
13 ottima. Se esiste uno spigolo per cui tale proiezione è positiva allora la soluzione corrente non è ottima. Se esiste uno spigolo per cui la proiezione è nulla, tale spigolo contiene infinite soluzione ottime equivalenti. (11) Ad ogni iterazione di simplesso, la verifica di ammissibilità consiste nell individuare il massimo valore che la variabile entrante in base può assumere mantenendo la non negatività delle variabili correntemente in base. Geometricamente, il cambio di base implica lo spostarsi dal vertice corrente a uno ad esso adiacente lungo lo spigolo associato alla variabile entrante in base. (12) (Teorema di Ottimalità) Una soluzione di base ammissibile x è ottima, se tutti i costi ridotti sono non positivi, c j 0 (oppure y 00 0). La soluzione x è anche l unica soluzione ottima (primale) se costi ridotti strettamente negativi, c j < 0 (oppure y 00 > 0). (13) (Teorema di Illimitatezza) Se c k è negativo (y 0k positivo) e y ik è non positivo per ogni i S, allora il problema è illimitato; Programmazione lineare, approccio primale (1) 8 3. Il numero massimo di soluzioni di base ammissibili è uguale al numero di possibili matrici di base B che possono essere definite nella matrice A dei coefficienti dei vincoli quando il problema di LP è espresso in forma standard. Nel problema in questione, la una matrice A della forma standard ha dimensione 3 8, mentre le sottomatrici di base B hanno dimensione 3 3. Quindi possono definirsi al massimo 8 3 differenti matrici di base in A. (2) Il problema in questione ha al massimo 9 6 soluzioni di base. Assumendo che non si presentino problemi di cycling, il numero massimo delle iterazioni della fase II del simplesso è quindi 9 6. (3) Il problema in questione ha al massimo equivale a operazioni in virgola mobile al secondo. > soluzioni di base. Un teraflop peggiore impiegherebbe = secondi ovvero più di anni. La sola fase II del simplesso nel caso (4) Il problema in questione ha un numero di vincoli m = Un teraflop equivale a operazioni in virgola mobile al secondo. In media il tempo di soluzione del problema dato dovrebbe quindi aggirarsi intorno a una frazione di secondo (nelle ipotesi fatte 10 8 secondi). In realtà i tempi sono più lunghi in quanto vengono eseguite più di 10 flops per ogni iterazione del simplesso. In ogni caso il tempo medio di soluzione per un problema di vincoli è dell ordine dei secondi sui calcolatori normali. (5) A partire da una soluzione di base ammissibile l algoritmo del simplesso cerca un altra soluzione 13
14 di base ammissibile non peggiore di quella corrente. L algoritmo itera quindi la ricerca a partire dalla nuova soluzione di base. (6) L algoritmo del simplesso esegue una successione di ricerche locali. Infatti ad ogni iterazione, l algoritmo data una soluzione di base ammissibile cerca un altra soluzione di base ammissibile non peggiore di quella corrente solo tra quelle all interno di un determinato intorno. In particolare appartengono all intorno della soluzione corrente solo le soluzioni la cui matrice di base di riferimento differisce da quella della soluzione corrente per una colonna. Questo approccio di ricerca locale può essere generalizzato anche ad altri problemi di ottimizzazione. Bisogna però definire correttamente cosa è un intorno e tenere presente che per problemi non lineari non si ha la garanzia di raggiungere l ottimo globale, ma solo un ottimo relativo. (7) L algoritmo del simplesso nella fase I determina una prima soluzione ammissibile mentre nella fase II, a partire dalla prima soluzione ammissibile, determina la soluzione ottima attraverso una successione di ricerche locali come descritto ai punti (5) e (6). (8) La funzione obiettivo della fase I del simplesso è una somma di variabili artificiali. Se la funzione obiettivo della fase I del simplesso all ottimo vale 0 allora è la corrispondente soluzione ottima è anche ammissibile per il problema originale. Altrimenti, se la funzione obiettivo è strettamente maggiore di zero, non esiste soluzione ammissibile per il problema originale. Quanto sopra affermato deriva dal fatto che, dato un problema di LP, la fase I del simplesso definisce un nuovo problema artificiale in cui vengono aggiunte le variabili artificiali non negative nei primi membri dei vincoli di maggiore o uguale o di uguaglianza 1. La presenza delle variabili artificiali permette di determinare facilmente una prima soluzione di base per il problema artificiale e quindi di risolverlo rispetto ad una qualunque funzione obiettivo lineare. Per scegliere la funzione obiettivo del problema artificiale si osserva che le soluzioni del problema artificiale sono equivalenti a quelle del problema originale quando tutte le componenti artificiali sono nulle. In altri termini, se si trova una soluzione del problema artificiale con tutte le componenti artificiali nulle allora si ottiene una soluzione ammissibile per il problema originale. Conviene quindi scegliere come funzione obiettivo del problema artificiale la minimizzazione della somma di variabili artificiali poiché tale somma esprime una misura di quanto la soluzione corrente del problema artificiale non è ammissibile per il problema originale. (9) Il problema max{cx, Ax = b}) è banale in quanto o non ha soluzioni ammissibili, o ha un unica soluzione, o la soluzione ottima è all infinito. (10) Un problema di programmazione lineare il cui poliedro delle soluzioni ammissibili non è vuoto ed è limitato ha sempre una soluzione ottima su un vertice del poliedro. (11) Le soluzioni di base ammissibili di un problema min{cx, Ax = b, x 0}) sono le soluzioni ammissibili del tipo x B x N = B 1 b 0 0 esprimibili cioè in termini di una matrice di base B. 1 In realtà i vincoli di uguaglianza vengono spesso eliminati (vedi domanda 24) 14
15 Le soluzioni di base ammissibili sono importanti perchè a ognuna di esse corrisponde ad un vertice del poliedro delle soluzioni ammissibili e viceversa. Attenzione che però esistono delle soluzioni di base ammissibili, dette degeneri, che corrispondono più matrici di base. (12) Il costo ridotto della generica variabile x i indica di quanto può variare al massimo il coefficiente c i della funzione obiettivo affinché all ottimo x i, se nulla, continui a rimanere tale. (13) Il costo ridotto di x A diverso da 0 implica che il valore ottimo di x A è nullo e che quindi il bene A non è prodotto. Il valore 3 del costo ridotto indica che non conviene produrre il bene A se il profitto ad esso associato non aumenta di almeno 3, a parità di altre condizioni. (14) Il costo ridotto di x A diverso da 0 implica che il valore ottimo di x A è nullo e che quindi l alimento A non è acquistato. Il valore 2 del costo ridotto indica che non conviene acquistare l alimento A se il suo costo non diminuisce di almeno 2, a parità di altre condizioni. (15) Il prezzo ombra di un vincolo da indicazioni su quanto varia il valore ottimo della funzione obiettivo al variare del termine noto del vincolo, a parità di altre condizioni. In particolare, il valore del prezzo ombra dà un indicazione esatta per variazioni all interno dell intervallo determinato dall analisi di sensibilità. Fornisce solo dei bound ottimistici al di fuori di tale intervallo. (16) Se in un problema di produzione il prezzo ombra del vincolo associato alla risorsa R è uguale a 5 allora i profitti aumenteranno di 5 per ogni variazione unitaria positiva della disponibilità della risorsa R, se tali variazioni sono sufficientemente piccole da ricadere nell intervallo determinato dall analisi di sensibilità, altrimenti i profitti aumenteranno al più di 5 per ogni variazione unitaria di disponibilità. I profitti diminuiranno di 5 per ogni variazione unitaria negativa della disponibilità della risorsa R, se tali variazioni sono sufficientemente piccole da ricadere nell intervallo determinato dall analisi di sensibilità, altrimenti i profitti diminuiranno almeno di 5 per ogni variazione unitaria di disponibilità. (17) Se in un problema di dieta il prezzo ombra del vincolo associato elemento nutrizionale R è uguale a 4 allora i costi aumenteranno di 4 per ogni variazione unitaria positiva della richiesta di elemento nutrizionale R, se tali variazioni sono sufficientemente piccole da ricadere nell intervallo determinato dall analisi di sensibilità, altrimenti i costi aumenteranno almeno di 4 per ogni variazione unitaria di richiesta. I costi diminuiranno di 4 per ogni variazione unitaria negativa della richiesta di elemento nutrizionale R, se tali variazioni sono sufficientemente piccole da ricadere nell intervallo determinato dall analisi di sensibilità, altrimenti i costi diminuiranno al più di 4 per ogni variazione unitaria. (18) A parità di altre condizioni, per variazioni b del termine noto uguali a 3, poiché 3 [ 3, 4], si ottiene z = 2 3 = 6. Si osservi che per b = 3 si ottiene un vincolo x 1 + 5x 2 9 più debole dell originale x 1 + 5x 2 6 e quindi il valore ottimo della funzione obiettivo, che viene massimizzata, può solo aumentare o al più rimanere costante. Per variazioni b = 6, poiché 6 [ 3, 4], si ottiene z 2 6 = 12. Si osservi che per b = 6 15
16 si ottiene un vincolo x 1 + 5x 2 12 più debole dell originale x 1 + 5x 2 6 e quindi il valore ottimo della funzione obiettivo, che viene massimizzata, può solo aumentare o al più rimanere costante. In generale possiamo affermare che 8 = 2 4 z 2 6 = 12 in quanto la variazione b = 6 > 4 e per una variazione di 4 [ 3, 4] la variazione della funzione obiettivo sarebbe stata certamente di 8. Per variazioni b = 1, poiché 1 [ 3, 4], si ottiene z = 2 ( 1) = 2. Si osservi che per b = 1 si ottiene un vincolo x 1 + 5x 2 5 più forte dell originale x 1 + 5x 2 6 e quindi il valore ottimo della funzione obiettivo, che viene massimizzata, può solo diminuire o al più rimanere costante. Per variazioni b = 5, poiché 5 [ 3, 4], si ottiene z 2 ( 5) = 10. Si osservi che per b = 5 si ottiene un vincolo x 1 + 5x 2 1 più forte dell originale x 1 + 5x 2 6 e quindi il valore ottimo della funzione obiettivo, che viene massimizzata, può solo diminuire o al più rimanere costante. (19) A parità di altre condizioni, per variazioni b del termine noto uguali a 3, poiché 3 [ 3, 4], si ottiene z = 2 3 = 6. Si osservi che per b = 3 si ottiene un vincolo x 1 + 5x 2 9 più debole dell originale x 1 + 5x 2 6 e quindi il valore ottimo della funzione obiettivo, che viene minimizzata, può solo diminuire o al più rimanere costante. Per variazioni b = 6, poiché 6 [ 3, 4], si ottiene z 2 6 = 12. Si osservi che per b = 6 si ottiene un vincolo x 1 + 5x 2 12 più debole dell originale x 1 + 5x 2 6 e quindi il valore ottimo della funzione obiettivo, che viene minimizzata, può solo diminuire o al più rimanere costante. In generale possiamo affermare che 12 = 2 6 z 2 4 = 8 in quanto la variazione b = 6 > 4 e per una variazione di 4 [ 3, 4] la variazione della funzione obiettivo sarebbe stata certamente di -8. Per variazioni b = 1, poiché 1 [ 3, 4], si ottiene z = 2 ( 1) = 2. Si osservi che per b = 1 si ottiene un vincolo x 1 + 5x 2 5 più forte dell originale x 1 + 5x 2 6 e quindi il valore ottimo della funzione obiettivo, che viene minimizzata, può solo aumentare o al più rimanere costante. Per variazioni b = 5, poiché 5 [ 3, 4], si ottiene z 2 ( 5) = 10. Si osservi che per b = 5 si ottiene un vincolo x 1 + 5x 2 1 più forte dell originale x 1 + 5x 2 6 e quindi il valore ottimo della funzione obiettivo, che viene minimizzata, può solo aumentare o al più rimanere costante. (20) A parità di altre condizioni, per variazioni b del termine noto uguali a 3, poiché 3 [ 3, 4], si ottiene z = 2 3 = 6. Si osservi che per b = 3 si ottiene un vincolo x 1 + 5x 2 9 più forte dell originale x 1 + 5x 2 6 e quindi il valore ottimo della funzione obiettivo, che viene massimizzata, può solo diminuire o al più rimanere costante. Per variazioni b = 6, poiché 6 [ 3, 4], si ottiene z 2 6 = 12. Si osservi che per b = 6 si ottiene un vincolo x 1 + 5x 2 12 più forte dell originale x 1 + 5x 2 6 e quindi il valore ottimo 16
17 della funzione obiettivo, che viene massimizzata, può solo diminuire o al più rimanere costante. Per variazioni b = 1, poiché 1 [ 3, 4], si ottiene z = 2 ( 1) = 2. Si osservi che per b = 1 si ottiene un vincolo x 1 + 5x 2 5 più debole dell originale x 1 + 5x 2 6 e quindi il valore ottimo della funzione obiettivo, che viene massimizzata, può solo aumentare o al più rimanere costante. Per variazioni b = 5, poiché 5 [ 3, 4], si ottiene z 2 ( 5) = 10. Si osservi che per b = 5 si ottiene un vincolo x 1 + 5x 2 1 più debole dell originale x 1 + 5x 2 6 e quindi il valore ottimo della funzione obiettivo, che viene massimizzata, può solo aumentare o al più rimanere costante. In generale possiamo affermare che 6 = 2 ( 3) z 2 ( 5) = 10 in quanto la variazione b = 5 < 3 e per una variazione di 3 [ 3, 4] la variazione della funzione obiettivo sarebbe stata certamente di 6. (21) A parità di altre condizioni, per variazioni b del termine noto uguali a 3, poiché 3 [ 3, 4], si ottiene z = 2 3 = 6. Si osservi che per b = 3 si ottiene un vincolo x 1 + 5x 2 9 più forte dell originale x 1 +5x 2 6 e quindi il valore ottimo della funzione obiettivo, che viene minimizzata, può solo aumentare o al più rimanere costante. Per variazioni b = 6, poiché 6 [ 3, 4], si ottiene z 2 6 = 12. Si osservi che per b = 6 si ottiene un vincolo x 1 + 5x 2 12 più forte dell originale x 1 + 5x 2 6 e quindi il valore ottimo della funzione obiettivo, che viene minimizzata, può solo aumentare o al più rimanere costante. Per variazioni b = 1, poiché 1 [ 3, 4], si ottiene z = 2 ( 1) = 2. Si osservi che per b = 1 si ottiene un vincolo x 1 + 5x 2 5 più debole dell originale x 1 + 5x 2 6 e quindi il valore ottimo della funzione obiettivo, che viene minimizzata, può solo diminuire o al più rimanere costante. Per variazioni b = 5, poiché 5 [ 3, 4], si ottiene z 2 ( 5) = 10. Si osservi che per b = 5 si ottiene un vincolo x 1 + 5x 2 1 più debole dell originale x 1 + 5x 2 6 e quindi il valore ottimo della funzione obiettivo, che viene minimizzata, può solo diminuire o al più rimanere costante. In generale possiamo affermare che 10 = 2 ( 5) z 2 ( 3) = 6 in quanto la variazione b = 5 < 3 e per una variazione di 3 [ 3, 4] la variazione della funzione obiettivo sarebbe stata certamente di -6. (22) A parità di altre condizioni, per variazioni c 1 = 1 del coefficiente della variabile x 1 nella funzione obiettivo non si ha nessuna variazione del valore ottimo della funzione obiettivo stessa. Il costo ridotto della variabile x 1 uguale a 2 implica necessariamente che il valore ottimo della variabile x 1 è zero se non si hanno variazioni di almeno c 1 = 2. Ad analogo risultato si poteva giungere osservando che l intervallo determinato dall analisi di sensibilità indica inoltre che non vi possono essere cambiamenti di base per variazioni del coefficiente della funzione obiettivo c 1 tra e 2. Per variazioni c 1 = 6 > 2 del coefficiente della variabile x 1 il valore ottimo della funzione obiettivo, trattandosi di un problema di massimizzazione, potrebbe crescere. La base correntemente 17
18 ottima infatti continuerebbe a rimanere ammissibile, ma non risulterebbe più ottima. Per variazioni c 1 = 5 2 del coefficiente della variabile x 1 il valore ottimo della funzione obiettivo rimarrebbe invariato in quanto, all ottimo, x 1 continuerebbe a valere 0. A questo risultato si potrebbe giungere anche banalmente osservando che se in un problema di massimizzazione x 1 vale zero all ottimo, a maggior ragione continuerà a mantenere tale valore se il suo coefficiente nella funzione obiettivo diminuisce. (23) A parità di altre condizioni, per variazioni c 2 = 3 del coefficiente della variabile x 2 nella funzione obiettivo non si ha nessuna variazione del valore ottimo x 2 di x 2, ma si ha una variazione z = 3 x 2 del valore ottimo della funzione obiettivo. Il valore di x 2 può essere diverso da 0 in quanto è nullo il costo ridotto associato. L intervallo determinato dall analisi di sensibilità indica inoltre che non vi possono essere cambiamenti di base per variazioni del coefficiente della funzione obiettivo c 2 tra 3 e 4. Ne consegue che per variazioni di c 2 in tale intervallo, poiché si suppone di non modificare il b valore dei termini noti, necessariamente rimarrà costante il valore di x 2. Quindi la variazione del valore ottimo della funzione obiettivo dovrà attribuirsi alla sola variazione del coefficiente c 2. Per variazioni c 1 = 6 > 4 il valore ottimo della funzione obiettivo varia di 4 x 2 z 6 x 2. La base correntemente ottima infatti continuerebbe a rimanere ammissibile, ma non risulterebbe più ottima. Se la base fosse rimasta ottima si avrebbe avuto z = 6 x 2, ma non essendo tale base ottima e trattandosi di un problema di minimizzazione, si deve supporre che il valore di z possa crescere di meno. D altra parte se c 1 = 4 si avrebbe certamente avuto una variazione z = 4 x 2. Si deve quindi supporre che z cada all interno dell intervallo indicato. Per variazioni c 2 = 1, la base ottima non cambia, non si ha quindi nessuna variazione del valore ottimo x 2 di x 2, ma si ha una variazione z = 1 x 2 del valore ottimo della funzione obiettivo. Per variazioni c 2 = 5 < 3, la base ottima cambia e si ha una variazione z 5 x 2 del valore ottimo della funzione obiettivo. Si osservi che la base correntemente ottima rimane ammissibile e che questa, per le stesse variazioni di c 2, avrebbe dato luogo a z = 5 x 2. Trattandosi di un problema di minimizzazione, le variazioni indotte dalla nuova base ottima non possono che essere minori (maggiori in valore assoluto). (24) Sia x 1 la variabile libera in segno che si vuole eliminare e sia a 11 x 1 + j a 1jx j = b 1 il primo vincolo in cui x 1 abbia coefficiente diverso da 0. Si ricavi x 1 = b1 j a1jxj a 1 1 da tale vincolo e si sostituisca questa espressione negli altri vincoli e nella funzione obiettivo. Si ottiene in questo modo un LP equivalente in forma standard e senza la variabile x 1. Questa procedura è effettivamente utilizzata dai software commerciali per eliminare le variabili libere in segno. Si osservi che il ragionamento appena visto non può applicarsi nel caso di variabili vincolate in segno. Si supponga infatti che x 1 debba essere non negativa. In questo caso la sostituzione precedente può essere implementata, ma per ottenere un LP equivalente bisogna anche aggiungere il vincolo b 1 j a 1jx j a Per tornare ad una forma standard sarebbe quindi poi necessario 18
19 introdurre una variabile di surplus. In conclusione il numero delle variabili presenti nel problema originale e in quello equivalente sarebbe lo stesso. Inoltre il problema equivalente avrebbe un vincolo in più. (25) L algoritmo del simplesso si muove da una soluzione di base ad un altra non peggiore cambiando ad ogni iterazione la matrice di base che genera tali soluzioni. Può verificarsi la situazione in cui una soluzione di base (detta degenere) corrisponda a più matrici di base e che l algoritmo continui a ciclare tra le sottomatrici di base che definiscono tale soluzione degenere. In questa situazione, detta cycling, l algoritmo non giungerebbe mai a termine. Benché le soluzioni di base ammissibili degeneri siano abbastanza frequenti, il cycling è un fenomeno piuttosto raro. Ne consegue che di solito gli algoritmi non applicano regole anticycling al fine di non aumentare i tempi di calcolo. Le regole anticycling, ad esempio quella di Bland o quella di perturbazione dei termini noti, vengono di solito applicate dagli algoritmi solo quando per un numero elevato di iterazioni non è migliorato il valore della funzione obiettivo. (26) L algoritmo del simplesso primale itera tra soluzioni di base ammissibili poiché impone che la colonna del tableau corrispondente al termine noto contenga solo elementi non negativi. (27) L algoritmo del simplesso termina indicando che la soluzione del LP in considerazione è all infinito quando la colonna del tableau associata ad una variabile entrante in base contiene solo elementi negativi o nulli. Programmazione lineare, approccio duale (1) Teorema della Dualità Debole: Data una coppia (P, D) primale/duale di problemi max{c T x, Ax b, x 0}, min{b T π, A T π c, π 0}, per qualunque coppia (x, π) di soluzioni ammissibili per (P, D) vale la relazione c T x b T π. Dimostrazione: c T x (A T π) T x = π T Ax π T b = b T π. (2) Teorema della Dualità Forte: Data una coppia (P, D) primale/duale di problemi max{c T x, Ax b, x 0}, min{b T π, A T π c, π 0}, una coppia (x, π ) di soluzioni ammissibili per (P, D) è ottima se e solo se c T x = b T π. Il Teorema della Dualità Forte fornisce un certificato di ottimalità per le soluzioni (x, π ). Infatti se si hanno a disposizione delle soluzioni (x, π ) di un problema di LP, si può provare facilmente se sono ottime attraverso il Teorema della Dualità Forte. Inizialmente si verifica che le soluzioni siano ammissibili per la versione primale e duale del problema di LP, quindi si controlla se che i valori delle due funzioni obiettivo coincidano quando calcolate rispettivamente in x e in π. (3) Teorema dello Scarto Complementare: Data una coppia (P, D) primale/duale di problemi max{c T x, Ax b, x 0}, min{b T π, A T π c, π 0}, una coppia (x, π ) di soluzioni ammissibili per (P, D) è ottima se e solo se per ogni variabile duale π i vale πi (a i x b i ) = 0 e per ogni variabile primale x j vale x j (a jπ c j ) = 0. 19
20 Il Teorema dello Scarto Complementare è equivalente al Teorema della Dualità Forte e quindi fornisce anche esso un certificato di ottimalità. (4) Il duale del problema di produzione è il problema di determinare il prezzo a cui vendere in blocco le risorse disponibili invece che produrre. Se si riescono a vendere le risorse disponibili a dei prezzi unitari che siano ammissibili per il problema duale, il Teorema di Dualità Debole garantisce che il profitto ottenuto sarà non minore del profitto massimo che si potrebbe ottenere trasformando le risorse in prodotti. (5) Il duale del problema della dieta è il problema di determinare il prezzo a cui acquisire in blocco gli elementi nutrizionali richiesti invece che acquistare degli alimenti. Se si riescono ad acquisire in blocco gli elementi nutrizionali a dei prezzi unitari che siano ammissibili per il problema duale, il Teorema di Dualità Debole garantisce che il costo ottenuto sarà non maggiore del costo minimo in cui si incorrerebbe acquistando gli alimenti necessari a fornire gli stessi elementi nutrizionali. (6) L aggiunta di un vincolo non può che restringere l insieme delle soluzioni ammissibili e quindi il valore ottimo della funzione obiettivo non può migliorare dopo l aggiunta di tale vincolo. Ne consegue che, se la soluzione ottima corrente è finita, la nuova soluzione ottima non può avere valore infinito e quindi non può essere all infinito. Viceversa, l aggiunta di un vincolo ulteriore potrebbe rendere vuoto l insieme delle soluzioni ammissibili e quindi il nuovo problema non avrebbe soluzioni ammissibili. (7) L aggiunta di una nuova variabile non può che ampliare l insieme delle soluzioni ammissibili e quindi il valore ottimo della funzione obiettivo non può peggiorare dopo l aggiunta di tale variabile. Si noti infatti che se x è una soluzione ammissibile per il problema originale allora [x, 0] è certamente ammissibile per il nuovo problema. Infatti il problema originale può essere visto come un caso particolare del nuovo in cui si impone come ulteriore vincolo che il valore della variabile aggiunta sia zero. Ne consegue che, se la soluzione ottima corrente x è finita allora la soluzione [x, 0] è certamente ammissibile per il nuovo problema che quindi ha certamente l insieme delle soluzioni ammissibili non vuoto e valore ottimo della soluzione obiettivo non peggiore di quello del problema originale. Il nuovo problema potrebbe avere soluzione ottima all infinito. Per esempio questo accade se, in un problema di massimizzazione, si aggiunge una variabile con coefficiente positivo nella funzione obiettivo e coefficienti tutti nulli nei vincoli. (8) Ovvio corollario dei Teoremi di Dualità è che se il primale è illimitato (i.e., ha soluzione ottima all infinito) allora il duale non è ammissibile; se il primale ha soluzione ottima finita allora il duale ha soluzione ottima finita. Non si può concludere con certezza se il primale non è ammissibile infatti il duale potrebbe essere illimitato o non ammissibile. (9) Per verificare l eventuale ottimalità di x per prima cosa bisogna controllare che x sia ammissibile per il problema dato. Poiché tale condizione è verificata, bisogna determinare quali sono i valori delle variabili duali associate alla stessa base. A tal fine, come primo passo, si deve determinare la matrice di base B a cui corrisponde la soluzione x. Si osservi in questo contesto 20
21 che le matrici di base sono definite rispetto al problema in forma standard. In forma standard il problema diventa max z = 19x 1 10x x 3 4x 1 x 2 + 2x 3 + s 1 = 24 3x 1 2x 2 + 3x 3 + s 2 = 10 x 1 + x 2 + s 3 = 11 x 1, x 2, x 3, s 1, s 2, s 3 0. Per banale sostituzione si ottiene che x = (0, 11, 32 3, 41 3, 0, 0). Ne consegue che la matrice di base B che definisce x è composta dai coefficienti delle colonne della matrice dei vincoli associata alle variabili x 2, x 3 e s 1. Quindi B = 2 3 0, da cui B 1 = , infine π = c b B 1 = [ 10, 18, 0] = (0, 6, 2). Essendo quindi nota la coppia (x, π ) = ((0, 11, 32 3 ), (0, 6, 2)) si può procedere all applicazione del Teorema di Dualità Forte. Si deve quindi scrivere il problema duale min w = 24π π π 3 4π 1 + 3π 2 + π 3 19 π 1 2π 2 + π π 1 + 3π 2 18 π 1, π 2, π 3 0. Sostituendo si verifica che π è ammissibile per il duale. Infine, poiché le funzioni obiettivo del primale e del duale assumono gli stessi valori rispettivamente per x e z, infatti z = 19x 1 10x x 3 = 82 = 24π π π 3 = w, si può concludere che x è una soluzione ottima del problema dato. (10) Seguendo la stessa linea di ragionamento usata per la risposta alla domanda precedente inizialmente si verifica che x è ammissibile per il problema primale. Si scopre poi che la matrice di base che definisce x è composta dalle colonne di x 1, s 1 e s 3. Quindi B = 3 0 0, da cui B 1 = , infine π = c b B 1 = [19, 0, 0] = (0, 19 3, 0). Si conclude
22 affermando che, anche se vale z = = w, la soluzione x non è soluzione ottima poiché π non è ammissibile per il problema duale. Infatti, π viola il secondo vincolo del problema duale. Programmazione lineare, domande a risposta multipla (1) Un problema di programmazione lineare deve avere tutti i vincoli di disuguaglianza del tipo se: (1a) è un problema di massimo FALSO. Un problema di massimo può avere vincoli di tutti i tipi. (1b) il suo duale è un problema di minimo e a variabili libere FALSO. L interezza delle variabili nel duale non implica che i vincoli di disuguaglianza siano di tipo. (1c) il suo duale è un problema di massimo FALSO. Se il duale è un problema di massimo, il primale è un problema di minimo e un problema di minimo può avere vincoli di tutti i tipi. (1d) il suo duale è un problema di minimo e tutti i vincoli sono del tipo FALSO. Se il duale è un problema di minimo e tutti i vincoli sono del tipo, il primale è un problema di massimo e tutte le sue variabili sono non negative, ma può avere vincoli di tutti i tipi. (1e) è un problema di massimo con variabili non negative FALSO. Un problema di massimo può avere vincoli di tutti i tipi. (1f) il suo duale è un problema di minimo con variabili non negative VERO. (2) Se un problema di programmazione lineare ha alcune variabili che possono essere libere allora i vincoli corrispondenti del duale sono delle equazioni e non delle disequazioni. Dalle informazioni disponibili non è invece possibile inferire il verso degli altri vincoli, delle variabili e della funzione obiettivo del duale quindi: (2b) sole se il suo duale è un problema di massimo con vincoli del tipo = e del tipo FALSO. (2d) il suo duale ha alcuni vincoli del tipo = VERO. (2e) il suo duale ha variabili che possono essere libere FALSO. (2f) il suo duale ha vincoli di uguaglianza solo se il problema originale è di massimo FALSO. Inoltre, la presenza di alcune, ma non tutte, variabili non vincolate in un problema LP non ha nessuna implicazione sull illimitatezza o l inammissibilità dello stesso. Quindi (2a) ammette soluzioni ammissibili solo se tutti i suoi vincoli sono equazioni FALSO. (2c) è un problema di minimo che ammette soluzione ottima illimitata FALSO. (3) Se problema di programmazione lineare ha soluzioni ammissibili può avere soluzione ottima sia finita che illimitata. L esistenza di soluzioni ammissibili nel primale non possono garantire l esistenza di soluzioni ammissibili per il duale. Ne consegue che: (3a) il suo duale ha soluzioni ammissibili ma non ha soluzioni ottime FALSO. In questo caso il duale sarebbe illimitato e il primale non avrebbe soluzioni ammissibili. 22
23 (3b) il suo duale ha certamente una soluzione ottima finita VERO. (3c) il suo duale ha certamente delle soluzioni ammissibili FALSO. (3d) è il duale di un problema che ha certamente delle soluzioni ammissibili FALSO. Inoltre (3e) la Fase I del metodo del simplesso termina con una soluzione non positiva VERO. La Fase I del simplesso può solo terminare con un valore positivo o nullo. Quindi in questo caso la Fase I termina con una soluzione nulla e determina una soluzione ammissibile. (3f) tutte le variabili artificiali si possono porre fuori base alla fine della Fase I del metodo del simplesso VERO. Se le variabili artificiali possono essere poste fuori base allora il loro valore è zero. Ne consegue che il valore ottimo della funzione obiettivo della Fase I è zero e che quindi esiste una soluzione ammissibile per il problema originale. (4) Nel metodo del simplesso primale (a partire da un problema di max): (4a) si determina prima la riga e poi la colonna del pivot FALSO. Nel metodo del simplesso primale si agisce in modo esattamente opposto. Si sceglie prima la colonna, cioè la variabile che entra in base, e dopo la riga, cioè la variabile che esce dalla base. (4b) se una colonna del tableau ha tutti gli elementi non positivi la funzione obiettivo non è limitata all interno della regione ammissibile VERO. (4c) se si sbaglia di scegliere la colonna del pivot si rischia il cycling VERO. Se si vuole evitare sicuramente il cycling bisogna applicare una delle regole anticycling (Bald). (4d) il valore della funzione obiettivo non aumenta mai da un iterazione alla successiva FALSO. Nel simplesso, a meno di incappare in soluzione di base degeneri, ad ogni iterazione il valore della funzione obiettivo migliora (in questo caso aumenta) ad ogni iterazione. (4e) se si ottiene un tableau con alcuni i termini noti negativi bisogna proseguire con il metodo duale del simplesso FALSO. Nella fase primale del simplesso non è possibile ottenere un tableau con alcuni i termini noti negativi. Se questo accade allora si sono sbagliati dei conti. (4f) la scelta della riga del pivot è indifferente FALSO. Nell algoritmo del simplesso la riga deve essere scelta in modo che possa corrispondere alla prima variabile che esce dalla base in conseguenza dell aumentare dei valori della soluzione che entra in base. Solo nel caso in cui più variabili possono uscire dalla base contemporaneamente si può scegliere indifferentemente quale delle righe corrispondenti usare nell iterazione del simplesso. (5) In un problema di programmazione lineare continua si riescono a imporre solo delle condizioni che definiscono un insieme di soluzioni ammissibili convesso e chiuso, da cui: (5a) si può imporre che x 1 sia non superiore a 2 o non inferiore a 5 FALSO. La condizione non definisce un insieme convesso, infatti richiede un OR di due condizioni x 1 2 or x 1 5. (5b) si può imporre che il valore assoluto di una variabile sia superiore a 1 FALSO. La condizione non definisce un insieme convesso, infatti richiede un OR di due condizioni x
24 or x 1 1. (5c) si può imporre che il valore assoluto di una variabile sia non superiore a 1 VERO. La condizione definisce un insieme convesso, infatti 1 x 1 1. (5d) si può imporre che il valore assoluto di una variabile sia uguale a 1 FALSO. La condizione non definisce un insieme convesso, infatti richiede un OR di due condizioni x 1 = 1 or x 1 = 1. Le condizioni non convesse si possono imporre con la programmazione lineare intera. (6) Nel rispondere a questa domanda riteniamo che i costi ridotti abbiano segno opposto dei coefficienti che compaiono sulla riga associata alla funzione obiettivo nel tableau. Dato un problema di produzione: (6a) i costi ridotti positivi delle variabili strutturali esprimono di quanto diminuisce il profitto se si forza la produzione di un unità dei prodotti corrispondenti FALSO. È esattamente l opposto, infatti ad ogni iterazione del simplesso entra in base (cioè si forza la produzione) una variabile con costo ridotto positivo al fine di aumentare i profitti. (6b) se, dato un mix di produzione ammissibile, il costo ridotto di una variabile strutturale è positivo, allora il profitto non peggiora se si intraprendere la produzione del manufatto corrispondente VERO. Si veda risposta precedente. L unica condizione ulteriore che deve essere rispettata è che sia possibile forzare tale produzione senza violare i vincoli. (6c) il prezzo ombra delle risorse critiche è sempre nullo FALSO. È in generale l opposto. Una risorsa è critica se viene utilizzata completamente. Ne consegue che il vincolo associato è stringente e quindi ha un prezzo ombra che può essere diverso da zero. (6d) le variabili di slack dei vincoli che non siano facce del poliedro delle soluzioni sono sempre nulli FALSO. È esattamente l opposto. Il valore delle variabili di slack rappresenta quanto una soluzione è distante dal vincolo. Se un vincolo non è definisce faccia allora non sarà stringente per nessuna soluzione e quindi avrà la variabile di slack sempre diversa da zero. (6e) le risorse associate a vincoli ridondanti non vengono utilizzate nella produzione FALSO. Al più accade che non tutte le risorse siano utilizzate. (7) Le risposte a questa domanda si possono dedurre da quanto detto per la domanda (7) Sia x la soluzione ottima di un problema di programmazione lineare di minimo, se si aggiunge una variabile non negativa al problema: (7a) può darsi che si producano diverse soluzioni ottime distinte, ma solo se anche prima dell introduzione della nuova variabile accadeva la stessa cosa FALSO. Ad esempio, se il costo ridotto della variabile aggiunta risulta essere 0, possono aversi soluzioni multiple anche se originariamente si aveva un unica soluzione ottima. (7b) il valore ottimo della funzione obiettivo non può aumentare VERO. (7c) può darsi che i costi ridotti delle variabili originali rimangano invariati VERO. Ad esempio se la soluzione [x 0] è l unica soluzione ottima del problema. 24
25 (7d) cambia certamente il valore ottimo di qualche variabile di slack o di surplus FALSO. Ad esempio se la soluzione [x 0] è l unica soluzione ottima del problema. (7e) se [x 0] risulta ammissibile per il nuovo problema, allora è anche ottima FALSO. La soluzione [x 0] è sempre ammissibile per il nuovo problema, ma in generale non è anche ottima. (8) Un problema di programmazione lineare ha soluzioni duali ammissibili se: (8a) ha soluzioni ammissibili ma non ha soluzioni ottime FALSO. Se il primale è illimitato, il duale non ha soluzioni ammissibili. (8b) ha soluzioni ottime VERO. Se il primale ha soluzioni ottime finite, per il Teorema dell Dualità Forte, anche il duale presenta soluzioni ottime (e quindi ammissibili) finite. (8c) ha soluzioni ammissibili FALSO. Se il primale ha soluzioni ammissibili, ma è illimitato, il duale non ha soluzioni ammissibili. (8d) la Fase I del metodo del simplesso termina con una soluzione non positiva FALSO. Se il primale non ha soluzioni ammissibili, non è detto che il duale abbia soluzioni ammissibili. (8e) tutte le variabili artificiali si possono porre fuori base alla fine della Fase I del metodo del simplesso FALSO. In questo caso il primale ha soluzioni ammissibili, ma non è detto che non sia illimitato e che quindi il duale sia privo di soluzioni ammissibili. (9) Un problema di programmazione lineare non ha soluzioni duali ammissibili se: (9a) ha soluzioni ammissibili ma non ha soluzioni ottime VERO. Se il primale è illimitato, il duale non ha soluzioni ammissibili. (9b) ha soluzioni ottime FALSO. Se il primale ha soluzioni ottime finite, per il Teorema dell Dualità Forte, anche il duale presenta soluzioni ottime (e quindi ammissibili) finite. (9c) non ha soluzioni ammissibili FALSO. In generale se il primale non ha soluzioni ammissibili, dai teoremi sulla dualità non si può dedurre nulla circa l esistenza di soluzioni duali. Esistono infatti istanze di problemi di programmazione lineare per cui non esistono nè soluzioni ammissibili primali e ammissibili duali e problemi di programmazione lineare per cui non esistono soluzioni ammissibili primali ma esistono soluzioni ammissibili duali. (9d) la Fase I del metodo del simplesso termina con una soluzione strettamente positiva FALSO. Se il primale non ha soluzioni ammissibili, non è detto che il duale non abbia soluzioni ammissibili. (10) Un problema di programmazione lineare non ha soluzioni ammissibili se: (10a) il suo duale ha soluzioni ammissibili ma non ha soluzioni ottime VERO. Se il duale è illimitato, il primale non ha soluzioni ammissibili. (10b) il suo duale ha soluzioni ottime multiple FALSO. Per il Teorema della Dualità Forte, il primale ha almeno una soluzione ottima e quindi ammissibile. 25
26 (10c) il suo duale non ha soluzioni ammissibili FALSO. Il primale potrebbe essere sia privo di soluzioni ammissibili che con soluzioni ammissibili ma illimitato. (10d) è il duale di un problema che non ha soluzioni ammissibili FALSO.Il primale potrebbe essere sia privo di soluzioni ammissibili che con soluzioni ammissibili ma illimitato. (10e) la Fase I del metodo del simplesso indica una soluzione illimitata FALSO. Per costruzione la Fase I ha sempre una soluzione ottima limitata inferiore o uguale a i b i. (10f) tutte le variabili artificiali si possono porre fuori base alla fine della Fase I del metodo del simplesso FALSO. È esattamente l opposto, in questo caso il primale ha almeno una soluzione ammissibile. (11) Nel metodo del simplesso duale: (11a) si determina prima la riga e poi la colonna del pivot VERO. Si sceglie prima la variabile uscente dalla base tra le variabili correntemente in base associate alle righe che definiscono vincoli violati e quindi la variabile entrante in base. (11b) ci accorgiamo che la funzione obiettivo non e limitata all interno della regione ammissibile se una colonna del tableau ha tutti gli elementi non positivi FALSO. Nel simplesso duale si parte sempre da una soluzione duale ammissibile finita e, attraverso ricerche locali, si cercano soluzioni anche primali ammissibili. Ad ogni iterazione il valore della funzione obiettivo non può migliorare e quindi è impossibile che si giunga ad una soluzione primale illimitata. (11c) se si sbaglia di scegliere la colonna del pivot si ottiene un tableau con qualche coefficiente negativo nella riga della funzione obiettivo VERO. Infatti la variabile uscente viene selezionata in modo che gli elementi della riga associata alla funzione obiettivo rimangano positivi o nulli. (11d) il valore della funzione obiettivo non aumenta mai da un iterazione alla successiva VERO. Questa risposta è corretta nell ipotesi di affrontare un problema (primale) di massimizzazione. (11e) la scelta della riga del pivot è indifferente FALSO. Si deve scegliere una delle righe associate a vincoli violati dalla soluzione corrente. È indifferente quale tra queste ultime righe scegliere. (11f) se si ottiene un tableau con tutti i termini noti positivi o nulli bisogna proseguire con il metodo normale (primale) del simplesso FALSO. In questo caso si è giunti all ottimo. (12) In un problema di programmazione lineare continua si riescono a imporre solo delle condizioni definiscono un insieme di soluzioni ammissibili convesso e chiuso, da cui: in un problema di programmazione lineare: (12a) le variabili possono essere vincolate a stare in un intervallo, estremi esclusi FALSO. Questo intervallo non è chiuso. (12b) è sempre possibile fare in modo che tutte le variabili siano non positive VERO. Le condizioni x i 0 definiscono un insieme convesso e chiuso. 26
27 (12c) una variabile può essere vincolata a NON assumere un dato valore FALSO. Questo insieme di soluzioni non è chiuso. (12d) una variabile può essere vincolata a NON assumere i valori INTERNI a un dato intervallo FALSO. Questo insieme di soluzioni non è chiuso. (12e) se è un problema di massimo non ci possono essere vincoli del tipo FALSO. Qualunque vincoli lineare di disuguaglianza debole definisce un insieme convesso chiuso. (13) Se dopo aver risolto un problema di programmazione lineare si aumenta un termine noto del tableau iniziale: (13a) il valore ottimo della funzione obiettivo aumenta anch esso FALSO. Dipende dal verso del vincolo e dal tipo di funzione obiettivo (max o min). (13b) può darsi che il valore ottimo della funzione obiettivo non vari VERO. Se il vincolo non è stringente, per piccole variazioni del termine noto non vi sono variazioni né della funzione obiettivo né della soluzione ottima. (13c) cambia certamente il valore ottimo di qualche variabile strutturale FALSO. Se il vincolo non è stringente per piccole variazioni del termine noto non vi sono variazioni né della funzione obiettivo né della soluzione ottima. (13d) può darsi che il nuovo problema non abbia soluzioni ammissibili VERO. Se il vincolo è di tipo, un aumento del termine noto rende il vincolo più forte e quindi il problema può diventare inammissibile. 27
Il modello duale. Capitolo settimo. Introduzione
Capitolo settimo Il modello duale Introduzione Il modello duale e la teoria della dualità assumono una grande importanza nella teoria della programmazione matematica. In questo testo i modelli primale
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
Metodi e Modelli per l Ottimizzazione Combinatoria Ripasso sulla Programmazione Lineare e il metodo del Simplesso (parte I)
Metodi e Modelli per l Ottimizzazione Combinatoria Ripasso sulla Programmazione Lineare e il metodo del Simplesso (parte I) Luigi De Giovanni Giacomo Zambelli 1 Problemi di programmazione lineare Un problema
Il metodo del simplesso
Capitolo 5 Il metodo del simplesso 5. La forma standard Esercizio 5.. Porre il problema di Programmazione Lineare: in forma standard. min x +x + x + x x +x 5 x 4 x, x Si trasformano i vincoli di disuguaglianza
Soluzione dei Problemi di Programmazione Lineare
Soluzione dei Problemi di Programmazione Lineare Consideriamo un problema di Programmazione Lineare (PL) con m vincoli ed n variabili in Forma Standard dove: ma 0 c A b ( ) 0 ( 2) R è il vettore n delle
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
Programmazione Lineare
Programmazione Lineare Andrea Scozzari a.a. 2012-2013 March 14, 2013 Andrea Scozzari (a.a. 2012-2013) Programmazione Lineare March 14, 2013 1 / 18 Metodo del Simplesso Dato un problema di PL in forma standard
Sistemi lineari. Lorenzo Pareschi. Dipartimento di Matematica & Facoltá di Architettura Universitá di Ferrara
Sistemi lineari Lorenzo Pareschi Dipartimento di Matematica & Facoltá di Architettura Universitá di Ferrara http://utenti.unife.it/lorenzo.pareschi/ [email protected] Lorenzo Pareschi (Univ. Ferrara)
4.5 Metodo del simplesso
4.5 Metodo del simplesso min z = c T x s.v. Ax = b x PL in forma standard Esamina una sequenza di soluzioni di base ammissibili con valori non crescenti della funzione obiettivo fino a raggiungerne una
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
Geometria della programmazione lineare
Geometria della programmazione lineare poliedri punti estremi, vertici, soluzioni di base esistenza di punti estremi rif. Fi 3.1; BT 2.1, 2.2, 2.5 Iperpiani, semispazi Definizione Sia a un vettore non
Esercizi su ottimizzazione vincolata
Esercizi su ottimizzazione vincolata 1. Rispondere alle seguenti domande (a) Quando un vincolo di disuguaglianza è detto attivo? (b) Cosa è l insieme delle soluzioni ammissibili? Gli algoritmi di ricerca
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
Esercizi sulla Programmazione Lineare. min. cx Ax b x 0
Soluzioni 4.-4. Fondamenti di Ricerca Operativa Prof. E. Amaldi Esercizi sulla Programmazione Lineare 4. Risoluzione grafica e forma standard. Si consideri il problema min x cx Ax b x dove x = (x, x )
Appendice A: un esempio di scelta del mix ottimo di produzione in presenza di vincoli 19
14 18-12-07 19:04 Pagina 411 Le decisioni di breve termine fra alternative diverse 411 i minori costi differenziali, almeno nella misura in cui la dimensione di costo è la più importante. Sebbene i costi
Appunti su Indipendenza Lineare di Vettori
Appunti su Indipendenza Lineare di Vettori Claudia Fassino a.a. Queste dispense, relative a una parte del corso di Matematica Computazionale (Laurea in Informatica), rappresentano solo un aiuto per lo
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
5.3 Metodo dei piani di taglio
5.3 Metodo dei piani di taglio (PLI) min s.v. c T x Ax b x interi X Ipotesi: a ij, c j e b i interi Osservazione: La regione ammissibile di un PLI può essere descritta mediante dei vincoli più o meno stringenti
Contenuto e scopo presentazione. Modelli Lineari Interi/Misti. Piani di taglio. Piani di taglio. Piani di taglio Versione 31/08/
Contenuto e scopo presentazione Contenuto: viene presentato un altro metodo di soluzione di problemi di ILP o di MILP. Modelli Lineari Interi/Misti Piani di taglio Versione /8/. Scopo: fornire le capacità
2. ALGORITMO DEL SIMPLESSO
. ALGORITMO DEL SIMPLESSO R. Tadei Una piccola introduzione R. Tadei SIMPLESSO L obiettivo del capitolo è quello di fornire un algoritmo, l algoritmo del simplesso, che risolve qualsiasi problema di programmazione
Possibile applicazione
p. 1/4 Assegnamento Siano dati due insiemi A e B entrambi di cardinalità n. Ad ogni coppia (a i,b j ) A B è associato un valore d ij 0 che misura la "incompatibilità" tra a i e b j, anche interpretabile
Teoria della Programmazione Lineare. Teoria della Programmazione Lineare p. 1/8
Teoria della Programmazione Lineare Teoria della Programmazione Lineare p. 1/8 I problemi di PL in forma canonica In forma scalare: max n j=1 c jx j n j=1 a ijx j b i x j 0 i = 1,...,m j = 1,...,n Teoria
L ALGORITMO DEL SIMPLESSO REVISIONATO
L ALGORITMO DEL SIMPLESSO REVISIONATO L'algoritmo del simplesso revisionato costituisce una diversa implementazione dell algoritmo standard tesa a ridurre, sotto certe condizioni, il tempo di calcolo e
Prerequisiti didattici
Università degli Studi di Ferrara 2014-2015 Corso TFA - A048 Matematica applicata Didattica della matematica applicata all economia e alla finanza 1 aprile 2015 Appunti di didattica della matematica applicata
COME CALCOLARE LA COMBINAZIONE DI MINIMO COSTO DEI FATTORI
COME CALCOLARE LA COMBINAZIONE DI MINIMO COSTO DEI FATTORI In questa Appendice, mostreremo come un impresa possa individuare la sua combinazione di minimo costo dei fattori produttivi attraverso il calcolo
Metodi per la risoluzione di sistemi lineari
Metodi per la risoluzione di sistemi lineari Sistemi di equazioni lineari. Rango di matrici Come è noto (vedi [] sez.0.8), ad ogni matrice quadrata A è associato un numero reale det(a) detto determinante
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)
Programmazione Lineare Intera. Programmazione Lineare Intera p. 1/4
Programmazione Lineare Intera Programmazione Lineare Intera p. 1/4 Programmazione Lineare Intera Problema di PLI in forma standard: max cx Ax = b x 0, x I n I insieme degli interi. Regione ammissibile:
Il teorema di Rouché-Capelli
Luciano Battaia Questi appunti (1), ad uso degli studenti del corso di Matematica (A-La) del corso di laurea in Commercio Estero dell Università Ca Foscari di Venezia, campus di Treviso, contengono un
Sistemi lineari - Parte Seconda - Esercizi
Sistemi lineari - Parte Seconda - Esercizi Terminologia Operazioni elementari sulle righe. Equivalenza per righe. Riduzione a scala per righe. Rango di una matrice. Forma canonica per righe. Eliminazione
Problemi di Flusso: Il modello del Trasporto
Problemi di Flusso: Il modello del rasporto Andrea Scozzari a.a. 2014-2015 April 27, 2015 Andrea Scozzari (a.a. 2014-2015) Problemi di Flusso: Il modello del rasporto April 27, 2015 1 / 25 Problemi su
ECONOMIA APPLICATA ALL INGEGNERIA (Docente: Prof. Ing. Donato Morea)
ESERCIZIO n. 1 - La produzione ed i costi di produzione (1 ) Un impresa utilizza una tecnologia descritta dalla seguente funzione di produzione: I prezzi dei fattori lavoro e capitale sono, rispettivamente,
2.6 Calcolo degli equilibri di Nash
92 2 Giochi non Cooperativi Per queste estensioni di giochi non finiti si possono provare risultati analoghi a quelli visti per i giochi finiti. Rimandiamo alla bibliografia per uno studio più approfondito
Si consideri il sistema a coefficienti reali di m equazioni lineari in n incognite
3 Sistemi lineari 3 Generalità Si consideri il sistema a coefficienti reali di m equazioni lineari in n incognite ovvero, in forma matriciale, a x + a 2 x 2 + + a n x n = b a 2 x + a 22 x 2 + + a 2n x
1 Il metodo dei tagli di Gomory
Il metodo dei tagli di Gomory Esercizio Sia dato il problema min(x x ) x + x (P 0 ) x + x x, x 0, interi. Calcolare la soluzione ottima applicando il metodo dei tagli di Gomory. Risoluzione Per applicare
UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa 1 Seconda prova intermedia 20 giugno 2014
A Ricerca Operativa 1 Seconda prova intermedia Un tifoso di calcio in partenza da Roma vuole raggiungere Rio De Janeiro per la finale del mondiale spendendo il meno possibile. Sono date le seguenti disponibilità
Laboratorio di Ricerca Operativa Cad Ingegneria Gestionale (BGER3 - I semestre) a.a Homework n 28. Docente: Laura Palagi
Laboratorio di Ricerca Operativa Cad Ingegneria Gestionale (BGER3 - I semestre) a.a. 2012-13 Homework n 28 Docente: Laura Palagi Laboratorio di Ricerca Operativa Homework n 28 Prof.ssa Ing. Laura Palagi
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
Problemi di flusso a costo minimo
p. 1/7 Problemi di flusso a costo minimo È data una rete (grafo orientato e connesso) G = (V,A). (i,j) A c ij, costo di trasporto unitario lungo l arco (i, j). i V b i interi e tali che i V b i = 0. p.
SISTEMI LINEARI: APPROFONDIMENTI ED ESEMPI
SISTEMI LINEARI: APPROFONDIMENTI ED ESEMPI Appunti presi dalle lezioni del prof. Nedo Checcaglini Liceo Scientifico di Castiglion Fiorentino (Classe 4B) January 17, 005 1 SISTEMI LINEARI Se a ik, b i R,
Soluzione grafica di problemi PM in 2 variabili
Capitolo 4 Soluzione grafica di problemi PM in 2 variabili In questo paragrafo si vuole fornire una interpretazione geometrica di un problema di Programmazione matematica. In particolare, quando un problema
ESERCITAZIONE 3: Produzione e costi
MICROECONOMIA CEA A.A. 00-00 ESERCITAZIONE : Produzione e costi Esercizio (non svolto in aula ma utile): Rendimenti di scala Determinare i rendimenti di scala delle seguenti funzioni di produzione: a)
Massimi e minimi vincolati
Massimi e minimi vincolati Data una funzione G C 1 (D), dove D è un aperto di R 2, sappiamo bene dove andare a cercare gli eventuali punti di massimo e minimo relativi. Una condizione necessaria affinché
ESERCIZI MATEMATICA GENERALE - Canale III
ESERCIZI MATEMATICA GENERALE - Canale III Vettori Prof. A. Fabretti 1 A.A. 009/010 1 Dati in R i vettori v = (1,,, u = (,, 1 e w = (,, calcolare: a la combinazione lineare u + v + 4 w b il prodotto scalare
NOTE SULLE FUNZIONI CONVESSE DI UNA VARIABILE REALE
NOTE SULLE FUNZIONI CONVESSE DI UNA VARIABILE REALE ROBERTO GIAMBÒ 1. DEFINIZIONI E PRIME PROPRIETÀ In queste note saranno presentate alcune proprietà principali delle funzioni convesse di una variabile
Esercizi di ottimizzazione vincolata
Esercizi di ottimizzazione vincolata A. Agnetis, P. Detti Esercizi svolti 1 Dato il seguente problema di ottimizzazione vincolata max x 1 + x 2 x 1 4x 2 3 x 1 + x 2 2 0 x 1 0 studiare l esistenza di punti
Risoluzione di sistemi lineari sparsi e di grandi dimensioni
Risoluzione di sistemi lineari sparsi e di grandi dimensioni Un sistema lineare Ax = b con A R n n, b R n, è sparso quando il numero di elementi della matrice A diversi da zero è αn, con n α. Una caratteristica
REGRESSIONE E CORRELAZIONE
REGRESSIONE E CORRELAZIONE Nella Statistica, per studio della connessione si intende la ricerca di eventuali relazioni, di dipendenza ed interdipendenza, intercorrenti tra due variabili statistiche 1.
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
Esercizi su algebra lineare, fattorizzazione LU e risoluzione di sistemi lineari
Esercizi su algebra lineare, fattorizzazione LU e risoluzione di sistemi lineari 4 maggio Nota: gli esercizi più impegnativi sono contrassegnati dal simbolo ( ) Esercizio Siano 3 6 8 6 4 3 3 ) determinare
Ricerca Operativa Note su Programmazione Lineare e Metodo del Simplesso (parte III)
Ricerca Operativa Note su Programmazione Lineare e Metodo del Simplesso (parte III) L. De Giovanni AVVERTENZA: le note presentate di seguito non hanno alcuna pretesa di completezza, né hanno lo scopo di
Esercizi di Matematica di Base Scienze biologiche e Scienze e Tecnologie dell Ambiente
Esercizi di Matematica di Base Scienze biologiche e Scienze e Tecnologie dell Ambiente Dati i vettori di R (i) Calcolare il prodotto scalare v w, (ii) Stabilire se v e w sono ortogonali, (ii) Stabilire
Convergenza del Simplesso e regole anti-ciclaggio
Convergenza del Simplesso e regole anti-ciclaggio degenerazione e ciclaggio un esempio di ciclaggio regole anti-ciclaggio rif. Fi 3.2.6, BT 3.4 (Esempio 3.6), BT 3.7; Sulla convergenza del metodo del simplesso
UNITÀ DIDATTICA 5 LA RETTA
UNITÀ DIDATTICA 5 LA RETTA 5.1 - La retta Equazione generica della retta Dalle considerazioni emerse nel precedente capitolo abbiamo compreso come una funzione possa essere rappresentata da un insieme
Sistemi di equazioni lineari
Sistemi di equazioni lineari A. Bertapelle 25 ottobre 212 Cos è un sistema lineare? Definizione Un sistema di m equazioni lineari (o brevemente sistema lineare) nelle n incognite x 1,..., x n, a coefficienti
Chi non risolve esercizi non impara la matematica.
5.5 esercizi 9 Per trovare la seconda equazione ragioniamo così: la parte espropriata del primo terreno è x/00, la parte espropriata del secondo è y/00 e in totale sono stati espropriati 000 m, quindi
Metodo delle due fasi
Metodo delle due fasi Il problema artificiale la fase I del Simplesso esempi rif. Fi 3.2.5; Osservazione Nel problema min{c T x : Ax = 0, x 0}, dell esempio precedente si ha che b 0 e A contiene una matrice
Le derivate parziali
Sia f(x, y) una funzione definita in un insieme aperto A R 2 e sia P 0 = x 0, y 0 un punto di A. Essendo A un aperto, esiste un intorno I(P 0, δ) A. Preso un punto P(x, y) I(P 0, δ), P P 0, possiamo definire
SISTEMI LINEARI. x y + 2t = 0 2x + y + z t = 0 x z t = 0 ; S 3 : ; S 5x 2y z = 1 4x 7y = 3
SISTEMI LINEARI. Esercizi Esercizio. Verificare se (,, ) è soluzione del sistema x y + z = x + y z = 3. Trovare poi tutte le soluzioni del sistema. Esercizio. Scrivere un sistema lineare di 3 equazioni
Esercizio 10.1 Pagina 1 di 2 ESERCIZIO 10.1
Esercizio 10.1 Pagina 1 di ESERCIZIO 10.1 (Modello di Baumol). Un manager di un impresa oligopolistica massimizza i RT sotto il vincolo di garantire alla proprietà un profitto Π G = 500 euro. La funzione
Problema del trasporto
p. 1/1 Problema del trasporto Supponiamo di avere m depositi in cui è immagazzinato un prodotto e n negozi che richiedono tale prodotto. p. 1/1 Problema del trasporto Supponiamo di avere m depositi in
1 Il polinomio minimo.
Abstract Il polinomio minimo, così come il polinomio caratterisico, è un importante invariante per le matrici quadrate. La forma canonica di Jordan è un approssimazione della diagonalizzazione, e viene
Domande d esame. Ricerca Operativa. G. Liuzzi. Giovedí 14 Maggio 2015. 1 Istituto di Analisi dei Sistemi ed Informatica IASI - CNR
1 Giovedí 14 Maggio 2015 1 Istituto di Analisi dei Sistemi ed Informatica IASI - CNR Geometria di R n 1 Dare la definizione di Poliedro e Vertice di un Poliedro 2 Dare la definizione di Poliedro e di Politopo
Capitolo 10 Costi. Robert H. Frank Microeconomia - 4 a Edizione Copyright The McGraw-Hill Companies, srl
Capitolo 10 Costi I COSTI NEL LUNGO PERIODO Nel lungo periodo non esistono costi fissi Il problema dell impresa è quello di scegliere la combinazione ottimale di input in relazione all output che si intende
Autovalori e autovettori, matrici simmetriche e forme quadratiche (cenni) (prof. M. Salvetti)
Autovalori e autovettori, matrici simmetriche e forme quadratiche (cenni) (prof. M. Salvetti) April 14, 2011 (alcune note non complete sugli argomenti trattati: eventuali completamenti saranno aggiunti)
Rilassamento Lagrangiano
RILASSAMENTO LAGRANGIANO 1 Rilassamento Lagrangiano Tecnica più usata e conosciuta in ottimizzazione combinatoria per il calcolo di lower/upper bounds (Held and Karp (1970)). Si consideri il seguente problema
Capitolo 3: Ottimizzazione non vincolata parte III. E. Amaldi DEI, Politecnico di Milano
Capitolo 3: Ottimizzazione non vincolata parte III E. Amaldi DEI, Politecnico di Milano 3.4 Metodi di ricerca unidimensionale In genere si cerca una soluzione approssimata α k di min g(α) = f(x k +αd k
Matematica Discreta e Algebra Lineare (per Informatica)
Matematica Discreta e Algebra Lineare (per Informatica) Docente: Alessandro Berarducci Anno accademico 2016-2017, versione 14 Marzo 2017 Tipiche domande d esame La seguente lista di domande non intende
FUNZIONI. }, oppure la
FUNZIONI 1. Definizioni e prime proprietà Il concetto di funzione è di uso comune per esprimere la seguente situazione: due grandezze variano l una al variare dell altra secondo una certa legge. Ad esempio,
Introduzione alla programmazione Esercizi risolti
Esercizi risolti 1 Esercizio Si determini se il diagramma di flusso rappresentato in Figura 1 è strutturato. A B C D F E Figura 1: Diagramma di flusso strutturato? Soluzione Per determinare se il diagramma
SISTEMI LINEARI. x 2y 2z = 0. Svolgimento. Procediamo con operazioni elementari di riga sulla matrice del primo sistema: 1 1 1 3 1 2 R 2 R 2 3R 0 4 5.
SISTEMI LINEARI Esercizi Esercizio. Risolvere, se possibile, i seguenti sistemi: x y z = 0 x + y + z = 3x + y + z = 0 x y = 4x + z = 0, x y z = 0. Svolgimento. Procediamo con operazioni elementari di riga
Teorema di Thevenin generalizzato
Teorema di Thevenin generalizzato Si considerino due reti elettriche lineari, A e B, aventi rispettivamente N A e N B nodi interni. Esse si interfacciano attraverso n (n 3) fili di collegamento, in cui
(x B x A, y B y A ) = (4, 2) ha modulo
GEOMETRIA PIANA 1. Esercizi Esercizio 1. Dati i punti A(0, 4), e B(4, ) trovarne la distanza e trovare poi i punti C allineati con A e con B che verificano: (1) AC = CB (punto medio del segmento AB); ()
SOTTOSPAZI E OPERAZIONI IN SPAZI DIVERSI DA R n
SPAZI E SOTTOSPAZI 1 SOTTOSPAZI E OPERAZIONI IN SPAZI DIVERSI DA R n Spazi di matrici. Spazi di polinomi. Generatori, dipendenza e indipendenza lineare, basi e dimensione. Intersezione e somma di sottospazi,
GEOMETRIA PIANA. 1) sia verificata l uguaglianza di segmenti AC = CB (ossia C è punto medio del segmento AB);
VETTORI E GEOMETRIA ANALITICA 1 GEOMETRIA PIANA Segmenti e distanza tra punti. Rette in forma cartesiana e parametrica. Posizioni reciproche di due rette, parallelismo e perpendicolarità. Angoli e distanze.
Introduzione alla Ricerca Operativa. Cos è la Ricerca Operativa? Modellazione di problemi decisionali Fasi di uno studio di RO Applicazioni della RO
Introduzione alla Ricerca Operativa Cos è la Ricerca Operativa? Modellazione di problemi decisionali Fasi di uno studio di RO Applicazioni della RO Cos è la Ricerca Operativa? La Ricerca Operativa è la
Esercitazione n o 3 per il corso di Ricerca Operativa
Esercitazione n o 3 per il corso di Ricerca Operativa Ultimo aggiornamento October 17, 2011 Fornitura acqua Una città deve essere rifornita, ogni giorno, con 500 000 litri di acqua. Si richiede che l acqua
Macchine parallele M 1 M 2 M 3 J 1 J 2 LAVORI J 3 J 4
Macchine parallele M 1 J 1 J 2 LAVORI M 2 J 3 J 4 M 3 Macchine parallele Scheduling su macchine parallele scorrelate R C max Descrizione del problema n lavori devono essere processati da m macchine diverse
Metodo di Gauss-Jordan 1
Metodo di Gauss-Jordan 1 Nota Bene: Questo materiale non debe essere considerato come sostituto delle lezioni. Ārgomenti svolti: Riduzione per righe e matrici equivalenti per righe. Forma echelon e sistemi
Introduzione alla programmazione lineare
Introduzione alla programmazione lineare struttura del problema di PL forme equivalenti rappresentazione e soluzione grafica rif. Fi 1.2; BT 1.1, 1.4 Problema di programmazione lineare Dati: un vettore
Esercizi svolti. risolvere, se possibile, l equazione xa + B = O, essendo x un incognita reale
Esercizi svolti 1. Matrici e operazioni fra matrici 1.1 Date le matrici 1 2 1 6 A = B = 5 2 9 15 6 risolvere, se possibile, l equazione xa + B = O, essendo x un incognita reale Osservazione iniziale: qualunque
FONDAMENTI DI ALGEBRA LINEARE E GEOMETRIA
Cognome Nome Matricola FONDAMENTI DI ALGEBRA LINEARE E GEOMETRIA Ciarellotto, Esposito, Garuti Prova del 21 settembre 2013 Dire se è vero o falso (giustificare le risposte. Bisogna necessariamente rispondere
Metodi computazionali per i Minimi Quadrati
Metodi computazionali per i Minimi Quadrati Come introdotto in precedenza si considera la matrice. A causa di mal condizionamenti ed errori di inversione, si possono avere casi in cui il e quindi S sarebbe
