Download as pdf or txt
Download as pdf or txt
You are on page 1of 62

Transportation and Assignment Problems

Based on
Chapter 7
Introduction to Mathematical Programming: Operations Research, Volume 1
4th edition, by Wayne L. Winston and Munirpallam Venkataramanan

Lewis Ntaimo

1
L. Ntaimo (c) 2005 INEN420 TAMU
7.1Transportation Problems

1. Example formulation
2. General formulation
3. Balancing a transportation problem
4. Finding a basic feasible solution
5. The transportation simplex algorithm

2
L. Ntaimo (c) 2005 INEN420 TAMU
7.1 Powerco Problem

Powerco has 3 electric power plants that supply the needs of 4 cities. Each power plant can
supply the following numbers of kilowatt-hours (kwh) of electricity: plant 1 – 35 million; plant 2
– 50 million; plant 3 – 40 million (see Table 1). The peak power demands in these cities,
which occur at the same time (2pm), are as follows (in kwh): city 1 – 45 million; city 2 – 20
million; city 3 – 30 million; city 4 - 30 million. The costs of sending 1 million kwh of electricity
from plant to city depend on the distance the electricity must travel. Formulate an LP to
minimize the cost of meeting each city’s peak power demand.

Table 1: Shipping Costs, Supply, and Demand for Powerco


To Supply
From City 1 City 2 City 3 City 4 (million kwh)
Plant 1 $8 $6 $10 $9 $35
Plant 2 $9 $12 $13 $7 $50
Plant 3 $14 $9 $16 $5 $40
Demand 45 20 30 30
(million kwh)

3
L. Ntaimo (c) 2005 INEN420 TAMU
7.1 Graphical Representation
Demand Points
Supply Points
City 1 d1 = 45
xij

s1 = 35 Plant 1
City 2 d2 = 20

s2 = 50 Plant 2
City 3 d3 = 30

s3 = 40 Plant 3

City 4 d4 = 30

Decision Variables: xij # of (million) kwh produced at plant i and sent to city j
Constraints: Supply (Capacity) constraints
Demand constraints 4
L. Ntaimo (c) 2005 INEN420 TAMU
7.1 Powerco Problem Formulation
Min 8 x11 + 6 x12 + 10 x13 + 9 x14 +
9 x21 + 12 x22 + 13 x23 + 7 x24 +
Minimize total shipping costs
14 x31 + 9 x32 + 16 x33 + 5 x34

s.t. x11 + x12 + x13 + x14 ≤ 35


x21 + x22 + x23 + x24 ≤ 50 Supply Constraints
x31 + x32 + x33 + x34 ≤ 40

x11 + x21 + x13 ≥ 45


x12 + x22 + x32 ≥ 20
x13 + x23 + x33 ≥ 30 Demand Constraints
x14 + x24 + x34 ≥ 30
xij ≥ 0 (i = 1,2,3; j = 1,2,3,4)
Optimal solution :
z = 1020, x12 = 10, x13 = 10, x21 = 45, x23 = 5, x32 = 10, x34 = 30,
all other variables equal to 0. 5
L. Ntaimo (c) 2005 INEN420 TAMU
7.1 Graphical Representation
Demand Points
Supply Points
City 1 d1 = 45

x12= 10
s1 = 35 Plant 1
x13= 25 City 2 d2 = 20

x21= 45
x23= 5
s2 = 50 Plant 2
City 3 d3 = 30
x32= 10

s3 = 40 Plant 3
x34= 30
City 4 d4 = 30

6
L. Ntaimo (c) 2005 INEN420 TAMU
7.1 General Formulation of a Transportation Problem

m n
Min ∑∑ c x
i =1 j =1
ij ij

n
s. t. ∑x
j =1
ij ≤ si (i = 1,2,..., m) (supply constraints)

∑x
i =1
ij ≥ d j ( j = 1,2,..., n) (demand constraints)

xij ≥ 0 (i = 1,2,..., m; j = 1,2,..., n)

7
L. Ntaimo (c) 2005 INEN420 TAMU
7.2 A Balanced Transportation Problem

In a “balanced transportation” problem, the total supply is equal to the total


demand: m n

∑ si = ∑ d j
i =1 j =1

• All constraints must be binding


• It becomes relatively easy to find a basic feasible solution
• Simplex pivots do not involve multiplication, they reduce to additions and
subtractions
•Therefore, it is desirable to formulate a transportation problem as a
balanced transportation problem

8
L. Ntaimo (c) 2005 INEN420 TAMU
7.2 A Balanced Transportation Problem

m n
Min ∑∑ c x
i =1 j =1
ij ij

n
s. t. ∑x
j =1
ij = si (i = 1,2,..., m) (supply constraints)

∑x
i =1
ij = d j ( j = 1,2,..., n) (demand constraints)

xij ≥ 0 (i = 1,2,..., m; j = 1,2,..., n)

9
L. Ntaimo (c) 2005 INEN420 TAMU
7.2 Balancing a Transportation Problem if Total Supply
Exceeds Total Demand

Create a “dummy demand point” that has demand equal to the amount of
excess supply

Shipments to the dummy demand point:


(1) Are assigned a cost of zero because they are not real shipments
(2) Indicate unused supply capacity

10
L. Ntaimo (c) 2005 INEN420 TAMU
7.2 Balancing a Transportation Problem if Total
Supply Exceeds Total Demand
Demand Points
Supply Points
City 1 d1 = 35
xij

s1 = 35 Plant 1
City 2 d2 = 20
4

∑d
j =1
j = 115
3

∑s
Plant 2
i = 125 s2 = 50
City 3 d3 = 30
i =1

s3 = 40 Plant 3

City 4 d4 = 30

Dummy
5 d5 = 10
c15 = c25 =c35 = 0

11
L. Ntaimo (c) 2005 INEN420 TAMU
7.2 Balancing a Transportation Problem if Total
Supply is Less than Total Demand

In this case the problem has no feasible solution: demand cannot be satisfied

However, it is sometimes desirable to allow the possibility of leaving some


demand unmet:
(1) A penalty (cost) is often associated with the unmet demand
(2) To balance the problem, add a “dummy (or shortage) supply point”

12
L. Ntaimo (c) 2005 INEN420 TAMU
7.3 Transportation Tableau
A transportation problem is specified by supply, the demand, and the
shipping costs, so the relevant data can be summarized in a “transportation
tableau”:
j
1 2 n

i c11 c12 ... c1n


1 s1

c21 c22 ... c2n


2 s2

. . . .
Cell: (row i, col j) . . . .
. . . .
cm1 cm2 ... cmn
m sm

d1 d2 ... dn
13
L. Ntaimo (c) 2005 INEN420 TAMU
7.3 Powerco Transportation Tableau

• If xij is a bv, its value is placed in the lower left-hand corner of the ijth cell

8 6 9 10
10 25 35

9 12 13 7
45 5 50

14 9 16 5
10 30 40

45 20 30 30

14
L. Ntaimo (c) 2005 INEN420 TAMU
7.4 Finding BFS’s for Transportation Problems

Consider a transportation with m supply points and n demand points


- Such a problem contains m + n equality constraints
- Recall: In the Big M method and Two-phase simplex method it is difficult to find a bfs
if all of the LP’s constraints are equalities
- Fortunately, the structure of the transportation problems makes it easy to find a bfs

Important Observation

If a set of values for the xij’s satisfies all but one of the constraints of a balanced
transportation problem, then the values for the xij’s will automatically satisfy the
other constraints.

15
L. Ntaimo (c) 2005 INEN420 TAMU
7.4 Powerco Problem Formulation
Min 8 x11 + 6 x12 + 10 x13 + 9 x14 +
9 x21 + 12 x22 + 13 x23 + 7 x24 +
Minimize total shipping costs
14 x31 + 9 x32 + 16 x33 + 5 x34

s.t. x11 + x12 + x13 + x14 = 35 Omit this constraint


x21 + x22 + x23 + x24 = 50 Supply Constraints
x31 + x32 + x33 + x34 = 40

x11 + x21 + x31 = 45


x12 + x22 + x32 = 20
x13 + x23 + x33 = 30 Demand Constraints
x14 + x24 + x34 = 30
xij ≥ 0 (i = 1,2,3; j = 1,2,3,4)
Optimal solution :
z = 1020, x12 = 10, x13 = 10, x21 = 45, x23 = 5, x32 = 10, x34 = 30,
all other variables equal to 0. 16
L. Ntaimo (c) 2005 INEN420 TAMU
7.5 Powerco Example
Recall: s1 = 35, s2 = 50, s3 = 40,
d1 = 45, d2 = 20, d3 = 30, d4 = 30

Let a set of xij’s satisfy all constraints except the first supply constraint.
Then this set of xij’s must supply
d1 + d2 + d3 + d4 = 125 million kwh to cities 1 to 4
and supply
s2 + s3 = 125 – s1 = 90 million kwh from plants 2 and 3.
Thus plant 1 must supply
125 – (125 – s1) = 35 million kwh,
So the xij’s must satisfy the first supply constraint!

Therefore, we arbitrarily assume that the first constraint is omitted from consideration.

17
L. Ntaimo (c) 2005 INEN420 TAMU
7.5 Loop
Definition:
An ordered sequence of at least 4 different cells is called a loop if
1. Any 2 consecutive cells lie in either the same row or same column
2. No 3 consecutive cells lie in the same row or column
3. The last cell in the sequence has a row or column in common with the first cell in
the sequence
Path: (1,1)-(1,2)-(2,3)-(2,1)
Loop or Path?

Loop: (2,1)-(2,4)-(4,4)-(4,1) Loop: (1,1)-(1,2)-(2,2)-(2,3)-


(4,3)-(4,5)-(3,5)-(3,1)
Path: (1,1)-(1,2)-(1,3)-(2,3)-(2,1)
18
L. Ntaimo (c) 2005 INEN420 TAMU
7.5 Theorem

In a balanced transportation problem with m supply points and n


demand points, the cells corresponding to a set of (m + n – 1)
variables contain no loop iff the (m + n – 1) variables yield a basic
solution

This follows from the fact that a set of (m + n – 1) cells contains no loop iff the
(m + n – 1) columns corresponding to these cells are linearly independent.

Example: Loop: (1,1)-(1,2)-(2,2)-(2,1)

5
3 2 4

Because (1,1)-(1,2)-(2,2)-(2,1) is a loop, the Theorem tells us that


{x11, x12, x22, x21} cannot yield a bfs for this transportation problem.
19
L. Ntaimo (c) 2005 INEN420 TAMU
7.6 The Northwest Corner Method for Finding a BFS for a
Balanced Transportation Problem
ƒ Begin in the upper left (or northwest) corner of the transportation tableau
ƒ Set x11 as large as possible. Clearly x11 = min{s1, d1}.
ƒ If x11= s1, cross out row 1 of the transportation tableau; no more bv’s will come
from row 1. Also set d1 = d1 - s1.
ƒ If x11= d1, cross out the column 1 of the transportation tableau; no more bv’s will
come from column 1. Also set s1 = s1 - d1.
ƒ If x11= s1 = d1, cross out either row 1 or column 1 (but NOT both).
ƒ If you cross out row 1, set d1 = 0.
ƒ If you cross out column 1, set s1 = 0.
ƒ Continue applying this procedure to the most northwest corner cell in the tableau
that does not lie in a crossed-out row or column. Eventually, will come to a point
where there is only one cell that can be assigned a value.
ƒ Assign this cell a value equal to its row or column demand, and cross out both
the cell’s row and column.
ƒ A BFS has now been obtained. 20
L. Ntaimo (c) 2005 INEN420 TAMU
7.6 Powerco Example: Finding a BFS
8 6 9 10
35 35 - 35

9 12 13 7
50

14 9 16 5
40

45 - 35 20 30 30

8 6 9 10
35 x
50
9 12 13 7

40
14 9 16 5

10 20 30 30 21
L. Ntaimo (c) 2005 INEN420 TAMU
7.6 Powerco Example: Finding a BFS
8 6 9 10
35 X

9 12 13 7
10 50 - 10
14 9 16 5
40

10 - 10 20 30 30

8 6 9 10
35 x

9 12 13 7
10 40

14 9 16 5
40

X 20 30 30 22
L. Ntaimo (c) 2005 INEN420 TAMU
7.6 Powerco Example: Finding a BFS
8 6 9 10
35 X

9 12 13 7
10 40 - 20
20
14 9 16 5
40

X 20 - 20 30 30

8 6 9 10
35 x

9 12 13 7
10 20
20

14 9 16 5
40

X X 30 30 23
L. Ntaimo (c) 2005 INEN420 TAMU
7.6 Powerco Example: Finding a BFS
8 6 9 10
35 X

9 12 13 7
10 20 20
20 - 20
14 9 16 5
40

X X 30 - 20 30

8 6 9 10
35 x

9 12 13 7
10 X
20 20

14 9 16 5
40

X X 10 30 24
L. Ntaimo (c) 2005 INEN420 TAMU
Powerco Example: Finding a BFS
8 6 9 10
35 X

9 12 13 7
10 20 20 X

14 9 16 5
10 40 -10

X X 10 -10 30

8 6 9 10
35 x

9 12 13 7
10 X
20 20

14 9 16 5
10 30

X X X 30 25
L. Ntaimo (c) 2005 INEN420 TAMU
7.6 Powerco Example: Finding a BFS
8 6 9 10
35 X

9 12 13 7
10 20 20 X

14 9 16 5
30 - 30
10
30
X X X 30 - 30

8 6 9 10
35 X

9 12 13 7
10 X
20 20

14 9 16 5
10 30 X

X X X X 26
L. Ntaimo (c) 2005 INEN420 TAMU
7.6 Powerco Example: Basic Feasible Solution

8 6 9 10
35 35
9 12 13 7
10 20 20 50

14 9 16 5
10 30
40

45 20 30 30

BFS: x11 = 35
x22 = 10
x22 = 20 NOTE: The BFS does NOT form a LOOP
x23 = 20
x33 = 10
x34 = 30
27
L. Ntaimo (c) 2005 INEN420 TAMU
7.8 The Transportation Simplex Method
Pricing Out Nonbasic Variables Recall:

The coefficient of the variable xij in the tableau' s Row 0 (reduced cost) is given by
cij = cBV B −1aij − cij ,
where,
cij = objective coefficient for xij ,
aij = column for xij in the original LP,
(assuming that the first supply constraint has been dropped)
BV = set of basic variables.

Since we are solving a MINIMIZATION problem, the current


bfs will be optimal if the cij ' s for all the nonbasic variables are
NONPOSITIVE.
Otherwise, we ENTER into the basis the nonbasic variable with the
most POSITIVE cij .
28
L. Ntaimo (c) 2005 INEN420 TAMU
7.8 The Transportation Simplex Method Cont..

After determining cBV B -1 , we can easily compute cij .

Because the first constraint has been dropped, will have (m + n-1) elements :

cBV B −1 = [u2 u3 ... um v1 v2 ... vn ],


where
u2 , u3, ..., um are the elements of cBV B −1 corresponding to the m-1 supply constraints;
v1 , v2 ,..., vn are the elements of cBV B −1 corresponding to the n demand constraints.

29
L. Ntaimo (c) 2005 INEN420 TAMU
7.8 The Transportation Simplex Method Cont..

To determine cBV B -1 , we use the fact that in any tableau, each basic variable xij must have
cij = 0. Thus for each of the m + n-1 basic variables (in BV ),
cBV B −1aij − cij = 0 (1)

For a transportation problem, the equations (1) are very easy to solve!

If we set u1 = 0, we will see that (1) reduces to


ui + v j = cij ⇒ cij = ui + v j − cij
for all basic variables.

Thus, to solve for cBV B -1 , we must solve the following system of m + n equations :
u1 = 0,
ui + v j = cij
for all basic variables.

30
L. Ntaimo (c) 2005 INEN420 TAMU
7.8 Powerco Example: Solution of (1)
We start with the BFS obtained by applying the NW Corner method:

8 6 9 10
35 35
9 12 13 7
10 20 20 50

14 9 16 5
10 30
40

45 20 30 30

For this bfs, BV = {x11 , x21 , x22 , x23 , x33 , x34 }

Applying cBV B -1aij -cij = 0 we obtain the following :

(See next 2 slides)

31
L. Ntaimo (c) 2005 INEN420 TAMU
7.8 Powerco Example: Solution of (1) Model
BV = {x11 , x21 , x22 , x23 , x33 , x34 }
⎡0 ⎤ Applying cBV B -1aij -cij = 0 ⎡1⎤
⎢0 ⎥ ⎢0 ⎥
⎢ ⎥ ⎢ ⎥
⎢1⎥ ⎢0 ⎥
c11 = [u2 u3 v1 v2 v3 v4 ]⎢ ⎥ − 8 = v1-8 = 0 c23 = [u2 u3 v1 v2 v3 v4 ]⎢ ⎥ − 13 = u2 + v3-13 = 0
⎢0 ⎥ ⎢0 ⎥
⎢0 ⎥ ⎢1⎥
⎢ ⎥ ⎢ ⎥
⎢⎣0⎥⎦ ⎢⎣0⎥⎦
⎡1 ⎤ ⎡0 ⎤
⎢0 ⎥ ⎢1 ⎥
⎢ ⎥ ⎢ ⎥
⎢1 ⎥ ⎢0 ⎥
c21 = [u2 u3 v1 v2 v3 v4 ]⎢ ⎥ − 9 = u2 + v1-9 = 0 =
c [u 2 3 1 2 3 4 ⎢ ⎥ − 16 = u3 + v3-16 = 0
u v v v v ]
⎢0 ⎥ 33
⎢0 ⎥
⎢0 ⎥ ⎢1 ⎥
⎢ ⎥ ⎢ ⎥
⎢⎣0⎥⎦ ⎢⎣0⎥⎦
⎡1 ⎤ ⎡0 ⎤
⎢0 ⎥ ⎢1⎥
⎢ ⎥ ⎢ ⎥
⎢0 ⎥ ⎢0 ⎥
c22 = [u2 u3 v1 v2 v3 v4 ]⎢ ⎥ − 12 = u2 + v2 -12 = 0 c34 = [u2 u3 v1 v2 v3 v4 ]⎢ ⎥ − 5 = u3 + v4 -5 = 0
⎢1 ⎥ ⎢0 ⎥
⎢0 ⎥ ⎢0 ⎥
⎢ ⎥ ⎢ ⎥
⎢⎣0⎥⎦ ⎢⎣1⎥⎦
32
L. Ntaimo (c) 2005 INEN420 TAMU
7.8 Powerco Example: Solution of (1)
We start with the BFS obtained by applying the NW Corner method:

8 6 9 10
35 35
9 12 13 7
10 20 20 50

14 9 16 5
10 30
40

45 20 30 30
-1
We find c BV B by solving :
u1 = 0,
u1 + v1 = 8
u 2 + v1 = 9
u 2 + v 2 = 12
u 2 + v3 = 13
u 3 + v3 = 16
u3 + v4 = 5 33
L. Ntaimo (c) 2005 INEN420 TAMU
7.8 Powerco Example: Solution of (1)
For each nonbasic variable, we now compute
We find cBV B -1 by solving :
cij = ui + v j − cij
u1 = 0,
u1 + v1 = 8 and we obtain :
u 2 + v1 = 9 c12 = 0 + 11 − 6 = 5
u 2 + v2 = 12 c13 = 0 + 12 − 10 = 2
u 2 + v3 = 13 c14 = 0 + 1 − 9 = −8
u3 + v3 = 16 c24 = 1 + 1 − 7 = −5
u 3 + v4 = 5 c31 = 4 + 8 − 14 = −2
c32 = 4 + 11 − 9 = 6
We obtain :
v1 = 8 Entering Nonbasic Variable
u2 = 1
Because c32 is the most positive cij ,
v2 = 11
we would next enter x32 into the basis.
v3 = 12
u3 = 4
Note : Each unit of x32 that is entered into the
v4 = 1
basis will decrease Powerco' s cost by $6.
34
L. Ntaimo (c) 2005 INEN420 TAMU
7.9 How to Pivot in a Transportation Problem

Step 1: Determine the variable that should enter the basis

Step 2: Find the loop involving the entering variable and some of the
basic variables. (It can be shown that there is only one loop)

Step 3: Counting only cells in the loop, label those found in Step 2 that
are an even number (0, 2, 4, …) cells away from the entering
variable as even cells. Also label those that are an odd number
of cells away from the entering variable as odd cells.

Step 4: Find the odd cell whose variable assumes the smallest value.
Call this value θ. The variable corresponding to this cell will leave
the basis.
To perform the pivot, decrease the value of each odd cell by θ
and increase the value of each even cell by θ. The values of variables
not in the loop remain unchanged. The pivot is now complete!

35
L. Ntaimo (c) 2005 INEN420 TAMU
7.9 How to Pivot in a Transportation Problem Cont…

Degenerate Solution:

In Step 4 if θ = 0, then the entering variable will equal 0, and an odd


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 that one odd cell in the loop equals θ, you may arbitrarily choose
one of these to leave the basis, again, a degenerate bfs will result.

36
L. Ntaimo (c) 2005 INEN420 TAMU
7.10 Summary of the Transportation Simplex Method

Step 1: If the problem is unbalanced, balance it.


Step 2: Use the northwest corner method to find a bfs.
Step 3: Use the fact that u1 = 0 and ui + vj = cij for all basic variables to find
[u1 u2 … um v1 v2 … vn] for the current bfs.

Step 4: If ui + vj - cij ≤ 0 for all nonbasic variables, then the current bfs is optimal.
If this is not the case, then we enter the variable with the most positive
ui + vj - cij into the basis using the pivoting procedure. This yields a new bfs.

Step 5: Using the new bfs, return to steps 3 and 4.

For a maximization problem proceed as stated, but replace step 4 by Step 4’:

Step 4’: If ui + vj - cij ≥ 0 for all nonbasic variables, then the current bfs is optimal.
Otherwise, enter the variable with the most negative ui + vj - cij into the
basis using the pivoting procedure. This yields a new bfs.

37
L. Ntaimo (c) 2005 INEN420 TAMU
7.11 Example: Powerco Problem
We start with the initial bfs obtained by using the For each nonbasic variable, we compute
NW corner method: cij = ui + v j − cij
Table 1 and obtain :
8 6 10 9 c12 = 0 + 11 − 6 = 5
35 35 c13 = 0 + 12 − 10 = 2
9 12 13 7 c14 = 0 + 1 − 9 = −8
10 20 20 50 c24 = 1 + 1 − 7 = −5
14 9 16 5
c31 = 4 + 8 − 14 = −2
10 30 40 c32 = 4 + 11 − 9 = 6
Because c32 is the most positive cij ,
45 20 30 30
we would next enter x32 into the basis.
-1
We have already found cBV B by solving :
u1 = 0, The loop involving x32 and some of the bv' s is
Solution : v1 = 8
u1 + v1 = 8 shown in Table 1 : (3,2) - (3,3) - (2,3) - (2,2).
u2 = 1
u2 + v1 = 9 The odd cells in this loop are (3,3) and (2,2).
v2 = 11
u2 + v2 = 12 v3 = 12 Because x33 = 10 and x22 = 20, the pivot will
u2 + v3 = 13 u3 = 4 decrease x33 and x22 by 10, and increase x32 and
u3 + v3 = 16 v4 = 1 x23 by 10 (see Table 2)
u3 + v4 = 5 38
L. Ntaimo (c) 2005 INEN420 TAMU
7.11 Example: Powerco Problem
For each nonbasic variable, we compute
cij = ui + v j − cij
Table 2 and obtain :
8 6 10 9 c12 = 0 + 11 − 6 = 5
35 35 c13 = 0 + 12 − 10 = 2
9 12 13 7 c14 = 0 + 7 − 9 = −2
10 10 30 50 c24 = 1 + 7 − 7 = 1
14 9 16 5
c31 = −2 + 8 − 14 = −8
10 30 40 c33 = −2 + 12 − 16 = −6
Because c1 2 is the most positive cij ,
45 20 30 30
we would next enter x12 into the basis.
-1
We find cBV B by solving :
u1 = 0, The loop involving x12 and some of the bv' s is
Solution : v1 = 8
u1 + v1 = 8 shown in Table 2 : (1,2) - (2,2) - (2,1) - (1,1).
u2 = 1
u2 + v1 = 9 The odd cells in this loop are (2,2) and (1,1).
v2 = 11
u2 + v2 = 12 v3 = 12 Because x22 = 10 is the smallest entry in an odd cell,
u2 + v3 = 13 u 3 = −2 the pivot will decrease x22 and x11 by 10, and increase
u 3 + v2 = 9 v4 = 7 x12 and x21 by 10 (see Table 3).
u 3 + v4 = 5 39
L. Ntaimo (c) 2005 INEN420 TAMU
7.11 Example: Powerco Problem
For each nonbasic variable, we compute
cij = ui + v j − cij
Table 3 and obtain :
8 6 10 9 c13 = 0 + 12 − 10 = 2
25 10 35 c14 = 0 + 5 − 9 = −4
9 12 13 7 c22 = 1 + 6 − 12 = −5
20 30 50 c24 = 1 + 5 − 7 = −1
14 9 16 5
c31 = 0 + 8 − 14 = −6
10 30 40 c33 = 0 + 12 − 16 = −4
Because c13 is the most positive cij ,
45 20 30 30
we would next enter x13 into the basis.
-1
We find cBV B by solving :
u1 = 0, The loop involving x13 and some of the bv' s is
Solution : v1 = 8
u1 + v1 = 8 shown in Table 3 : (1,3) - (2,3) - (2,1) - (1,1).
u2 = 1
u2 + v1 = 9 The odd cells in this loop are (2,3) and (1,1).
v2 = 6
u2 + v3 = 13 v3 = 12 Because x11 = 25 is the smallest entry in an odd cell,
u1 + v2 = 6 u3 = 0 the pivot will decrease x23 and x11 by 25, and increase
u 3 + v2 = 6 v4 = 5 x13 and x21 by 25 (see Table 4).
u 3 + v4 = 5 40
L. Ntaimo (c) 2005 INEN420 TAMU
7.11 Example: Powerco Problem
For each nonbasic variable, we compute
cij = ui + v j − cij
Table 4 and obtain :
8 6 10 9 c11 = 0 + 6 − 8 = −2
10 25 35 c14 = 0 + 5 − 9 = −4
9 12 13 7 c22 = 3 + 6 − 12 = −3
45 5 50 c24 = 3 + 2 − 7 = −2
14 9 16 5
c31 = 3 + 6 − 14 = −5
10 30 40 c33 = 3 + 10 − 16 = −3

45 20 30 30 Because all cij ≤ 0, an optimal solution has

We find cBV B -1 by solving : been obtained. Thus the optimal solution t o


u1 = 0, the Powerco problem is :
Solution : v1 = 6
u2 + v1 = 9
u2 = 3
u 3 + v4 = 5 x12 = 10, x13 = 25, x21 = 45, x23 = 5, x32 = 10, x34 = 30,
v2 = 6
u1 + v2 = 6 v3 = 10
and
u2 + v3 = 13 z = 6(10 ) + 10 ( 25) + 9( 45) + 13(5) + 9(10 ) + 5(30 )
u3 = 3
u1 + v3 = 10 v4 = 2 = $1,020 .
u 3 + v2 = 9 41
L. Ntaimo (c) 2005 INEN420 TAMU
7.12 Assignment Problems

1. Problem Description
2. Example Formulation
3. The Hungarian Method
4. Example using the Hungarian Method
5. Transshipment Problems

42
L. Ntaimo (c) 2005 INEN420 TAMU
7.12 On the integrality Property of the Transportation
Problem
• We already know the fact that solutions to the transportation problem are
integral. This is a useful property of the transportation problem.
• In general, solutions to integer programs with the integer restrictions
relaxed are fractional (linear programming (LP) relaxation).
e.g. x1 + x2 = 1, x1 – x2 = 0, has the unique solution (x1 = 0.5, x2 = 0.5)
• But solutions to the transportation problem are integral.
• In general, if there is at most one 1 and at most one –1 in any column of
the constraint matrix (unimodular constraint matrix), then every basic
feasible solution is integer (so long as RHS is integral.)

43
L. Ntaimo (c) 2005 INEN420 TAMU
7.12 A special case of the Transportation Problem:
Supplies and Demands are All Equal to 1.
Supply Demand Supply Demand
1
0
1 1 4 1 1 1 4 1
2
1
1
2
1 2 5 1 1 2 5 1
1
1
1
1
0
1 3 6 1 1 3 6 1
2

A solution to this transportation problem may be viewed as an “assignment”

44
L. Ntaimo (c) 2005 INEN420 TAMU
7.12 The Assignment Problem

•3 people: nodes 1, 2, 3

•3 tasks (jobs): nodes 4, 5, 6


P T/J
•Each person must be assigned to a task
1
0 4
1 2 1
•Each task has a person assigned
1
•Cost of assigning a person to a task
1
•Objective: meet constraints while minimizing total
1 2 2 5 1 cost
1
1
0
1 3 6 1
2
Formulate this as an integer program or IP.
(Note that all variables are required to be integer). 45
L. Ntaimo (c) 2005 INEN420 TAMU
7.13 Assignment Problem

• Suppose that n people (let us label them 1 to n) are assigned to n tasks (also let
us label them labeled 1 to n). Then,

– let xij = 1 if person i is assigned to task j

– let xij = 0 if person i is not assigned to task j

– let cij be the cost of assigning person i to task j

• Formulate the assignment problem

46
L. Ntaimo (c) 2005 INEN420 TAMU
7.13 The Assignment Problem

In general the LP formulation is given as

n n
Minimize
∑∑ c
i =1 j =1
ij xij

s.t. ∑x
j =1
ij = 1, ∀i = 1,… , n Each supply is 1

∑x
i =1
ij = 1, ∀j = 1,… , n
Each demand is 1
xij = 0 or 1, ∀ij

47
L. Ntaimo (c) 2005 INEN420 TAMU
7.14 Example Problem

Machineco has 4 machines and 4 jobs to be completed.


Each machine must be assigned to complete one job. The
time required to set up each machine for completing each job
is shown in Table 1. Machineco wants to minimize the total
setup time needed to complete the 4 jobs. Formulate this
problem as an LP.

Table 1
Time (Hours)
Machine Job 1 Job 2 Job 3 Job 4
1 14 5 8 7
2 2 12 6 5
3 7 8 3 9
4 2 4 6 10

48
L. Ntaimo (c) 2005 INEN420 TAMU
7.14 Example Problem Formulation
Machineco must determine which machine should be assigned to each
job. Let the decision variables be defined as:
xij = 1 if machine i is assigned to meet the demands of job j
xij = 0 if machine i is not assigned to meet the demands of job j
Min z = 14 x11 + 5 x12 + 8 x13 + 7 x14 +
2 x11 + 12 x12 + 6 x13 + 5 x14 +
7 x11 + 8 x12 + 3x13 + 9 x14 +
2 x11 + 4 x12 + 6 x13 + 10 x14
s.t. x11 + x12 + x13 + x14 = 1 (Machine contraints)
x21 + x22 + x23 + x24 = 1
Ensures that each machine
x31 + x32 + x33 + x34 = 1 is assigned to one job
x41 + x42 + x43 + x44 = 1
x11 + x21 + x31 + x41 = 1 (Job contraints)
x12 + x22 + x32 + x42 = 1
Ensures that each job is
x13 + x23 + x33 + x43 = 1 assigned to one machine
(each job is completed)
x14 + x24 + x34 + x44 = 1
xij = 1 or xij = 0, (i = 1,2,3,4; j = 1,2,3,4).

49
L. Ntaimo (c) 2005 INEN420 TAMU
7.15 Relaxing Integrality Requirements

ƒ Since all the supplies and demands for the assignment problem
are integers, our discussion of the transportation simplex method
implies that all variables in an optimal solution of a transportation
problem must be integers

ƒ Since each RHS of each constraint is equal to 1, each xij must be


a nonnegative integer that is no larger than 1 , so each xij must
be equal to 0 or 1

ƒ Therefore, we can remove the integrality requirements on the


decision variables

50
L. Ntaimo (c) 2005 INEN420 TAMU
7.15 Solution Approach

ƒ A high degree of degeneracy in an assignment problem may


cause the transportation simplex to be an inefficient way of
solving assignment problems.

ƒ For this reason, and the fact that the algorithm is even much
simpler than the transportation simplex, the Hungarian method is
usually used to solve assignment (min) problems
ƒ Note: If your assignment is a max problem, convert it to a min
problem before applying the Hungarian Method.

51
L. Ntaimo (c) 2005 INEN420 TAMU
7.15 The Hungarian Method

Step 1. Find the minimum element in each row of the m x m cost matrix.
Construct a new matrix by subtracting from each cost the minimum cost in
its row. For this new matrix, find the minimum cost in each column.
Construct a new matrix (called the reduced cost matrix) by subtracting
from each cost the minimum cost in its column.

Step 2. Cover all the zeros in the reduced cost matrix using the minimum
number of lines needed. If m lines are required, then an optimal solution is
available among the covered zeros in the matrix. If fewer than m lines are
needed, then proceed to Step 3.

Step 3. Find the smallest nonzero element (k) in the reduced cost matrix that
is uncovered by the lines drawn in Step 2. Now subtract k from each
uncovered element and add k to each element that is covered by two lines.
Return to Step 2.

52
L. Ntaimo (c) 2005 INEN420 TAMU
7.15 Remarks on the Hungarian Method

ƒ To solve an assignment problem in which the goal is to maximize


the objective function, multiply the profits matrix by -1 and solve
the problem as a minimization problem

ƒ If the number of rows and columns in the cost matrix are unequal,
then the assignment problem is unbalanced. The Hungarian
method may yield an incorrect solution if the problem is
unbalanced. Thus, any assignment problem should be balanced
(by the addition of one or more dummy points) before it is solved
by the Hungarian method.

53
L. Ntaimo (c) 2005 INEN420 TAMU
7.16 Machineco Example

Job 1 Job 2 Job 3 Job 4

Machine 1 14 5 8 7

Machine 2 2 12 6 5

Machine 3 7 8 3 9

Machine 4 2 4 6 10

Table 2. Machineco Cost Matrix

54
L. Ntaimo (c) 2005 INEN420 TAMU
7.16 Machineco Example
Row Minimum Table 5. Cost Matrix After Column
Table 3. Machineco Cost Matrix
Mins are Subtracted
14 5 8 7 5
9 0 3 0 3 lines with
smallest
2 12 6 5 2 uncovered
0 10 4 1 element
7 8 3 9 3 equals 1
4 5 0 4
2 4 6 10 2
0 2 4 6

Table 4. Cost Matrix After Row Table 6. Four lines required: optimal
Mins are Subtracted solution found
9 0 3 2 10 0 3 0

0 10 4 3 0 9 3 0

4 5 0 6 5 5 0 4

0 2 4 8 0 1 3 5

0 0 0 2
Optimal Assignment : x12 = 1, x 24 = 1, x 33 = 1, x 41 = 1.
Column Minimum

55
L. Ntaimo (c) 2005 INEN420 TAMU
7.17 Transshipment Problems

ƒ A transportation problem allows only shipments that go directly from


supply points to demand points.
ƒ In many situations, shipments are allowed between supply points or
between demand points.
ƒ Sometimes there may also be points (called transshipment points)
through which goods can be transshipped on their journey from a supply
point to a demand point.
ƒ Fortunately, the optimal solution to a transshipment problem can be
found by solving a transportation problem.

56
L. Ntaimo (c) 2005 INEN420 TAMU
7.17 Widgetco Example:
See problem description on page 400

Los
Memphis New York
Angeles

150 130

Denver Chicago Boston

200 130

Supply Demand

Total = 350 Total = 260

57
L. Ntaimo (c) 2005 INEN420 TAMU
7.18 Converting a Transshipment Problem into a
Balanced Transportation problem
(assuming supply >= demand)

Step1. If necessary, add a dummy demand point (with a supply of 0 and a


demand equal to the problem’s excess supply) to balance the problem.
Shipments to the dummy and from a point to itself will be zero. Let s= total
available supply.

Step2. Construct a transportation tableau as follows: A row in the tableau


will be needed for each supply point and transshipment point, and a
column will be needed for each demand point and transshipment point.

58
L. Ntaimo (c) 2005 INEN420 TAMU
7.18 Converting a Transshipment Problem into a
Balanced Transportation problem

Step2. Cont..
Each supply point will have a supply equal to it’s original supply, and each demand
point will have a demand to its original demand.

Let s= total available supply. Then each transshipment point will have a supply
equal to (point’s original supply) + s and a demand equal to (point’s original
demand) + s. This ensures that any transshipment point that is a net supplier will
have a net outflow equal to point’s original supply and a net demander will have a
net inflow equal to point’s original demand.

Although we don’t know how much will be shipped through each transshipment
point, we can be sure that the total amount will not exceed s.

59
L. Ntaimo (c) 2005 INEN420 TAMU
7.19 Widgeco Example: As a Balanced Transportation
Problem
N.Y. Chicago L.A. Boston Dummy
8 13 25 28 0
Memphis 130 20 150

15 12 26 25 0
Denver 200
130 70

0 6 16 17 0
N.Y 350
220 130

6 0 14 16 0
Chicago
350 350

350 350 130 130 90

60
L. Ntaimo (c) 2005 INEN420 TAMU
References

Winston, Wayne L. and M. Venkataramanan, Introduction to Mathematical


Programming, 4th Edition, Duxbury Press, Belmont, CA, 2003.

61
L. Ntaimo (c) 2005 INEN420 TAMU
Powerco Problem Formulation back

Min 8 x11 + 6 x12 + 10 x13 + 9 x14 +


9 x21 + 12 x22 + 13 x23 + 7 x24 +
Minimize total shipping costs
14 x31 + 9 x32 + 16 x33 + 5 x34

s.t. x11 + x12 + x13 + x14 ≤ 35 u1


x21 + x22 + x23 + x24 ≤ 50 u2 Supply Constraints
x31 + x32 + x33 + x34 ≤ 40 u3

x11 + x21 + x13 ≥ 45 v1


x12 + x22 + x32 ≥ 20 v2
x13 + x23 + x33 ≥ 30 v3 Demand Constraints
x14 + x24 + x34 ≥ 30 v4
xij ≥ 0 (i = 1,2,3; j = 1,2,3,4)

62
L. Ntaimo (c) 2005 INEN420 TAMU

You might also like