appendix linear programming

44
Appendix: Linear Programming Solution Methods Although the graphical solution method that was presented in Chapter 8 is a useful learn- ing device for those with limited knowledge of linear programming (LP), other meth- ods are used daily in the worlds of business and government to solve real LP problems. Preeminent among these are the simplex, transportation, and assignment methods. Introduction Simplex Method Simplex Maximization Solutions Simplex Minimization Solutions Interpreting Simplex Solutions Postoptimality Analysis Unusual Features of Some LP Problems Transportation Method Characteristics of Transportation Problems Solution Procedures of the Transportation Method Unbalanced Problems Degeneracy Assignment Method Review and Discussion Questions Problems Computer Solutions Selected Bibliography Answers to Odd-Numbered Problems SIMPLEX METHOD Simplex does not mean simple. Nevertheless, the simplex method is used term after term by thousands of students just like you, and you can do it too. The main thing is to keep your eye on the big picture: Understand the overall procedures of the simplex method because it is easy to get bogged down in the nitty-gritty details and lose sight of the general process. Pay attention to the small details; this is necessary. But also constantly keep in mind the overall process. The best way to learn the simplex method is to use it to work LP problems. “Ex- perience is the best teacher” certainly applies here. Simplex Maximization Solutions Table 1 presents the steps in the simplex method. Read them carefully, and don’t worry too much about being confused. Remember, get the big picture. Working through an example will demonstrate the meaning of each of these steps. Example 1 uses the sim- plex method to solve Problem LP-1 from Chapter 8 while methodically following the steps of the simplex method. Work through every step in this example meticulously; this is absolutely necessary to an understanding of the method. Notice that the step numbers in this example correspond to the step numbers in Table 1. You will not need a calculator, because calculators compute in decimals that require rounding or trun- cating. These sources of error are unacceptable in the simplex method, and therefore all calculations are carried out in fractions. 1

Upload: kapil-sharma

Post on 26-Oct-2014

217 views

Category:

Documents


10 download

TRANSCRIPT

Page 1: Appendix Linear Programming

Appendix 1

Appendix: Linear Programming Solution Methods

Although the graphical solution method that was presented in Chapter 8 is a useful learn-ing device for those with limited knowledge of linear programming (LP), other meth-ods are used daily in the worlds of business and government to solve real LP problems.Preeminent among these are the simplex, transportation, and assignment methods.

IntroductionSimplex Method

Simplex Maximization SolutionsSimplex Minimization SolutionsInterpreting Simplex SolutionsPostoptimality AnalysisUnusual Features of Some LP Problems

Transportation MethodCharacteristics of Transportation ProblemsSolution Procedures of the Transportation Method

Unbalanced ProblemsDegeneracy

Assignment MethodReview and Discussion QuestionsProblemsComputer SolutionsSelected BibliographyAnswers to Odd-Numbered Problems

SIMPLEX METHOD

Simplex does not mean simple. Nevertheless, the simplex method is used term afterterm by thousands of students just like you, and you can do it too. The main thing isto keep your eye on the big picture: Understand the overall procedures of the simplexmethod because it is easy to get bogged down in the nitty-gritty details and lose sightof the general process. Pay attention to the small details; this is necessary. But alsoconstantly keep in mind the overall process.

The best way to learn the simplex method is to use it to work LP problems. “Ex-perience is the best teacher” certainly applies here.

Simplex Maximization SolutionsTable 1 presents the steps in the simplex method. Read them carefully, and don’t worrytoo much about being confused. Remember, get the big picture. Working through anexample will demonstrate the meaning of each of these steps. Example 1 uses the sim-plex method to solve Problem LP-1 from Chapter 8 while methodically following thesteps of the simplex method. Work through every step in this example meticulously;this is absolutely necessary to an understanding of the method. Notice that the stepnumbers in this example correspond to the step numbers in Table 1. You will not needa calculator, because calculators compute in decimals that require rounding or trun-cating. These sources of error are unacceptable in the simplex method, and thereforeall calculations are carried out in fractions.

1

Page 2: Appendix Linear Programming

Appendix: Linear Programming Solution Methods2

Example 1 Simplex Solution of LP-1, a Maximization Problem

As part of its strategic planning process, the Precision Manufacturing Company must determinethe mix of its products to be manufactured next year. The company produces two principal prod-uct lines for the commercial construction industry, a line of powerful portable circular saws anda line of precision table saws. The two product lines share the same production capacity and aresold through the same sales channels. Although some product variety does exist within each prod-uct line, the average profit is $900 for each circular saw and $600 for each table saw. The pro-duction capacity is constrained in two ways, fabrication and assembly capacity. A maximum of4,000 hours of fabrication capacity is available per month, and each circular saw requires twohours and each table saw requires one hour. A maximum of 5,000 hours of assembly capacity isavailable per month, and each circular saw requires one hour and each table saw requires twohours. The marketing department estimates that there is a maximum market demand next year ofa total of 3,500 saws per month for both product lines combined. How many circular saws andhow many table saws should be produced monthly next year to maximize profits?

1. Formulate the objective and constraint functions.LP-1 was formulated in Chapter 8 as:

Max Z � 900X1 � 600X2

2X1 � X2 � 4,000 (fabrication—hours)

X1 � 2X2 � 5,000 (assembly—hours)

X1 � X2 � 3,500 (market—saws)

where:

X1 � number of circular saws to be manufactured per monthX2 � number of table saws to be manufactured per month

2. Add slack variables to convert each constraint to an equality (�):a. 2X1 � X2 � 4,000 (fabrication—hours)

Note that the left-hand side of the expression is less than or equal to the right-hand side(RHS). If the expression is to be an equality (�), something must be added to the left-hand side to increase its value up to the level of the RHS. We shall add a slack variableS1 to take up the slack between the value of the left-hand side and the RHS. S1 will take

Table 1 Steps in the Simplex Solution Method

1. Formulate the objective and constraint functions.

2. Add slack variables to convert each constraint to an equality (�).

3. Add artificial variables to constraints that were originally � or � to produce a starting solution.

4. Set up the first tableau, starting solution.

5. Check solution for optimality. If optimal, stop. If not, continue.

6. Select a variable to enter to improve the solution.

7. Select a variable to leave the solution.

8. Perform row operations to complete the new solution.

9. Return to Step 5 and continue until optimality is achieved.

Page 3: Appendix Linear Programming

Appendix: Linear Programming Solution Methods 3

on the value of zero if the left-hand side exactly equals 4,000 and a value of 4,000 if X1

and X2 equal zero. When X1 and X2 take on values larger than zero, the value of S1 willdecrease accordingly so that the left-hand side of the expression exactly equals 4,000:

2X1 � X2 � S1 � 4,000

Note the subscript 1 in S1 denotes that S1 is the slack variable for the first constraint. Whenwe proceed with and complete the simplex solution, and S1 takes on some specific valueat the end, we shall automatically know that S1 belongs to the first constraint—unused fab-rication hours. Similarly, S2 will belong to the second constraint—unused assembly hours.

b. The second constraint is converted to an equality by adding a slack variable S2 to theleft-hand side:

X1 � 2X2 � S2 � 5,000 (assembly—hours)

c. The third constraint is converted to an equality by adding a slack variable S3 to the left-hand side:

X1 � X2 � S3 � 3,500 (market—saws)

We now have this LP problem:

Max Z � 900X1 � 600X2

2X1 � X2 � S1 � 4,000

X1 � 2X2 � S2 � 5,000

X1 � X2 � S3 � 3,500

3. Add artificial variables to constraints that were originally � or � to produce a startingsolution. Since the constraints in this problem were all �, no artificial variables are required.

4. Set up the first tableau, starting solution.A tableau simply means a table. Each solution will be a tableau.

a. First, let all variables appear in the objective function and constraint functions. This isachieved by assigning zero coefficients to all variables not appearing in these expres-sions:

Max Z � 900X1 � 600X2 � 0S1 � 0S2 � 0S3

2X1 � X2 � S1 � 0S2 � 0S3 � 4,000

X1 � 2X2 � 0S1 � S2 � 0S3 � 5,000

X1 � X2 � 0S1 � 0S2 � S3 � 3,500

b. Now put the problem above into the tableau format. The format is achieved by enteringthe set of coefficients for all the variables into the framework below:

First Tableau

C 900 600 0 0 0

SOL RHS X1 X2 S1 S2 S3 �

0 S1 4,000 2 1 1 0 00 S2 5,000 1 2 0 1 00 S3 3,500 1 1 0 0 1

Z 0 0 0 0 0 0

(C � Z) 900 600 0 0 0

Page 4: Appendix Linear Programming

Appendix: Linear Programming Solution Methods4

c. Constraints. The RHS value of each constraint is placed in the RHS column, and thecoefficients of the variables in the constraint are placed under the variable columns.

d. Objective function. The coefficients of the variables in the objective function are placedin Row C above the appropriate variable columns.

e. SOL column. Note that the shaded matrix under the S1, S2, and S3 columns is an iden-tity matrix, a NW to SE diagonal of ones with all other elements zero. The variablesover the columns of the identity matrix are always in the SOL column.

SOL S1 S2 S3

S1 1 0 0S2 0 1 0S3 0 0 1

This condition will always hold: A variable found in the SOL column will have a oneat the intersection of its row and column, and all other elements in its column will bezero. This condition holds for all tableaus. The variables in the SOL column are referredto as the basic variables for that particular tableau. The number of basic variables is al-ways equal to the number of constraints. All of the variables not listed in the SOL col-umn are referred to as the nonbasic variables for that particular tableau. Exactly whichvariables are basic and which variables are nonbasic will change with each different so-lution (tableau) as the simplex method proceeds.

f. C column. The zeros in the C column and opposite S1, S2, and S3 are taken from RowC elements above S1, S2, and S3. This condition will always hold: The values in the Ccolumn are the coefficients in the objective function that correspond to the variablesfound in the SOL column of the tableau (i.e., the basic variables).

g. Row Z. The elements in Row Z are all computed. Since the elements in the C columnwere zero, all the elements in Row Z were zero; however, the elements in the C columnwill not always be zero. Each element in Row Z is computed as follows:

ZRHS � (0)(4,000) � (0)(5,000) � (0)(3,500) � 0

ZX1� (0)(2) � (0)(1) � (0)(1) � 0

ZX2� (0)(1) � (0)(2) � (0)(1) � 0

ZS1� (0)(1) � (0)(0) � (0)(0) � 0

ZS2� (0)(0) � (0)(1) � (0)(0) � 0

ZS3� (0)(0) � (0)(0) � (0)(1) � 0

This step will become clearer in subsequent tableaus.h. Row (C � Z). These values are computed by subtracting each element in Row Z from

its counterpart in Row C:

(C � Z)X1� 900 � 0 � 900

(C � Z)X2� 600 � 0 � 600

(C � Z)S1� 0 � 0 � 0

(C � Z)S2� 0 � 0 � 0

(C � Z)S3� 0 � 0 � 0

i. The starting solution. This completes the explanation of the first tableau. The solutionof the first tableau is:

X1 � 0 circular saws to be manufactured per month

X2 � 0 table saws to be manufactured per month

Page 5: Appendix Linear Programming

Appendix: Linear Programming Solution Methods 5

S1 � 4,000 unused fabrication hours per month

S2 � 5,000 unused assembly hours per month

S3 � 3,500 unsatisfied market demand for saws per month

Z � $0 profits per month

To read the solution from the simplex tableau you need only look at the SOL and RHScolumns. The variables in the SOL column (basic variables) are equal to the correspond-ing values in the RHS column. All other variables (nonbasic variables) are equal to zero.Therefore, from the SOL and RHS columns, S1 � 4,000, S2 � 5,000, S3 � 3,500, andZ � 0. Because X1 and X2 are not listed in the SOL column (i.e., they are nonbasic vari-ables in this tableau), X1 � 0 and X2 � 0.

5. Check solution for optimality. If optimal, stop. If not, continue.Solutions are optimal when all the values in Row (C � Z) are either zero or negative. Whenany of the values in this row are nonzero positive numbers, the solution can be improved bycontinuing and the solution is not optimal. In our first tableau of LP-1, both X1 and X2 haveRow (C � Z) elements that are nonzero and positive. It is therefore not optimal, and we mustcontinue to the next tableau.

6. Select a variable to enter to improve the solution.Select the variable to enter that has the largest positive element in Row (C � Z). X1 will en-ter since its Row (C � Z) element is the largest positive value in Row (C � Z).

7. Select a variable to leave the solution:

First Tableau (Continued)

C 900 600 0 0 0

SOL RHS X1 X2 S1 S2 S3 �

0 S1 4,000 2 1 1 0 0 4,000/2 � 2,000 , Leaving Variable0 S2 5,000 1 2 0 1 0 5,000/1 � 5,000 (smallest nonnegative)0 S3 3,500 1 1 0 0 1 3,500/1 � 3,500

Z 0 0 0 0 0 0

(C � Z) 900 600 0 0 0

+

Entering Variable(largest positive)

The variable to leave this starting solution is determined by entering the column of the en-tering variable, X1, dividing the number of each row into its RHS value, and recording thisvalue in the � column to the right. The leaving variable has the smallest nonnegative � value.If zero values or ties occur in the � column, do not worry. In the case of a tie, arbitrarily se-lect one of the tying variables to leave, and in the case of a zero, let that variable leave. (Re-member that division by zero is undefined.)

8. Perform row operations to complete the new solution.This is perhaps the most confusing point in the simplex method. Table 2 lists the steps inperforming row operations. These steps will be followed to construct the second tableau.a. Identify the pivot element. It is found at the intersection of the entering-variable column

(X1) and the leaving-variable row (S1): The pivot element is 2 .b. Divide the pivot row, element by element, by the pivot element. Enter this new row in

the next tableau: The first constraint row (4,000 2 1 1 0 0) is divided by 2, andthe result is entered in the second tableau in the first-row position. The variable in theSOL column in this row is the new entering variable X1, and its coefficient (900) in RowC is entered in Column C.

Page 6: Appendix Linear Programming

Appendix: Linear Programming Solution Methods6

Second Tableau

C 900 600 0 0 0

SOL RHS X1 X2 S1 S2 S3 �

900 X1 2,000 1 1/2 1/2 0 00 S2

0 S3

Z

(C � Z)

c. Convert the other elements in the pivot column (X1) to zero. Transform the second rowin the first tableau (5,000 1 2 0 1 0) by multiplying the new row in the secondtableau (2,000 1 1/2 1/2 0 0) by �1 (the negative of the second row’s pivot col-umn value) and adding this transitional row to the second row of the first tableau:Multiply the row first entered in the second tableau by �1:

�1(2,000) �1(1) �1(1/2) �1(1/2) �1(0) �1(0)

This gives values of

�2,000 �1 �1/2 �1/2 0 0

which are added to the row being transformed

5,000 1 2 0 1 0

to get values of

3,000 0 3/2 �1/2 1 0

The third row in the first tableau (3,500 1 1 0 0 1) is now transformed by mul-tiplying the row first entered in the new tableau (2,000 1 1/2 1/2 0 0) by �1 (thenegative of the third row’s pivot column value) and adding this transitional row to thethird row of the first tableau:Multiply the row first entered in the second tableau by �1:

�1(2,000) �1(1) �1(1/2) �1(1/2) �1(0) �1(0)

This gives values of

�2,000 �1 �1/2 �1/2 0 0

which are added to the row being transformed

3,500 1 1 0 0 1

to get values of

1,500 0 1/2 �1/2 0 1

d. These rows are entered into the second tableau in the second- and third-row positions.The variables in the SOL column for these rows do not change:

Second Tableau (Continued)

C 900 600 0 0 0

SOL RHS X1 X2 S1 S2 S3 �

900 X1 2,000 1 1/2 1/2 0 00 S2 3,000 0 3/2 �1/2 1 00 S3 1,500 0 1/2 �1/2 0 1

Z 1,800,000 900 450 450 0 0

(C � Z) 0 150 �450 0 0

Page 7: Appendix Linear Programming

Appendix: Linear Programming Solution Methods 7

e. Row Z for each column is computed by summing the products of values in Column Cand that column as follows:

ZRHS � (900)(2,000) � 0(3,000) � 0(1,500) � 1,800,000

ZX1� (900)(1) � (0)(0) � (0)(0) � 900

ZX2� (900)(1/2) � (0)(3/2) � (0)(1/2) � 450

ZS1� (900)(1/2) � (0)(�1/2) � (0)(�1/2) � 450

ZS2� (900)(0) � (0)(1) � (0)(0) � 0

ZS3� (900)(0) � (0)(0) � (0)(1) � 0

Row (C � Z) is again computed by subtracting each element in Row Z from its coun-terpart in Row C.

f. The solution to the second tableau is:

X1 � 2,000 circular saws to be manufactured per month

X2 � 0 table saws to be manufactured per month

S1 � 0 unused fabrication hours per month

S2 � 3,000 unused assembly hours per month

S3 � 1,500 unsatisfied market demand for saws per month

Z � $1,800,000 profits per month

The values of X1, S2, S3 (basic variables), and Z are found in column RHS of the sec-ond tableau. X2 and S1 are not in the SOL column (they are nonbasic variables); there-fore they both equal zero. Does this solution look familiar? It should, because it is iden-tical to Point C in Example 8.4 of the graphical method.

9. Return to Step 5 and continue until optimality is achieved:Steps 5, 6, and 7. Check solution for optimality. If optimal, stop. If not, continue. Se-lect a variable to enter the solution. Select a variable to leave the solution:

Second Tableau (Continued)

C 900 600 0 0 0

SOL RHS X1 X2 S1 S2 S3 �

900 X1 2,000 1 1/2 1/2 0 0 2,000/1/2 � 4,0000 S2 3,000 0 3/2 �1/2 1 0 3,000/3/2 � 2,000 , Leaving Variable0 S3 1,500 0 1/2 �1/2 0 1 1,500/1/2 � 3,000 (smallest nonnegative)

Z 1,800,000 900 450 �450 0 0

(C � Z) 0 150 �450 0 0

+

Entering Variable(largest positive)

The second tableau is not optimal since all Row (C � Z) elements are not zero or negative.X2 enters and, because the � value for the second row is the smallest nonnegative, S2 leaves.

10. Perform row operations to complete the solution. (See Table 2.)a. The pivot element is 3/2 because that element is at the intersection of the entering-variable

column and the leaving-variable row.b. Divide the pivot row (second constraint row) of the second tableau through by the pivot

element (3/2). Enter this new row into the third tableau in the same second-row position:

Page 8: Appendix Linear Programming

Appendix: Linear Programming Solution Methods8

Third Tableau

C 900 600 0 0 0

SOL RHS X1 X2 S1 S2 S3 �

900 X1

600 X2 2,000 0 1 �1/3 2/3 00 S3

Z

(C � Z)

c. Multiply this new row by a negative 1/2 to transform the first constraint row in the sec-ond tableau:

�1/2(2,000) � 1/2(0) �1/2(1) �1/2(�1/3) �1/2(2/3) � 1/2(0)

This gives values of

�1,000 0 �1/2 1/6 �1/3 0

which are added to the first constraint row of the second tableau

2,000 1 1/2 1/2 0 0

to give the new first constraint row of the third tableau

1,000 1 0 2/3 �1/3 0

Multiply the first row entered in the third tableau by �1/2:

�1/2(2,000) � 1/2(0) �1/2(1) �1/2(�1/3) �1/2(2/3) � 1/2(0)

This gives values of

�1,000 0 �1/2 1/6 �1/3 0

which are added to the third constraint row of the second tableau

1,500 0 1/2 �1/2 0 1

to give the new third constraint row of the third tableau

500 0 0 �1/3 �1/3 1

d. These rows are now entered into the first- and third-row positions of the third tableau:

Third Tableau (Continued)

C 900 600 0 0 0

SOL RHS X1 X2 S1 S2 S3 �

900 X1 1,000 1 0 2/3 �1/3 0600 X2 2,000 0 1 �1/3 2/3 00 S3 500 0 0 �1/3 �1/3 1

Z 2,100,000 900 600 400 100 0

(C � Z) 0 0 �400 �100 0

e. Compute Rows Z and (C � Z) to complete the third tableau. Row Z is computed as fol-lows:

ZRHS � (900)(1,000) � (600)(2,000) � (0)(500) � 2,100,000

ZX1� (900)(1) � (600)(0) � (0)(1) � 900

Page 9: Appendix Linear Programming

Appendix: Linear Programming Solution Methods 9

ZX2� (900)(0) � (600)(1) � (0)(0) � 600

ZS1� (900)(2/3) � (600)(�1/3) � (0)(�1/3) � 400

ZS2� (900)(�1/3) � (600)(2/3) � (0)(�1/3) � 100

ZS3� (900)(0) � (600)(0) � (0)(1) � 0

Row (C � Z) is again computed by subtracting each element in Row Z from its coun-terpart in Row C.

f. The solution to the third tableau is:

X1 � 1,000 circular saws to be manufactured per month

X2 � 2,000 table saws to be manufactured per month

S1 � 0 unused fabrication hours per month

S2 � 0 unused assembly hours per month

S3 � 500 unsatisfied market demand for saws per month

Z � $2,100,000 profits per month

Does this solution look familiar? It should, because it is identical to Point B in Exam-ple 8.4 of the graphical method.

11. Return to Step 5 and continue until optimality is achieved. Check solution for opti-mality. If optimal, stop. If not, continue. The third tableau is optimal because all the ele-ments in Row (C � Z) are either negative or zero.

Table 2 Steps in Performing Row Operations

1. Identify the pivot element in the present tableau, which is found at the intersection of the column ofthe entering variable and the row of the leaving variable. Circle this element. Row operations convertthe pivot column in this present tableau, element by element, to a new column in the new tableau. Thisnew column always has these features: The element that is the pivot element in the present tableau willbe a one in the new tableau, and all other elements in that column in the new tableau will be zero.

2. Convert the pivot element in the present tableau to a one in the new tableau by dividing the entirepivot row in the present tableau by the pivot element (element by element). This new row with aone in the pivot element is entered into the new tableau in the same row position as the pivot rowof the present tableau.

3. Next, convert all other elements in the pivot column of the present tableau to zero in the newtableau. This is done by performing a separate operation on each remaining row of the presenttableau. This operation involves the development of a special transitional row that is added to eachremaining row in the present tableau. Each row in the present tableau for which we wish to convertits pivot column element to zero requires its own unique transitional row. This transitional row isdeveloped by first determining the value of the element that we want to transform to zero. We thentake the negative of the value of this element and multiply it by the new row obtained in Step 2above, element by element. When this transitional row is added to the row of the present tableau, anew row results that has a zero in the pivot column. This row is entered in the new tableau in thesame row position as it occupied in the present tableau before it was transformed.

The graphical solution of maximization Problem LP-1, Example 8.4, identified threesolution points—A, B, and C. Each of these solutions was first identified as an inter-section of the constraints, and then each was substituted into the objective function to

Page 10: Appendix Linear Programming

Appendix: Linear Programming Solution Methods10

determine a value of Z. Finally, the optimal solution (maximum profit) was selected.The simplex method solution to LP-1 follows this same general process with one ex-ception. The first tableau begins with Z � 0, and each subsequent tableau methodicallyexhibits higher values of Z. You can be assured that each tableau will exhibit progres-sively higher profits. This progression to better and better solutions is the only concep-tual departure of the simplex method from the general process of the graphical method.

Simplex Minimization SolutionsThe graphical solution of minimization Problem LP-2, Example 8.5, identified threesolution points—A, B, and C. The optimal solution to the problem was then determinedby investigating Points A, B, and C. The simplex solution to this problem begins thefirst tableau with a very large value of Z. Subsequent tableaus exhibit progressivelylower values for Z until optimality is achieved. This progression from high to low val-ues of Z is characteristic of the simplex solution of minimization LP problems.

There are only two basic differences between maximization and minimization LPproblem solutions with the simplex method:

1. Minimization LP problems are more likely to have � and � constraints, althoughthe procedures for treating them apply to both minimization and maximization LPproblems.

2. Minimization LP problems have different objective functions; Z is minimized.

In either minimization or maximization problems, � and � constraints are accommo-dated by adding artificial variables to these constraints. For example, in the case of �constraints:

1. X1 � 2X2 � 500

2. X1 � 2X2 � 500 � S1

3. X1 � 2X2 � S1 � 500

4. X1 � 2X2 � A1 � S1 � 500

Note that in Step 2 above a slack variable (S1) is added to the right-hand side, whichmust always be less than or equal to the left-hand side. The addition of S1 to the smallerside of the expression allows us to convert the � to �. In Step 3 the S1 is moved to theleft-hand side by subtracting S1 from both sides. In Step 4 an artificial variable (A1) isadded to the left-hand side. Why do we do this? The only reason is to get a starting sim-plex solution. Remember when we said earlier that a requirement for each tableau wasthat the variable with a column which has a one in the first row and zeros for all otherelements in its column is the variable that must go in the SOL column in the first row?What happens if no variable exists that has a column meeting this requirement? This isexactly the situation we have with � or � constraints. A � constraint has a �1 coeffi-cient for S1, and this does not meet the requirement. Similarly, an � constraint does nothave a slack variable (as we shall soon see); therefore we shall not be able to meet therequirement here either. When such conditions exist, we must add an artificial variableto � or � rows to meet the requirement and obtain a starting solution (complete the firsttableau). The artificial variables appear in the SOL column of the first tableau and arethen methodically driven from the solution in subsequent tableaus. The artificial vari-ables have absolutely no meaning, and we shall not be concerned with them again.

When � constraints occur, an artificial variable must also be added. For example:

3X1 � 2X2 � 1,000

3X1 � 2X2 � A2 � 1,000

Page 11: Appendix Linear Programming

Again, the purpose of A2 is to achieve a starting simplex solution; A2 will have no sub-sequent meaning.

The second basic difference is accommodated by converting objective functionsfrom the min to the max form. For example:

Min Z � 5X1 � 3X2 becomes Max Z � �5X1 � 3X2

This is achieved by multiplying each term of the Min Z objective function by a �1.Minimization LP problems, after this conversion, are then solved as maximization prob-lems. The exact same tableau procedures apply. After this conversion, slack variablesand artificial variables are added to the objective function as required. Slack variablesare assigned zero coefficients in the objective function as before. But what about theartificial variables? What coefficients should be assigned to the artificial variables?Would you believe a �M, where the M is a very large number? Now, what the M ac-tually represents is subject to speculation, but legend has it that Harvey Wagner firstused the big M method in LP studies at the Mercury Motors Division of the Ford Mo-tor Company many years ago. Regardless of its origin, each artificial variable is alwaysassigned a �M coefficient in the objective function in either max or min LP problemswhen the objective function conversion described above is used.1 This �M in Row Cof the simplex tableau avoids an artificial variable entering back into the solution, since(C � Z) will always be zero or negative because the C value is �M . . . , a negativevery large number, say, minus infinity. Since whatever is subtracted from minus infin-ity is either negative or zero, the artificial variable will never reenter the solution.

Example 2 solves Problem LP-2 from Chapter 8, a minimization problem, usingthe simplex method.

1If this conversion of the objective function is not used, the objective function is left in its original form and therule for the entering variable for minimization problems becomes: The entering variable is the one with the mostnegative number in Row (C � Z). The artificial variables must then be assigned �M coefficients in the objectivefunction. All other procedures remain the same as in maximization problems. We prefer the conversion describedabove because the procedures are all exactly the same for both maximization and minimization problems, andwe shall follow this convention throughout.

Appendix: Linear Programming Solution Methods 11

Example 2 Simplex Solution of LP-2, a Minimization Problem

The Gulf Coast Foundry is developing a long-range strategic plan for buying scrap metal for itsfoundry operations. The foundry can buy scrap metal in unlimited quantities from two sources,Atlanta (A) and Birmingham (B), and it receives the scrap daily in railroad cars. The scrap ismelted down, and lead and copper are extracted for use in the foundry processes. Each railroadcar of scrap from Source A yields 1 ton of copper and 1 ton of lead and costs $10,000. Each rail-road car of scrap from Source B yields 1 ton of copper and 2 tons of lead and costs $15,000. Ifthe foundry needs at least 21/2 tons of copper and at least 4 tons of lead per day for the foresee-able future, how many railroad cars of scrap should be purchased per day from Source A andSource B to minimize the long-range scrap metal cost? LP-2 was formulated in Chapter 8 as:

Min Z � 10,000X1 � 15,000X2

X1 � 2X2 � 4 (lead—tons)

X1 � X2 � 21/2 (copper—tons)

where:

X1 � carloads of scrap purchased from Source A per day

X2 � carloads of scrap purchased from Source B per day

Page 12: Appendix Linear Programming

Appendix: Linear Programming Solution Methods12

1. Add slack variables to constraints to convert from � to �:

Min Z � 10,000X1 � 15,000X2

X1 � 2X2 � S1 � 4

X1 � X2 � S2 � 21/2

2. Multiply objective function by �1 to convert to a maximization problem:

Max Z � �10,000X1 � 15,000X2

X1 � 2X2 � S1 � 4

X1 � X2 � S2 � 21/2

3. Add artificial variables to constraints to obtain a starting solution, and include all vari-ables in all functions:

Max Z � �10,000X1 � 15,000X2 � MA1 � MA2 � 0S1 � 0S2

X1 � 2X2 � A1 � 0A2 � S1 � 0S2 � 4

X1 � X2 � 0A1 � A2 � 0S1 � S2 � 21/2

4. Place in first tableau and solve:

First Tableau

C �10,000 �15,000 �M �M 0 0

SOL RHS X1 X2 A1 A2 S1 S2 �

�M A1 4 1 2 1 0 �1 0 4/2 � 2 ,

�M A2 21/2 1 1 0 1 0 �1 21/2/1 � 21/2

Z �61/2M �2M �3M �M �M M M

(C � Z) 2M 3M�10,000 �15,000 0 0 �M �M

+

Entering Variable(largest nonnegative)

�2 �1/2 �1 �1/2 0 1/2 021/2 1 1 0 1 0 �1

1/2 1/2 0 �1/2 1 1/2 �1

Second Tableau

C �10,000 �15,000 �M �M 0 0

SOL RHS X1 X2 A1 A2 S1 S2 �

�15,000 X2 2 1/2 1 1/2 0 �1/2 0 2/1/2 � 4�M A2

1/2 1/2 0 �1/2 1 1/2 �1 1/2/1/2 � 1 ,

�1/2M �1/2M 1/2M �1/2MZ �30,000 �7,500 �15,000 �7,500 �M �7,500 M

1/2M �3/2M 1/2M(C � Z) �2,500 0 �7,500 0 �7,500 �M

+

Entering Variable(largest nonnegative)

�1/2 �1/2 0 1/2 �1 �1/2 12 1/2 1 1/2 0 �1/2 011/2 0 1 1 �1 �1 1

LeavingVariable(smallestnonnegative)

LeavingVariable(smallestnonnegative)

Page 13: Appendix Linear Programming

Pay particular attention to the conversion of � constraints to the first tableau formby adding artificial variables and subtracting slack variables. Note also that the sub-scripts of the artificial and slack variables correspond to the order of the constraints.A1 and S1 belong to the first constraint, and A2 and S2 belong to the second.

The key complication in minimization problems is the more frequent inclusion ofartificial variables. Negative M’s, negative very large numbers, appear in the C row andcolumn and consequently in Row Z and Row (C � Z). If these M’s are treated as anyother very large number and are added, subtracted, and multiplied while the appropri-ate signs are observed, the minimization problems are as straightforward to solve asthe maximization problems.

Interpreting Simplex SolutionsExample 1 used the simplex method to solve Problem LP-1. Let us now examine LP-1and the last tableau from this example to determine what information is available toPOM decision makers. LP-1 was formulated as:

Max Z � 900X1 � 600X2

2X1 � X2 � S1 � 4,000 (fabrication—hours)

X1 � 2X2 � S2 � 5,000 (assembly—hours)

X1 � X2 � S3 � 3,500 (market—saws)

Appendix: Linear Programming Solution Methods 13

Third Tableau

C �10,000 �15,000 �M �M 0 0

SOL RHS X1 X2 A1 A2 S1 S2 �

�15,000 X2 11/2 0 1 1 �1 �1 1�10,000 X1 1 1 0 �1 2 1 �2

Z �32,500 �10,000 �15,000 �5,000 �5,000 5,000 5,000

�M �M(C � Z) 0 0 �5,000 �5,000 �5,000 �5,000

The third tableau is optimal because all elements in Row (C � Z) are zero or negative.5. Interpret the solution:

The solution is deduced from the SOL and RHS columns of the last tableau. All variablesthat do not appear in the SOL column are equal to zero:

X1 � 1 X2 � 11/2 S1 � 0 S2 � 0 Z � 32,500

The Gulf Coast Foundry should purchase 1 carload of scrap per day from Source A and 11/2carloads of scrap per day from Source B. The total daily scrap cost will be $32,500, and noexcess lead or copper above the minimum requirements will result. Note that the simplexmethod does not guarantee whole number (integer) answers. This is ordinarily not a seriousdifficulty. In this problem, for example, an average of 11/2 carloads of scrap from Source Bcould be accommodated by either 3 carloads one day and none the next or two carloads oneday and one the next.

Page 14: Appendix Linear Programming

where:

X1 � number of circular saws to be manufactured per monthX2 � number of table saws to be manufactured per monthS1 � unused fabrication hours per monthS2 � unused assembly hours per monthS3 � unsatisfied market demand for saws per monthZ � profits per month

The last tableau in the simplex solution to LP-1 in Example 1 was:

Third Tableau

C 900 600 0 0 0

SOL RHS X1 X2 S1 S2 S3 �

900 X1 1,000 1 0 2/3 �1/3 0600 X2 2,000 0 1 �1/3 2/3 0

0 S3 500 0 0 �1/3 �1/3 1

Z 2,100,000 900 600 400 100 0

(C � Z) 0 0 �400 �100 0

The solution to LP-1 is deduced as follows: X1, X2, S3 (all basic variables), and Z arein the SOL column, and their values are shown in the RHS column. Because S1 andS2 are not found in the SOL column (nonbasic variables), their values are zero. Thissolution indicates that management should manufacture 1,000 circular saws and 2,000table saws per month for a monthly profit of $2,100,000. All fabrication and assemblyproduction capacity would be used, and 500 additional saws could be sold to the mar-ket. To check this, let’s examine the constraints of LP-1:

2X1 � X2 � S1 � 4,000 (fabrication—hours)

2(1,000) � 2,000 � S1 � 4,000

2,000 � 2,000 � S1 � 4,000

S1 � 4,000 � 2,000 � 2,000

S1 � 0

The fabrication of circular saws (X1) and table saws (X2) has used up all the availablefabrication hours per month; therefore S1 � 0.

X1 � 2X2 � S2 � 5,000 (assembly—hours)

1,000 � 2(2,000) � S2 � 5,000

1,000 � 4,000 � S2 � 5,000

S2 � 5,000 � 1,000 � 4,000

S2 � 0

The manufacture of circular saws and table saws has used up all the available assem-bly capacity per month; therefore S2 � 0.

X1 � X2 � S3 � 3,500 (market—saws)

1,000 � 2,000 � S3 � 3,500

S3 � 3,500 � 1,000 � 2,000

S3 � 3,500

Appendix: Linear Programming Solution Methods14

Page 15: Appendix Linear Programming

The sales of circular and table saws have fallen 500 saws short of completely satisfy-ing the maximum monthly demand for saws; therefore S3 � 500.

This explains the solution to LP-1. There is, however, some additional informa-tion in the last tableau that can be useful to operations managers. This information iscalled shadow prices and is found in Row (C � Z):

X1 X2 S1 S2 S3

(C � Z) 0 0 �400 �100 0

The zeros appear in the X1 and X2 columns because these variables are in the so-lution column SOL in the last tableau. When nonzero shadow prices appear under Xvariables in Row (C � Z), these values indicate the change in Z as a result of forcingone unit of an X variable into the solution. In maximization problems, the shadowprices under X variables indicate how much Z would be reduced by the introductionof one unit of the X variable into the solution. In minimization problems, the shadowprices under X variables indicate how much Z would be increased by the introductionof one unit of the X variable into the solution.

The value under an S variable in Row (C � Z) represents the change in Z from aone-unit change in a constraint’s RHS. S1 refers to the first constraint because its sub-script is 1 and represents fabrication hours. Since S1 is not in the SOL column, S1 �0, which means that all the monthly fabrication capacity is used. For example, assumethat management wanted to know the following information:

1. How much would monthly profits (Z) increase if we could find one more hour offabrication capacity per month (4,001 versus 4,000)?

2. How much would monthly profits (Z) decrease if we had one less hour of fabri-cation capacity per month (3,999 versus 4,000)?

The answer to both of these questions is found in Row (C � Z) and the S1 column:$400. The new monthly profits would be $2,100,400 and $2,099,600, respectively.

The element in Row (C � Z) and the S2 column indicates the change in Z if theRHS of the second constraint changes by one unit:

1. How much would monthly profits (Z) change if we could find one more hour ofassembly capacity per month (5,001 versus 5,000)?

2. How much would monthly profits (Z) decrease if we had one less hour of assem-bly capacity per month (4,999 versus 5,000)?

The answer to both of these questions is $100; the new monthly profits would be$2,100,100 and $2,099,900, respectively.

How much would we be willing to pay to expand the market for our saw productlines through advertising or promotion? The answer to this question—nothing—can befound in Row (C � Z) and the S3 column. This answer is also obvious from the solu-tion to Problem LP-1. If we could sell 500 more saws in the market than we are presentlyselling, we would not pay anything for more market demand.

An understanding of the shadow prices in Row (C � Z) is valuable to manage-ment. This information allows managers to evaluate whether resources (production ca-pacity and market demand in this example) should be shifted from other products orprojects. If the cost of getting one unit of a resource is less than its shadow price, theresource should be acquired.

Interpreting simplex solutions of LP minimization problems is essentially the sameas interpreting those of maximization problems. To demonstrate this similarity, let us ex-amine Row (C � Z) from the optimal tableau of Problem LP-2, a minimization problem:

Appendix: Linear Programming Solution Methods 15

Page 16: Appendix Linear Programming

X1 X2 A1 A2 S1 S2

(C � Z) 0 0 �M �M �5,000 �5,000�5,000 �5,000

The zeros appear under X1 and X2 because both X1 and X2 are in the solution. Thevalues under A1 and A2 have no meaning. The 5,000 under S1 means that if the leadrequirement is raised or lowered one unit (1 ton per day), Z will change by $5,000. Ifthe RHS of the first constraint were increased from 4 to 5, Z would increase from$32,500 to $37,500. If the RHS were decreased from 4 to 3, Z would decrease from$32,500 to $27,500. The meaning of the 5,000 under S2 is similarly the marginal im-pact of 1 ton of copper on Z.

The minimization and maximization LP problems are interpreted exactly the sameway. It is usually helpful to have the original problem formulated and in front of youwhen the last tableau is interpreted. The meanings of the variables in the solution andthe shadow prices are then easier to understand.

Now, to further develop your ability to interpret simplex solutions, let us move onto a more realistic LP problem. Remember the Oklahoma Crude ingredient mix prob-lem, Example 8.7, from Chapter 8. Example 3 presents this problem and its simplexsolution and fully interprets the meaning of the solution. Carefully reread the earlierproblem before you begin this example.

Appendix: Linear Programming Solution Methods16

Example 3 Interpreting Simplex Solutions: The Oklahoma Crude Oil Company Ingredient Mix Problem

The variable definitions of the Oklahoma Crude Oil Company problem are:

X1 � thousands of gallons of Oklahoma crude to be purchased per month

X2 � thousands of gallons of Texas crude to be purchased per month

X3 � thousands of gallons of Kansas crude to be purchased per month

X4 � thousands of gallons of New Mexico crude to be purchased per month

X5 � thousands of gallons of Colorado crude to be purchased per month

S1 � excess regular gasoline over minimum market requirement in thousands of gallons

S2 � excess premium gasoline over minimum market requirement in thousands of gallons

S3 � excess low-lead gasoline over minimum market requirement in thousands of gallons

S4 � excess diesel fuel over minimum market requirement in thousands of gallons

S5 � excess heating oil over minimum market requirement in thousands of gallons

S6 � excess lubricating oil base over minimum market requirement in thousands of gallons

S7 � unused Oklahoma crude supply in thousands of gallons

S8 � unused Texas crude supply in thousands of gallons

S9 � unused Kansas crude supply in thousands of gallons

S10 � unused New Mexico crude supply in thousands of gallons

S11 � unused Colorado crude supply in thousands of gallons

A1, A2, A3, A4, A5, and A6 � no meaning

Page 17: Appendix Linear Programming

Appendix: Linear Programming Solution Methods 17

Min Z � 200X1 � 140X2 � 150X3 � 180X4 � 120X5

0.4X1 � 0.3X2 � 0.3X3 � 0.2X4 � 0.3X5 � 5,000 (regular gasolinemarket requirement)*

0.2X1 � 0.3X2 � 0.4X3 � 0.3X4 � 0.2X5 � 3,000 (premium gasolinemarket requirement)

0.2X1 � 0.1X2 � � 0.3X4 � 0.1X5 � 3,000 (low-lead gasolinemarket requirement)

0.1X1 � 0.1X2 � 0.1X3 � � 0.2X5 � 2,000 (diesel fuelmarket requirement)

0.1X2 � 0.1X3 � 0.2X4 � 0.1X5 � 1,000 (heating oilmarket requirement)

0.1X1 � 0.1X2 � 0.1X3 � � 0.1X5 � 2,000 (lubricating oil basemarket requirement)

X1 � � 8,000 (Oklahoma crude supply)

X2 � � 4,000 (Texas crude supply)

X3 � � 5,000 (Kansas crude supply)

X4 � � 3,000 (New Mexico crude supply)

X5 � 6,000 (Colorado crude supply)

*All requirements and supplies are in thousands of gallons.

A computer solution (last tableau) is presented in Table 3.

a. What should management do? In other words, to management decision makers, what is thecomplete meaning of the values of the decision variables, slack variables, artificial variables,and Z in the optimal solution?

b. What is the meaning of each element in Row (C � Z)?

Solution

a. What should management do? What is the complete meaning of the values of the variables?

X1 � 8,000 (buy 8 million gallons of crude oil per month from Oklahoma)

X2 � 4,000 (buy 4 million gallons of crude oil per month from Texas)

X3 � 2,000 (buy 2 million gallons of crude oil per month from Kansas)

X4 � 1,3331/3 (buy 11/3 million gallons of crude oil per month from New Mexico)

X5 � 6,000 (buy 6 million gallons of crude oil per month from Colorado)

S1 � 2,0662/3 (2,066,667 gallons of excess regular gasoline will be supplied monthly)

S2 � 2,200 (2,200,000 gallons of excess premium gasoline will be supplied monthly)

S3 � 0 (no excess low-lead gasoline will be supplied monthly)

S4 � 600 (600,000 gallons of excess diesel fuel will be supplied monthly)

S5 � 4662/3 (466,667 gallons of excess heating oil will be supplied monthly)

Page 18: Appendix Linear Programming

Appendix:

Linear Program

ming Solution M

ethods18

C �200 �140 �150 �180 �120 0 0 0 0 0

X1 X2 X3 X4 X5 S1 S2 S3 S4 S5

�120 X5 6,000 0 0 0 0 1 0 0 0 0 0

�180 X4 1,333.33 0 0 0 1 0 0 0 �3.33 0 0

0 S5 466.67 0 0 0 0 0 0 0 �0.67 0 1

�150 X3 2,000 0 0 1 0 0 0 0 0 0 0

0 S2 2,200 0 0 0 0 0 0 1 �1 0 0

�140 X2 4,000 0 1 0 0 0 0 0 0 0 0

�200 X1 8,000 1 0 0 0 0 0 0 0 0 0

0 S9 3,000 0 0 0 0 0 0 0 0 0 0

0 S4 600 0 0 0 0 0 0 0 0 1 0

0 S10 1,666.67 0 0 0 0 0 0 0 3.33 0 0

0 S1 2,066.67 0 0 0 0 0 1 0 �0.67 0 0

Z �3,420,000 �200 �140 �150 �180 �120 0 0 600 0 0

(C � Z) 0 0 0 0 0 0 0 �600 0 0

0 �M �M �M �M �M �M 0 0 0 0 0

S6 A1 A2 A3 A4 A5 A6 S7 S8 S9 S10 S11

0 0 0 0 0 0 0 0 0 0 0 1

0 0 0 3.33 0 0 0 �0.67 �0.33 0 0 �0.33

�1 0 0 0.67 0 �1 1 �0.23 �0.07 0 0 �0.07

�10 0 0 0 0 0 10 �1 �1 0 0 �1

�4 0 �1 1 0 0 4 �0.4 �0.2 0 0 �0.3

0 0 0 0 0 0 0 0 1 0 0 0

0 0 0 0 0 0 0 1 0 0 0 0

10 0 0 0 0 0 �10 1 1 1 0 1

�1 0 0 0 �1 0 1 0 0 0 0 0.1

0 0 0 �3.33 0 0 0 0.67 0.33 0 1 0.33

�3 �1 0 0.67 0 0 3 �0.03 �0.07 0 0 0

1,500 0 0 �600 0 0 �1,500 70 70 0 0 90

�1,500 �M �M �M �M �M �M �70 �70 0 0 �90�600 �1,500

Table 3 Optimal Tableau from Ingredient Mix Problem: Oklahoma Crude Oil Company

Page 19: Appendix Linear Programming

Postoptimality AnalysisPostoptimality analysis, or sensitivity analysis as it is often called, manipulates theelements of the last tableau of the simplex procedure to determine the sensitivity ofthe solution to changes in the original problem. Here are some of the questions thatthis analysis seeks to answer:

1. How will Z change if the RHS of any constraint changes? This question was ad-dressed earlier in this section. The values in Row (C � Z) under the slack vari-ables provide this information.

2. If a decision variable is not in the optimal solution (equals zero), how will Z changeif one unit of the decision variable is forced into the solution (Xi � 1)? This ques-tion was also addressed earlier in this appendix. The values in Row (C � Z) un-der the decision variables provide this information.

3. Over what range can the RHS change and the shadow prices in Row (C � Z) re-main valid?

Appendix: Linear Programming Solution Methods 19

S6 � 0 (no excess lubricating oil base will be supplied monthly)

S7 � 0 (all Oklahoma crude oil available will be purchased monthly)

S8 � 0 (all Texas crude oil available will be purchased monthly)

S9 � 3,000 (3,000,000 gallons of Kansas crude oil will be available and not purchased monthly)

S10 � 1,6662/3 (1,666,667 gallons of New Mexico crude oil will be available and not purchased monthly)

S11 � 0 (all Colorado crude oil available will be purchased monthly)

A4, A5, and A6 � no meaning

Z � 3,420,000 ($3,420,000 crude oil cost per month will result)

b. Interpret Row (C � Z):1. The values in the A1, A2, A3, A4, A5, and A6 columns have no meaning.2. The zeros in the X1, X2, X3, X4, and X5 columns because all of these variables are in

the solution.3. The zeros in the S1, S2, S4, S5, S9, and S10 columns mean that a 1,000-gallon change in the

RHS of these constraints will not affect the monthly crude oil cost (Z), because each ofthese slack variables is in the solution. For example, S1 � 2,0662/3 means that 2,066,667gallons more than the 5,000,000 RHS of the regular gasoline minimum market requirementis supplied. Therefore, raising or lowering the RHS a small amount will not affect Z.

Column Row (C � Z) Interpretation

S3 �600 If the low-lead gasoline monthly market requirement were increased by1,000 gallons, Z would increase $600.

S6 �1,500 If the lubricating oil base monthly market requirement were increasedby 1,000 gallons, Z would increase $1,500.

S7 �70 If the amount of Oklahoma crude available each month were increasedby 1,000 gallons, Z would decrease by $70.

S8 �70 If the amount of Texas crude available each month were increased by1,000 gallons, Z would decrease by $70.

S11 �90 If the amount of Colorado crude available each month were increasedby 1,000 gallons, Z would decrease by $90.

Page 20: Appendix Linear Programming

4. How will Z change if one of the coefficients of a decision variable in the objec-tive function changes by one unit?

5. How will Z change if one of the coefficients of a decision variable in a constraintchanges by one unit?

These and other postoptimality questions are deduced from the optimal tableau, but themethods of analysis required to answer Questions 3, 4, and 5 are beyond the scope ofthis book. These questions assume that all other parts of the original problem remainunchanged and that only the singular change under consideration occurs. Although thisis a popular topic with operations researchers, one rather obvious method for answer-ing these and other postoptimality questions exists: Make the desired changes in theoriginal problem, input the new problem to the computer, and interpret the new results.

Unusual Features of Some LP ProblemsTwo linear programming situations deserve special attention: degeneracy and alternateoptimal solutions. Degeneracy is a condition in which there is a tie between two ormore leaving variables in any maximization or minimization simplex tableau. For ex-ample, consider this problem:

Max Z � 5X1 � 10X2

X1 � 3X2 � 6

2X1 � 2X2 � 4

First Tableau

C 5 10 0 0

SOL RHS X1 X2 S1 S2 �

0 S1 6 1 3 1 0 6/3 � 20 S2 4 2 2 0 1 4/3 � 2

Z 0 0 0 0 0

(C � Z) 5 10 0 0

+

EnteringVariable

In the first tableau, a tie for the leaving variable exists. Therefore, a condition of de-generacy is present. Why is this a problem? It usually poses absolutely no problem atall in arriving at an optimal solution. One of the variables is arbitrarily selected to leave,and the simplex method is continued. In rare instances, however, looping can occur.In other words, in the example above, if S2 is selected to leave the first tableau, S1 andX2 are in the SOL column of the second tableau. S1 could leave and S2 could reenterthe third tableau, and S2 and X2 would be in the SOL column. S2 could leave and S1

reenter the fourth tableau, and S1 and X2 would be in the fourth tableau. This switch-ing could conceivably continue endlessly, thus prohibiting an optimal solution.

Looping situations almost never happen in nontrivial real LP problems in POM.When they do, a simple solution is to add or subtract an infinitesimally small amountto either the RHS or coefficient in the � ratio to break the tie. For example, the orig-inal problem could be modified as follows:

Max Z � 5X1 � 10X2

X1 � 3X2 � 6.0001

2X1 � 2X2 � 4

Appendix: Linear Programming Solution Methods20

Page 21: Appendix Linear Programming

This slight modification breaks the tie of leaving variables and removes the degener-acy condition.

Alternate optimal solutions exist when an element under a variable in Row (C � Z)is zero and that variable is not in the solution. For example, consider this problem:

Max Z � X1 � 7X2

X1 � 7X2 � 14

7X1 � X2 � 14

Second Tableau

C 1 7 0 0

SOL RHS X1 X2 S1 S2 �

7 X2 2 1/7 1 1/7 0 2/1/7 � 14 Leaving0 S2 12 48/7 0 �1/7 1 12/48/7 � 13/4 , Variable

Z 14 1 7 1 0

(C � Z) 0 0 �1 0

+

EnteringVariable

Note that the zero under X1 in Row (C � Z) of this optimal tableau indicates that X1

can enter the solution (X2 � 2, X1 � 0, Z � 14) with no change in Z. Let X1 enter tocheck this out, X1 enters and S2 leaves:

�1/7(13/4) �1/7(1) �1/7(0) �1/7(�1/48) �1/7(7/48)or �1/4 �1/7 0 1/336 �7/336

� 2 1/7 1 1/7 013/4 0 1 49/336 �7/336

A new alternate optimal solution emerges in the third tableau where X1 � 13/4, X2 �13/4, and Z � 14. Z has not changed. Note that the zero in Row (C � Z) under S2 inthe third tableau indicates also that an alternate optimal solution exists, the one in thesecond tableau.

Third Tableau

C 1 7 0 0

SOL RHS X1 X2 S1 S2 �

7 X2 13/4 0 1 49/336 �7/336

1 X1 13/4 1 0 �1/48 7/48

Z 14 1 7 1 0

(C � Z) 0 0 �1 0

We should always examine Row (C � Z) to inspect for alternate optimal solutions.Why? Because these alternatives offer management the ultimate in flexibility—alter-natives with the same profits or costs.

Now let us turn to a solution method designed to solve a special type of LP prob-lem—the transportation problem.

Appendix: Linear Programming Solution Methods 21

Page 22: Appendix Linear Programming

Appendix: Linear Programming Solution Methods22

Table 4 Procedures of the Transportation Method

1. Formulate the problem in a transportation table.

2. Use the northwest corner rule or VAM to obtain a feasible starting solution.

3. Test the optimality of the solution by using the stepping-stone or MODI method. If the solution isoptimal, stop. If not, continue to the next step.

4. Develop a new transportation table that is an improved solution. Go back to Step 3.

TRANSPORTATION METHOD

In Chapter 8, we discussed selecting a set of shipments from sources to destinationsthat minimized period transportation costs. These problems can be analyzed by eitherthe simplex method or the transportation method. We present the essential elements ofthe transportation method here.

Characteristics of Transportation ProblemsTransportation problems have these characteristics:

• A finite and homogeneous set of discrete units must be shipped from several sourcesto several destinations in a particular time period.

• Each source has a precise number of units that must be shipped in the time pe-riod.

• Each destination has a precise number of units that must be received in the timeperiod.

• Each discrete unit to be shipped has a specific transportation cost from each sourceto each destination.

• The objective is to minimize the total transportation costs for the time period.• The decision variables represent the number of units to be shipped from each source

to each destination during the time period.

Such problems were first formulated in the 1940s, and the solution procedures that willbe presented in this section were developed in the 1950s. Although the characteristicslisted above accurately depict the problems as they were originally formulated andsolved, later formulations and solutions allow a much broader range of problems. Aswe shall see later in this section, problems with � and � constraints, maximizationobjectives, demands greater than supply, and other characteristics are now routinely de-scribed as transportation problems. Solution procedures that constitute the trans-portation method also are used routinely to solve such expanded problems.

Solution Procedures of the Transportation MethodThe procedures of the transportation method are exhibited in Table 4. To demonstratethese procedures, Example 4 analyzes a problem of a manufacturing company that mustselect a new location for a factory to produce computer peripheral units. Notice in Steps2 and 3 of Table 4 that two alternative ways can be used to either test a solution foroptimality or obtain a starting solution. Example 4 uses only the northwest corner ruleand the stepping-stone method so that you can get the overall picture of how the trans-portation method works. Later the same problem will be worked with the MODI andVAM methods so that you can appreciate the relationships among the methods.

Page 23: Appendix Linear Programming

Appendix: Linear Programming Solution Methods 23

Example 4 The Northwest Corner Rule and the Stepping-Stone Method

The Plain View Manufacturing Company presently has two factories at Amarillo and Waco, Texas,and three warehouses at Dallas, San Antonio, and Houston, Texas. In recent months, Plain Viewhas been unable to produce and ship enough of its computer peripheral units to satisfy the mar-ket demand at the warehouses. A new factory at Huntsville, Texas, is proposed to increase fac-tory capacity. Bill Mayer, Plain View’s president, wants to determine what Plain View’s monthlyshipping costs will be with the new factory located at Huntsville.

The monthly capacities of the old and new factories, the monthly warehouse requirements,and the transportation costs per unit from each factory to each warehouse are:

Monthly Transportation Costs

Monthly Warehouse WarehouseCapacity Requirement San

Factory (units) Warehouse (units) Factory Antonio Dallas Houston

Amarillo 400 San Antonio 300 Amarillo $31 $21 $42Waco 1,000 Dallas 900 Waco 20 21 30Huntsville 600 Houston 800 Huntsville 23 20 15

Total 2,000 Total 2,000

a. Use the transportation method to determine the total monthly transportation costs if the newfactory is located at Huntsville. b. How many units per month should be shipped from each fac-tory to each warehouse after the new factory is built? Follow the steps in Table 4 for the trans-portation method. These steps are illustrated in Figure 1.

Solution

1. and 2. Formulate the problem in a transportation table, and use the northwest cornerrule to obtain a starting solution. Note that the monthly factory capacities are placed onthe right-hand side of the table opposite the appropriate factory row. Similarly, warehouserequirements are placed along the bottom of the table under the appropriate warehouse col-umn. The per-unit shipping cost is shown in a box within each factory–warehouse cell. Notealso that the total capacity for all factories equals the total warehouse requirements.

This starting solution shows how many units are shipped from each factory to each ware-house. When a cell is empty, zero units are to be shipped. The initial solution is obtained bybeginning in the northwest cell (Amarillo–San Antonio) and allocating as many units as pos-sible to this cell and proceeding likewise from left to right and downward. Only 300 units arepossible in the Amarillo–San Antonio cell because this amount satisfies the San Antonio ware-house requirement. Moving to the right, we can allocate only 100 units to the Amarillo–Dallascell because this completes the Amarillo factory capacity of 400 units. Next, we move down-ward and allocate 800 units to the Waco–Dallas cell, move right and allocate 200 units to theWaco–Houston cell, and so on until all 2,000 units have been allocated.

3. Test the optimality of the solution by using the stepping-stone method. This step requiressystematically evaluating each of the empty cells in Transportation Table #1 to determine ifmonthly transportation costs can be reduced by moving any units into the empty cells. Thestepping-stone evaluation method involves the procedures in Table 5. As shown in Figure 1,Transportation Table #1 is not optimal because we have a negative circuit cost for theWaco–San Antonio cell and we can reduce monthly transportation costs by moving someunits into this empty cell.

Page 24: Appendix Linear Programming

Appendix: Linear Programming Solution Methods24

First evaluate the Amarillo–Houston empty cell:Circuit cost � �42 � 30 � 21 � 21 � �12. Place this cost in a circle.

ToFrom

San Antonio Dallas HoustonFactoryTotals

Amarillo

Waco

Huntsville

WarehouseTotals

300 100

800 200

600

31

20

23

300 900

20

21

21 42 400

1,000

2,0002,000

600

800

30

15

�12

ToFrom

San Antonio Dallas HoustonFactoryTotals

Amarillo

Waco

Huntsville

WarehouseTotals

300 100

800 200

600

31

20

23

300 900

20

21

21 42 400

1,000

2,0002,000

600

800

30

15

�11

ToFrom

San Antonio Dallas HoustonFactoryTotals

Amarillo

Waco

Huntsville

WarehouseTotals

300 100

800 200

600

31

20

23

300 900

20

21

21 42 400

1,000

2,0002,000

600

800

30

15�7

ToFrom

San Antonio Dallas HoustonFactoryTotals

Amarillo

Waco

Huntsville

WarehouseTotals

300 100

800 200

600

31

20

23

300 900

20

21

21 42 400

1,000

2,0002,000

600

800

30

15

ToFrom

San Antonio Dallas HoustonFactoryTotals

Amarillo

Waco

Huntsville

WarehouseTotals

300 100

800 200

600

31

20

23

300 900

20

21

21 42 400

1,000

2,0002,000

600

800

30

15

�12

ToFrom

San Antonio Dallas HoustonFactoryTotals

Amarillo

Waco

Huntsville

WarehouseTotals

300

400

500 200

600

31

20

23

300 900

20

21

21 42 400

1,000

2,0002,000

600

800

30

15

�12

ToFrom

San Antonio Dallas HoustonFactoryTotals

Amarillo

Waco

Huntsville

WarehouseTotals

300 100

800 200

600

31

20

23

300 900

20

21

21 42 400

1,000

2,0002,000

600

800

30

15�14

(�)(�)

(�) (�)

Next, evaluate the Waco–San Antonio empty cell:Circuit cost � �20 � 31 � 21 � 21 � �11. Place this cost in a circle.

(�)(�)

(�) (�)

Next, evaluate the Huntsville–San Antonio empty cell:Circuit cost � �23 � 31 � 21 � 21 � 30 � 15 � �7. Place this cost in a circle.

(�)(�)

(�)

(�) (�)

(�)

Next, evaluate the Huntsville–Dallas empty cell:Circuit cost � �20 � 21 � 30 � 15 � �14. Place this cost in a circle.

(�)(�)

(�) (�)

Starting Solution Using the Northwest Corner Rule

X X

X X

X

Transportation Table #1

�11

�7 �14

The monthly costs of Transportation Table #1 are:

Factory

AmarilloAmarilloWacoWacoHuntsville

Warehouse

San AntonioDallasDallasHoustonHouston

Totals

Units toBe Shippedper Month

300100800200600

2,000

MonthlyTransportation

Costs

$ 9,3002,100

16,8006,0009,000

$43,200

Step 5: Transportation Table #2

�11

�18 �14

The monthly costs of Transportation Table #2 are:

Factory

AmarilloWacoWacoWacoHuntsville

Warehouse

DallasSan AntonioDallasHoustonHouston

Totals

Units toBe Shippedper Month

400300500200600

2,000

MonthlyTransportation

Costs

$ 8,4006,000

10,5006,0009,000

$39,900

Step 3a:

Step 3b:

Step 3c:

Step 3d:

Steps 1 and 2:

Step 4:

Figure 1 Transportation Tables of Example 4

Page 25: Appendix Linear Programming

Appendix: Linear Programming Solution Methods 25

Table 5 Stepping-Stone Method

Logic of the Stepping-Stones

In this procedure, we want to determine if the present transportation table is optimal and, if it is not, whichvariable should enter the solution. Each unfilled cell (a variable not in the solution) is investigated todetermine if period costs would be reduced if units were moved from a filled cell (a variable in thesolution) to an unfilled cell. The stepping-stone circuit is simply a logical way of determining the per-unitchange in period costs if units are moved into an unfilled cell. This is analogous to examining the Row (C � Z) in the simplex method to determine the entering variable.

Steps of the Stepping-Stone Method

1. Select an empty cell from the transportation table.

2. Draw a closed circuit between the empty cell and other stones (occupied cells) by using only straightvertical or horizontal lines. The circuit may skip over stones or other empty cells, but the corners of thecircuit may occur only at stones (occupied cells) and the empty cell that is being evaluated.

3. Beginning at the empty cell being evaluated, move clockwise and alternatively assign positive (�) andnegative (�) signs to the costs of the cells at the corners of the circuit from Step 2.

4. Total the per-unit costs of the cells at the corners of the circuit. The circuit total corresponds to the Row(C � Z) values of the simplex method, and these values mean the amount of change in total shippingcosts that can be realized by moving one unit to the empty cell under examination. Positive values meancosts will rise; negative values mean costs will fall.

5. Return to Step 1 and continue until all empty cells have been evaluated. The new cell to enter thesolution is the cell whose circuit has the most negative circuit total cost.

6. If all the circuit totals are positive or zero, the solution is optimal. If negative circuit totals exist, developan improved solution.

Determining the New Solution

Once we determine that period costs would be reduced if some units were moved into an unfilled cell, howmany units should be moved? We should move as many as possible. The change in the solution isdetermined by examining the stepping-stone circuit with the most negative total circuit cost. In this circuit,among the filled cells with negative costs, locate the filled cell with the smallest number of units to beshipped. Subtract the number of units from all filled cells with negative costs and add this number to allfilled cells with positive costs on that stepping-stone circuit. This is analogous to determining the value ofthe entering variable in the simplex method.

4. Develop a new transportation table that is an improved solution. An improved solutionis obtained by moving as many units as possible into the empty cell of the last transporta-tion table with the most negative circuit cost. But how many units can be moved into theWaco–San Antonio cell, which had a negative circuit cost in Step 3? Let us again examinethe stepping-stone circuit for this cell.

The maximum number of units that can be moved into the Waco–San Antonio empty cellis 300—the smallest number of units in a negative cell on the Waco–San Antonio stepping-stone circuit. To complete the improved solution, subtract the smallest number of units innegative cells, 300, from all negative cells and add this same number of units to the positivecells of the circuit. All other cells not on this circuit remain unchanged. This new solutionis shown in Transportation Table #2 of Figure 1.

This solution is an improved one—$43,200 in Transportation Table #1 versus $39,900 inTransportation Table #2—but is it optimal? Optimality can be determined once again by follow-ing the stepping-stone procedures. The stepping-stone circuit costs of the empty cells are shownin circles in Transportation Table #2 of Figure 1. Because all stepping-stone circuit costs are ei-ther positive or zero, the solution in Transportation Table #2 is optimal.

Now let us answer the questions of Plain View’s location problem:

Page 26: Appendix Linear Programming

Example 4 uses the well-known stepping-stone method to determine optimality andto develop improved solutions. A newer and more frequently used method is the MODImethod (modified distribution method). This procedure is similar to the stepping-stonemethod, but it is more efficient in computing the improvement costs (circuit costs in thestepping-stone method) for the empty cells.

Example 5 uses the MODI method to test Transportation Table #1 in Figure 1 foroptimality. Before you begin this example, however, perhaps it would be helpful if youwould do two things. First, review the procedures of the transportation method fromTable 4 to get the overall view of the procedure again. Notice that the only way thatthe MODI method affects the procedures of the transportation method is in testing eachtransportation table for optimality. Everything else in the procedure stays the same—formulating the transportation tables, using either the northwest corner rule or VAM toobtain a starting solution, and developing new transportation tables that are improvedsolutions. Next, review Step 3 in Figure 1. This step uses the stepping-stone methodto check the optimality.

Appendix: Linear Programming Solution Methods26

a. If the factory is located at Huntsville, Plain View’s total monthly transportation costs will be$39,900.

b. Plain View should make these monthly shipments:

Number ofFactory Warehouse Units

Amarillo Dallas 400Waco San Antonio 300Waco Dallas 500Waco Houston 200Huntsville Houston 600

Total 2,000

Example 5 MODI Method of Testing Transportation Tables for Optimality

Transportation Table #1

Kj

RiK1 � 31 K2 � 21 K3 � 30

To San FactoryFrom Antonio Dallas Houston Totals

R1 � 0 Amarillo 300 31 100 21�12 42 400

R2 � 0 Waco �11 20 800 21 200 30 1,000

R3 � �15 Huntsville �7 23�14 20 600 15 600

Warehouse 2,000Totals 300 900 800 2,000

Page 27: Appendix Linear Programming

In Example 5, we first compute the Ri and Kj for the table. R1 is always set equalto zero; this allows us to compute all other values of Ri and Kj for filled cells. Afterwe know these values, we can directly calculate the circuit costs for the empty cells ofthe transportation table, but without the necessity of drawing the stepping-stone cir-cuits for all of these cells as in the stepping-stone method. Next, if there are any neg-ative circuit costs, we would draw the stepping-stone circuit for the empty cell that hasthe most negative circuit cost, just as we did in Figure 1, and develop a new trans-portation table with an improved solution as before. Although the Ri and Kj must berecomputed for each transportation table, the MODI method is more efficient than thestepping-stone method and tends to be used more frequently in practice.

The northwest corner rule provides a starting solution to transportation problems,but one that is arbitrary. In most problems, this results in too many transportation ta-bles. This source of inefficiency may not seem too important to you now after havingworked through Example 4 in just two transportation tables, but in problems of morerealistic proportions, say 25 sources and 40 destinations, many tables would be requiredif we used the northwest corner rule to obtain a starting solution. Vogel’s approxi-mation method (VAM) was developed to obtain a more efficient starting solution. Infact, in many problems the starting solution is optimal. Although the VAM method ismore complicated than the northwest corner rule, in realistic problems, VAM is a morepractical way to obtain starting solutions.

Example 6 develops a starting solution to the transportation problem of our pre-vious example. In working through the procedures of the VAM method, refer to Table6, which explains the steps of the method that are applied in Example 6. In Step 1 fromTable 6, in the example the D1 row and column are first completed. These values rep-resent the difference between the lowest unit cost and next lowest unit cost for eachrow and column. In Step 2, the Houston column has the largest difference on the firstiteration and it is selected. In Step 3, the Huntsville–Houston cell has the lowest unitcost within the Houston column, and we therefore allocate 600 units to that cell, themost possible. Because all of the Huntsville row has been allocated, you may draw aline all the way through this row to eliminate it from further consideration. This com-pletes the first iteration.

Appendix: Linear Programming Solution Methods 27

Calculating Ri and Kj Calculating Circuit Costsfor Filled Cells for Unfilled Cells

Ri � Kj � Cij, where Cij represents the transportation Cij � Ri �Kj

cost of the ij cell Amarillo–HoustonR1 � 0 � C13 � R1 �K3

R1 � K1 � C11 � 42 � 0 �30 � �120 � K1 � 31, K1 � 31 Waco–San Antonio

R1 � K2 � C12 � C21 � R2 �K1

0 � K2 � 21, K2 � 21 � 20 � 0 �31 � �11R2 � K2 � C22 Huntsville–San AntonioR2 � 21 � 21, R2 � 0 � C31 � R3 �K1

R2 � K3 � C23 � 23 � (�15) �31 � �70 � K3 � 30, K3 � 30 Huntsville–Dallas

R3 � K3 � C33 � C32 � R3 �K2

R3 � 30 � 15, R3 � �15 � 20 � (�15) �21 � �14

Page 28: Appendix Linear Programming

Next, we begin the second iteration in the D2 row and column. The Houston col-umn has the largest difference and is selected, and 200 units are allocated to theWaco–Houston cell within the Houston column because this cell has the lowest re-maining unit cost. This allocation exhausts the Houston column and a line may bedrawn through the column. This completes the second iteration. The third and fourthiterations are similarly completed.

The starting solution obtained in this example is the same optimal solution obtainedin Figure 1 of Example 4. This is not always the case and although the VAM methoddoes yield an efficient starting solution when compared to the northwest corner method,it still must be considered only a starting solution and all the steps of the transporta-tion method listed in Table 4 must be followed. In other words, in Example 6, after thelast iteration we would need to use either the stepping-stone or the MODI method totest the solution for optimality and proceed with the entire transportation method.

Appendix: Linear Programming Solution Methods28

Example 6 Starting Solutions with Vogel’s Approximation Method (VAM)

To San FactoryFrom Antonio Dallas Houston Totals D1 D2 D3 D4

31 (4) 21 42

Amarillo 400 400 10 10 10 �

(3) 20 (4) 21 (2) 30

Waco 300 500 200 1,000 1 1 1 �

23 20 (1) 15

Huntsville 600 600 5

Warehouse 2,000

Totals 300 900 800 2,000

D1 3 1 15

D2 11 0 12

D3 11 0

D4 0

Di Row Units AllocatedDi Column Calculations Calculations at Iteration (i)

31 � 21 � 10, (1) 600/Huntsville–HoustonD1 23 � 20 � 3, 21 � 20 � 1, 21 � 20 � 1,

30 � 15 � 15 20 � 15 � 5

D2 31 � 20 � 11, 21 � 21 � 0, 31 � 21 � 10, (2) 200/Waco–Houston42 � 30 � 12 21 � 20 � 1

D3 31 � 20 � 11 , 31 � 21 � 10, (3) 300/Waco–San Antonio21 � 21 � 0 21 � 20 � 1

D4 21 � 21 � 0 (4) 500/Waco–Dallas400/Amarillo–Dallas

Page 29: Appendix Linear Programming

The reason that the VAM method yields better starting solutions than the north-west corner rule is that the northwest corner rule does not consider any cost infor-mation when the starting solution is determined—units are arbitrarily allocated ona northwest diagonal regardless of the costs. In the VAM method, an opportunitycost principle is applied. At each iteration, the difference between the lowest unitcost and the next lowest unit cost is the opportunity cost of not allocating units to arow or a column. By selecting the largest difference, the largest opportunity cost isavoided. By taking into account the costs of alternative allocations, the VAM methodyields very good starting solutions that are sometimes optimal, particularly in sim-ple problems.

Unbalanced ProblemsExample 4 involved a problem where the total number of units to be shipped fromsources exactly equaled the number of units required at destinations. This is called abalanced transportation problem. It is not unusual to have an unbalanced trans-portation problem, where the number of units that can be shipped from sources ex-ceeds the number required at destinations, or vice versa. Figure 2 is the optimal trans-portation table of such an unbalanced transportation problem.

A dummy destination column is entered into the table to account for the differ-ence between destination requirements and source shipments. Note that the shippingcost from any source to the dummy destination is zero. The only function of the ficti-tious destination is to balance the problem. The interpretation of the 2,000 units in theSource C–dummy destination cell is that 2,000 units of the capacity at Source C willnot be shipped. The dummy destination column therefore serves the same purpose asslack variables in the simplex method. All other solution procedures (the northwest cor-ner rule, VAM, the stepping-stone method, or the MODI method) discussed earlier arefollowed to solve unbalanced transportation problems. The interpretation of the finalsolution is exactly the same in either balanced or unbalanced problems, with the ex-ception of the dummy row or column interpretation.

Appendix: Linear Programming Solution Methods 29

Table 6 Steps of the VAM Method

1. For each row and column of the transportation table, compute the difference between the lowestunit cost and the next lowest unit cost and record this difference. Place the row differences in acolumn to the right of the table under a heading of Di and the column differences in a row acrossthe bottom of the table with a heading of Di, where i represents the number of times you have donethis step.

2. Select either the row or column with the largest difference. If ties occur, arbitrarily select amongtying elements.

3. Allocate as many units as possible to the cell with the lowest cost in the row or column selected inStep 2.

4. If the units in a row or column have been exhausted in Step 3, that row or column may beeliminated from further consideration in subsequent calculations by drawing a line through it.

5. When differences cannot be calculated in Step 1 because only one row or one column remains, thisis not an unusual occurrence as we near the end of the process. Calculate the differences that arepossible and continue.

6. Return to Step 1 and continue until the units in all the rows and columns have been allocated.

Page 30: Appendix Linear Programming

DegeneracyDegeneracy is another complication that can be encountered in transportation prob-lems. The number of occupied cells in a transportation table must equal the number ofsources plus the number of destinations minus 1. Thus, in Example 4 all transporta-tion tables always had 5 occupied cells (3 sources � 3 destinations � 1 � 5). De-generacy is present when less than this minimum number of occupied cells occurs. De-generacy, if present, interferes with the drawing of stepping-stone circuits when thestepping-stone method is used, or it makes it impossible to compute the Ri and Kj ifthe MODI method is used to check for optimality of transportation tables. Therefore,special procedures are necessary to solve these problems successfully.

If degeneracy occurs in the initial transportation table solution after employingeither the VAM method or the northwest corner rule, a zero is assigned to one of theempty cells. The empty cell selected is usually one that creates an unbroken chain ofoccupied cells from NW to SE across the transportation table. The zero cell is treatedas an occupied cell with zero units occupying the cell when stepping-stone circuitsare drawn or Ri or Kj is calculated. This is analogous to having a variable in the so-lution, but with a zero value as in the simplex method. This manipulation allows usto complete our check for optimality without changing the nature of the transporta-tion problem.

When degeneracy occurs in transportation tables beyond the initial solution, aslightly different procedure is used. Figure 3 shows Transportation Tables #1 and #2 ofa transportation problem where degeneracy exists. Notice that the initial solution to thistransportation problem has 6 occupied cells, exactly the required minimum (3 sources� 4 destinations � 1 � 6). The stepping-stone circuit of the San Diego–Seattle cell(superimposed on Transportation Table #1) has the most negative circuit cost of anyempty cell in this table, and an improved solution must be developed from this circuit.Remember that we first identify the smallest number of units in the negative cells (5,000units) and then subtract this number from all negative cells and add it to all positivecells on the circuit.

Ordinarily, this procedure makes one occupied cell go to zero units, but in this cir-cuit both the Miami–Seattle and Chicago–Denver cells go to zero. That is what causes

Appendix: Linear Programming Solution Methods30

Figure 2 An Unbalanced Transportation Problem

To Dummy SourceFrom 1 2 3 Destination Totals

A 3.5 1,000 2.0 4.0 0 1,000

B 4.0 2,000 2.5 3,000 1.5 0 5,000

C 1,000 2.0 1,000 3.0 3.0 2,000 0 4,000

Destination 10,000Totals 1,000 4,000 3,000 2,000 10,000

Page 31: Appendix Linear Programming

the solution in Transportation Table #2 to be degenerate, a condition comparable to atie for leaving variables in the simplex method. We handle this degenerate situation inthe transportation method by assigning a zero number of units to either one of the cellsreduced to zero units. In Figure 3, the zero is assigned to either the Miami–Seattle cellor the Chicago–Denver cell. The zero is then treated as an occupied cell, but with zerounits, when applying either the stepping-stone or the MODI method of checking sub-sequent transportation tables for optimality. All other procedures of the transportationmethod are followed as before.

When more than two occupied cells are eliminated, more than one zero must beassigned to these cells to overcome the condition of degeneracy. Add enough zero cellsso that the number of occupied cells equals the number of sources plus the number ofdestinations minus 1. These problems are otherwise solved as before, with standardtransportation method procedures.

Appendix: Linear Programming Solution Methods 31

Figure 3 A Degenerate Transportation Table

ToFrom

Miami

Chicago

San Diego

WarehouseTotals

Seattle Denver New OrleansFactoryTotals

10,000

20,000

15,000

45,00045,00010,000

10,000

5,000

New York

20,000

1.2

0.7

0.5

0.5

0.5

0.8

5,000

10,000

10,000

10,000

00.6

0.6

1.2

0.7

0.5

0.7

10,000

ToFrom

Miami

Chicago

San Diego

WarehouseTotals

Seattle Denver New OrleansFactoryTotals

10,000

20,000

15,000

45,00045,00010,000

5,000

New York

20,000

1.2

0.7

0.5

0.5

0.5

0.8

5,000

5,000

15,000

0.6

0.6

1.2

0.7

0.5

0.7

5,000 5,000 10,000

10,000

(�)

(�) (�)

(�) (�)

(�)

Transportation Table #1

Transportation Table #2

Page 32: Appendix Linear Programming

Appendix: Linear Programming Solution Methods32

Example 7 Using the Assignment Method to Assign n Jobs to n Work Centers

The Mercury Electric Motor Company overhauls very large electric motors used in industrialplants in its region. Bill Tobey has just received five electric motor overhaul jobs and is trying todecide to which rewinding work centers the jobs should be assigned. Because some of the workcenters specialize in certain types of jobs, the cost for processing each job varies from work cen-ter to work center. Bill has estimated the processing costs for the five jobs at five rewinding workcenters, and he uses the assignment method to make a minimum cost assignment of the jobs towork centers by following this procedure:

1. Place the cost information for assigning the jobs to work centers in an assignment table for-mat. This is shown in Step 1 in Figure 4.

2. Subtract the smallest cost in each row from all other costs in that row. The resulting table isshown in Step 2 in Figure 4.

3. Subtract the smallest cost in each column from all other costs in that column. See Step 3 inFigure 4.

4. Draw the least number of vertical or horizontal straight lines to cover the zero cells. See Step

ASSIGNMENT METHOD

The assignment method is another method for solving LP problems. Like the trans-portation method, the assignment method is easier to work than the simplex method,but it can be used only on LP problems with special characteristics. These character-istics are even more restrictive than those of LP problems using the transportationmethod:

1. n objects must be assigned to n destinations.2. Each object must be assigned to some destination.3. Each destination must be assigned an object.4. The objective is to minimize the total cost of the assignments.

These problems can be solved by the transportation method where the units to be“shipped” is 1 for all rows and columns and the number of rows equals the number ofcolumns. In this formulation, the “sources” are the objects to be assigned. Althoughthis formulation is straightforward, its solution with the transportation method can be-come difficult owing to extreme cases of degeneracy. Because of this complication, theassignment method offers computational advantages for solving assignment problems.

Example 7 demonstrates the procedures of the assignment method. In this exam-ple, the Mercury Electric Motor Company needs to assign five motor overhaul jobs tofive motor rewinding centers. The assignment method is a simple and efficient methodfor solving such problems because it guarantees assignments that result in minimumprocessing cost, maximum profit, or minimum processing time for all the jobs.

Example 7 demonstrates the minimization algorithm that is appropriate for mini-mizing costs or processing times. If we wished to maximize profits, we would multi-ply all the profits in the first table by minus 1 (�1) and then follow the same proce-dures as in the minimization case. Regardless of whether the problem is of themaximization or minimization type, the optimal job assignment—or job assignments,since multiple optimal solutions are possible—results from the use of the assignmentmethod.

Page 33: Appendix Linear Programming

Appendix: Linear Programming Solution Methods 33

4 in Figure 4. Note that several different schemes may be possible, but the same number ofminimum lines should result. If n lines (five in this example) were the minimum number oflines to cover the zero cells, the optimal solution would have been reached. If that were thecase, the optimal job assignments would be found at the zero cells. Because less than n oronly four lines were required, we must perform a modification to the table in Step 4 in Fig-ure 4.

5. Select the smallest cost not covered by lines in the table in Step 4 in Figure 4 (the smallestcost is 50). Subtract this cost from all uncovered costs and add this cost to cells at the in-tersections of lines in Step 4. Then transfer these new costs and the costs that are unchangedin Step 4 to a new table in Step 5. Redraw the lines to cover the zero cells. Because fivelines are required in Step 5, the solution is optimal. If fewer than five lines had been required,Step 5 would have to be repeated.

Figure 4 Tables of the Assignment Method in Example 7

Step 1Work Centers

1 2 3 4 5

A $150 $300 $225 $350 $250

B 300 200 400 300 250

C 150 100 100 200 150

D 300 100 200 250 200

E 150 350 230 375 260

Jobs

Step 2Work Centers

1 2 3 4 5

A 0 150 75 200 100

B 100 0 200 100 50

C 50 0 0 100 50

D 200 0 100 150 100

E 0 200 80 225 110

Jobs

Step 3Work Centers

1 2 3 4 5

A 0 150 75 100 50

B 100 0 200 0 0

C 50 0 0 0 0

D 200 0 100 50 50

E 0 200 80 125 60

Jobs

Step 4Work Centers

1 2 3 4 5

A 0 150 75 100 50

B 100 0 200 0 0

C 50 0 0 0 0

D 200 0 100 50 50

E 0 200 80 125 60

Jobs

Step 5Work Centers

1 2 3 4 5

A 0 100 25 50 0

B 150 0 200 0 0

C 100 0 0 0 0

D 250 0 100 50 50

E 0 150 30 75 10

Jobs

Page 34: Appendix Linear Programming

Once the optimal table has been obtained, as in Step 5, you are ready to read theoptimal solution from this table. To do so, select any row or column with only one zeroin the optimal table. In this example, you could choose either Column 3 or Row D orE. Suppose you choose Row D. Make the assignment at the cell with a zero in RowD: D–2. Eliminate Row D and Column 2 from further consideration by drawing a linethrough this row and column. Now only consider the 4 � 4 matrix with Rows A, B,C, and E and Columns 1, 3, 4, and 5. Select any row or column with just one zero inthis new matrix. Make that assignment, eliminate that row and column from furtherconsideration, and repeat this process until all assignments have been made. The opti-mal solution in this example is A–5, B–4, C–3, D–2, and E–1, giving a total cost of$250 � 300 � 100 � 100 � 150 � $900.

Appendix: Linear Programming Solution Methods34

REVIEW AND DISCUSSION QUESTIONS

1. Where in the optimal simplex tableau is the LP so-lution found?

2. Where are the shadow prices in the optimal simplextableau?

3. What are shadow prices? What information do theyprovide managers?

4. Why must row operations be performed in the sim-plex method?

5. What purpose do artificial variables serve?6. What are slack variables? What purpose do they serve?7. What determines the subscripts for artificial and

slack variables?8. What are the characteristics of transportation prob-

lems?9. What are the procedures of the transportation method?

10. What are the procedures of the northwest cornerrule? Why is it used?

11. What methods may be used to test a transportationtable for optimality?

12. What advantage does the MODI method have overthe stepping-stone method? Explain.

13. What advantage does the VAM method have over thenorthwest corner rule? Explain.

14. What is an unbalanced transportation problem? Whatmodifications are necessary in our ordinary trans-portation method when working unbalanced prob-lems?

15. Why is degeneracy a difficulty in the transportationmethod? What specific difficulties are encounteredin the northwest corner rule, stepping-stone method,and the MODI method?

16. What are the characteristics of assignment problems?17. Describe the procedures of the assignment method.

PROBLEMS

Simplex Method

1. Perform row operations on this second tableau, and complete the third tableau. Isthe third tableau optimal? If not, which variables will enter and leave the thirdtableau?

Second Tableau

C 40 75 0 0

SOL RHS X1 X2 S1 S2 �

75 X2 75 1/2 1 1/4 00 S2 50 4 0 �1/2 1

Z 5,625 75/2 75 75/4 0

(C � Z) 5/2 0 �75/4 0

Page 35: Appendix Linear Programming

2. Perform row operations on this second tableau, and complete the third tableau. Isthe third tableau optimal? If not, which variables will enter and leave the thirdtableau?

Second Tableau

C 50 60 70 0 0 0

SOL RHS X1 X2 X3 S1 S2 S3 �

70 X3 100 0 1/4 1 1/4 0 00 S2 0 2 �1/2 0 �1/2 1 00 S3 400 4 1/2 0 �1/2 0 1

Z 7,000 0 35/2 70 35/2 0 0

(C � Z) 50 85/2 0 �35/2 0 0

3. Perform row operations on this second tableau. Complete the third tableau. Is thethird tableau optimal? If not, which variables will enter and leave the third tableau?

Second Tableau

C �30 �40 �M �M 0 0 0

SOL RHS X1 X2 A1 A2 S1 S2 S3 �

�40 X2 30 1/2 1 1/2 0 �1/2 0 0�M A2 50 3/2 0 �5/2 1 5/2 �1 0

0 S3 20 3/2 0 �1/2 0 1/2 0 1

Z �50M �3/2M�40

5/2M�M

�5/2MM 0

�1,200 �20 �20 �20

(C � Z)3/2M

0�7/2M

05/2M

�M 0�10 �20 �20

(LP-A, B, C, D, E, F, G, H, I, and J problems are found at the end of Chapter 8.)

4. Formulate Problem LP-A. Develop the initial simplex tableau.

5. Solve LP-B using the simplex method. What is the optimal solution?

6. Solve LP-C using the simplex method. What is the optimal solution?

7. Solve LP-D using the simplex method. What is the optimal solution?

8. Solve LP-E using the simplex method. What is the optimal solution? (Hint: Con-vert the objective function to cents.)

9. Solve LP-G using the simplex method. What is the optimal solution?

10. Solve LP-H using the simplex method. What is the optimal solution?

11. Solve LP-I using the simplex method. What is the optimal solution? Fully inter-pret the meaning of the solution.

12. Below are the variable definitions and the last (optimal) tableau for ProblemLP-A.a. What should management do? In other words, to management decision mak-

ers, what is the complete meaning of the values of X1, X2, S1, S2, S3, S4, A3,A4, and Z in the optimal tableau?

b. What is the meaning of each element in Row (C � Z)?

Appendix: Linear Programming Solution Methods 35

Page 36: Appendix Linear Programming

X1 � number of chairs to produce per week

X2 � number of bookshelf units to produce per week

S1 � excess labor hours unused per week

S2 � excess wood unused per week (board-feet)

S3 � number of chairs above minimum per week

S4 � number of bookshelf units above minimum per week

Z � dollars of profit per week

Optimal Tableau

C 15 21 0 0 0 0 �M �M

SOL RHS X1 X2 S1 S2 S3 S4 A3 A4 �

0 S1 20 0 0 1 �1/2 0 �3 0 30 S3 50 0 0 0 1/8 1 3/2 �1 �3/2

15 X1 150 1 0 0 1/8 0 3/2 0 �3/221 X2 100 0 1 0 0 0 �1 0 1

Z 4,350 15 21 0 15/8 0 3/2 0 �3/2

(C � Z) 0 0 0 �15/8 0 �3/2 �M�M�3/2

13. Below are the variable definitions and the last (optimal) tableau for Problem LP-B.a. What should management do? In other words, to management decision mak-

ers, what is the complete meaning of the values of X1, X2, S1, S2, and Z inthe optimal solution?

b. What is the meaning of each element in Row (C � Z)?

X1 � hundreds of gallons of premium ice cream to produce per week

X2 � hundreds of gallons of light ice cream to produce per week

S1 � unused mixing machine hours

S2 � unused gallons of milk

Z � dollars of profit per year

Optimal Tableau

C 100 100 0 0

SOL RHS X1 X2 S1 S2 �

100 X2 175 0 1 30/8 �1/80

100 X1 175 1 0 �35/12 1/48

Z 35,000 100 100 83.33 0.833

(C � Z) 0 0 �83.33 �0.833

14. Below are the variable definitions and the last (optimal) tableau for Problem LP-C.a. What should management do? In other words, to management decision mak-

ers, what is the complete meaning of the values of X1, X2, S1, S2, S3, and Zin the optimal solution?

b. What is the meaning of each element in Row (C � Z)?

Appendix: Linear Programming Solution Methods36

Page 37: Appendix Linear Programming

X1 � cases of relays per quarterX2 � cases of capacitors per quarterS1 � unused labor-hoursS2 � unused stamping machine hoursS3 � unused testing machine hoursZ � dollars of profit per year

Optimal Tableau

C 250 200 0 0 0

SOL RHS X1 X2 S1 S2 S3 �

0 S1 4285.7 0 0 1 �275/7 �100/7250 X1 142.86 1 0 0 5/14 �1/7200 X2 314.286 0 1 0 �3/14 2/7

Z 98,572 250 200 0 46.429 21.429

(C � Z) 0 0 0 �46.429 �21.429

15. Below are the variable definitions and the last (optimal) tableau for Problem LP-D.a. What should management do? In other words, to management decision mak-

ers, what is the complete meaning of the values of X1, X2, S2, S3, and Z inthe optimal solution?

b. What is the meaning of each element in Row (C � Z)?

X1 � tons of sand per dayX2 � tons of gravel per dayS2 � below maximum sand limitS3 � above minimum gravel limitZ � $ cost of sand and gravel per day

Optimal Tableau

C �6 �8 �M �M 0 0

SOL RHS X1 X2 A1 A3 S2 S3 �

0 S3 100 0 0 1 �1 �1 1�6 X1 800 1 0 0 0 1 0�8 X2 700 0 1 1 0 �1 0

Z �10,400 �6 �8 �8 0 2 0

(C � Z) 0 0 �M�8 �M �2 0

16. Below are the variable definitions and the last (optimal) tableau for Problem LP-E:a. What should management do? In other words, to management decision mak-

ers, what is the complete meaning of the values of X1, X2, S1, S2, S3, and Zin the optimal tableau?

b. What is the meaning of each element in Row (C � Z)?

X1 � pounds of oats fed to each hog each dayX2 � pounds of corn fed to each hog each dayS1 � excess mineral units per hog per dayS2 � excess calories per hog per dayS3 � excess vitamin units per hog per dayZ � daily cents of feed cost per day

Appendix: Linear Programming Solution Methods 37

Page 38: Appendix Linear Programming

Fourth Tableau

C �12 �7 0 0 0 �M �M �M

SOL RHS X1 X2 S1 S2 S3 A1 A2 A3 �

�12 X125/2 1 0 �3/400 1/400 0 3/400 �1/400 0

0 S3 250 0 0 1/4 �3/4 1 �1/4 3/4 �1�7 X2 5 0 1 1/200 �1/200 0 �1/200 1/200 0

Z �185 �12 �7 11/200 1/200 0 �11/200 �1/200 0

(C � Z) 0 0 �11/200 �1/200 0�M �M

�M�11/200 �1/200

17. The computer solution to Problem LP-F from the POM Software Library follows.

Min Z � 7.9 X1 � 4.7 X2 � 3.2 X3 � 8.3 X4� 6.1 X5 � 8.7 X6 � 4.5 X7 � 7.6 X8 � 5.4 X9 � 6.6 X10 � 7.1 X11 � 5 X12

ST(1) 1 X1 � 1 X2 � 1 X3 � 1 X4 �� 32000(2) 1 X5 � 1 X6 � 1 X7 � 1 X8 �� 40000(3) 1 X9 � 1 X10 � 1 X11 � 1 X12 �� 25000(4) 1 X1 � 1 X5 � 1 X9 � 30000(5) 1 X2 � 1 X6 � 1 X10 � 18000(6) 1 X3 � 1 X7 � 1 X11 � 22000(7) 1 X4 � 1 X8 � 1 X12 � 27000

�����������������������������������������SOLUTION:�����������������������������������������VARIABLE MIX SOLUTION

X3 14000.000X5 30000.000X7 8000.000X2 18000.000

Slack 2 0.000X12 25000.000X8 2000.000Z 488600.000

�����������������������������������������SENSITIVITY ANALYSIS:�����������������������������������������CONSTRAINTS:——————————————————————————————————

RANGE OF RHSCONSTRAINT TYPE OF SHADOW FOR WHICH SHADOW

NUMBER CONSTRAINT PRICE PRICE IS VALID

1 �� 1.300 32000. – – 40000.2 �� 0.000 40000. – – �INF3 �� 2.600 25000. – – 27000.4 � 6.100 0. – – 30000.5 � 6.000 10000. – – 18000.6 � 4.500 14000. – – 22000.7 � 7.600 25000. – – 27000.

Appendix: Linear Programming Solution Methods38

Page 39: Appendix Linear Programming

NOTE: THE SHADOW PRICE REPRESENTS THE AMOUNT Z WOULD CHANGE IFA CONSTRAINT’S RHS CHANGED ONE UNIT.

�����������������������������������������DECISION VARIABLES:�����������������������������������������NONBASIC AMOUNT Z IS REDUCED (MAX) OR INCREASED (MIN)VARIABLE FOR ONE UNIT OF X IN THE SOLUTION

X1 3.1X4 2.X6 2.7X9 1.9X10 3.2X11 5.2

——————————————————————————————————

a. What should management do? In other words, to management decision mak-ers, what is the complete meaning of the values of the decision variables, slackvariables, and Z in the optimal solution?

b. What is the meaning of each value in the sensitivity analysis section of thesolution?

18. Below are the variable definitions and the last (optimal) tableau for Problem LP-G:a. What should management do? In other words, to management decision mak-

ers, what is the complete meaning of the values of X1, X2, S1, S2, S3, and Zin the optimal tableau?

b. What is the meaning of each element in Row (C � Z)?

X1 � number of cases of Product A per week

X2 � number of cases of Product B per week

S1 � unused Cutting Department hours per week

S2 � unused Trimming Department hours per week

S3 � unused Coating Department hours per week

Z � dollars of profit per week

Third Tableau

C 64 87 0 0 0

SOL RHS X1 X2 S1 S2 S3 �

0 S121/2 0 0 1 �5/8 �39/160

64 X1 15 1 0 0 1/4 �1/16

87 X2 10 0 1 0 0 1/8

Z 1,830 64 87 0 16 55/8

(C � Z) 0 0 0 �16 �55/8

Transportation Method

19. a. Use the northwest corner rule and the stepping-stone method to solve the trans-portation problem below.

Appendix: Linear Programming Solution Methods 39

Page 40: Appendix Linear Programming

Appendix: Linear Programming Solution Methods40

FromTo

A

B

C

DestinationTotals

$0.80

0.90

0.60

1 2 3SourceTotals

$0.70

0.80

0.60

$0.40

0.50

0.70

300

300

400

1,0001,000

200 500 300

b. What is the optimal solution?c. Fully interpret the meaning of the solution.

20. The Apex Company produces electric transformers for electric distributors at twofactories located in Atlanta and San Jose. Apex has four regional warehouses lo-cated in Dallas, Seattle, Philadelphia, and Chicago. The monthly warehouse re-quirements, monthly factor capacities, and per-unit transportation costs are:

MonthlyFactory Transportation

Capacity CostFactory (units) Source Destination per Unit

Atlanta 2,000 Atlanta Dallas $16San Jose 3,000 Seattle 40

Philadelphia 20Chicago 18

San Jose Dallas 30Seattle 15Philadelphia 45Chicago 33

MonthlyWarehouse

RequirementWarehouse (units)

Dallas 1,300Seattle 1,200Philadelphia 1,400Chicago 1,100

a. Use the northwest corner rule and the stepping-stone method to solve the trans-portation problem above.

b. What is the optimal solution?c. Fully interpret the meaning of the solution.

21. a. Solve Problem LP-F using the northwest corner rule and the stepping-stonemethod. What is the optimal solution? Fully interpret the meaning of the so-lution.

Page 41: Appendix Linear Programming

b. Solve Problem LP-F using the VAM and MODI methods. What is the opti-mal solution? Fully interpret the meaning of the solution.

22. a. Solve Problem LP-J using the northwest corner rule and the stepping-stonemethod.

b. What is the optimal solution? Fully interpret the meaning of the solution.

23. a. Solve Problem LP-J using the VAM and MODI methods.b. What is the optimal solution? Fully interpret the meaning of the solution.

24. Three fabrication departments—A, B, and C—produce three slightly differentproducts that are processed further in four assembly departments—1, 2, 3, and 4.Each fabrication and assembly department has a unique monthly capacity, and itis desirable that each department operate at capacity. Although any of the threeproducts coming from the three fabrication departments can be processed in anyof the four assembly departments, the assembly cost per unit differs among theproducts. Additionally, the materials-handling costs per unit differ among all thefabrication and assembly departments. The monthly fabrication department ca-pacities, monthly assembly department capacities, and per-unit materials-handlingand assembly processing costs are:

Appendix: Linear Programming Solution Methods 41

MonthlyFabrication CapacityDepartment (units)

A 12,000B 8,000C 14,000

MonthlyAssembly Capacity

Department (units)

1 7,0002 11,0003 6,0004 10,000

TotalMaterials-Handling

Materials-Handling Assembly and AssemblyFabrication Assembly Cost per Cost per Cost perDepartment Department Unit Unit Unit

A 1 $0.20 $0.40 $0.602 0.25 0.65 0.903 0.10 0.60 0.704 0.15 0.35 0.50

B 1 $0.30 $0.70 $1.002 0.15 0.95 1.103 0.15 0.65 0.804 0.25 0.65 0.90

C 1 $0.10 $0.70 $0.802 0.25 0.35 0.603 0.30 0.90 1.204 0.15 0.55 0.70

Develop a monthly production schedule for the three fabrication and four assem-bly departments. In other words, how many units should be processed in each fab-rication department and moved to and processed in each assembly department sothat monthly assembly and materials-handling costs are minimized?a. Use the northwest corner rule and the stepping-stone method to solve the prob-

lem. What is the optimal solution? Fully interpret the meaning of the solution.b. Use the VAM and MODI methods to solve the problem. What is the optimal

solution? Fully interpret the meaning of the solution.

25. Three recycling plants—A, B, and C—receive and process scrap paper and shippaper stock to three regional warehouses—1, 2, and 3. The monthly recycling plantcapacities, monthly regional warehouse requirements, and the shipping cost per100 pounds are:

Page 42: Appendix Linear Programming

Monthly Monthly ShippingRecycling Capacity Regional Requirement Recycling Regional Cost per

Plant (100 pounds) Warehouse (100 pounds) Plant Warehouse 100 Pounds

A 800 1 700 A 1 $1B 600 2 900 2 4C 1,100 3 600 3 2

B 1 $22 43 1

C 1 $12 33 2

How many pounds of paper stock should be shipped from each recycling plant toeach regional warehouse per month to minimize monthly shipping costs?a. Use the northwest corner rule and the stepping-stone method to solve this prob-

lem. What is the optimal solution? Fully interpret the meaning of the solution.b. Use the VAM and MODI methods to solve this problem. What is the optimal

solution? Fully interpret the meaning of the solution.

Assignment Method

26. Four jobs must be assigned to four work centers. Only one job can be assigned toeach work center, and all jobs must be processed. The cost of processing each jobthrough each work center is shown below:

Work Centers

1 2 3 4

A $50 $40 $70 $35

B 25 25 55 40

C 30 35 55 60

D 20 30 75 45

a. Use the assignment method to determine which jobs should be assigned towhich work centers to minimize total processing costs.

b. What is the cost of your assignments in Part a?

27. Four employees must be assigned to four projects. Only one employee can be as-signed to a project, and all projects must be performed. The costs of the employ-ees performing the projects are:

Projects

1 2 3 4

Ann $400 $300 $250 $300

Ben 350 400 275 250

Cal 500 350 200 300

Dee 600 475 375 425

a. Use the assignment method to assign these employees to these projects.b. What is the total cost of your assignments in Part a?

Appendix: Linear Programming Solution Methods42

Jobs

Em

ploy

ees

Page 43: Appendix Linear Programming

28. Five customers must be assigned to five stockbrokers in a brokerage house. Theestimated profits for the brokerage house for all possible assignments are shownbelow:

Brokers

1 2 3 4 5

A $400 $400 $375 $450 $400

B 325 525 400 525 425

C 450 575 425 550 400

D 225 450 500 600 450

E 500 550 475 525 500

a. Use the assignment method to assign the five customers to the five differentbrokers to maximize profits for the brokerage house.

b. What are the profits from your assignment in Part a?

Appendix: Linear Programming Solution Methods 43

Cus

tom

ers

COMPUTER SOLUTIONS

Several of the problems at the end of Chapter 8 and some of the problems in this ap-pendix are appropriate for solution with a computer. The three computer problems/casesat the end of Chapter 8—Quality Pixels Inc., Integrated Products Corporation (IPC),and Jane Deere Company—are especially intended for solution with the POM Soft-ware Library, which accompanies this book. In solving these problems, take care todefine the decision variables, determine the solution of the problems using a computer,and fully interpret the meaning of the solution. This means not only determining thevalue of the decision variables (X’s), slack variables (S’s), and the objective function(Z) but also fully interpreting the meaning of the solution to management. In otherwords, what would you recommend that management do as a result of your analysis?This interpretation should also include an explanation of the meaning of the shadowprices. Also, you should be aware of unusual features in the solution; for example, youshould determine if alternate optimal solutions are present.

SELECTED BIBLIOGRAPHY

Anderson, David R., Dennis J. Sweeney, and Thomas A.Williams. An Introduction to Management Science: Quan-titative Approaches to Decision Making, 9th ed. Cincin-nati, OH: South-Western College Publishing, 2000.

Camm, Jeffrey D., and James R. Evans. Management Scienceand Decision Technology. Cincinnati, OH: South-WesternCollege Publishing, 2000.

Carter, Michael W., and Camille C. Price. Operations Research:A Practical Introduction. Boca Raton, FL: CRC Press, 2001.

Hillier, Frederick S., and Gerald J. Lieberman. Introduction toOperations Research, 7th ed. Boston: McGraw-Hill, 2001.

Pannell, David J. Introduction to Practical Linear Program-ming. New York: John Wiley & Sons, 1996.

Perry, C., and K. C. Crellin. “The Precise Management Mean-ing of a Shadow Price.” Interfaces 12, no. 2 (April 1982):61–63.

Walker, Russell C. Introduction to Mathematical Programming.Upper Saddle River, NJ: Prentice Hall, 1999.

Winston, Wayne L., and S. Christian Albright. Practical Man-agement Science, 2nd ed. Pacific Grove, CA: Brooks/Cole,2001.

Page 44: Appendix Linear Programming

Appendix: Linear Programming Solution Methods44

ANSWERS TO ODD-NUMBERED PROBLEMS

(1) Third tableau is optimal; X2 � 68.75, X1 � 12.5, Z � 5,656.25. • (3) Third tableauis not optimal; X1 will enter and S3 will leave. • (5) X1 � 175 hundred gallons of pre-mium ice cream, X2 � 175 hundred gallons of light ice cream, S1 � 0 unused mixingcapacity, S2 � 0 unused high-grade milk, Z � $35,000 profit next week. • (7) X1 �800 tons of sand, X2 � 700 tons of gravel, S2 � 0 so exactly 40% of the concrete issand, S3 � 100 so amount of gravel in the concrete exceeded the 30% requirement by100 tons, Z � $10,400 total cost of sand and gravel each day. • (9) X1 � 15 cases ofProduct A per week, X2 � 10 cases of Product B per week, S1 � 10.5 hours of un-used Cutting Department capacity per week, S2 � 0 hours of unused Trimming De-partment capacity per week, S3 � 0 hours of unused Coating Department capacity perweek, Z � $1,830 total profit per week. • (11) X1 � 500,000 pounds of carrier, X2 �100,000 pounds of filler/color, X3 � 100,000 pounds of adhesive, Z � $370,000, S1,S2, and S3 � 0. • (13) a. Make 175 hundred gallons of premium ice cream and 175hundred gallons of light ice cream per week for a profit of $35,000 per week. All mix-ing machine capacity and milk available will be used; b. X1 (0), X2 (0), because thesevariables are in the optimal solution; S1 (�83.33) means weekly profit would increase$83.33 for each additional mixing machine hour that could be found; S2 (�0.833)means weekly profit would increase $0.833 for each additional gallon of milk that couldbe found. • (15) a. Use 800 tons of sand and 700 tons of gravel per day for a cost of$10,400 per week. Sand will be at the maximum limit, and gravel will be above theminimum limit by 100 tons; b. X1 (0), X2 (0), because these variables are in the opti-mal solution; S2 (�2) means daily cost would decrease $2 for each additional ton in-crease in the maximum limit of sand; S3 (0) means daily cost would not change if theminimum limit of gravel were lowered. • (17) a. From Mill 1 ship 18,000 units to Ware-house B and 14,000 units to Warehouse C; from Mill 2 ship 30,000 units to WarehouseA, 8,000 units to Warehouse C, and 2,000 units to Warehouse D; from Mill 3 ship25,000 units to Warehouse D; b. The values in the constraints section represent theamount of change in Z for a one-unit change in each constraint’s RHS. For example,the 2.6 in the third constraint means that if Mill 3’s capacity were increased from 25,000to 25,001, Z would decrease from $488,600 to $488,597.40. The values in the deci-sion variable section represent the amount of change in Z if one unit of a nonbasicvariable were forced into the solution. For example, if we were forced to ship one unitfrom Mill 1 to Warehouse A, Z would be increased from $488,600 to $488,603.10.• (19) From Source A ship 200 units to Destination 2 and 100 units to Destination 3;from Source B ship 300 units to Destination 2; from Source C ship 200 units to Des-tination 1 and 200 units to Destination 3; total shipping cost will be $540. • (21) Seethe answer to Problem 17. • (23) Atlanta plant should ship 400 systems to Chicago and1,200 to New York; El Paso plant should ship 100 systems to Chicago, 1,000 to Dal-las, 800 to Denver, and 500 to San Jose; monthly shipping cost will be $191,000. • (25)Alternative optimal solutions are available for this problem. One solution: From PlantA ship 70,000 pounds to Warehouse 1; from Plant B ship 60,000 pounds to WarehouseB; from Plant C ship 90,000 pounds to Warehouse 2; monthly shipping cost will be$4,000. • (27) Assign Ann to Project 2, Ben to Project 1, Cal to Project 3, and Dee toProject 4; cost of the assignments will be $1,275.