78
LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS 1. Dual linear program 2. Duality theory 3. Sensitivity analysis 4. Dual simplex method

LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

  • Upload
    dinhque

  • View
    230

  • Download
    1

Embed Size (px)

Citation preview

Page 1: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS1. Dual linear program2. Duality theory3. Sensitivity analysis4. Dual simplex method

Page 2: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Introduction to dual linear program• Given a constraint matrix A, right hand side vector b, and

cost vector c, we have a corresponding linear programming problem:

• Questions:1. Can we use the same data set of (A, b, c) to constructanother linear programming problem?2. If so, how is this new linear program related to the original primal problem?

Page 3: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Guessing• A is an m by n matrix, b is an m-vector, c is an n-vector.

• Can the roles of b and c can be switched?- If so, we’ll have m variables and n constraints.Correspondingly, (1) the transpose of matrix A should be considered to accommodate rows for columns, and vise versa?(2) nonnegative variables for free variables?(3) equality constraints for inequality constraints?(4) minimizing objective for maximizing objective?

Page 4: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Dual linear program• Consider the following linear program

• Remember the original linear program

Page 5: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Example

Page 6: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Dual of LP in other form• Symmetric pair

Page 7: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Karmarkar’s form LP

Page 8: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

How are they related ?We denote the original LP by (P) as the primal problemand the new LP by (D) as dual problem.

• (P) and (D) are defined by the same data set (A, b, c).

• Problem (D) is a linear program with m variables and n constraints. The right-hand-side vector and the cost vector change roles in (P) and (D).

• What else?

Page 9: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Many interesting questions• Feasibility:- Can problems (P) and (D) be both feasible?- One is feasible, while the other is infeasible?- Both are infeasible?

• Basic solutions:- Is there any relation between the basic solutions of (P)and that of (D)? bfs ? optimal solutions?

• Optimality:-Can problems (P) and (D) both have a unique optimalsolution? - Both have infinitely many? - One unique, the other infinitely many?

Page 10: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Examples• Both (P) and (D) are infeasible:

• Both (P) and (D) have infinitely many optimal solutions:

Page 11: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Dual relationship• If we take (D) as the primal problem, what’ll happen?• Convert (D) into its standard form by 1. taking w = u – v2. adding slacks s 3. minimizing objective New dual

Page 12: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Dual of the dual = primal• Rearrange the new dual

• We have

Page 13: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Example

Page 14: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Weak duality theoremIf x is a primal feasible solution to (P) and w is a dual feasible solution to (D), then

(Weak Duality Theorem):If x is a primal feasible solution to (P) and w is a dual feasible solution to (D), then .

Page 15: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Example

Page 16: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Corollaries1. If x is primal feasible, w is dual feasible, and

then x is primal optimal, and w is dual optimal.

2. If the primal is unbounded below, then the dual is infeasible.(Is the converse statement true? -- watch for infeasibility)

3. If the dual is unbounded above, then the primal is infeasible.(Is the converse statement true?)

Page 17: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Strong duality theorem• Questions:- Can the results of weak duality be stronger?- Is there any gap between the primal optimal value andthe dual optimal value?

• Strong Duality Theorem:

Page 18: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Proof of strong duality theorem

• Proof: Note that the dual of the dual is the primal and the fact that “If x is primal feasible, w is dual feasible and

then x is primal optimal and w is dual optimal.” We only need to show that

“if the primal has a finite optimal bfs x, then there exists a dual feasible solution w such that

‘’’

Page 19: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Proof - continue• Applying the simplex method at the optimal bsf x with

basis B, we define . Then Thus w is dual feasible

and

Page 20: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Implications

Page 21: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Corresponding basic solutions• At a primal basic solution x with basis B, we defined a

dual basic solution .

Page 22: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Further implications of strong duality theorem• Theorem of Alternatives

“Existence of solutions of systems of equalitiesand inequalities”

• Famous Farkas Lemma (another form)

Page 23: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Proof of Farkas Lemma

• Since w = 0 is dual feasible, we know(P) is infeasible if and only if (D) is unbounded above. Note that

• (P) is infeasible if and only if (I) has no solution.• (D) is unbounded above if and only if (II) has a solution. Hence,

(I) has no solution if and only if (II) has a solution.

Page 24: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Complementary slackness• Consider the symmetric pair LP

Page 25: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Observations1. 2.

Page 26: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Complementary slackness theorem• Theorem:

Page 27: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Example• Consider a relaxed knapsack problem:

• Its dual becomes4y* > 3 x*1 = 07y* > 4 x*2 = 010y* = 9 x*3 = ? x*3 = 2 z* = 18 3y* > 2 x*4 = 07y* > 5 x*5 = 0

Page 28: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Complementary slackness for standard form LP

Page 29: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Kuhn-Tucker condition• Theorem:

Page 30: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Implication• Solving a linear programming problem is equivalent tosolving a system of linear inequalities.

Page 31: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Economic interpretation of duality• Is there any special meaning of the dual variables?

• What is a dual problem trying to do?

• What’s the role of the complementary slackness in decision making?

Page 32: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Dual variables• Consider a nondegenerate linear program:

Page 33: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Dual variable for shadow price• Moreover, we have

• Note: dual variable indicates the minimum unit price that one has to charge for additional demand i. It is also called shadow price or equilibrium price.

Page 34: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Dual LP problemConsider the following production scenario:

• n products to be produced

• m resources in hand

• market selling price for each product is known

• technology matrix is given by

Page 35: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

A manufacturer’s view

Page 36: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Complementary slackness condition• Observation:1. is the maximum marginal price the manufacturer

is willing to pay the supplier for resource i.2. When resource i is not fully utilized, i.e.,

the complementary slackness condition impliesThis means the manufacturer is not willing topay a penny for buying any additional amount !

3. When the supplier asks too much, i.e.,

then This means the manufacturer is not goingto produce any product j !

Page 37: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Sensitivity analysis• Sensitivity is a post-optimality analysis of a linear program

in which, some components of (A, b, c) may change after obtaining an optimal solution with an optimal basis and an optimal objective value .Questions of interests:

Page 38: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Fundamental concepts• No matter how the data (A, b, c) change, we need to

make sure that

1. Feasibility (c is not involved):

bfs x is feasible if and only if

2. Optimality (b is not involved):

Page 39: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Change in the cost vector• Scenario:

Consider

• Question: Within which range of the current optimalsolution remains to be optimal?

Note: when c’ = (0,,0,1,0, …0), we have the regularsensitivity analysis on each cost coefficient.

Page 40: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Geometric view

• Fact:

Page 41: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Analysis• Compare

(1)

(2) i.e.,

Page 42: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Analysis - continue

Page 43: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Analysis - continue

Page 44: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Change in the r-h-s vector• Scenario:

• Fact:• Question:

Page 45: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Analysis

Page 46: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Analysis

Page 47: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Changes in the constraint matrix• Since both feasibility and optimality are involved, a

general analysis is difficult.

• We only consider simple cases such as adding a new variable, removing a variable, adding a new constraint.

Page 48: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Adding a new variable• Why? A new product, service or activity is introduced.

• Analysis:

Page 49: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Removing a variable• Why? An activity is no longer available.

Page 50: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Adding a new constraint• Why? A new restriction is enforces.

Page 51: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Analysis

Page 52: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Analysis

Page 53: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Dual simplex method• What’s the dual simplex method?

- It is a simplex based algorithm that works on the dual problem directly. In other words, it hops fromone vertex to another vertex along some edge directionsin the dual space.

• It keeps dual feasibility and complementary slackness, butseeks primal feasibility.

Page 54: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Motivation• Applying the (revised) simplex method to solve the dual

problem:

Page 55: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Corresponding basic solutions• At a primal basic solution x with basis B, we defined a

dual basic solution .

Page 56: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Basic ideas of dual simplex method• Starting with a dual basic feasible solution

Page 57: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Basic ideas of dual simplex method• Checking optimality

Page 58: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Basic ideas of dual simplex method• Pivoting move

Page 59: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Related issues• Question 1:

• Analysis:

Page 60: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Related issues• Question 2:

Where is the dual feasibility information?• Guess: must be from the fundamental matrix and vector c.

Page 61: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Related issues• Question 3: When

• Answer: Sherman-Morrison-Woodbury formula.

Sherman, J.; Morrison, W. J. (1949). "Adjustment of an Inverse Matrix Corresponding to Changes in the Elements of a Given Column or a Given Row of the Original Matrix(abstract)". Annals of Mathematical Statistics 20: 621. doi:10.1214/aoms/1177729959

Page 62: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Sherman-Morrison-Woodbury Formula• Lemma:

Page 63: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Proof from wikipedia.org/wiki

Page 64: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Observations

Page 65: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Example

Page 66: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Analysis

Page 67: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Observations

Page 68: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Dual simplex method

Page 69: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Dual simplex method

Page 70: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Example

Page 71: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Example - continue

Page 72: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

How to start the dual simplex method?

Page 73: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Observations

Page 74: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Remarks(1) Solving a standard form LP by the dual simplex method

is mathematically equivalent to solving its dual LP by the revised (primal) simplex method.

(2) The work of solving an LP by the dual simplex methodis about the same as of by the revised (primal) simplex method.

(3) The dual simplex method is useful for thesensitivity analysis.

Page 75: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Complexity of the simplex method

Page 76: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Worst case performance of the simplex methodKlee-Minty Example:• Victor Klee, George J. Minty, “How good is the simplex

algorithm?’’ in (O. Shisha edited) Inequalities, Vol. III (1972), pp. 159-175.

Page 77: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Klee-Minty Example

Page 78: LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS

Klee-Minty Example