Slides Lagrange - Dipartimento di Informatica

Rilassamento lagrangiano
Dualit`
a Lagrangiana
Laura Galli
Dipartimento di Informatica
Largo B. Pontecorvo 3, 56127 Pisa
[email protected]
http://www.di.unipi.it/~galli
11 Novembre 2014
Ricerca Operativa 2
Laurea Magistrale in Ingegneria Gestionale
Universit`
a di Pisa
A.A. 2014/15
L. Galli
Corso di Ricerca Operativa 2
-
Laurea Magistrale in Ingegneria Gestionale
Universit`
a di Pisa
1 / 12
Rilassamento lagrangiano
Metodi risolutivi per la PLI
Metodi esatti (garanzia soluzione ottima)
• metodi poliedrali
• Branch and bound
• programmazione dinamica
• metodi ad hoc
Metodi euristici
• greedy
• ricerca locale
• metodi ad hoc
L. Galli
Corso di Ricerca Operativa 2
-
Laurea Magistrale in Ingegneria Gestionale
Universit`
a di Pisa
2 / 12
Rilassamento lagrangiano
Rilassamento Lagrangiano
Consideriamo un problema di PLI della forma

max c T x



Ax ≤ b
Bx ≤d



x ∈ Zn
(P)
in cui A x ≤ b sono i vincoli ’difficili’, cio`e il problema (P) senza tali vincoli
sarebbe ’facile’ da risolvere.
Invece di eliminare i vincoli ’difficili’, penalizziamo la loro violazione inserendoli
nella funzione obiettivo moltiplicati per un parametro.
Definizione
Il rilassamento lagrangiano di (P), rispetto ai vincoli A x ≤ b, `e il seguente
problema di PLI:

 max c T x + λT (b − A x)
Bx ≤d
(RLλ )

x ∈ Zn
dove il parametro λ ≥ 0 `e detto il vettore dei moltiplicatori di Lagrange.
L. Galli
Corso di Ricerca Operativa 2
-
Laurea Magistrale in Ingegneria Gestionale
Universit`
a di Pisa
3 / 12
Rilassamento lagrangiano
Rilassamento Lagrangiano
Il rilassamento lagrangiano fornisce una vS (P).
Teorema (dualit`
a debole)
Per ogni λ ≥ 0 si ha
v (P) ≤ v (RLλ ).
Dimostrazione
v (P) = max c T x ≤ max c T x + λT (b − A x) ≤ max c T x + λT (b − A x) = v (RLλ )
A x≤b
B x≤d
x∈Zn
L. Galli
A x≤b
B x≤d
x∈Zn
Corso di Ricerca Operativa 2
B x≤d
x∈Zn
-
Laurea Magistrale in Ingegneria Gestionale
Universit`
a di Pisa
4 / 12
Rilassamento lagrangiano
Rilassamento Lagrangiano
Se la sol. ottima di (RLλ ) `e ammissibile per (P), allora `e ottima anche per (P)?
In generale NO, perch´e le funzioni obiettivo di (P) e (RLλ ) sono diverse.
Teorema
Se x¯ `e la soluzione ottima di (RLλ ), x¯ `e ammissibile per (P) e λT (b − A x¯) = 0
(scarti complementari), allora x¯ `e ottima anche per (P).
Dimostrazione
Se x `e ammissibile per (P), allora
c T x ≤ c T x + λT (b − A x)
| {z }
ipotesi 1
≤
c T x¯ + λT (b − A x¯)
ipotesi 3
=
c T x¯.
≥0
L. Galli
Corso di Ricerca Operativa 2
-
Laurea Magistrale in Ingegneria Gestionale
Universit`
a di Pisa
5 / 12
Rilassamento lagrangiano
Duale Lagrangiano
v (RLλ ) `e una vS (P) per ogni valore di λ ≥ 0. Qual `e la migliore?
Il problema
min v (RLλ )
λ≥0
(D)
`e chiamato il duale lagrangiano di (P).
Teorema
• v (D) ≥ v (P).
• La funzione v (RLλ ) `
e convessa rispetto a λ, ma in generale non `e
differenziabile.
Per minimizzare una funzione convessa, non differenziabile, esistono i cosiddetti
metodi del sottogradiente. Il sottogradiente `e una generalizzazione del concetto di
gradiente.
L. Galli
Corso di Ricerca Operativa 2
-
Laurea Magistrale in Ingegneria Gestionale
Universit`
a di Pisa
6 / 12
Rilassamento lagrangiano
Sottogradiente
Definizione
Sia v : Rm → R una funzione convessa.
¯ `e un vettore g ∈ Rm tale che
Un sottogradiente di v nel punto λ
¯ + v (λ)
¯
v (λ) ≥ g T (λ − λ)
∀ λ ≥ 0,
¯ v (λ))
¯ sta ’al di sotto’ del grafico di v .
cio`e il piano ortogonale a g passante per (λ,
¯
λ
0
L. Galli
Corso di Ricerca Operativa 2
-
Laurea Magistrale in Ingegneria Gestionale
λ
Universit`
a di Pisa
7 / 12
Rilassamento lagrangiano
Metodi del sottogradiente
Metodi di tipo sottogradiente per risolvere il duale
min v (RLλ )
(D)
λ≥0
All’iterazione k calcoloun sottogradienteg k della funzione v (RLλ ) nel punto λk .
gk
Aggiorno λk+1 = max 0, λk − tk
.
kg k k2
Teorema
Se i passi tk sono scelti in modo che
lim tk = 0,
k→∞
∞
X
tk = +∞,
k=1
allora lim v (RLλk ) = v (D).
k→∞
In generale, la successione v (RLλ1 ), v (RLλ2 ), . . . non `e decrescente.
L. Galli
Corso di Ricerca Operativa 2
-
Laurea Magistrale in Ingegneria Gestionale
Universit`
a di Pisa
8 / 12
Rilassamento lagrangiano
Calcolo di un sottogradiente
Come si calcola un sottogradiente della funzione v (RLλ )?
Teorema
Se x¯ `e la soluzione ottima di (RLλ¯ ), allora il vettore
g = b − A x¯
¯
`e un sottogradiente di v (RLλ ) nel punto λ.
Dimostrazione
¯T (b − A x¯). Inoltre
v (RLλ ) = max c T x + λT (b − A x), quindi v (RLλ¯ ) = c T x¯ + λ
B x≤d
x∈Zn
v (RLλ ) ≥ c T x¯ + λT (b − A x¯)
¯ T (b − A x¯) + (λ − λ)
¯ T (b − A x¯)
= c T x¯ + λ
¯ T (b − A x¯).
= v (RLλ¯ ) + (λ − λ)
L. Galli
Corso di Ricerca Operativa 2
-
Laurea Magistrale in Ingegneria Gestionale
Universit`
a di Pisa
9 / 12
Rilassamento lagrangiano
Duale lagrangiano e rilassamento continuo
Dato un problema di PLI:

max c T x



Ax ≤ b
Bx ≤d



x ∈ Zn
(P)
consideriamo il duale lagrangiano ed il rilassamento continuo:

 max c T x
min v (RLλ )
Ax ≤ b
(D)
(RC )
λ≥0

Bx ≤d
Qual `e la relazione tra i loro valori ottimi?
L. Galli
Corso di Ricerca Operativa 2
-
Laurea Magistrale in Ingegneria Gestionale
Universit`
a di Pisa
10 / 12
Rilassamento lagrangiano
Duale lagrangiano e rilassamento continuo
Teorema
v (D) ≤ v (RC )
Dimostrazione
v (D)
= min v (RLλ )
λ≥0
= min λT b + max (c T − λT A) x
λ≥0
[rilass. continuo di (RLλ )]
[dualit`a PL]
B x≤d
x∈Zn
≤ min λT b + max (c T − λT A) x
B x≤d
λ≥0
T
= min λ b +
λ≥0
min
y Td
y T B=c T −λT A
y≥0
=
λT b + y T d
min
λT A+y T B=c T
λ,y≥0
[dualit`a PL]
= max c T x
A x≤b
B x≤d
= v (RC )
L. Galli
Corso di Ricerca Operativa 2
-
Laurea Magistrale in Ingegneria Gestionale
Universit`
a di Pisa
11 / 12
Rilassamento lagrangiano
Duale lagrangiano e rilassamento continuo
Teorema
Se (RLλ ) e il rilassamento continuo del (RLλ ) hanno lo stesso valore ottimo per
ogni λ ≥ 0, allora v (D) = v (RC ).
L. Galli
Corso di Ricerca Operativa 2
-
Laurea Magistrale in Ingegneria Gestionale
Universit`
a di Pisa
12 / 12