0% found this document useful (0 votes)
31 views3 pages

Complementary Slackness Theorem

The Complementary Slackness Theorem is a fundamental principle in linear programming that establishes conditions for optimal solutions in primal and dual problems. It states that if a dual constraint is not tight, the corresponding primal variable must be zero, and vice versa. The theorem is essential for verifying optimality and interpreting shadow prices in optimization scenarios.

Uploaded by

b24205
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
31 views3 pages

Complementary Slackness Theorem

The Complementary Slackness Theorem is a fundamental principle in linear programming that establishes conditions for optimal solutions in primal and dual problems. It states that if a dual constraint is not tight, the corresponding primal variable must be zero, and vice versa. The theorem is essential for verifying optimality and interpreting shadow prices in optimization scenarios.

Uploaded by

b24205
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

Complementary Slackness Theorem

complimentary slackness theorm

The Complementary Slackness Theorem is a key result in linear programming and optimization,
particularly in the primal-dual relationship. It provides conditions under which a feasible solution to
the primal and dual problems is optimal.

Statement of the Theorem

For a primal linear program (LP):

max cT x

subject to:

Ax ≤ b, x≥0

The dual problem is:

min bT y

subject to:

AT y ≥ c, y≥0

Let x∗ be an optimal solution for the primal problem and y∗ be an optimal solution for the dual
problem. Then, the Complementary Slackness Theorem states:

yj∗ (bj − (Ax∗ )j ) = 0 ∀j


​ ​ ​

x∗i ((AT y∗ )i − ci ) = 0 ∀i
​ ​ ​

Interpretation

1. If a dual constraint is not tight (i.e., (AT y∗ )i ​ > ci ), then the corresponding primal variable

x∗i ​ = 0.
2. If a primal constraint is not tight (i.e., (Ax∗ )j ​ < bj ), then the corresponding dual variable yj∗ =
​ ​

0.

This theorem helps in checking optimality and interpreting shadow prices in optimization problems.

Would you like an example to illustrate this?

Printed using ChatGPT to PDF, powered by PDFCrowd HTML to PDF API. 1/3
Give me an example

Example of Complementary Slackness Theorem

Let's consider a simple primal linear program (LP):

Primal Problem (Maximization)

max 3x1 + 2x2 ​ ​

subject to:

x1 + 2x2 ≤ 4
​ ​

2x1 + x2 ≤ 5
​ ​

x1 , x2 ≥ 0​ ​

Dual Problem (Minimization)

For the primal constraints:

The coefficients of constraints become the objective function in the dual.


The coefficients of decision variables in the primal objective become the constraints in the
dual.

min 4y1 + 5y2 ​ ​

subject to:

y1 + 2y2 ≥ 3
​ ​

2y1 + y2 ≥ 2
​ ​

y1 , y2 ≥ 0​ ​

Step 1: Solve for Optimal Solutions

Assume we have found the optimal solutions:

Primal optimal solution: x∗1 = 2, x∗2 =


​ ​ 1
Dual optimal solution: y1∗ = 1, y2∗ = 1
​ ​

Step 2: Verify Complementary Slackness Conditions

The theorem states:

1. yj∗ (bj
​ ​ − (Ax∗ )j ) = 0 for each constraint in the primal.

Printed using ChatGPT to PDF, powered by PDFCrowd HTML to PDF API. 2/3
2. x∗i ((AT y∗ )i
​ ​ − ci ) = 0 for each constraint in the dual.

Check First Condition (Primal Slackness)

For constraint 1: x1 ​ + 2x2 ≤ 4 ​

2 + 2(1) = 4, (Active constraint, tight)

Since 4 − 4 = 0, and y1∗ = 1, ​

y1∗ (4 − 4) = 1 × 0 = 0 (Satisfied)

For constraint 2: 2x1 ​


+ x2 ≤ 5 ​

2(2) + 1 = 5, (Active constraint, tight)

Since 5 − 5 = 0, and y2∗ = 1, ​

y2∗ (5 − 5) = 1 × 0 = 0 (Satisfied)

Check Second Condition (Dual Slackness)

For variable x1 , the corresponding dual constraint is:


y1 + 2y2 ≥ 3
​ ​

1 + 2(1) = 3, (Active constraint, tight)

Since 3 − 3 = 0, and x∗1 = 2, ​

x∗1 (3 − 3) = 2 × 0 = 0 (Satisfied)

For variable x2 , the corresponding dual constraint is:


2y1 + y2 ≥ 2
​ ​

2(1) + 1 = 3, (Strictly greater than 2, not tight)

Since 3 − 2 = 1 and x∗2 = 1, ​

x∗2 (3 − 2) = 1 × 1 = 1 (Not satisfied)


This means either x∗2 or the constraint formulation needs adjustment.


Conclusion

If all conditions are satisfied, the solutions are optimal.


If any condition is violated, we must recalculate or check the feasibility of our assumptions.

This is how Complementary Slackness helps validate optimal solutions. Would you like a more
complex example or a different explanation?

Printed using ChatGPT to PDF, powered by PDFCrowd HTML to PDF API. 3/3

You might also like