35
Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004 Brooks/Cole, a division of Thomson Learning, Inc.

Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

Embed Size (px)

Citation preview

Page 1: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

Chapter 6

Sensitivity Analysis & Duality

to accompany

Operations Research: Applications and Algorithms

4th edition

by Wayne L. Winston

Copyright (c) 2004 Brooks/Cole, a division of Thomson Learning, Inc.

Page 2: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

2

6.1 A Graphical Introduction to Sensitivity Analysis

Sensitivity analysis is concerned with how changes in an LP’s parameters affect the optimal solution.

The optimal solution to the Giapetto problem was z = 180, x1 = 20, x2 = 60 (Point B in the figure to the right) and it has x1, x2, and s3 (the slack variable for the demand constraint) as basic variables.

How would changes in the problem’s objective function coefficients or the constraint’s right-hand sides change this optimal solution?

Page 3: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

3

If the isoprofit line is flatter than the carpentry constraint, Point A(0,80) is optimal.

Point B(20,60) is optimal if the isoprofit line is steeper than the carpentry constraint but flatter than the finishing constraint.

Finally, Point C(40,20) is optimal if the slope of the isoprofit line is steeper than the slope of the finishing constraint.

Since a typical isoprofit line is c1x1 + 2x2 = k, we know the slope of the isoprofit line is just -c1/2.

X1

X2

20 40 50 60 80

20

40

60

80

100

finishing constraintSlope = -2

carpentry constraintSlope = -1

demand constraint

Feasible RegionA

D

Isoprofit line z = 120 Slope = -3/2

C

B

Giapetto Problem

Page 4: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

4

A graphical analysis can also be used to determine whether a change in the rhs of a constraint will make the basis no longer optimal.

In a constraint with a positive slack (or positive excess) in an LPs optimal solution, if we change the rhs of the constraint to a value in the range where the basis remains optimal, the optimal solution to the LP remains the same.

Page 5: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

5

It is important to determine how a constraint’s rhs changes the optimal z-value.

The shadow price for the ith constraint of an LP is the amount by which the optimal z-value is improved if the rhs of the ith constraint is increased by one. This definition applies only if the change in the rhs of constraint i leaves the current basis optimal.

Page 6: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

6

Sensitivity analysis is important because Values of LP parameters might change.

If a parameter changes, sensitivity analysis shows it is unnecessary to solve the problem again.

Uncertainty about LP parameters. Even if demand is uncertain, the company can be

fairly confident that it can still produce optimal amounts of products.

Page 7: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

7

6.2 Some Important Formulas

An LP’s optimal tableau can be expressed in terms of the LP’s parameters.

The formulas are used in the study of sensitivity analysis, duality, and advanced LP topics.

When solving a max problem that has been prepared for solution by the Big M method with the LP having m constraints and n variables. Although some of the variables may be slack, excess, or artificial, they are labeled x1, x2, …,xn.

Page 8: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

8

The LP may then be written as

max z = c1x1 + c2x2 + … + cnxn

s.t. a11x1 + a12x2 + … + a1nxn = b1

a21x1 + a22x2 + … + a2nxn = b2

…. …. … … …

amx1 + am2x2 + … + amnxn = bm

xi ≥ 0 (i = 1, 2, …, n)

Page 9: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

9

BV = {BV1, BV2, …, BVn} to be the set of basic variables in the optimal tableau.

NBV = {NBV1, NBV2, …, NBVn} the set of nonbasic variables in the optimal tableau.

cBV is the 1 x m row vector [cBV1 cBV2 ∙∙∙ cBVm].

cNBV is the 1 x (n-m) row vector whose elements are the coefficients of the nonbasic variables (in the order of NBV).

The m x m matrix B is the matrix whose jth column is the column for BVj in the initial tableau.

Page 10: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

10

Aj is the column (in the constraints) for the variable xj.

N is the m x (n-m) matrix whose columns are the columns for the nonbasic variables (in NBV order) in the initial tableau.

The m x 1 column vector b is the right-hand side of the constraints in the initial tableau.

Matrix algebra can be used to determine how an LP’s optimal tableau (with the set of basic variables BV) is related to the original LP.

Page 11: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

11

The initial LP can now be written as

Let be the coefficient of xj, then it can be shown that

and Right-hand side of optimal tableau’s row 0=cBVB-1b

z = cBVxBV + cNBVxNBV

s.t. BxBV + NxNBV = b

xBV, xNBV ≥ 0

jcBc j jac 1

BV

jc

Page 12: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

12

Coefficient of slack variable si in optimal row 0 = ith element of cBVB-1

Coefficient of excess variable ei in optimal row 0 = -(ith element of cBVB-1)

Coefficient of artificial variable ai in optimal row 0 = (ith element of cBVB-1) + M (max problem)

Right-hand side of optimal row 0 = cBVB-1b

Page 13: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

13

6.3 Sensitivity Analysis

How do changes in an LP’s parameters (objective function coefficients, right-hand sides, and technological coefficients) change the optimal solution? Let BV be the set of basic variables in the optimal

tableau. Given a change in an LP, determine if the BV remains

optimal.

From Chapter 4 we know the simplex tableau (for a max problem) for a set of basic variables is optimal if and only if each constraint has a nonnegative rhs and each variable has a nonnegative coefficient.

Page 14: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

14

We can use the following procedure to determine if any change in the LP will cause the BV to no longer be optimal. Step 1 Using the formulas of Section 6.2 determine how

changes in the LP’s parameters change the right hand side row 0 of the optimal tableau (the tableau having BV as the set of basic variables).

Step 2 If each variable in row 0 has a nonnegative coefficient and each constraint has a nonnegative rhs, BV is still optimal. Otherwise, BV is no longer optimal.

If BV is no longer optimal, find the new optimal solution by using the formulas to recreate the entire tableau for BV and then continuing the simplex algorithm with the BV tableau as your starting tableau.

Page 15: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

15

There can two reasons why a change in an LP’s parameters cause BV to no longer be optimal. A variable (or variables) in row 0 may have a

negative coefficient. In this case, a better (larger z-value) bfs can be obtained by pivoting in a nonbasic variable with a negative coefficient in row 0. If this occurs, the BV is now a suboptimal basis.

A constraint (or constraints) may now have a negative rhs. In this case, at least one member of BV will now be negative and BV will no longer yield a bfs. If this occurs, we say they BV is now an infeasible basis.

Page 16: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

16

Six types of changes in an LP’s parameters change the optimal solution. Changing the objective function coefficient of a

nonbasic variable.

Changing the objective function coefficient of a basic variable.

Changing the right-hand side of a constraint.

Changing the column of a nonbasic variable.

Adding a new variable or activity.

Adding a new constraint.

Page 17: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

17

6.4 Sensitivity Analysis When More Than One Parameter Is Changed: The 100% Rule

LINDO output can be used to determine whether the current basis remains optimal when more than one objective function coefficient or right-hand side is changed.

Depending on whether the objective function coefficient of any variable with a zero reduced cost in the optimal tableau is changed, there are two cases to consider: Case 1 – All variables whose objective function coefficients

are changed have nonzero reduced costs in the optimal row 0. The current basis remains optimal if and only if the

objective function coefficient for each variable remains within the allowable range given on the LINDO printout.

If the current basis remains optimal, both the values of the decision variables and objective function remain unchanged. If the objective coefficient for any variable is outside the allowable range, the current basis is no longer optimal.

Page 18: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

18

Case 2 – At least one variable whose objective function coefficient is changed has a reduced cost of zero.

Depending on whether any of the constraints whose right-hand side are being modified are binding constraints, there are two cases to consider.

Page 19: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

19

Case 1 – All constraints whose right-hand sides are being modified are nonbinding constraints. The current basis remains optimal if and only if each

right-hand side remains within its allowable range.

Then the values of the decision variables and optimal objective function remain unchanged.

If the right-hand side for any constraint is outside its allowable range, the current basis is no longer optimal.

Case 2 – At least one of the constraints whose right-hand side is being modified is a binding constraint (that is, has zero slack or excess).

Page 20: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

20

6.5 – Finding the Dual of an LP

Associated with any LP is another LP called the dual. Knowledge of the dual provides interesting economic and sensitivity analysis insights.

When taking the dual of any LP, the given LP is referred to as the primal. If the primal is a max problem, the dual will be a min problem and visa versa.

To find the dual to a max problem in which all the variables are required to be nonnegative and all the constraints are ≤ constraints (called normal max problem) the problem may be written as

Page 21: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

21

The dual of a normal max problem is called a normal min problem.

max z = c1x1+ c2x2 +…+ cnxn

s.t. a11x1 + a12x2 + … + a1nxn ≤ b1

a21x1 + a22x2 + … + a2nxn ≤ b2

… … … …

am1x1 + am2x2 + … + amnxn ≤ bm

xj ≥ 0 (j = 1, 2, …,n)

min w = b1y1+ b2y2 +…+ bmym

s.t. a11y1 + a21y2 + … + am1ym ≥ c1

a12y1 + a22y2 + … + am2ym ≥ c2

… … … …

a1ny1 + a2ny2 + …+ amnym ≥ cn

yi ≥ 0 (i = 1, 2, …,m)

Page 22: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

22

6.6 Economic Interpretation of the Dual Problem

Suppose an entrepreneur wants to purchase all of Dakota’s resources. The entrepreneur must determine the price he or she is willing to pay for a unit of each of Dakota’s resources.

To determine these prices define: y1 = price paid for 1 boards ft of lumber

y2 = price paid for 1 finishing hour

y3 = price paid for 1 carpentry hour

The resource prices y1, y2, and y3 should be determined by solving the Dakota dual.

In setting resource prices, the prices must be high enough to induce Dakota to sell.

Page 23: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

23

When the primal is a normal max problem, the dual variables are related to the value of resources available to the decision maker. For this reason, dual variables are often referred to as resource shadow prices.

Page 24: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

24

6.7 The Dual Theorem and Its Consequences

The Dual Theorem states that the primal and dual have equal optimal objective function values (if the problems have optimal solutions).

Weak duality implies that if for any feasible solution to the primal and an feasible solution to the dual, the w-value for the feasible dual solution will be at least as large as the z-value for the feasible primal solution.

Any feasible solution to the dual can be used to develop a bound on the optimal value of the primal objective function.

Page 25: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

25

Let

be a feasible solution to the primal and

be a feasible solution to the dual. If , then x-bar is optimal for the primal and y-bar is optimal for the dual.

If the primal is unbounded, then the dual problem is infeasible.

If the dual is unbounded, then the primal is infeasible.

nx

x

x

X2

1

myyyy 21

byxc

Page 26: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

26

6.8 Shadow Prices

The shadow price of the ith constraint is the amount by which the optimal z-value is improved (increased in a max problem and decreased in a min problem) is we increase bi by 1 (from bi to bi+1).

In short, adding points to the feasible region of a max problem cannot decrease the optimal z-value.

Page 27: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

27

6.9 Duality and Sensitivity Analysis

Assuming that a set of basic variables BV is feasible, then BV is optimal if and only if the associated dual solution (cBVB-1) is dual feasible.

This result can be used for an alternative way of doing the following types of sensitivity analysis. Changing the objective function coefficient of a

nonbasic variable.

Changing the column of a nonbasic variable.

Adding a new activity.

Page 28: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

28

6.10 Complementary Slackness

Let

be a feasible primal solution andbe a feasible dual solution. Then x is primal optimal and y is dual optimal if and only if

siyi = 0 (i=1, 2, …, m)ejyj = 0 (j=1, 2, …, n)

nx

x

x

X2

1

myyyy 21

Page 29: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

29

6.11 The Dual Simplex Method The dual simplex method maintains a non-

negative row 0 (dual feasibility) and eventually obtains a tableau in which each right-hand side is non-negative (primal feasibility).

The dual simplex method for a max problem Step 1:Is the right-hand side of each constraint non

negative? If not, go to step 2.

Step 2:Choose the most negative basic variable as the variable to leave the basis. The row it is in will be the pivot row. To select the variable that enters the basis, compute the following ratio for each variable xj that has a negative coefficient in the pivot row:

rowpivot in oft Coefficien

0 rowin oft Coefficien

xj

xj

Page 30: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

30

Step 2 continuedChoose the variable with the smallest ratio as the entering variable. Now use EROs to make the entering variable a basic variable in the pivot row.

Step 3: If there is any constraint in which the right-hand side is negative and each variable has a non-negative coefficient, then the LP has no feasible solution. If no constraint infeasibility is found, return to step 1.

The dual simplex method is often used to find the new optimal solution to an LP after a constraint is added.

Page 31: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

31

When a constraint is added one of the following three cases will occur. The current optimal solution satisfies the new

constraint.

The current optimal solution does not satisfy the new constraint, but the LP still has a feasible solution.

The additional constraint causes the LP to have no feasible solutions.

If the right-hand side of a constraint is changed and the current basis becomes infeasible, the dual simplex can be used to find the new optimal solution.

Page 32: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

32

6.12 Data Environment Analysis

Often people wonder if a business is operating efficiently. The Data Environment Analysis (DEA) method can be used to find the answer.

To learn how DEA works, let’s consider a group of three hospitals.

Each hospital “converts” two inputs into three different outputs.

The two inputs used are Input 1 – capital (measured in number of beds) Input 2 – labor (measured in thousands of

hours/month)

Page 33: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

33

The outputs are Output 1 – hundreds of patient-days during month for

patients under age 14

Output 2 – hundreds of patient-days during month for patients between age 14-65

Output 3 – hundreds of patient-days during month for patients over age 65

The efficiency of a hospital is defined by

inputs s' hospital of value

ouputs s' hospital of value

i

i

Page 34: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

34

The DEA approach uses the following four ideas to determine if a hospital is efficient. No hospital can be more than 100% efficient.

When evaluating hospital i’s efficiency, attempt to choose output prices and inpu costs that maximize efficiency.

To simplify computations, scale the output prices so that the cost of hospital i’s inputs equals 1.

Ensure that each input cost and output price is strictly positive.

Use LINDO to solve the hospital DEA problem.

Page 35: Chapter 6 Sensitivity Analysis & Duality to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004

35

The DUAL PRICES section of the LINDO output gives us great insight into Hospital 2’s inefficiency.