Computational Methods forManagement and EconomicsCarla Gomes Module 8b The transportation simplex method
The transportation and assignment problems • Special types of linear programming problems. • The structure of these problems leads to algorithms – streamlined versions of the simplex method - more efficient than the standard simplex method.
Setting up the tableau for the general simplex method • Convert minimization problem into maximization problem • Big M or 2 phase method to introduce m+ n artificial variables (equality constraints) • Find an initial BF solution Insert table 8.13 Note:all entries not shown are 0.
Iterations in the general simplex method • Optimality test and step 1 of iteration: • Select an entering basic variable knowing current row 0 (which is obtained by subtracting a certain multiple of another row from the preceding row 0). • Step 2(leaving basic variable) identifies which basic variable reaches zero as the entering variable is increased (which is done by comparing the current coefficients of the entering basic variable and the corresponding rhs). • Step 3 (determine new BF solution) subtracting certain multiples of one row from other rows
Iterations in the general simplex method applied to transportation problem • General form of row 0 • ui – multiple of the original row i that has been subtracted (directly or indirectly) from original row 0. • vj – multiple of the original row i that has been subtracted (directly or indirectly) from original row 0. • cij – ui – vj – 0if it is a basic variable; otherwise it is interpreted as the rate at which Z will change as xij is increased. Insert table – 8:14
Almost the entire simplex tableau can be eliminated! Transportation simplex method Does the transportation simplex method do all the general simplex method operations? NO! • No artificial variables are needed simple procedure is used to identify the initial BF solution. • Row 0 can be obtained without using any other row –a simple procedure allows us to calculate the values of ui and vi directly. Basically by solving a simple procedure that allows us to find the solution to the set of equations for the basic variables that have a coefficient 0 in row 0, i.e., cij – ui – vj=0. • The leaving variable can also be identified in a simple way due to the special structure of the problem, without explicitly using the coefficients of the new entering basic variable. • The new BF solution can also be identified very easily.
Transportation simplex method • Much faster than standard simplex method • standard simplex method • m+n+1 rows • (m+1)(n+1) = mn + m + n + 1 columns • transportation simplex method • m + 2 rows • n + 2 columns Assume m = 10 n = 100 and see the difference!
Tableau for Transportation simplex method Insert table 8.15 (*) Because there are m+n equations a BF solution in this case only has m+n-1 basic variables – the other variable can be obtained as a function of the m+n-1 variables
Transportation simplex method • Initialization: finding the initial BF solution • Optimality test • Iteration
General procedure for construction of an initial basic feasible solution for TP From the rows and columns still under consideration select the next basic variable (allocation) according to some criterion Make that allocation the largest possible (the smallest of the remaining supply in its row vs. remaining demand in its column) Eliminate the row or column that zeroed the corresponding supply/demand (in case of tie, randomly pick between the row vs. column; this is a case of a degenerate basic solution, i.e, a basic variable with value 0). If only one row or column remains under consideration, then the procedure is complete by selecting every remaining variable associated with that row or column to be basic with the only feasible allocation. Otherwise return to step 1.
Criteria for selecting next basic variable There are several methods. Here are three: Northwest Corner Method Minimum Cost Method Vogel’s Method
1. Northwest Corner Method To find the bfs by the NWC method: Begin in the upper left (northwest) corner of the transportation tableau and set x11 as large as possible (here the limitations for setting x11 to a larger number, will be the demand of demand point 1 and the supply of supply point 1. Your x11 value can not be greater than minimum of this 2 values).
According to the explanations in the previous slide we can set x11=3 (meaning demand of demand point 1 is satisfied by supply point 1).
After we check the east and south cells, we saw that we can go east (meaning supply point 1 still has capacity to fulfill some demand).
After applying the same procedure, we saw that we can go south this time (meaning demand point 2 needs more supply by supply point 2).
Finally, we will have the following bfs, which is: x11=3, x12=2, x22=3, x23=2, x24=1, x34=2
2. Minimum Cost Method The Northwest Corner Method dos not utilize shipping costs. It can yield an initial bfs easily but the total shipping cost may be very high. The minimum cost method uses shipping costs in order come up with a bfs that has a lower cost. To begin the minimum cost method, first we find the decision variable with the smallest shipping cost (Xij). Then assign Xijits largest possible value, which is the minimum of si and dj
After that, as in the Northwest Corner Method we should cross out row i and column j and reduce the supply or demand of the noncrossed-out row or column by the value of Xij. Then we will choose the cell with the minimum cost of shipping from the cells that do not lie in a crossed-out row or column and we will repeat the procedure.
An example for Minimum Cost MethodStep 1: Select the cell with minimum cost.
Step 3: Find the new cell with minimum shipping cost and cross-out row 2
Step 4: Find the new cell with minimum shipping cost and cross-out row 1
Step 5: Find the new cell with minimum shipping cost and cross-out column 1
Step 6: Find the new cell with minimum shipping cost and cross-out column 3
Step 7: Finally assign 6 to last cell. The bfs is found as: X11=5, X21=2, X22=8, X31=5, X33=4 and X34=6
3. Vogel’s Method Begin with computing each row and column a penalty. The penalty will be equal to the difference between the two smallest shipping costs in the row or column. Identify the row or column with the largest penalty. Find the first basic variable which has the smallest shipping cost in that row or column. Assign the highest possible value to that variable, and cross-out the row or column as in the previous methods. Compute new penalties and use the same procedure.
Step 2: Identify the largest penalty and assign the highest possible value to the variable.
Step 3: Identify the largest penalty and assign the highest possible value to the variable.
Step 4: Identify the largest penalty and assign the highest possible value to the variable.
Step 5: Finally the bfs is found as X11=0, X12=5, X13=5, and X21=15
Russell’s method For each row and column remaining under consideration determine its ui – the largest cij still in that row, and its vj -- the largest cij still in that column. For each variable xij not previous selected in these rows and columns calculate ij = cij - ui - vj. Select the variable xij with the largest (in absolute terms) negative ij (ties my be broken randomly).
An example for Russell’s MethodStep 1: Compute ui’s and vj’s for each row and column .
11 = 16- 22 – M = - 6 – M 21 = 14- 19 – M = - 5 – M 31 = 19- M– M = 19 – 2 M 41 = M- M– M = – M 12 = 16- 22 –19= – 25 22 = 14- 19 – 19 = – 24 32 = 19- M– 19 = - M 42 = 0- M– 19= – M - 19 13 = 13- 22 –M= –9 - M 23 = 13- 19 – M = – 6 - M 33 = 20- M– M = 20 – 2 M 43 = M- M– M = – M 13 = 22 - 22 –23= –23 23 = 19 - 19 – 23 = – 23 33 = 23 - M– 23 = – M 43 = 0 - M– 23 = – M -23 14 = 17 - 22 –M= –5-M 24 = 15 - 19 – M = –4-M 34 = M - M– M = – M 44 = 0 - M– M = – 2M An example for Russell’s MethodStep 2: For each variable xij not previous selected in these rows and columns calculate ij = cij - ui - vj.
11 = 16- 22 –19 = - 25 21 = 14- 19 – 19= - 24 31 = 19- M– 19 = – M 12 = 16- 22 –19= – 25 22 = 14- 19 – 19 = – 24 32 = 19- M– 19 = - M 13 = 13- 22 –20= – 29 23 = 13- 19 – 20= –26 33 = 20- M– 20 = – M 14 = 22 - 22 –23= –23 24 = 19 - 19 – 23 = – 23 34 = 23 - M– 23 = – M 15 = 17 - 22 –M= –5-M 25 = 15 - 19 – M = –4-M 35 = M - M– M = – M An example for Russell’s MethodStep 2: For each variable xij not previous selected in these rows and columns calculate ij = cij - ui - vj. Note: v1 and v3 changed
An example for Russell’s MethodStep 2: For each variable xij not previous selected in these rows and columns calculate ij = cij - ui - vj. 11 = 16- 22 –19 = - 25 21 = 14- 19 – 19= - 24 31 = 19- M– 19 = – M 12 = 16- 22 –19= – 25 22 = 14- 19 – 19 = – 24 32 = 19- M– 19 = - M 13 = 13- 22 –20= – 29 23 = 13- 19 – 20= –26 33 = 20- M– 20 = – M 14 = 22 - 22 –23= –23 24 = 19 - 19 – 23 = – 23 34 = 23 - M– 23 = – M