Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications...

32
Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004 Brooks/Cole, a division of Thomson Learning, Inc.

Transcript of Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications...

Page 1: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

Chapter 5

Sensitivity Analysis: An Applied Approach

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 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

2

5.1 – A Graphical Introduction to Sensitivity Analysis

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

Reconsider the Giapetto problem from Chapter 3.

Where: x1 = number of soldiers produced each week

x2 = number of trains produced each week.

max z = 3x1 + 2x2

2 x1 + x2 ≤ 100 (finishing constraint)

x1 + x2 ≤ 80 (carpentry constraint)

x1 ≤ 40 (demand constraint)

x1,x2 ≥ 0 (sign restriction)

Page 3: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

3

The optimal solution for this LP was z = 180, x1=20, x2= 60 (point B) 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 right-hand side values change this optimal solution? X1

X2

10 20 40 50 60 80

2 04 0

6 08 0

1 00

finishing constraintSlope = -2

carpentry constraintSlope = -1

demand constraint

Feasible RegionA

D

Isoprofit line z = 120 Slope = -3/2

C

B

Page 4: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

4

Graphical analysis of the effect of a change in an objective function value for the Giapetto LP shows: By inspection, we can see that making the slope of

the isoprofit line more negative than the finishing constraint (slope = -2) will cause the optimal point to switch from point B to point C.

Likewise, making the slope of the isoprofit line less negative than the carpentry constraint (slope = -1) will cause the optimal point to switch from point B to point A.

Clearly, the slope of the isoprofit line must be between -2 and -1 for the current basis to remain optimal.

Page 5: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

5

A graphical analysis can also be used to determine whether a change in the rhs of a constraint will make the current basis no longer optimal. For example, let b1 = number of available finishing hours.

The current optimal solution (point B) is where the carpentry and finishing constraints are binding.

If the value of b1 is changed, then as long as where the carpentry and finishing constraints are binding, the optimal solution will still occur where the carpentry and finishing constraints intersect.

Page 6: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

6

In the Giapetto problem to

the right, we see that if b1 > 120, x1 will be greater than 40 and will violate the demand constraint. Also, if b1 < 80, x1 will be less than 0 and the nonnegativity constraint for x1 will be violated.

Therefore: 80 ≤b1≤ 120 The current basis remains

optimal for 80 ≤b1≤ 120, but the decision variable values and z-value will change.

X1

X2

20 40 50 60 80

20

40

60

80

100

finishing constraint, b1 = 100

carpentry constraint

demand constraint

Feasible Region

A

D

Isoprofit line z = 120

C

B

finishing constraint, b1 = 120

finishing constraint, b1 = 80

Page 7: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

7

It is often important to determine how a change in a

constraint’s rhs changes the LP’s 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.

For the finishing constraint, 100 + finishing hours are available. The LP’s optimal solution is then

x1 = 20 + and x2 = 60 – with z = 3x1 + 2x2 = 3(20 + ) + 2(60 - ) = 180 + .

Thus, as long as the current basis remains optimal, a one-unit increase in the number of finishing hours will increase the optimal z-value by $1. So, the shadow price for the first (finishing hours) constraint is $1.

Page 8: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

8

Sensitivity analysis is important for several

reasons: Values of LP parameters might change. If a parameter

changes, sensitivity analysis shows it is unnecessary to solve the problem again. For example in the Giapetto problem, if the profit

contribution of a soldier changes to $3.50, sensitivity analysis shows the current solution remains optimal.

Uncertainty about LP parameters. In the Giapetto problem for example, if the weekly

demand for soldiers is at least 20, the optimal solution remains 20 soldiers and 60 trains. Thus, even if demand for soldiers is uncertain, the company can be fairly confident that it is still optimal to produce 20 soldiers and 60 trains.

Page 9: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

9

5.2 The Computer and Sensitivity Analysis

If an LP has more than two decision variables, the range of values for a rhs (or objective function coefficient) for which the basis remains optimal cannot be determined graphically.

These ranges can be computed by hand but this is often tedious, so they are usually determined by a packaged computer program.

LINDO will be used and the interpretation of its sensitivity analysis discussed.

Page 10: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

10

Example 1: Winco Products 1

Winco sells four types of products. The resources needed to produce one unit of each are known.

To meet customer demand, exactly 950 total units must be produced.

Customers demand that at least 400 units of product 4 be produced.

Formulate an LP to maximize profit.

Product 1 Product 2 Product 3 Product 4

Raw material 2 3 4 7

Hours of labor 3 4 5 6

Sales price $4 $6 $7 $8

Page 11: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

11

Example 1: Solution

Let xi = number of units of product i produced by Winco.

The Winco LP formulation:

max z = 4x1 + 6x2 +7x3 + 8x4

s.t. x1 + x2 + x3 + x4 = 950

x4 ≥ 400

2x1 + 3x2 + 4x3 + 7x4 ≤ 4600

3x1 + 4x2 + 5x3 + 6x4 ≤ 5000

x1,x2,x3,x4 ≥ 0

Page 12: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

12

Ex. 1 – Solution continued

The LINDO output.

Reduced cost is the amount the objective function coefficient for variable i would have to be increased for there to be an alternative optimal solution.

MAX 4 X1 + 6 X2 + 7 X3 + 8 X4 SUBJECT TO 2) X1 + X2 + X3 + X4 = 950 3) X4 >= 400 4) 2 X1 + 3 X2 + 4 X3 + 7 X4 <= 4600 5) 3 X1 + 4 X2 + 5 X3 + 6 X4 <= 5000 END

LP OPTIMUM FOUND AT STEP 4

OBJECTIVE FUNCTION VALUE 1) 6650.000

VARIABLE VALUE REDUCED COST X1 0.000000 1.000000 X2 400.000000 0.000000 X3 150.000000 0.000000 X4 400.000000 0.000000

ROW SLACK OR SURPLUS DUAL PRICES 2) 0.000000 3.000000 3) 0.000000 -2.000000 4) 0.000000 1.000000 5) 250.000000 0.000000

NO. ITERATIONS= 4

Page 13: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

13

Ex. 1 – Solution continued

LINDO sensitivity analysis output

Allowable range (w/o changing basis) for the x2 coefficient (c2) is: 5.50 £ c2 £ 6.667

Allowable range (w/o changing basis) for the rhs (b1) of the first constraint is: 850 £ b1 £ 1000

RANGES IN WHICH THE BASIS IS UNCHANGED:

OBJ COEFFICIENT RANGES

VARIABLE CURRENT ALLOWABLE ALLOWABLE

COEF INCREASE DECREASE

X1 4.000000 1.000000 INFINITY

X2 6.000000 0.666667 0.500000

X3 7.000000 1.000000 0.500000

X4 8.000000 2.000000 INFINITY

RIGHTHAND SIDE RANGES

ROW CURRENT ALLOWABLE ALLOWABLE

RHS INCREASE DECREASE

2 950.000000 50.000000 100.000000

3 400.000000 37.500000 125.000000

4 4600.000000 250.000000 150.000000

5 5000.000000 INFINITY 250.000000

Page 14: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

14

Ex. 1 – Solution continued

Shadow prices are shown in the Dual Prices section of LINDO output.

Shadow prices are the amount the optimal z-value improves if the rhs of a constraint is increased by one unit (assuming no change in basis).

MAX 4 X1 + 6 X2 + 7 X3 + 8 X4 SUBJECT TO 2) X1 + X2 + X3 + X4 = 950 3) X4 >= 400 4) 2 X1 + 3 X2 + 4 X3 + 7 X4 <= 4600 5) 3 X1 + 4 X2 + 5 X3 + 6 X4 <= 5000 END

LP OPTIMUM FOUND AT STEP 4

OBJECTIVE FUNCTION VALUE 1) 6650.000

VARIABLE VALUE REDUCED COST

X1 0.000000 1.000000 X2 400.000000 0.000000 X3 150.000000 0.000000 X4 400.000000 0.000000

ROW SLACK OR SURPLUS DUAL PRICES 2) 0.000000 3.000000 3) 0.000000 -2.000000 4) 0.000000 1.000000 5) 250.000000 0.000000

NO. ITERATIONS= 4

Page 15: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

15

Shadow price signs

1. Constraints with symbols will always have nonpositive shadow prices.

2. Constraints with will always have nonnegative shadow prices.

3. Equality constraints may have a positive, a negative, or a zero shadow price.

Page 16: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

16

For any inequality constraint, the product of the values of the constraint’s slack/excess variable and the constraint’s shadow price must equal zero. This implies that any constraint whose slack or

excess variable > 0 will have a zero shadow price.

Similarly, any constraint with a nonzero shadow price must be binding (have slack or excess equaling zero).

For constraints with nonzero slack or excess, relationships are detailed in the table below:

Type of Constraint Allowable Increase for rhs Allowable Decrease for rhs

≤ ∞ = value of slack

≥ = value of excess ∞

Page 17: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

17

When the optimal solution is degenerate (a bfs is degenerate if at least one basic variable in the optimal solution equals 0), caution must be used when interpreting the LINDO output.

For an LP with m constraints, if the optimal LINDO output indicates less than m variables are positive, then the optimal solution is degenerate bfs.

MAX 6 X1 + 4 X2 + 3 X3 + 2 X4

SUBJECT TO

2) 2 X1 + 3 X2 + X3 + 2 X4 <= 400

3) X1 + X2 + 2 X3 + X4 <= 150

4) 2 X1 + X2 + X3 + 0.5 X4 <= 200

5) 3 X1 + X2 + X4 <= 250

Page 18: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

18

Since the LP has four constraints and in the optimal solution only two variables are positive, the optimal solution is a degenerate bfs.

LP OPTIMUM FOUND AT STEP 3

OBJECTIVE FUNCTION VALUE

1) 700.0000

VARIABLE VALUE REDUCED COST X1 50.000000 0.000000 X2 100.000000 0.000000 X3 0.000000 0.000000 X4 0.000000 1.500000

ROW SLACK OR SURPLUS DUAL PRICES 2) 0.000000 0.500000 3) 0.000000 1.250000 4) 0.000000 0.000000 5) 0.000000 1.250000

Page 19: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

19

RANGES IN WHICH THE BASIS IS UNCHANGED:

OBJ COEFFICIENT RANGESVARIABLE CURRENT ALLOWABLE ALLOWABLE COEF INCREASE DECREASE

X1 6.000000 3.000000 3.000000 X2 4.000000 5.000000 1.000000 X3 3.000000 3.000000 2.142857 X4 2.000000 1.500000 INFINITY

RIGHTHAND SIDE RANGES ROW CURRENT ALLOWABLE ALLOWABLE RHS INCREASE DECREASE 2 400.000000 0.000000 200.000000 3 150.000000 0.000000 0.000000 4 200.000000 INFINITY 0.000000 5 250.000000 0.000000 120.000000

Page 20: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

20

LINDO TABLEAU command indicates the optimal basis is RV = {x1,x2,x3,s4}.

THE TABLEAU ROW (BASIS) X1 X2 X3 X4 SLK 2 1 ART 0.000 0.000 0.000 1.500 0.500 2 X2 0.000 1.000 0.000 0.500 0.500 3 X3 0.000 0.000 1.000 0.167 -0.167 4 SLK 4 0.000 0.000 0.000 -0.500 0.000 5 X1 1.000 0.000 0.000 0.167 -0.167 ROW SLK 3 SLK 4 SLK 5 1 1.250 0.000 1.250 700.000 2 -0.250 0.000 -0.250 100.000 3 0.583 0.000 -0.083 0.000 4 -0.500 1.000 -0.500 0.000 5 0.083 0.000 0.417 50.000

Page 21: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

21

Oddities that may occur when the optimal solution found by LINDO is degenerate are: In the RANGE IN WHICH THE BASIS IS UNCHANGED at

least one constraint will have a 0 AI or AD. This means that for at least one constraint the DUAL PRICE can tell us about the new z-value for either an increase or decrease in the rhs, but not both.

For a nonbasic variable to become positive, a nonbasic variable’s objective function coefficient may have to be improved by more than its RECDUCED COST.

Increasing a variable’s objective function coefficient by more than its AI or decreasing it by more than its AD may leave the optimal solution the same.

Page 22: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

22

5.3 Managerial Use of Shadow Prices

The managerial significance of shadow prices is that they can often be used to determine the maximum amount a manger should be willing to pay for an additional unit of a resource.

Page 23: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

23

Example 5: Winco Products 2

Reconsider the Winco to the right.

What is the most Winco should be willing to pay for additional units of raw material or labor?

Page 24: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

24

Example 5: Solution

The shadow price for raw material constraint (row 4) shows an extra unit of raw material would increase revenue $1. Winco could pay up to $1

for an extra unit of raw material and be as well off as it is now.

Labor constraint’s (row 5) shadow price is 0 meaning that an extra hour of labor will not increase revenue. So, Winco should not be

willing to pay anything for an extra hour of labor.

MAX 4 X1 + 6 X2 + 7 X3 + 8 X4 SUBJECT TO 2) X1 + X2 + X3 + X4 = 950 3) X4 >= 400 4) 2 X1 + 3 X2 + 4 X3 + 7 X4 <= 4600 5) 3 X1 + 4 X2 + 5 X3 + 6 X4 <= 5000 END

LP OPTIMUM FOUND AT STEP 4

OBJECTIVE FUNCTION VALUE 1) 6650.000

VARIABLE VALUE REDUCED COST X1 0.000000 1.000000 X2 400.000000 0.000000 X3 150.000000 0.000000 X4 400.000000 0.000000

ROW SLACK OR SURPLUS DUAL PRICES 2) 0.000000 3.000000 3) 0.000000 -2.000000 4) 0.000000 1.000000 5) 250.000000 0.000000

NO. ITERATIONS= 4

Page 25: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

25

5.4 What happens to the Optimal z-Value if the Current Basis Is No Longer Optimal?

Shadow prices were used to determine the new optimal z-value if the rhs of a constraint was changed but remained within the range where the current basis remains optimal. Changing the rhs of a constraint to values where the

current basis is no longer optimal can be addressed by the LINDO PARAMETRICS feature.

This feature can be used to determine how the shadow price of a constraint and optimal z-value change.

Page 26: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

26

The use of the LINDO PARAMETICS feature is illustrated by varying the amount of raw material in the Winco example. Suppose we want to determine how the optimal z-

value and shadow price change as the amount of raw material varies between 0 and 10,000 units.

With 0 raw material, we then obtain from the RANGE and SENSITIVTY ANALYSIS results that show Row 4 has an ALLOWABLE INCREASE of -3900. This indicates at least 3900 units of raw material are required to make the problem feasible.

Page 27: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

27

Raw Material rhs = 3900 optimal solution

OBJECTIVE FUNCTION VALUE

1) 5400.000

VARIABLE VALUE REDUCED COST X1 550.000000 0.000000 X2 0.000000 0.000000 X3 0.000000 1.000000 X4 400.000000 0.000000

ROW SLACK OR SURPLUS DUAL PRICES 2) 0.000000 0.000000 3) 0.000000 -6.000000 4) 0.000000 2.000000 5) 950.000000 0.000000

RANGES IN WHICH THE BASIS IS UNCHANGED:

OBJ COEFFICIENT RANGES VARIABLE CURRENT ALLOWABLE ALLOWABLE COEF INCREASE DECREASE X1 4.000000 1.000000 INFINITY X2 6.000000 INFINITY 0.500000 X3 7.000000 1.000000 INFINITY X4 8.000000 6.000000 INFINITY

RIGHTHAND SIDE RANGES ROW CURRENT ALLOWABLE ALLOWABLE RHS INCREASE DECREASE 2 950.000000 0.000000 183.333328 3 400.000000 0.000000 137.500000 4 3900.000000 550.000000 0.000000 5 5000.000000 INFINITY 950.000000

THE TABLEAU

ROW (BASIS) X1 X2 X3 X4 SLK 3 SLK 4 1 ART 0.000 0.000 1.000 0.000 6.000 2.000 2 X1 1.000 0.000 -1.000 0.000 -4.000 -1.000 3 X4 0.000 0.000 0.000 1.000 -1.000 0.000 4 X2 0.000 1.000 2.000 0.000 5.000 1.000 5 SLK 5 0.000 0.000 0.000 0.000 -2.000 -1.000 ART ART 0.000 0.000 1.000 0.000 6.000 2.000

SLK 50.000 5400.0000.000 550.0000.000 400.0000.000 0.0001.000 950.0000.000 0.000

Page 28: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

28

Changing Row 4’s rhs to 3900, resolving the LP, and selecting the REPORTS PARAMTERICS feature. In this feature we choose Row 4, setting the Value to

10000, and select text output.

RIGHTHANDSIDE PARAMETRICS REPORT FOR ROW: 4

VAR VAR PIVOT RHS DUAL PRICE OBJOUT IN ROW VAL BEFORE PIVOT VAL

3900.00 2.00000 5400.00 X1 X3 2 4450.00 2.00000 6500.00 SLK 5 SLK 3 5 4850.00 1.00000 6900.00 X3 SLK 4 2 5250.00 -0.333067E-15 6900.00 10000.0 -0.555112E-16 6900.00

Page 29: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

29

LINDO Parametric Feature Graphical Output (z-value vs. Raw Material rhs from 3900 to 10000)

Page 30: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

30

For any LP, the graph of the optimal objective function value as a function a rhs will be a piecewise linear function. The slope of each straight line segment is just the constraint’s shadow price.

For < constraints in a maximization LP, the slope of each segment must be nonnegative and the slopes of successive line segments will be nonincreasing.

For a > constraint, in a maximization problem, the graph of the optimal function will again be piecewise linear function. The slope of each line segment will be nonpositive and the slopes of successive segments will be nonincreasing

Page 31: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

31

A graph of the optimal objective function value as a function of a variable’s objective function coefficient can be created.

When the slope of the line is portrayed graphically, the graph is a piecewise linear function.

The slope of each line segment is equal to the value of x1 in the optimal solution.

Page 32: Chapter 5 Sensitivity Analysis: An Applied Approach to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright.

32

In a maximization LP, the slope of the graph of the optimal z-value as a function of an objective function coefficient will be nondecreasing.

In a minimization LP, the slope of the graph of the optimal z-value as a function of an objective function coefficient will be nonincreasing.

0 2 4 6 8 10

100

200

300

400

500

z-value

Optimal z-Value vs c1

C1

Opt

imal

z-V

alue

440

0

z c 1

100 c 1