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

Slides:



Advertisements
Similar presentations
The simplex algorithm The simplex algorithm is the classical method for solving linear programs. Its running time is not polynomial in the worst case.
Advertisements

Chapter 5: Linear Programming: The Simplex Method
Operation Research Chapter 3 Simplex Method.
Transportation Problem (TP) and Assignment Problem (AP)
Transportation and Assignment Models
Chapter 6 Linear Programming: The Simplex Method
ITGD4207 Operations Research
Dr. Sana’a Wafa Al-Sayegh
Copyright (c) 2003 Brooks/Cole, a division of Thomson Learning, Inc
Computational Methods for Management and Economics Carla Gomes Module 6a Introduction to Simplex (Textbook – Hillier and Lieberman)
Introduction to Operations Research
1 Transportation Problems Transportation is considered as a “special case” of LP Reasons? –it can be formulated using LP technique so is its solution (to.
Computational Methods for Management and Economics Carla Gomes Module 6b Simplex Pitfalls (Textbook – Hillier and Lieberman)
The Simplex Method: Standard Maximization Problems
Operation Research Chapter 3 Simplex Method.
The Transportation and Assignment Problems
Presentation: H. Sarper
Solving Linear Programs: The Simplex Method
Linear Programming (LP)
Transportation-1 Operations Research Modeling Toolset Linear Programming Network Programming PERT/ CPM Dynamic Programming Integer Programming Nonlinear.
Chapter 7 Transportation, Assignment & Transshipment Problems Part 1 ISE204/IE252 Prof. Dr. Arslan M. ÖRNEK.
Water Resources Development and Management Optimization (Linear Programming) CVEN 5393 Feb 25, 2013.
Transportation Model Lecture 16 Dr. Arshad Zaheer
LINEAR PROGRAMMING SIMPLEX METHOD.
Chapter 3 Linear Programming Methods 高等作業研究 高等作業研究 ( 一 ) Chapter 3 Linear Programming Methods (II)
Transportation Problem
Chapter 6 Linear Programming: The Simplex Method
8. Linear Programming (Simplex Method) Objectives: 1.Simplex Method- Standard Maximum problem 2. (i) Greedy Rule (ii) Ratio Test (iii) Pivot Operation.
Transportation Problem
Chapter 6 Linear Programming: The Simplex Method Section 2 The Simplex Method: Maximization with Problem Constraints of the Form ≤
Topic III The Simplex Method Setting up the Method Tabular Form Chapter(s): 4.
Barnett/Ziegler/Byleen Finite Mathematics 11e1 Learning Objectives for Section 6.4 The student will be able to set up and solve linear programming problems.
1 1 Slide © 2000 South-Western College Publishing/ITP Slides Prepared by JOHN LOUCKS.
Chapter 7 Transportation, Assignment & Transshipment Problems
Kerimcan OzcanMNGT 379 Operations Research1 Linear Programming: The Simplex Method Chapter 5.
1 1 © 2003 Thomson  /South-Western Slide Slides Prepared by JOHN S. LOUCKS St. Edward’s University.
1 1 © 2003 Thomson  /South-Western Slide Slides Prepared by JOHN S. LOUCKS St. Edward’s University.
Public Policy Modeling Simplex Method Tuesday, October 13, 2015 Hun Myoung Park, Ph.D. Public Management & Policy Analysis Program Graduate School of International.
Solving Linear Programming Problems: The Simplex Method
. 1 Transportation and Assignment Problems. . 2 Applications Physical analog of nodes Physical analog of arcs Flow Communication systems phone exchanges,
Linear Programming Erasmus Mobility Program (24Apr2012) Pollack Mihály Engineering Faculty (PMMK) University of Pécs João Miranda
1 1 Slide © 2005 Thomson/South-Western Linear Programming: The Simplex Method n An Overview of the Simplex Method n Standard Form n Tableau Form n Setting.
Chapter 4 Linear Programming: The Simplex Method
Chapter 6 Linear Programming: The Simplex Method Section 4 Maximization and Minimization with Problem Constraints.
1 Network Models Transportation Problem (TP) Distributing any commodity from any group of supply centers, called sources, to any group of receiving.
OR Chapter 8. General LP Problems Converting other forms to general LP problem : min c’x  - max (-c)’x   = by adding a nonnegative slack variable.
University of Colorado at Boulder Yicheng Wang, Phone: , Optimization Techniques for Civil and Environmental Engineering.
Simplex Method for solving LP problems with two variables.
An-Najah N. University Faculty of Engineering and Information Technology Department of Management Information systems Operations Research and Applications.
Simplex Method Simplex: a linear-programming algorithm that can solve problems having more than two decision variables. The simplex technique involves.
Business Mathematics MTH-367 Lecture 16. Chapter 11 The Simplex and Computer Solutions Methods continued.
Copyright © 2006 Brooks/Cole, a division of Thomson Learning, Inc. Linear Programming: An Algebraic Approach 4 The Simplex Method with Standard Maximization.
The Transportation Problem Simplex Method Remember our initial transportation problem with the associated cost to send a unit from the factory to each.
Decision Support Systems INF421 & IS Simplex: a linear-programming algorithm that can solve problems having more than two decision variables.
The Simplex Method. and Maximize Subject to From a geometric viewpoint : CPF solutions (Corner-Point Feasible) : Corner-point infeasible solutions 0.
The Transportation and Assignment Problems
Perturbation method, lexicographic method
ENGM 631 Optimization Transportation Problems.
Chapter 4 Linear Programming: The Simplex Method
Chapter 7 Transportation, Assignment & Transshipment Problems
Transportation Problems
Chapter 8. General LP Problems
Chapter 5 Transportation, Assignment, and Transshipment Problems
Chapter 8. General LP Problems
Chapter 8. General LP Problems
Transportation and Assignment Problems
Presentation transcript:

Computational Methods for Management and Economics Carla 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.

The transportation problem

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

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

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

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!

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!

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

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

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.

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

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

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

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: x 11 =3, x 12 =2, x 22 =3, x 23 =2, x 24 =1, x 34 =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 (X ij ). Then assign X ij its largest possible value, which is the minimum of s i and d j

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 Method Step 1: Select the cell with minimum cost.

Step 2: Cross-out column 2

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: X 11 =5, X 21 =2, X 22 =8, X 31 =5, X 33 =4 and X 34 =6

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.

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

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 X 11 =0, X 12 =5, X 13 =5, and X 21 =15

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

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

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

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

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

Russell’s method – Interactive Solver

Initial Basic Feasible Solution

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

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

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.

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.

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.

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.

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

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

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 (+);

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)

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?

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.

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.

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.