Capitolo 8
Teoremi dell’alternativa
8.1
Introduzione
Nel capitolo 7, le condizioni di ottimo per problemi con vincoli lineari sono state formulate come
“NON esistenza” di soluzione di un sistema di equazioni e disequazioni lineari. Tali condizioni
possono essere riscritte come condizioni di esistenza di soluzioni di un diverso sistema di equazioni
e disequazioni lineare. A tale scopo si utilizzano i cosı̀detti teorema dell’alternativa.
I teoremi dell’alternativa consentono di ridurre il problema della non esistenza di soluzioni di
un sistema di equazioni e disequazioni lineari assegnato a quello dell’esistenza di soluzioni di un
altro sistema lineare.
Un risultato di alternativa relativo a due assegnati sistemi lineari (I) e (II), consiste nel
dimostrare che:
Il sistema (I) ha soluzione se e solo se il sistema (II) non ha soluzione.
8.2
Il Lemma di Farkas
Tra i teoremi di alternativa per i sistemi di disequazioni lineari, uno dei più noti, e anche quello
che utilizzeremo nei prossimi capitoli, è il Lemma di Farkas che si può enunciare nella forma
seguente.
Teorema 8.2.1 (Lemma di Farkas) Sia B matrice p × n e g ∈ IRn . Il sistema
Bd ≥ 0
gT d < 0
(I)
u≥0
(II)
non ha soluzione d ∈ IRn se e solo se il sistema
BT u = g
ha soluzione u ∈ IRp .
99
Dimostrazione. [(II) ha soluzione −→ (I) non ha soluzione.] Sia ū soluzione del sistema
(I) e supponiamo per assurdo che esista una soluzione d¯ del sistema (II), ovvero che la coppia
ū, d¯ soddisfi:
B d¯ ≥ 0
g T d¯ < 0,
T
B ū = g
ū ≥ 0.
Allora si può scrivere:
ū≥0
B d¯ ≥ 0 =⇒ ūT B d¯ ≥ 0
B T ū=g
=⇒
g T d¯ ≥ 0,
che contraddice l’ipotesi che d¯ soddisfi g T d¯ < 0.
[(I) non ha soluzione −→ (II) ha soluzione.] La dimostrazione di questa implicazione è
in due parti. Si dimostra preliminarmente che se (I) non ha soluzione allora esiste un vettore
u ∈ Rp tale ch B T u = g. Successivamente dimostreremo che u ≥ 0.
Se (I) non ha soluzione, allora in particolare non esiste una soluzione nemmeno al sistema di
equazioni lineari
Bd = 0
g T d = −1
[(I)eq].
Il sistema [(I)eq] si può scrivere in forma matriciale come segue:
Ã
B
gT
!
Ã
d=
0
−1
!
È noto che tale sistema non ha soluzione se e solo se
Ã
rango
e quindi se:
Ã
rango
B
gT
B
gT
!
0
−1
Ã
6= rango
B
gT
!
Ã
= rango
0
−1
B
gT
!
!
+ 1.
(8.1)
D’altra parte, l’ultima riga (g T − 1) è linearmente indipendente dalle righe di (B 0) e quindi:
Ã
rango
B
gT
0
1
!
³
= rango
´
B 0
+ 1 = rango(B) + 1.
(8.2)
Dalle (8.1) (8.2), tenendo conto del fatto che il rango di una matrice è eguale al rango della
trasposta, si ottiene
Ã
!
³
´
B
T
g = rango
rango B
= rango(B)
gT
e ciò implica che il sistema B T u = g ha soluzione, ovvero esiste una rappresentazione di g del
tipo:
g=
p
X
ui bi .
(8.3)
i=1
Dimostriamo ora che u ≥ 0.
La dimostrazione è per induzione sul numero di disequazioni che compongono il sistema,
ovvero sul numero di righe p della matrice B.
100
Dimostriamo innanzitutto che la tesi è vera per p = 1 e quindi supponiamo che
g T d < 0, bT1 d ≥ 0.
6∃d∈R:
Quindi per la (8.3) risulta g = ub1 con u ∈ R. Se c = 0, il risultato è ovvio in quanto si può
assumere u = 0. Se c 6= 0 deve anche essere b1 6= 0 e possiamo considerare il vettore d¯ = b1 6= 0.
Ne segue che bT1 d¯ = kb1 k2 > 0 e quindi, per ipotesi, deve risultare cT d¯ ≥ 0. Si ottiene quindi
g T d¯ = (ub1 )T (b1 ) = ukb1 k2 ≥ 0,
che implica u ≥ 0.
Supponiamo ora che il risultato sia vero per una matrice con p − 1 righe e dimostriamo che vale
per una matrice con p righe. Quindi supponiamo che:
non esista d ∈ Rn tale che Bd ≥ 0, g T d < 0
(8.4)
con B matrice p × n.
Sappiamo che esiste u ∈ Rp tale che vale la (8.3). Tra tutti i possibili u per cui vale la (8.3)
determiniamo un vettore ū con il massimo numero di componenti non negative e indichiamo con s
il numero di componenti non negative di ū. Riordiniamo le componenti di ū e conseguentemente
le colonne di B in modo che le componenti non negative siano le prime s, ovvero risulti
ū1 , . . . , ūs ≥ 0,
ūs+1 , . . . , ūp < 0.
Allora possiamo scrivere
g=
s
X
p−1
X
ūi bi +
i=1
ūi bi + ūp bp .
i=s+1
Si tratta di dimostrare che deve essere s = p. Per assurdo supponiamo che s < p.
Possiamo scrivere
g = ĝ +
m−1
X
ūi bi ,
(8.5)
ūi bi + ūp bp
(8.6)
i=s+1
avendo posto
ĝ =
s
X
i=1
La dimostrazione procede in due passi principali. Si dimostra inizialmente che
[Affermazione 1]
Se 6 ∃ d ∈ Rn :
Bd ≥ 0
cT d < 0
Successivamente che
101
=⇒
6 ∃ d ∈ Rn :
Bd ≥ 0
ĝ T d < 0
[Affermazione 2]
Se 6 ∃ d ∈ Rn :
Bd ≥ 0
ĝ T d < 0
6 ∃ d ∈ Rn :
=⇒
bTi d ≥ 0,
ĝ T d < 0.
i = 1, . . . , p − 1,
Se [Affermazione 1] e [Affermazione 2] sono vere, come conseguenza dell’ipotesi 8.4, si ha che
6 ∃ d ∈ Rn tale che bTi d ≥ 0 i = 1, . . . , p − 1 ĝ T d < 0.
(8.7)
Ma poiché il sistema (8.7) è di dimensione p − 1, soddisfa l’ipotesi induttiva e quindi esiste un
û ∈ Rp−1 tale che
ĝ =
p−1
X
ûi bi ,
ûi ≥ 0, i = 1, . . . , p − 1.
i=1
Sostituendo questa espressione di ĝ nella definizione (8.6) di c, si ottiene:
p−1
X
g = ĝ +
i=s+1
=
=
s
X
i=1
s
X
ûi bi +
ûi bi +
i=1
ūi bi =
p−1
X
p−1
X
ûi bi +
i=1
m−1
X
ūi bi
i=s+1
(ūi + ûi )bi
i=s+1
p−1
X
(ūi + ûi )bi + 0 · bp
i=s+1
Quindi c risulta essere la combinazione lineare dei vettori bi con s + 1 coefficienti non negativi
û1 , . . . , ûs , ûp = 0. Ma questo è assurdo perché per ipotesi avevamo supposto che s fosse il
massimo numero di coefficienti non negativi nella definizione di g.
Si tratta quindi di dimostrare che valgono le [Affermazione 1] e [Affermazione 2].
Dimostrazione [Affermazione 1]. Sia d tale che Bd ≥ 0, e quindi, per ipotesi g T d ≥ 0; moltiplicando scalarmente la (8.5) per d si ottiene
0 ≤ g T d = ĝ T d +
p−1
X
≥0
|{z}
ūi bTi d
per ogni d : b0i d ≥ 0 i = 1, . . . , p.
i=s+1
Poiché ūs+1 , . . . , ūp−1 < 0, la
p−1
X
ūi bTi d ≤ 0 e quindi deve essere necessariamente:
i=s+1
ĝ T d ≥ 0 per ogni d : Bd ≥ 0.
L’[Affermazione 1] è cosı́ dimostrata.
Dimostrazione [Affermazione 2]. Per definizione (8.6), ĝ è la combinazione lineare dei vettori bi
con coefficienti ū1 , . . . , ūs , 0, . . . , 0, ūp tutti non negativi tranne l’ultimo ūp . La dimostrazione è
102
per assurdo, quindi supponiamo che non sia vera, cioè che esista d¯ ∈ Rn tale che bTi d¯ ≥ 0 per
i = 1, . . . , p − 1 e ĝ T d¯ < 0. Per definizione di ĝ possiamo scrivere
ĝ T d¯ =
s
X
¯
ūi bTi d¯ + ūp bTp d.
i=1
Se bTi d¯ ≥ 0 per i = 1, . . . , p − 1, allora
s
X
ūi bTi d ≥ 0. D’altra parte ūp < 0 e quindi ĝ T d¯ < 0 se e
i=1
solo se risulta bTp d¯ > 0. Quindi d¯ è un vettore tale che
bTi d¯ ≥ 0 i = 1, . . . , p − 1
bTp d¯ > 0,
ma allora per ipotesi deve essere ĝ T d¯ ≥ 0 che contraddice ĝ T d¯ < 0. Quindi anche l’[Affermazione
2] è dimostrata.
103