La Ricerca Operativa ha lo scopo di fornire un supporto scientifico alle decisioni che si può sintetizzare nei seguenti passi fondamentali:
|
|
- Bartolommeo Amore
- 5 anni fa
- Visualizzazioni
Transcript
1 Ricerca Operativa La Ricerca Operativa ha lo scopo di fornire un supporto scientifico alle decisioni che si può sintetizzare nei seguenti passi fondamentali: 1 Definizione del problema: c è un sistema che si può migliorare? 2 Osservazione e raccolta dati: quali sono le caratteristiche importanti di questo sistema? È possibile quantificarle? 3 Formulazione di un modello: come si possono tradurre queste informazioni in un problema matematico in modo da poter ottenere i risultati che si vogliono? 4 Scelta di un alternativa: qual è la soluzione di questo problema? 5 Analisi dei risultati: perché la soluzione trovata migliora il sistema? 6 Implementazione della decisione scelta: come si mette in pratica tutto questo? S. Sagratella (DIAG) March 4, / 23
2 Soluzione analitica VS soluzione numerica AMPL è un valido strumento per risolvere numericamente i modelli. PROBLEMA MODELLO AMPL SOLUZIONE Analitica SOLUTORE Analisi RISULTATO SOLUZIONE Numerica S. Sagratella (DIAG) March 4, / 23
3 Esempio 1 - Problema Una fabbrica metallurgica utilizza un laminatoio che prende delle lastre di acciaio e le trasforma in due tipologie di prodotti semi-lavorati: barre e bobine. Questi semi-lavorati vengono prodotti a differenti ritmi di produzione e vengono venduti a prezzi di mercato differenti: ritmi (ton / ora) prezzi ($) Barre Bobine Questa settimana la fabbrica deve decidere quante tonnellate di barre e di bobine produrre, in modo da non superare le 40 ore di attività, non superare la domanda di 6000 tonnellate di barre e 4000 tonnellate di bobine, e da ottenere il massimo profitto. S. Sagratella (DIAG) March 4, / 23
4 Esempio 1 - Modello Si indica con x il numero di tonnellate di barre prodotte e con y il numero di tonnellate di bobine prodotte: max 25x + 30y x y 40 0 x y 4000 S. Sagratella (DIAG) March 4, / 23
5 Esempio 1 - Soluzione Analitica La soluzione di questo problema di programmazione lineare è facile da individuare per via grafica ed è pari a (6000,1400) S. Sagratella (DIAG) March 4, / 23
6 Esempio 1 - Soluzione Numerica Nel prompt AMPL: ampl: var x; ampl: var y; ampl: maximize profitto: 25*x + 30*y; ampl: subject to tempo: (1/200)*x + (1/140)*y <= 40; ampl: subject to limite_barre: 0 <= x <= 6000; ampl: subject to limite_bobine: 0 <= y <= 4000; ampl: solve; MINOS 5.51: optimal solution found. 2 iterations, objective ampl: display x, y; x = 6000 y = 1400 ampl: quit; S. Sagratella (DIAG) March 4, / 23
7 Esempio 2 - Modello Supponiamo di considerare un problema il cui modello sia il seguente: min (x 1) 2 + y 2 x 2 y 1 Questo è un problema di ottimizzazione non lineare con funzione obiettivo quadratica e un vincolo quadratico. S. Sagratella (DIAG) March 4, / 23
8 Esempio 2 - Soluzione Analitica La soluzione di questo problema di programmazione non lineare è facile da individuare per via grafica ed è pari a (1,0) S. Sagratella (DIAG) March 4, / 23
9 Esempio 2 - Soluzione Numerica Con AMPL otteniamo una soluzione da interpretare: ampl: var x; ampl: var y; ampl: minimize obiettivo: (x-1)^2 + y^2; ampl: subject to vincolo: x^2 - y >= 1; ampl: solve; MINOS 5.51: optimal solution found. 14 iterations, objective e-13 Nonlin evals: obj = 39, grad = 38, constrs = 39, Jac = 38. ampl: display x, y; x = 1 y = e-07 ampl: quit; S. Sagratella (DIAG) March 4, / 23
10 Funzionamento di un solutore Un solutore comunica con AMPL, ricevendo in input il problema di ottimizzazione e i settaggi e restituendo in output tutto quello che riguarda la soluzione che ha trovato. AMPL dati iniziali: x SI x è suff. ottimo? NO scelta metodo Metodo 1 Metodo 2 Metodo 3 nuovo punto: x S. Sagratella (DIAG) March 4, / 23
11 Esempio 3 - Modello Supponiamo di considerare un problema il cui modello sia il seguente: min (x 1) 3 + y 3 x 3 6y 2 1 3x 4 2y 2 7 Questo è un problema di ottimizzazione non lineare, per cui è complessa una risoluzione analitica. S. Sagratella (DIAG) March 4, / 23
12 Esempio 3 - Soluzione Numerica Con AMPL inizialmente non otteniamo una soluzione: ampl: var x; ampl: var y; ampl: minimize obiettivo: -(x-1)^3 + y^3; ampl: subject to vincolo1: x^3-6*y^2 <= 1; ampl: subject to vincolo2: 3*x^4-2*y^2 >= 7; ampl: solve; MINOS 5.51: infeasible problem (or bad starting guess). 32 iterations Nonlin evals: obj = 80, grad = 80, constrs = 80, Jac = 80. S. Sagratella (DIAG) March 4, / 23
13 Esempio 3 - Soluzione Numerica Il solutore MINOS ci suggerisce che la difficoltà potrebbe essere data dal punto iniziale scelto. Di default il punto iniziale è (0,0) che per questo problema non è ammissibile. Proviamo a cambiarlo impostando un punto ammissibile: ampl: let x:= 2; ampl: let y:= 2; ampl: solve; MINOS 5.51: optimal solution found. 31 iterations, objective Nonlin evals: obj = 95, grad = 94, constrs = 95, Jac = 94. ampl: display x, y; x = y = S. Sagratella (DIAG) March 4, / 23
14 Insiemi Sintassi AMPL Gli insiemi definiscono gli elementi in base ai quali si indicizzano variabili, parametri e vincoli del modello. È necessario distinguere tra dichiarazione e assegnazione di un insieme 1 dichiarazione(file.mod): set NomeInsieme; 2 assegnazione(file.dat): set NomeInsieme:= e1 e2... em; Esistono diversi tipi di insiemi 1 insiemi non ordinati 2 insiemi numerici 3 insiemi ordinati 4 insiemi ordinati e ciclici S. Sagratella (DIAG) March 4, / 23
15 Sintassi AMPL Dichiarazione Insiemi 1 insieme non ordinato: set NomeInsieme; 2 insieme numerico: set NomeInsieme:= inizio.. fine by intervallo; 3 insieme ordinato: set NomeInsieme ordered; 4 insieme ordinato e ciclico: set NomeInsieme circular; N.B.: gli insiemi numerici non hanno bisogno di un assegnazione S. Sagratella (DIAG) March 4, / 23
16 Operazioni su Insiemi Sintassi AMPL Operatori e funzioni su insiemi generici funzione A union B A inter B A diff B A symdiff B card(a) risultato insieme di elementi che stanno in A o B insieme di elementi che stanno sia in A che in B insieme di elementi che stanno in A ma non in B insieme di elementi che stanno in A on in B ma non in entrambi numero di elementi che stanno in A Operatori e funzioni su insiemi ordinati funzione risultato first(a) primo elemento di A last(a) ultimo elemento di A next(a,a) elemento di A dopo di a prev(a,a) elemento di A prima di a next(a,a,k) k-esimo elemento di A dopo di a prev(a,a,k) k-esimo elemento di A prima di a ord(a,a) posizione di a in A ord0(a,a) come ord(a,a), ma restituisce 0 se a non è in A member(k,a) elemento di A in k-esima posizione S. Sagratella (DIAG) March 4, / 23
17 Sintassi AMPL Insiemi impliciti Espressioni di indicizzazione permettono di definire insieme impliciti ad-hoc utili nella definizione di parametri, di vincoli, della funzione obiettivo e di altri insiemi, senza dover dare un nome esplicito all insieme. coppie ordinate di elementi, tratti rispettivamente da A e da B {A,B} {i in A, j in B} coppie ordinate di elementi, entrambi da A {i in A,j in A} elementi di A tali che il valore associato nel vettore costi >= 10 {i in A: costi[i] >= 10} S. Sagratella (DIAG) March 4, / 23
18 Parametri Sintassi AMPL I parametri rappresentano i dati del problema. I valori numerici non vengono modificati dal solutore. Ovviamente a monte e a valle del processo di risoluzione é possibile modificare esplicitamente tali valori. dichiarazione(file.mod): set PROD; set ZONA; param T; param costi{prod}; param prezzo{prod,zona}; param domanda{prod,zona,1..t}; uso:...t..;...costi[p]...;# p in PROD...prezzo[p,z]...;# p in PROD e z in ZONA...domanda[p,z,t]...;# " " t in 1..T S. Sagratella (DIAG) March 4, / 23
19 Parametri Sintassi AMPL assegnazione(file.dat): set PROD:= p1 p2; set Zona:= z1 z2; param T:=2; param costi:= p1 5 p2 4 ; param prezzo: z1 z2:= p1 3 5 p2 6 4; param domanda:= [*,*,1]: z1 z2:= p p [*,*,2]: z1 z2:= p p ; S. Sagratella (DIAG) March 4, / 23
20 Variabili Sintassi AMPL Le variabili rappresentano le incognite del modello, i cui valori numerici vengono determinati dal solutore su una particolare istanza del modello. dichiarazione(file.mod): set PROD; set OPERAI; param dom{prod}; var Tempo; var Num{PROD}integer; var Ass{PROD,OPERAI} binary; var Quantita{p in PROD}>=0, <=dom[p]; uso: come per i parametri assegnazione (opzionale)(file.dat e file.run): let Tempo:=6; blocco/sblocco(opzionale)(file.dat e file.run): fix Tempo:=4; unfix Tempo; S. Sagratella (DIAG) March 4, / 23
21 Sintassi AMPL Espressioni 1 Le espressioni sono fondamentali nella costruzione della funzione obiettivo e dei vincoli, come anche per imporre condizioni aggiuntive sui parametri e sulle variabili. operatori simbolo tipo operandi tipo risultato + - * / div ^ mod numerico numerico < <= ==!= > >= numerico logico if-then-else logico numerico or and not logico logico S. Sagratella (DIAG) March 4, / 23
22 Espressioni 2 Sintassi AMPL funzioni funzione abs(x) floor(x) ceil(x) sqrt(x) log(x) exp(x) risultato valore assoluto di x approssimazione intera per difetto di x approssimazione intera per eccesso di x radice quadrata x logaritmo naturale di x esponeziale di x funzioni indicizzate funzione sum{a in A}... prod{a in A}... min{a in A}... max{a in A}... risultato somma estesa ai soli elementi in A produttoria estesa ai soli elementi in A minimo esteso ai soli elementi in A massimo esteso ai soli elementi in A S. Sagratella (DIAG) March 4, / 23
23 Sintassi AMPL Vincoli e funzione obiettivo 1 Vincoli I vincoli del modello definiscono le carattestiche che una possibile soluzione deve soddisfare dichiarazione vincolo subject to nomevincolo: espressione_logica; 2 Funzione obiettivo La funzione obiettivo definisce un ranking delle soluzioni ammissibili dichiarazione(file.mod): minimize obj1: espressione_aritmetica; maximize obj2: espressione_aritmetica; scelta obiettivo(se più obiettivi)(file.dat e file.run): objective obj2; S. Sagratella (DIAG) March 4, / 23
AMPL Sintassi ed Esempi
Dipartimento di Matematica Università di Padova Corso di Laurea Informatica Outline Sintassi Elementi di un problema Insiemi Parametri Variabili Funzione Obiettivo Vincoli Dati Insiemi Gli insiemi definiscono
DettagliAMPL Sintassi ed Esempi
Dipartimento di Matematica Università di Padova Corso di Laurea Informatica Outline Sintassi Elementi di un problema Insiemi Parametri Variabili Funzione Obiettivo Vincoli Dati Insiemi Gli insiemi definiscono
DettagliGli insiemi e i parametri in AMPL
2 Gli insiemi e i parametri in AMPL Come abbiamo visto nel capitolo precedente, è molto utilie scrivere il modello in forma parametrica. Questo, nella sostanza, significa scrivere il modello nel file.mod
DettagliScopo del laboratorio
p. 1/1 Scopo del laboratorio Imparare ad usare programmi che implementino metodi di ottimizzazione: simplesso, branch and bound ecc. utilizzarli per risolvere un problema proposto Modellatori Solver p.
DettagliMiscelazione di benzine
Miscelazione di benzine Una raffineria deve miscelare 4 tipi di petrolio grezzo per ottenere 3 tipi di benzina. La tabella seguente mostra la massima quantità disponibile per ogni tipo di petrolio grezzo
DettagliOttimizzazione Combinatoria
Ottimizzazione Combinatoria Esercitazione AMPL A.A. 2-22 Esercitazione a cura di Silvia Canale contatto e-mail: canale@dis.uniroma.it Università i di Roma La Sapienza Dipartimento di Informatica e Sistemistica
DettagliRobert Fourer, David M. Gay, Brian W. Kernighan. AMPL A Modeling Language For Mathematical Programming, Second Edition, Duxbury Thomson, 2003
Introduzione ad AMPL Come ampiamente discusso nel capitolo precedente, l approccio modellistico rappresenta un potente strumento per la soluzione di un problema di decisione. In particolare, rappresentare
DettagliProgetto e ottimizzazione di reti 2
Progetto e ottimizzazione di reti 2 Esercitazione AMPL A.A. 29-2 Esercitazione a cura di Silvia Canale contatto e-mail: canale@dis.uniroma.it Università di Roma La Sapienza Dipartimento di Informatica
DettagliProgetto di rete con unica sorgente e costi fissi
Progetto di rete con unica sorgente e costi fissi Si consideri la topologia di rete data dal grafo G = (V,E) in figura. Ogni nodo i V = {1...n} rappresenta un router connesso ad una rete fissa ed ogni
DettagliAMPL: Esempi e Comandi Avanzati
AMPL: Esempi e Dipartimento di Matematica Università di Padova Corso di Laurea Matematica AMPL: Esempi e Outline AMPL: Esempi e AMPL: Esempi e Script per Operazioni Complesse Ciclo For for {e in INSIEME}{...}
DettagliOttimizzazione Combinatoria
Ottimizzazione Combinatoria Esercitazione AMPL A.A. 2-22 Esercitazione a cura di Silvia Canale contatto e-mail: canale@dis.uniroma.it Università i di Roma La Sapienza Dipartimento di Informatica e Sistemistica
DettagliAppunti delle Esercitazioni di Ottimizzazione V.O. AMPL: A Mathematical Programming Language
Appunti delle Esercitazioni di Ottimizzazione V.O. AMPL: A Mathematical Programming Language a cura di G. Liuzzi and V. Piccialli a.a. 2004-2005 liuzzi@dis.uniroma1.it, http://www.dis.uniroma1.it/ liuzzi
DettagliAMPL: Esempi e Comandi Avanzati
Dipartimento di Matematica Università di Padova Corso di Laurea Matematica Outline Comandi Avanzati Script per Operazioni Complesse Ciclo For for {e in INSIEME}{... } Ciclo Repeat While (termina se espressione
DettagliPianificazione Multiperiodo
Pianificazione Multiperiodo Si vuole pianificare la produzione di tre prodotti A 1, A 2, A 3, su un orizzonte temporale di quattro mesi, da Gennaio ad Aprile. La domanda cambia non solo da un prodotto
DettagliEvoluzione del FORTRAN 14/03/2016. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 15 IL LINGUAGGIO FORTRAN
LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 15 IL LINGUAGGIO FORTRAN Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico II wpage.unina.it/lapegna
DettagliProgetto e ottimizzazione di reti 2
Progetto e ottimizzazione di reti 2 Esercitazione AMPL A.A. 2009-2010 Esercitazione a cura di Silvia Canale contatto e-mail: canale@dis.uniroma1.it Università di Roma La Sapienza Dipartimento di Informatica
DettagliOttimizzazione dei Sistemi Complessi
1 Martedì 17 Maggio 2016 1 Istituto di Analisi dei Sistemi ed Informatica IASI - CNR Programmazione con incertezza Una società di autonoleggio dispone (attualmente, oggi) di 50 macchine tutte dislocate
DettagliOttimizzazione Combinatoria
Ottimizzazione Combinatoria Esercitazione AMPL A.A. 29-2 Esercitazione a cura di Silvia Canale contatto e-mail: canale@dis.uniroma.it Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica
DettagliIntroduzione a Matlab
Matlab è: Abbreviazione di MATrix LABoratory Ambiente di sviluppo per il calcolo numerico (non indicato per il calcolo simbolico) Linguaggio di programmazione interpretato (non compilato) 1 Matlab è inoltre:
DettagliAssegnamento generalizzato: generazione di piani di taglio e branch-and-cut
Assegnamento generalizzato: generazione di piani di taglio e branch-and-cut Riprendiamo il problema di assegnamento generalizzato considerato a esercitazione nell esercizio 4.4: max p ij x ij s.t. i I,j
DettagliLezione 4: La Formalizzazione degli Algoritmi - Strutture di Controllo e Selettive (2p) Venerdì 7 Ottobre 2009
Università di Salerno Corso di FONDAMENTI DI INFORMATICA Corso di Laurea Ingegneria Meccanica & Ingegneria Gestionale Mat. Pari Docente : Ing. Secondulfo Giovanni Anno Accademico 2009-2010 Lezione 4: La
DettagliEsercitazioni di Progetto di Reti di Telecomunicazioni. Anno Accademico Semestre
Esercitazioni di Progetto di Reti di Telecomunicazioni Anno Accademico 2007-2008 2 Semestre Per contattarmi Massimo Tornatore Int. 3691, Ufficio 329 tornator@elet.polimi.it http://networks.cs.ucdavis.edu/~tornatore
DettagliGestione Impresa. Mese 1 2 3 4 5 6 Unità richieste 700 600 500 800 900 800
Gestione Impresa Un impresa di produzione produce un solo tipo di merce. Ci sono 40 operai, ciascuno dei quali produce 20 unità di merce al mese. La domanda fluttua nel corso di un semestre secondo la
DettagliProblema del Set Covering (PLI)
Problema del Set Covering (PLI) Una società deve decidere sulla costruzione di alcuni nuovi impianti per la depurazione di acque in un distretto di 5 città C i, i 1... 5. Ha a disposizione 12 aree A i,
DettagliProgrammazione Matematica Lineare
Programmazione Matematica Lineare Problema di Programmazione Matematica (PM) (problema di ottimizzazione) max f(x) s.t. x R n vettore delle variabili decisionali insieme delle soluzioni ammissibili funzione
DettagliIl linguaggio di modellizzazione algebrica AMPL
4 Il linguaggio di modellizzazione algebrica AMPL Come ampiamente discusso, l approccio modellistico rappresenta un potente strumento per la soluzione di un problema di decisione. In particolare, rappresentare
DettagliModelli di Programmazione Matematica e introduzione ad AMPL
1 Modelli di Programmazione Matematica e introduzione ad AMPL Come accennato nell introduzione, all interno della Ricerca Operativa, un ruolo di fondamentale importanza è svolto dalla Programmazione Matematica
DettagliRisoluzione del rilassamento continuo del problema del commesso viaggiatore
Risoluzione del rilassamento continuo del problema del commesso viaggiatore Sia G = (V,E) un grafo orientato completo, con un costo c ij R associato a ciascun arco (i, j) E. Si consideri la seguente formulazione
DettagliRisoluzione di un problema
Algoritmi Risoluzione di un problema Descrizione di un problema! Individuazione di un ALGORITMO! Metodo risolutivo (progetto) Introduzione 2 Algoritmo Sequenza finita di mosse che risolve in un tempo finito
DettagliAppunti delle Esercitazione di Ricerca Operativa AMPL Plus v1.6
Appunti delle Esercitazione di Ricerca Operativa AMPL Plus v1.6 acuradig.liuzzi a.a. 2001-2002 1 Uso di variabili e parametri a 3 o più dimensioni: un modello di pianificazione Negli esempi precedenti
DettagliIl linguaggio di modellizzazione algebrica AMPL
Il linguaggio di modellizzazione algebrica AMPL Come ampiamente discusso, l approccio modellistico rappresenta un potente strumento per la soluzione di un problema di decisione. In particolare, rappresentare
DettagliMacchine 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
DettagliLinguaggi di modellizzazione
p. 1/5 Linguaggi di modellizzazione Come visto, il primo passo per risolvere un problema di decisione consiste nel formularne il modello matematico. Una volta definito il modello matematico lo dobbiamo
Dettagli126 APPROFONDIMENTI SUI PARAMETRI. SCRIPT IN AMPL
126 APPROFONDIMENTI SUI PARAMETRI. SCRIPT IN AMPL Esempio 8.3.2 Una fabbrica produce divani in tessuto acquistando da un magazzino all ingrosso i quantitativi di tessuto che gli occorrono settimanalmente.
DettagliModelli di programmazione lineare. Il metodo grafico è basato su linearità della funzione obiettivo linearità dei vincoli
Ricerca Operativa 2. Modelli di Programmazione Lineare Modelli di programmazione lineare Il metodo grafico è basato su linearità della funzione obiettivo linearità dei vincoli Sotto queste ipotesi (come
DettagliOttimizzazione Combinatoria
Ottimizzazione Combinatoria Esercitazione AMPL A.A. 2009-2010 Esercitazione a cura di Silvia Canale contatto e-mail: canale@dis.uniroma1.it Università di Roma La Sapienza Dipartimento di Informatica e
DettagliLaboratorio di Matlab
Laboratorio di Matlab Alessandro Formaglio Dipartimento di Ingegneria dell Informazione, Università di Siena alex@dii.unisi.it http://www.dii.unisi.it/ control/matlab/labmatlab.html Martedì 7 Luglio 2009
DettagliCorso di Matematica per la Chimica. Dott.ssa Maria Carmela De Bonis a.a
Dott.ssa Maria Carmela De Bonis a.a. 2013-14 Programmi Un elaboratore riceve dei dati in ingresso, li elabora secondo una sequenza predefinita di operazioni e infine restituisce il risultato sotto forma
DettagliTSP con eliminazione di sottocicli
TSP con eliminazione di sottocicli Un commesso viaggiatore deve visitare 7 clienti in modo da minimizzare la distanza percorsa. Le distanze (in Km) tra ognuno dei clienti sono come segue: 7-8 9 7 9-8 79
DettagliProgetto e ottimizzazione di reti 2
Progetto e ottimizzazione di reti 2 Esercitazione AMPL A.A. 29-2 Esercitazione a cura di Silvia Canale contatto e-mail: canale@dis.uniroma.it Università di Roma La Sapienza Dipartimento di Informatica
DettagliAMPL: Esempi. F. Rinaldi. Corso di Laurea Matematica. Dipartimento di Matematica Università di Padova. Esempi di Modellazione in AMPL
Dipartimento di Matematica Università di Padova Corso di Laurea Matematica Outline Esempi di Modellazione in AMPL Esempio 2 Problema della Dieta In questo problema é data una lista di cibi, a ciascuno
DettagliOttimizzazione dei Sistemi Complessi
1 Lunedì 16 Maggio 2016 1 Istituto di Analisi dei Sistemi ed Informatica IASI - CNR Modalità base 1 Parte scritta, 4 esercizi riguardanti le tematiche trattate nelle lezioni: Metodi senza derivate; Metodi
DettagliProgrammare in C. Maurizio Palesi Salvatore Serrano. Valori. Operazioni. Un insieme di valori del tipo. Per operare su tali valori Tipi
MASTER Information Technology Excellence Road (I.T.E.R.) Programmare in C Maurizio Palesi Salvatore Serrano Master ITER Informatica di Base Maurizio Palesi, Salvatore Serrano 1 Tipi di Dati Valori Un insieme
DettagliIntroduzione al Column Generation Caso di Studio: il Bin Packing Problem
Introduzione al Column Generation Caso di Studio: il Bin Packing Problem November 15, 2014 1 / 26 Introduzione Il column generation è una metodologia che può essere usata per risolvere problemi di ottimizzazione
DettagliOTTIMIZZAZIONE in unione con OTTIMIZZAZIONE DISCRETA e COMPLEMENTI DI RICERCA OPERATIVA
Corsi di Laurea in Ingegneria Matematica, Informatica, dell Automazione e Telecomunicazioni OTTIMIZZAZIONE in unione con OTTIMIZZAZIONE DISCRETA e COMPLEMENTI DI RICERCA OPERATIVA Edoardo Amaldi DEIB -
DettagliBreve guida all uso di AMPL
Breve guida all uso di AMPL Renato Bruni AMPL (A Modeling Language for Mathematical Programming) è un linguaggio di modellazione per la programmazione matematica. Serve ad esprimere un problema di ottimizzazione
DettagliSistemi di Elaborazione dell Informazione 170. Caso Non Separabile
Sistemi di Elaborazione dell Informazione 170 Caso Non Separabile La soluzione vista in precedenza per esempi non-linearmente separabili non garantisce usualmente buone prestazioni perchè un iperpiano
Dettagli1 Modelli di Programmazione Lineare Intera. 2 Variabili intere per rappresentare quantità indivisibili
1 Modelli di Programmazione Lineare Intera Quando tutte le variabili di un problema di Programmazione Lineare sono vincolate ad assumere valori interi, si parla di Programmazione Lineare Intera. Moltissimi
Dettagli3.3 FORMULAZIONE DEL MODELLO E CONDIZIONI DI
3.3 FORMULAZIONE DEL MODELLO E CONDIZIONI DI ESISTENZA DI UN PUNTO DI OTTIMO VINCOLATO Il problema di ottimizzazione vincolata introdotto nel paragrafo precedente può essere formulato nel modo seguente:
Dettagli3.3 Problemi di PLI facili
3.3 Problemi di PLI facili Consideriamo un generico problema di PLI espresso in forma standard min{c t x : Ax = b, x Z n +} (1) dove A Z m n con n m, e b Z m. Supponiamo che A sia di rango pieno. Sia P
DettagliProblemi di Localizzazione Impianti
Sapienza Sapienza Università di Roma - Dipartimento di Ingegneria Informatica, Automatica e Gestionale Problemi di Localizzazione Impianti Renato Bruni bruni@dis.uniroma1.it Il materiale presentato è derivato
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 3 Istruzioni di Assegnazione G. Mecca M. Samela Università della Basilicata Elementi di Base >> Sommario Sommario Introduzione Istruzioni
DettagliEsercitazioni di Algoritmi e Strutture Dati
Esercitazioni di Algoritmi e Strutture Dati I esercitazione, 2/03/2016 Tong Liu 1 OBIETTIVI DEGLI ESERCITAZIONI Comprendere meglio i concetti fondamentali Presentare gli argomenti rilevanti Arrivare al
DettagliTSP con eliminazione di sottocicli
TSP con eliminazione di sottocicli Un commesso viaggiatore deve visitare 7 clienti in modo da minimizzare la distanza percorsa. Le distanze (in Km) tra ognuno dei clienti sono come segue: 3 5 7-8 9 57
DettagliLaboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale
Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Laboratorio di Laurea in Ingegneria Civile e Ambientale Algoritmi e Algebra di Boole Stefano Cagnoni Il problema di fondo Descrizione
Dettagli3.4 Metodo di Branch and Bound
3.4 Metodo di Branch and Bound Consideriamo un generico problema di Ottimizzazione Discreta dove X è la regione ammissibile. (P ) z = max{c(x) : x X} Metodologia generale di enumerazione implicita (Land
DettagliMatematica per l economia
Matematica per l economia Dott. Alessia Russo 28-29-30 Settembre 2010 Dott. Alessia Russo () Matematica per l economia 28-29-30 Settembre 2010 1 / 10 Terza lezione Equazioni - Equazioni lineari e sistemi
DettagliESAME di OTTIMIZZAZIONE - Compito A Corso di Laurea in Ingegneria Gestionale 2 o anno
ESAME di OTTIMIZZAZIONE 12 gennaio pomeriggio 2005 ESAME di OTTIMIZZAZIONE - Compito A Corso di Laurea in Ingegneria Gestionale 2 o anno Cognome : Nome : VALUTAZIONE Per gli esercizi 1,2,3,4 le risposte
DettagliOttimizzazione Combinatoria
Ottimizzazione Combinatoria Esercitazione AMPL A.A. 2010-20112011 Esercitazione a cura di Silvia Canale contatto e-mail: canale@dis.uniroma1.it Università i di Roma La Sapienza Dipartimento di Informatica
DettagliIl linguaggio di modellizzazione algebrica AMPL
4 Il linguaggio di modellizzazione algebrica AMPL Come ampiamente discusso, l approccio modellistico rappresenta un potente strumento per la soluzione di un problema di decisione. In particolare, rappresentare
DettagliIntroduzione. AMPL Introduzione. F. Rinaldi. Dipartimento di Matematica Università di Padova. Corso di Laurea Matematica. F. Rinaldi AMPL Introduzione
Dipartimento di Matematica Università di Padova Corso di Laurea Matematica Outline Introduzione Utilizzo di un Solver Definizione Un solver (o risolutore) è un software che riceve in input una descrizione
DettagliIntroduzione alla programmazione
Introduzione alla programmazione Risolvere un problema Per risolvere un problema si procede innanzitutto all individuazione Delle informazioni, dei dati noti Dei risultati desiderati Il secondo passo consiste
Dettaglip. 1/22 IBM ILOG CPLEX SIMPLEX implementato in C.
p. 1/22 IBM ILOG CPLEX SIMPLEX implementato in C. p. 1/22 IBM ILOG CPLEX SIMPLEX implementato in C. Sono implementati anche altri metodi per trattare diversi problemi di ottimizzazione. p. 1/22 IBM ILOG
DettagliINTRODUZIONE A LINGO. Dispense a cura di Antonio Tiano
INTRODUZIONE A LINGO Dispense a cura di Antonio Tiano 1 LINGO (LINear Generalized Optimization) E un software che consente di : Risolvere problemi di ottimizzazione di vario tipo (PL, PQ, PNL) in presenza
Dettagli3.6 Metodi basati sui piani di taglio
3.6 Metodi basati sui piani di taglio Problema generale di Programmazione Lineare Intera (PLI) con A matrice m n e b vettore n 1 razionali min{ c t x : x X = {x Z n + : Ax b} } Sappiamo che esiste una
DettagliSviluppo di programmi
Sviluppo di programmi FASE 1: Dare un nome al problema partendo dall analisi del problema FASE 2: Scrivere la specifica funzionale FASE 3: Scrittura dell algoritmo FASE 3.1: Introduzione delle variabili
DettagliMetodi di Analisi dei Dati Sperimentali. AA 2009/2010 Pier Luca Maffettone. Elementi di Matlab
Metodi di Analisi dei Dati Sperimentali AA /2010 Pier Luca Maffettone Elementi di Matlab Sommario Introduzione Variabili Manipolazione di elementi Creazione di vettori/matrici Operazioni elementari Funzioni
DettagliSommario Obiettivo della programmazione e ciclo di sviluppo di programmi. Programmi. Ciclo di sviluppo di programmi. Obiettivo
Sommario Obiettivo della programmazione e ciclo di sviluppo di programmi Istruzioni variabili e tipi Sottoprogrammi Strutture di controllo Ricorsione 1 2 Obiettivo Ciclo di sviluppo di programmi Risoluzione
DettagliMetodi e Modelli per l Ottimizzazione Combinatoria Cover inequalities
Metodi e Modelli per l Ottimizzazione Combinatoria Cover inequalities L. De Giovanni M. Di Summa In questa lezione introdurremo una classe di disuguaglianze, dette cover inequalities, che permettono di
Dettagli1 Modelli di Programmazione Lineare Intera. 2 Variabili intere per rappresentare quantità indivisibili
1 Modelli di Programmazione Lineare Intera Quando tutte le variabili di un problema di Programmazione Lineare sono vincolate ad assumere valori interi, si parla di Programmazione Lineare Intera. Moltissimi
DettagliAMPL: Risoluzione di Problemi Nonlineari
Dipartimento di Matematica Università di Padova Corso di Laurea Matematica Outline Risoluzione Problemi Non Lineari Generazione Sequenza Randomica investimenti2.run # cancella eventuali dati memorizzati
Dettagli#include <iostream> // libreria che gestisce flusso di input e output. using namespace std; // uso di librerie standard del C++
Qualsiasi programma in C++ segue lo schema: #include // libreria che gestisce flusso di input e output using namespace std; // uso di librerie standard del C++ int main() { // dichiarazioni
DettagliTrasformazione di Problemi Non Lineari
Capitolo 2 Trasformazione di Problemi Non Lineari 2.1 Trasformazione in problema di PL In questa sezione, verranno presentati tre classi di problemi di programmazione non lineare che, attraverso l uso
DettagliI costrutti forniti dal linguaggio si dividono in corrispondenti classi di istruzioni
Classi di istruzioni In maniera simile a quanto fatto per i dati, un linguaggio mette a disposizione dei costrutti per realizzare la parte esecutiva dell algoritmo. Questa consiste di: Leggi i valori di
DettagliRappresentazione con i diagrammi di flusso (Flow - chart)
Rappresentazione con i diagrammi di flusso (Flow - chart) Questo tipo di rappresentazione grafica degli algoritmi, sviluppato negli anni 50, utilizza una serie di simboli grafici dal contenuto evocativo
DettagliUso avanzato di MATLAB
Uso avanzato di MATLAB Miscione Giuseppe g.miscione@virgilio.it Indice Funzioni matematiche Funzioni di arrotondamento Disegnare funzioni Creare script Controllo del flusso di esecuzione 1 Funzioni matematiche
DettagliTipi di dato strutturati: Array
Tipi di dato strutturati: Array I dati visti finora sono: numeri (interi o razionali), booleani le stringhe (sequenze di caratteri) ma i dati manipolati nelle applicazioni reali sono spesso complessi (o
DettagliDinamica e Controllo dei Processi Energetici. AA 2009/2010 Pier Luca Maffettone. Elementi di Matlab
Dinamica e Controllo dei Processi Energetici AA 2009/ Pier Luca Maffettone Elementi di Sommario Introduzione Variabili Manipolazione di elementi Creazione di vettori/matrici Operazioni elementari Funzioni
DettagliRicerca Operativa e Logistica
Ricerca Operativa e Logistica Dott. F.Carrabs e Dott.ssa M.Gentili A.A. 20/202 Lezione 6-8 Rappresentazione di funzioni non lineari: - Costi fissi - Funzioni lineari a tratti Funzioni obiettivo non lineari:
DettagliSpesso sono definite anche le seguenti operazioni:
Code a priorità Una coda a priorità è una struttura dati astratta che permette di rappresentare un insieme di elementi su cui è definita una relazione d ordine. Sono definite almeno le seguenti operazioni:
DettagliProf. Pagani Corrado ALGORITMI E COMPLESSITÀ COMPUTAZIONALE
Prof. Pagani Corrado ALGORITMI E COMPLESSITÀ COMPUTAZIONALE COMPLESSITÀ DEGLI ALGORITMI L oggetto della teoria della complessità è stabilire se un problema sia facile o difficile In base a quali parametri
DettagliLezioni di Ricerca Operativa 2 Dott. F. Carrabs
Lezioni di Ricerca Operativa Dott. F. Carrabs.. 009/00 Lezione 6: - mmissibilità di un vincolo - Vincoli alternativi - Vincoli alternativi a gruppi - Rappresentazione di funzioni non lineari: Costi fissi
DettagliExcel: una piattaforma facile per l ottimizzazione. Excel ha un toolbox di ottimizzazione: Risolutore
Excel: una piattaforma facile per l ottimizzazione Excel ha un toolbox di ottimizzazione: Risolutore Il problema di produzione con Excel Consideriamo il foglio Excel Variabili di decisione reali c8,d8
DettagliRisoluzione di problemi ingegneristici con Excel
Risoluzione di problemi ingegneristici con Excel Problemi Ingegneristici Calcolare per via numerica le radici di un equazione Trovare l equazione che lega un set di dati ottenuti empiricamente (fitting
DettagliLaboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale
Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale Algebra di Boole Stefano Cagnoni Algebra di Boole L algebra
Dettagli5.6 Metodo di penalità e metodo basato sulle funzioni lagrangiane aumentate
5.6 Metodo di penalità e metodo basato sulle funzioni lagrangiane aumentate Consideriamo il generico problema di PNL min f (x) s.v. c i (x) 0 i I c i (x) = 0 i E (1) x R n dove f e le c i sono di classe
DettagliOttimizzazione nella Gestione dei Progetti - Esercitazione 1: calcolo degli schedule ottimi
Università degli Studi di Roma La Sapienza Ottimizzazione nella Gestione dei Progetti - Esercitazione : calcolo degli schedule ottimi di FABIO D ANDREAGIOVANNI Dipartimento di Informatica e Sistemistica
DettagliLa sezione di dichiarazione delle costanti 1.2 I tipi elementari Classificazione dei tipi Il tipo integer Il tipo boolean
Laboratorio di Programmazione A.A. 2000\2001 La sezione di dichiarazione delle costanti 1.2 I tipi elementari Classificazione dei tipi Il tipo integer Il tipo boolean Editazione a cura di: de Pinto E.
DettagliESERCITAZIONE 1 ELEMENTI DI MATEMATICA
ESERCITAZIONE ELEMENTI DI MATEMATICA Potenze e radicali. Potenze: La potenza n-esima di un numero x, x n, si calcola moltiplicando x per se stesso n volte. Ad esempio, elevare alla quinta significa moltiplicare
DettagliUso del linguaggio di modellazione AMPL
Sapienza Sapienza Universitàdi Roma - Dipartimento di Ingegneria Informatica, Automatica e Gestionale Uso del linguaggio di modellazione AMPL Renato Bruni bruni@dis.uniroma1.it www.dis.uniroma1.it/~bruni
DettagliAssegnazione di una variabile
Assegnazione di una variabile Per scrivere un valore dentro una variabile si usa l operatore di assegnazione, che è rappresentato dal simbolo =. Quindi, se scrivo int a; a = 12; assegno alla variabile
DettagliUniversita degli Studi di Siena
Universita degli Studi di Siena Facolta di Ingegneria Dispense del corso di Sistemi di Supporto alle Decisioni I L algoritmo per la risoluzione di problemi di programmazione dinamica Chiara Mocenni Corso
DettagliPianificazione di Produzione in DEC
Pianificazione di Produzione in DEC L esempio considerato qui è un problema reale che la Digital Equipment Corporation (DEC) ha dovuto affrontare nell autunno del 1988 per preparare la pianificazione di
Dettagli1 Breve introduzione ad AMPL
1 Breve introduzione ad AMPL Il primo passo per risolvere un problema reale attraverso strumenti matematici consiste nel passare dalla descrizione a parole del problema al modello matematico dello stesso.
Dettagli5.6 Metodo di penalità e metodo basato sulle funzioni lagrangiane aumentate. min f(x) s.v. c i (x) 0 i I c i (x) = 0 i E (1) x R n
5.6 Metodo di penalità e metodo basato sulle funzioni lagrangiane aumentate Consideriamo il generico problema di PNL min f(x) s.v. c i (x) 0 i I c i (x) = 0 i E (1) x R n dove f e le c i sono di classe
DettagliCOMPITO 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 ESERCIZIO 1. (5 punti) Sia dato il seguente problema di PL: min x 1 + x 2 x 1 + x 2 x 1 + x 2 2 2x 1 + x 2 x 1 0 x 2 0 Si trasformi questo problema in forma standard e lo si
DettagliRicerca Operativa. Ricerca Operativa p. 1/2
Ricerca Operativa Ricerca Operativa p. 1/2 Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici di problemi di decisione complessi. In tali problemi la
DettagliLinguaggi di programmazione - Principi e paradigmi 2/ed Maurizio Gabbrielli, Simone Martini Copyright The McGraw-Hill Companies srl
Approfondimento 2.1 Non è questo il testo dove trattare esaurientemente queste tecniche semantiche. Ci accontenteremo di dare un semplice esempio delle tecniche basate sui sistemi di transizione per dare
Dettagli