Presentation is loading. Please wait.

Presentation is loading. Please wait.

Computational Methods for Management and Economics Carla Gomes Module 8b The transportation simplex method.

Similar presentations


Presentation on theme: "Computational Methods for Management and Economics Carla Gomes Module 8b The transportation simplex method."— Presentation transcript:

1 Computational Methods for Management and Economics Carla Gomes Module 8b The transportation simplex method

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

3 The transportation problem

4 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 Note:all entries not shown are 0. Insert table 8.13

5 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

6 Iterations in the general simplex method applied to transportation problem General form of row 0 –u i – multiple of the original row i that has been subtracted (directly or indirectly) from original row 0. –v j – multiple of the original row i that has been subtracted (directly or indirectly) from original row 0. – –c ij – u i – v j – 0 if it is a basic variable; otherwise it is interpreted as the rate at which Z will change as x ij is increased. Insert table – 8:14

7 Transportation simplex method 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 u i and v i 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., c ij – u i – v j =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. Does the transportation simplex method do all the general simplex method operations? Almost the entire simplex tableau can be eliminated!

8 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 Transportation simplex method Assume m = 10 n = 100 and see the difference!

9 Tableau for Transportation simplex method (*) 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 Insert table 8.15

10 Initialization: finding the initial BF solution Optimality test Iteration Transportation simplex method

11 General procedure for construction of an initial basic feasible solution for TP 1.From the rows and columns still under consideration select the next basic variable (allocation) according to some criterion 2.Make that allocation the largest possible (the smallest of the remaining supply in its row vs. remaining demand in its column) 3.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). 4.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.

12 Criteria for selecting next basic variable There are several methods. Here are three: 1.Northwest Corner Method 2.Minimum Cost Method 3.Vogel’s Method

13 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 x 11 as large as possible (here the limitations for setting x 11 to a larger number, will be the demand of demand point 1 and the supply of supply point 1. Your x 11 value can not be greater than minimum of this 2 values).

14 According to the explanations in the previous slide we can set x 11 =3 (meaning demand of demand point 1 is satisfied by supply point 1).

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

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

17 Finally, we will have the following bfs, which is: x 11 =3, x 12 =2, x 22 =3, x 23 =2, x 24 =1, x 34 =2

18 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 (X ij ). Then assign X ij its largest possible value, which is the minimum of s i and d j

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

20 An example for Minimum Cost Method Step 1: Select the cell with minimum cost.

21 Step 2: Cross-out column 2

22 Step 3: Find the new cell with minimum shipping cost and cross-out row 2

23 Step 4: Find the new cell with minimum shipping cost and cross-out row 1

24 Step 5: Find the new cell with minimum shipping cost and cross-out column 1

25 Step 6: Find the new cell with minimum shipping cost and cross-out column 3

26 Step 7: Finally assign 6 to last cell. The bfs is found as: X 11 =5, X 21 =2, X 22 =8, X 31 =5, X 33 =4 and X 34 =6

27 3. Vogel’s Method 1.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. 2.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. 3.Compute new penalties and use the same procedure.

28 An example for Vogel’s Method Step 1: Compute the penalties.

29 Step 2: Identify the largest penalty and assign the highest possible value to the variable.

30 Step 3: Identify the largest penalty and assign the highest possible value to the variable.

31 Step 4: Identify the largest penalty and assign the highest possible value to the variable.

32 Step 5: Finally the bfs is found as X 11 =0, X 12 =5, X 13 =5, and X 21 =15

33 Russell’s method 1.For each row and column remaining under consideration determine its u i – the largest c ij still in that row, and its v j -- the largest c ij still in that column. 2. For each variable x ij not previous selected in these rows and columns calculate  ij = c ij - u i - v j. 3.Select the variable x ij with the largest (in absolute terms) negative  ij (ties my be broken randomly).

34 An example for Russell’s Method Step 1: Compute u i ’s and v j ’s for each row and column.

35 An example for Russell’s Method Step 2: For each variable x ij not previous selected in these rows and columns calculate  ij = c ij - u i - v j.  11 = – M = - 6 – M  21 = – M = - 5 – M  31 = 19 - M– M = 19 – 2 M  41 = M - M– M = – M  12 = –19= – 25  22 = – 19 = – 24  32 = 19 - M– 19 = - M  42 = 0 - M– 19= – M - 19  13 = –M= –9 - M  23 = – M = – 6 - M  33 = 20 - M– M = 20 – 2 M  43 = M - M– M = – M  13 = –23= –23  23 = – 23 = – 23  33 = 23 - M– 23 = – M  43 = 0 - M– 23 = – M -23  14 = –M= –5-M  24 = – M = –4-M  34 = M - M– M = – M  44 = 0 - M– M = – 2M

36 An example for Russell’s Method Step 2: For each variable x ij not previous selected in these rows and columns calculate  ij = c ij - u i - v j. Note: v 1 and v 3 changed  11 = –19 = - 25  21 = – 19= - 24  31 = 19 - M– 19 = – M  12 = –19= – 25  22 = – 19 = – 24  32 = 19 - M– 19 = - M  13 = –20= – 29  23 = – 20= –26  33 = 20 - M– 20 = – M  14 = –23= –23  24 = – 23 = – 23  34 = 23 - M– 23 = – M  15 = –M= –5-M  25 = – M = –4-M  35 = M - M– M = – M

37 An example for Russell’s Method Step 2: For each variable x ij not previous selected in these rows and columns calculate  ij = c ij - u i - v j.  11 = –19 = - 25  21 = – 19= - 24  31 = 19 - M– 19 = – M  12 = –19= – 25  22 = – 19 = – 24  32 = 19 - M– 19 = - M  13 = –20= – 29  23 = – 20= –26  33 = 20 - M– 20 = – M  14 = –23= –23  24 = – 23 = – 23  34 = 23 - M– 23 = – M

38 Russell’s method – Interactive Solver

39

40

41

42

43

44

45

46

47

48

49

50

51

52 Initial Basic Feasible Solution

53 Comparison of different methods for finding initial basic feasible solution NW corner rule – very simple to implement and therefore fast. However it doesn’t factor in the costs. The minimum cost method and Vogel’s method take into consideration the costs and they are simple to compute Russell’s method – also takes into consideration the costs and it closely patterns the decision criterion used by the transportation simplex method to pick the entering variable.(*) Nevertheless it is not clear which method performs better on average, which may depend on the particular class of problem (*) In particular  ij = c ij - u i – v j estimate the relative values of c ij - u i – v j

54 Initialization: finding the initial BF solution Optimality test – how do we check if it is the optimal solution? Iteration Transportation simplex method

55 Very similar to the standard simplex method – we check if all the c ij - u i – v j are non-negative. Transportation simplex method Optimality Test Optimality test – A BF solution is optimal iff c ij - u i – v j  0 for every (i,j) such that x ij is non-basic. Note: the c ij - u i – v j correspond to the coefficients in row 0.

56 So what do we have to do? 1.calculate the u i ’s and v j ’s for the current BF solution 2.Use the values obtained in 1 to calculate the c ij - u i – v j for the non-basic variables. Transportation simplex method Optimality Test Optimality test – A BF solution is optimal iff c ij - u i – v j  0 for every (i,j) such that x ij is non-basic. Note: the c ij - u i – v j correspond to the coefficients in row 0.

57 Calculation of the u i ’s and v j ’s for the current BF solution We know that when a variable is basic its corresponding row 0 coefficient is zero  So c ij - u i – v j = 0  c ij = u i – v j for all the basic variables  Given that there are m + n – 1 variables, there are m + n – 1 of these equations  Since the number of unknowns (u i ’s and v j ’s ) is m+n, we can assign an arbitrary value to one of them; a convenient choice is to assign to the u i that has the largest number of allocations the value 0.  It is then very easy to solve the remaining equations.

58 Calculation of the u i ’s and v j ’s for the current BF solution x 31 : 19 = u 3 + v 1 ; set u 3 =0  v 1 = 19; x 32 : 19 = u 3 + v 2 ;  v 2 = 19; x 34 : 19 = u 3 + v 4 ;  v 4 = 23; x 21: 14 = u 2 + v 1 ; v 1 = 19;  u 2 = -5; x 23: 13 = u 2 + v 3 ; u 2 = -5;  v 3 = 18; x 13: 13 = u 1 + v 3 ; v 3 = 18;  u 1 = -5; x 15: 17 = u 1 + v 5 ; u 1 = -5;  v 5 = 22; x 45: 0 = u 4 + v 5 ; v 5 = 22;  u 4 = -22; Now we can compute the c ij - u i – v j for the non-basic variables.

59 x 11 : = 2; x 12 : – 19 = 2; x 14 : – 23 = 4; x 22: –19 = 0; v 1 = 19; x 24: –23 = 1; + v 3 ; x 25: –22 = -2; x 33: 20 –0 –18 = 2; x 41: M + 22 – 19 = M – 3; x 42: – 19 = 3; x 43: M + 22 – 18 = M + 4; x 43: – 23 = -1; Which non-basic variable will enter the basis?Is it optimal? The one with the largest c ij - u i – v j in absolute value

60 Initialization: finding the initial BF solution Optimality test – how do we check if it is the optimal solution? Iteration Transportation simplex method

61 How to Pivot a Transportation Problem 1.Select as the entering variable the variable with the largest (in absolute value) negative c ij - u i – v j value. 2.Select as the leaving variable. Increasing the entering variable from zero sets off a chain reaction of compensating changes in other basic variables. The first variable to be decreased to zero then becomes the leaving basic variable. 1.Find the chain involving the entering variable and some of the basic variables. 2.Counting the cells in the chain, label them alternating as (+) and (–) cells, starting with the entering variable with label (+);

62 3. Find the (-) cells whose variable assumes the smallest value. Call this value . The variable corresponding to this (-) cell will leave the basis. 4. To perform the pivot, decrease the value of each (-) cell by  and increase the value of each + cell by . The variables that are not in the loop remain unchanged. The pivot is now complete. ( If  =0, the entering variable will equal 0, and a - variable that has a current value of 0 will leave the basis. In this case a degenerate bfs existed before and will result after the pivot. If more than one - cell in the loop equals , you may arbitrarily choose one of these odd cells to leave the basis; again a degenerate bfs will result)

63 Illustration of pivoting procedure. We want to find the bfs that would result if x 14 were entered into the basis. Example of the chain Ent. Variable What is the value of the entering variable?

64 New bfs after x 14 is pivoted into basis. Since There is no loop involving the cells (1,1), (1,4), (2,1), (2,2), (3,3) and (3, 4) the new solution is a bfs. After the pivot the new bfs is x 11 =15, x 14 =20, x 21 =30, X 22 =20, X 33 =30 and X 34 =10.

65 Two important points! In the pivoting procedure: 1.Since each row has as many +20s as –20s, the new solution will satisfy each supply and demand constraint. 2.By choosing the smallest (-) variable (X 23 ) to leave the basis, we ensured that all variables will remain nonnegative.

66

67

68

69

70

71

72 The 1 st initial BF solution is degenerate because x 31 =0. But it is not a problem since this cell becomes a (+) cell. Another degenerate solution arises in the 3 rd tableau (two (-) cells tie for the smallest value - 30). We selected (2,1) to be the leaving variable; if we selected (3,4), (2,1) would become the degenerate basic variable. Cell (3,4) is a (-) cell but at the level 0. So the entering variable has the value 0. Because none of the cij - ui – vj is negative in the 4th tableau, it means that the 3rd tableau is also optimal.


Download ppt "Computational Methods for Management and Economics Carla Gomes Module 8b The transportation simplex method."

Similar presentations


Ads by Google