Professional Documents
Culture Documents
HOME
Table of Contents
Duality theorems
Bounding the optimal value
As motivation for the dual, let’s discuss how we can bound the
optimal value of a linear program. Let’s stick to the case of
a
linear program in standard form. We’ll illustrate with the following
example:
Maximize x 1 − 2x 2
subject to
x 1 + 3x 2 ≤ 4
x 1 − 4x 2 ≤ 2
x1 , x2 ≥ 0
Lower bounds
Upper bounds
https://www.matem.unam.mx/~omar/math340/duality.html 1/11
10/4/21, 11:34 AM Duality theorems
Here’s one example of an upper bound we can prove for the optimal
value in the example LP:
Suppose x1 , x2 are a feasible solution of the LP. Then, x1 , x2 ≥ 0 and x 1 + 3x 2 ≤ 4 , from which we can
conclude that
x1 ≤ 4 —and 3x 2 ≤ 4 , or, x2 ≤
4
3
.
Because x1 ≤ 4 and x2 ≥ 0 , we conclude
z = x 1 − 2x 2 ≤ 4 .
How can we search for better (i.e., smaller) upper bounds? Here we
only used the first inequality in the LP (plus the
positivity
constraints), we can try combining both. For example, multiplying the
first constraint by 13 and the second by 23
and adding we get 1
3
(x 1 + 3x 2 ) +
2
3
(x 1 − 4x 2 ) ≤
4
3
+
4
3
, that is, x1 −
5
3
x2 ≤
8
3
. Since x2 ≥ 0 , we have
z = x 1 − 2x 2 ≤ x 1 −
5
3
x2 ≤
8
3
.
y 1 (x 1 + 3x 2 ) + y 2 (x 1 − 4x 2 ) ≤ 4y 1 + 2y 2 .
When will the left hand side be ≥ z ? Let’s regroup to see the
coefficients of x1 and x2 explicitly, we can rewrite the
inequality as:
(y 1 + y 2 )x 1 + (3y 1 − 4y 2 )x 2 ≤ 4y 1 + 2y 2 .
https://www.matem.unam.mx/~omar/math340/duality.html 2/11
10/4/21, 11:34 AM Duality theorems
y1 + y2 ≥ 1
Table of Contents
3y 1 − 4y 2 ≥ −2
We might now ask what is the best (i.e., smallest) upper bound
obtainable by this method? Well, the answer is given by the
optimal
value of the following LP called the dual of the original LP:
Minimize 4y 1 + 2y 2
subject to
y1 + y2 ≥ 1
3y 1 − 4y 2 ≥ −2
y1 , y2 ≥ 0
Maximize c 1 x 1 + c2 x2 + ⋯ cn xn
subject to
https://www.matem.unam.mx/~omar/math340/duality.html 3/11
10/4/21, 11:34 AM Duality theorems
a 11 x 1 + a 12 x 2 + ⋯ + a 1n x n ≤ b 1
Table of Contents
a 21 x 1 + a 22 x 2 + ⋯ + a 2n x n ≤ b 2
a m1 x 1 + a m2 x 2 + ⋯ + a mn x n ≤ b m
x1 , x2 , … , xn ≥ 0
is given by:
Minimize b 1 y 1 + b2 y2 + ⋯ bm ym
subject to
a 11 y 1 + a 21 y 2 + ⋯ + a m1 y m ≥ c 1
a 12 y 1 + a 22 y 2 + ⋯ + a m2 y m ≥ c 2
a 1n y 1 + a 2n y 2 + ⋯ + a mn y m ≥ c m
y1 , y2 , … , yn ≥ 0
Maximize c ⋅ x
Ax ≤ b
subject to
{
x ≥ 0
is the problem:
https://www.matem.unam.mx/~omar/math340/duality.html 4/11
10/4/21, 11:34 AM Duality theorems
⊤
A y ≥ c
subject to
{
y ≥ 0
Theorem.
Weak duality. Consider the following pair of dual linear programs:
Primal LP Dual LP
max c ⋅ x min b ⋅ y
subject to subject to
⊤
Ax ≤ b A y ≥ c
x ≥ 0 y ≥ 0
https://www.matem.unam.mx/~omar/math340/duality.html 5/11
10/4/21, 11:34 AM Duality theorems
Proof.
The first part, the part before “moreover”, we already proved at the
same time as we introduced the dual!
⊤ ⊤ ⊤ ⊤ ⊤
c x ≤ (A y) x = y Ax ≤ y b.
Where:
Then both primal and dual must have optimal solutions (say
x ∗ and y ∗ ) and the optimal
values of the objective functions
are equal (c ⋅ x ∗ = b ⋅ y ∗ , using the above
notation for the primal and dual).
https://www.matem.unam.mx/~omar/math340/duality.html 7/11
10/4/21, 11:34 AM Duality theorems
Proof.
We’ll first argue it is enough to show the following claim: Table of Contents
Notice that by the second part of the weak duality theorem, the
conclusion of the claim implies that y ∗ is optimal for
the
dual. So the claim is enough to show strong duality in case 1.
Case 2 is just case 1 applied to the dual problem, and case
3, by weak
duality implies that both primal and dual have optimal solutions, so
we can establish case 3 using either case 1
or 2.
Now we show the claim. Imagine we solve the primal problem by the
Simplex Method and we get as final dictionary the
one corresponding to
a basis x B . Then the final dictionary is
−1 −1
xB = A b − A AN xN
B B
⊤ −1 ⊤ ⊤ −1
z = c A b + (c − c A A N )x N
B B N B B
⊤ ⊤ −1
c − c A A N ≤ 0.
N B B
B
Aj (where Aj is
the j-th column of A
aug
, the column corresponding to
x j ). So we’ve learned that
cj − c
⊤
B
A
−1
B
Aj ≤ 0 for every j such that x j is non-basic in the final
dictionary.
We want to know that this inequality is also true for j’s such
that xj is a basic variable. Those inequalities for xj basic
put
together would say that
https://www.matem.unam.mx/~omar/math340/duality.html 8/11
10/4/21, 11:34 AM Duality theorems
⊤ ⊤ −1
c − c A A B ≤ 0,
B B B Table of Contents
B
Aj ≤ 0 for
every j. Now separate the variables into original variables and
slack
variables to get:
⊤ ⊤ −1
c − cB A A ≤ 0
B
⊤ ⊤ −1
0 − cB A I ≤ 0
B
⊤
The feasible solution of the dual that we seek is given by
y ∗ = c
⊤
B
A
−1
B
(so y
∗
= (A
−1
B
)
⊤
cB ). We just need to check it
really is
feasible for the dual and that c ⋅ x ∗ = b ⋅ y ∗ :
Main constraints:
≥ c is
equivalent to (???) (just transpose both sides of the
inequality).
⊤ ∗
A y
Positivity constraints:
≥ 0 is equivalent to
(???).
∗
y
B
)b, which, as you can see from the final
dictionary for the primal, is the optimal
Magic coefficients
https://www.matem.unam.mx/~omar/math340/duality.html 9/11
10/4/21, 11:34 AM Duality theorems
Notice from the proof (not just the statement!) of the strong
duality theorem that an optimal solution of the dual can
Table be read
of Contents
off
from the final dictionary for the primal! The proof shows you can take
y ∗ ⊤ = c
⊤
B
A
−1
B
as an optimal dual
solution, and
looking at how we obtained (???), we see we can
describe the vector c ⊤ B
A
−1
B
more intuitively as
minus the coefficients of
the (primal) slack variables in the
z-row of the final dictionary. We’ll call this phenomenon, magic
coefficients.
Maximize x 1 + 2x 2 − x 3
subject to
2x 1 + x 2 + x 3 ≤ 14
4x 1 + 2x 2 + 3x 3 ≤ 28
2x 1 + 5x 2 + 5x 3 ≤ 30
x1 , x2 , x3 ≥ 0
5 1
x1 = 5 − x4 + x6
8 8
1 1
x2 = 4 −x 3 + x4 − x6
4 4
x5 = 0 −x 3 +2x 4
1 3
z = 13 −3x 3 − x4 − x6
8 8
8
, 0, −
3
8
in the z-row (the
coefficient of x5 is 0
8
, y 2 = 0, y 3 =
3
8
is an2 optimal solution of
the dual.
https://www.matem.unam.mx/~omar/math340/duality.html 10/11
10/4/21, 11:34 AM Duality theorems
2 It’s not the only one! Can you find all of them without
using the Simplex Method on the dual?
https://www.matem.unam.mx/~omar/math340/duality.html 11/11