0% found this document useful (0 votes)
659 views

Chapter 18 Simplex-Based Sensitivity Analysis and Duality

This document discusses sensitivity analysis and duality in linear programming. It begins by explaining that sensitivity analysis involves computing ranges for objective function coefficients and right-hand-side values, as well as dual prices. It then provides an example of computing the range of optimality for an objective function coefficient using the final simplex tableau. The range of optimality defines the objective coefficient values where the current basic feasible solution remains optimal. The document also introduces duality in linear programming and how the dual problem has an economic interpretation associated with the primal problem.

Uploaded by

Tito Tito
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
659 views

Chapter 18 Simplex-Based Sensitivity Analysis and Duality

This document discusses sensitivity analysis and duality in linear programming. It begins by explaining that sensitivity analysis involves computing ranges for objective function coefficients and right-hand-side values, as well as dual prices. It then provides an example of computing the range of optimality for an objective function coefficient using the final simplex tableau. The range of optimality defines the objective coefficient values where the current basic feasible solution remains optimal. The document also introduces duality in linear programming and how the dual problem has an economic interpretation associated with the primal problem.

Uploaded by

Tito Tito
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 20

99790_18_ch18_p001-030.

qxd 03/08/2007 04:29 PM Page 18-1

CHAPTER 18
Simplex-Based Sensitivity
Analysis and Duality
CONTENTS
18.1 SENSITIVITY ANALYSIS 18.2 DUALITY
WITH THE SIMPLEX Economic Interpretation of the
TABLEAU Dual Variables
Objective Function Coefficients Using the Dual to Identify the
Right-Hand-Side Values Primal Solution
Simultaneous Changes Finding the Dual of Any Primal
Problem
99790_18_ch18_p001-030.qxd 03/08/2007 04:29 PM Page 18-2

18-2 Chapter 18 Simplex-Based Sensitivity Analysis and Duality

In Chapter 3 we defined sensitivity analysis as the study of how the changes in the coeffi-
cients of a linear program affect the optimal solution. In this chapter we discuss how sen-
sitivity analysis information such as the ranges for the objective function coefficients, dual
prices, and the ranges for the right-hand-side values can be obtained from the final simplex
tableau. The topic of duality is also introduced. We will see that associated with every linear
programming problem is a dual problem that has an interesting economic interpretation.

18.1 SENSITIVITY ANALYSIS WITH THE SIMPLEX TABLEAU

The usual sensitivity analysis for linear programs involves computing ranges for the ob-
jective function coefficients and the right-hand-side values, as well as the dual prices.

Objective Function Coefficients


Sensitivity analysis for an objective function coefficient involves placing a range on the co-
efficient’s value. We call this range the range of optimality. As long as the actual value of
the objective function coefficient is within the range of optimality, the current basic feasi-
ble solution will remain optimal. The range of optimality for a basic variable defines the
objective function coefficient values for which that variable will remain part of the current
optimal basic feasible solution. The range of optimality for a nonbasic variable defines the
objective function coefficient values for which that variable will remain nonbasic.
In computing the range of optimality for an objective function coefficient, all other co-
efficients in the problem are assumed to remain at their original values; in other words, only
one coefficient is allowed to change at a time. To illustrate the process of computing ranges
for objective function coefficients, recall the HighTech Industries problem introduced in
Chapter 17. The linear program for this problem is restated as follows:
Max 50x1  40x2
s.t.
3x1  5x2  150 Assembly time
1x2  20 Portable display
8x1  5x2  300 Warehouse capacity
x1, x2  0
where
x1  number of units of the Deskpro
x2  number of units of the Portable
The final simplex tableau for the HighTech problem is as follows.

x1 x2 s1 s2 s3

Basis cB 50 40 0 0 0

x2 40 0 1 ⁸⁄₂₅ 0 ³⁄₂₅ 12
s2 0 0 0 ⁸⁄₂₅ 1 ³⁄₂₅ 8
x1 50 1 0 ⁵⁄₂₅ 0 ⁵⁄₂₅ 30

zj 50 40 ¹⁴⁄₅ 0 ²⁶⁄₅ 1980


cj  zj 0 0 ¹⁴⁄₅ 0 ²⁶⁄₅
99790_18_ch18_p001-030.qxd 03/08/2007 04:29 PM Page 18-3

18.1 Sensitivity Analysis with the Simplex Tableau 18-3

Recall that when the simplex method is used to solve a linear program, an optimal so-
lution is recognized when all entries in the net evaluation row (cj  z j ) are  0. Because
the preceding simplex tableau satisfies this criterion, the solution shown is optimal. How-
ever, if a change in one of the objective function coefficients were to cause one or more of
the cj  z j values to become positive, then the current solution would no longer be optimal;
in such a case, one or more additional simplex iterations would be necessary to find the new
optimal solution. The range of optimality for an objective function coefficient is determined
by those coefficient values that maintain

cj  z j  0 (18.1)

for all values of j.


Let us illustrate this approach by computing the range of optimality for c1, the profit
contribution per unit of the Deskpro. Using c1 (instead of 50) as the objective function co-
efficient of x1, the final simplex tableau is as follows:

x1 x2 s1 s2 s3

Basis cB c1 40 0 0 0

x2 40 0 1 ⁸⁄₂₅ 0 ³⁄₂₅ 12
s2 0 0 0 ⁸⁄₂₅ 1 ³⁄₂₅ 8
x1 c1 1 0 ⁵⁄₂₅ 0 ⁵⁄₂₅ 30

zj c1 40 64  c1 0 c1  24 480  30c1
5 5
cj  zj 0 0 c1  64 0 24  c1
5 5

Changing an objective Note that this tableau is the same as the previous optimal tableau except that c1 replaces
function coefficient will 50. Thus, we have a c1 in the objective function coefficient row and the cB column, and the
result in changes in the z j
z j and cj  z j rows have been recomputed using c1 instead of 50. The current solution will
and cj  z j rows, but not in
the variable values. remain optimal as long as the value of c1 results in all cj  z j  0. Hence, from the column
for s1 we must have

c1  64
0
5

and from the column for s3, we must have

24  c1
0
5

Using the first inequality, we obtain

c1  64  0
99790_18_ch18_p001-030.qxd 03/08/2007 04:29 PM Page 18-4

18-4 Chapter 18 Simplex-Based Sensitivity Analysis and Duality

or

c1  64 (18.2)

Similarly, from the second inequality, we obtain

24  c1  0

or

24  c1 (18.3)

Because c1 must satisfy both inequalities (18.2) and (18.3), the range of optimality for c1 is
given by

24  c1  64 (18.4)

To see how management of HighTech can make use of this sensitivity analysis infor-
mation, suppose an increase in material costs reduces the profit contribution per unit for the
Deskpro to $30. The range of optimality indicates that the current solution (x1  30,
x 2  12, s1  0, s2  8, s3  0) is still optimal. To verify this solution, let us recompute the
final simplex tableau after reducing the value of c1 to 30.

x1 x2 s1 s2 s3

Basis cB 30 40 0 0 0
We have simply set c1  30 x2 40 0 1 ⁸⁄₂₅ 0 ³⁄₂₅ 12
everywhere it appears in
the previous tableau. s2 0 0 0 ⁸⁄₂₅ 1 ³⁄₂₅ 8
x1 30 1 0 ⁵⁄₂₅ 0 ⁵⁄₂₅ 30

zj 30 40 ³⁴⁄₅ 0 ⁶⁄₅ 1380


cj  zj 0 0 ³⁴⁄₅ 0 ⁶⁄₅

Because cj  z j  0 for all variables, the solution with x1  30, x 2  12, s1  0, s2  8,


and s3  0 is still optimal. That is, the optimal solution with c1  30 is the same as the op-
timal solution with c1  50. Note, however, that the decrease in profit contribution per unit
of the Deskpro has caused a reduction in total profit from $1980 to $1380.
What if the profit contribution per unit were reduced even further—say, to $20? Re-
ferring to the range of optimality for c1 given by expression (18.4), we see that c1  20
is outside the range; thus, we know that a change this large will cause a new basis to be
99790_18_ch18_p001-030.qxd 03/08/2007 04:29 PM Page 18-5

18.1 Sensitivity Analysis with the Simplex Tableau 18-5

optimal. To verify this new basis, we have modified the final simplex tableau by replac-
ing c1 by 20.

x1 x2 s1 s2 s3

Basis cB 20 40 0 0 0

x2 40 0 1 ⁸⁄₂₅ 0 ³⁄₂₅ 12
s2 0 0 0 ⁸⁄₂₅ 1 ³⁄₂₅ 8
x1 20 1 0 ⁵⁄₂₅ 0 ⁵⁄₂₅ 30

zj 20 40 ⁴⁴⁄₅ 0 ⁴⁄₅ 1080


cj  zj 0 0 ⁴⁴⁄₅ 0 ⁴⁄₅

As expected, the current solution (x1  30, x 2  12, s1  0, s2  8, and s3  0) is no


longer optimal because the entry in the s3 column of the net evaluation row is greater than
zero. This result implies that at least one more simplex iteration must be performed to reach
At the endpoints of the the optimal solution. Continue to perform the simplex iterations in the previous tableau to
range, the corresponding verify that the new optimal solution will require the production of 16²⁄₃ units of the Deskpro
variable is a candidate for
and 20 units of the Portable.
entering the basis if it is
currently out or for leaving The procedure we used to compute the range of optimality for c1 can be used for any
the basis if it is currently in. basic variable. The procedure for computing the range of optimality for nonbasic variables
is even easier because a change in the objective function coefficient for a nonbasic variable
causes only the corresponding cj  z j entry to change in the final simplex tableau. To illus-
trate the approach, we show the following final simplex tableau for the original HighTech
problem after replacing 0, the objective function coefficient for s1, with the coefficient cs1:

x1 x2 s1 s2 s3

Basis cB 50 40 cs1 0 0

x2 40 0 1 ⁸⁄₂₅ 0 ³⁄₂₅ 12
s2 0 0 0 ⁸⁄₂₅ 1 ³⁄₂₅ 8
x1 50 1 0 ⁵⁄₂₅ 0 ⁵⁄₂₅ 30

zj 50 40 ¹⁴⁄₅ 0 ²⁶⁄₅ 1980


cj  zj 0 0 cs1  ¹⁴⁄₅ 0 ²⁶⁄₅

Note that the only changes in the tableau are in the s1 column. In applying inequality
(18.1) to compute the range of optimality, we get

cs1  14/5  0

and hence

cs1  14/5

Therefore, as long as the objective function coefficient for s1 is less than or equal to ¹⁴⁄₅ , the
current solution will be optimal. With no lower bound on how much the coefficient may be
decreased, we write the range of optimality for cs1 as

cs1  14/5
99790_18_ch18_p001-030.qxd 03/08/2007 04:29 PM Page 18-6

18-6 Chapter 18 Simplex-Based Sensitivity Analysis and Duality

The same approach works for all nonbasic variables. In a maximization problem, the
range of optimality has no lower limit, and the upper limit is given by z j. Thus, the range of
optimality for the objective function coefficient of any nonbasic variable is given by

cj  z j (18.5)

Let us summarize the steps necessary to compute the range of optimality for objective
function coefficients. In stating the following steps, we assume that computing the range of
optimality for ck , the coefficient of xk , in a maximization problem is the desired goal. Keep
in mind that xk in this context may refer to one of the original decision variables, a slack
variable, or a surplus variable.
Steps to Compute the Range of Optimality
Step 1. Replace the numerical value of the objective function coefficient for xk with ck
everywhere it appears in the final simplex tableau.
Step 2. Recompute cj  z j for each nonbasic variable (if xk is a nonbasic variable, it is
only necessary to recompute ck  zk ).
Step 3. Requiring that cj  z j  0, solve each inequality for any upper or lower bounds
on ck. If two or more upper bounds are found for ck , the smallest of these is the
upper bound on the range of optimality. If two or more lower bounds are found,
the largest of these is the lower bound on the range of optimality.
Step 4. If the original problem is a minimization problem that was converted to a maxi-
mization problem in order to apply the simplex method, multiply the inequali-
ties obtained in step 3 by 1, and change the direction of the inequalities to
Can you compute the range obtain the ranges of optimality for the original minimization problem.
of optimality for objective
function coefficients by
working with the final By using the range of optimality to determine whether a change in an objective func-
simplex tableau? Try tion coefficient is large enough to cause a change in the optimal solution, we can often avoid
Problem 1. the process of formulating and solving a modified linear programming problem.

Right-Hand-Side Values
In many linear programming problems, we can interpret the right-hand-side values (the bi’s)
as the resources available. For instance, in the HighTech Industries problem, the right-hand
side of constraint 1 represents the available assembly time, the right-hand side of constraint 2
represents the available Portable displays, and the right-hand side of constraint 3 represents
the available warehouse space. Dual prices provide information on the value of additional
resources in these cases; the ranges over which these dual prices are valid are given by the
ranges for the right-hand-side values.

Dual Prices In Chapter 3 we stated that the improvement in the value of the optimal so-
lution per unit increase in a constraint’s right-hand-side value is called a dual price.1 When
the simplex method is used to solve a linear programming problem, the values of the dual

1
The closely related term shadow price is used by some authors. The shadow price is the same as the dual price for maxi-
mization problems; for minimization problems, the dual and shadow prices are equal in absolute value but have opposite
signs. LINGO and The Management Scientist provide dual prices as part of the computer output. Some software packages,
such as Premium Solver for Education, provide shadow prices.
99790_18_ch18_p001-030.qxd 03/08/2007 04:29 PM Page 18-7

18.1 Sensitivity Analysis with the Simplex Tableau 18-7

prices are easy to obtain. They are found in the z j row of the final simplex tableau. To il-
lustrate this point, the final simplex tableau for the HighTech problem is again shown.

x1 x2 s1 s2 s3

Basis cB 50 40 0 0 0

x2 40 0 1 ⁸⁄₂₅ 0 ³⁄₂₅ 12
s2 0 0 0 ⁸⁄₂₅ 1 ³⁄₂₅ 8
x1 50 1 0 ⁵⁄₂₅ 0 ⁵⁄₂₅ 30

zj 50 40 ¹⁴⁄₅ 0 ²⁶⁄₅ 1980


cj  zj 0 0 ¹⁴⁄₅ 0 ²⁶⁄₅

The zj values for the three slack variables are ¹⁴⁄₅ , 0, and ²⁶⁄₅ , respectively. Thus, the dual prices
for the assembly time constraint, Portable display constraint, and warehouse capacity con-
straint are, respectively, ¹⁴⁄₅  $2.80, 0.00, and ²⁶⁄₅  $5.20. The dual price of $5.20 shows
that more warehouse space will have the biggest positive impact on HighTech’s profit.
To see why the z j values for the slack variables in the final simplex tableau are the dual
prices, let us first consider the case for slack variables that are part of the optimal basic fea-
sible solution. Each of these slack variables will have a z j value of zero, implying a dual
price of zero for the corresponding constraint. For example, consider slack variable s2 , a
basic variable in the HighTech problem. Because s2  8 in the optimal solution, HighTech
will have eight Portable display units unused. Consequently, how much would management
of HighTech Industries be willing to pay to obtain additional Portable display units? Clearly
the answer is nothing because at the optimal solution HighTech has an excess of this par-
ticular component. Additional amounts of this resource are of no value to the company, and,
consequently, the dual price for this constraint is zero. In general, if a slack variable is a
basic variable in the optimal solution, the value of z j —and hence, the dual price of the cor-
responding resource—is zero.
Consider now the nonbasic slack variables—for example, s1. In the previous subsec-
tion we determined that the current solution will remain optimal as long as the objective
function coefficient for s1 (denoted cs1) stays in the following range:

cs1  ¹⁴₅

It implies that the variable s1 should not be increased from its current value of zero unless
it is worth more than ¹⁴⁄₅  $2.80 to do so. We can conclude then that $2.80 is the marginal
value to HighTech of 1 hour of assembly time used in the production of Deskpro and
Portable computers. Thus, if additional time can be obtained, HighTech should be willing
to pay up to $2.80 per hour for it. A similar interpretation can be given to the z j value for
each of the nonbasic slack variables.
With a greater-than-or-equal-to constraint, the value of the dual price will be less than
or equal to zero because a one-unit increase in the value of the right-hand side cannot be
helpful; a one-unit increase makes it more difficult to satisfy the constraint. For a maxi-
mization problem, then, the optimal value can be expected to decrease when the right-hand
side of a greater-than-or-equal-to constraint is increased. The dual price gives the amount
of the expected improvement—a negative number, because we expect a decrease. As a
result, the dual price for a greater-than-or-equal-to constraint is given by the negative of the
z j entry for the corresponding surplus variable in the optimal simplex tableau.
99790_18_ch18_p001-030.qxd 03/08/2007 04:29 PM Page 18-8

18-8 Chapter 18 Simplex-Based Sensitivity Analysis and Duality

TABLE 18.1 TABLEAU LOCATION OF DUAL PRICE BY CONSTRAINT TYPE

Constraint Type Dual Price Given by


 zj value for the slack variable associated with the constraint
 Negative of the zj value for the surplus variable associated
with the constraint
 zj value for the artificial variable associated with the constraint

Finally, it is possible to compute dual prices for equality constraints. They are given by
the z j values for the corresponding artificial variables. We will not develop this case in de-
tail here because we have recommended dropping each artificial variable column from the
simplex tableau as soon as the corresponding artificial variable leaves the basis.
To summarize, when the simplex method is used to solve a linear programming prob-
lem, the dual prices for the constraints are contained in the final simplex tableau. Table 18.1
summarizes the rules for determining the dual prices for the various constraint types in a
maximization problem solved by the simplex method.
Try Problem 3, parts (a), Recall that we convert a minimization problem to a maximization problem by multi-
(b), and (c), for practice in plying the objective function by 1 before using the simplex method. Nevertheless, the
finding dual prices from the
dual price is given by the same z j values because improvement for a minimization problem
optimal simplex tableau.
is a decrease in the optimal value.
To illustrate the approach for computing dual prices for a minimization problem, recall
the M&D Chemicals problem that we solved in Section 17.7 as an equivalent maximization
problem by multiplying the objective function by 1. The linear programming model for
this problem and the final simplex tableau are restated as follows, with x1 and x 2 represent-
ing manufacturing quantities of products A and B, respectively.

Min 2x1  3x 2
s.t.
1x1  125 Demand for product A
1x1  1x 2  350 Total production
2x1  1x 2  600 Processing time
x1, x 2  0

x1 x2 s1 s2 s3

Basis cB 2 3 0 0 0

x1 2 1 0 0 1 1 250
x2 3 0 1 0 2 1 100
s1 0 0 0 1 1 1 125

zj 2 3 0 4 1 800
cj  zj 0 0 0 4 1

Following the rules in Table 18.1 for identifying the dual price for each constraint type,
the dual prices for the constraints in the M&D Chemicals problem are given in Table 18.2.
99790_18_ch18_p001-030.qxd 03/08/2007 04:29 PM Page 18-9

18.1 Sensitivity Analysis with the Simplex Tableau 18-9

TABLE 18.2 DUAL PRICES FOR M&D CHEMICALS PROBLEM

Constraint Constraint Type Dual Price


Demand for product A  0
Total production  4
Processing time  1

Constraint 1 is not binding, and its dual price is zero. The dual price for constraint 2 shows
that the marginal cost of increasing the total production requirement is $4 per unit. Finally,
the dual price of one for the third constraint shows that the per-unit value of additional pro-
cessing time is $1.

Range of Feasibility As we have just seen, the z j row in the final simplex tableau can be
used to determine the dual price and, as a result, predict the change in the value of the ob-
jective function corresponding to a unit change in a bi. This interpretation is only valid, how-
A change in bi does not ever, as long as the change in bi is not large enough to make the current basic solution
affect optimality (cj  zj is infeasible. Thus, we will be interested in calculating a range of values over which a particu-
unchanged), but it does lar bi can vary without any of the current basic variables becoming infeasible (i.e., less than
affect feasibility. One of the
current basic variables may
zero). This range of values will be referred to as the range of feasibility.
become negative. To demonstrate the effect of changing a bi , consider increasing the amount of assem-
bly time available in the HighTech problem from 150 to 160 hours. Will the current basis
still yield a feasible solution? If so, given the dual price of $2.80 for the assembly time
constraint, we can expect an increase in the value of the solution of 10(2.80)  28. The fi-
nal simplex tableau corresponding to an increase in the assembly time of 10 hours is
shown here.

x1 x2 s1 s2 s3

Basis cB 50 40 0 0 0

x2 40 0 1 ⁸⁄₂₅ 0 ³⁄₂₅ 15.2


s2 0 0 0 ⁸⁄₂₅ 1 ³⁄₂₅ 4.8
x1 50 1 0 ⁵⁄₂₅ 0 ⁵⁄₂₅ 28.0

zj 50 40 ¹⁴⁄₅ 0 ²⁶⁄₅ 2008


cj  zj 0 0 ¹⁴⁄₅ 0 ²⁶⁄₅

The same basis, consisting of the basic variables x 2 , s2 , and x1, is feasible because all
the basic variables are nonnegative. Note also that, just as we predicted using the dual
price, the value of the optimal solution has increased by 10($2.80)  $28, from $1980
to $2008.
You may wonder whether we had to re-solve the problem completely to find this new
solution. The answer is no! The only changes in the final simplex tableau (as compared
with the final simplex tableau with b1  150) are the differences in the values of the basic
variables and the value of the objective function. That is, only the last column of the sim-
plex tableau changed. The entries in this new last column of the simplex tableau were
99790_18_ch18_p001-030.qxd 03/08/2007 04:29 PM Page 18-10

18-10 Chapter 18 Simplex-Based Sensitivity Analysis and Duality

obtained by adding 10 times the first four entries in the s1 column to the last column in the
previous tableau:
Old Change s1 New
solution in b1 column solution

12 ⁸₂₅ 15.2
New 8 ⁸₂₅ 4.8
D T  10 D T  D T
solution 30 ⁵₂₅ 28.0
1980 ¹⁴₅ 2008

Let us now consider why this procedure can be used to find the new solution. First, re-
call that each of the coefficients in the s1 column indicates the amount of decrease in a basic
variable that would result from increasing s1 by one unit. In other words, these coefficients
tell us how many units of each of the current basic variables will be driven out of solution
if one unit of variable s1 is brought into solution. Bringing one unit of s1 into solution, how-
ever, is the same as reducing the availability of assembly time (decreasing b1 ) by one unit;
increasing b1, the available assembly time, by one unit has just the opposite effect. There-
fore, the entries in the s1 column can also be interpreted as the changes in the values of the
current basic variables corresponding to a one-unit increase in b1.
To practice finding the new The change in the value of the objective function corresponding to a one-unit increase in
solution after a change in a b1 is given by the value of z j in that column (the dual price). In the foregoing case, the avail-
right-hand side without
ability of assembly time increased by 10 units; thus, we multiplied the first four entries in the
re-solving the problem when
the same basis remains s1 column by 10 to obtain the change in the value of the basic variables and the optimal value.
feasible, try Problem 3, How do we know when a change in b1 is so large that the current basis will become in-
parts (d) and (e). feasible? We shall first answer this question specifically for the HighTech Industries prob-
lem and then state the general procedure for less-than-or-equal-to constraints. The approach
taken with greater-than-or-equal-to and equality constraints will then be discussed.
We begin by showing how to compute upper and lower bounds for the maximum amount
that b1 can be changed before the current optimal basis becomes infeasible. We have seen how to
find the new basic feasible solution values given a 10-unit increase in b1. In general, given a
change in b1 of b1, the new values for the basic variables in the HighTech problem are given by

x2 12 ⁸₂₅ 12  ⁸₂₅ b1


C s2 S  C 8 S  b1 C ⁸₂₅ S  C 8  ⁸₂₅ b1 S (18.6)
x1 30 ⁵₂₅ 30  ⁵₂₅ b1

As long as the new value of each basic variable remains nonnegative, the current basis
will remain feasible and therefore optimal. We can keep the basic variables nonnegative by
limiting the change in b1 (i.e., b1) so that we satisfy each of the following conditions:

12  ⁸₂₅ b1  0 (18.7)


8  ⁸₂₅ b1  0 (18.8)
30  ⁵₂₅ b1  0 (18.9)
99790_18_ch18_p001-030.qxd 03/08/2007 04:29 PM Page 18-11

18.1 Sensitivity Analysis with the Simplex Tableau 18-11

The left-hand sides of these inequalities represent the new values of the basic variables after
b1 has been changed by b1.
Solving for b1 in inequalities (18.7), (18.8), and (18.9), we obtain

b1  (²⁵₈)(12)  37.5


b1  (²⁵₈)(8)  25
b1  (²⁵₅)(30)  150

Because all three inequalities must be satisfied, the most restrictive limits on b1 must be sat-
isfied for all the current basic variables to remain nonnegative. Therefore, b1 must satisfy

37.5  b1  25 (18.10)

The initial amount of assembly time available was 150 hours. Therefore, b1  150  b1,
where b1 is the amount of assembly time available. We add 150 to each of the three terms in
expression (18.10) to obtain

150  37.5  150  b1  150  25 (18.11)

Replacing 150  b1 with b1, we obtain the range of feasibility for b1:

112.5  b1  175

This range of feasibility for b1 indicates that as long as the available assembly time is be-
tween 112.5 and 175 hours, the current optimal basis will remain feasible, which is why we
call this range the range of feasibility.
Because the dual price for b1 (assembly time) is ¹⁴⁄₅ , we know profit can be increased by
$2.80 by obtaining an additional hour of assembly time. Suppose then that we increase b1
by 25; that is, we increase b1 to the upper limit of its range of feasibility, 175. The profit
will increase to $1980  ($2.80)25  $2050, and the values of the optimal basic variables
become

x 2  12  25(⁸₂₅)  20
s2  8  25(⁸₂₅)  0
x1  30  25(⁵₂₅)  25

What happened to the solution? The increased assembly time caused a revision in the
optimal production plan. HighTech should produce more of the Portable and less of the
Deskpro. Overall, the profit will be increased by ($2.80)(25)  $70. Note that although
the optimal solution changed, the basic variables that were optimal before are still optimal.
The procedure for determining the range of feasibility has been illustrated with the
assembly time constraint. The procedure for calculating the range of feasibility for the
right-hand side of any less-than-or-equal-to constraint is the same. The first step for a
99790_18_ch18_p001-030.qxd 03/08/2007 04:29 PM Page 18-12

18-12 Chapter 18 Simplex-Based Sensitivity Analysis and Duality

general constraint i is to calculate the range of values for bi that satisfies the following
inequalities.

b̄1 ā 1j 0
b̄2 ā 2 j 0
. . .
F V  bi F V  F V (18.12)
. . .
. . .
b̄m ā m j 0
Current solution Column of the final simplex
(last column of tableau corresponding to the
the final simplex slack variable associated
tableau) with constraint i

The inequalities are used to identify lower and upper limits on bi. The range of feasibil-
ity can then be established by the maximum of the lower limits and the minimum of the
upper limits.
Similar arguments can be used to develop a procedure for determining the range of feasi-
bility for the right-hand-side value of a greater-than-or-equal-to constraint. Essentially the pro-
cedure is the same, with the column corresponding to the surplus variable associated with the
constraint playing the central role. For a general greater-than-or-equal-to constraint i, we first
calculate the range of values for bi that satisfy the inequalities shown in inequality (18.13).

b̄1 ā 1j 0
b̄2 ā 2 j 0
. . .
F V  bi F V  F V (18.13)
. . .
. . .
b̄m ā m j 0

Current solution Column of the final simplex


(last column of tableau corresponding to the
the final simplex surplus variable associated
tableau) with constraint i

Once again, these inequalities establish lower and upper limits on bi. Given these limits,
the range of feasibility is easily determined.
Try Problem 4 to make sure A range of feasibility for the right-hand side of an equality constraint can also be com-
you can compute the range puted. To do so for equality constraint i, one could use the column of the final simplex tableau
of feasibility by working corresponding to the artificial variable associated with constraint i in equation (18.12). Be-
with the final simplex
tableau.
cause we have suggested dropping the artificial variable columns from the simplex tableau
as soon as the artificial variable becomes nonbasic, these columns will not be available in
the final tableau. Thus, more involved calculations are required to compute a range of feasi-
bility for equality constraints. Details may be found in more advanced texts.
99790_18_ch18_p001-030.qxd 03/08/2007 04:29 PM Page 18-13

18.1 Sensitivity Analysis with the Simplex Tableau 18-13

Changes that force bi As long as the change in a right-hand-side value is such that bi stays within its range of
outside its range of feasibility, the same basis will remain feasible and optimal. Changes that force bi outside its
feasibility are normally
range of feasibility will force us to re-solve the problem to find the new optimal solution con-
accompanied by changes in
the dual prices. sisting of a different set of basic variables. (More advanced linear programming texts show
how it can be done without completely re-solving the problem.) In any case, the calculation
of the range of feasibility for each bi is valuable management information and should be in-
cluded as part of the management report on any linear programming project. The range of
feasibility is typically made available as part of the computer solution to the problem.

Simultaneous Changes
In reviewing the procedures for developing the range of optimality and the range of feasibility,
we note that only one coefficient at a time was permitted to vary. Our statements concerning
changes within these ranges were made with the understanding that no other coefficients are
permitted to change. However, sometimes we can make the same statements when either two
or more objective function coefficients or two or more right-hand sides are varied simultane-
ously. When the simultaneous changes satisfy the 100 percent rule, the same statements are ap-
plicable. The 100 percent rule was explained in Chapter 3, but we will briefly review it here.
Let us define allowable increase as the amount a coefficient can be increased before
reaching the upper limit of its range, and allowable decrease as the amount a coefficient can
be decreased before reaching the lower limit of its range. Now suppose simultaneous
changes are made in two or more objective function coefficients. For each coefficient
changed, we compute the percentage of the allowable increase, or allowable decrease,
represented by the change. If the sum of the percentages for all changes does not exceed
100 percent, we say that the 100 percent rule is satisfied and that the simultaneous changes
will not cause a change in the optimal solution. However, just as with a single objective
function coefficient change, the value of the solution will change because of the change in
the coefficients.
Similarly, if two or more changes in constraint right-hand-side values are made, we
again compute the percentage of allowable increase or allowable decrease represented by
each change. If the sum of the percentages for all changes does not exceed 100 percent, we
say that the 100 percent rule is satisfied. The dual prices are then valid for determining the
change in value of the objective function associated with the right-hand-side changes.

NOTES AND COMMENTS

1. Sometimes, interpreting dual prices and choos- 2. The Notes and Comments in Chapter 3 concern-
ing the appropriate sign can be confusing. It ing sensitivity analysis are also applicable here.
often helps to think of this process as fol- In particular, recall that the 100 percent rule can-
lows. Relaxing a  constraint means decreas- not be applied to simultaneous changes in the
ing its right-hand side, and relaxing a  con- objective function and the right-hand sides; it
straint means increasing its right-hand side. applies only to simultaneous changes in one or
Relaxing a constraint permits improvement in the other. Also note that this rule does not mean
value; restricting a constraint (decreasing the that simultaneous changes that do not satisfy the
right-hand side of a  constraint or increasing rule will necessarily cause a change in the solu-
the right-hand side of a  constraint) has the tion. For instance, any proportional change in
opposite effect. In every case, the absolute all the objective function coefficients will leave
value of the dual price gives the improvement the optimal solution unchanged, and any pro-
in the optimal value associated with relaxing portional change in all the right-hand sides will
the constraint. leave the dual prices unchanged.
99790_18_ch18_p001-030.qxd 03/08/2007 04:29 PM Page 18-14

18-14 Chapter 18 Simplex-Based Sensitivity Analysis and Duality

18.2 DUALITY

Every linear programming problem has an associated linear programming problem called
the dual problem. Referring to the original formulation of the linear programming prob-
lem as the primal problem, we will see how the primal can be converted into its corre-
sponding dual. Then we will solve the dual linear programming problem and interpret the
results. A fundamental property of the primal-dual relationship is that the optimal solution
to either the primal or the dual problem also provides the optimal solution to the other. In
cases where the primal and the dual problems differ in terms of computational difficulty,
we can choose the easier problem to solve.
Let us return to the HighTech Industries problem. The original formulation—the primal
problem—is as follows:

Max 50x1  40x 2


s.t.
3x1  5x 2  150 Assembly time
1x 2  20 Portable display
8x1  5x 2  300 Warehouse space
x1, x 2  0

A maximization problem with all less-than-or-equal-to constraints and nonnegativity


requirements for the variables is said to be in canonical form. For a maximization problem
in canonical form, such as the HighTech Industries problem, the conversion to the associ-
ated dual linear program is relatively easy. Let us state the dual of the HighTech problem
and then identify the steps taken to make the primal-dual conversion. The HighTech dual
problem is as follows:

Min 150u1  20u 2  300u3


s.t.
3u1  8u3  50
5u1  1u 2  5u3  40
u1, u 2, u3  0

This canonical form for a minimization problem is a minimization problem with all
greater-than-or-equal-to constraints and nonnegativity requirements for the variables. Thus,
the dual of a maximization problem in canonical form is a minimization problem in canoni-
cal form. The variables u1, u 2 , and u 3 are referred to as dual variables.
With the preceding example in mind, we make the following general statements about
the dual of a maximization problem in canonical form.

1. The dual is a minimization problem in canonical form.


2. When the primal has n decision variables (n  2 in the HighTech problem), the dual
will have n constraints. The first constraint of the dual is associated with variable x1
in the primal, the second constraint in the dual is associated with variable x2 in the
primal, and so on.
3. When the primal has m constraints (m  3 in the HighTech problem), the dual will
have m decision variables. Dual variable u1 is associated with the first primal con-
straint, dual variable u 2 is associated with the second primal constraint, and so on.
99790_18_ch18_p001-030.qxd 03/08/2007 04:29 PM Page 18-15

18.2 Duality 18-15

4. The right-hand sides of the primal constraints become the objective function coef-
ficients in the dual.
5. The objective function coefficients of the primal become the right-hand sides of the
dual constraints.
6. The constraint coefficients of the ith primal variable become the coefficients in the
ith constraint of the dual.

Try part (a) of Problem 17 These six statements are the general requirements that must be satisfied when convert-
for practice in finding the ing a maximization problem in canonical form to its associated dual: a minimization prob-
dual of a maximization
lem in canonical form. Even though these requirements may seem cumbersome at first,
problem in canonical form.
practice with a few simple problems will show that the primal-dual conversion process is
relatively easy to implement.
We have formulated the HighTech dual linear programming problem, so let us now pro-
ceed to solve it. With three variables in the dual, we will use the simplex method. After sub-
tracting surplus variables s1 and s2 to obtain the standard form, adding artificial variables a1
and a2 to obtain the tableau form, and multiplying the objective function by 1 to convert
the dual problem to an equivalent maximization problem, we arrive at the following initial
simplex tableau.

u1 u2 u3 s1 s2 a1 a2

Basis cB 150 20 300 0 0 M M

a1 M 3 0 
8 1 0 1 0 50
a2 M 5 1 5 0 1 0 1 40

zj 8M M 13M M M M M 90M


cj  zj 150  8M 20  M 300  13M M M 0 0

At the first iteration, u 3 is brought into the basis, and a1 is removed. At the second iter-
ation, u1 is brought into the basis, and a 2 is removed. At this point, the simplex tableau ap-
pears as follows.

u1 u2 u3 s1 s2

Basis cB 150 20 300 0 0

u3 300 0 ³⁄₂₅ 1 ⁵⁄₂₅ ³⁄₂₅ ²⁶⁄₅


u1 150 1 ⁸⁄₂₅ 0 ⁵⁄₂₅ ⁸⁄₂₅ ¹⁴⁄₅

zj 150 12 300 30 12 1980


cj  zj 0 8 0 30 12

Because all the entries in the net evaluation row are less than or equal to zero, the op-
timal solution has been reached; it is u1  ¹⁴⁄₅ , u 2  0, u 3  ²⁶⁄₅ , s1  0, and s2  0. We have
been maximizing the negative of the dual objective function; therefore, the value of the ob-
jective function for the optimal dual solution must be (1980)  1980.
99790_18_ch18_p001-030.qxd 03/08/2007 04:29 PM Page 18-16

18-16 Chapter 18 Simplex-Based Sensitivity Analysis and Duality

The final simplex tableau for the original HighTech Industries problem is shown here.

x1 x2 s1 s2 s3

Basis cB 50 40 0 0 0

x2 40 0 1 ⁸⁄₂₅ 0 ³⁄₂₅ 12
s2 0 0 0 ⁸⁄₂₅ 1 ³⁄₂₅ 8
x1 50 1 0 ⁵⁄₂₅ 0 ⁵⁄₂₅ 30

zj 50 40 ¹⁴⁄₅ 0 ²⁶⁄₅ 1980


cj  zj 0 0 ¹⁴⁄₅ 0 ²⁶⁄₅

The optimal solution to the primal problem is x1  30, x 2  12, s1  0, s2  8, and s3  0.


The optimal value of the objective function is 1980.
What observation can we make about the relationship between the optimal value of the
objective function in the primal and the optimal value in the dual for the HighTech problem?
The optimal value of the objective function is the same (1980) for both. This relationship is
true for all primal and dual linear programming problems and is stated as property 1.

Property 1
If the dual problem has an optimal solution, the primal problem has an optimal solu-
tion, and vice versa. Furthermore, the values of the optimal solutions to the dual and
primal problems are equal.

This property tells us that if we solved only the dual problem, we would know that High-
Tech could make a maximum of $1980.

Economic Interpretation of the Dual Variables


Before making further observations about the relationship between the primal and the dual
solutions, let us consider the meaning or interpretation of the dual variables u1, u 2 , and u 3.
Remember that in setting up the dual problem, each dual variable is associated with one of
the constraints in the primal. Specifically, u1 is associated with the assembly time constraint,
u2 with the Portable display constraint, and u 3 with the warehouse space constraint.
To understand and interpret these dual variables, let us return to property 1 of the primal-
dual relationship, which stated that the objective function values for the primal and dual
problems must be equal. At the optimal solution, the primal objective function results in

50x1  40x 2  1980 (18.14)

while the dual objective function is

150u1  20u 2  300u3  1980 (18.15)


99790_18_ch18_p001-030.qxd 03/08/2007 04:29 PM Page 18-17

18.2 Duality 18-17

Using equation (18.14), let us restrict our interest to the interpretation of the primal objec-
tive function. With x1 and x 2 as the number of units of the Deskpro and the Portable that are
assembled respectively, we have

     
Dollar value Number of Dollar value Number of Total dollar
per unit of units of  per unit of units of  value of
Deskpro Deskpro Portable Portable production

From equation (18.15), we see that the coefficients of the dual objective function (150, 20,
and 300) can be interpreted as the number of units of resources available. Thus, because the
primal and dual objective functions are equal at optimality, we have

     
Units of Units of Units of
Total dollar value
resource u1  resource u 2  resource u3 
of production
1 2 3

Thus, we see that the dual variables must carry the interpretations of being the value per
unit of resource. For the HighTech problem,

u1  dollar value per hour of assembly time


u 2  dollar value per unit of the Portable display
u3  dollar value per square foot of warehouse space

Have we attempted to identify the value of these resources previously? Recall that in
Section 18.1, when we considered sensitivity analysis of the right-hand sides, we identified
the value of an additional unit of each resource. These values were called dual prices and
are helpful to the decision maker in determining whether additional units of the resources
should be made available.
The analysis in Section 18.1 led to the following dual prices for the resources in the
HighTech problem.

Value per Additional Unit


Resource (dual price)
Assembly time $2.80
Portable display $0.00
Warehouse space $5.20

The dual variables are the Let us now return to the optimal solution for the HighTech dual problem. The values of
shadow prices, but in a the dual variables at the optimal solution are u1  ¹⁴⁄₅  2.80, u 2  0, and u 3  ²⁶⁄₅  5.20.
maximization problem, they
For this maximization problem, the values of the dual variables and the dual prices are the
also equal the dual prices.
For a minimization same. For a minimization problem, the dual prices and the dual variables are the same in
problem, the dual prices absolute value but have opposite signs. Thus, the optimal values of the dual variables iden-
are the negative of the dual tify the dual prices of each additional resource or input unit at the optimal solution.
variables. In light of the preceding discussion, the following interpretation of the primal and dual
problems can be made when the primal is a product-mix problem.

Primal Problem Given a per-unit value of each product, determine how much of each
should be produced to maximize the value of the total production. Constraints require the
amount of each resource used to be less than or equal to the amount available.
99790_18_ch18_p001-030.qxd 03/08/2007 04:29 PM Page 18-18

18-18 Chapter 18 Simplex-Based Sensitivity Analysis and Duality

Dual Problem Given the availability of each resource, determine the per-unit value such
that the total value of the resources used is minimized. Constraints require the resource
value per unit be greater than or equal to the value of each unit of output.

Using the Dual to Identify the Primal Solution


At the beginning of this section, we mentioned that an important feature of the primal-dual
relationship is that when an optimal solution is reached, the value of the optimal solution
for the primal problem is the same as the value of the optimal solution for the dual prob-
lem; see property 1. However, the question remains: If we solve only the dual problem, can
we identify the optimal values for the primal variables?
Recall that in Section 18.1 we showed that when a primal problem is solved by the sim-
plex method, the optimal values of the primal variables appear in the right-most column of
the final tableau, and the dual prices (values of the dual variables) are found in the zj row.
The final simplex tableau of the dual problem provides the optimal values of the dual vari-
ables, and therefore the values of the primal variables should be found in the zj row of the
optimal dual tableau. This result is, in fact, the case and is formally stated as property 2.

Property 2
Given the simplex tableau corresponding to the optimal dual solution, the optimal
values of the primal decision variables are given by the z j entries for the surplus vari-
ables; furthermore, the optimal values of the primal slack variables are given by the
negative of the cj  z j entries for the u j variables.

To test your ability to find This property enables us to use the final simplex tableau for the dual of the HighTech
the primal solution from the problem to determine the optimal primal solution of x1  30 units of the Deskpro and
optimal simplex tableau for x 2  12 units of the Portable. These optimal values of x1 and x 2 , as well as the values for
the dual and interpret the
dual variables, try parts (b)
all primal slack variables, are given in the z j and cj  z j rows of the final simplex tableau
and (c) of Problem 17. of the dual problem, which is shown again here.

u1 u2 u3 s1 s2

Basis cB 150 20 300 0 0

u3 300 0 ³⁄₂₅ 1 ⁵⁄₂₅ ³⁄₂₅ ²⁶⁄₅


u1 150 1 ⁸⁄₂₅ 0 ⁵⁄₂₅ ⁸⁄₂₅ ¹⁴⁄₅

zj 150 12 300 30 12 1980


cj  zj 0 8 0 30 12

Finding the Dual of Any Primal Problem


The HighTech Industries primal problem provided a good introduction to the concept of du-
ality because it was formulated as a maximization problem in canonical form. For this form
of primal problem, we demonstrated that conversion to the dual problem is rather easy. If
the primal problem is a minimization problem in canonical form, then the dual is a maxi-
mization problem in canonical form. Therefore, finding the dual of a minimization problem
99790_18_ch18_p001-030.qxd 03/08/2007 04:29 PM Page 18-19

18.2 Duality 18-19

in canonical form is also easy. Consider the following linear program in canonical form for
a minimization problem:

Min 6x1  2x 2
s.t.
5x1  1x 2  13
3x1  7x 2  9
x1, x 2  0

The dual is the following maximization problem in canonical form:

Max 13u1  9u 2
s.t.
5u1  3u 2  6
1u1  7u 2  2
u1, u 2  0

Try Problem 18 for practice Although we could state a special set of rules for converting each type of primal prob-
in finding the dual of a lem into its associated dual, we believe it is easier to first convert any primal problem into
minimization problem in
an equivalent problem in canonical form. Then, we follow the procedures already estab-
canonical form.
lished for finding the dual of a maximization or minimization problem in canonical form.
Let us illustrate the procedure for finding the dual of any linear programming problem
by finding the dual of the following minimization problem:

Min 2x1  3x 2
s.t.
1x1  2x 2  12
4x1  2x 2  3
6x1  1x 2  10
x1, x 2  0

For this minimization problem, we obtain the canonical form by converting all constraints
to greater-than-or-equal-to form. The necessary steps are as follows:
Step 1. Convert the first constraint to greater-than-or-equal-to form by multiplying
both sides of the inequality by (1). Doing so yields

x1  2x 2  12

Step 2. Constraint 3 is an equality constraint. For an equality constraint, we first cre-


ate two inequalities: one with  form, the other with  form. Doing so yields

6x1  1x 2  10
6x1  1x 2  10

Then, we multiply the  constraint by (1) to get two  constraints.

6x1  1x 2  10
6x1  1x 2  10
99790_18_ch18_p001-030.qxd 03/08/2007 04:29 PM Page 18-20

18-20 Chapter 18 Simplex-Based Sensitivity Analysis and Duality

Now the original primal problem has been restated in the following equiva-
lent form:

Min 2x1  3x 2
s.t.
1x1  2x 2  12
4x1  2x 2  3
6x1  1x 2  10
6x1  1x 2  10
x1, x 2  0

With the primal problem now in canonical form for a minimization problem,
we can easily convert to the dual problem using the primal-dual procedure pre-
sented earlier in this section. The dual becomes2

Max 12u1  3u 2  10u3  10u 3


s.t.
1u1  4u 2  6u3  6u 3  2
2u1  2u 2  1u3  1u 3  3
u1, u 2, u3, u3  0

The equality constraint required two  constraints, so we denoted the dual variables asso-
ciated with these constraints as u3 and u3. This notation reminds us that u3 and u3 both re-
Can you write the dual of fer to the third constraint in the initial primal problem. Because two dual variables are
any linear programming associated with an equality constraint, the interpretation of the dual variable must be modi-
problem? Try Problem 19.
fied slightly. The dual variable for the equality constraint 6x1  1x 2  10 is given by the value
of u3  u3 in the optimal solution to the dual. Hence, the dual variable for an equality con-
straint can be negative.

You might also like