Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The...

69
Math 407: Linear Optimization The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness Math 407: Linear Optimization 1 / 23

Transcript of Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The...

Page 1: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Math 407: Linear Optimization

The Fundamental Theorem of Linear ProgrammingThe Strong Duality Theorem

Complementary Slackness

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 1 / 23

Page 2: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

1 The Two Phase Simples Algorithm

2 The Fundamental Theorem of linear Programming

3 Duality Theory Revisited

4 Complementary Slackness

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 2 / 23

Page 3: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

The Two Phase Simplex Algorithm

Phase I Formulate and solve the auxiliary problem. Two outcomes arepossible:

(i) The optimal value in the auxiliary problem is positive. In thiscase the original problem is infeasible.

(ii) The optimal value is zero and an initial feasible tableau for theoriginal problem is obtained.

Phase II If the original problem is feasible, apply the simplex algorithm tothe initial feasible tableau obtained from Phase I above. Again, twooutcomes are possible:

(i) The LP is determined to be unbounded.(ii) An optimal basic feasible solution is obtained.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 3 / 23

Page 4: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

The Two Phase Simplex Algorithm

Phase I Formulate and solve the auxiliary problem. Two outcomes arepossible:

(i) The optimal value in the auxiliary problem is positive. In thiscase the original problem is infeasible.

(ii) The optimal value is zero and an initial feasible tableau for theoriginal problem is obtained.

Phase II If the original problem is feasible, apply the simplex algorithm tothe initial feasible tableau obtained from Phase I above. Again, twooutcomes are possible:

(i) The LP is determined to be unbounded.(ii) An optimal basic feasible solution is obtained.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 3 / 23

Page 5: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

The Two Phase Simplex Algorithm

Phase I Formulate and solve the auxiliary problem. Two outcomes arepossible:

(i) The optimal value in the auxiliary problem is positive. In thiscase the original problem is infeasible.

(ii) The optimal value is zero and an initial feasible tableau for theoriginal problem is obtained.

Phase II If the original problem is feasible, apply the simplex algorithm tothe initial feasible tableau obtained from Phase I above. Again, twooutcomes are possible:

(i) The LP is determined to be unbounded.(ii) An optimal basic feasible solution is obtained.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 3 / 23

Page 6: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

The Two Phase Simplex Algorithm

Phase I Formulate and solve the auxiliary problem. Two outcomes arepossible:

(i) The optimal value in the auxiliary problem is positive. In thiscase the original problem is infeasible.

(ii) The optimal value is zero and an initial feasible tableau for theoriginal problem is obtained.

Phase II If the original problem is feasible, apply the simplex algorithm tothe initial feasible tableau obtained from Phase I above. Again, twooutcomes are possible:

(i) The LP is determined to be unbounded.(ii) An optimal basic feasible solution is obtained.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 3 / 23

Page 7: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

The Two Phase Simplex Algorithm

Phase I Formulate and solve the auxiliary problem. Two outcomes arepossible:

(i) The optimal value in the auxiliary problem is positive. In thiscase the original problem is infeasible.

(ii) The optimal value is zero and an initial feasible tableau for theoriginal problem is obtained.

Phase II If the original problem is feasible, apply the simplex algorithm tothe initial feasible tableau obtained from Phase I above. Again, twooutcomes are possible:

(i) The LP is determined to be unbounded.

(ii) An optimal basic feasible solution is obtained.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 3 / 23

Page 8: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

The Two Phase Simplex Algorithm

Phase I Formulate and solve the auxiliary problem. Two outcomes arepossible:

(i) The optimal value in the auxiliary problem is positive. In thiscase the original problem is infeasible.

(ii) The optimal value is zero and an initial feasible tableau for theoriginal problem is obtained.

Phase II If the original problem is feasible, apply the simplex algorithm tothe initial feasible tableau obtained from Phase I above. Again, twooutcomes are possible:

(i) The LP is determined to be unbounded.(ii) An optimal basic feasible solution is obtained.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 3 / 23

Page 9: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

The Fundamental Theorem of linear Programming

Theorem:Every LP has the following three properties:

(i) If it has no optimal solution, then it is either infeasible or unbounded.

(ii) If it has a feasible solution, then it has a basic feasible solution.

(iii) If it is feasible and bounded, then it has an optimal basic feasible solution.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 4 / 23

Page 10: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

The Fundamental Theorem of linear Programming

Theorem:Every LP has the following three properties:

(i) If it has no optimal solution, then it is either infeasible or unbounded.

(ii) If it has a feasible solution, then it has a basic feasible solution.

(iii) If it is feasible and bounded, then it has an optimal basic feasible solution.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 4 / 23

Page 11: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

The Fundamental Theorem of linear Programming

Theorem:Every LP has the following three properties:

(i) If it has no optimal solution, then it is either infeasible or unbounded.

(ii) If it has a feasible solution, then it has a basic feasible solution.

(iii) If it is feasible and bounded, then it has an optimal basic feasible solution.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 4 / 23

Page 12: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

The Fundamental Theorem of linear Programming

Theorem:Every LP has the following three properties:

(i) If it has no optimal solution, then it is either infeasible or unbounded.

(ii) If it has a feasible solution, then it has a basic feasible solution.

(iii) If it is feasible and bounded, then it has an optimal basic feasible solution.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 4 / 23

Page 13: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Duality Theory

P maximize cT xsubject to Ax ≤ b, 0 ≤ x

D minimize bT ysubject to AT y ≥ c , 0 ≤ y

What is the dual to the dual?

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 5 / 23

Page 14: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Duality Theory

P maximize cT xsubject to Ax ≤ b, 0 ≤ x

D minimize bT ysubject to AT y ≥ c , 0 ≤ y

What is the dual to the dual?

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 5 / 23

Page 15: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

The Dual of the Dual

minimize bT ysubject to AT y ≥ c ,

0 ≤ y

Standard=⇒form

−maximize (−b)T ysubject to (−AT )y ≤ (−c),

0 ≤ y .

minimize (−c)T xsubject to (−AT )T x ≥ (−b),

0 ≤ x=⇒

maximize cT xsubject to Ax ≤ b,

0 ≤ x .

The dual of the dual is the primal.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 6 / 23

Page 16: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

The Dual of the Dual

minimize bT ysubject to AT y ≥ c ,

0 ≤ y

Standard=⇒form

−maximize (−b)T ysubject to (−AT )y ≤ (−c),

0 ≤ y .

minimize (−c)T xsubject to (−AT )T x ≥ (−b),

0 ≤ x=⇒

maximize cT xsubject to Ax ≤ b,

0 ≤ x .

The dual of the dual is the primal.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 6 / 23

Page 17: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

The Dual of the Dual

minimize bT ysubject to AT y ≥ c ,

0 ≤ y

Standard=⇒form

−maximize (−b)T ysubject to (−AT )y ≤ (−c),

0 ≤ y .

minimize (−c)T xsubject to (−AT )T x ≥ (−b),

0 ≤ x=⇒

maximize cT xsubject to Ax ≤ b,

0 ≤ x .

The dual of the dual is the primal.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 6 / 23

Page 18: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

The Dual of the Dual

minimize bT ysubject to AT y ≥ c ,

0 ≤ y

Standard=⇒form

−maximize (−b)T ysubject to (−AT )y ≤ (−c),

0 ≤ y .

minimize (−c)T xsubject to (−AT )T x ≥ (−b),

0 ≤ x

=⇒maximize cT xsubject to Ax ≤ b,

0 ≤ x .

The dual of the dual is the primal.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 6 / 23

Page 19: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

The Dual of the Dual

minimize bT ysubject to AT y ≥ c ,

0 ≤ y

Standard=⇒form

−maximize (−b)T ysubject to (−AT )y ≤ (−c),

0 ≤ y .

minimize (−c)T xsubject to (−AT )T x ≥ (−b),

0 ≤ x=⇒

maximize cT xsubject to Ax ≤ b,

0 ≤ x .

The dual of the dual is the primal.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 6 / 23

Page 20: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

The Dual of the Dual

minimize bT ysubject to AT y ≥ c ,

0 ≤ y

Standard=⇒form

−maximize (−b)T ysubject to (−AT )y ≤ (−c),

0 ≤ y .

minimize (−c)T xsubject to (−AT )T x ≥ (−b),

0 ≤ x=⇒

maximize cT xsubject to Ax ≤ b,

0 ≤ x .

The dual of the dual is the primal.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 6 / 23

Page 21: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

The Weak Duality Theorem

Theorem:If x ∈ Rn is feasible for P and y ∈ Rm is feasible for D, then

cT x ≤ yTAx ≤ bT y .

Thus, if P is unbounded, then D is necessarily infeasible, and if D is unbounded,then P is necessarily infeasible. Moreover, if cT x = bT y with x feasible for P andy feasible for D, then x must solve P and y must solve D.

We combine the Weak Duality Theorem with the Fundamental Theorem of LinearProgramming to obtain the Strong Duality Theorem.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 7 / 23

Page 22: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

The Weak Duality Theorem

Theorem:If x ∈ Rn is feasible for P and y ∈ Rm is feasible for D, then

cT x ≤ yTAx ≤ bT y .

Thus, if P is unbounded, then D is necessarily infeasible, and if D is unbounded,then P is necessarily infeasible. Moreover, if cT x = bT y with x feasible for P andy feasible for D, then x must solve P and y must solve D.

We combine the Weak Duality Theorem with the Fundamental Theorem of LinearProgramming to obtain the Strong Duality Theorem.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 7 / 23

Page 23: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

The Strong Duality Theorem

Theorem:If either P or D has a finite optimal value, then so does the other, the optimalvalues coincide, and optimal solutions to both P and D exist.

Remark: In general a finite optimal value does not imply the existence of asolution.

min f (x) = ex

The optimal value is zero, but no solution exists.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 8 / 23

Page 24: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

The Strong Duality Theorem

Theorem:If either P or D has a finite optimal value, then so does the other, the optimalvalues coincide, and optimal solutions to both P and D exist.

Remark: In general a finite optimal value does not imply the existence of asolution.

min f (x) = ex

The optimal value is zero, but no solution exists.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 8 / 23

Page 25: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

The Strong Duality Theorem

Proof:Since the dual of the dual is the primal, we may as well assume that the primalhas a finite optimal value.

The Fundamental Theorem of Linear Programming says that an optimal basicfeasible solution exists.

The optimal tableau is RA R Rb

cT − yTA −yT −yTb

,

where we have already seen that y solves D, and the optimal values coincide.

This concludes the proof.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 9 / 23

Page 26: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

The Strong Duality Theorem

Proof:Since the dual of the dual is the primal, we may as well assume that the primalhas a finite optimal value.

The Fundamental Theorem of Linear Programming says that an optimal basicfeasible solution exists.

The optimal tableau is RA R Rb

cT − yTA −yT −yTb

,

where we have already seen that y solves D, and the optimal values coincide.

This concludes the proof.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 9 / 23

Page 27: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

The Strong Duality Theorem

Proof:Since the dual of the dual is the primal, we may as well assume that the primalhas a finite optimal value.

The Fundamental Theorem of Linear Programming says that an optimal basicfeasible solution exists.

The optimal tableau is RA R Rb

cT − yTA −yT −yTb

,

where we have already seen that y solves D, and the optimal values coincide.

This concludes the proof.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 9 / 23

Page 28: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

The Strong Duality Theorem

Proof:Since the dual of the dual is the primal, we may as well assume that the primalhas a finite optimal value.

The Fundamental Theorem of Linear Programming says that an optimal basicfeasible solution exists.

The optimal tableau is RA R Rb

cT − yTA −yT −yTb

,

where we have already seen that y solves D, and the optimal values coincide.

This concludes the proof.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 9 / 23

Page 29: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Complementary Slackness

Theorem: [WDT]If x ∈ Rn is feasible for P and y ∈ Rm is feasible for D, then

cT x ≤ yTAx ≤ bT y .

Thus, if P is unbounded, then D is necessarily infeasible, and if D is unbounded,then P is necessarily infeasible. Moreover, if cT x = bT y with x feasible for P andy feasible for D, then x must solve P and y must solve D.

The SDT implies that x solves P and y solves D if and only if (x , y) is a P-Dfeasible pair and

cT x = yTAx = bT y .

We now examine the consequence of this equivalence.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 10 / 23

Page 30: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Complementary Slackness

Theorem: [WDT]If x ∈ Rn is feasible for P and y ∈ Rm is feasible for D, then

cT x ≤ yTAx ≤ bT y .

Thus, if P is unbounded, then D is necessarily infeasible, and if D is unbounded,then P is necessarily infeasible. Moreover, if cT x = bT y with x feasible for P andy feasible for D, then x must solve P and y must solve D.

The SDT implies that x solves P and y solves D if and only if (x , y) is a P-Dfeasible pair and

cT x = yTAx = bT y .

We now examine the consequence of this equivalence.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 10 / 23

Page 31: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Complementary Slackness

Theorem: [WDT]If x ∈ Rn is feasible for P and y ∈ Rm is feasible for D, then

cT x ≤ yTAx ≤ bT y .

Thus, if P is unbounded, then D is necessarily infeasible, and if D is unbounded,then P is necessarily infeasible. Moreover, if cT x = bT y with x feasible for P andy feasible for D, then x must solve P and y must solve D.

The SDT implies that x solves P and y solves D if and only if (x , y) is a P-Dfeasible pair and

cT x = yTAx = bT y .

We now examine the consequence of this equivalence.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 10 / 23

Page 32: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Complementary Slackness

The equation cT x = yTAx implies that

0 = xT (AT y − c) =n∑

j=1

xj(m∑i=1

aijyi − cj). (♣)

P-D feasibility gives

0 ≤ xj and 0 ≤m∑i=1

aijyi − cj for j = 1, . . . , n.

Hence, (♣) can only hold if

xj(m∑i=1

aijyi − cj) = 0 for j = 1, . . . , n, or equivalently,

xj = 0 orm∑i=1

aijyi = cj or both for j = 1, . . . , n.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 11 / 23

Page 33: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Complementary Slackness

The equation cT x = yTAx implies that

0 = xT (AT y − c) =n∑

j=1

xj(m∑i=1

aijyi − cj). (♣)

P-D feasibility gives

0 ≤ xj and 0 ≤m∑i=1

aijyi − cj for j = 1, . . . , n.

Hence, (♣) can only hold if

xj(m∑i=1

aijyi − cj) = 0 for j = 1, . . . , n, or equivalently,

xj = 0 orm∑i=1

aijyi = cj or both for j = 1, . . . , n.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 11 / 23

Page 34: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Complementary Slackness

The equation cT x = yTAx implies that

0 = xT (AT y − c) =n∑

j=1

xj(m∑i=1

aijyi − cj). (♣)

P-D feasibility gives

0 ≤ xj and 0 ≤m∑i=1

aijyi − cj for j = 1, . . . , n.

Hence, (♣) can only hold if

xj(m∑i=1

aijyi − cj) = 0 for j = 1, . . . , n, or equivalently,

xj = 0 orm∑i=1

aijyi = cj or both for j = 1, . . . , n.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 11 / 23

Page 35: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Complementary Slackness

Similarly, the equation yTAx = bT y implies that

0 = yT (b − Ax) =m∑i=1

yi (bi −n∑

j=1

aijxj).

(0 ≤ yi

0 ≤ bi −∑n

j=1 aijxj

)

Therefore, yi (bi −∑n

j=1 aijxj) = 0 i = 1, 2, . . . ,m.

Hence,

yi = 0 orn∑

j=1

aijxj = bi or both for i = 1, . . . ,m.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 12 / 23

Page 36: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Complementary Slackness

Similarly, the equation yTAx = bT y implies that

0 = yT (b − Ax) =m∑i=1

yi (bi −n∑

j=1

aijxj).

(0 ≤ yi

0 ≤ bi −∑n

j=1 aijxj

)

Therefore, yi (bi −∑n

j=1 aijxj) = 0 i = 1, 2, . . . ,m.

Hence,

yi = 0 orn∑

j=1

aijxj = bi or both for i = 1, . . . ,m.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 12 / 23

Page 37: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Complementary Slackness

Similarly, the equation yTAx = bT y implies that

0 = yT (b − Ax) =m∑i=1

yi (bi −n∑

j=1

aijxj).

(0 ≤ yi

0 ≤ bi −∑n

j=1 aijxj

)

Therefore, yi (bi −∑n

j=1 aijxj) = 0 i = 1, 2, . . . ,m.

Hence,

yi = 0 orn∑

j=1

aijxj = bi or both for i = 1, . . . ,m.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 12 / 23

Page 38: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Complementary Slackness

cT x = yTAx = bT y

⇐⇒

xj = 0 or∑m

i=1 aijyi = cj or both for j = 1, . . . , n.

yi = 0 or∑n

j=1 aijxj = bi or both for i = 1, . . . ,m.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 13 / 23

Page 39: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Complementary Slackness

cT x = yTAx = bT y

⇐⇒

xj = 0 or∑m

i=1 aijyi = cj or both for j = 1, . . . , n.

yi = 0 or∑n

j=1 aijxj = bi or both for i = 1, . . . ,m.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 13 / 23

Page 40: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Complementary Slackness

cT x = yTAx = bT y

⇐⇒

xj = 0 or∑m

i=1 aijyi = cj or both for j = 1, . . . , n.

yi = 0 or∑n

j=1 aijxj = bi or both for i = 1, . . . ,m.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 13 / 23

Page 41: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Complementary Slackness Theorem

Theorem:The vector x ∈ Rn solves P and the vector y ∈ Rm solves D if and only if x isfeasible for P and y is feasible for D and

(i) either 0 = xj orm∑i=1

aijyi = cj or both for j = 1, . . . , n, and

(ii) either 0 = yi orn∑

j=1

aijxj = bi or both for i = 1, . . . ,m.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 14 / 23

Page 42: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Corollary to the Complementary Slackness Theorem

Corollary:The vector x ∈ Rn solves P if and only if x is feasible for P and there exists avector y ∈ Rm feasible for D and such that

(i) ifn∑

j=1

aijxj < b, then yi = 0, for i = 1, . . . ,m and

(ii) if 0 < xj , thenm∑i=1

aijyi = cj , for j = 1, . . . , n.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 15 / 23

Page 43: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

Does

x = (x1, x2, x3, x4, x5) = (0,4

3,

2

3,

5

3, 0)

solve the LP

maximize 7x1 + 6x2 + 5x3 − 2x4 + 3x5

subject to x1 + 3x2 + 5x3 − 2x4 + 2x5 ≤ 4

: y1

4x1 + 2x2 − 2x3 + x4 + x5 ≤ 3

: y2

2x1 + 4x2 + 4x3 − 2x4 + 5x5 ≤ 5

: y3

3x1 + x2 + 2x3 − x4 − 2x5 ≤ 1

: y4

0 ≤ x1, x2, x3, x4, x5.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 16 / 23

Page 44: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

Does

x = (x1, x2, x3, x4, x5) = (0,4

3,

2

3,

5

3, 0)

solve the LP

maximize 7x1 + 6x2 + 5x3 − 2x4 + 3x5

subject to x1 + 3x2 + 5x3 − 2x4 + 2x5 ≤ 4 : y1

4x1 + 2x2 − 2x3 + x4 + x5 ≤ 3 : y2

2x1 + 4x2 + 4x3 − 2x4 + 5x5 ≤ 5 : y3

3x1 + x2 + 2x3 − x4 − 2x5 ≤ 1 : y40 ≤ x1, x2, x3, x4, x5.

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 16 / 23

Page 45: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

The point

x = (x1, x2, x3, x4, x5) = (0,4

3,

2

3,

5

3, 0)

must be feasible for the LP.

Plugging into the constraints we get

(0) + 3(43

)+ 5

(23

)− 2

(53

)+ 2(0) = 4

4(0) + 2(43

)− 2

(23

)+

(53

)+ (0) = 3

2(0) + 4(43

)+ 4

(23

)− 2

(53

)+ 5(0) < 5

3(0) +(43

)+ 2

(23

)−

(53

)− 2(0) = 1.

Can we use this information to construct a solution to the dual problem,(y1, y2, y3, y4)?

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 17 / 23

Page 46: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

The point

x = (x1, x2, x3, x4, x5) = (0,4

3,

2

3,

5

3, 0)

must be feasible for the LP.Plugging into the constraints we get

(0) + 3(43

)+ 5

(23

)− 2

(53

)+ 2(0) = 4

4(0) + 2(43

)− 2

(23

)+

(53

)+ (0) = 3

2(0) + 4(43

)+ 4

(23

)− 2

(53

)+ 5(0) < 5

3(0) +(43

)+ 2

(23

)−

(53

)− 2(0) = 1.

Can we use this information to construct a solution to the dual problem,(y1, y2, y3, y4)?

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 17 / 23

Page 47: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

The point

x = (x1, x2, x3, x4, x5) = (0,4

3,

2

3,

5

3, 0)

must be feasible for the LP.Plugging into the constraints we get

(0) + 3(43

)+ 5

(23

)− 2

(53

)+ 2(0) = 4

4(0) + 2(43

)− 2

(23

)+

(53

)+ (0) = 3

2(0) + 4(43

)+ 4

(23

)− 2

(53

)+ 5(0) < 5

3(0) +(43

)+ 2

(23

)−

(53

)− 2(0) = 1.

Can we use this information to construct a solution to the dual problem,(y1, y2, y3, y4)?

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 17 / 23

Page 48: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

Recall that

ifn∑

j=1

aijxj < b, then yi = 0, for i = 1, . . . ,m.

We have just showed that

(0) + 3(43

)+ 5

(23

)− 2

(53

)+ 2(0) = 4

: y1

4(0) + 2(43

)− 2

(23

)+

(53

)+ (0) = 3

: y2

2(0) + 4(43

)+ 4

(23

)− 2

(53

)+ 5(0) < 5

: y3

= 0

3(0) +(43

)+ 2

(23

)−

(53

)− 2(0) = 1

: y4

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 18 / 23

Page 49: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

Recall that

ifn∑

j=1

aijxj < b, then yi = 0, for i = 1, . . . ,m.

We have just showed that

(0) + 3(43

)+ 5

(23

)− 2

(53

)+ 2(0) = 4

: y1

4(0) + 2(43

)− 2

(23

)+

(53

)+ (0) = 3

: y2

2(0) + 4(43

)+ 4

(23

)− 2

(53

)+ 5(0) < 5

: y3

= 0

3(0) +(43

)+ 2

(23

)−

(53

)− 2(0) = 1

: y4

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 18 / 23

Page 50: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

Recall that

ifn∑

j=1

aijxj < b, then yi = 0, for i = 1, . . . ,m.

We have just showed that

(0) + 3(43

)+ 5

(23

)− 2

(53

)+ 2(0) = 4 : y1

4(0) + 2(43

)− 2

(23

)+

(53

)+ (0) = 3 : y2

2(0) + 4(43

)+ 4

(23

)− 2

(53

)+ 5(0) < 5 : y3

= 0

3(0) +(43

)+ 2

(23

)−

(53

)− 2(0) = 1 : y4

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 18 / 23

Page 51: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

Recall that

ifn∑

j=1

aijxj < b, then yi = 0, for i = 1, . . . ,m.

We have just showed that

(0) + 3(43

)+ 5

(23

)− 2

(53

)+ 2(0) = 4 : y1

4(0) + 2(43

)− 2

(23

)+

(53

)+ (0) = 3 : y2

2(0) + 4(43

)+ 4

(23

)− 2

(53

)+ 5(0) < 5 : y3= 0

3(0) +(43

)+ 2

(23

)−

(53

)− 2(0) = 1 : y4

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 18 / 23

Page 52: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

Also recall that

if 0 < xj , thenm∑i=1

aijyi = cj , for j = 1, . . . , n.

Hence,

3y1 + 2y2 + 4y3 + y4 = 6 (since x2 = 43 > 0)

5y1 − 2y2 + 4y3 + 2y4 = 5 (since x3 = 23 > 0)

− 2y1 + y2 − 2y3 − y4 = −2 (since x4 = 53 > 0)

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 19 / 23

Page 53: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

Also recall that

if 0 < xj , thenm∑i=1

aijyi = cj , for j = 1, . . . , n.

Hence,

3y1 + 2y2 + 4y3 + y4 = 6 (since x2 = 43 > 0)

5y1 − 2y2 + 4y3 + 2y4 = 5 (since x3 = 23 > 0)

− 2y1 + y2 − 2y3 − y4 = −2 (since x4 = 53 > 0)

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 19 / 23

Page 54: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

Also recall that

if 0 < xj , thenm∑i=1

aijyi = cj , for j = 1, . . . , n.

Hence,

3y1 + 2y2 + 4y3 + y4 = 6 (since x2 = 43 > 0)

5y1 − 2y2 + 4y3 + 2y4 = 5 (since x3 = 23 > 0)

− 2y1 + y2 − 2y3 − y4 = −2 (since x4 = 53 > 0)

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 19 / 23

Page 55: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

Also recall that

if 0 < xj , thenm∑i=1

aijyi = cj , for j = 1, . . . , n.

Hence,

3y1 + 2y2 + 4y3 + y4 = 6 (since x2 = 43 > 0)

5y1 − 2y2 + 4y3 + 2y4 = 5 (since x3 = 23 > 0)

− 2y1 + y2 − 2y3 − y4 = −2 (since x4 = 53 > 0)

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 19 / 23

Page 56: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

Also recall that

if 0 < xj , thenm∑i=1

aijyi = cj , for j = 1, . . . , n.

Hence,

3y1 + 2y2 + 4y3 + y4 = 6 (since x2 = 43 > 0)

5y1 − 2y2 + 4y3 + 2y4 = 5 (since x3 = 23 > 0)

− 2y1 + y2 − 2y3 − y4 = −2 (since x4 = 53 > 0)

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 19 / 23

Page 57: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

Combining these observations gives the system3 2 4 15 −2 4 2−2 1 −2 −10 0 1 0

y1y2y3y4

=

65−20

,

which any dual solution must satisfy.

This is a square system that we can try to solve for y .

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 20 / 23

Page 58: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

Combining these observations gives the system3 2 4 15 −2 4 2−2 1 −2 −10 0 1 0

y1y2y3y4

=

65−20

,

which any dual solution must satisfy.This is a square system that we can try to solve for y .

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 20 / 23

Page 59: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

3 2 4 1 65 −2 4 2 5

−2 1 −2 −1 −20 0 1 0 03 2 0 1 6 r1 − 4r45 −2 0 2 5 r2 − 4r4

−2 1 0 −1 −2 r3 + 2r40 0 1 0 01 3 0 0 4 r1 + r31 0 0 0 1 r2 + 2r3

−2 1 0 −1 −20 0 1 0 0

1 3 0 0 4 r1 + r31 0 0 0 1 r2 + 2r3

−2 1 0 −1 −20 0 1 0 00 3 0 0 3 r1 − r21 0 0 0 10 1 0 −1 0 r3 + 2r20 0 1 0 01 0 0 0 1 r20 1 0 0 1 1

3r1

0 0 1 0 0 r40 0 0 1 1 −r3 + 1

3r1

This gives the solution (y1, y2, y3, y4) = (1, 1, 0, 1).

Is this dual feasible?

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 21 / 23

Page 60: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

3 2 4 1 65 −2 4 2 5

−2 1 −2 −1 −20 0 1 0 03 2 0 1 6 r1 − 4r45 −2 0 2 5 r2 − 4r4

−2 1 0 −1 −2 r3 + 2r40 0 1 0 01 3 0 0 4 r1 + r31 0 0 0 1 r2 + 2r3

−2 1 0 −1 −20 0 1 0 0

1 3 0 0 4 r1 + r31 0 0 0 1 r2 + 2r3

−2 1 0 −1 −20 0 1 0 00 3 0 0 3 r1 − r21 0 0 0 10 1 0 −1 0 r3 + 2r20 0 1 0 01 0 0 0 1 r20 1 0 0 1 1

3r1

0 0 1 0 0 r40 0 0 1 1 −r3 + 1

3r1

This gives the solution (y1, y2, y3, y4) = (1, 1, 0, 1).

Is this dual feasible?

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 21 / 23

Page 61: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

3 2 4 1 65 −2 4 2 5

−2 1 −2 −1 −20 0 1 0 03 2 0 1 6 r1 − 4r45 −2 0 2 5 r2 − 4r4

−2 1 0 −1 −2 r3 + 2r40 0 1 0 01 3 0 0 4 r1 + r31 0 0 0 1 r2 + 2r3

−2 1 0 −1 −20 0 1 0 0

1 3 0 0 4 r1 + r31 0 0 0 1 r2 + 2r3

−2 1 0 −1 −20 0 1 0 00 3 0 0 3 r1 − r21 0 0 0 10 1 0 −1 0 r3 + 2r20 0 1 0 01 0 0 0 1 r20 1 0 0 1 1

3r1

0 0 1 0 0 r40 0 0 1 1 −r3 + 1

3r1

This gives the solution (y1, y2, y3, y4) = (1, 1, 0, 1).

Is this dual feasible?

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 21 / 23

Page 62: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

3 2 4 1 65 −2 4 2 5

−2 1 −2 −1 −20 0 1 0 03 2 0 1 6 r1 − 4r45 −2 0 2 5 r2 − 4r4

−2 1 0 −1 −2 r3 + 2r40 0 1 0 01 3 0 0 4 r1 + r31 0 0 0 1 r2 + 2r3

−2 1 0 −1 −20 0 1 0 0

1 3 0 0 4 r1 + r31 0 0 0 1 r2 + 2r3

−2 1 0 −1 −20 0 1 0 00 3 0 0 3 r1 − r21 0 0 0 10 1 0 −1 0 r3 + 2r20 0 1 0 01 0 0 0 1 r20 1 0 0 1 1

3r1

0 0 1 0 0 r40 0 0 1 1 −r3 + 1

3r1

This gives the solution (y1, y2, y3, y4) = (1, 1, 0, 1).

Is this dual feasible?

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 21 / 23

Page 63: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

y = (y1, y2, y3, y4) = (1, 1, 0, 1)

minimize 4y1 + 3y2 + 5y3 + y4subject to y1 + 4y2 + 2y3 + 3y4 ≥ 7

3y1 + 2y2 + 4y3 + y4 ≥ 65y1 − 2y2 + 4y3 + 2y4 ≥ 5

−2y1 + y2 − 2y3 − y4 ≥ −22y1 + y2 + 5y3 − 2y4 ≥ 3

0 ≤ y1, y2, y3, y4.

Clearly, 0 ≤ y and by construction the 2nd, 3rd, and 4th of the linear inequalityconstraints are satisfied with equality.

We need to check the first and inequalities.

First: 1 + 4 + 0 + 3 = 8 > 7Fifth: 2 + 1 + 0− 2 = 1 6≥ 3, the fifth dual inequality is violated.Hence, x = (0, 4

3 ,23 ,

53 , 0) cannot be optimal!

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 22 / 23

Page 64: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

y = (y1, y2, y3, y4) = (1, 1, 0, 1)

minimize 4y1 + 3y2 + 5y3 + y4subject to y1 + 4y2 + 2y3 + 3y4 ≥ 7

3y1 + 2y2 + 4y3 + y4 ≥ 65y1 − 2y2 + 4y3 + 2y4 ≥ 5

−2y1 + y2 − 2y3 − y4 ≥ −22y1 + y2 + 5y3 − 2y4 ≥ 3

0 ≤ y1, y2, y3, y4.

Clearly, 0 ≤ y and by construction the 2nd, 3rd, and 4th of the linear inequalityconstraints are satisfied with equality.

We need to check the first and inequalities.

First: 1 + 4 + 0 + 3 = 8 > 7Fifth: 2 + 1 + 0− 2 = 1 6≥ 3, the fifth dual inequality is violated.Hence, x = (0, 4

3 ,23 ,

53 , 0) cannot be optimal!

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 22 / 23

Page 65: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

y = (y1, y2, y3, y4) = (1, 1, 0, 1)

minimize 4y1 + 3y2 + 5y3 + y4subject to y1 + 4y2 + 2y3 + 3y4 ≥ 7

3y1 + 2y2 + 4y3 + y4 ≥ 65y1 − 2y2 + 4y3 + 2y4 ≥ 5

−2y1 + y2 − 2y3 − y4 ≥ −22y1 + y2 + 5y3 − 2y4 ≥ 3

0 ≤ y1, y2, y3, y4.

Clearly, 0 ≤ y and by construction the 2nd, 3rd, and 4th of the linear inequalityconstraints are satisfied with equality.

We need to check the first and inequalities.

First: 1 + 4 + 0 + 3 = 8 > 7Fifth: 2 + 1 + 0− 2 = 1 6≥ 3, the fifth dual inequality is violated.Hence, x = (0, 4

3 ,23 ,

53 , 0) cannot be optimal!

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 22 / 23

Page 66: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

y = (y1, y2, y3, y4) = (1, 1, 0, 1)

minimize 4y1 + 3y2 + 5y3 + y4subject to y1 + 4y2 + 2y3 + 3y4 ≥ 7

3y1 + 2y2 + 4y3 + y4 ≥ 65y1 − 2y2 + 4y3 + 2y4 ≥ 5

−2y1 + y2 − 2y3 − y4 ≥ −22y1 + y2 + 5y3 − 2y4 ≥ 3

0 ≤ y1, y2, y3, y4.

Clearly, 0 ≤ y and by construction the 2nd, 3rd, and 4th of the linear inequalityconstraints are satisfied with equality.

We need to check the first and inequalities.

First: 1 + 4 + 0 + 3 = 8 > 7

Fifth: 2 + 1 + 0− 2 = 1 6≥ 3, the fifth dual inequality is violated.Hence, x = (0, 4

3 ,23 ,

53 , 0) cannot be optimal!

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 22 / 23

Page 67: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

y = (y1, y2, y3, y4) = (1, 1, 0, 1)

minimize 4y1 + 3y2 + 5y3 + y4subject to y1 + 4y2 + 2y3 + 3y4 ≥ 7

3y1 + 2y2 + 4y3 + y4 ≥ 65y1 − 2y2 + 4y3 + 2y4 ≥ 5

−2y1 + y2 − 2y3 − y4 ≥ −22y1 + y2 + 5y3 − 2y4 ≥ 3

0 ≤ y1, y2, y3, y4.

Clearly, 0 ≤ y and by construction the 2nd, 3rd, and 4th of the linear inequalityconstraints are satisfied with equality.

We need to check the first and inequalities.

First: 1 + 4 + 0 + 3 = 8 > 7Fifth: 2 + 1 + 0− 2 = 1 6≥ 3, the fifth dual inequality is violated.

Hence, x = (0, 43 ,

23 ,

53 , 0) cannot be optimal!

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 22 / 23

Page 68: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Testing Optimality via Complementary Slackness

y = (y1, y2, y3, y4) = (1, 1, 0, 1)

minimize 4y1 + 3y2 + 5y3 + y4subject to y1 + 4y2 + 2y3 + 3y4 ≥ 7

3y1 + 2y2 + 4y3 + y4 ≥ 65y1 − 2y2 + 4y3 + 2y4 ≥ 5

−2y1 + y2 − 2y3 − y4 ≥ −22y1 + y2 + 5y3 − 2y4 ≥ 3

0 ≤ y1, y2, y3, y4.

Clearly, 0 ≤ y and by construction the 2nd, 3rd, and 4th of the linear inequalityconstraints are satisfied with equality.

We need to check the first and inequalities.

First: 1 + 4 + 0 + 3 = 8 > 7Fifth: 2 + 1 + 0− 2 = 1 6≥ 3, the fifth dual inequality is violated.Hence, x = (0, 4

3 ,23 ,

53 , 0) cannot be optimal!

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 22 / 23

Page 69: Math 407A: Linear Optimizationburke/crs/407/lectures/L9-strong-duality.pdf · Lecture 9 The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary Slackness

Example: Testing Optimality via Complementary Slackness

Does the point x = (1, 1, 1, 0) solve the following LP?

maximize 4x1 +2x2 +2x3 +4x4subject to x1 +3x2 +2x3 + x4 ≤ 7

x1 + x2 + x3 +2x4 ≤ 32x1 + x3 + x4 ≤ 3x1 + x2 +2x4 ≤ 2

0 ≤ x1, x2, x3, x4

The Fundamental Theorem of Linear Programming The Strong Duality Theorem Complementary SlacknessMath 407: Linear Optimization 23 / 23