# Chapter 2B Linear Programming: Transportation Problem J. Loucks, St. Edward's University (Austin, TX, USA)

## Presentation on theme: "Chapter 2B Linear Programming: Transportation Problem J. Loucks, St. Edward's University (Austin, TX, USA)"— Presentation transcript:

Chapter 2B Linear Programming: Transportation Problem J. Loucks, St. Edward's University (Austin, TX, USA)

Transportation Problem
A network model is one which can be represented by a set of nodes, a set of arcs, and functions (e.g. costs, supplies, demands, etc.) associated with the arcs and/or nodes. Transportation problem (TP), as well as many other problems, are all examples of network problems. Efficient solution algorithms exist to solve network problems.

Transportation Problem
TP can be formulated as linear programs and solved by general purpose linear programming codes. For the TP, if the right-hand side of the linear programming formulations are all integers, the optimal solution will be in terms of integer values for the decision variables. However, there are many computer packages, which contain separate computer codes for the TP which take advantage of its network structure.

Transportation Problem
The TP problem has the following characteristics: m sources and n destinations number of variables is m x n number of constraints is m + n (constraints are for source capacity and destination demand) costs appear only in objective function (objective is to minimize total cost of shipping) coefficients of decision variables in the constraints are either 0 or 1

Transportation Problem
The transportation problem seeks to minimize the total shipping costs of transporting goods from m origins (each with a supply si) to n destinations (each with a demand dj), when the unit shipping cost from an origin, i, to a destination, j, is cij. The network representation for a transportation problem with two sources and three destinations is given on the next slide.

Transportation Problem
Network Representation 1 d1 c11 1 s1 c12 c13 2 d2 c21 c22 2 s2 c23 3 d3 SOURCES DESTINATIONS

The Relationship of TP to LP
TP is a special case of LP How do we formulate TP as an LP? Let xij = quantity of product shipped from source i to destination j Let cij = per unit shipping cost from source i to destination j Let si be the row i total supply Let dj be the column j total demand The LP formulation of the TP problem is:

The Relationship of TP to LP
LP Formulation The linear programming formulation in terms of the amounts shipped from the origins to the destinations, xij, can be written as: Min SScijxij i j s.t. Sxij < si for each origin i j Sxij > dj for each destination j i xij > 0 for all i and j

Transportation Problem
LP Formulation Special Cases The following special-case modifications to the linear programming formulation can be made: Minimum shipping guarantees from i to j: xij > Lij Maximum route capacity from i to j: xij < Lij Unacceptable routes: delete the variable (or put a very high cost, called the Big-M method, on a selected pair of i and j)

Transportation Problem
To solve the transportation problem by its special purpose algorithm, it is required that the sum of the supplies at the origins equal the sum of the demands at the destinations. If the total supply is greater than the total demand, a dummy destination is added with demand equal to the excess supply, and shipping costs from all origins are zero. Similarly, if total supply is less than total demand, a dummy origin is added. When solving a transportation problem by its special purpose algorithm, unacceptable shipping routes are given a cost of +M (a large number).

Transportation Problem
The transportation problem is solved in two phases: Phase I — Obtaining an initial feasible solution Phase II — Moving toward optimality In Phase I, the Minimum-Cost Procedure can be used to establish an initial basic feasible solution without doing numerous iterations of the simplex method. In Phase II, the Stepping Stone Method, using the MODI method for evaluating the reduced costs may be used to move from the initial feasible solution to the optimal one.

Transportation Algorithm
Phase I - Minimum-Cost Method (simple and intuitive) Step 1: Select the cell with the least cost. Assign to this cell the minimum of its remaining row supply or remaining column demand. Step 2: Decrease the row and column availabilities by this amount and remove from consideration all other cells in the row or column with zero availability/demand. (If both are simultaneously reduced to 0, assign an allocation of 0 to any other unoccupied cell in the row or column before deleting both.) GO TO STEP 1.

Transportation Algorithm
Phase II - Stepping Stone Method Step 1: For each unoccupied cell, calculate the reduced cost by the MODI method described below. Select the unoccupied cell with the most negative reduced cost. (For maximization problems select the unoccupied cell with the largest reduced cost.) If none, STOP. Step 2: For this unoccupied cell generate a stepping stone path by forming a closed loop with this cell and occupied cells by drawing connecting alternating horizontal and vertical lines between them. Determine the minimum allocation where a subtraction is to be made along this path.

Transportation Algorithm
Phase II - Stepping Stone Method (continued) Step 3: Add this allocation to all cells where additions are to be made, and subtract this allocation to all cells where subtractions are to be made along the stepping stone path. (Note: An occupied cell on the stepping stone path now becomes 0 (unoccupied). If more than one cell becomes 0, make only one unoccupied; make the others occupied with 0's.) GO TO STEP 1.

Transportation Algorithm
MODI Method (for obtaining reduced costs) Associate a number, ui, with each row and vj with each column. Step 1: Set u1 = 0. Step 2: Calculate the remaining ui's and vj's by solving the relationship cij = ui + vj for occupied cells. Step 3: For unoccupied cells (i,j), the reduced cost = cij - ui - vj.

Example 1: TP A transportation tableau is given below. Each cell represents a shipping route (which is an arc on the network and a decision variable in the LP formulation), and the unit shipping costs are given in an upper right hand box in the cell. Supply 30 50 35 20 40 Demand 10 45 25 S1 S2 D3 D2 D1 15

Example 1: TP Building Brick Company (BBC) has orders for 80 tons of bricks at three suburban locations as follows: Northwood — 25 tons, Westwood — 45 tons, and Eastwood — 10 tons. BBC has two plants, each of which can produce 50 tons per week. How should end of week shipments be made to fill the above orders given the following delivery cost per ton: Northwood Westwood Eastwood Plant Plant

Example 1: TP Initial Transportation Tableau
Since total supply = 100 and total demand = 80, a dummy destination is created with demand of 20 and 0 unit costs. 42 40 30 Demand Supply 50 20 10 45 25 Dummy Plant 1 Plant 2 Eastwood Westwood Northwood 24

Example 1: TP Least Cost Starting Procedure
Iteration 1: Tie for least cost (0), arbitrarily select x14. Allocate 20. Reduce s1 by 20 to 30 and delete the Dummy column. Iteration 2: Of the remaining cells the least cost is 24 for x11. Allocate 25. Reduce s1 by 25 to 5 and eliminate the Northwood column. Iteration 3: Of the remaining cells the least cost is 30 for x12. Allocate 5. Reduce the Westwood column to 40 and eliminate the Plant 1 row. Iteration 4: Since there is only one row with two cells left, make the final allocations of 40 and 10 to x22 and x23, respectively.

Example 1: TP Iteration 1 MODI Method 1. Set u1 = 0
2. Since u1 + vj = c1j for occupied cells in row 1, then v1 = 24, v2 = 30, v4 = 0. 3. Since ui + v2 = ci2 for occupied cells in column 2, then u = 40, hence u2 = 10. 4. Since u2 + vj = c2j for occupied cells in row 2, then 10 + v3 = 42, hence v3 = 32.

Example 1: TP Iteration 1 MODI Method (continued)
Calculate the reduced costs (circled numbers on the next slide) by cij - ui + vj. Unoccupied Cell Reduced Cost (1,3) = 8 (2,1) = -4 (2,4) = -10

Example 1: TP Iteration 1 Tableau 25 5 -4 +8 20 40 10 -10 vj ui 32 24
42 30 vj ui 32 24 Dummy Plant 1 Plant 2 Eastwood Westwood Northwood

Example 1: TP Iteration 1 Stepping Stone Method
The stepping stone path for cell (2,4) is (2,4), (1,4), (1,2), (2,2). The allocations in the subtraction cells are 20 and 40, respectively. The minimum is 20, and hence reallocate 20 along this path. Thus for the next tableau: x24 = = 20 (0 is its current allocation) x14 = = 0 (blank for the next tableau) x12 = = 25 x22 = = 20 The other occupied cells remain the same.

Example 1: TP Iteration 2 MODI Method
The reduced costs are found by calculating the ui's and vj's for this tableau. 1. Set u1 = 0. 2. Since u1 + vj = cij for occupied cells in row 1, then v1 = 24, v2 = 30. 3. Since ui + v2 = ci2 for occupied cells in column 2, then u = 40, or u2 = 10. 4. Since u2 + vj = c2j for occupied cells in row 2, then 10 + v3 = 42 or v3 = 32; and, 10 + v4 = 0 or v4 = -10.

Example 1: TP Iteration 2 MODI Method (continued)
Calculate the reduced costs (circled numbers on the next slide) by cij - ui + vj. Unoccupied Cell Reduced Cost (1,3) = 8 (1,4) (-10) = 10 (2,1) = -4

Example 1: TP Iteration 2 Tableau 25 -4 +8 +10 20 10 vj ui -6 36 24
42 40 30 vj ui -6 36 24 Dummy Plant 1 Plant 2 Eastwood Westwood Northwood

Example 1: TP Iteration 2 Stepping Stone Method
The most negative reduced cost is = -4 determined by x21. The stepping stone path for this cell is (2,1),(1,1),(1,2),(2,2). The allocations in the subtraction cells are 25 and 20 respectively. Thus the new solution is obtained by reallocating 20 on the stepping stone path. Thus for the next tableau: x21 = = 20 (0 is its current allocation) x11 = = 5 x12 = = 45 x22 = = 0 (blank for the next tableau) The other occupied cells remain the same.

Example 1: TP Iteration 3 MODI Method
The reduced costs are found by calculating the ui's and vj's for this tableau. 1. Set u1 = 0 2. Since u1 + vj = c1j for occupied cells in row 1, then v1 = 24 and v2 = 30. 3. Since ui + v1 = ci1 for occupied cells in column 2, then u = 30 or u2 = 6. 4. Since u2 + vj = c2j for occupied cells in row 2, then 6 + v3 = 42 or v3 = 36, and 6 + v4 = 0 or v4 = -6.

Example 1: TP Iteration 3 MODI Method (continued)
Calculate the reduced costs (circled numbers on the next slide) by cij - ui + vj. Unoccupied Cell Reduced Cost (1,3) = 4 (1,4) (-6) = 6 (2,2) = 4

Example 1: TP Iteration 3 Tableau
Since all the reduced costs are non-negative, this is the optimal tableau. 5 45 20 +4 +6 10 42 40 30 vj ui 6 -6 36 24 Dummy Plant 1 Plant 2 Eastwood Westwood Northwood

Example 1: TP Optimal Solution From To Amount Cost
Plant 1 Northwood Plant 1 Westwood ,350 Plant 2 Northwood Plant 2 Eastwood Total Cost = \$2,490

Example 2: TP Des Moines (100 units capacity) Cleveland (200 units
Req.) Boston (200 units req.) Albuquerque (300 units Req.) Evansville (300 units capacity) Fort Lauderdale (300 units capacity)

Example 2: TP

Example 2: TP

Example 2: TP What is the initial solution?
Since we want to minimize the cost, it is reasonable to “be greedy” and start at the cheapest cell (\$3/unit) while shipping as much as possible. This method of getting the initial feasible solution is called the least-cost rule Any ties are broken arbitrarily. (Des Moines to Cleveland - \$3) (Evansville to Cleveland - \$3) Let’s start ad cell 1-3 (Des Moines to Cleveland) In making the flow assignments make sure not to exceed the capacities and demands on the margins!

Example 2: TP Start +100 100

Example 2: TP +100 200 100

Example 2: TP +100 200 100

Example 2: TP +100 +300 200 100

Example 2: TP The initial feasible solution via the least-cost rule is: Ship 100 units from Des Moines to Cleveland Ship 100 units from Evansville to Cleveland Ship 200 units from Evansville to Boston Ship 300 units from Fort Lauderdale to Albuquerque The total cost of this solution is: 100(3) + 100(3) + 200(4) + 300(9) = \$4,100 Is the current solution optimal? Perhaps, but we are not sure. Hence, some more work is needed.

Example 2: TP The cells that have a number in them are referred to as basic cells (or basic variables) In general, all basic variables are strictly positive When at least one basic variable is equal to zero, the corresponding solution is called degenerate When a solution is degenerate, exercise caution in using sensitivity reports

Example 2: TP How many basic variables (cells) should there be in the transportation tableau? Answer: (R+C-1), where R = number of rows and C = number of columns. Here, (R+C-1) = = 5 What are they (there are 4 of them)? Ship 100 units from Des Moines to Cleveland Ship 100 units from Evansville to Cleveland Ship 200 units from Evansville to Boston Ship 300 units from Fort Lauderdale to Albuquerque

Example 2: TP Is this solution degenerate?
Answer: Yes, because (R+C-1) = = 5 > 4 Hence, we can arbitrarily make (5-4) = 1 variable which is at level zero basic. Let us make Des Moines to Albuquerque a basic variable at level zero How do we determine if the current solution is optimal? Let us price currently nonbasic variables (cells), which are all at level zero using the stepping stone algorithm

Example 2: TP +300

Example 2: TP Evansville – Albuquerque: 8 – – 5 = 3 > 0

Example 2: TP +300

Example 2: TP Des Moines - Boston: 4 – = 0

Example 2: TP +300

Example 2: TP Fort Lauderdale - Boston:
7 – – 4 = -1 < 0

Example 2: TP +300

Example 2: TP Fort Lauderdale - Cleveland: 5 – = -2 < 0

Example 1: TP The objective function improvement potentials for the nonbasic variables are: Evansville – Albuquerque: 3 > 0 Des Moines - Boston: 0 = 0 Fort Lauderdale - Boston: -1 < 0 Fort Lauderdale - Cleveland: -2 < 0 The largest improvement (here: reduction in cost) in the objective function can be achieved by increasing shipments from Fort Lauderdale to Cleveland What i2 the limit on the increase?

Example 2 TP 0 +K K +300 -K K

Example 2: TP If we increase shipments from Fort Lauderdale to Cleveland by K, we must reduce shipments in the basic cells in the same row and column so that the totals on the margins remain the same Clearly, because negative quantities cannot be shipped, we must impose that: K >= 0 (no problem) 300 – K >= 0 (K <= 300) 0 + K >= 0 (no problem) 100 – K >=0 (K <=100) Hence, let K = 100 The new basis becomes:

Example 2: TP +100

Example 2: TP Observe that the number of basic variables (cells) is equal to (R+C-1) = 5. Hence, the current basic solution is feasible and not degenerate Also observe that Des Moines – Cleveland left the basis while Fort Lauderdale – Cleveland entered the basis (one for one interchange) Is the current solution optimal? Let us price the non-basic variables (cells):

Example 2: TP +100

Example 2: TP Evansville - Albuquerque: 8 – – 9 = 1 > 0

Example 2: TP +100

Example 2: TP Des Moines - Boston: 4 – – – 4 = 2 > 0

Example 2: TP +100

Example 2: TP Fort Lauderdale - Boston: 7 – = 1 > 0

Example 2: TP +100

Example 2: TP Des Moines - Cleveland: 3 – = 2 > 0

Example 2: TP The objective function improvement potentials for the nonbasic variables are: Evansville - Albuquerque: 1 > 0 Des Moines - Boston: 2 > 0 Fort Lauderdale - Boston: 1 > 0 Des Moines - Cleveland: 2 > 0 Since all improvement potentials are positive, it is not possible to achieve further improvement (here: reduction in cost) in the objective function Hence, the current solution is optimal

Example 2: TP The final optimal (and not degenerate) solution is:
Ship 100 units from Des Moines to Albuquerque Ship 200 units from Fort Lauderdale to Albuquerque Ship 200 units from Evansville to Boston Ship 100 units from Evansville to Cleveland Ship 100 units from Fort Lauderdale to Cleveland The total cost of this solution is: 100(5) + 200(9) + 200(4) + 100(3) + 100(5)= \$3,900

Example 2: TP via LP In our example the LP formulation is:
Min z = 5 x11 + 4x12 + 3x x21 + 4x22 + 3x x31 + 7x32 + 5x33 s.t. x11 + x12 + x13 <= 100 (row 1) x21 + x22 + x23 <= 300 (row 2) x31 + x32 + x33 <= 300 (row 3) x11 + x21 + x31 >= 300 (column 1) x12 + x22 + x32 >= 200 (column 2) x31 + x32 + x33 >= 200 (column 3) xij >= 0 for i = 1, 2, 3 and j = 1, 2, 3 (nonnegativity)

Example 2: TP via LP The solver formulation and solution is:

Example 2: TP via LP The solver answer report is:

Example 2: TP via LP The solver sensitivity report is:

Example 2: TP via LP The solver limits report is:

Example 3: Tropicsun (TP via LP)
Tropicsun is a grower of oranges with locations in the cities of Mt. Dora, Eustis and Clermont. Tropicsun currently has 275,000 bushels of citrus at the grove in Mt. Dora; 400,000 bushels in Eustis; and 300,000 bushels in Clermont. The citrus processing plants are located in Ocala (capacity of 200,000 bushels), Orlando (600,000 bushels) and Leesburg (225,000 bushels). Tropicsun contracts with a trucking company to transport its fruit, which charges a flat rate for every mile that each bushel of fruit must be transported. Observe that the problem is not balanced, since the total of the fruit supplies (275, , ,000 = 975,000) is not equal to the total of the capacities (200, , ,000 = 1,025,000). The difference of 50,000 bushels will be assigned to a dummy source, which represents unutilized capacity. The distances (in miles) between the groves and processing plants are as follows:

Example 3: Tropicsun (TP via LP)
Distances (in miles) between groves and plants Grove Ocala Orlando Leesburg Mt. Dora Eustis Clermont

Example 3: TP via LP : Tropicsun
Processing Groves Plants Distances (in miles) Supply Capacity 21 Mt. Dora Ocala 200,000 275,000 1 50 4 40 35 Eustis 30 Orlando 400,000 600,000 2 5 22 55 Clermont 20 Leesburg 300,000 225,000 3 6 25

Example 3: Defining the Decision Variables
Xij = # of bushels shipped from node i to node j Specifically, the nine decision variables are: X14 = # of bushels shipped from Mt. Dora (node 1) to Ocala (node 4) X15 = # of bushels shipped from Mt. Dora (node 1) to Orlando (node 5) X16 = # of bushels shipped from Mt. Dora (node 1) to Leesburg (node 6) X24 = # of bushels shipped from Eustis (node 2) to Ocala (node 4) X25 = # of bushels shipped from Eustis (node 2) to Orlando (node 5) X26 = # of bushels shipped from Eustis (node 2) to Leesburg (node 6) X34 = # of bushels shipped from Clermont (node 3) to Ocala (node 4) X35 = # of bushels shipped from Clermont (node 3) to Orlando (node 5) X36 = # of bushels shipped from Clermont (node 3) to Leesburg (node 6)

Example 3: Defining the Objective Function
Minimize the total number of bushel-miles. MIN: 21X X X16 + 35X X X26 + 55X X X36

Example 3: Defining the Constraints
Capacity constraints X14 + X24 + X34 <= 200,000 } Ocala X15 + X25 + X35 <= 600,000 } Orlando X16 + X26 + X36 <= 225,000 } Leesburg Supply constraints X14 + X15 + X16 = 275,000 } Mt. Dora X24 + X25 + X26 = 400,000 } Eustis X34 + X35 + X36 = 300,000 } Clermont Nonnegativity conditions Xij >= 0 for all i and j

Example 3: Solver Formulation

Example 3: Solver Solution

Example 4: The Sentry Lock Corporation

Example 4: Solver Formulation

The End of Chapter 2B

Download ppt "Chapter 2B Linear Programming: Transportation Problem J. Loucks, St. Edward's University (Austin, TX, USA)"

Similar presentations