Lezione n
°
14
Teoria della dualità:
- Teorema forte della dualità
- Teorema degli scarti complementari - Relazioni tra il primale e il duale
R. Cerulli
–
F. CarrabsLezioni di Ricerca Operativa
2. Teorema forte della dualità
Data una coppia di problemi primale duale, (P) e (D), se uno dei due problemi ammette una soluzione ottima finita, allora anche l’altro problema ammette una soluzione ottima finita ed i valori ottimi delle funzioni obiettivo coincidono, i.e.
Dim.: Sia 𝑥∗ la soluzione ottima del primale e sia B la base ad esso associata.
quindi
Sia 𝑤∗" = 𝑐#"𝐴#$%. Vogliamo dimostrare che questo vettore è una
soluzione ammissibile ed ottima per (D).
𝑃 𝑚𝑖𝑛 𝑐"𝑥 A𝑥 = 𝑏 𝑥 ≥ 0 𝐷 𝑚𝑎𝑥 𝑏"𝑤 AT𝑤 ≤ 𝑐 𝑤 𝑛. 𝑣. 𝑥∗ = 𝑥# ∗ 𝑥&∗ = 𝐴$%# 𝑏 0
𝑐
𝑇𝑥
∗= 𝑐
"#𝑥
"∗= 𝑐
"#𝐴
"$%𝑏
• Ammissibilità (𝑤
∗#= 𝑐
"#𝐴
$%"):
𝑃 𝑚𝑖𝑛 𝑐"𝑥 A𝑥 = 𝑏 𝑥 ≥ 0 𝐷 𝑚𝑎𝑥 𝑏"𝑤 AT𝑤 ≤ 𝑐 𝑤 𝑛. 𝑣. 𝐴𝑇𝑤∗ ≤ 𝑐 ⟹ 𝑤∗"𝐴 ≤ 𝑐" ⟹ 𝑐 #"𝐴#$%𝐴 ≤ 𝑐" ⟹ 𝑐#"𝐴$%# 𝐴 − 𝑐" ≤ 0𝑐#"𝐴#$% 𝐴# | 𝐴& − 𝑐#" | 𝑐&" = 𝑐#"𝐴$%# 𝐴# |𝑐#"𝐴$%# 𝐴& − 𝑐#" | 𝑐&" =
Dal Corollario 1 del teorema debole della dualità, poichè 𝑤∗"𝑏 =
𝑐𝑇𝑥∗ allora w*T è ottima per (D).
Poichè 𝑐#"𝐴#$%𝐴& − 𝑐&" ≤ 0" è la condizione di ottimalità per (P)
(problema di minimizzazione), l’ammissibilità è verificata.
Il valore della funzione obiettivo duale in 𝑤∗" è:
𝑤∗"𝑏 = 𝑐#"𝐴$%# 𝑏 = 𝑐#"𝑥#∗ = 𝑐𝑇𝑥∗
• Ottimalità:
Dal teorema della dualità forte ricaviamo che, data la base ottima B del primale, è possibile calcolare velocemente la soluzione ottima del duale (D) tramite l’equazione:
Riassumendo
Se (P) è illimitato ⟹ (D) non è ammissibile
(P) ha soluzione ottima finita ⟺ (D) ha soluzione ottima finita
(ed i valori delle loro f.o. coincidono)
Il Teorema dello “scarto complementare”
(Complementary Slackness Theorem)
Consideriamo la coppia di problemi (P) e (D) in forma canonica e trasformiamoli in forma standard
𝑃 𝑚𝑖𝑛 𝑐"𝑥 A𝑥 ≥ 𝑏 𝑥 ≥ 0 𝐷 𝑚𝑎𝑥 𝑏"𝑤 AT𝑤 ≤ 𝑐 𝑤 ≥ 0 𝑚𝑖𝑛 𝑐"𝑥 A𝑥 − 𝐼𝑠 = 𝑏 𝑥 ≥ 0 𝑛 var. 𝑠 ≥ 0 𝑚 var. di surplus 𝑚𝑎𝑥 𝑏"𝑤 AT𝑤 + 𝐼𝑣 = 𝑐 𝑤 ≥ 0 𝑚 var. 𝑣 ≥ 0 𝑛 var. di slack
Ad ogni variabile di (P) è associato un vincolo di (D) e quindi la corrispondente variabile di slack/surplus e viceversa.
3. Teorema della slackness complementare
Data la coppia di soluzioni x e w rispettivamente ammissibili per (P) e (D), x e w sono ottime per (P) e (D) se e solo se
dove aj è la j-esima riga di A
ai è la i-esima colonna di A
𝑠
&𝑤
&= 𝑎
&𝑥 − 𝑏
&𝑤
&= 0
𝑗 = 1, … , 𝑚
𝑣
'𝑥
'= 𝑐
'− 𝑎
'#𝑤 𝑥
'= 0
𝑖 = 1, … 𝑛
condizioni di ortogonalità
• Per ogni vincolo non soddisfatto all’uguaglianza dalla soluzione
ottima di (P) (𝑎'𝑥 > 𝑏'), la variabile duale 𝑤' associata a questo
vincolo DEVE essere uguale a zero nella soluzione ottima di (D).
• Per ogni variabile 𝑥( non nulla nella soluzione ottima di (P), il
corrispondente vincolo in (D) DEVE essere soddisfatto
all’uguaglianza (𝑐( = 𝑎("𝑤) dalla soluzione ottima di (D).
Conseguenze dell condizioni di ortogonalità
𝑠'𝑤' = 𝑎'𝑥 − 𝑏' 𝑤' = 0 𝑗 = 1, … , 𝑚
𝑣(𝑥( = 𝑐( − 𝑎("𝑤 𝑥( = 0 𝑖 = 1, … 𝑛
condizioni di ortogonalità
Relazioni analoga si ricava partendo dalla soluzione ottima del duale. Queste relazioni saranno utili per l’interpretazione economica delle variabili duali.
Sia (P) un problema di PL in forma standard e sia 𝑥∗ una soluzione di
base ammissibile ottima (non degenere) di (P). A partire da 𝑥∗ le
condizioni degli scarti complementari individuano un’unica soluzione ottima del duale.
Calcolo della soluzione ottima duale
𝑃 𝑚𝑖𝑛 − 𝑥1 − 2𝑥2 𝑥1 + 𝑥2 − 𝑥3 = 1 𝑥1 + 2𝑥2 + 𝑥4 = 4 𝑥 ≥ 0 𝐷 𝑚𝑎𝑥 𝑤1 + 4𝑤2 𝑤1 + 𝑤2 ≤ −1 𝑤1 + 2𝑤2 ≤ −2 -𝑤1 ≤ 0 𝑤2 ≤ 0 𝑤 𝑛. 𝑣. Esempio 𝑥#∗ = 𝑥)∗ 𝑥*∗ = 𝐴$%# 𝑏 = 0 %⁄ ) −1 %⁄ ) 1 4 = 21 Base ottima B={2,3}.
Calcolo della soluzione ottima duale
𝑃 𝑚𝑖𝑛 − 𝑥1 − 2𝑥2 𝑥1 + 𝑥2 − 𝑥3 = 1 𝑥1 + 2𝑥2 + 𝑥4 = 4 𝑥 ≥ 0 𝐷 𝑚𝑎𝑥 𝑤1 + 4𝑤2 𝑤1 + 𝑤2 ≤ −1 𝑤1 + 2𝑤2 ≤ −2 -𝑤1 ≤ 0 𝑤2 ≤ 0 𝑤 𝑛. 𝑣. Scarti complementari 𝑤1(𝑥1 + 𝑥2 − 1) = 0 𝑤2(4 − 𝑥1 − 2𝑥2) = 0 −1 − 𝑤1 − 𝑤2 𝑥1 = 0 −2 − 𝑤1 − 2𝑤2 𝑥2 = 0 𝑥∗ = 0 2 1 0 𝑤1(0 + 2 − 1) = 0 𝑤2(4 − 0 − 4) = 0 −1 − 𝑤1 − 𝑤2 0 = 0 −2 − 𝑤1 − 2𝑤2 2 = 0 𝑤1 = 0 𝑤2 = −1Sia (P) un problema di PL in forma standard e sia 𝑥∗ una soluzione di
base ammissibile ottima (non degenere) di (P). A partire da 𝑥∗ le
condizioni degli scarti complementari individuano un’unica soluzione ottima del duale.
Calcolo della soluzione ottima duale
𝑠'𝑤' = 𝑎'𝑥 − 𝑏' 𝑤' = 0 𝑗 = 1, … , 𝑚 (1)
𝑣(𝑥( = 𝑐( − 𝑎("𝑤 𝑥( = 0 𝑖 = 1, … 𝑛 (2)
Se (P) è in forma standard il sistema (1) è sempre soddisfatto. Perche?
Poiché 𝑥∗ una soluzione di base ammissibile ottima (non degenere) il
sistema (2) si riduce a:
𝑐( − 𝑎("𝑤 = 0 𝑖 ∈ 𝐵 ⟹ 𝑐𝐵 − 𝐴#"𝑤 = 0 ⟹ 𝐴#"𝑤 = 𝑐𝐵
Data la non singolarità della matrice 𝐴# il precedente sistema ammette
un’unica soluzione ossia: 𝑤𝑇 = 𝑐
Esercizio
1. Scrivere il duale del problema e determinare una coppia di soluzioni primale-duale ammissibile.
2. Verificare che le soluzioni trovare soddisfano il teorema debole della dualità. 3. Verificare se le soluzioni trovate sono ottime per i rispettivi problemi.
4. Risolvere graficamente il primale ed individuare il punto di ottimo e la base B. 5. Calcolare la soluzione ottima del duale a partire dalla base ottima B.
6. Verificare utilizzando gli scarti complementari che le soluzioni trovate nei due punti precedenti siano effettivamente ottime.
𝑚𝑎𝑥 − 𝑥% + 3 2 𝑥) −𝑥% + 𝑥) ≤ 4 − 1 2 𝑥% + 𝑥) ≤ 5 𝑥% ≥ 0, 𝑥) ≥ 0
Esercizio 𝑃 𝑚𝑎𝑥 𝑧 = −𝑥! + 3 2 𝑥" −𝑥! + 𝑥" ≤ 4 −1 2 𝑥! + 𝑥" ≤ 5 𝑥! ≥ 0, 𝑥" ≥ 0 𝐷 𝑚𝑖𝑛 𝑔 = 4𝑤! + 5𝑤" −𝑤! − 1 2 𝑤" ≥ −1 𝑤! + 𝑤" ≥ 3 2 𝑤! ≥ 0, 𝑤" ≥ 0 𝑥% = 1, 𝑥) = 4 ⟹ 𝑧 = 5 𝑤% = 0, 𝑤) = 2 ⟹ 𝑔 = 10
𝑧 = 5 ≤ 10 = 𝑔 Il Teorema debole è verificato?
Sol. Ammissibile per (P) Sol. Ammissibile per (D)
𝑥% = 2, 𝑥) = 6 ⟹ 𝑧 = 7 𝑤% =
1
2 , 𝑤) = 1 ⟹ 𝑔 = 7
X
-4 4 (2) (1) -10 5 Punto di ottimo x = (2,6) Base ottima B = {1,2} 𝑤∗ = 𝑐$𝐴$%! = −1 3 2 −2 2 −1 2 = [ 1 2 1] 𝑚𝑎𝑥 𝑧 = −𝑥! + 3 2 𝑥" −𝑥! + 𝑥" ≤ 4 −1 2 𝑥! + 𝑥" ≤ 5 𝑥! ≥ 0, 𝑥" ≥ 0𝑃 𝑚𝑎𝑥 𝑧 = −𝑥! + 3 2 𝑥" −𝑥! + 𝑥" ≤ 4 −1 2 𝑥! + 𝑥" ≤ 5 𝑥! ≥ 0, 𝑥" ≥ 0 𝐷 𝑚𝑖𝑛 𝑔 = 4𝑤! + 5𝑤" −𝑤! − 1 2 𝑤" ≥ −1 𝑤! + 𝑤" ≥ 3 2 𝑤! ≥ 0, 𝑤" ≥ 0 Esercizio 𝑃 𝑚𝑎𝑥 𝑧 = −𝑥! + 3 2 𝑥" −𝑥! + 𝑥" + 𝑠! = 4 −1 2 𝑥! + 𝑥" + 𝑠" = 5 𝑥 ≥ 0, 𝑠 ≥ 0 𝐷 𝑚𝑖𝑛 𝑔 = 4𝑤! + 5𝑤" −𝑤! − 1 2 𝑤" − 𝑣! ≥ −1 𝑤! + 𝑤" − 𝑣" ≥ 3 2 𝑤 ≥ 0, 𝑣 ≥ 0
Esercizio 𝑃 𝑚𝑎𝑥 𝑧 = −𝑥% + 3 2𝑥& −𝑥% + 𝑥& + 𝑠% = 4 −1 2𝑥% + 𝑥& + 𝑠& = 5 𝑥 ≥ 0, 𝑠 ≥ 0 𝐷 𝑚𝑖𝑛 𝑔 = 4𝑤% + 5𝑤& −𝑤% − 1 2𝑤& − 𝑣% ≥ −1 𝑤% + 𝑤& − 𝑣& ≥ 3 2 𝑤 ≥ 0, 𝑣 ≥ 0 𝑥% = 2, 𝑥& = 6 𝑤% = 1 2, 𝑤& = 1
Sol. Ammissibile per (P)
Sol. Ammissibile per (D)
(4 + 𝑥! − 𝑥")𝑤! &! = 4 + 2 − 6 1 2 = 0 ∗ 1 2 = 0 (5 + 1 2 𝑥! − 𝑥")𝑤" &" = 5 + 1 − 6 ∗ 1 = 0 ∗ 1 = 0 (−𝑤! − 1 2 𝑤" + 1)𝑥! '! = − 1 2 − 1 2 + 1 ∗ 2 = 0 ∗ 2 = 0 (𝑤! + 𝑤" − 3 2)𝑥" '" = 1 2 + 1 − 3 2 ∗ 6 = 0 ∗ 6 = 0
Condizioni degli scarti complementari: 𝑠𝑣'𝑤' = 0