Linear Programming: The Simplex Method
Linear Programming: The Simplex Method
C
j
for column $70 $50 $0 $0
The First Simplex Tableau
Obviously with a profit of $0, the initial solution is not
optimal
By examining the numbers in the Z
j
C
j
row in Table, we
can see that the total profits can be increased by $70 for
each unit of T and $50 for each unit of C
A negative number in the number in the Z
j
C
j
row would
tell us that the profits would increase if the corresponding
variable were added to the solution mix
An optimal solution is reached when there are no negative
numbers in the Z
j
C
j
row
Simplex Solution Procedures
After an initial tableau has been completed, we
proceed through a series of five steps to compute
all the numbers needed in the next tableau
The calculations are not difficult, but they are
complex enough that even the smallest arithmetic
error can produce a wrong answer
Five Steps of the Simplex Method for
Maximization Problems
1. Determine the variable to enter the solution mix next. One
way of doing this is by identifying the column, and hence
the variable, with the largest negative number in the C
j
- Z
j
row of the preceding tableau. The column identified in this
step is called the pivot column(key column).
2. Determine which variable to replace. This is accomplished
by dividing the quantity column by the corresponding
number in the column selected in step 1. The row with the
smallest nonnegative number calculated in this fashion will
be replaced in the next tableau. This row is often referred
to as the pivot row(key row or replacing row). The number
at the intersection of the pivot row and pivot column is the
pivot number(key number).
Five Steps of the Simplex Method for
Maximization Problems
3. Compute new values for the pivot row. To do this, we simply
divide every number in the row by the pivot column.
4. Compute the new values for each remaining row. All remaining
rows are calculated as follows:
(New row numbers) = (Numbers in old row)
Number
above or
below
pivot number
Corresponding number in
the new row, that is, the
row replaced in step 3
x
Five Steps of the Simplex Method for
Maximization Problems
5. Compute the Z
j
and Z
j
C
j
rows, as demonstrated in the
initial tableau. If all the numbers in the Z
j
C
j
row are 0 or
negative, an optimal solution has been reached. If this is
not the case, return to step 1.
The Second Simplex Tableau
We can now apply these steps to the Flair Furniture
problem
Step 1. Select the variable with the largest positive Z
j
C
j
value to enter the solution next. In this case, variable T
with a contribution value of $70.
C
j
$70 $50 $0 $0
SOLUTION
MIX
QUANTITY
(RHS)
T C S
1
S
2
$0 S
1
100 2 1 1 0
$0 S
2
240 4 3 0 1
Z
j
$0 $0 $0 $0 $0
Z
j
C
j
-$70 -$50 $0 $0
Pivot column
total profit
The Second Simplex Tableau
Step 2. Select the variable to be replaced. Either S
1
or S
2
will
have to leave to make room for T in the basis. The following
ratios need to be calculated.
tables 50
table) per required 2(hours
available) time painting of 100(hours
For the S
1
row
tables 60
table) per required 4(hours
available) time carpentry of 240(hours
For the S
2
row
The Second Simplex Tableau
We choose the smaller ratio (50) and this determines the S
1
variable is to be replaced. This corresponds to point D on the
graph in Graph
C
j
$70 $50 $0 $0
SOLUTION
MIX
QUANTITY
(RHS)
T C S
1
S
2
Ratio
$0 S
1
100 2 1 1 0 50
$0 S
2
240 4 3 0 1 60
Z
j
$0 $0 $0 $0 $0
Z
j
- C
j
-$70 -$50 $0 $0
Pivot column
Pivot row
Pivot number
Mini. Ratio
The Second Simplex Tableau
Step 3. We can now begin to develop the second, improved
simplex tableau. We have to compute a replacement for the
pivot row. This is done by dividing every number in the pivot
row by the pivot number. The new version of the pivot row is
below.
1
2
2
5 0
2
1
.
5 0
2
1
.
*
0
2
0
50
2
100
C
j
SOLUTI
ON MIX
QUANTI
TY
T C S
1
S
2
$7
0
T 50 1 0.5 0.5 0
The Second Simplex Tableau
Step 4. Completing the rest of the tableau, the S
2
row, is
slightly more complicated. The right of the following
expression is used to find the left side.
Number in
New S
2
Row
=
Number in
Old S
2
Row
Intersecting
element in old
row
Corresponding Number
in the Replacement Row
0 = 4 (4) (1)
1 = 3 (4) (0.5)
2 = 0 (4) (0.5)
1 = 1 (4) (0)
40 = 240 (4) (50)
C
j
SOLUTION
MIX
QUANTI
TY
T C S
1
S
2
$7
0
T 50 1 0.5 0.5 0
$0 S
2
40 0 1 2 1
The Second Simplex Tableau
1
0
0
1
The T column contains and the S
2
column
Contains , necessary conditions for
variables to
be in the solution. The manipulations of steps 3
and 4 were designed to produce 0s and 1s in the
appropriate positions.
The Second Simplex Tableau
Step 5. The final step of the second iteration is to introduce
the effect of the objective function. This involves computing
the Z
j
C
j
rows. The Z
j
for the quantity row gives us the
gross profit and the other Z
j
represent the gross profit given
up by adding one unit of each variable into the solution.
Z
j
(for T column) = ($70)(1) + ($0)(0) = $70
Z
j
(for C column) = ($70)(0.5) + ($0)(1) = $35
Z
j
(for S
1
column) = ($70)(0.5) + ($0)(2) = $35
Z
j
(for S
2
column) = ($70)(0) + ($0)(1) = $0
Z
j
(for total profit) = ($70)(50) + ($0)(40) = $3,500
The Second Simplex Tableau
Completed second simplex tableau
C
j
$70 $50 $0 $0
SOLUTION
MIX
QUANTITY
(RHS) T C S
1
S
2
Rario
(RHS)
$70 T 50 1 0.5 0.5 0 50
$0 S
2
40 0 1 2 1 40
Z
j
$3,500 $70 $35 $35 $0 $3,500
Z
j
- C
j
$0 -$15 $35 $0
COLUMN
T C S
1
S
2
C
j
for column $70 $50 $0 $0
Z
j
for column $70 $35 $35 $0
Z
j
- C
j
for column $0 $15 $35 $0
Interpreting the Second Tableau
Current solution
The solution point of 50 tables and 0 chairs
(T = 50, C = 0) generates a profit of $3,500. T is a basic
variable and C is a nonbasic variable. This corresponds
to point D in Graph
Resource information
Slack variable S
2
is the unused time in the carpentry
department and is in the basis. Its value implies there
is 40 hours of unused carpentry time remaining. Slack
variable S
1
is nonbasic and has a value of 0 meaning
there is no slack time in the painting department.
Interpreting the Second Tableau
Substitution rates
Substitution rates are the coefficients in the heart of
the tableau. In column C, if 1 unit of C is added to the
current solution, 0.5 units of T and 1 unit of S
2
must be
given up. This is because the solution T = 50 uses up all
100 hours of painting time available.
Because these are marginal rates of substitution, so
only 1 more unit of S
2
is needed to produce 1 chair
In column S
1
, the substitution rates mean that if 1 hour
of slack painting time is added to producing a chair, 0.5
less of a table will be produced
Interpreting the Second Tableau
Net profit row
The Z
j
C
j
row is important for two reasons
First, it indicates whether the current solution is
optimal
When there are no positive values in the bottom row,
an optimal solution to a maximization LP has been
reached
The second reason is that we use this row to determine
which variable will enter the solution next
Developing the Third Tableau
Since the previous tableau is not optimal, we repeat the
five simplex steps
Step 1. Variable C will enter the solution as its Z
j
C
j
value of 15 is the largest
negative value. The C column is the new pivot column.
Step 2. Identify the pivot row by dividing the number in the quantity column by its
corresponding substitution rate in the C column.
chairs 100
5 0
50
row the For
.
: T
Ratio Minimum chairs 40
1
40
: row For the
2
S
Developing the Third Tableau
These ratios correspond to the values of C at points F and C in Graph. The S
2
row
has the smallest ratio so S
2
will leave the basis and will be replaced by C.
C
j
$70 $50 $0 $0
SOLUTION
MIX
QUANTITY T C S
1
S
2
Ratio
$70 T 50 1 0.5 0.5 0 50
$0 S
2
40 0 1 2 1 40Min
Z
j
$3,500 $70 $35 $35 $0 $3,500
Z
j
C
j
$0 $15 $35 $0
Pivot column
Pivot row
Pivot number
Developing the Third Tableau
Step 3. The pivot row is replaced by dividing every number in it by the pivot point
number
0
1
0
1
1
1
2
1
2
1
1
1
40
1
40
_
Fourth Tableau for Muddy River
The new pivot column is the S
2
column
550
1
550
row the For
1
A
0
300
row the For
1
X
1
150
row the For
2
X
(row to be replaced)
(undefined)
(not considered because
it is negative)
Infinity
Fourth Tableau for Muddy River
Each number in the pivot row is again divided by 1
The other calculations are shown below
X
1
Row X
2
Row
1 = 1 (0)(0) 0 = 0 (1)(0)
0 = 0 (0)(0) 1 = 1 (1)(0)
1 = 1 (0)(1) 1 = 0 (1)(1)
0 = 0 (0)(1) 0 = 1 (1)(1)
0 = 0 (0)(1) 1 = 0 (1)(1)
0 = 0 (0)(1) 0 = 1 (1)(1)
300 = 300 (0)(550) 700 = 150 (1)(550)
Fourth Tableau for Muddy River
Finally the Z
j
and Z
j
C
j
rows are computed
Z
j
(for X
1
) = $0(0) + $5(1) + $6(0) = $5
Z
j
(for X
2
) = $(0) + $5(0) + $6(1) = $6
Z
j
(for S
1
) = $0(1) + $5(1) + $6(1) = $1
Z
j
(for S
2
) = $0(1) + $5(0) + $6(0) = $0
Z
j
(for A
1
) = $0(1) + $5(0) + $6(1) = $6
Z
j
(for A
2
) = $0(1) + $5(0) + $6(0) = $0
Z
j
(for total cost) = $0(550) + $5(300) + $6(700) = $5,700
COLUMN
X
1
X
2
S
1
S
2
A
1
A
2
C
j
for column
$5 $6 $0 $0 $M $M
Z
j
for column
$5 $6 $1 $0 $6 $0
Z
j
- C for column $0 $0 $1 $0 $M +6 $M
Fourth Tableau for Muddy River
Fourth and optimal tableau for the Muddy River Chemical Corporation
problem
C
j
$5 $6 $0 $0 $M $M
SOLUTIO
N MIX
QUANTI
TY
X
1
X
2
S
1
S
2
A
1
A
2
$0 S
2
550 0 0 1 1 1 1
$5 X
1
300 1 0 1 0 0 0
$6 X
2
700 0 1 1 0 1 0
Z
j
$5,700 $5 $6 $1 $0 $6 $0
Z
j
- C $0 $0 $1 $0
$M
+6
$M
Review of Procedures for Solving LP
Minimization Problems
I. Formulate the LP problems objective function and
constraints
II. Include slack variables to each less-than-or-equal-to
constraint and both surplus and artificial variables to
greater-than-or-equal-to constraints and add all
variables to the objective function
III. Develop and initial simplex tableau with artificial and
slack variables in the basis and the other variables set
equal to 0. compute the Z
j
and
Z
j
C
j
values for this tableau.
IV. Follow the five steps until an optimal solution has been
reached
Review of Procedures for Solving LP
Minimization Problems
1. Choose the variable with the positive Z
j
C
j
indicating
the greatest improvement to enter the solution in the
pivot column
2. Determine the row to be replaced and the pivot row by
selecting the row with the smallest (nonnegative)
quantity-to-pivot column substitution rate ratio
3. Calculate the new values for the pivot row
4. Calculate the new values for the other row(s)
5. Calculate the Z
j
and Z
j
C
j
values for the tableau. If
there are any Z
j
C
j
numbers greater than 0, return to
step 1. If not, and optimal solution has been reached.
Special Cases
We have seen how special cases arise when
solving LP problems graphically
They also apply to the simplex method
You remember the four cases are
Infeasibility
Unbounded Solutions
Degeneracy
Multiple Optimal Solutions
Infeasibility
Infeasibility comes about when there is no solution that
satisfies all of the problems constraints
In the simplex method, an infeasible solution is indicated
by looking at the final tableau
All Z
j
C
j
row entries will be of the proper sign to imply
optimality, but an artificial variable will still be in the
solution mix
A situation with no feasible solution may exist if the
problem was formulated improperly
Infeasibility
Illustration of infeasibility
C
j
$5 $8 $0 $0 $M $M
SOLUTIO
N MIX
QUANTI
TY
X
1
X
2
S
1
S
2
A
1
A
2
$5 X
1
200 1 0 2 3 1 0
$8 X
2
100 0 1 1 2 2 0
$
M
A
2
20 0 0 0 1 1 1
Z
j
$1,800 +
20M
$5 $8 $2 $31 M $21 M $M
Z
j
- C
j
$0 $0 $2 $31 M $21 2M $0
Unbounded Solutions
Unboundedness describes linear programs that do not
have finite solutions
It occurs in maximization problems when a solution
variable can be made infinitely large without violating a
constraint
In the simplex method this will be discovered prior to
reaching the final tableau
It will be manifested when trying to decide which variable
to remove from the solution mix
If all the ratios turn out to be negative or undefined, it
indicates that the problem is unbounded
Unbounded Solutions
Problem with an unbounded solution
C
j
$6 $9 $0 $0
SOLUTIO
N MIX
QUANTITY X
1
X
2
S
1
S
2
Ratio
$9 X
2
30 1 1 2 0 -
$0 S
2
10 2 0 1 1 -
Z
j
$270 $9 $9 $18 $0
Z
j
- C
j
$15 $0 $18 $0
Pivot column
Unbounded Solutions
The ratios from the pivot column
1
30
row the for Ratio
2
: X
2
10
row the for Ratio
2
: S
Negative ratios
unacceptable
Since both pivot column numbers are negative, an unbounded solution is
indicated
Degeneracy
Degeneracy develops when three constraints pass through
a single point
For example, suppose a problem has only these three
constraints X
1
10, X
2
10, and X
1
+ X
2
< 20
All three constraint lines will pass through the point (10,
10)
Degeneracy is first recognized when the ratio calculations
are made
If there is a tie for the smallest ratio, this is a signal that
degeneracy exists
As a result of this, when the next tableau is developed,
one of the variables in the solution mix will have a value of
zero
Degeneracy
Degeneracy could lead to a situation known as cycling in
which the simplex algorithm alternates back and forth
between the same nonoptimal solutions
One simple way of dealing with the issue is to select either
row in question arbitrarily
If unlucky and cycling does occur, simply go back and
select the other row
Degeneracy
Problem illustrating degeneracy
C
j
$5 $8 $2 $0 $0 $0
SOLUTIO
N MIX
QUANTIT
Y
X
1
X
2
X
3
S
1
S
2
S
3
Ratio
$8 X
2
10 0.25 1 1 2 0 0 40
$0 S
2
20 4 0 0.33 1 1 0 5Min
$0 S
3
10 2 0 2 0.4 0 1 5Min
Z
j
$80 $2 $8 $8 $16 $0 $0
Z
j
- C
j
$3 $0 $6 $16 $0 $0
Pivot column
Degeneracy
The ratios are computed as follows
40
25 0
10
row the For
2
.
: X
5
4
20
row the For
2
: S
5
2
10
row the For
3
: S
Tie for the smallest ratio
indicates degeneracy
Multiple Optimal Solutions
In the simplex method, multiple, or alternate, optimal
solutions can be spotted by looking at the final tableau
If the Z
j
C
j
value is equal to 0 for a variable that is not in
the solution mix, more than one optimal solution exists
Multiple Optimal Solutions
A problem with alternate optimal solutions
C
j
$3 $2 $0 $0
SOLUTION
MIX
QUANTITY X
1
X
2
S
1
S
2
$2 X
2
6 1.5 1 1 0
$0 S
2
3 1 0 0.5 1
Z
j
$12 $3 $2 $2 $0
Z
j
- C
j
$0 $0 $2 $0
Sensitivity Analysis with the Simplex
Tableau
Sensitivity analysis shows how the optimal solution and
the value of its objective function change given changes in
various inputs to the problem
Computer programs handling LP problems of all sizes
provide sensitivity analysis as an important output feature
Those programs use the information provided in the final
simplex tableau to compute ranges for the objective
function coefficients and ranges for the RHS values
They also provide shadow prices, a concept we will
introduce in this section
High Note Sound Company Revisited
You will recall the model formulation is
Maximize profit = $50X
1
+ $120X
2
subject to 2X
1
+ 4X
2
80 (hours of
electrician time)
3X
1
+ 1X
2
60 (hours of technician
time)
X
2
= 20 receivers
S
2
= 40 hours slack in technician time
X
1
= 0 CD players
S
1
= 0 hours slack in electrician time
Basic
variables
And the optimal solution is
Nonbasic
variables
High Note Sound Company Revisited
High Note Sound Company graphical solution
b = (16, 12)
Optimal Solution at Point a
X
1
= 0 CD Players
X
2
= 20 Receivers
Profits = $2,400
a = (0, 20)
Isoprofit Line: $2,400 = 50X
1
+ 120X
2
60
40
20
10
0
X
2
| | | | | |
10 20 30 40 50 60
X
1
(receivers)
(CD players) c = (20, 0)
Figure 9.4
Changes in the
Objective Function Coefficient
C
j
$50 $120 $0 $0
SOLUTION
MIX
QUANTITY X
1
X
2
S
1
S
2
$12
0
X
2
20 0.5 1 0.25 0
$0 S
2
40 2.5 0 0.25 1
Z
j
$2,400 $60 $120 $30 $0
Z
j
- C
j
$10 $0 $30 $0
Table 9.15
Optimal solution by the simplex method
Changes in the
Objective Function Coefficient
Nonbasic objective function coefficient
The goal is to find out how sensitive the problems optimal solution is to
changes in the contribution rates of variables not currently in the basis
How much would the objective function coefficients have to change
before X
1
or S
1
would enter the solution mix and replace one of the basic
variables?
The answer lies in the Z
j
C
j
row of the final simplex tableau
Changes in the
Objective Function Coefficient
This is a maximization problem so the basis will not
change unless the Z
j
C
j
value of one of the nonbasic
variables becomes greater than 0
The values in the basis will not change as long as C
j
Z
j
The solution will not change as long as X
1
does not exceed
$60 and the contribution rate of S
2
does not exceed $30
These values can also be made smaller without limit in
this situation
So the range of insignificance for the nonbasic variables is
60 for
1
$ ) ( X C
j
30 for
1
$ ) ( S C
j
Changes in the
Objective Function Coefficient
Basic objective function coefficient
Sensitivity analysis on objective function coefficients of
variables in the basis or solution mix is slightly more
complex
A change in the profit or cost of a basic variable can
affect the Z
j
C
j
values for all nonbasic variables
Thats because the C
j
value is in both the row and
column
This then impacts the Z
j
C
j
row
Changes in the
Objective Function Coefficient
Consider a change in the profit contribution of stereo
receivers
The current coefficient is $120
The changed coefficient will be represented as
The revised final tableau will then be
C
j
$50 $120 + $0 $0
SOLUTI
ON MIX
QUANTI
TY
X
1
X
2
S
1
S
2
$120 + X
2
20 0.5 1 0.25 0
$0 S
2
40 2.5 0 0.25 1
Z
j
$2,400 +
20
$60 + 0.5 $120 + $30 + 0.25 $0
Z
j
- C
j
$10 + 0.5 $0 $30 + 0.25 $0
Changes in the
Objective Function Coefficient
The new Z
j
C
j
values in the table were determined in
the same way as previous examples
How may the value of vary so that all Z
j
C
j
entries
remain negative?
To find out, solve for in each column
10 0.5 0
10 0.5
20 or 20
This inequality means the optimal solution will not change
unless X
2
s profit coefficient decreases by at least $20, =
20
Changes in the
Objective Function Coefficient
Variable X
1
will not enter the basis unless the profit per
receiver drops to $100 or less
For the S
1
column
30 0.25 0
30 0.25
120 or 120
Since the first inequality is more binding, we can say that
the range of optimality for X
2
s profit coefficient is
) ( $
2
for 100 X C
j
Changes in the
Objective Function Coefficient
In larger problems, we would use this procedure to test
for the range of optimality of every real decision variable
in the final solution mix
Using this procedure helps us avoid the time-consuming
process of reformulating and resolving the entire LP
problem each time a small change occurs
Within the bounds, changes in profit coefficients will not
force a change in the optimal solution
The value of the objective function will change, but this is
a comparatively simple calculation
Changes in Resources or RHS Values
Making changes in the RHS values of constraints result in
changes in the feasible region and often the optimal
solution
Shadow prices
How much should a firm be willing to pay for one
additional unit of a resource?
This is called the shadow price
Shadow pricing provides an important piece of economic
information
This information is available in the final tableau
Changes in Resources or RHS Values
Final tableau for High Note Sound
C
j
$50 $120 $0 $0
SOLUTION
MIX
QUANTITY X
1
X
2
S
1
S
2
$12
0
X
2
20 0.5 1 0.25 0
$0 S
2
40 2.5 0 0.25 1
Z
j
$2,400 $60 $120 $30 $0
Z
j
- C
j
$10 $0 $30 $0
Objective function increases by $30 if 1
additional hour of electricians time is
made available
Changes in Resources or RHS Values
An important property of the Z
j
C
j
row is that the negatives
of the numbers in its slack variable (S
i
) columns provide us
with shadow prices
A shadow price is the change in value of the objective
function from an increase of one unit of a scarce resource
High Note Sound is considering hiring an extra electrician at
$22 per hour
In the final tableau we see S
1
(electricians time) is fully
utilized and has a Z
j
C
j
value of $30
They should hire the electrician as the firm will net $8 (= $30
$22)
Changes in Resources or RHS Values
Should High Note Sound hire a part-time audio technician
at $14 per hour?
In the final tableau we see S
2
(audio technician time) has
slack capacity (40 hours) a Z
j
C
j
value of $0
Thus there would be no benefit to hiring an additional
audio technician
Changes in Resources or RHS Values
Right-hand side ranging
We cant add an unlimited amount of a resource
without eventually violating one of the other
constraints
Right-hand-side ranging tells us how much we can
change the RHS of a scarce resource without changing
the shadow price
Ranging is simple in that it resembles the simplex
process
Changes in Resources or RHS Values
This table repeats some of the information from the final
tableau for High Note Sound and includes the ratios
QUANTITY S
1
RATIO
20 0.25 20/0.25 = 80
40 0.25 40/0.25 = 160
The smallest positive ratio (80 in this example) tells us how many hours the
electricians time can be reduced without altering the current solution mix
Changes in Resources or RHS Values
The smallest negative ratio (160) tells us the number of
hours that can be added to the resource before the
solution mix changes
In this case, thats 160 hours
So the range over which the shadow price for electricians
time is valid is 0 to 240 hours
The audio technician resource is slightly different
There is slack in this resource (S
2
= 40) so we can reduce
the amount available by 40 before a shortage occurs
However, we can increase it indefinitely with no change in
the solution
Changes in Resources or RHS Values
The substitution rates in the slack variable column can
also be used to determine the actual values of the
solution mix variables if the right-hand-side of a constraint
is changed using the following relationship
New quantity Original
quantity
Substitution rate Change in the RHS
= +
Changes in Resources or RHS Values
For example, if 12 more electrician hours were made
available, the new values in the quantity column of the
simplex tableau are found as follows
ORIGINAL QUANTITY S
1
NEW QUANTITY
20 0.25 20 + 0.25(12) = 23
40 0.25 40 + (0.25)(12) = 37
If 12 hours were added, X
2
= 23 and S
2
= 37
Total profit would be 50(0) + 120(23) = $2,760, an increase of $360
This of course, is also equal to the shadow price of $30 times the 12
additional hours
Sensitivity Analysis by Computer
Solver in Excel has the capability of producing sensitivity
analysis that includes the shadow prices of resources
The following slides present the solution to the High Note
Sound problem and the sensitivity report showing shadow
prices and ranges
Sensitivity Analysis by Computer
Program 9.1a
Sensitivity Analysis by Computer
Program 9.1b
The Dual
Every LP problem has another LP problem associated with it
called the dual
The first way of stating a problem (what we have done so far)
is called the primal
The second way of stating it is called the dual
The solutions to the primal and dual are equivalent, but they
are derived through alternative procedures
The dual contains economic information useful to managers
and may be easier to formulate
The Dual
Generally, if the LP primal is a maximize profit problem with
less-than-or-equal-to resource constraints, the dual will
involve minimizing total opportunity cost subject to greater-
than-or-equal-to product profit constraints
Formulating a dual problem is not complex and once
formulated, it is solved using the same procedure as a regular
LP problem
The Dual
Illustrating the primal-dual relationship with the High Note
Sound Company data
The primal problem is to determine the best production mix
between CD players (X
1
) and receivers (X
2
) to maximize profit
Maximize profit = $50X
1
+ $120X
2
subject to 2X
1
+ 4X
2
80 (hours of available
electrician time)
3X
1
+ 1X
2
60 (hours of audio
technician time
available)
The Dual
The dual of this problem has the objective of minimizing
the opportunity cost of not using the resources in an
optimal manner
The variables in the dual are
U
1
= potential hourly contribution of
electrician time, or the dual value of 1
hour of electrician time
U
2
= the imputed worth of audio technician
time, or the dual of technician resource
Each constraint in the primal problem will have a
corresponding variable in the dual and each decision
variable in the primal will have a corresponding constraint
in the dual
The Dual
The RHS quantities of the primal constraints become the
duals objective function coefficients
The total opportunity cost will be represented by the
function
Minimize opportunity cost = 80U
1
+ 60U
2
The corresponding dual constraints are formed from the
transpose of the primal constraint coefficients
2 U
1
+ 3 U
2
50
4 U
1
+ 1 U
2
120
Primal profit coefficients
Coefficients from the second
primal constraint
Coefficients from the first primal
constraint
The Dual
The first constraint says that the total imputed value or
potential worth of the scarce resources needed to
produce a CD player must be at least equal to the profit
derived from the product
The second constraint makes an analogous statement for
the stereo receiver product
Steps to Form the Dual
If the primal is a maximization problem in the standard form,
the dual is a minimization, and vice versa
The RHS values of the primal constraints become the duals
objective coefficients
The primal objective function coefficients become the RHS
values of the dual constraints
The transpose of the primal constraint coefficients become
the dual constraint coefficients
Constraint inequality signs are reversed
Solving the Dual of the High Note Sound
Company Problem
The formulation can be restated as
= 80U
1
+ 60U
2
+ 0S
1
+ 0S
2
+ MA
1
+ MA
2
2U
1
+ 3U
2
0S
1
+ 1A
1
= 50
4U
1
+ 1U
2
0S
2
+ 1A
2
= 120
Minimize
opportunity
cost
subject to:
Solving the Dual of the High Note Sound
Company Problem
The first and second tableaus
C
j
80 60 0 0 M M
SOLUTIO
N MIX
QUANTIT
Y
U
1
U
2
S
1
S
2
A
1
A
2
First
tablea
u
$M A
1
50 2 3 1 0 1 0
$M A
2
120 4 1 0 1 0 1
Z
j
$170M $6M $4M $M $M $M $M
Z
j
- C
j
80
+6M
60 +
4M
M M 0 0
Secon
d
tablea
u
$8
0
U
1
25 1 1.5 0.5 0 0.5 0
$M A
2
20 0 5 2 1 2 1
Z
j
$2,000 +
20M
$80
$120
5M
$40 +
2M
$M $40 2M $M
Z
j
- C
j
0 5M + 60 2M40 M 3M 40 0
Solving the Dual of the High Note Sound
Company Problem
Comparison of the primal and dual optimal tableaus
Primals Optimal Solution
C
j
$50 $120 $0 $0
Solution Mix X
1
X
2
S
1
S
2
Quantity
$120 X
2
0.5 1 0.25 0 20
$0 S
2
2.5 0 0.25 1 40
Z
j
60 120 30 0 $2,400
C
j
Z
j
10 0 30 0
Duals Optimal Solution
C
j
80 60 0 0 M M
Solution Mix U
1
U
2
S
1
S
2
A
1
A
2
Quantity
80 U
1
1 0.25 0 0.25 0 0.5 30
0 S
1
0 2.5 1 0.5 1 0.25 10
Z
j
80 20 0 20 0 20 $2,400
C
j
Z
j
0 40 0 20 M M 20
Solving the Dual of the High Note Sound
Company Problem
In the final simplex tableau of a primal problem, the
absolute values of the numbers in the Z
j
C
j
row under
the slack variables represent the solutions to the dual
problem
They are shadow prices in the primal solution and
marginal profits in the dual
The absolute value of the numbers of the Z
j
C
j
values of
the slack variables represent the optimal values of the
primal X
1
and X
2
variables
The maximum opportunity cost derived in the dual must
always equal the maximum profit derived in the primal
Karmakars Algorithm
In 1984, Narendra Karmakar developed a new method of
solving linear programming problems called the Karmakar
algorithm
The simplex method follows a path of points on the
outside edge of feasible space
Karmakars algorithm works by following a path a points
inside the feasible space
It is much more efficient than the simplex method
requiring less computer time to solve problems
It can also handle extremely large problems allowing
organizations to solve previously unsolvable problems