Sei sulla pagina 1di 40

Appunti delle Lezioni di Ottimizzazione

di Sistemi Complessi
a cura di G. Liuzzi1
Master in Ottimizzazione e Data Mining

liuzzi@iasi.cnr.it, http://www.iasi.cnr.it/liuzzi

Capitolo 1

Programmazione Multiobiettivo
1.1

Introduzione

Un problema matematico di ottimizzazione pu`


o essere definito come la minimizzazione o
massimizzazione di una funzione a valori reali su un insieme specificato. Limportanza
di questo modello matematico deriva ovviamente dal fatto che molti problemi reali vengono affrontati facendovi ricorso. Tuttavia quasi ogni problema reale di ottimizzazione `e
caratterizzato dalla presenza contemporanea di pi`
u obiettivi, cio`e funzioni a valori reali da
massimizzare e/o minimizzare, tipicamente in contrasto tra loro.
Nel seguito considereremo il seguente problema di ottimizzazione multiobiettivo:
min (f1 (x)f2 (x) . . . fk (x))

(MOP)

xF

ove k 2 e fi : IRn IR, per i = 1, . . . , k.


Dora in avanti chiameremo IRk spazio degli obiettivi e IRn spazio delle variabili di decisione.
Un vettore x IRn sar`a pertanto un vettore di decisioni mentre z IRk un vettore di obiettivi.
Indicheremo, inoltre, con f (x) il vettore delle funzioni obiettivo (f1 (x)f2 (x) . . . fk (x)) e con
Z = f (F ) limmagine della regione ammissibile F nello spazio degli obiettivi (vedi figura) e
cio`e


Z = f (F ) = z IRk : x F, z = f (x) .
In particolare diremo che un vettore di obiettivi z IRk `e ammissibile quando risulti z Z.
Definiamo , inoltre, il vettore ideale degli obiettivi z id come il vettore di componenti
ziid =

min fi (x)
xF

Quello che vogliamo fare `e minimizzare tutte le funzioni obiettivo simultaneamente. Se


non ci fossero conflitti tra le funzioni obiettivo, una soluzione banale al problema sarebbe
quella ottenibile risolvendo separatamente k problemi di ottimizzazione (uno per ogni funzione obiettivo) ottenendo quindi come soluzione proprio il vettore ideale z id . Non sarebbe
pertanto necessario applicare nessuna tecnica specifica di soluzione. Per evitare il sorgere
di tale caso banale, supporremo che z id 6 Z. Questo significa assumere che le funzioni
f1 (x), f2 (x), . . . , fk (x) siano, almeno in parte, in contrasto tra loro.
Con B(x, ) = {y IRn | kx yk < } indicheremo la sfera aperta di centro x IRn e raggio

> 0. Dato un insieme A, indicheremo con A la frontiera di A, con A linterno e con A la


chiusura di A.
1

Vettore ideale

z2

x2

Z=f(S)

z1

x1
x3

Dati due insiemi A e B definiamo linsieme differenza A\B come quellinsieme costituito da
tutti e soli gli elementi di A che non appartengono a B, ovvero


A\B = x A : x 6 B .

Dato un vettore b IRn ed un insieme A IRn , definiamo traslazione di A rispetto a b


linsieme


b + A = x IRn : x = b + a per ogni a A .
In maniera del tutto analoga definiamo linsieme


b A = x IRn : x = b a per ogni a A .

Se I `e un insieme di indici e v un vettore, con vI indicheremo il sottovettore costituito dalle


componenti di v con indici in I. Sia infine IRk+ lortante positivo dello spazio degli obiettivi
cio`e


IRk+ = z IRk : z 0 .

1.2

Ottimalit`
a secondo Pareto

Prima di procedere, `e necessario definire con chiarezza cosa si intende per soluzione ottima di un problema di programmazione multiobiettivo. La definizione che adottiamo e
che `e riportata nel seguito, `e stata proposta per la prima volta da Edgeworth nel 1881 e
successivamente ripresa da Vilfredo Pareto nel 1896 [4] che la approfond` ulteriormente.
Definizione 1.2.1 Dati due vettori z 1 , z 2 IRk , diciamo che z 1 domina z 2 secondo Pareto
(z 1 P z 2 ) quando risulta
zi1 zi2 per ogni i = 1, 2, . . . , k e

zj1 < zj2 per almeno un indice j {1, . . . , k}.


La relazione binaria P `e un ordinamento parziale (non riflessivo) nello spazio delle k-uple di
numeri reali. Sfruttando la relazione P possiamo dare la definizione di ottimalit`a secondo
Pareto.
Definizione 1.2.2 Un vettore di decisioni x F `e un ottimo di Pareto se non esiste
unaltro vettore x F tale che:
f (x) P f (x ).

Ottimo di Pareto

Ottimi locali

Ottimi globali

Figura 1.1:

Ottimi locali e globali di Pareto.

Corrispondentemente diremo che un vettore di obiettivi z Z `e ottimo secondo Pareto


quando non esiste un altro vettore z Z tale che
z P z .
Quindi se ci troviamo in un punto ottimo secondo Pareto e vogliamo ulteriormente diminuire
il valore di una o pi`
u funzioni obiettivo dobbiamo essere disposti ad accettare un conseguente
aumento in alcune (o tutte) le rimanenti funzioni del problema. In tal senso possiamo
affermare che, nello spazio degli obiettivi, gli ottimi di Pareto sono punti di equilibrio che si
trovano sulla frontiera dellinsieme Z.
Definizione 1.2.3 Diciamo frontiera efficiente linsieme degli ottimi di Pareto del problema
(MOP)

Frontiera
efficiente

La definizione di ottimo secondo Pareto `e ovviamente, una definizione di ottimo globale dato
che si richiede la validit`a di una certa propriet`
a su tutto linsieme ammissibile del problema
` evidentemente possibile, per`o, dare una definizione di ottimo locale secondo
(MOP). E
Pareto.
Definizione 1.2.4 Un vettore di decisioni x F `e un ottimo locale di Pareto se esiste un
numero > 0 tale che x `e ottimo secondo Pareto in F B(x , ).

Ottimo locale
di Pareto

In figura 1.1 si riportano gli ottimi globali e locali di Pareto per un insieme Z.
Ovviamente, ogni ottimo globale `e anche un ottimo locale di Pareto. Il viceversa `e vero solo
se facciamo alcune ipotesi sulla struttura del problema (MOP). Se (MOP) `e convesso cio`e
se
i- linsieme ammissibile F `e convesso e
ii- tutte le funzioni obiettivo fi (x) (con i = 1, 2, . . . , k) sono convesse.
allora si pu`
o dimostrare che ogni ottimo locale di Pareto `e anche un ottimo globale.
Teorema 1.2.5 Sia (MOP) un problema di programmazione multiobiettivo convesso. Allora, ogni ottimo locale di Pareto `e anche un ottimo globale.
La definizione di ottimo secondo Pareto pu`
o essere leggermente indebolita ottenendo cos` la
definizione di ottimo debole secondo Pareto.
Definizione 1.2.6 Un vettore x F `e un ottimo di Pareto debole per il problema (MOP)
se non esiste un punto x F tale che
f (x) < f (x ).
3

Equivalenza tra
ottimi locali e
globali
di Pareto

Ottimalit`
a debole
secondo Pareto

Z2

Ottimi deboli di Pareto

Ottimi di Pareto
Z1

Figura 1.2:

Gli ottimi di Pareto sono individuati dalla linea doppia a tratto continuo. La linea tratteggiata
individua invece gli ottimi deboli che non sono ottimi di Pareto.

Ovviamente, linsieme degli ottimi secondo Pareto `e contenuto nellinsieme degli ottimi
deboli di Pareto.
Anche qui, come gia si era fatto per gli ottimi di Pareto, `e possibile dare una definizione di
ottimo locale debole.
Definizione 1.2.7 Un vettore di decisioni x F `e un ottimo locale debole (secondo
Pareto) se esiste un numero > 0 tale che x `e ottimo debole di Pareto in F B(x , ).
In figura 1.2 sono riportati, per maggiore chiarezza, ottimi e ottimi deboli secondo Pareto.
Anche per gli ottimi deboli secondo Pareto vale una propriet`
a analoga a quelle espressa dal
teorema 1.2.5 e cio`e se il problema (MOP) `e convesso ogni ottimo locale (debole) `e anche
ottimo globale (debole) di Pareto.

1.2.1

Esercizio

Sia dato il seguente problema di ottimizzazione vettoriale:


min (x1 + x2 , x1 x2 )

2
2

x1 + x2 2
x21 x2 0

x 0

(1)

In questo caso, in cui il vettore delle decisioni ha dimensione due, `e semplicissimo tracciare
la regione ammissibile nello spazio delle variabili di decisione. Inoltre, poiche il vettore degli
obiettivi ha dimensione due e le funzioni obiettivo sono lineari, possiamo determinare la
rappresentazione grafica di Z = f (F ). Vediamo nel dettaglio come fare.
Le relazioni che dobbiamo prendere in considerazione sono le seguenti due trasformazioni
lineari:
(
z1 = f1 (x1 , x2 ) = x1 + x2
(2)
z2 = f2 (x1 , x2 ) = x1 x2
La regione ammissibile degli obiettivi `e ottenibile da quella delle decisioni mediante rotazione
e scalatura, come messo in evidenza dalla figura 1.3
Sempre per via grafica, `e facile risolvere i sottoproblemi ad un solo obiettivo associati al

Ottimo locale
debole di Pareto

2
1

-1

id

-2

Ottimi di Pareto

F
1

Figura 1.3:

Esempio

problema (1) che sono:


z1id
= min x1 + x2
x21 + x22 2

x21 x2 0

x 0
1

x1 = (0, 0)

z2id
= min x1 x2
x21 + x22 2

x21 x2 0

x 0
1

x2 = (0, 2)

ricavando, in tal modo, il vettore ideale degli obiettivi z id = (0, 2) . Notiamo subito che
non essendo z id contenuto in Z = f (F ), il problema vettoriale non `e risolvibile semplicemente minimizzando separatamente le due funzioni obiettivo.
` altres` facile individuare, in figura 1.3, la frontiera efficiente secondo Pareto dellinsieme
E
Z. Come ci aspettavamo, essendo il problema (1) convesso, tutti gli ottimi locali di Pareto
sono anche globali.

1.3

Condizioni di Ottimalit`
a

Nelle sezioni precedenti abbiamo dato delle definizioni fondamentali della programmazione
multiobiettivo. In particolare, dato che lo spazio delle k-uple di numeri reali `e solo parzialmente ordinato, abbiamo dovuto definire cosa si intende per minimo di un vettore di
funzioni.
Quello che dobbiamo fare ora, `e dare una caratterizzazione analitica dei punti di ottimo
secondo Pareto. Come vedremo, tutte le condizioni di ottimo per la programmazione multiobiettivo, comprendono come caso particolare quelle per la programmazione nonlineare (con
una sola funzione obiettivo). Per ulteriori approfondimenti sullargomento di questa sezione
si rimanda al testo [1] citato in bibliografia.

Nel seguito consideriamo un problema in cui F `e definito da vincoli di disuguaglianza; cio`e:


min f (x)

(P)

g(x) 0

ove f : IRn IRk (k 2) e g : IRn IRm sono funzioni continuamente differenziabili ed F


assume la seguente struttura:
F = {x IRn : g(x) 0}.
Indichiamo con
I0 (x) = {i : gi (x) = 0}
linsieme degli indici dei vincoli attivi nel punto x. Sia, inoltre, L : IRnkm IR cos`
definita
L(x, , ) = f (x) + g(x),
la funzione Lagrangiana associata al problema (P).

1.3.1

Condizioni di Fritz-John

Una prima condizione necessaria di ottimo per il problema multiobiettivo (P) `e data dal
seguente teorema.
Teorema 1.3.1 Condizione necessaria affinche x F sia ottimo secondo Pareto `e che
esistano dei vettori IRk e IRm tali che sia soddisfatto il seguente sistema:
k
X
i=1

i fi (
x) +

m
X
j=1

j gj (
x) = 0

(3a)

g(
x) = 0,
(, ) 0, (, ) 6= (0, 0)

(3b)
(3c)

Esempio di punto che soddisfa le condizioni


necessarie di ottimalit`
a.

Esempio di punto che NON soddisfa le condizioni


necessarie di ottimalit`
a.

Corollario 1.3.2 Le condizioni del teorema 1.3.1 sono necessarie anche per lottimalit`
a
debole (secondo Pareto) di un punto x.
2

CN di Fritz-John

Definizione 1.3.3 (tripla di FJ) Una tripla (x, , ) IRnkm `e una tripla di FritzJohn quando soddisfa il sistema (3) cio`e:
x L(x, , ) = 0

g(x) 0

g(x) = 0

(, ) 0 (, ) 6= (0, 0).
Definizione 1.3.4 (punto di FJ) Un vettore di decisioni x IRn `e un punto di FJ se
esistono dei vettori IRk e IRm tali che (x, , ) `e una tripla di FJ.

1.3.2

Condizioni di Karush-Kuhn-Tucker

Si pu`facilmente far vedere che esistono casi in cui un punto ammissibile potrebbe essere un
punto di FJ indipendentemente dalle funzioni obiettivo. Motivati da questa considerazione
introduciamo in questo paragrafo le condizioni di KKT con le quali in pratica forziamo i
gradienti di alcune funzioni obiettivo ad avere un peso non nullo nellespressione (3a).
Preliminarmente introduciamo la seguente definizione.
Definizione 1.3.5 Un punto ammissibile x F `e un punto di regolarit`
a per i vincoli del
problema (P) se in x sono linearmente indipendenti i gradienti dei vincoli attivi.

LICQ

A questo punto possiamo dare la seguente ulteriore condizione necessaria di ottimalit`a


secondo Pareto.
Teorema 1.3.6 Sia x un punto ammissibile per il problema (P) e siano linearmente indipendenti i gradienti dei vincoli attivi in x
. Allora, condizione necessaria affinche x
sia un
ottimo di Pareto (locale o globale) `e che sia ammissibile il seguente sistema:
k
X
i=1

i fi (
x) +

m
X
j=1

j gj (
x) = 0,

CN di KKT

(4a)

g(
x) = 0,
(, ) 0, 6= 0.

(4b)
(4c)

Corollario 1.3.7 Le condizioni del teorema 1.3.6 sono necessarie anche per lottimalit`
a
debole (secondo Pareto) di un punto x.
2
Le condizioni di KKT (come quelle di FJ) sono condizioni solo necessarie di ottimo il che
`
vuol dire che potrebbero essere verificate anche in punti non ottimi secondo Pareto. E
tuttavia possibile dare condizioni sufficienti di ottimalit`a, senza ricorrere alluso delle derivate
seconde, a patto per`
o di fare alcune ipotesi aggiuntive sulla struttura del problema (P).
Teorema 1.3.8 Siano le fi (x) (per ogni i = 1, 2, . . . , k) e gj (x) (per ogni j = 1, 2, . . . , m)
convesse. Condizione sufficiente affinche un punto x
F sia ottimo secondo Pareto `e che
esistano dei vettori di moltiplicatori IRk e IRm tali che
x L(
x, , ) = 0,

(5a)

g(
x) = 0,
> 0, 0.

(5b)
(5c)

CS di ottimo
secondo Pareto

Si noti che nelle condizioni sufficienti di KKT appena viste si richiede che tutti i moltiplicatori
delle funzioni obiettivo siano strettamente positivi mentre nelle condizioni necessarie almeno
un i `e strettamente positivo.
Per quanto riguarda i punti di ottimo debole secondo Pareto, `e possibile stabilire, sempre
sotto le ipotesi di convessit`a, un risultato ancora pi`
u forte. Per tali punti si possono dare
condizioni necessarie e sufficienti di ottimo.
Teorema 1.3.9 Siano le fi (x) (per ogni i = 1, 2, . . . , k) e gj (x) (per ogni j = 1, 2, . . . , m)
convesse. Condizione necessaria e sufficiente affinche un punto x
F sia ottimo debole
secondo Pareto `e che esistano dei moltiplicatori IRk e IRm tali che
x L(
x, , ) = 0,

g(
x) = 0,
(, ) 0, 6= 0.

1.4

Metodi di Soluzione

Generare le soluzioni ottime secondo Pareto costituisce una parte essenziale della programmazione vettoriale ed anzi, matematicamente parlando, nella maggior parte dei casi, il problema (P) si considera risolto una volta che sia stato individuato linsieme degli ottimi di
Pareto. Tuttavia, non sempre ci si pu`
o accontentare semplicemente di aver trovato linsieme
degli ottimi secondo Pareto. Alcune volte `e infatti necessario ordinare tutte le soluzioni
trovate e quindi selezionare la migliore rispetto a tale ordinamento. Per questo motivo abbiamo bisogno di un decisore cio`e di qualcuno che ci dica, in base alle sue preferenze, come
ordinare linsieme degli ottimi di Pareto del problema (P).
In base al ruolo svolto dal decisore nella strategia di soluzione del problema, i metodi
risolutivi della programmazione multiobiettivo vengono spesso suddivisi in quattro grandi
categorie.
Metodi senza preferenze nei quali il decisore non ha nessun ruolo e si considera soddisfacente laver trovato un qualunque ottimo di Pareto.
Metodi a posteriori nei quali si genera linsieme di tutti gli ottimi di Pareto e poi lo si
presenta al decisore che sceglie la soluzione per lui migliore.
Metodi a priori nei quali il decisore specifica le sue preferenze prima che abbia inizio
il processo risolutivo. In base alle informazioni avute dal decisore viene direttamente
trovata la soluzione ottima migliore, senza dover dunque generare tutti gli ottimi di
Pareto.
Metodi interattivi nei quali il decisore specifica le sue preferenze mano a mano che
lalgoritmo procede, guidando in tal modo il processo risolutivo verso la soluzione per
lui pi`
u soddisfacente.
Al di l`a di questa distinzione, tutti i metodi di soluzione per la programmazione multiobiettivo si basano sulla medesima idea di fondo, ovvero quella di trasformare il problema
originario in uno con una sola funzione obiettivo. La tecnica mediante la quale si ottiene il
problema mono obiettivo a partire dal problema (P) `e nota come scalarizzazione.

1.4.1

Metodi Senza Preferenze

Nei metodi senza preferenze ci si accontenta di generare una soluzione ottima di Pareto,
qualunque essa sia, senza tenere in considerazione le indicazioni del decisore.
8

CNS di KKT

Il metodo che presentiamo `e noto come metodo GOAL (cfr. [3, sez. 2.1]). Quello che
si fa `e cercare la soluzione che minimizza, nello spazio degli obiettivi, la distanza tra la
regione ammissibile (Z) e un qualunque punto di riferimento z ref 6 Z = f (F ). Il vettore
di riferimento sar`a costituito dai valori auspicabili per le singole funzioni obiettivo. In
particolare, una possibile scelta di z ref `e z ref = z id . Il problema che otteniamo `e perci`o il
seguente:
min kf (x) z id kp

(Pp )

g(x) 0

ove k kp indica la norma p di un vettore (con 1 p ). In particolare, se p = , il


problema (Pp ) `e noto come problema di Tchebycheff. Supponiamo di conoscere il vettore
ideale globale degli obiettivi. Sotto tali ipotesi, il problema (Pp ) ammette sempre soluzione.
Valgono le seguenti propriet`
a.
Proposizione 1.4.1 Ogni soluzione globale del problema (Pp ) (con 1 p < ) `e un ottimo
globale di Pareto per il problema (P).
Estendiamo ora il risultato precedente al caso dei minimi locali (cfr. [3]).
Proposizione 1.4.2 Ogni ottimo locale del problema (Pp ) (con 1 p < ) `e un ottimo
locale di Pareto per il problema (P).
2
Nel caso in cui p = vale invece la seguente propriet`
a (cfr. [3]).
Proposizione 1.4.3 Ogni ottimo locale (globale) del problema di Tchebycheff (P ) `e un
ottimo locale (globale) debole di Pareto del problema (P).
2
Tuttavia, la seguente proposizione, ci assicura lesistenza di almeno una soluzione di (P )
ottima secondo Pareto per il problema (P).
Proposizione 1.4.4 Il problema di Tchebycheff (P ) ha almeno una soluzione che `e ottima
secondo Pareto.
2
Le scelte di p = 1 e p = sono particolarmente vantaggiose nel caso in cui il problema
multiobiettivo originario `e lineare (fi (x), gj (x) lineari per ogni i e j). Mediante semplici
manipolazioni sul problema (Pp ) `e infatti possibile ottenere ancora un problema lineare e
quindi adottare le ben note tecniche della PL per la sua soluzione. Supponiamo che (P) sia
lineare ovvero

min (c
1 x, c2 x, . . . , ck x)

Ax b
Norma p = 1.
Il problema scalarizzato
min

k
X
i=1

id
|c
i x zi |

Ax b
pu`
o essere facilmente trasformato in un problema di PL con laggiunta di k variabili ausiliarie,
i per i = 1, 2, . . . , k, ottenendo:
min

k
X

i=1
(

id
|c
i x zi | i

i = 1, 2, . . . , k

Ax b

x2

1111111111111111
0000000000000000
0000000000000000
1111111111111111
0000000000000000
1111111111111111
0000000000000000
1111111111111111
0000000000000000
1111111111111111
0000000000000000
1111111111111111
F
0000000000000000
1111111111111111
0000000000000000
1111111111111111
0000000000000000
1111111111111111
0000000000000000
1111111111111111
0000000000000000
1111111111111111
0000000000000000
1111111111111111
0000000000000000
1111111111111111
0000000000000000
1111111111111111
0000000000000000
1111111111111111
0000000000000000
1111111111111111
1

Figura 1.4:

x1

Regione ammissibile

Norma p = .
In questo caso, il problema scalarizzato
min

id
max {|c
i x zi |}

i=1,...,k

Ax b
pu`
o essere facilmente trasformato in un problema di PL con laggiunta di una sola variabile
ausiliaria, , ottenendo:
min
(

id
|c
i x zi |

i = 1, 2, . . . , k

Ax b

Esempio
Si consideri il seguente problema di programmazione multiobiettivo:
min
(x1 , x2 )
2
2

x1 + x2 1
0 x1 2

0x 2

(Pes )

In questo esempio, vedi figura 1.4, le regioni ammissibili nello spazio delle variabili di
decisione ed in quello degli obiettivi coincidono essendo
(
z1 = x1
z2 = x2

Possiamo inoltre facilmente calcolare il vettore ideale degli obiettivi ottenendo cos`: z id =
(0, 0) . In figura 1.5a sono riportati gli ottimi di Pareto del problema (Pes ).
A questo punto applichiamo il metodo GOAL con p = 1, 2, .
10

1111111
0000000
0000000
1111111
0000000
1111111
0000000
1111111
0000000
1111111
0000000
1111111
0000000
1111111

1111111
0000000
0000000
1111111
0000000
1111111
0000000
1111111
0000000
1111111
0000000
1111111
0000000
1111111

1111111
0000000
0000000
1111111
0000000
1111111
0000000
1111111
0000000
1111111
0000000
1111111
0000000
1111111

(a)

(b)

(c)

1111111
0000000
0000000
1111111
0000000
1111111
0000000
1111111
0000000
1111111
0000000
1111111
0000000
1111111
(d)

Figura 1.5:

Differenti soluzioni in corrispondenza a differenti tipi di norme.

p = 1. Il problema scalarizzato con questo tipo di norma ha due soluzioni (vedi figura
1.5b).
p = 2. Il problema che otteniamo usando la norma euclidea ha infinite soluzioni (come
si vede in figura 1.5c) e cio`e tutte le soluzioni del problema (Pes ).
p = . Il problema di Tchebycheff ha una sola soluzione (vedi figura 1.5d)

1.4.2

Metodi a Posteriori

I metodi appartenenti a questa classe sono anche noti come metodi per generare linsieme
delle soluzioni di Pareto. Infatti, siccome le preferenze del decisore vengono considerate
solo al termine del processo risolutivo, quello che si fa `e generare tutti i punti ottimi secondo Pareto. Una volta che linsieme delle soluzioni di Pareto `e stato generato, esso viene
presentato al decisore che seleziona il o i vettori per lui migliori.
Linconveniente principale di questa strategia sta nel fatto che il processo di generazione degli
ottimi di Pareto `e, molto spesso, computazionalmente oneroso. Inoltre, potrebbe non essere
semplice, per il decisore, scegliere una soluzione tra gli ottimi che gli vengono presentati, in
special modo se questi sono numerosi. Per questo motivo, `e molto importante il modo con
il quale le soluzioni vengono presentate al decisore.
Metodo dei Pesi (cfr. [3, sez. 3.1])
Consideriamo il seguente problema
min

k
X

wi fi (x)

(Pw )

i=1

g(x) 0

11

ove w IRk+ e i coefficienti wi si intendono normalizzati cio`e tali che


k
X

wi = 1.

i=1

Esiste una relazione tra le soluzioni di (Pw ) e i punti di Pareto di (P).


proposizione mette in evidenza proprio questa relazione (cfr. [3]).

La seguente

Proposizione 1.4.5 Ogni soluzione locale (globale) del problema (Pw ) `e un ottimo debole
locale (globale) di Pareto per il problema (P).
2
Nel caso in cui il problema (Pw ) ammette una unica soluzione allora si pu`
o stabilire un
risultato un po pi`
u forte del precedente (cfr. [3]).
Proposizione 1.4.6 Se il problema (Pw ), fissato il vettore dei pesi w 0, ammette una
unica soluzione allora essa `e un ottimo di Pareto per il problema (P).
Allo stesso modo, se i pesi wi sono tutti strettamente positivi `e possibile dimostrare la
seguente
Proposizione 1.4.7 Se wi > 0 per ogni indice i, ogni soluzione locale (globale) del problema
(Pw ) `e un ottimo locale (globale) di Pareto per il problema (P).
2
Nellipotesi in cui il problema multiobiettivo (P) `e convesso, `e possibile stabilire la seguente
propriet`
a di esistenza (cfr. [3])
Proposizione 1.4.8 Sia x un ottimo di Pareto per il problema (P). Se (P) `e convesso
allora esistono dei pesi w IRk+ con
k
X

wi = 1

i=1

e tali che x `e soluzione anche del problema (Pw ).

Metodo degli -vincoli (cfr. [3, sez. 3.2])


Si seleziona una funzione obiettivo fl (x) tra gli obiettivi di (P) e poi si trasformano tutte le
altre funzioni fi (x) (con i = 1, 2, . . . , k i 6= l) in vincoli, imponendo degli upper bound sui
loro valori. Il problema che otteniamo `e allora il seguente:
min fl (x)
fi (x) i
g(x) 0

i = 1, 2, . . . , k i 6= l

(P )

ove l {1, 2, . . . , k}.


Proposizione 1.4.9 (cfr. [3]) Ogni soluzione di (P ) `e un ottimo debole secondo Pareto
per il problema (P).
2
La prossima proposizione fornisce condizioni necessarie e sufficienti di ottimalit`a (secondo
Pareto) per il problema (P) delle soluzioni di (P ).
Proposizione 1.4.10 Un vettore x F `e ottimo secondo Pareto di (P) se e solo se `e
soluzione di (P ) per ogni scelta di l {1, 2, . . . , k} ed essendo i = fi (x ) con i 6= l.
Proposizione 1.4.11 (cfr. [3]) Se il punto x F `e lunica soluzione del problema (P )
per qualche l {1, 2, . . . , k} e con j = fj (x ) per ogni j 6= l allora esso `e Pareto ottimo per
il problema (P).
2

12

Capitolo 2

Programmazione con Incertezza


2.1

Nozioni preliminari

` noto che un generico problema di ottimizzazione pu`


E
o essere posto nella forma [2]
minx

f (x)

c.v.

x D,

ove x IRn `e detto vettore delle variabili di decisione, f : IRn IR `e detta funzione obiettivo
e D IRn `e detto insieme ammissibile. A seconda delle propriet`
a della funzione f (x) e
dellinsieme D parleremo di ottimizzazione lineare o non lineare, ottimizzazione vincolata o
non vincolata, ottimizzazione continua o combinatoria e cos` via.
Per quanto concerne queste note `e comodo introdurre la seguente funzione obiettivo estesa
tale che
f : IRn IR
(
f (x)
se x D,
f (x) =
+
se x 6 D,
per cui `e possibile riscrivere il generico problema di ottimizzazione come
min f (x).
x

Dato uno spazio di probabilit`


a (, F , P ), sia : (, F ) (IRn , B n ) una v.a. e supponiamo
che la funzione obiettivo f (x, ) e linsieme ammissibile D() dipendano dalle realizzazioni
di . Anche in questo caso possiamo pensare alla funzione obiettivo estesa definita come
(
f (x, )
se x D(),
f (x, ) =
+
se x 6 D().
Nel caso attuale, in cui i dati del problema dipendono esplicitamente dalla v.a. , non `e pi`
u
immediato riconoscere un problema di ottimizzazione nel senso che non `e ben chiaro cosa
dobbiamo ottimizzare e con quali vincoli dato che sia la funzione obiettivo che la regione
ammissibile dipendono da un elemento incerto ovvero dalle realizzazioni della v.a. . In
altri termini, non ha certamente senso considerare il problema
min f (x, )

(1)

13

2.1.1

Formulazione deterministica

Ci sono diversi modi di trattare lincertezza in un problema di ottimizzazione. Un primo


modo consiste nello stimare un valore della v.a. (come per esempio il suo valore atteso
IE []), sia esso
, e quindi risolvere il problema
min f (x,
)

(2)

In questo caso, la funzione obiettivo f (x,


) non dipende pi`
u dalla v.a. che `e fissata
al valore
e quindi il problema `e nuovamente un problema, per cos` dire, deterministico
che pu`
o essere risolto come usualmente si farebbe. Questo approccio, bench`e perfettamente
giustificabile in alcuni ambiti applicativi, potrebbe non avere molto senso e, a volte, portare
a soluzioni certamente non ottime come vedremo pi`
u avanti con alcuni esempi.

2.1.2

Osservazione e ottimizzazione

In alcuni casi `e possibile posticipare la scelta delle variabili di decisione x ad un momento


successivo alla osservazione della v.a. il che corrisponde a quella che viene comunemente
definita strategia wait-and-see. In questo caso, ci troviamo a dover risolvere un problema di
ottimizzazione in x che dipende da come parametro. Potremmo cos` pensare di risolvere
il problema (2) solo per il valore
corrispondente alla realizzazione della v.a. oppure
potremmo concentraci sulla determinazione del valore ottimo
() = inf f (x, )
x

e dellinsieme di soluzioni ottime


() = arg min f (x, ),
x

entrambi funzione della variabile aleatoria .

2.1.3

Ottimizzazione e osservazione

Contrariamente al caso precedente, potrebbe non essere possibile posticipare la scelta di x


fin dopo aver osservato la realizzazione della v.a. ovvero `e necessario adottare quella che
comunemente viene definita strategia here-and-now. In questo assetto le decisione vanno
prese subito avendo a disposizione solo la conoscenza sulla v.a. che ci viene dalla sua
f.d. In questo caso `e necessario riflettere sul fatto che per ogni scelta delle variabili x non
abbiamo un valore certo f (x) ma, piuttosto, un valore incerto f (x, ). In altri termini, per
ogni realizzazione della v.a. abbiamo una funzione 7 f (x, ) ovvero, potremmo pensare
ad f (x, ) come ad una v.a. composta.
Il caso peggiore
In questo assetto possiamo pensare di risolvere il problema minx f(x) dove
f(x) = sup f (x, ).

Ovviamente, questo significa concentrarsi esclusivamente sul peggiore risultato ottenibile


avendo fissato le variabili x senza alcun tentativo di distinguere le realizzazioni della v.a. in
base alla sua distribuzione di probabilit`
a.

14

Programmazione stocastica
Questo approccio consiste nellinterpretare, per ogni x, f (x, ) a sua volta come una v.a.
` dunque possibile, per ogni x, calcolare il
che eredita la sua f.d. da quella della v.a. . E

valore atteso f (x) = IE [f (x, )] e quindi risolvere il problema


min f(x).

(3)

2.1.4

Esempio: il problema del venditore di giornali

Questo problema, meglio noto con il nome di newsvendor problem, `e probabilmente il pi`
u
semplice esempio di ottimizzazione in presenza di incertezza ed `e, pertanto, particolarmente
adatto per familiarizzare con alucni fondamentali concetti della programmazione in presenza
di incertezza. Il problema `e il seguente.
Il ragazzo che vende i giornali al semaforo deve decidere quanti giornali x acquistare alle
prime luci dellalba dalleditore al costo di c euro per giornale. Durante la mattinata potr`
a
rivendere i giornali al prezzo di s euro luno e, a fine mattinata, pu`
o rivendere alleditore i
giornali non venduti ricavando r euro luno. Ovviamente vale la seguente relazione
0 r < c < s.
Il grosso problema del venditore `e che, al momento in cui deve scegliere quanti giornali (x)
acquistare dalleditore, non conosce con esattezza il numero di clienti che acquisteranno il
giornale da lui al semaforo. In altri termini, la sua domanda giornaliera di quotidiani pu`
o
essere considerata come una variabile aleatoria la cui realizzazione accadr`
a in un momento
successivo a quello in cui deve acquistare i giornali dalleditore.
Indichiamo con D la v.a. che descrive il numero di giornali effettivamente venduti al semaforo
durante la mattinata. La tabella che segue riporta i costi, i ricavi e il profitto del venditore
nella mattinata in funzione della variabile di decisione x e della v.a. D.
Ricavi

Costi
acquisto giornali: cx

vendite al semaforo:
(

vendite alleditore:

sx

se x < D

sD

se x D

0
r(x D)

se x < D
se x D

profitto: f (x, D) = cx + s min{x, D} + r max{0, x D}


Il problema da risolvere sarebbe dunque il seguente
min f (x, D),
x0

e cio`e un problema della forma di (1) in cui la v.a. = D.


Supponiamo ora che il venditore possa decidere quanti giornali acquistare dalleditore dopo
aver avuto notizia di quanti giornali potr`
a vendere nella mattinata. Siamo nel caso waitand-see (cfr. sottosezione 2.1.2) in cui la v.a. D `e trattata come un parametro. In questo
caso la f (x, D) `e funzione della sola variabile x e dipende parametricamente da D.
f (x, D)
D

15

Ovviamente, la soluzione ottima risulta essere x = D e il valore ottimo (c s)D ovvero,


coerentemente con la notazione fin qui adottata,
(D) = (c s)D,
e
(D) = {x IR : x = D}.
Ovviamente, questa tecnica risolutiva ha senso solo quando `e lecito supporre che ci sia una
sorta di oracolo che predice al venditore il numero di giornali che potr`
a vendere al semaforo.
In ogni altro caso, questa tecnica risolutiva non ha molto senso.
Supponiamo ora che D sia una v.a. discreta cio`e abbia la seguente f.d. di probabilit`
a
evento

FD ()

D = 30

1/7

D = 40

2/7

D = 50

2/7

D = 60

1/7

D = 100

1/7

Un altro modo di approcciare il problema consiste, come accennato nella sottosezione 2.1.1,
nel risolvere un problema in cui si fissa il valore della v.a., per esempio, al suo valore atteso
= 370/7 e quindi risolvere il problema per D = D.
In questo caso la soluzione `e,
IE[D] = D
cio`e x = D,
y1 = D
e y2 = 0 con valore ottimo (D)
= (c s)D.

banalmente, (D)
Come visto nella sottosezione 2.1.3, un ulteriore modo di procedere `e quello di risolvere il
problema
min

max

x0 30D100

f (x, D).

Considerato il fatto che la funzione f (x, D) `e in questo caso non crescente rispetto alla
variabile D,
f (x, D)
x

con D
= 30. Daltra parte, siccome, come si verifica
risulta max30D100 f (x, D) = f (x, D),
facilmente, la funzione f (x, 30)
f (x, 30)
30

16

`e decrescente per 0 x 30 e crescente per x 30, il problema minx0 f (x, 30) ha soluzione
= 30 con valore ottimo (c s)
ottima x
=D
x = 30(c s). Questa soluzione corrisponde
perfettamente allatteggiamento del venditore che, cautamente, sceglie di acquistare il maggior numero di giornali nellipotesi di venderne il minor numero possibile. I limiti di questo
approccio sono evidenti. Nel caso, per esempio, in cui sia possibile anche levento D = 0
la strategia che dovremmo adottare sarebbe x = 0 ovvero il venditore non acquista alcun
giornale per limitare i danni nel caso peggiore in cui gli dovesse capitare di non venderne
nessuno.
Per concludere la rassegna dei vari approcci al problema rimane da analizzare quello detto
di stochastic programming (programmazione stocastica). Secondo quanto visto nella sottosezione 2.1.3, questo tipo di approccio consiste nel considerare, per ogni valore x ammissibile, la f (x, D) come una nuova v.a. per la quale `e possibile calcolare il valore atteso
IED [f (x, D)] e quindi risolvere il problema
min IED [f (x, D)].

(4)

x0

Nel caso in esame, in cui D `e una v.a. discreta, la funzione che otteniamo `e
f (x) = IED [f (x, D)] =

2
2
1
1
1
f (x, 30) + f (x, 40) + f (x, 50) + f (x, 60) + f (x, 100)
7
7
7
7
7

che `e una funzione convessa, lineare a tratti e continua ma non differenziabile. Sia f (x) il
subdifferenziale di f in x cos` definito:
f (x) = {t IR : f (y) f (x) + t(y x) per ogni y IR}.
Per la funzione f (x) risulta

(c s)

7 (c r) +

3 (c r) +
7
f (x)
5

7 (c r) +

7 (c r) +

(c r)

se x < 30
6
7 (c
4
7 (c
2
7 (c
1
7 (c

s) se 30 x < 40
s) se 40 x < 50
s) se 50 x < 60

s) se 60 x < 100
se x 100

ovvero, pi`
u sinteticamente,
f (x)

=
=

(c r)P [D x] + (c s)P [D > x]


(c r)FD (x) + (c s)(1 FD (x))
(c s) + (s r)FD (x).

Come `e noto, considerata la convessit`a di f (x), x `e un punto di minimo di f (x) se e solo se


0 f (x ).
Nel caso in esame in cui f (x) `e funzione di una sola variabile e f (x) c s < 0, per ogni
x < 30 , `e possibile determinare il punto di minimo di f (x) cercando il pi`
u piccolo x IR
tale per cui
f (x ) (c s) + (s r)FD (x ) > 0,
da cui otteniamo


sc
1

x = FD
sr
17

1
avendo indicato con FD
() = min{x : FD (x) } ovvero l-quantile della distribuzione
di probabilit`
a FD (). Notiamo che x corrisponde al punto in cui la pendenza di f (x) passa
da negativa (f (x) decrescente) a positiva (f (x) crescente).
La figura che segue riporta landamento della funzione f (x), quando r = 0.8, c = 1.6 e
s = 1.8, da cui `e facile riconoscere che il valore ottimo del problema (4) `e
1
x = FD
(0.2) = 40.
IED [f (x, D)]

30

40

50

60

100

Supponiamo ora che D sia una v.a. continua, cio`e una v.a. con f.d. FD () continua, per
cui risulta
Z
f (x) = IE[f (x, D)] =
f (x, )dFD ().
0

Notiamo che, anche in questo caso, essendo la funzione f (x, D) convessa (e lineare a tratti
rispetto ad x), anche la funzione f (x) `e convessa rispetto ad x. Allora
Z x
Z
f (x) = cx +
[rx (s r)]dFD () sx
dFD (),
0

da cui, mediante integrazione per parti, otteniamo


Z x
f (x) = (c s)x + (s r)
FD ()d.
0

Derivando rispetto a x, otteniamo, come nel caso precedente,


f (x) = (c s) + (s r)FD (x).
Percui, ricordando che f (x) `e convessa rispetto a x, x `e punto di minimo se e solo se
f (x ) = (c s) + (s r)FD (x ) = 0,
da cui, anche in questo caso, otteniamo
FD (x ) =

sc
sr

e quindi, nuovamente,


sc
1
x = FD
.
sr

18

2.2

Fondamenti di Programmazione Stocastica

Come gia in parte anticipato nel corso della precedente sezione, le principali caratteristiche
della programmazione stocastica sono le seguenti:
1. here-and-now, vale a dire che, non ostante lingente coinvolgimento di accadimenti
futuri, ogni cosa `e mirata al miglioramento di decisioni che devono essere prese nel
presente ovvero prima che qualunque v.a. possa realizzarsi;
2. ricorsione, ovvero lopportunit`a che `e data al modellista di tenere conto del fatto
che le decisioni prese nel presente possano essere, almeno in parte, corrette in tempi
successivi;
3. informazione e osservazione, le decisioni in tempi successivi possono rispondere a informazioni che si sono rese disponibili da quando sono state prese le decisioni iniziali.
Questa informazioni `e modellata mediante losservazione di v.a.;
4. convessit`
a, teoria e metodi risolutivi di programmazione stocastica sono sviluppati
sotto lipotesi restrittiva di convessit`a;
5. indipendenza delle misure di probabilit`
a dalle decisioni, si assume cio`e che le v.a. siano
indipendenti dalle decisioni.
Uno degli aspetti pi`
u caratteristici della programmazione stocastica ed anche quello che maggiormente la differenzia dalla programmazione matematica `e certamente quello dinamico.
Pi`
u precisamente, in un contesto di programmazione stocastica `e opportuno familiarizzare
con il cos` detto processo ricorsivo nel quale le decisioni si alternano con le osservazioni. In
particolare possiamo pensare al seguente processo ricorsivo
u0 IRn0

decisione iniziale

2 2
u2 IRn2
..
.
N N

osservazione
decisione di ricorsione

1 1
u1 IRn1

osservazione
decisione di ricorsione

uN IRnN

decisione di ricorsione

osservazione

In questo processo ricorsivo, abbiamo uno stadio iniziale nel quale viene presa la decisione
u0 IRn0 e successivamente N stadi di ricorsione ciascuno composto da una osservazione,
nella quale una v.a. si realizza, e da una decisione, che dovrebbe essere la risposta allosservazione appena avvenuta. Alla fine di questo processo ricorsivo, avremo un vettore di
decisioni
u = (u0 , u1 , . . . , uN ) IRn con n = n0 + n1 + + nN
e un vettore di osservazioni che potremmo definire la storia delle osservazioni e rappresentare
come
= (1 , . . . , N ) con = 1 N .
Un altro ingrediente essenziale `e il costo del processo ricorsivo che pu`
o essere pensato come
con
una funzione f : IRn IR
f (u, ) = f (u0 , u1 , . . . , uN , 1 , . . . , N ).
19

Naturalmente la funzione f (u, ) ha valori nello spazio esteso dei reali ovvero pu`
o assumere
anche il valore +. Pi`
u precisamente, f (u, ) = + quando u 6 C().
A questo punto, potremmo pensare che lo scopo dellottimizzatore sia quello di risolvere il
seguente problema
min IE [f (u, )],
u

ovvero un problema come il problema (3). Ovviamente, questo non `e il caso. Infatti se
facessimo cos`, ci troveremmo, nuovamente, a dover scegliere u = (u0 , u1 , . . . , un ) prima di
conoscere = (1 , . . . , N ), il che distruggerebbe immediatamente tutti i vantaggi di avere
decisioni e osservazioni mescolate le une con le altre. In particolare, nel nostro caso, se
ci poniamo nello stadio k-esimo possiamo partizionare il vettore = (1 , . . . , N ) nei due
sottovettori
(1 , . . . , k )
(k+1 , . . . , N )

informazione disponibile
incertezza residua.

Nel fare questo, bisogna sempre tenere presente che il fine ultimo dellottimizzazione `e quello
di produrre una decisione iniziale u0 e che le v.a. i , i = 1, . . . , N , non saranno mai
veramente osservate ma, piuttosto, si potr`
a al pi`
u supporre che lo siano state. Per esempio,
al generico stadio k ci troveremo a dover determinare uk supponendo che siano state osservate
1 , . . . , k . Questo `e il motivo per cui, allo stadio k, siamo interessati a determinare, non
tanto un vettore uk IRnk , quanto piuttosto una funzione di ricorsione definita sullo spazio
1 k
uk () : (1 , . . . , k ) 7 uk (1 , . . . , k ) IRnk .
Nello scegliere una tale funzione uk () stiamo, in sostanza, specificando nel presente (hereand-now) come risponderemo ad ogni possibile realizzazione delle prime k osservazioni.
Definiamo strategia una funzione u : IRn ovvero
u() = (u0 , u1 (1 ), u2 (1 , 2 ), . . . , uN (1 , . . . , N )).

(5)

Indichiamo con U linsieme di tutte le possibili funzioni u() di questo tipo. Notiamo che
la componente uk () dipende da 1 , . . . , k e non da k+1 , . . . , N . Questa propriet`
a, detta non anticipo delle strategie, serve a garantire che le decisioni non siano basate sulla
conoscenza di eventi futuri prima che questi accadano. Il problema al quale arriviamo `e il
seguente
min IE [f (u(), )],

u()U

` importante notare che il precedente `e un problema di ottimizdove u() `e dato da (5). E


zazione in cui le variabili di decisione sono particolari funzioni distinte dalla propriet`
a sopra
citata di non anticipo.

2.2.1

Esempio: financial planning and control

Una famiglia americana sta progettando di mandare il proprio figlio al college. I genitori
sanno che tra Y = N v anni, e cio`e quando il figlio avr`
a raggiunto let`a per potersi iscrivere,
la retta per lintero periodo degli studi sar`a di G = 80000 euro. Al momento i genitori
dispongono di un budget di b = 55000 euro (b < G) e devono decidere come investire questi
risparmi. Al termine degli Y anni i genitori potranno
1. prendere in prestito (con un interesse r = 4%) i soldi che servono per arrivare a coprire
la retta di G euro per liscrizione al college; oppure
20

2. depositare in un libretto di risparmio (con un interesse q = 1%) i soldi avanzati dopo


il pagamento della retta di iscrizione.
La famiglia pu`
o investire su I tipi diversi di investimento e pu`
o cambiare investimento ogni
v anni. I genitori hanno, quindi, N = Y /v differenti periodi di investimento.
Supponiamo, per semplicit`a di trattazione, che I = 2 (due soli tipi di investimento: stock
o bond), N = 3 (tre periodi) e v = 5 (5 anni di durata minima di ogni investimento). A
seconda dellandamento dei mercati finanziari, si pu`
o avere un interesse di 1.25 per gli stock
e 1.14 per i bond oppure 1.06 per gli stock e 1.12 per i bond con uguali probabilit`
a (in
condizione di massima incertezza).
Il processo decisionale `e quella gia visto in precedenza in cui abbiamo N = 3 stadi di
ricorsione ovvero
u0 = (u10 , u20 )T IR2

decisione iniziale

1
IR2

osservazione
decisione di ricorsione

3
u3 (1 , 2 , 3 ) = (u13 (1 , 2 , 3 ), u23 (1 , 2 , 3 ))T IR2

osservazione
decisione di ricorsione

u1 (1 ) =

(u11 (1 ), u21 (1 ))T

u2 (1 , 2 ) =

(u12 , u22 )T

2
IRn2

osservazione
decisione di ricorsione

dove = {up, down} contiene i due soli andamenti possibili per i mercati finanziari a cui
corrispondono i tassi di interesse degli investimenti disponibili.
Stadio iniziale: Le variabili di decisione sono indipendenti dalle v.a. (non anticipo)
e rappresentano lammontare degli investimenti in stock e bond, rispettivamente,
allinizio degli Y = 15 anni. Esse devono soddisfare il seguente vincolo
u10 + u20 = b,
ovvero, inizialmente, gli investimenti devono essere esattamente uguali al budget di
b euro disponibili allinizio del periodo di investimento. Potremmo scrivere questo
vincolo, sinteticamente, come
X
ui0 = b.
iI

Primo stadio: Le variabili di decisione di primo stadio dipendono dalla v.a. 1 ma


non da 2 e 3 (deve valere la propriet`
a di non anticipo). Come visto nel corso della
sezione e considerato il fatto che 1 `e una v.a. discreta, `e possibile definire le funzioni
u11 (1 ) e u21 (1 ) in forma tabellare ovvero definendo le variabili u11 (up), u11 (down),
u21 (up) e u21 (down) che rappresentano le azioni intraprese nei due scenari di primo
stadio possibili (ed equiprobabili), ovvero 1 = up e 1 = down. Queste variabili di
primo stadio devono soddisfare i vincoli
1.25u10 + 1.14u20

= u11 (up) + u21 (up)

1.06u10 + 1.12u20

= u11 (down) + u21 (down),

cio`e, qualunque sia la realizzazione della v.a. 1 , quello che si investe nel quinto anno
deve essere uguale al capitale disponibile nel quinto anno. Sintetizzando, possiamo
scrivere questi vincoli come
X
X
t1 ,i ui0 =
ui1 (1 ), 1 .
iI

iI

21

Secondo stadio: Le variabili di decisione di secondo stadio dipendono dalle v.a. 1 e


2 ma non (sempre per la propriet`
a di non anticipo) dalla v.a. 3 . Anche in questo
caso `e possibile definire le funzioni u12 (1 , 2 ) e u22 (1 , 2 ) mediante lintroduzione di
tante variabili di decisione quanti sono i possibili scenari di secondo stadio. Dato che
i possibili scenari sono dati da tutte le possibili combinazioni di una realizzazione di
1 con una realizzazione di 2 , dobbiamo introdurre complessivamente 8 variabili e
precisamente:
u12 (up, up), u12 (up, down), u12 (down, up), u12 (down, down),
u22 (up, up), u22 (up, down), u22 (down, up), u22 (down, down).
Queste variabili devono soddisfare i vincoli
1.25u11(up) + 1.14u21(up)
1.06u11(up) + 1.12u21(up)
1
1.25u1(down) + 1.14u21 (down)
1.06u11(down) + 1.12u21 (down)

= u12 (up, up) + u22 (up, up)


= u12 (up, down) + u22 (up, down)
= u12 (down, up) + u22 (down, up)
= u12 (down, down) + u22 (down, down)

cio`e, qualunque siano le realizzazione delle v.a. 1 e 2 , quello che si investe nel decimo
anno deve essere uguale al capitale disponibile nel decimo anno. Anche qui, possiamo
riscrivere i vincoli di secondo stadio nel modo seguente.
X
X
t2 ,i ui1 (1 ) =
ui2 (1 , 2 ), 1 , 2 .
iI

iI

Ultimo stadio: Anche nellultimo stadio vale un discorso analogo a quello fatto nei due
stadi precedenti. Infatti, le variabili di decisione dellultimo stadio sono funzione di
1 , 2 e 3 . La variabile u13 (1 , 2 , 3 ) rappresenta quanto denaro deve essere preso
in prestito con interesse di r% per poter avere G euro per pagare la rata di iscrizione
al college. Al contrario, la variabile u23 (1 , 2 , 3 ) rappresenta lammontare che pu`
o
essere versato su un libretto di risparmio con interesse di q%, dopo aver pagato la
retta di G euro per il college. Anche in questo ultimo caso, le funzioni u13 (1 , 2 , 3 ) e
u23 (1 , 2 , 3 ) possono essere definite mediante lintroduzione di tante variabili quante
sono le possibili combinazioni delle realizzazioni delle v.a. i , i = 1, 2, 3. Tali variabili
devono soddisfare i seguenti vincoli
1
2
1.25u2 (up, up) + 1.14u2 (up, up)
1
2
1.25u2 (up, down) + 1.14u2 (up, down)
1
2
1.25u2 (down, up) + 1.14u2 (down, up)
1
2
1.25u2 (down, down) + 1.14u2 (down, down)
1
2
1.06u2 (up, up) + 1.12u2 (up, up)
1
2
1.06u2 (up, down) + 1.12u2 (up, down)
1
2
1.06u2 (down, up) + 1.12u2 (down, up)
1
2
1.06u2 (down, down) + 1.12u2 (down, down)

=
=
=
=
=
=
=
=

1
2
G u3 (up, up, up) + u3 (up, up, up)
1
2
G u3 (up, down, up) + u3 (up, down, up)
1
2
G u3 (down, up, up) + u3 (down, up, up)
1
2
G u3 (down, down, up) + u3 (down, down, up)
1
2
G u3 (up, up, down) + u3 (up, up, down)
1
2
G u3 (up, down, down) + u3 (up, down, down)
1
2
G u3 (down, up, down) + u3 (down, up, down)
1
2
G u3 (down, down, down) + u3 (down, down, down)

cio`e, qualunque siano le realizzazione delle v.a. 1 , 2 e 3 , quello di cui si dispone


nel quindicesimo anno deve essere pari allimporto della retta G, eventualmente prendendo a prestito la quantit`
a u13 oppure depositando i contanti in avanzo u23 in un
libretto di risparmio. Anche questo ultimo gruppo di vincoli possono essere riscritti
sinteticamente come
X
t3 ,i ui2 (1 , 2 ) + u13 (1 , 2 , 3 ) u23 (1 , 2 , 3 ) = G, 1 , 2 , 3 .
iI

22

Supponiamo che le tre v.a. siano indipendenti luna dalle altre, cosicche avremo
p(1 , 2 , 3 ) = p(1 )p(2 )p(3 ) = 0.125,
e, quindi, per la funzione obiettivo (da massimizzare)
X X X
f (u, ) =
p(1 , 2 , 3 )(ru13 (1 , 2 , 3 ) + qu23 (1 , 2 , 3 )).
1 2 3

Risolvendo il problema otteniamo la seguente soluzione ottima:


u10 = 41479.3,

2.3

u20 = 13520.7

up

up

up

up

up

down

up

down

up

up

down

down

down

up

up

down

up

down

down

down

up

down

down

down

u11

65094.6

36743.2

u21

u12

u22

83839.9

71428.6

71428.6

64000

2168.14

22368

u13

u23

24799.9

8870.3

1428.57

1428.57

12160

Programmazione Stocastica lineare a due stadi

Consideriamo nuovamente il caso nel venditore ambulante di giornali visto nella sezione
` piuttosto facile ravvisare nel problema del venditore un problema di proprecedente. E
grammazione stocastica a due stadi con una sola v.a. (la domanda D di giornali).
x IR
D

u1 IR2

primo stadio: decisione sul numero di giornali da acquistare


osservazione: diventa noto il numero di giornali venduti
secondo stadio: decisioni di ricorsione

il vettore delle decisioni di ricorsione `e composto di due elementi e precisamente


u11 giornali venduti al semaforo = min{x, D} e
u12 giornali rivenduti alleditore = max{0, x D}.
Riassumendo, il venditore deve decidere here-and-now quanti giornali x IR acquistare
dalleditore non sapendo quanto varr`a la domanda D nella mattinata. Tuttavia, quale che
sia la realizzazione della v.a. D, egli reagir`a allosservazione della v.a. con una decisione
di secondo stadio o funzione di ricorsione u1 (D) : IR2 essendo (u1 (D))1 il numero di
giornali venduti al semaforo e (u1 (D))2 il numero di giornali rivenduti alleditore.
Pi`
u on generale, in un modello stocastico a due stadi si indica con
- x IRn1 il vettore delle decisioni di primo stadio;
- la v.a. la cui realizzazione fa da margine tra primo e secondo stadio;
- y() IRn2 il vettore delle decisioni di secondo stadio.

23

Il problema `e dunque quello di risolvere


min IE [f (x, y())],

x,y()

potendo f (x, y()) essere una generica funzione (non lineare) e a valori sullo spazio esteso
Poniamoci ora in un contesto lineare. In questo assetto alla decisione di primo stadio x
IR.
corrisponde un costo lineare cT x e dei vincoli lineari in forma standard Ax = b, x 0. Allo
steso modo, alla decisione di secondo stadio y() corrisponder`a un costo lineare q()T y()
e dei vincoli lineari W ()y() = h() T ()x, y() 0. Il problema `e dunque
min cT x + IE [q()T y()]
Ax = b, x 0

W ()y() = h() T ()x q.c.

(6)

y() 0 q.c.

ove le matrici W () e T () sono dette, rispettivamente, matrice di ricorsione e matrice della


tecnologia. Se la matrice W non dipende dalla v.a. si parla di problema con ricorsione
fissa.
Notiamo che i vincoli di secondo stadio dipendono dalla realizzazione della v.a. . Nel
seguito supporremo che tali vincoli siano soddisfatti q.c. ovvero quasi certamente cio`e che
siano soddisfatti per ogni tranne che al pi`
u per ogni A con P (A) = 0 (ovvero A
insieme con probabilit`
a nulla).
Se pensiamo ad x e come parametri, ovvero ci poniamo nel secondo stadio quando la
decisione iniziale `e stata presa e la v.a. si `e realizzata, il problema che ci troviamo ad
affrontare `e il seguente:
min q()T y
W ()y = h() T ()x

y 0.

Sia ora Q(x, ) = inf{q()T y : W ()y = h() T ()x, y 0} e Q(x) = IE [Q(x, )].
Definiamo problema proiettato il seguente
min cT x + Q(x)

Ax = b, x 0

ove, in pratica, `e stata eliminata la dipendenza esplicita dalla v.a. . Abbiamo ricorsione
relativamente completa quando Q(x) assume valori finiti per ogni x IRn1 tale che Ax = b
e x 0. Diciamo, invece, che si ha ricorsione completa quando Q(x) assume valori finiti per
ogni x IRn1 .

2.4
2.4.1

Esempi di modelli stocastici lineari a due stadi


Il problema dellazienda agricola

Una azienda agricola europea `e specializzata nella coltivazione di grano, frumento e barbabietole da zucchero e nellallevamento di mucche da latte. In totale lazienda possiede 500
` noto che ogni
acri di terra che possono essere utilizzati per i diversi tipi di coltivazione. E
anno sono necessari per lallevamento del bestiame almeno 200 Ton. di farina e 240 Ton. di
frumento. Naturalmente lazienda pu`
o fare fronte a queste necessita o con il proprio raccolto
24

oppure acquistando da un grossista della zona. La produzione agricola dellazienda oltre a


servire per lallevamento del bestiame pu`
o essere venduta sul mercato ad un prezzo di 170
euro per una Ton. di farina e 150 euro per una Ton. di frumento. I prezzi di acquisto di
farina e frumento dal grossista sono maggiorati del 40% per via dei costi di trasporto che
questultimo deve sostenere. Per quanto riguarda la barbabietola, il prezzo di vendita `e di
36 euro/Ton; tuttavia, la commissione europea ha imposto allazienda una quota di produzione per le barbabietole di 6000 Ton. lanno. La quantit`
a di barbabietola eventualmente
prodotta oltre questa quota potr`
a essere venduta ad un prezzo ribassato e precisamente a
10 euro/Ton.
Basandosi sulla propria esperienza passata, lazienda agricola sa che ogni acro di terra coltivato a frumento, grano o barbabietola frutta rispettivamente 2.5, 3 e 20 Ton. Per finire,
per ogni acro di terra lazienda deve sostenere dei costi di semina che sono di 150 euro, 230
euro e 260 euro rispettivamente per grano, frumento e barbabietole. La tabella che segue
riassume i dati fin qui esposti:
Grano

Frumento

Barbabietole

Raccolto (Ton./acri)

2.5

20

Costo di semina (euro/acri)

150

230

260

Prezzo di vendita (euro/Ton.)

170

150

36 sotto 6000 Ton.


10 sopra 6000 Ton.

Prezzo di acquisto (euro/Ton.)

238

210

Richieste min. (Ton.)

200

240

Per scegliere le migliore strategia di semina, lazienda dovrebbe ricorrere al seguente modello
lineare.
Siano:
x1 = acri di terra piantati a grano;
x2 = acri di terra piantati a frumento;
x3 = acri di terra piantati a barbabietole;
w1 = ton. di grano venduto;
y1 = ton. di grano acquistato;
w2 = ton. di frumento venduto;
y2 = ton. di frumento acquistato;
w3 = ton. di barbabietole vendute a prezzo pieno;
w4 = ton. di barbabietole vendute a prezzo ribassato;

25

Il problema da risolvere `e il seguente:


min 150x1 + 230x2 + 260x3 + 238y1 170w1 +
c.v.

+210y2 150w2 36w3 10w4


x1 + x2 + x3 500

2.5x1 + y1 w1 200
3x2 + y2 w2 240

20x3 w3 w4 0
w3 6000

xi , yj , wh 0 i = 1, 2, 3, j = 1, 2, h = 1, 2, 3, 4.
Risolvendo il problema precedente otteniamo la seguente soluzione ottima
Coltivazione

Grano

Frumento

Barbabietole

xi

120

80

300

Raccolto (Ton.)

300

240

6000

wi

100

6000 (w4 = 0)

yi

Profitto complessivo: 118600 euro


Lazienda agricola pur soddisfatta da questa soluzione ottima sa perfettamente che di anno
in anno e a parit`
a di seminato, i raccolti possono variare sensibilmente. in particolare non
`e usuale avere stagioni con raccolti che sono superiori o inferiori del 20% rispetto alle stime
usate nel problema precedente. Pi`
u precisamente, nel caso di una stagione particolarmente
buona ogni acro seminato a grano, frumento e barbabietole frutter`a, rispettivamente, 3, 3.6
e 24 Ton. di raccolto. Vice versa, nel caso di una stagione sotto la media ogni acro seminato
a grano, frumento e barbabietole frutter`a, rispettivamente, 2, 2.4 e 16 Ton. di raccolto.
Possiamo a questo punto risolvere due ulteriori problemi di ottimizzazione corrispondenti
agli scenari di stagione sopra e sotto la media e ottenere le seguenti soluzioni ottime:
stagione sopra la media: raccolto + 20%
Coltivazione

Grano

Frumento

Barbabietole

xi

183.33

66.67

250

Raccolto (Ton.)

550

240

6000

wi

350

6000 (w4 = 0)

yi

Profitto complessivo: 167667 euro

26

stagione sotto la media: raccolto - 20%


Coltivazione

Grano

Frumento

Barbabietole

xi

100

25

375

Raccolto (Ton.)

200

60

6000

wi

6000 (w4 = 0)

yi

180

Profitto complessivo: 59950 euro


Ragionando sul problema in esame `e facile convincersi del fatto che la decisione sulle quantit`
a
di terra da seminare con le differenti colture (xi , i = 1, 2, 3) deve essere presa prima di
conoscere lesito della stagione (se nella norma, sopra la media o sotto la media). Al contrario
le quantit`
a da vendere e comprare dei differenti prodotti (yi , i = 1, 2 e wj , j = 1, 2, 3, 4)
dipendono dal raccolto.
Supponiamo di assegnare a ciascuno dei tre scenari disponibili (sotto la media, in media e
sopra la media) un indice s = 1, 2, 3 e definire le variabili wjs , j = 1, 2, 3, 4 e yis , i = 1, 2
dove, per esempio, w32 rappresenta la quantit`
a di barbabietole vendute a prezzo pieno nel
caso di un raccolto nella media.
P3
Se ipotiziamo che ls-esimo scenario abbia probabilita ps = 1/3 con s=1 ps = 1 allora
possiamo scrivere il seguente problema
min 150x1 + 230x2 + 260x3 +
+ 31 (238y11 170w11 + 210y21 150w21 36w31 10w41 )

+ 31 (238y12 170w12 + 210y22 150w22 36w32 10w42 )


c.v.

+ 31 (238y13 170w13 + 210y23 150w23 36w33 10w43 )


x1 + x2 + x3 500

2x1 + y11 w11 200

2.4x2 + y21 w21 240

16x3 w31 w41 0


w31 6000

2.5x1 + y12 w12 200

3x2 + y22 w22 240


20x3 w32 w42 0
w32 6000

3x1 + y13 w13 200

3.6x2 + y23 w23 240

24x3 w33 w43 0


w33 6000

xi , yjs , whs 0 i = 1, 2, 3, j = 1, 2, h = 1, 2, 3, 4, s = 1, 2, 3.
Risolvendo questo problema otteniamo la soluzione seguente:

27

s=1

Grano

Frumento

Barbabietole

xi

170

80

250

Raccolto (Ton.)

340

192

4000

wi1

140

w31 = 4000,
w41 = 0

yi1
s=2

48

Raccolto (Ton.)

425

240

5000

wi2

225

w32 = 5000,
w42 = 0

yi2
s=3

Raccolto (Ton.)

510

288

6000

wi3

310

48

w33 = 6000,
w43 = 0

yi3

Profitto complessivo: 108390 euro


Notiamo che, a differenza di quanto accadeva nellesempio del venditore di giornali, qui la
v.a. non `e direttamente associata ad un valore numerico. La v.a. ha valori sullinsieme
= {1 , 2 , 3 } con 1 = stagione sopra la media, 2 = stagione nella media e 3 =
stagione sotto la media. Nel problema precedente, gli unici elementi che dipendono dalla
v.a. sono gli elementi della matrice della tecnologia essendo

t11 ()
0
0

.
T () =
0
t22 ()
0

0
0
t33 ()

2.4.2

Gestione degli investimenti per un impianto di distribuzione


elettrica

Un ente per la distribuzione di energia elettrica deve pianificare i propri investimenti in nuovi
impianti di generazione per poter soddisfare la domanda nazionale attuale e futura su un
orizzonte temporale di 15 anni. I nuovi impianti devono essere costruiti allinizio del primo
anno e devono essere operativi per tutti i 15 anni dellorizzonte di pianificazione. Lente
dispone di un budget b di 10 miliardi di euro che possono essere allocati per la costruzione
di 4 differenti tipi di impianti di produzione e precisamente: impianto con turbine a gas,
impianto a carbone, impianto nucleare e impianto idroelettrico. Il costo di costruzione di
ciascun tipo di impianto dipende dalla sua capacit`a ovvero dalla massima potenza elettrica
(in GW) erogabile dellimpianto stesso ed infatti, abbiamo i seguenti costi:
Impianto

mln. euro/GW di capacit`a

Gas

110

Carbone

180

Nucleare

450

Idrico

950

28

Inoltre, data la limitata disponibilit`a di corsi dacqua utilizzabili per produrre elettricit`a, un
eventuale nuovo impianto idroelettrico non potr`
a avere una capacit`a superiore a 5 GW.
Oltre allinvestimento iniziale per la costruzione, ciascun tipo di impianto comporta anche
dei costi di esercizio (espressi in euro/KWh) come riportato nella tabella seguente in cui si
riporta anche il costo per lacquisto di un KWh di energia elettrica da un fornitore estero.
Impianto

costo di eser. euro/KWh

Gas

Carbone

Nucleare

0.0140

Idrico

0.0040

Acquisto

0.1500

I costi per la produzione di un KWh di energia elettrica con impianto a gas e a carbone sono
v.a. discrete indipendenti con le seguenti distribuzioni:
G

P (G )

P (C )

0.0310

0.1

0.0170

0.1

0.0330

0.2

0.0210

0.2

0.0390

0.4

0.0240

0.4

0.0450

0.2

0.0290

0.2

0.0490

0.1

0.0310

0.1

Per pianificare al meglio i propri investimenti, lente si basa sulla conoscenza dellandamento
della richiesta di potenza elettrica per il primo anno. In particolare, sono stati individuati
5 blocchi di consumo e per ciascuno di essi `e nota la durata in ore (nellanno) e la potenza
richiesta (dj in GW) come riportato nella tabella che segue
Blocco j

dj (GW)

Durata (ore)

#1

10.0

490

#2

8.4

730

#3

6.7

2190

#4

5.4

3260

#5

4.3

2090

Cos`, `e noto che, nel corso del primo anno, ci sar`a una richiesta di 10 GW di potenza
per un ammontare complessivo di 490 ore. La richiesta sar`a di 8.4 GW per 730 ore, 6.7
GW per 2190 e cos` via. Basandosi sui dati in suo possesso e grazie a delle approfondite
ricerche di mercato, lente ha stabilito che nei prossimi 15 anni (periodo di pianificazione
dellinvestimento), si potranno verificare i seguenti trend di incremento/decremento delle
richieste di potenza elettrica:

29

P (R )

-0.01

0.2

0.01

0.2

0.03

0.2

0.05

0.2

0.07

0.2

` inoltre noto che le tre v.a. G , C e R sono indipendenti tra di loro. Quindi, se indichiamo
E
con G , C e R , rispettivamente, lo spazio di tutti i possibili eventi associati alle tre v.a.
G , C e R , avremo che = G C R `e lo spazio degli scenari possibili che sono
complessivamente pari a |G C R | = 5 5 5 = 125. Pertanto, ogni scenario
= (G , C , R ) ha una probabilit`
a data dal prodotto delle probabilit`
a dei singoli
eventi cio`e: P () = P (G )P (C )P (R ).
Indichiamo con:
- xi , i = 1, 2, 3, 4, la capacit`a (in GW) dei nuovi impianti, rispettivamente, a Gas, a
Carbone, Nucleare e Idroelettrico.
- ci , i = 1, 2, 3, 4, i costi di costruzione (in milioni di euro/GW) associati ai 4 differenti
tipi di impianto.
- yijk (), i = 1, . . . , 5, j = 1, . . . , 5 e k = 1, . . . , 5, la frazione di capacit`a elettrica
(in GW) utilizzata per produrre elettricit`a con impianto di tipo i, per il blocco di
richiesta j nellanno k. Notiamo che, quando i = 5, y5jk indicher`
a la quantit`
a di
elettricit`a acquistata da un fornitore estero per soddisfare la domanda nel blocco j
dellanno k. Queste variabili sono, in realt`
a funzioni della v.a. .
- q1 (), q2 (), q3 , q4 , q5 , i costi di esercizio (in euro/KWh), rispettivamente, di impianti a
Gas, Carbone, Nucleare, Idroelettrico e per lacquisto da un fornitore estero. Notiamo
che i primi due costi dipendono dalle realizzazioni della v.a. .
- hj , j = 1, 2, 3, 4, 5, la durata (in ore) di ciascun blocco di consumo.
- Djk (), j = 1, . . . , 5 e k = 1, . . . , 15, la potenza richiesta (in GW) nel blocco j dellanno
k. In particolare, vale la relazione Djk () = dj (1 + (k 1)R ), per ogni j = 1, . . . , 5 e
k = 1, . . . , 15, dove dj indica la richiesta nel primo anno per i vari blocchi di domanda.
Le informazioni sulle quantit`
a Djk () possono essere cos` riassunte:
j

Dj1 ()

Dj2 ()

...

Dj14 ()

Dj15 ()

-0.1

10

9.9

...

8.7

8.6

0.1

10

10.1

...

11.3

11.4

0.3

10

10.3

...

13.9

14.2

0.5

10

10.5

...

16.5

17.0

1
..
.

0.7
..
.

10
..
.

10.7
..
.

...

19.1
..
.

19.8
..
.

-0.1

4.3

4.257

...

3.741

3.698

0.1

4.3

4.343

...

4.859

4.902

0.3

4.3

4.429

...

5.977

6.106

0.5

4.3

4.515

...

7.095

7.31

0.7

4.3

4.601

...

8.213

8.514

30

Riassumendo, otteniamo il seguente problema di programmazione stocastica lineare a due


stadi.

5 X
5 X
15
X
min cT x + IE
qi ()hj yijk ()
x,y

i=1 j=1 k=1

c x 10000

x4 5.0

x0

yijk () xi ,
j = 1, . . . , 5, k = 1, . . . , 15, i = 1, . . . , 4,
5
X
yijk () Djk (), j = 1, . . . , 5, k = 1, . . . , 15
i=1

yijk () 0,

j = 1, . . . , 5, k = 1, . . . , 15, i = 1, . . . , 5.

Risolvendo il problema, otteniamo il seguente piano di investimenti, in termini di capacit`a


installate (variabili xi , i = 1, . . . , 4):
Impianto

Capacit`
a xi

Gas

3.366 GW

Carbone

3.953 GW

Nucleare

4.313 GW

Idrico

5.000 GW

Il costo atteso complessivo del piano di investimento allottimo `e pari a 15828.81856 milioni
di euro. Il piano di investimenti ottimo prevede, tra laltro, che, date le installazioni ottime
di capacit`a x come riportate nella tabella che precede, un trend di crescita della domanda
del 7% e i costi operativi delle centrali a gas e carbone rispettivamente di 3.9 e 2.4 eurocent
per KWh, le potenze erogate dai singoli impianti nel 15 anno siano pari a (yij15 () per
i = 1, . . . , 5, j = 1, . . . , 5 e dove = (G , C , R ) con G = 0.039, C = 0.024 e R = 0.07).
Blocco di domanda

Impianto

Gas

3.366

3.366

0.469

Carbone

3.953

3.953

3.953

1.757

Nucleare

4.313

4.313

4.313

4.313

3.815

3.868

0.588

Idrico
Fornitore

2.5

Programmazione stocastica lineare a due stadi con


ricorsione fissa

Consideriamo nuovamente il problema (6) ove W () = W ovvero


min cT x + IE [q()T y()]
Ax = b, x 0

W y() = h() T ()x q.c.

y() 0 q.c.

31

oppure, equivalentemente, il problema proiettato


min cT x + IE [Q(x, )]

(7)

Ax = b, x 0
dove
Q(x, ) = inf

qT y
(8)

Wy = h Tx

y 0.

Sia Q(x) = IE [Q(x, )] la cos` detta funzione di ricorsione mediante la quale possiamo
scrivere, come gia visto, il problema proiettato seguente
min cT x + Q(x)

(9)

Ax = b, x 0.

2.5.1

Esempio: il problema del venditore di giornali

Consideriamo nuovamente lesempio visto in sezione 2.1.4. Come gia abbiamo visto, il
problema del venditore di giornali pu`
o essere formulato come problema di programmazione
stocastica lineare a due stadi con risorsione fissa. La situazione del venditore `e infatti la
seguente
x IR
D

y IR2

primo stadio: decisione sul numero di giornali da acquistare


osservazione: diventa noto il numero di giornali venduti
secondo stadio: decisioni di ricorsione

In particolare, una volta acquistati gli x giornali dalleditore e avvenuta la realizzazione della
v.a. D, il venditore adotter`a le decisioni di secondo stadio ovvero decider`a quanti giornali
vendere al semaforo e quanti rivenderne alleditore a fine mattinata. Il problema `e quindi
minx

cT x + Q(x)

x 0,

con Q(x) = IED [Q(x, D)] e


Q(x, D) =

inf sy1 ry2


y

y1 + y2 = x
y1 D

y1 , y2 0.
La regione ammissibile del problema primale, vale a dire linsieme Y (h T x), `e sempre non
vuota e anzi il problema primale ammette sempre soluzione ottima (qualunque sia il valore
di x e D) pari a

se x D

!
Dx

y1
=
!

y2

se x > D

xD
32

Ricordando che, nellesempio in esame T = (1, 0)T , abbiamo che il subdifferenziale Q(x, D)
contiene il subgradiente s se sx = sy1 ry2 e r se rx D(s r) = sy1 ry2 o
entrambi se rx D(s r) = sx. Percui, se vogliamo stabilire come `e fatto il subdifferenziale Q(x, D) quando x = D = 30 e s = 1.8, c = 1.6 e r = 0.8, allora dobbiamo confrontare
il valore Q(30, 30) = 30s con i valori allottimo della funzione obiettivo duale ovvero 30s
e 30r 30(s r) = 30s. Pertanto
Q(30, 30) = conv{s, r},
ovvero il subdifferenziale contiene i subgradienti s e r e tutte le loro combinazioni
convesse.
Ovviamente, potranno esistere valori di x e D per cui la funzione Q(x, D) `e differenziabile
ovvero per cui il subdifferenziale si riduce ad un singleton contenente come suo unico elemento il gradiente Q(x, D). Per esempio, se consideriamo per D = 30 il punto x = 40,
abbiamo che Q(40, 30) = 30s 10r = 40r 30(s r), pertanto,
Q(40, 30) = {Q(40, 30)} = {r}.

2.6

Indicatori di validit`
a e attendibilit`
a della Programmazione Stocastica

Come gia abbiamo avuto modo di osservare in precedenza, risolvere un problema di programmazione stocastica `e, in taluni casi, equivalente alla soluzione di un problema di grandi
dimensioni cio`e con un elevato numero di variabili e/o di vincoli. Pertanto, in generale,
determinare la soluzione di un problema di programmazione stocastica lineare `e molto costoso. Ha quindi senso chiedersi quando e quanto sia conveniente abbandonare il problema
stocastico e risolvere, invece, un problema pi`
u semplice. In particolare, `e lecito chiedersi
in che misura approcci pi`
u semplici al problema, come per esempio quello che prevede di
sostituire alla v.a. il suo valor medio, forniscano soluzioni che si discostano dallottimo o
fine a che punto questi approcci alternativi non siano completamente inaccurati.
Una risposta a queste domande pu`
o essere fornita da due importanti indicatori di bont`
a
dellapproccio stocastico che sono:
1. lEVPI (Expected Value of Perfect Information) ovvero il valore atteso in condizioni
di informazione completa e,
2. lVSS (Value of Stochastic Solution) ovvero il valore della soluzione stocastica.
Al fine di definire chiaramente questi due importanti indicatori, introduciamo brevemente
alcune definizioni che ci faranno comodo nel seguito.
Sia una v.a. discreta ovvero che pu`
o avere solo un numero finito N di realizzazioni
1 , . . . , N . Sia f (x (i ), i ) il valore ottimo del problema di programmazione stocastica
quando si fissa la v.a. al valore i , i = 1, . . . , N . Percui, data una realizzazione i
della v.a. , associamo ad essa il valore allottimo del corrispondente problema di
programmazione matematica f (x (i ), i ). f (x (), ) `e pertanto una v.a. composta per
cui `e possibile definire il valore atteso. Infatti, definiamo soluzione wait-and-see
W S = IE [f (x (), )],
il valore atteso della v.a. f (x (), ). Definiamo, invece, soluzione here-and-now come il
valore della soluzione del problema di programmazione stocastica
HN = min IE [f (x, )].
x

33

A questo punto, definiamo lEVPI (valore atteso in condizioni di informazione completa)


come
EV P I = HN W S.
Nel caso dellesempio del venditore di giornali, abbiamo che, come risulta dalla tebella che
segue, W S = 10.57142
i

pi

Di

x (Di )

f (x (Di ), Di )

1/7

30

30

-6

2/7

40

40

-8

2/7

50

50

-10

1/7

60

60

-12

1/7

100

100

-20

Risulta, inoltre, x = 40,


Q(x ) =

1.8x
1.8D1 0.8(x D1 )
6
7
7

e quindi HN = 1.6x + Q(x ) = 6.57142. Otteniamo cos` EV P I = 4. Questo valore `e


pari alla quantit`
a di euro che il venditore sarebbe disposto a pagare ogni mattina pur di
sapere quanti giornali potr`
a vendere al semaforo.
Quando ci si trova a dover risolvere un problema di ottimizzazione con incertezza, molto
spesso si ritiene di poter ottenere una buona approssimazione della soluzione ottima semplicemente risolvendo il problema
EV = min f (x,
),
x

dove si `e sostituita la v.a. con il suo valore atteso


= IE []. La soluzione di questo
problema `e nota come soluzione EV (expected value) ovvero soluzione di valor medio. Lindicatore VSS `e quello che ci dice quanto la soluzione EV sia lontana dallessere ottima per il
problema di programmazione stocastica. In particolare, una volta nota la soluzione ottima
x (
) del problema EV, definiamo
EEV = IE [f (x (
), )] = cT x (
) + Q(x (
))
ovvero il valore atteso quando si usa la soluzione di valor medio. Il VSS `e definito come
V SS = EEV HN.
= 370/7 e EV = 10.57142.
Di nuovo, nel caso del venditore di giornali, abbiamo che x (D)
Come risulta dalla tabella che segue abbiamo
i

pi

Di

1/7

30

2/7

40

2/7

50

1/7

60

1/7

100

+ Q(x (D),
Di )
cx (D)
1.8D1 0.8(x (D)
D1 )
1.6x (D)

1.8D2 0.8(x (D)


D2 )
1.6x (D)


1.6x (D) 1.8D3 0.8(x (D) D3 )

1.8x (D)

1.6x (D)
1.8x (D)

1.6x (D)

34

Di )
f (x (D),
12.28571
2.28571
-7.71429
-10.57143
-10.57143

D)] = 2.81634 e quindi V SS = 3.75508 che ci dice esattamente di


EEV = IED [f (x (D),
quanto la soluzione del problema EV si discosta dalla soluzione HN.
Consideriamo ora lesempio dellazienda agricola. Come gia abbiamo visto, in questo caso
HN = 108390. Calcoliamo ora WS. Nel caso in cui = 1 (stagione sotto la media),
risulta z(x(1 ), 1 ) = 59950; quando = 2 (stagione nella media), z(x(2 ), 2 ) =
118600; quando = 3 (stagione sopra la media), z(x(3 ), 3 ) = 167667; cosicche
W S = z(x(1 ), 1 )/3 + z(x(2 ), 2 )/3 + z(x(3 ), 3 )/3 = 115405.56. Quindi otteniamo
EV P I = HN W S = 7015.6
il che significa che lazienda sarebbe disposta a pagare 7015.6 euro ogni anno per poter
conoscere quale sar`a landamento della stagione.
Calcoliamo ora lEV dellesempio dellazienda agricola che otteniamo semplicemente risolvendo il problema in cui si `e fissata la v.a. al suo valor medio il che, ovviamente, equivale a risolvere il problema nel caso di stagione nella media per cui otteniamo x(
) = (120, 80, 300)T .
Possiamo ora calcolare lEEV che risulta EEV = 107240 per cui otteniamo
V SS = EEV HN = 1150.

2.7

Richiami sulle funzioni convesse

gli insiemi estesi IR {+} e IR {, +}, rispettivamente. Sia


e IR
Indichiamo con IR

f : S IR con S IRn . Linsieme


{(x, ) : x S, IR, f (x) }
`e detto epigrafo di f ed `e indicato epi f . Diciamo che f `e una funzione convessa su S se
epi f `e un sottoinsieme convesso di IRn+1 . Il dominio effettivo della funzione f su S `e la
proiezione su IRn dellepigrafo di f ovvero
dom f = {x : , (x, ) epi f } = {x : f (x) < +}.
Notiamo che data una funzione f su S convessa, `e sempre possibile ottenere una funzione
f definita su IRn e ancora convessa. Per fare questo `e sufficiente considerare la funzione
(
f (x) se x S,

f (x) =
+ se x 6 S.
`e
Dal momento che le funzioni che stiamo calcolando hanno valori nello spazio esteso IR,
necessario fornire delle regole che specifichino il risultato delle operazioni aritmetiche fondamentali quando sono coinvolti i simboli + o . In particolare, adotteremo le seguenti
regole:
1. + = + = per ogni < ;
2. = + = per ogni < ;
3. = = , () = () = per ogni 0 < ;
4. = = , () = () = per ogni < 0;
5. 0 = 0 = 0 = 0() = ()0, () = ;
6. = + = ;
35

7. inf = +, sup = .
Una funzione convessa f `e detta propria se f (x) < + per almeno un x e f (x) > per
ogni x. Una funzione convessa che non `e propria `e detta impropria. In particolare se f `e
una funzione convessa finita definita sullinsieme convesso C, la funzione f definita su tutto
IRn
(
f (x) se x C,

f (x) =
+ se x 6 C.
`e una funzione convessa e propria.
dove C IRn . f `e una funzione convessa su C se e
Proposizione 2.7.1 Sia f : C IR,
solo se
1. C `e un insieme convesso;
2. comunque scelti x, y C risulta
f ((1 )x + y) (1 )f (x) + f (y),

0 < < 1.

f `e una funzione convessa se e solo se comunque


Proposizione 2.7.2 Sia f : IRn IR.
n
presi due punti x, y IR per cui esistono due scalari , < + tali che f (x) < e
f (y) < allora
f ((1 )x + y) < (1 ) + ,

0 < < 1.

Allora f `e convessa
Proposizione 2.7.3 (Disuguaglianza di Jensen) Sia f : IRn IR.
se e solo se
f (1 x1 + + m xm ) 1 f (x1 ) + + m f (xm ),
comunque scelti i vettori xi IRn , i = 1, . . . , m, dove gli scalari i sono tali che i 0,
i = 1, . . . , m e
m
X

i = 1.

i=1

2.8

Definizioni

Dato S IRn , diciamo che S `e un insieme convesso quando, comunque presi due punti
x, y S, risulta, per ogni scalare [0, 1]
x + (1 )y S.

Sia S IRn un insieme convesso. Diciamo che la funzione f : IRn IR `e convessa su


S quando, comunque presi due punti x, y S, risulta, per ogni scalare [0, 1]
f (x + (1 )y) f (x) + (1 )f (y).

36

Data una funzione f : IRn IR convessa sulinsieme convesso X e un punto xo X,


diciamo che un vettore IRn `e un subgradiente di f (x) in xo quando:
f (x) f (xo ) + T (x xo ),

x X.

Data una funzione f : IRn IR convessa sulinsieme convesso X e un punto xo X,


definiamo il subdifferenziale di f (x) in xo come segue:
f (xo ) = conv{ IRn : f (x) f (xo ) + T (x xo ),

x X}.

Una funzione f (x) si dice positivamente omogenea quando, comunque preso uno scalare
0, risulta f (x) = f (x).
Sia S IRn un insieme convesso. Definiamo funzione di supporto dellinsieme S la
funzione S : IRn IR
S (x) = sup xT y.
yS

37

Indice
1 Programmazione Multiobiettivo
1.1 Introduzione . . . . . . . . . . . . . . . . .
1.2 Ottimalit`
a secondo Pareto . . . . . . . . .
1.2.1 Esercizio . . . . . . . . . . . . . . .
1.3 Condizioni di Ottimalit`
a . . . . . . . . . .
1.3.1 Condizioni di Fritz-John . . . . . .
1.3.2 Condizioni di Karush-Kuhn-Tucker
1.4 Metodi di Soluzione . . . . . . . . . . . .
1.4.1 Metodi Senza Preferenze . . . . . .
1.4.2 Metodi a Posteriori . . . . . . . . .

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

2 Programmazione con Incertezza


2.1 Nozioni preliminari . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.1 Formulazione deterministica . . . . . . . . . . . . . . . . . . . . . . .
2.1.2 Osservazione e ottimizzazione . . . . . . . . . . . . . . . . . . . . . .
2.1.3 Ottimizzazione e osservazione . . . . . . . . . . . . . . . . . . . . . .
2.1.4 Esempio: il problema del venditore di giornali . . . . . . . . . . . . .
2.2 Fondamenti di Programmazione Stocastica . . . . . . . . . . . . . . . . . .
2.2.1 Esempio: financial planning and control . . . . . . . . . . . . . . . .
2.3 Programmazione Stocastica lineare a due stadi . . . . . . . . . . . . . . . .
2.4 Esempi di modelli stocastici lineari a due stadi . . . . . . . . . . . . . . . .
2.4.1 Il problema dellazienda agricola . . . . . . . . . . . . . . . . . . . .
2.4.2 Gestione degli investimenti per un impianto di distribuzione elettrica
2.5 Programmazione stocastica lineare a due stadi con ricorsione fissa . . . . .
2.5.1 Esempio: il problema del venditore di giornali . . . . . . . . . . . . .
2.6 Indicatori di validit`a e attendibilit`a della Programmazione Stocastica . . . .
2.7 Richiami sulle funzioni convesse . . . . . . . . . . . . . . . . . . . . . . . . .
2.8 Definizioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

38

1
. 1
. 2
. 4
. 5
. 6
. 7
. 8
. 8
. 11
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

13
13
14
14
14
15
19
20
23
24
24
28
31
32
33
35
36

Bibliografia
[1] M.S. Bazaraa, H.D. Sherali, C.M. Shetty, Nonlinear Programming: Theory and
Algorithms, Wiley, New York, 1979.
[2] J.R. Birge, F. Louveaux, Introduction to Stochastic Programming, Springer Series in
Operations Research and Financial Engineering, Springer, Berlin, 1997.
[3] K. Miettinen, Nonlinear Multiobjective Optimization, Kluwer Academic Publishers,
Boston, 1999.
[4] V. Pareto, Cours deconomie Politique, Rouge, Lausanne, Switzerland, 1896.

39

Potrebbero piacerti anche