Upload
vothuy
View
230
Download
1
Embed Size (px)
Citation preview
Ingegneria Informatica e Ingegneria Matematica
FONDAMENTI DI RICERCA OPERATIVA D / E
Edoardo Amaldi
DEI - Politecnico di Milano
Sito web: http://home.dei.polimi.it/amaldi/FRO-DE-08-09.html
INTRODUZIONE
Ricerca Operativa (“Operations Research”):
Uso di modelli matematici e metodi quantitativi avanzati per analizzare problemi decisionali
complessi e fornire un supporto alla presa di decisioni
Tra matematica, informatica, economia e ingegneria
1
Problemi decisionali
Problemi di scelta tra diverse soluzioni alternative sulla base di uno (o piu) criteri
Esempi:
1) Assegnare m incarichi (jobs) a m persone (macchine) minimizzando il tempo necessario per com-
pletarli
P1 P2 P3
I1 2 6 3
I2 8 4 9
I3 5 7 8
Tabella dei tempi (m = 3)
Numero di soluzioni alternative?
2
Problemi decisionali
Problemi di scelta tra diverse soluzioni alternative sulla base di uno (o piu) criteri
Esempi:
1) Assegnare m incarichi (jobs) a m persone (macchine) minimizzando il tempo necessario per com-
pletarli
P1 P2 P3
I1 2 6 3
I2 8 4 9
I3 5 7 8
Tabella dei tempi (m = 3)
Numero di soluzioni alternative: m!
3
2) Collegare n citta (uffici) con una rete di comunicazione di costo minimo
Numero di soluzioni alternative?
3) Organizzare i turni del personale rispettando le varie esigenze e minimizzando il numero di persone
coinvolte
4) Determinare il numero di sportelli da aprire affinche il tempo medio di attesa non superi un certo
valore
5) Decidere quale modello di PC portatile comperare, tenendo conto del prezzo, del peso, delle
prestazioni
Problemi complessi affrontati con l’approccio modellistico (tecniche matematiche e strumenti in-
formatici)
4
2) Collegare n citta (uffici) con una rete di comunicazione di costo minimo
Numero di soluzioni alternative: ≤ 2n(n−1)
3) Organizzare i turni del personale rispettando le varie esigenze e minimizzando il numero di persone
coinvolte
4) Determinare il numero di sportelli da aprire affinche il tempo medio di attesa non superi un certo
valore
5) Decidere quale modello di PC portatile comperare, tenendo conto del prezzo, del peso, delle
prestazioni
Problemi complessi affrontati con l’approccio modellistico (tecniche matematiche e strumenti in-
formatici)
5
Cenni storici
Origini militari (seconda guerra mondiale):
Assegnare in modo efficace le risorse limitate alle diverse operazioni
Esempi: posizionamento dei radar, approvigionamento dei convogli, logistica...
“Operations Research” sta per la ricerca del modo piu efficace di condurre le operazioni
Nel dopoguerra, metodi analoghi applicati in ambito industriale
Il boom economico, ingrandendo le imprese e organizzazioni, poneva problemi decisionali molto piu
complessi!
6
Circostanze favorevoli:
• Rapidi progressi teorici in Ricerca Operativa e in Calcolo Numerico
• Avvento e diffusione dei primi computer (potenza di calcolo disponibile e poi diffusione di software)
Ricerca Operativa = “Management Science”
7
Caratteristiche dei problemi decisionali
• numero di decisori (chi decide?)
• numero degli obiettivi (in base a quali criteri
decide?)
• grado di incertezza dei dati (con quali
informazioni decide?)
Piu decisori ⇒ Teoria dei giochi
Piu obiettivi ⇒ Programmazione multi-obiettivo
Grado di incertezza > 0 ⇒ Programmazione stocastica
8
Esempio: Mix produttivo
Una azienda produce tre tipi di apparecchiature elettroniche.
Le fasi critiche del ciclo produttivo: assemblaggio, finitura e controllo di qualita.
Ore-uomo per ogni fase e prodotto:
A1 A2 A3
Assemblaggio 80 70 120
Finitura 70 90 20
Controllo qualita 40 30 20
Disponibilita produttiva nell’orizzonte di pianificazione espressa in ore-uomo:
Assemblaggio Finitura Controllo qualita
1000 800 300
Margine lordo unitario espresso in KEuro:
A1 A2 A3
16 10 2
Si suppone che l’azienda possa vendere tutto cio che produce.
Formulare in termini matematici il problema di determinare un “piano” di produzione che
massimizzi il margine lordo complessivo.
9
Modello mix produttivo
Variabili di decisione:
xj = quantita di apparecchiatura Aj prodotta (j = 1, 2, 3)
Funzione obiettivo:
max z = 16x1 + 10x2 + 2x3
Vincoli: capacita produttiva per ogni fase
80x1 + 70x2 + 120x3 ≤ 1000 (assemblaggio)
70x1 + 90x2 + 20x3 ≤ 800 (finitura)
40x1 + 30x2 + 20x3 ≤ 300 (controllo qualita)
Non negativita delle variabili:
x1, x2, x3 ≥ 0
10
Schema generale di uno studio di R.O.
Problema → Modello → Algoritmo → Programma
Modello: rappresentazione semplificata della realta
Per definirlo bisogna individuare gli elementi fondamentali e le principali relazioni
11
Esempio: Pianificazione di investimenti
Una societa di investimenti finanziari deve decidere la composizione di un portafoglio di titoli.
Investimento Area Capitale [ cj ] (KEuro) Rendimento atteso [ rj ]
A (settore auto) Germania 150 11%
B (settore auto) Italia 150 9%
C (settore informatica) U.S.A. 60 13%
D (settore informatica) Italia 100 10%
E (settore elettrodomestici) Italia 125 8%
F (settore elettrodomestici) Francia 100 7%
G (titoli di stato a breve) Italia 50 3%
H (titoli di stato a lungo) Inghilterra 80 5%
Capitale = 600 KEuro
Al massimo 5 investimenti per non frammentare troppo la gestione
Diversificazione per area geografica: ≤ 3 investimenti in Italia e ≤ 3 all’estero
Formulare in termini matematici il problema di selezione degli investimenti in modo tale da
massimizzare il ritorno atteso rispettando i vincoli che mirano a ridurre il rischio.
12
Modello di pianificazione di investimenti
Variabili di decisione:
xj = 1 se j-esimo investimento viene effettuato e xj = 0 altrimenti (j = 1, . . . , 8)
Funzione obiettivo:
max z =
8∑
j=1
cj rj xj
Vincoli:
8∑
j=1
cj xj ≤ 600 (capitale)
8∑
j=1
xj ≤ 5 (max 5 investimenti)
x2 + x4 + x5 + x7 ≤ 3 (max 3 in Italia)
x1 + x3 + x6 + x8 ≤ 3 (max 3 all’estero)
Variabili binarie (intere): xj ∈ {0, 1} ∀j, 1 ≤ j ≤ 8
13
Per limitare il rischio: i) investimenti C e D sono mutuamente esclusivi,
ii) se si sceglie un investimento nel settore informatico, bisogna anche selezionare titoli di stato.
Modello:
max z =
8∑
j=1
cj rj xj
8∑
j=1
cj xj ≤ 600 (capitale)
8∑
j=1
xj ≤ 5 (max 5 investimenti)
x2 + x4 + x5 + x7 ≤ 3 (max 3 in Italia)
x1 + x3 + x6 + x8 ≤ 3 (max 3 all’estero)
x3 + x4 ≤ 1 (C e D esclusivi)
x3 + x4 ≤ x7 + x8 (invest. in titoli di stato)
xj ∈ {0, 1} ∀j, 1 ≤ j ≤ 8
14
Esempio: Problema di assegnazione
Il responsabile di un ufficio deve assegnare m = 3 incarichi a m persone sulla base delle seguenti stime
dei tempi che ciascuno impiega ad eseguire ogni incarico:
P1 P2 P3
I1 2 6 3
I2 8 4 9
I3 5 7 8
Tabella dei tempi tij, 1 ≤ i, j ≤ 3
Formulare in termini matematici il problema di determinare quale incarico assegnare ad ogni
persona in modo tale da minimizzare la somma dei tempi di completamento di tutti gli incarichi.
15
Modello di assegnazione
Variabili di decisione:
xij = 1 se l’incarico i viene assegnato alla persona j e xij = 0 altrimenti ∀ i, j con 1 ≤ i, j ≤ 3
Funzione obiettivo:
min z =
3∑
i=1
3∑
j=1
tijxij
Vincoli:
3∑
i=1
xij = 1 j = 1, 2, 3 (ad ogni persona j un’unico incarico)
3∑
j=1
xij = 1 i = 1, 2, 3 (ogni incarico i ad un’unica persona)
Variabili binarie (intere):
xij ∈ {0, 1} ∀i, j, 1 ≤ i, j ≤ 3
16
Esempio: localizzazione di impianti
Tre pozzi petroliferi, situati nei punti A, B e C, estraggono greggio.
Dove localizzare una raffineria per minimizzare il costo degli oleodotti (proporzionale al quadrato della
lunghezza)?
E vietato costruirla nel raggio di 100 km attorno al punto D = (100, 200).
Gli oleodotti possono invece attraversare la zona vietata.
17
Modello localizzazione di impianti
Variabili di decisione:
x1, x2 coordinate cartesiane della raffineria
Funzione obiettivo:
min z =[
(x1 − 0)2 + (x2 − 0)2]
+[
(x1 − 300)2 + (x2 − 0)2]
+[
(x1 − 240)2 + (x2 − 300)2]
Vincoli:√
(x1 − 100)2 + (x2 − 200)2 ≥ 100
Natura variabili:
x1, x2 reali
18
Programmazione matematica (PM)
Problemi decisionali con un solo decisore, un solo criterio di scelta e ambiente certo
opt f (x) con x ∈ X
• variabili di decisione x ∈ Rn : grandezze numeriche il cui valore individua una soluzione del
problema
• regione ammissibile X ⊆ Rn distingue le soluzioni ammissibili da quelle non ammissibili (me-
diante vincoli)
• funzione obiettivo f : X → R esprime in modo quantitativo il gradimento o il costo di ciascuna
soluzione ammissibile
• opt = min oppure opt = max NB: max{f(x) : x ∈ X} = −min{−f(x) : x ∈ X}
19
Ottimi globali
Risolvere un problema di PM consiste nell’individuare una soluzione ammissibile globalmente ot-
tima, ovvero un x∗ ∈ X tale che
f (x∗) ≤ f (x) ∀x ∈ X se opt = min
f (x∗) ≥ f (x) ∀x ∈ X se opt = max
Puo avvenire che:
1. il problema sia inammissibile (X = ∅)
2. il problema sia illimitato (∀c ∈ R,∃xc ∈ X tale che f (xc) ≤ c oppure f (xc) ≥ c)
3. vi sia un numero elevatissimo (anche infinito) di soluzioni ottime (con lo stesso valore ottimo!)
20
Ottimi locali
Talvolta ci si deve accontentare di una soluzione ammissibile localmente ottima, ovvero un x ∈ X
tale che
f (x) ≤ f (x) ∀x con x ∈ X e ||x − x|| ≤ ǫ se opt = min
f (x) ≥ f (x) ∀x con x ∈ X e ||x − x|| ≤ ǫ se opt = max
per ǫ > 0 opportuno
Un problema puo avere tanti ottimi locali!
21
Casi particolari di PM
• Programmazione Lineare (PL)
f (x) lineare
X = {x ∈ Rn : gi (x) R 0, i = 1, . . . , m} con R ∈ {=,≤,≥} e gi (x) lineare per ogni i
Esempio: Mix produttivo
• Programmazione Lineare Intera (PLI)
f (x) lineare
X = {x ∈ Rn : gi (x) R 0, i = 1, . . . , m} ∩ Z
n con R ∈ {=,≤,≥} e gi (x) lineare per ogni i
Esempio: Pianificazione investimenti, assegnazione di incarichi
PLI coincide con PL con in piu il vincolo di interezza delle variabili di decisione
• Programmazione Non Lineare
f (x) regolare
X volume racchiuso fra superfici {x ∈ Rn : gi(x) = 0} regolari (con gi (x) regolari)
Esempio: Localizzazione di impianti
22
Programmazione a molti obiettivi
Vi sono vari approcci per tenere conto di piu obiettivi
Se si desidera minimizzare f1 (x) e massimizzare f2 (x):
1. senza priorita: ricondursi al caso con un solo obiettivo convertendo i diversi obiettivi in unita di
misura omogenee
min λ1f1 (x) − λ2f2 (x)
per due scalari λ1 e λ2 opportuni
2. con priorita: ottimizzare l’obiettivo prioritario e ridurre quelli secondari a vincoli di qualita
minx∈X
f1 (x) con X = {x ∈ X : f2 (x) ≥ c}
per una costante c opportuna
23
Programmazione matematica e simulazione
Entrambe richiedono la costruzione di un modello e lo sviluppo di un algoritmo
Programmazione matematica Simulazione
Problemi “ben” formalizzabili Problemi difficili da formalizzare
L’algoritmo fornisce una soluzione L’algoritmo riproduce il sistema reale e perme-
tte di sperimentare le prestazioni di soluzioni
diverse
I risultati sono “certi” I risultati sono da “interpretare”
24
ESEMPI DI SUCCESSI DELLA R.O.
anno azienda settore effetto
90 Taco Bell turni personale 7.6M$ risparmio
(fast food) annuo
92 American Arlines nuovo sistema di tariffe, “overbooking” + 500M$
e coordinamento dei voli
92 Harris Corp. pianificazione 50% ⇒ 95% ordini
(semiconduttori) produzione “on time”
95 GM - car rental utilizzo parco +50M$ annui
auto evitato fallimento
96 HP - stampanti riprogettata linea raddopiata
produttiva produzione
97 Bosques Arauco logistica taglio 5M$ risparmio
e trasporto annuo
99 IBM riorganizzata catena 750M$ risparmio
logistica annuo
25
Praticamente nessun manager delle “Fortune 500” gestisce la propria azienda senza il supporto di metodi
quantitativi e della R.O.
Notevoli vantaggi non solo per le grandi aziende/enti/organizzazioni
R.O. utile ogniqualvolta si desidera razionalizzare l’uso di risorse limitate!
In contesti di rapida evoluzione, elevata complessita ed incertezza e indispensabile trovare e implementare
solutioni efficaci
“Informatizzazione” e disponibilita dei dati hanno aperto nuovi orizzonti...
26