Programmazione Lineare in MATLAB. Ing. Fabio Sciancalepore Politecnico di Bari

Documenti analoghi
1.4 Si risolva mediante gli scarti complementari il duale del problema dato.

5 PROGRAMMAZIONE LINEARE INTERA (PLI) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

Domande d esame. Ricerca Operativa. G. Liuzzi. Giovedí 14 Maggio Istituto di Analisi dei Sistemi ed Informatica IASI - CNR

Prerequisiti didattici

Esame di Ricerca Operativa del 30/06/14. max 4 x 1 7 x 2 x 1 +7 x 2 7 x 1 4 x 2 7 x 1 +5 x 2 5 x 1 x 2 5 x 2 1 x 1 +4 x 2 6

COMPITO DI RICERCA OPERATIVA. max x 1 + 2x 2 + x 3 x 1 x 2 + x 3 = 1 2x 1 + 3x 2 + x 4 = 2

Esame di Ricerca Operativa del 09/01/15. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa. x 1 +2 x 2 6 x 1 +x 2 6 x 1 4 x 1 1

Esame di Ricerca Operativa del 28/01/13. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 17/02/14. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Ricerca Operativa. Docente. 1. Introduzione

Esame di Ricerca Operativa del 19/07/13. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 04/02/16. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Ricerca Operativa. Docenti. 1. Introduzione

Esame di Ricerca Operativa del 6/2/18. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 15/01/19. max 6 x 1 x 2 6 x x x 1 +2 x x 1 3 x x 1 4 x x 1 +2 x x 1 x 2 19

Esame di Ricerca Operativa del 09/06/14. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Ricerca Operativa. G. Liuzzi. Lunedí 20 Aprile 2015

5.3 Metodo dei piani di taglio

Esame di Ricerca Operativa del 04/07/17

Esame di Ricerca Operativa del 03/07/18. Base x degenere y Indice Rapporti Indice entrante uscente

Esame di Ricerca Operativa del 16/02/15. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Bilanciamento di tempi e costi Progetti a risorse limitate Note bibliografiche

Esame di Ricerca Operativa. max 14 x x 2 5 x 1 3 x x 1 3 x x x 2 16 x x x 1 x 2 15 x x 2 41

Esame di Ricerca Operativa del 23/02/17

Corso di Ricerca Operativa Prova in itinere del 06/11/2015

Esame di Ricerca Operativa del 13/06/17. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 06/02/17

Indice. Premessa alla prima edizione 15 Premessa alla seconda edizione 17 Premessa alla terza edizione 19. Introduzione 21

FONDAMENTI DI RICERCA OPERATIVA Prof. M.Trubian a.a. 2008/09 Prima prova in itinere: 25/11/08

Esame di Ricerca Operativa del 08/01/13. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 07/09/2016

Programmazione Matematica: III.1 - Programmazione Lineare

Esame di Ricerca Operativa del 17/01/17. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 15/09/14. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 12/06/18. Base x Degenere? y Indice Rapporti Indice uscente entrante

Ricerca Operativa. D.U.T. in Ingegneria Informatica D.U.T. in Ingegneria Logistica e della Produzione 18/05/2002

Ricerca Operativa. Docente. 1. Introduzione

Esame di Ricerca Operativa del 15/01/16. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 21/07/14. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 16/01/18. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Introduzione alla Ricerca Operativa. Cos è la Ricerca Operativa? Modellazione di problemi decisionali Fasi di uno studio di RO Applicazioni della RO

4 PROGRAMMAZIONE LINEARE (PL) E. Amaldi -- Fondamenti di R.O. -- Politecnico di Milano 1

Programma del Corso di Ricerca Operativa (Prof. A. Sforza) - A.A C.d.S. Ingegneria Gestionale N44-N45 C.d.S. Ingegneria Meccanica N47

Problemi di Ottimizzazione

Esame di Ricerca Operativa del 17/07/17. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Ricerca Operativa. Docente. 1. Introduzione

Introduzione al Column Generation Caso di Studio: il Bin Packing Problem

COMPITO DI RICERCA OPERATIVA. max x 1 + x 2 x 1 2x 2 + x 3 = 4 x 1 x 2 x 3 = 3 x 2 + 2x 3 = 1 x 1, x 2, x 3 0

4 PROGRAMMAZIONE LINEARE (PL) E. Amaldi -- Fondamenti di R.O. -- Politecnico di Milano 1

Esame di Ricerca Operativa del 24/07/18. max 7 x 1 +4 x 2 x 1 +3 x x 1 +x x 1 +x 2 12 x 1 x x 1 3 x 2 2 x 1 2 x 2 14

Esame di Ricerca Operativa del 23/02/16. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 10/09/13. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

COMPITO DI RICERCA OPERATIVA. (5 punti) Sia dato il seguente problema di PL: min x 1 + x 2 x 1 + x 2 3 x 1 + x 2 2 2x 1 + x 2 3.

COMPITO DI RICERCA OPERATIVA. max x 1 + x 2 x 1 + x 2 1 x 1 + x 2 2. Lo si trasformi in forma standard e se ne determini una soluzione ottima.

ESAME di OTTIMIZZAZIONE - Compito A (bianco) Corso di Laurea in Ingegneria Gestionale 2 o anno

Capitolo 3: Ottimizzazione Discreta. E. Amaldi DEI, Politecnico di Milano

Introduzione alla programmazione lineare

Esame di Ricerca Operativa del 21/02/19. max 3 x 1 +x 2 6 x x x 1 +2 x x 1 3 x x 1 4 x x 1 +2 x x 1 x 2 3

COMPITO DI RICERCA OPERATIVA. max 5 2x 1 + 3x 2 x 3 = 2 + x 1 5x 2 x 4 = 5 + x 2. x 5 = 1 + x 1 x 2

Esame di Ricerca Operativa del 28/05/14. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Modello di Ottimizzazione per la Schedulazione del Personale Infermieristico di una Residenza Assistita

Esame di Ricerca Operativa del 09/06/15. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Domini di funzioni di due variabili. Determinare i domini delle seguenti funzioni di due variabili (le soluzioni sono alla fine del fascicolo):

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

Esame di Ricerca Operativa del 21/07/15. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 18/02/13

Tagli Split per Programmazione Lineare Intera Mista

Esame di Ricerca Operativa

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

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

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

COMPITO DI RICERCA OPERATIVA. max 3x 1 + 2x 2 x x 2 + x 3 = 4 2x 1 + x 2 + x 4 = 3

Programmazione Lineare Intera. Programmazione Lineare Intera p. 1/4

Registro dell'insegnamento

FACOLTA DI ECONOMIA ESAME SCRITTO DI RICERCA OPERATIVA. Verona, 6 Giugno 1996

Lezioni di Ricerca Operativa

Programmazione Matematica: VI Estensioni dell algoritmo del Simplesso

Esame di Ricerca Operativa del 25/06/12

MODELLI DECISIONALI FORMULAZIONE GENERALE DEL PROBLEMA DECISIONALE (OTTIMIZZAZIONE)

Ricerca Operativa A.A. 2007/ Esercitazione di laboratorio: Branch and Bound.

LEZIONE N. 6 - PARTE 1 - Introduzione

Programmazione Matematica: VII La scomposizione di Dantzig Wolfe

COMPITO DI RICERCA OPERATIVA. min 2x 1 x 2 + x 3 x 4 x 1 x 2 + x 3 + x 4 = 5 x 1 + x 2 + x 3 3. x 1, x 2, x 3, x 4, x 5 I

Ricerca Operativa A.A. 2007/ Esercitazione di laboratorio: Branch and Bound.

Esame di Ricerca Operativa del 11/02/2015

Problemi di Localizzazione Impianti

RICERCA OPERATIVA. Tema d esame del 13/12/2005

Programmazione Lineare Intera (ILP)

LEZIONE N. 6 - PARTE 1 - Introduzione

Teoria della Dualità: I Introduzione

Esame di Ricerca Operativa del 09/02/2016

COMPITO DI RICERCA OPERATIVA. max x 1 + x 2 + x 3 x 1 x 2 + x 3 = 1 x 1 x 2 + x 4 = 1 x 2 + x 5 = 2. x 1, x 2, x 3, x 4 0

Metodi di Ottimizzazione per la Logistica e la Produzione

Esame di Ricerca Operativa del 22/01/18

Ottimizzazione (1 mod., 6 crediti, 48 ore, a.a , lez.1)

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

Esame di Ricerca Operativa del 22/01/18

Transcript:

Programmazione Lineare in MATLAB Ing. Fabio Sciancalepore Politecnico di Bari

Agenda Introduzione alla Ricerca Operativa Problemi di ottimizzazione Programmazione lineare programmazione a variabili continue programmazione a variabili intere Programmazione lineare in MATLAB: la funzione glpk Applicazioni: scheduling dei treni in una rete ferroviaria progettazione di una rete di distribuzione

La Ricerca Operativa (RO) La RO fornisce strumenti decisionali volti a definire soluzioni per la gestione di attività e risorse, considerate: una o più funzioni obiettivo una serie di vincoli relativi ad attività e risorse Le soluzioni individuate possono essere: Ottime Subottime (o ottimali)

Storia della Ricerca Operativa La RO nasce negli anni Trenta del Novecento, per affrontare problemi di natura militare 1935 37 Biggin Hill experiment (Regno Unito): collocazione ottima dei radar sul territorio britannico 1939: all Università di Manchester si forma il primo gruppo di ricerca di RO scientifico militare Secondo Dopoguerra: applicazioni civili della RO pianificazione industriale trasporti ferroviari, stradali, urbani

Applicazioni della Ricerca Operativa Matematica Informatica Economia e finanza Ingegneria Produzione Logistica Militare Progettazione di servizi, trasporti e tecnologie

Definizione di un problema di RO 1. Formulazione del problema 2. Costruzione del modello 3. Derivazione di una soluzione 4. Prova del modello e valutazione della soluzione 5. Attuazione ed aggiornamento della soluzione

Problemi in RO

Problemi di ottimizzazione/1 Approccio matematico di minimizzazione o massimizzazione di una funzione obiettivo, dati certi vincoli Un problema di minimizzazione èsempre riconducibile ad un problema di massimizzazione e viceversa min F( x1, x2,..., xn) max[ F( x1, x2,..., xn)] max F( x, x,..., x ) min[ F( x, x,..., x )] 1 2 n 1 2 n

Problemi di ottimizzazione/2 Ottimizzazione non vincolata: risoluzione mediante analisi differenziale Ottimizzazione vincolata min F( x, x,..., x ) st.. 1 2 ϕ ( x, x,..., x ) b 1 1 2 n 1 ϕ ( x, x,..., x ) b... 2 1 2 n 2 ϕ ( x, x,..., x ) b m 1 2 n m x, x,..., x 0 1 2 n n Funzione obiettivo Vincoli

La Programmazione Lineare Si occupa di studiare algoritmi di risoluzione per problemi di ottimizzazione lineari funzione obiettivo lineare nelle variabili vincoli lineari nelle variabili max T i T a x b i = 1,..., m T i i a x= b i = m,..., m T i i 1 1 2 a x b i = m,..., m i x 0 j = 1,..., n j c x 2

PL in forma matriciale x: vettore delle variabili c: vettore dei coefficienti della funz. obiettivo A: matrice dei vincoli b: vettore dei termini noti max Ax x 0 T c x b Mediante semplici artifici matematici, tutti i vincoli di uguaglianza e diseguaglianza possono essere ricondotti alla forma matriciale Ax B

PL: definizioni n Regione ammissibile X = x : Ax b, x 0 Problema ammissibile Problema inammissibile X { } X = T T Soluzione ottima x* X :c x* c x x X T Problema illimitato k x' X: c x' k

Problemi di PL Problema PL continua PL intera PL binaria PL mista Caratteristiche Algoritmi Variabili continue Metodo grafico Gauss Jordan Simplesso Pr. Duale Variabili intere Lang e Doing Branch and Bound Algoritmo di Gomory Variabili 0 1 Metodo di Balas Variabili di vario tipo Decompos izione di Benders Decompos izione di Dantzig Wolfe

Definizione di un problema di PL: un esempio/1 Un azienda manifatturiera produce i seguenti capi di abbigliamento: Euro Costi unitari Prezzi unitari Pantaloni 24,00 42,00 Giacche 33,00 68,00 Camicie 19,00 34,00 In azienda i reparti hanno i seguenti tempi di lavorazione minuti Taglio Cucitura Stiratura Pantaloni 11 14 10 Giacche 22 19 16 Camicie 16 19 22 Giornalmente possono essere dedicate 21 ore al taglio, 17 ore al cucito e 15 alla stiratura. Definire il mix produttivo giornaliero tale da a) minimizzare i costi; b) massimizzare i ricavi

Definizione di un problema di PL: un esempio/2 Obiettivi: min costi/max ricavi Vincoli: risorse limitate nei reparti Variabili: xp: q.tà pantaloni (u) xg: q.tà giacche (u) xc: q.tà camicie (u) max R= 42x + 68x + 34x or minc = 24x + 33x + 19x st.. 11x + 22x + 16x 1260 P G C 14x + 19x + 19x 1020 P G C 10x + 16x + 22x 900 P G C x, x, x 0 P G C P G C P G C

PL in Matlab: la funzione glpk glpk èun insieme di routine scritte in C++ che permette di risolvere vari problemi di PL glpkmex è un interfaccia che permette di usare glpk in MATLAB mediante la funzione glpk disponibile gratuitamente on line http://glpkmex.sourceforge.net/

Funzione glpk in MATLAB: sintassi [xopt, fmin, status, extra] = glpk (c, a, b, lb, ub, ctype, vartype,sense, param) xopt: vettore delle variabili al valore ottimo fmin: valore ottimo della funzione obiettivo status: codice che esprime la natura del risultato ottenuto c: vettore dei coeff. della funzione obiettivo a: matrice dei vincoli b: vettore dei termini noti lb, ub: vettori dei limiti inf. e sup. delle variabili del problema ctype: vettore che esprime per ogni vincolo la tipologia (<=,=,>=) vartype: vettore che definisce le variabili come continue, intere o bin sense: flag per max ( 1) o min (+1) param: parametro multidimensionale per scegliere gli algoritmi da adottare

Casi studio Progettazione ottima di una rete di distribuzione di farmaci ospedalieri Definizione ottimale dell orario dei treni in una rete ferroviaria