chapter 6 sensitivity analysis & duality to accompany operations research: applications and...

Post on 12-Jan-2016

262 Views

Category:

Documents

13 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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.

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?

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

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.

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.

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.

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.

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)

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.

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.

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

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

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.

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.

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.

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.

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.

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.

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).

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

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)

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.

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.

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.

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

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.

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.

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

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

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.

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.

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)

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

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.

35

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

top related