Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Ottimizzazione Vincolata: Vincoli di Uguaglianza e Disuguaglianza, Esercizi di Microeconomia

Testo con esercizi che tratta la programmazione lineare secondo il metodo Kuhn Tucker

Tipologia: Esercizi

2017/2018

Caricato il 22/01/2018

Nicola.Morra
Nicola.Morra 🇮🇹

2 documenti

1 / 20

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
Capitolo 2
Ottimizzazione vincolata
2.1 Vincoli di uguaglianza (Lagrange)
Il classico problema della Ottimizzazione vincolata con vincoli di uguaglianza,
si pu`o cos`ı formulare:
min f(x),xRn={xRn;ϕ(x)=0}(2.1)
dove f:Rn−→ Reϕ=(ϕ1(x),...,ϕm(x))T`e u n a f u n z i o n e d a Rnin Rm,
m<n.
Come `e noto, sotto ipotesi di dierenziabilit`a della fedeivincoliϕi,il
problema si risolve tramite la regola dei moltiplicatori di Lagrange (1761) che
trasforma il problema vincolato in uno non vincolato (libero).
Precisamente, se la matrice jacobiana
J(x)=(ϕ1,...,ϕm)
(x1,...,x
n)=
(ϕ1)x1...(ϕ1)xn
.
.
.
(ϕm)x1...(ϕm)xn
ha rango m(in x=x),ossia se i gradienti degli mvincoli sono linearmente
indipendenti (in tal caso esiste il piano tangente e il punto xsi dice regolare),
tramite il teorema (di Dini) sulle funzioni implicite si ottiene 1che (condizione
necessaria):
in un punto di estremo (minimo o massimo) xil gradiente f(x)`e o r -
togonale al sottospazio tangente in xad (`e u n a v a r i e t `a ) e d u n q u e e s i s t e
1Cfr. [20, sezione 18.5, Vol. 1].
55
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14

Anteprima parziale del testo

Scarica Ottimizzazione Vincolata: Vincoli di Uguaglianza e Disuguaglianza e più Esercizi in PDF di Microeconomia solo su Docsity!

Capitolo 2

Ottimizzazione vincolata

2.1 Vincoli di uguaglianza (Lagrange)

Il classico problema della Ottimizzazione vincolata con vincoli di uguaglianza,

si puo cosı formulare:

min f (x), x ∈ Ω ⊂ R

n Ω = {x ∈ R

n ; ϕ(x) = 0} (2.1)

dove f : Rn^ −→ R e ϕ = (ϕ 1 (x),... , ϕm(x))T^ `e una funzione da Rn^ in Rm,

m < n.

Come e noto, sotto ipotesi di differenziabilita della f e dei vincoli ϕi, il

problema si risolve tramite la regola dei moltiplicatori di Lagrange (1761) che

trasforma il problema vincolato in uno non vincolato (libero).

Precisamente, se la matrice jacobiana

J(x) =

∂(ϕ 1 ,... , ϕm)

∂(x 1 ,... , xn)

(ϕ 1 )x 1... (ϕ 1 )xn .. .

(ϕm)x 1... (ϕm)xn

ha rango m (in x = x), ossia se i gradienti degli m vincoli sono linearmente

indipendenti (in tal caso esiste il piano tangente e il punto x si dice regolare),

tramite il teorema (di Dini) sulle funzioni implicite si ottiene 1 che (condizione

necessaria):

in un punto di estremo (minimo o massimo) x il gradiente ∇f (x) `e or-

togonale al sottospazio tangente in x ad Ω (Ω e una varieta) e dunque esiste

(^1) Cfr. [20, sezione 18.5, Vol. 1].

56 CAPITOLO 2. OTTIMIZZAZIONE VINCOLATA

un vettore (dei moltiplicatori) λ = (λ 1 ,... , λm)T^ ∈ Rm^ tale che

∇f (x) = −(λ)

T ∇ϕ(x) = 0, λ = (λ 1 ,... , λm)

T ̸ = 0 (2.2)

(cio`e ) ∇f (x) +

∑^ m

i=

λi ∇ϕi(x) = 0, λ = (λ 1 ,... , λm)T^ ̸= 0.

Ossia, ∇f (x) `e una combinazione lineare dei gradienti ϕ(x) in x.

Nel caso di un solo vincolo, si veda in Figura 2.1 l’interpretazione geometrica

dell’Esempio 1 (n = 2, m = 1): parallelismo dei due gradienti ∇f e ∇ϕ.

Equivalentemente, introdotta la funzione lagrangiana

L(x, λ) = f (x) +

∑^ m

i=

λi ϕi(x), (2.3)

si ha che la coppia (x, λ) soddisfa il sistema (in generale non lineare) di n+m

equazioni nelle n incognite xi e nelle m incognite λi

∇xL(x, λ) = ∇f (x) +

∑^ m

i=

λi ∇ϕi(x) = 0, (2.4)

∇λL(x, λ) = ϕ(x) = 0 (2.5)

Si noti che l’equazione (2.4) corrisponde alla (2.2) e la (2.5) coincide con la

condizione vincolare ϕ(x) = 0.

Queste condizioni (del primo ordine) sono in generale solo necessarie. Si veda

il controesempio f = x(y − 1) − y^3 sotto il vincolo (m = 1) Ω = {(x, y) ∈

R^2 : x = 0}. Nell’origine (0, 0) la regola dei moltiplicatori `e soddisfatta (con

λ = 1), ma essa non e un minimo per la f, come si puo facilmente verificare

(la f /(x=0) = −y^3 ha un flesso nell’origine).

Condizioni (necessarie) sufficienti del secondo ordine per l’esistenza di un

minimo si possono ottenere se^2 le funzioni sono di classe C^2 , sotto ipotesi

di (semidefinitezza) definitezza positiva della matrice hessiana ∇^2 Lxx della

lagrangiana sul sottospazio tangente M = {h : ∇ϕ(x) h = 0}. Si veda il

successivo Esempio 2.

In forma estesa, il sistema (2.4) di n + m equazioni si scrive ⎧ ⎪⎪ ⎪⎪ ⎪⎨

fx 1 (x) + λ 1 (ϕ 1 (x))x 1 + · · · + λm(ϕm(x))x 1 = 0 .. .

fxn (x) + λ 1 (ϕ 1 (x))xn + · · · + λm(ϕm(x))xn = 0

ϕ 1 (x) = 0,... , ϕm(x) = 0

(^2) Cfr. [27, sezione 10.5].

58 CAPITOLO 2. OTTIMIZZAZIONE VINCOLATA

con f (x, y) = −

2 e

2, rispettivamente. Si pu`o facilmente constatare

(calcolare l’hessiana della lagrangiana L) che le due soluzioni corrispondono

a un punto di minimo e di massimo (assoluti).

Si noti in Figura 2.1, nei due punti, la tangenza fra vincolo ϕ e curve di

(livello) f = c (c = costante), per c = ±

2 , e quindi il parallelismo dei loro

gradienti. Cio`e:

∇f = −λ∇ϕ, ∇f + λ∇ϕ = ∇ (f + λ∇ϕ) = 0, L(x, y, λ) = f + λϕ.

∇f =

, ∇ϕ =

2 x

2 y

= −λ

, λ =

∇f =

, ∇ϕ =

2 x

2 y

= −λ

, λ = −

Esempio 2 (in R^3 ):

min f = xy + yz + xz sotto il vincolo x + y + z = 3.

Lagrangiana: L(x, y, z; λ) = (xy + xz + yz) + λ(x + y + z − 3)

Le condizioni necessarie di estremo vincolato (2.4) sono

y +z +λ = 0 x +z +λ = 0

x +y +λ = 0 x +y +z −3 = 0

La soluzione `e x = y = z = 1, λ = − 2. Considerando la matrice hessiana

della lagrangiana L, con derivate seconde calcolate rispetto a x, y e z, si trova

∇^2 L =

che `e indefinita (gli autovalori sono {− 1 , − 1 , 2 }). Considerando il sottospazio

(piano tangente)

{h : ∇ϕ(x) h = (1 1 1)(h 1 h 2 h 3 )

T = h 1 + h 2 + h 3 = 0}, (h 1 , h 2 , h 3 )

T ̸ = 0,

da cui (h 2 + h 3 ) = −h 1 , (h 1 + h 3 ) = −h 2 , (h 1 + h 2 ) = −h 3 , si ottiene

h

T ∇

2 L h = h 1 (h 2 + h 3 ) + h 2 (h 1 + h 3 ) + h 3 (h 1 + h 2 ) = −(h

2 1 +^ h

2 2 +^ h

2 3 ).

Si pu`o allora concludere che, almeno sul sottospazio tangente visto, l’hessiana

∇^2 L e definita negativa e quindi la soluzione trovatae un massimo locale.

2.1. VINCOLI DI UGUAGLIANZA (LAGRANGE) 59

Esempio 3 (Programmazione quadratica):

Trovare i punti di massimo e di minimo della funzione quadratica

f (x) =

x

T Ax − b

T x + c,

sotto il vincolo lineare

Ω = {x ∈ R

n ; Cx − d = 0},

dove C `e una matrice m × n di rango m e d ∈ Rm, m < n.

Lagrangiana:

L(x, λ) =

x

T Ax − b

T x + c

  • λ(Cx − d), x ∈ R

n , λ ∈ R

m .

Le condizioni di Lagrange danno il sistema lineare (aumentato)

Lx = Ax − b + CT^ λ = 0, Lλ = Cx − d = 0,

che in forma matriciale compatta si scrive

{ Ax + CT^ λ = b

Cx = d

A CT

C 0

x

λ

b

d

con matrice (simmetrica ma) indefinita.

Il problema vincolato (vincolo: Cx − d = 0) `e stato trasformato in uno non

vincolato ma a costo di un aumento (di m equazioni) del sistema ∇f (x) = 0.

Si dimostra^3 che il sistema `e unicamente risolubile se la matrice jacobiana dei

vincoli C ha rango massimo m e la matrice A `e definita positiva sullo spazio

tangente dei vincoli, cio`e: xT^ A x > 0 per ogni x ̸= 0 tale che Cx = 0.

Per risolvere in modo numericamente efficientemente il sistema (2.6) di La-

grange, si usano sia metodi diretti, con fattorizzazione triangolare di Gauss

e sostituzioni in avanti e indietro (Cholesky non `e applicabile), sia metodi

iterativi, opportunamente precondizionati^4.

Il precedente esempio 2 `e un esempio di programmazione quadratica dove

A = ∇^2 L(x), C la matrice (1 1 1), b = c = 0, d = 3.

(^3) Cfr. [34, Lemma 16.1]. (^4) Cfr. [34, cap. 16] e [4].

2.2. VINCOLI DI DISUGUAGLIANZA (KUHN-TUCKER) 61

perch`e un vettore qualunque p ∈ Rn^ non formi un angolo acuto con alcun

vettore x del cono convesso C, bisogna che p appartenga al cono convesso C’

duale di C.

Nota. Il Lemma di Farkas `e un’estensione alle disuguaglianze del classico

risultato (di alternativa) sui sistemi lineari. Sotto forma di alternativa, il

Lemma di Farkas si enuncia cos`ı:

o ∃ u ∈ R

m ; p = A

T u, u ≥ 0

o ∃ x ∈ Rn; Ax ≤ 0 , pT^ x > 0.

In analogia con il problema (2.1) associamo al problema (2.7) la funzione

lagrangiana

L(x, λ) = f (x) +

∑^ m

i=

λi ϕi(x), x ∈ Rn, λ ∈ Rm + (2.8)

(dove λ `e il vettore dei moltiplicatori).

In ipotesi di differenziabilit`a della f e delle ϕi, come conseguenza del lemma

di separabilit`a di Farkas [13, pag. 514], in un punto di minimo vincolato x,

oltre ai vincoli ϕi(x) ≤ 0 , i = 1,... , m, sussiste la relazione

∇f (x) = −λ

T ∇ϕ(x) = −

∑^ m

i=

λi ∇ϕi(x), (2.9)

dove: λ = (λ 1 ,... , λm)T^ ≥ 0 ,

insieme con la condizione di complementariet`a: λ

T ϕ(x) = 0, cio`e

λ

T ∇λL(x, λ) = λ

T ϕ(x) =

∑^ m

i=

(λi) ϕi(x) = 0 (2.10)

dove λi = 0 per i ̸∈ I(x), essendo I(x) = {i : 1 ≤ i ≤ m; ϕi(x) = 0}.

Premettiamo le definizioni seguenti:

  • Un punto x si dice ammissibile^5 se verifica tutti i vincoli, cio`e x ∈ Ω.
  • Un vincolo di disuguaglianza ϕi(x) ≤ 0 `e detto attivo nel punto am-

missibile x se ϕi(x) = 0 ed inattivo nel punto x se ϕi(x) < 0.

Per convenzione, un vincolo di uguaglianza ϕi(x) = 0 `e attivo in ogni x.

(^5) Feasible, in inglese.

62 CAPITOLO 2. OTTIMIZZAZIONE VINCOLATA

  • Un punto ammissibile x `e detto regolare se i gradienti ∇ϕi(x) dei vincoli attivi sono linearmente indipendenti (ipotesi dei vincoli qualificati).

Se distinguiamo i vincoli ϕi fra vincoli (attivi) di uguaglianza hi(x), hi(x) = 0

per 1 ≤ i ≤ p, e di disuguaglianza gj (x), j ∈ J, dove J `e l’insieme degli indici

j per cui gj (x) = 0, allora si ha che:

  • i vincoli sono qualificati se i gradienti ∇hi(x), per 1 ≤ i ≤ p, e ∇gj (x), per j ∈ J, sono linearmente indipendenti.

Per la definizione di vincoli attivi, la relazione (2.9) vale per tutti gli i, 1 ≤

i ≤ m, considerando vincoli attivi e non attivi, ma (pu`o essere) λi ̸= 0 solo

se il corrispondente vincolo `e attivo.

Per vincoli qualificati, in un punto di minimo valgono dunque le condizioni

∇xL(x, λ) = 0 (2.11)

∇λL(x, λ) = ϕ(x) ≤ 0 (2.12)

λ ≥ 0 (2.13)

λ

T ϕ(x) = 0 (2.14)

Le (2.11)—(2.14) esprimono le condizioni KKT (necessarie, del primo ordine)

di Kuhn-Tucker (1951, dette anche di Karush-Kuhn-Tucker).

Si osservi che la (2.9) coincide con la (2.11):

∇xL(x, λ) = ∇f (x) + λT^ ∇ϕ(x) = ∇f (x) +

∑^ m

i=

λi ∇ϕi(x) = 0,

e la condizione di complementariet`a (2.10) coincide con la (2.14).

Inoltre, tenuto conto del segno dei parametri λ e dei vincoli ϕ (condizioni

(2.12) e (2.13) ), essa equivale alle m condizioni

λi ϕi(x) = 0, 1 ≤ i ≤ m.

Esse implicano che o λi = 0 o ϕi(x) = 0.

Cioe: le condizioni (di complementarieta) (2.10) equivalgono al fatto che,

come si e detto, λi puo essere positivo solo se il corrispondente vincolo `e

attivo. Banalmente, essendo λ ≥ 0 e ϕ ≤ 0 , allora λ pu`o essere diverso da

zero solo se il corrispondente vincolo `e uguale a zero.

64 CAPITOLO 2. OTTIMIZZAZIONE VINCOLATA

− 3

0 1

Figura 2.3: Esempio 1.

I punti di estremo si possono anche caratterizzare come punti di sella della

lagrangiana e ricorrendo alla teoria della dualit`a^7 (dei due problemi, primale

che opera nello spazio (n − m)-dimensionale e duale che opera nello spazio

m-dimensionale dei moltiplicatori di Lagrange); ma su questo non insistiamo.

Esempio 1 (in R^2 ) (Tema: 08/04/2005)

min f (x, y) = x

2 +y, Ω = {(x, y) ∈ R

2 ; x

2 +y

2 − 9 ≤ 0; x+y − 1 ≤ 0 }.

Nota 1.

Per questo e per gli altri esempi, si consiglia di fare le figure.

Si trovi anche il massimo, ricordando che max (f ) = − min (−f ). Si noti

che il minimo e il massimo esistono (in Ω compatto) in forza del teorema di

Weierstrass sulle funzioni continue.

Si controllino inoltre le direzioni dei gradienti della funzione obiettivo f e dei

vincoli ϕ nei punti ottimali, verificando che siano soddisfatte la condizione

di discesa (1.6) e la relazione (2.9)^8 : −∇f (x) =

∑m i=1 λi^ ∇ϕi(x). (Fine Nota 1).

Lagrangiana:

L(x, y, λ 1 , λ 2 ) = f (x) + λ 1 ϕ 1 + λ 2 ϕ 2 = x

2

  • y + λ 1 (x

2

  • y

2 − 9) + λ 2 (x + y − 1)

(^7) Si veda anche in programmazione lineare, sezione 2.5. (^8) Geometricamente: il vettore x `e punto KKT se e solo se −∇f (x) appartiene al cono

convesso generato dai gradienti dei vincoli attivi (bindings).

2.2. VINCOLI DI DISUGUAGLIANZA (KUHN-TUCKER) 65

Le condizioni necessarie del primo ordine di K.-Kuhn-Tucker sono:

Lx = 2x +2λ 1 x +λ 2 = 0

Ly = 1 +2λ 1 y +λ 2 = 0 ϕ 1 = x^2 + y^2 − 9 ≤ 0 ϕ 2 = x + y − 1 ≤ 0

λ 1 ≥ 0 , λ 2 ≥ 0 λ 1 ϕ 1 = λ 1 (x^2 + y^2 − 9) = 0

λ 2 ϕ 2 = λ 2 (x + y − 1) = 0

Nota 2.

Cercheremo la soluzione per le varie combinazioni^9 di vincoli attivi, control-

lando quindi il segno dei moltiplicatori di Lagrange λi ottenuti. In tal modo,

nel sistema aumentato compaiono solo delle uguaglianze, ed esso pu`o essere

risolto con un qualunque metodo numericamente efficiente.

Nei seguenti semplici esempi, troveremo soluzioni analitiche; inoltre, essendo

al piu m = 2 i vincoli,e facile controllare tutte le combinazioni.

Per m grande sono stati proposti vari algoritmi^10 , tra cui l’importante active

set, particolarmente adatto a problemi quadratici con hessiana definita po-

sitiva. Ad illustrazione del metodo, si veda il successivo esempio 5, a pag.

  1. caso:

ϕ 1 (x) = 0 (attivo; λ 1 pu`o essere ̸= 0) ; ϕ 2 (x) < 0 (inattivo) =⇒ λ 2 = 0.

Si ottiene il sistema non lineare

2 x +2λ 1 x = 0

1 +2λ 1 y = 0 x^2 + y^2 − 9 = 0

Dalla prima equazione si ha 2(1 + λ 1 )x = 0, e quindi 1 + λ 1 = 0 e x = 0.

La prima condizione fornisce λ 1 = − 1 < 0 (caso di non ottimalit`a).

Viceversa, dalla seconda condizione si ottiene facilmente la soluzione (otti-

male)

(x, y, λ 1 , λ 2 ) = (0, − 3 ,

, 0), f (x, y) = − 3.

Dunque, il punto (x, y) = (0, −3) `e ottimale.

(^9) Per un problema con m vincoli, ve ne sono 2m. (^10) Tra essi, il recente metodo interior point che si vedr`a alla sezione 2.6.

2.2. VINCOLI DI DISUGUAGLIANZA (KUHN-TUCKER) 67

1

2

0

Figura 2.4: Esempio 2.

Risolvendo

min −f = −(x^2 +y), Ω = {(x, y) ∈ R^2 ; x^2 +y^2 − 9 ≤ 0; x+y − 1 ≤ 0 },

si trova: max f = f (−

Esempio 2 (in R^2 )

min f = 2x

2

  • 2xy + y

2 − 10 x − 10 y

sotto i vincoli (m = 2) x^2 + y^2 ≤ 5 , 3 x + y ≤ 6 , ossia

Ω = {(x, y) ∈ R^2 : x^2 + y^2 ≤ 5; 3x + y ≤ 6 }.

Lagrangiana:

L(x, y, λ 1 , λ 2 ) = 2x^2 + 2xy + y^2 − 10 x − 10 y + λ 1 (x^2 + y^2 − 5) + λ 2 (3x + y − 6)

Le condizioni necessarie del primo ordine di K.Kuhn-Tucker sono:

4 x +2y − 10 +2λ 1 x + 3λ 2 = 0

2 x +2y − 10 +2λ 1 y + λ 2 = 0 x^2 + y^2 − 5 ≤ 0 3 x + y − 6 ≤ 0

λ 1 ≥ 0 , λ 2 ≥ 0 λ 1 (x^2 + y^2 − 5) = 0

λ 2 (3x + y − 6) = 0

68 CAPITOLO 2. OTTIMIZZAZIONE VINCOLATA

grad ( φ_2)

grad ( φ_1)

2

− 2

grad(f)

− grad(f)

2

1

1

Figura 2.5: Esempio 3.

Cominciamo supponendo che il primo vincolo sia attivo (ϕ 1 = 0, da cui

possibilmente λ 1 ̸= 0) ed il secondo inattivo (ϕ 2 < 0 , da cui λ 2 = 0). Si

ottiene il sistema

4 x +2y −10 +2λ 1 x = 0

2 x +2y −10 +2λ 1 y = 0 x^2 + y^2 = 5,

che ha per soluzione x = 1, y = 2, λ 1 = 1 (> 0), da cui 3x + y = 5 e

percio il secondo vincoloe soddisfatto. La soluzione trovata soddisfa dunque

le condizioni del primo ordine (si veda la Figura 2.4).

Come si pu`o verificare, le altre combinazioni (primo vincolo inattivo e

secondo attivo, primo e secondo vincolo inattivi, primo e secondo vincoli at-

tivi) non forniscono altri punti ottimali.

Esempio 3 (in R^2 ) (Tema: 29/03/2006)

min f = x + y sotto i vincoli x^2 + y^2 − 2 ≤ 0 , −y ≤ 0 (y ≥ 0).

Lagrangiana:

L(x, y, λ 1 , λ 2 ) = x + y + λ 1 (x^2 + y^2 − 2) + λ 2 (−y)

70 CAPITOLO 2. OTTIMIZZAZIONE VINCOLATA

punti ottimali.

Esempio 3’

max f = x + y sotto i vincoli x

2

  • y

2 − 2 ≤ 0 , −y ≤ 0 (y ≥ 0).

Si trova: max(f ) = f (1, 1) = 2, in corrispondenza della soluzione di non

ottimalit`a per la ricerca del minimo della f :

(x, y, λ 1 , λ 2 ) = (1, 1 , −

Esempio 4 (in R^2 ) (Si veda l’“analogo” esempio 1 in sezione 2.1)

min f = x + y sotto il vincolo x^2 + y^2 − 1 ≤ 0.

Lagrangiana:

L(x, y, λ 1 ) = x + y + λ 1 (x

2

  • y

2 − 1)

Si trova la soluzione ottimale:

(x, y, λ 1 ) = (

), f (x, y) = −

Inoltre, l’hessiana della lagrangiana in (x, y, λ 1 )T^ `e

2 L =

2 λ 1 0

0 2 λ 1

Questa matrice `e definita positiva, e quindi (condizione sufficiente) il punto

trovato `e proprio un minimo locale, anzi globale, trattandosi di un problema

di programmazione convessa.

Esempio 4’

max f = x + y sotto il vincolo x^2 + y^2 − 1 ≤ 0.

Si trova: max(f ) = f (

Esempio 5 (Active Set)

Esso corrisponde a un punto di ottimalita per la funzione obiettivo −f. Difatto sie ottenuto

il massimo della f.

2.2. VINCOLI DI DISUGUAGLIANZA (KUHN-TUCKER) 71

Per risolvere un problema generale di programmazione convessa, senza entra-

re nella teoria, accenniamo al metodo detto active set, limitandoci a qualche

considerazione di carattere generale^12. L’esempio illustrer`a l’algoritmo.

L’idea del metodo `e di definire ad ogni passo un insieme di vincoli, detto

working set, da considerare come attivo. A ogni passo si risolve un sottopro-

blema di programmazione quadratica con solo vincoli di uguaglianza, elimi-

nando tutti gli altri vincoli. Il working set pu`o cambiare scartando qualche

vincolo ed aggiungendone un altro, facendo in modo che la funzione obiettivo

decresca. Questo si ottiene vedendo il segno dei moltiplicatori di Lagrange,

che, come e noto, per l’ottimalita devono essere non negativi. Se, viceversa,

uno dei moltiplicatori `e negativo, la funzione obiettivo decresce se si scarta il

vincolo corrispondente. Se ve ne sono piu di uno,e pi`u conveniente scartare

quello corrispondente al moltiplicatore pi`u negativo.

Essendovi un numero finito di working sets, il processo ha termine dopo un

numero finito di passi.

Esempio. Consideriamo il problema (quadratico)

min f (x, y) = 2x

2

  • xy + y

2 − 12 x − 10 y (2.16)

xT^ Hx − bT^ x =

(x, y)

x y

x y

sotto i vincoli (m = 3) x + y ≤ 4 , −x ≤ 0 , −y ≤ 0.

Prendendo come punto iniziale x 0 = (0, 0)T^ , come working set definiamo

ovviamente quello formato dal secondo e terzo vincolo (vincoli attivi in x 0 ):

−x = 0, −y = 0, Si veda la Figura 2.6. Ovviamente si ha la direzione di

ricerca p 0 = (0, 0)T^. Inoltre, λ 1 e λ 2 ̸= 0, λ 3 = 0, da cui la Lagrangiana:

L(x, y, λ 1 , λ 2 ) = f (x) + λ 1 (−x) + λ 2 (−y)

Le condizioni KKT forniscono il sistema aumentato (n+m=2+2):

Lx = 4x + y − 12 − λ 1 = 0 Ly = x + 2y − 10 − λ 2 = 0

−λ 1 x = 0 −λ 2 y = 0 λ 1 ̸= 0, λ 2 ̸= 0

Si ottiene facilmente: x = y = 0 e i due moltiplicatori λ 1 = − 12 , λ 2 = − 10 ,

entrambi negativi. Essendo λ 1 pi`u negativo di λ 2 , il primo vincolo −x ≤ 0

(^12) Si veda [34, cap. 16].

2.2. VINCOLI DI DISUGUAGLIANZA (KUHN-TUCKER) 73

Siamo ora in grado di trovare il punto di minimo cercato x 3 , minimizzando

la f lungo la direzione p 2 = (− 1 , 1)T^ del vincolo, tramite una line search:

x 3 = x 2 + αp 2 =

)T

  • α

− α,

  • α

)T

ottenendo

f (x 3 ) = φ(α) = 2(

−α)^2 +(

−α)(

+α)+(

+α)^2 −12(

−α)−10(

+α).

La condizione di minimo φ′(α) = 0 fornisce α = 7/6 che `e positivo (e < 1).

Percio, il punto di minimo cercatoe

x 3 =

)T

T ,

con f (x 3 ) = − 28. 5.

Osservazione.

Si pu`o verificare che, essendo l’hessiana H definita positiva, la f = cost

rappresenta una famiglia di ellissi confocali, di centro C = (2, 4) e di assi

le due rette y − 4 = (− 1 ±

2)(x − 2), corrispondenti ai due coefficienti

angolari m, di angoli π/8 e 5/ 8 π, rispettivamente^13. La f cresce procedendo

dal centro verso l’origine.

Si ha: f (1. 5 , 2 .5) = − 28. 5 , f (3, 0) = − 18 , f (0, 0) = 0, ecc...

E’ geometricamente evidente che il minimo vincolato `e raggiunto in x 3 , dove

si ha la tangenza fra la f e il vincolo x + y = 4.

Si ha infatti il seguente problema di minimo con 1 vincolo di uguaglianza

min f = 2x

2

  • xy + y

2 − 12 x − 10 y, sotto il vincolo x + y = 4.

Lagrangiana: L(x, y; λ) = f + λ(x + y + z − 4)

Le condizioni di Lagrange (KKT) di estremo vincolato (2.4) sono

Lx = 4x + y − 12 +λ = 0

Ly = x + 2y − 10 +λ = 0 x + y = 4

Si trova la soluzione: x = 3/ 2 , y = 5/ 2 , λ = 7/ 6.

(^13) Infatti: ∇f = 0, da cui C = (2, 4). Inoltre: h 12 m (^2) +(h 11 −h 22 )m−h 12 = m (^2) +2m−1 =

0 , da cui m = − 1 ±

74 CAPITOLO 2. OTTIMIZZAZIONE VINCOLATA

1

x 2

x 3

x 0 x

x+y = 4

y

x

Figura 2.6: Programmazione quadratica: active set (in R^2 ).

2.3 Programmazione Quadratica Sequenziale

(SQP)

Vediamo ora come si pu`o risolvere numericamente un generale problema di

ottimizzazione vincolata con vincoli di uguaglianza e/o di disuguaglianza

(2.7)

min f (x), x ∈ Ω ⊂ Rn^ Ω = {x ∈ Rn; ϕ(x) ≤ 0 }.

Tralasciamo per il momento il caso della Programmazione Lineare (funzione

obiettivo lineare e vincoli lineari), sezione 2.5, per il quale esistono consolidati

metodi di risoluzione: metodo del simplesso di Dantzig (1947), o il pi`u recente

(e pi`u efficiente per problemi, anche non lineari, di grandi dimensioni) metodo

interior point, introdotto per primo da Karmarkar (1984), sezione 2.6.

In sezione 2.4 vedremo il metodo di Penalizzazione che risolve il problema

senza ricorrere ai metodi visti dei moltiplicatori di Lagrange (2.2) o alle

“analoghe” condizioni (2.9) KKT. Come si vedr`a, per un problema con n

variabili e m vincoli, i metodi di penalizzazione operano direttamente nello

spazio n-dimensionale delle variabili.

Invece, i pi`u moderni metodi di ottimizzazione vincolata (per esempio il

metodo del punto interno, sezione 2.6), risolvono direttamente le predette