Chapter 6
Chapter 6
Transportation Problem
Lecture Objectives
At the end of the lecture, each student should be able to:
• Given a situation, identify when the transportation algorithm can be applied
• Understand the basics of the transportation algorithm
• Generate a basic feasible solution for the transportation problem
The Transportation Problem
The transportation problem is a special case of an LP problem
Because of its characteristics, the transportation problem can be solved very
efficiently with a special algorithm called the transportation algorithm
The problem is concerned with specifying how to disposition a single product from
several sources to several destinations at minimum cost
m Sources n Destinations
C11: X11
a1 b1
a2 b2
Demand required
from by
Supply Capacity destination n
from source m
am bn
Cmn: Xmn
Number of units
Cost to send a unit to send from n to
from m to n m
Car-Distribution Problem (from
Taha)
The MG Auto Company has plants in LA, Detroit, and New Orleans. Its major distribution centers are
located in Denver and Miami. The capacities of the three plants during the next quarter are: 1000,
1500, and 1200 cars. The quarterly demands at the two distribution centers are 2300 and 1400 cars.
The cost of shipping in $’s per car is given by:
Denver Miami
Los Angeles 80 215
Detroit 100 108
New Orleans 102 68
Find the best strategy to send cars from the plants to the distribution centers.
Model of the Car Distribution
Problem
Example: The car distribution problem
Subject to: n
X
j 1
ij ai , i 1,2, , m
m
X
i 1
ij b j , j 1,2, , n
X ij 0
Transportation Tableau
Usually, it is not necessary to explicitly build the LP model of the
transportation problem. Instead, we usually represent the
Deci transportation problem by usingMarkets
M1
a transportation
(Destinations) tableau
M2 M3 M4
sion S1 X11
C11
X12
C12
X13
C13
X14
C14
a1
Sources
Varia S2 X21
C21
X22
C22
X23
C23
X24
C24
a2
ble
S3 X31 X32 X33
Number
X 34 a3
C31
Cost C32 C33 C 34
Number b1 b2 b3
of b 4
for
of units availabl
sending
required e units
a unit
in to ship
from 3
destinati from
Transportation Tableau Example
Markets (Destinations) Supply
Example: Car Distribution Matrix
Denver Miami
P L.A. X11 X12 1000
l 80 215
a Detroit X21 X22 1500
n 100 108
t New Orl. X31 X32 1200
102 68
Demand 2300 1400
Leas TC=313,200
t
Cost
Example 2 of LCR
Using the LC Rule, make the initial assignment for the following
Transportation Problem Demand
Source A B C D
1 X11 X12 X13 X14 15
10 15 2 20 0 11 0
2 X21 X22 X23 X24 25
12 7 15 9 10 20 10 0
3 X31 X32 X33 X34 10
5 4 Le
14 16 5 18 5 0
Le 5 0 0 15
ast
15 0 15 10 0
Le Le
Le ast Co
ast ast
Le
ast Co st
Co Co
ast
Co st
st st
Co
st
Example 2 of LCR (cont.)
Demand
Source A B C D
1 X11 X12 X13 X14 15
10 15 2 20 0 11
2 X21 X22 X23 X24 25
12 7 15 9 10 20
3 X31 X32 X33 X34 10
5 4 14 16 5 18
5 15 15 15
the starting basic solution are:
X12=15; X14=0;
X23=15; X24=10;
X31= 5 X23=5
the association cost is
z= 15* 2 + 0*11+ 15*9+10*20+ 5*4 + 5*18 = $475
Vogel's Approximation Method
(VAM)
This method recognizes that it may be wise to make a small sacrifice
for a bigger gain. It computes a penalty for each row and column if the
lowest cost cell is not selected. That is, it figures out what it would cost
to take the second best cost.
The penalty is the cost difference between the lowest cost cell and next
lowest cost value in each row and column.
We select the cell associated with the largest penalty to assign units to,
and proceed essentially like the LCR. We will have to recalculate
some of the penalties on each iteration.
Vogel's Approximation Method
(VAM)
Step 1: Determine the difference between the lowest two cells in all
rows and columns, including dummies.
Step 2: Identify the row or column with the largest difference. Ties may
be broken arbitrarily.
Step 3: Allocate as much as possible to the lowest-cost cell in the row
or column with the highest difference. If two or more differences are
equal, allocate as much as possible to the lowest-cost cell in these
rows or columns.
Step 4: Stop the process if all row and column requirements are met. If
not, go to the next step.
Step 5: Recalculate the differences between the two lowest cells
remaining in all rows and columns. Any row and column with zero
supply or demand should not be used in calculating further differences.
Then go to Step 2.
When this assignment is
made, we deplete both the
VAM column and the row;
however, we eliminate just
Demand Penalty
Source A B Cone. In Dthis case,
Avail we
1 15 arbitrarily eliminate
15
0
10the row
High
10 0 20 11
2 0 0 15 10 25 2 5 est
12 7 9 20 10
3 5 5 14
Pena
0 14 16 18 0
lty
Demand 50 15 0 15 0 10 0
When this assignment is
10 7 7 7
2 made, we deplete 11 both the
9
column and the row; Highest
however, we eliminate just Penalty
one. In this case, we .
VAM Final Solution
Demand
Source A B C D Avail
1 15 15
10 0 20 11
2 0 0 15 10 25
12 7 9 20
3 5 5
0 14 16 18
Demand 5 15 15 10
TC = 335
Example 2 of VAM High
Demand Penalty est
High
Source A B C D Avail
Pena
est
1 15 0 15 8 9
High
10 2 20 11 0
lty
2 25 2 11 estPena
15 10
12 7 9 20 10
Penalty
3 5 10 5 10 2
5 4 14 16 18 0 lty
Demand 5 0
15 0 15 0 10 15
6 5 7 7
City Dum
Reservoir A B C D E (Dummy)
1 X11 X12 X13 X14 X15 15 my
2 3 4 5 0
2 X21
3
X22
2
X23
5
X24
2
X25
0
20 Destin
3 X31
4
X32
1
X33
2
X34
3
X35
0
25
ation
Demand 8 10 12 15 15
Added
Tutorial
Iterative computation of the
transportation algorithms
After determining the starting solution; use the following algorithms to
determine the optimum solution
Step1 : use the simplex optimality condition to determine the Entering Variables
as the current nonbsic variable that can improve the solution. If the optimality
condition is satisfied, stop. Otherwise, go to step 2
Step 2: determine the Leaving variables using the simplex feasibility condition.
Change the basis, and return to step 1.
The optimality and feasibility do not involve the row operational that
used in simplex method. Instead, the special structure of transportation
allow simpler computation
Iterative computation of the
transportation algorithms
In the method of multiplier, associate the multipliers ui and vj with row i and
column j of the transportation tubule.
To solve these equation, the method of multipliers call for arbitrarily setting
any ui=0, and then solving for the remaining variables
Example
By using the NW corner rule, the starting basic solution are:
Demand
Source A B C D
1 X11 5 X12 10 X13 X14 15
10 2 20 11
2 X21 X22 5 X23 15 X24 5 25
12 7 9 20
3 X31 X32 X33 X34 10 10
4 14 16 18
5 15 15 15
Example
Demand
Source A B C D
1 X11 5 X12 10 X13 X14 15
10 2 20 11
2 X21 X22 5 X23 15 X24 5 25
12 7 9 20
3 X31 X32 X33 X34 10 10
4 14 16 18
5 15 15 15
Source
Ui+
A
vj – cij,B for each nonbasic
Demand
C
xij
D
1 X11 5 X12 10 X13 X14 15
10 2 20 11
2 X21 X22 5 X23 15 X24 5 25
12 7 9 20
3 X31 X32 X33 X34 10 10
4 14 16 18
5 15 15 15
Z 0 0 -16 4 3 0 0 0 9 -9 -9 0
Z 0 0 -16 4 3 0 0 0 9 -9 -9 0
Example
Construct closed loop that start and end at EV;
The loop consist of connected horizontal and vertical segments only.
Except EV, each corner must coincide with basic variable.
It must alternate between subtracting and adding (an addition to one cell in the
loop is followed by a subtraction from the next cell in the loop)
Demand
Source A B C D
1 X11 - 5 X12 10 X13 X14 15
10 + 2 20 11
2 X21 X22 5 X23 15 X24 5 25
12 - 7 9 + 20
3 X31 + X32 X33 X34 10 10
4 14 16 - 18
5 15 15 15
Z -9 0 -16 4 -6 0 0 0 0 -9 -9 0
closed loop
Demand
Source A B C D If we add 10 unit to X14, it
1 X11 X12 15 X13 X14 15 must subtract a 10 unit from
10 - 2 20
+ 11
2 X21 X22 0 X23 15 X24 - 10 25 X24 (leaving 0); add it back
12 + 7 9 20 to X22 (giving 10), and
3 X31 5 X32 X33 X34 5 10
4 14 16 18 subtract it from X12
5 15 15 15 (leaving 5; this saves (10)
($4)= $45.
Min cijxij
ij
s.t. xij = 1 for each worker i
j
xij = 1 for each job j
i
xij = 0 or 1 for all i and j.
– Note: A modification to the right-hand side of the first constraint set can be made if a
worker is permitted to work more than 1 job.
Hungarian Method
• The Hungarian method solves minimization assignment
problems with m workers and m jobs.
• Special considerations can include:
– number of workers does not equal the number of jobs -- add dummy
workers or jobs with 0 assignment costs as needed
– worker i cannot do job j -- assign cij = +M
– maximization objective -- create an opportunity loss matrix
subtracting all profits for each job from the maximum profit for that job
before beginning the Hungarian method
• Step 1: For each row, subtract the minimum number in that row from all
numbers in that row.
• Step 2: For each column, subtract the minimum number in that column
from all numbers in that column.
• Step 3: Draw the minimum number of lines to cover all zeroes. If this
number = m, STOP -- an assignment can be made.
• Step 4: Determine the minimum uncovered number (call it d).
– Subtract d from uncovered numbers.
– Add d to numbers covered by two lines.
– Numbers covered by one line remain the same.
– Then, GO TO STEP 3.
• Finding the Minimum Number of Lines and Determining the
Optimal Solution
– Step 1: Find a row or column with only one unlined zero and circle it.
(If all rows/columns have two or more unlined zeroes choose an
arbitrary zero.)
– Step 2: If the circle is in a row with one zero, draw a line through its
column. If the circle is in a column with one zero, draw a line through
its row. One approach, when all rows and columns have two or more
zeroes, is to draw a line through one with the most zeroes, breaking
ties arbitrarily.
– Step 3: Repeat step 2 until all circles are lined. If this minimum
number of lines equals m, the circles provide the optimal assignment.
Example: Hungry Owner
A contractor pays his subcontractors a fixed fee plus mileage for work
performed. On a given day the contractor is faced with three electrical jobs
associated with various projects. Given below are the distances between the
subcontractors and the projects.
Projects
A B C
Westside 50 36 16
Subcontractors Federated 28 30 18
Goliath 35 32 20
Universal 25 25 14
How should the contractors be assigned to minimize total costs?
• Initial Tableau Setup
Since the Hungarian algorithm requires that
there be the same number of rows as columns, add
a Dummy column so that the first tableau is:
A B C Dummy
Westside 50 36 16
0
Federated 28 30 18 0
• Step 1: Subtract minimum number in each row from all numbers in that
row. Since each row has a zero, we would simply generate the same
matrix above.
• Step 2: Subtract the minimum number in each column from all numbers in
the column. For A it is 25, for B it is 25, for C it is 14, for Dummy it is 0.
This yields:
A B C Dummy
Westside 25 11 2 0
Federated 3 5 4 0
Goliath 10 7 6 0
Universal 0 0 0 0