S\>
N0>
<
L&&LLrrH
0Bkz$ ? a(
0:(
X
CXK
SXح
N0
<
L&&LLrrH
0Bkz$ ? a(
0:(
X
CXK
S
N0
<
L&&LLrrH
0Bkz$ ? a(
0:( $
X
CXK
S
N0
<
L&&LLrrH
0Bkz$ ? a(
0:( `
t
X
CXK
S
N0
<
L&&LLrrH
0Bkz$ ? a(
0:(
X
CXK
ST$
N0
<
L&&LLrrH
0Bkz$ ? a(
0P:( 6
X
CXK
St1
N0
<
L&&LLrrH
0Bkz$ ? a(
0p:(
X
CXK
S>
N0
<
L&&LLrrH
0Bkz$ ? a(
0:( Xg''0A
X
CXK
SK
N0
<
L&&LLrrH
0Bkz$ ? a(
0:( y
X
CXK
S(X
N0
<
L&&LLrrH
0Bkz$ ? a(
0:(
X
CXK
S@S
N0
<
L&&LLrrH
0Bkz$ ? a(
0:(
X
CXK
Sq
N0
<
L&&LLrrH
0Bkz$ ? a(
0 :(
X
CXK
S~
N0
<
L&&LLrrH
0Bkz$ ? a(
00$:(
$X
$ CXK
$ S
N0
<
L&&LLrrH
$0Bkz$ ? a(
0P(:(
(X
( CXK
( S0
N0
<
L&&LLrrH
(0Bkz$ ? a(
0p,:(
,X
, CXK
, SH
N0
<
L&&LLrrH
,0Bkz$ ? a(
00:(
0X
0 CXK
0 S
N0
<
L&&LLrrH
00Bkz$ ? a(
04:(
4X
4 CXK
4 Sྯ
N0
<
L&&LLrrH
40Bkz$ ? a(
08:(
8X
8 CXK
8 S˯
N0
<
L&&LLrrH
80Bkz$ ? a(
0<:(
<X
< CXK
< S@د
N0
<
L&&LLrrH
<0Bkz$ ? a(
0@:(
@X
@ CXK
@ S
N0
<
L&&LLrrH
@0Bkz$ ? a(
00D:(
DX
D CXK
D S$
N0
<
L&&LLrrH
D0Bkz$ ? a(
0PH:(
HX
H CXK
H SD
N0
<
L&&LLrrH
H0Bkz$ ? a(
0pL:(
LX
L CXK
L SD
N0
<
L&&LLrrH
L0Bkz$ ? a(
0P:(
PX
P CXK
P S
N0
<
L&&LLrrH
P0Bkz$ ? a(
0T:(
TX
T CXK
T S'
N0
<
L&&LLrrH
T0Bkz$ ? a(
0X:(
XX
X CXK
X S3
N0
<
L&&LLrrH
X0Bkz$ ? a(
0\:(
\X
\ CXK
\ SA
N0
<
L&&LLrrH
\0Bkz$ ? a(
0`:(
`X
` CXK
` S N
N0
<
L&&LLrrH
`0Bkz$ ? a(
0d:(
dX
d CXK
d S@[
N0
<
L&&LLrrH
d0Bkz$ ? a(
0h:(
hX
h CXK
h Sh
N0
<
L&&LLrrH
h0Bkz$ ? a(!
0l:(
lX
l CXK
l St
N0
<
L&&LLrrH
l0Bkz$ ? a("
0p:(
pX
p CXK
p S
N0
<
L&&LLrrH
p0Bkz$ ? a(#
00t:(
tX
t CXK
t S
N0
<
L&&LLrrH
t0Bkz$ ? a($
0Px:(
xX
x CXK
x S@
N0
<
L&&LLrrH
x0Bkz$ ? a(%
0p|:(
|X
| CXK
| S8
N0
<
L&&LLrrH
|0Bkz$ ? a(&
0:(
X
CXK
SP
N0
<
L&&LLrrH
0Bkz$ ? a('
0:(
X
CXK
S
N0
<
L&&LLrrH
0Bkz$ ? a((
0:(
X
CXK
Sΰ
N0
<
L&&LLrrH
0Bkz$ ? a()
0:(
X
CXK
S۰
N0
<
L&&LLrrH
0Bkz$ ? a(*
0:(
X
CXK
S@
N0
<
L&&LLrrH
0Bkz$ ? a(+
00:(
X
CXK
S
N0
<
L&&LLrrH
0Bkz$ ? a(,
0P:(
X
CXK
S
N0
<
L&&LLrrH
0Bkz$ ? a(-
0p:(
X
CXK
S
N0
<
L&&LLrrH
0Bkz$ ? a(.
0:(
X
CXK
SD
N0
<
L&&LLrrH
0Bkz$ ? a(/
0:(
X
CXK
S)
N0
<
L&&LLrrH
0Bkz$ ? a(0
0:(
X
CXK
S@6
N0
<
L&&LLrrH
0Bkz$ ? a(1
0:(
X
CXK
S`C
N0
<
L&&LLrrH
0Bkz$ ? a(2
0:(
X
CXK
SP
N0
<
L&&LLrrH
0Bkz$ ? a(3
00:(
X
CXK
S]
N0
<
L&&LLrrH
0Bkz$ ? a(4
0P:(
X
CXK
Sxj
N0
<
L&&LLrrH
0Bkz$ ? a(5
0p:(
X
CXK
Sw
N0
<
L&&LLrrH
0Bkz$ ? a(B
0 <0(
<H
<0Bkz$ ? ̙33C
0@80(
8H
80Bkz$ ? ̙33VD
0`(
`1 ?]N
`$τ oo ?
N0
H
0Bkz$ ? ̙33VE
0$(
$
$ `1 ?]N
$ `. oo ?
N0
H
$0Bkz$ ? ̙33F
040(
4H
40Bkz$ ? ̙33VG
00(
0
0 `1 ?]N
0 `p oo ?
N0
H
00Bkz$ ? ̙33VH
0D(
D
D `1 ?]N
D `S oo ?
N0
H
D0Bkz$ ? ̙33r,0`{0e
- N`hknq4uS ;v1TW\7lgkF,0Z14;79X[<`uCgYK=/!۷yk]OA3% }oaSE7)
} *03FK42ȢoWPKS^`bK
1(H
/0( 0;[0
0000$([\{b00000000000 0=] 00
0000 2 3 !A0C0E0G0I0c00000000000000000!%),.:;?]}acdeghijklmnopDTimes New RomanTTdܖ0ܖDBookLTimes New Roman
Book AntiquaMonotype Sorts
WingdingsArialSymbol
Arial NarrowMs9ch15Dr. Mohamed Abdel Salam 7Transportation, Assignment, and Transshipment Problems7Transportation, Assignment, and Transshipment ProblemsTransportation ProblemTransportation ProblemTransportation ProblemTransportation ProblemTransportation ProblemProblem formulation Transportation ProblemInitial TableauNorthwest cornerTransportation AlgorithmTransportation AlgorithmTransportation AlgorithmTransportation Algorithm
Example: BBC
Example: BBC
Example: BBC
Example: BBC
Example: BBC
Example: BBC
Example: BBCExample: BBC
Example: BBCExample: BBCExample: BBCExample: BBCExample: BBCExample: BBCExample: BBCExample: BBCExample: BBCExample: BBCAssignment ProblemAssignment ProblemAssignment ProblemExample: Hungry OwnerExample: Hungry OwnerExample: Hungry OwnerExample: Hungry OwnerExample: Hungry OwnerExample: Hungry Owner!Variations of Assignment ProblemHungarian MethodHungarian MethodHungarian MethodExample: Hungry OwnerExample: Hungry OwnerExample: Hungry OwnerExample: Hungry OwnerExample: Hungry OwnerExample: Hungry OwnerExample: Hungry OwnerExample: Hungry OwnerExample: Hungry OwnerTransshipment ProblemTransshipment ProblemTransshipment ProblemExample: TransshippingExample: TransshippingExample: TransshippingExample: TransshippingExample: TransshippingASolving the transshipment problem using transportation algorithmASolving the transshipment problem using transportation algorithmExample: transshippingThe End of Chapter 7Fonts UsedDesign Template
Slide TitlesD 2
G@ Chapter 8._0wwwwwwook Antiqua-. 72
Q Transportation, Assignment, and .. 72
P Transportation, Assignment, and .-@Book Antiqua-DBook AntiquaanTTdܖ0ܖ DMonotype SortsTTdܖ0ܖ0DWingdingsortsTTdܖ0ܖ@DArialngsortsTTdܖ0ܖ"PDSymbolgsortsTTdܖ0ܖ`DArial NarrowsTTdܖ0ܖ"C.@ @@``
@n?" dd@ @@``|tT>
"$$&(*,(.024(68:<'>HJLNPRTV/XZ\^`bdfh+jlnp)rtv
!#%')+-/13579;=?IKMOQSUWY[]_acegikmoqsuwxyz!{L|$}C~#L#lAA1? 3fAAA@}+g4PdPdd0pxp@ʚ;;ʚ;<4dddd x0 <4BdBd x0 \0___PPT10
___PPT9/0r<=&@?%O=BDr. Mohamed Abdel Salam ZOperations Research (OR)
Chapter 8Transportation, Assignment, and Transshipment Problems[[ 6Transportation, Assignment, and Transshipment ProblemsA 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, assignment, and transshipment problems of this chapter, as well as the shortest route, minimal spanning tree, and maximal flow problems (Chapter 9) and PERT/CPM problems (Chapter 10) are all examples of network problems.
0
6Transportation, Assignment, and Transshipment ProblemsUEach of the three models of this chapter (transportation, assignment, and transshipment models) can be formulated as linear programs and solved by general purpose linear programming Algorithms (simplex method).
For each of the three models, 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 (including The Management Scientist, DS, QSB) which contain separate computer codes for these models which take advantage of their network structure.$V!j Transportation Problem}The transportation problem seeks to minimize the total shipping costs of transporting goods from m origins or sources (each with a supply si) to n destinations (each with a demand dj), when the unit shipping cost from source, 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.~ G (
"
,
b
Transportation ProblemNetwork RepresentationTransportation ProblemLP Formulation
The linear programming formulation in terms of the amounts shipped from the sources to the destinations, xij , can be written as:
Min SScijxij (total transportation cost)
i j
s.t. Sxij < si for each source i (supply constraints)
j
Sxij = dj for each destination j (demand constraints)
i
xij > 0 for all i and j (nonnegativity constraints)B]Fk
Transportation Problem<To solve the transportation problem by its special purpose algorithm, it is required that the sum of the supplies at the sources 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 sources are zero. Similarly, if total supply is less than total demand, a dummy source 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 ProblemA 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. $;Problem formulation The LP model for this problem is as follows:
Min Z = 15 X11 + 30 X12 + 20 X13 + 30 X21 + 40X22 + 35X23
S.t.
X11 + X12 + X13 d" 50
Supply constraints
X21 + X22 + X23 d" 30
X11 + X21 = 25
X12 + X22 = 45
X13 + X23 = 10 demand constraints
X11, & , X23 0
X-Z&Z9
B6B
BJBJBJBJBJBJ9BJBJBB
Transportation ProblemThe 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, t
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~&
?%'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}Root EntrydO)9Current UserQ)SummaryInformation(
PowerPoint Document(DocumentSummaryInformation8, AntiquaanTTdܖ0ܖ DMonotype SortsTTdܖ0ܖ0DWingdingsortsTTdܖ0ܖ@DArialngsortsTTdܖ0ܖ"PDSymbolgsortsTTdܖ0ܖ`DArial NarrowsTTdܖ0ܖ"C.@ @@``
@n?" dd@ @@``|tT>
"$$&(*,(.024(68:<'>HJLNPRTV/XZ\^`bdfh+jlnp)rtv
!#%')+-/13579;=?IKMOQSUWY[]_acegikmoqsuwxyz!{L|$}C~#L#lAA1? 3fAAA@}+g4PdPdd0pxp@ʚ;;ʚ;<4dddd x0 <4BdBd x0 \0___PPT10
___PPT9/0r<=&@?%O=ܴDr. Mohamed Abdel Salam ZOperations Research (OR)
Chapter 8Transportation, Assignment, and Transshipment Problems[[ 6Transportation, Assignment, and Transshipment ProblemsA 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, assignment, and transshipment problems of this chapter, as well as the shortest route, minimal spanning tree, and maximal flow problems (Chapter 9) and PERT/CPM problems (Chapter 10) are all examples of network problems.
0
6Transportation, Assignment, and Transshipment ProblemsUEach of the three models of this chapter (transportation, assignment, and transshipment models) can be formulated as linear programs and solved by general purpose linear programming Algorithms (simplex method).
For each of the three models, 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 (including The Management Scientist, DS, QSB) which contain separate computer codes for these models which take advantage of their network structure.$V!j Transportation Problem}The transportation problem seeks to minimize the total shipping costs of transporting goods from m origins or sources (each with a supply si) to n destinations (each with a demand dj), when the unit shipping cost from source, 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.~ G (
"
,
b
Transportation ProblemNetwork RepresentationTransportation ProblemLP Formulation
The linear programming formulation in terms of the amounts shipped from the sources to the destinations, xij , can be written as:
Min SScijxij (total transportation cost)
i j
s.t. Sxij < si for each source i (supply constraints)
j
Sxij = dj for each destination j (demand constraints)
i
xij > 0 for all i and j (nonnegativity constraints)B]Fk
Transportation Problem<To solve the transportation problem by its special purpose algorithm, it is required that the sum of the supplies at the sources 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 sources are zero. Similarly, if total supply is less than total demand, a dummy source 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 ProblemA 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. $;Problem formulation The LP model for this problem is as follows:
Min Z = 15 X11 + 30 X12 + 20 X13 + 30 X21 + 40X22 + 35X23
S.t.
X11 + X12 + X13 d" 50
Supply constraints
X21 + X22 + X23 d" 30
X11 + X21 = 25
X12 + X22 = 45
X13 + X23 = 10 demand constraints
X11, & , X23 0
X-Z&Z9
B6B
BJBJBJBJBJBJ9BJBJBB
Transportation ProblemThe 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, by using the MODI method for evaluating the reduced costs may be used to move from the initial feasible solution to the optimal one.J6XB6X y<Initial TableauThere are many method for finding the initial tableau for the transportation problem which are:
Northwest corner
Minimum cost of the row
Minimum cost of the column
Least cost
Vogle s approximation method
Russell s approximation methodR`n`3<=Northwest cornerUNorthwest corner: Begin by selecting X11 (that is, start in the northwest corner of the transportation tableau). Therefore, if Xij was the last basic variable (occupied cell) selected, then select Xij+1 (that is, move one column to the right) if source I has any supply remaining. Otherwise, next select Xi+1 j (that is, move one row down).
~U&XDg $TTransportation AlgorithmPhase I - Minimum-Cost Method
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.
f ~ 9Transportation AlgorithmPPhase 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. \!X!
Transportation AlgorithmPhase 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.D-- tTransportation Algorithm5MODI 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.*A* Example: BBC' 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 1 24 30 40
Plant 2 30 40 42
J(z Example: BBCInitial Transportation Tableau
Since total supply = 100 and total demand = 80, a dummy destination is created with demand of 20 and 0 unit costs.
*xxExample: BBC>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.`!+*000P\?Example: BBCInitial tableau
Example: BBCLIteration 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 u2 + 30 = 40, hence u2 = 10.
4. Since u2 + vj = c2j for occupied cells in row 2, then
10 + v3 = 42, hence v3 = 32.N5 /+4
Example: BBCaIteration 1
MODI Method (continued)
Calculate the reduced costs (circled numbers on the next slide) by cij - ui + vj.
Unoccupied Cell Reduced Cost
(1,3) 40 - 0 - 32 = 8
(2,1) 30 - 24 -10 = -4
(2,4) 0 - 10 - 0 = -10>F
Example: BBCIteration 1 Tableau
Example: BBCIteration 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 = 0 + 20 = 20 (0 is its current allocation)
x14 = 20 - 20 = 0 (blank for the next tableau)
x12 = 5 + 20 = 25
x22 = 40 - 20 = 20
The other occupied cells remain the same.<<G>Example: BBC
Example: BBCIteration 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 u2 + 30 = 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.7/+7
Example: BBC`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) 40 - 0 - 32 = 8
(1,4) 0 - 0 - (-10) = 10
(2,1) 30 - 10 - 24 = -4
=G
Example: BBCIteration 2 Tableau
Example: BBCOIteration 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 = 0 + 20 = 20 (0 is its current allocation)
x11 = 25 - 20 = 5
x12 = 25 + 20 = 45
x22 = 20 - 20 = 0 (blank for the next tableau)
The other occupied cells remain the same..7>h@
Example: BBC
Example: BBCIteration 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 u2 + 24 = 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. 3/
+3
Example: BBCUIteration 3
MODI Method (continued)
Calculate the reduced costs (circled numbers on the next slide) by cij - ui + vj.
Unoccupied Cell Reduced Cost
(1,3) 40 - 0 - 36 = 4
(1,4) 0 - 0 - (-6) = 6
(2,2) 40 - 6 - 30 = 4
2F
!
Example: BBC`Iteration 3 Tableau
Since all the reduced costs are non-negative, this is the optimal tableau.*MM"
Example: BBCSOptimal Solution
From To Amount Cost
Plant 1 Northwood 5 120
Plant 1 Westwood 45 1,350
Plant 2 Northwood 20 600
Plant 2 Eastwood 10 420
Total Cost = $2,490
C
##Assignment ProblemAn assignment problem seeks to minimize the total cost assignment of m workers to m jobs, given that the cost of worker i performing job j is cij.
It assumes all workers are assigned and each job is performed.
An assignment problem is a special case of a transportation problem in which all supplies and all demands are equal to 1; hence assignment problems may be solved as linear programs.
The network representation of an assignment problem with three workers and three jobs is shown on the next slide.0%qxX$Assignment ProblemNetwork Representation% Assignment ProblemRLinear Programming Formulation
Min SScijxij
i j
s.t. Sxij = 1 for each worker i
j
Sxij = 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.:AJ%)
$ &
%&(
BExample: Hungry Owner
d 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.
Project
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 distance (and total cost)?pe
6*CExample: Hungry Owner
Network Representation
&
DExample: Hungry Owner
LP Formulation
Decision Variables Defined
xij = 1 if subcontractor i is assigned to project j
= 0 otherwise
where: i = 1 (Westside), 2 (Federated),
3 (Goliath), and 4 (Universal)
j = 1 (A), 2 (B), and 3 (C)
&UHExample: Hungry Owner
LP Formulation
Objective Function
Minimize total distance:
Min 50x11 + 36x12 + 16x13 + 28x21 + 30x22 + 18x23
+ 35x31 + 32x32 + 20x33 + 25x41 + 25x42 + 14x43
!EExample: Hungry Owner
LP Formulation
Constraints
x11 + x12 + x13 < 1 (no more than one
x21 + x22 + x23 < 1 project assigned
x31 + x32 + x33 < 1 to any one
x41 + x42 + x43 < 1 subcontractor)
x11 + x21 + x31 + x41 = 1 (each project must
x12 + x22 + x32 + x42 = 1 be assigned to just
x13 + x23 + x33 + x43 = 1 one subcontractor)
all xij > 0 (non-negativity)
u
#FExample: Hungry Owner
JOptimal Assignment
Subcontractor Project Distance
Westside C 16
Federated A 28
Universal B 25
Goliath (unassigned)
Total Distance = 69 miles d
8
G Variations of Assignment Problem!
!rTotal number of agents not equal to total number of tasks
Maximization objective function
Unacceptable assignmentss
s&!Hungarian MethodThe 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~K.
-z%q'"Hungarian MethodStep 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.| T b H% 0 c(#Hungarian MethodFinding 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.IQH $ S.)$Example: Hungry OwnerT 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?U5*|
B*%Example: Hungry Owner0Network Representation (note the dummy project)
"01+&Example: Hungry OwnerInitial 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
Goliath 35 32 20 0
Universal 25 25 14 0
(,'Example: Hungry OwnervStep 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
=:
(D-(Example: Hungry OwnermStep 3: Draw the minimum number of lines to cover all zeroes. Although one can "eyeball" this minimum, use the following algorithm. If a "remaining" row has only one zero, draw a line through the column. If a remaining column has only one zero in it, draw a line through the row.
A B C Dummy
Westside 25 11 2 0
Federated 3 5 4 0
Goliath 10 7 6 0
Universal 0 0 0 0
Step 4: The minimum uncovered number is 2 (circled).
,
7 /
/.)Example: Hungry OwnerStep 5: Subtract 2 from uncovered numbers; add 2 to all numbers covered by two lines. This gives:
A B C Dummy
Westside 23 9 0 0
Federated 1 3 2 0
Goliath 8 5 4 0
Universal 0 0 0 2
d' [
/*Example: Hungry OwnerStep 3: Draw the minimum number of lines to cover all zeroes.
A B C Dummy
Westside 23 9 0 0
Federated 1 3 2 0
Goliath 8 5 4 0
Universal 0 0 0 2
Step 4: The minimum uncovered number is 1 (circled).?6 A
-0+Example: Hungry OwnerrStep 5: Subtract 1 from uncovered numbers. Add 1 to numbers covered by two lines. This gives:
A B C Dummy
Westside 23 9 0 1
Federated 0 2 1 0
Goliath 7 4 3 0
Universal 0 0 0 3
a X
1,Example: Hungry OwnerStep 4: The minimum number of lines to cover all 0's is four. Thus, there is a minimum-cost assignment of 0's with this tableau. The optimal assignment is:
Subcontractor Project Distance
Westside C 16
Federated A 28
Goliath (unassigned)
Universal B 25
Total Distance = 69 miles
%2-Transshipment ProblemTransshipment problems are transportation problems in which a shipment may move through intermediate nodes (transshipment nodes)before reaching a particular destination node.
Transshipment problems can be converted to larger transportation problems and solved by a special transportation program.
Transshipment problems can also be solved by general purpose linear programming codes.
The network representation for a transshipment problem with two sources, three intermediate nodes, and two destinations is shown on the next slide.3.Transshipment ProblemNetwork Representation4/Transshipment ProblemLinear Programming Formulation
xij represents the shipment from node i to node j
Min SScijxij
i j
s.t. Sxij < si for each source i
j
Sxik - Sxkj = 0 for each intermediate
i j node k
Sxij = dj for each destination j
i
xij > 0 for all i and j5yAA# 5
50Example: Transshipping Thomas Industries and Washburn Corporation supply three firms (Zrox, Hewes, Rockwright) with customized shelving for its offices. They both order shelving from the same two manufacturers, Arnold Manufacturers and Supershelf, Inc.
Currently weekly demands by the users are 50 for Zrox, 60 for Hewes, and 40 for Rockwright. Both Arnold and Supershelf can supply at most 75 units to its customers.
Additional data is shown on the next slide. 61Example: Transshipping Because of long standing contracts based on past orders, unit costs from the manufacturers to the suppliers are:
Thomas Washburn
Arnold 5 8
Supershelf 7 4
The cost to install the shelving at the various locations are:
Zrox Hewes Rockwright
Thomas 1 5 8
Washburn 3 4 4u
b
q72Example: TransshippingNetwork Representation83Example: TransshippingLinear Programming Formulation
Decision Variables Defined
xij = amount shipped from manufacturer i to supplier j
xjk = amount shipped from supplier j to customer k
where i = 1 (Arnold), 2 (Supershelf)
j = 3 (Thomas), 4 (Washburn)
k = 5 (Zrox), 6 (Hewes), 7 (Rockwright)
Objective Function Defined
Minimize Overall Shipping Costs:
Min 5x13 + 8x14 + 7x23 + 4x24 + 1x35 + 5x36 + 8x37
+ 3x45 + 4x46 + 4x47r}$
0-'094Example: TransshippingConstraints Defined
Amount Out of Arnold: x13 + x14 < 75
Amount Out of Supershelf: x23 + x24 < 75
Amount Through Thomas: x13 + x23 - x35 - x36 - x37 = 0
Amount Through Washburn: x14 + x24 - x45 - x46 - x47 = 0
Amount Into Zrox: x35 + x45 = 50
Amount Into Hewes: x36 + x46 = 60
Amount Into Rockwright: x37 + x47 = 40
Non-negativity of Variables: xij > 0, for all i and j.!$"!**'
I@Solving the transshipment problem using transportation algorithmAA@FSupply point: is a point that can send goods to another point but can not receive goods from any other point
Demand point: is a point that can receive goods form other points but cannot send goods to any other point.
Transshipment point: is a point that can both receive goods from other points and send goods to other points RG a ` [ FJ@Solving the transshipment problem using transportation algorithmAA@a transshipment problem can be transformed to a balanced transportation problem by using the following procedure:
Step 1: if necessary, add a dummy demand point or a dummy supply point as needed
Step 2: construct a transportation tableau as follows:
A row in the tableau will be needed for each supply point and transshipment point.
A column will be needed for each demand point and transshipment point
Each supply point will have a supply equal to its original supply, and each demand point will have a demand equals to its original demand.
each transshipment point will have
supply = its original supply + total available supply, and
demand = its original demand + total available supply
Then the problem can be solved as a transportation problem xrZZJZ}ZAZrJ}AKExample: transshippingVThe balanced transportation tableau for the transshipment problem will be as follows:
"VZZWV:5The End of Chapter 7/t<=>?@ACD E
FGH
IJKLMNOPQRSTUVWXYZ[ \!]"^#_$`%a&b'c(d)e*f+g,h-i.j/k0l1m2n3o4p5789:;<=PC
0L0RJ`( `yT
3r=xaxa1 ?3
>
3r>xaxa1 ?
$=
" @`PpH
0h ? aa`iy___PPT10Y+D=' F
=
@B +-
0L0<4 (
3r'Bxaxa1 ?
B
3r+Bxaxa1 ?
B
H
0h ? aa`iy___PPT10Y+D=' F
=
@B +-
0L0<4((
(
( 3r
pxaxa1 ?
p
( 3rpxaxa1 ?
u (p
H
(0h ? aa`iy___PPT10Y+D=' F
=
@B +
0L00(
x
c$PP3
x
c$HZ
H7
H
0h ? Pa`i___PPT10i. F+D=' F
=
@B +
0L0F(
x
c$xP3
c$ȩ
H7
" @`PpH
0h ? Pa`i___PPT10i.@>r+D=' F
=
@B +
0L0 '(
x
c$P3
x
c$
L '
#|lu
Z@}p>>1?&
\Supplyhh88
Zt>>>1?KS
X30hh88
Z@>>1?.
6
X50hh88
T111?
625
Tt111?
625x
H111?
x
H111?
TL111?
620
T@111?
610
#l>>>111?
Z35hh88
#l>>111?
Z20hh88
#l>>111?'
Z40hh88
#l>>111?'
Z30hh88
#lg>>111?
Z30hh88
Z>>1?'
\Demandhh88
Zg>>1?'
X10hh88
Zlg>>1?&j'
X45hh88
Z g>>1?'
X25hh88
Z`*g>>1?.
6
XS1hh88
Z3g>>1?KS
XS2hh88
ZEg>>1?
XD3hh88
ZFg>>1?&
XD2hh88
ZPg>>1?
XD1hh88
#lZg>>111?
Z15hh88^B
6D1?
^B
6D1?
^B
6D1?g
<cg1?#I j
ITotal cost is $2275 2H
0h ? Pa`i___PPT10i.ojd+D=' F
=
@B +-
0L0<4H( xa
H
H 3r_xaxa1 ?P3
H 3r\`xaxa1 ?
H7
H
H0h ? aa`iy___PPT10Y+D=' F
=
@B +-
0L0<4X( |=
X
X 3r`Oxaxa1 ?P3
X 3r8Pxaxa1 ?
H7
H
X0h ? aa`iy___PPT10Y+D=' F
=
@B +
0L0\$(
\
\ 3rUxaxa1 ?P3
\ 3rLVxaxa1 ?
H7
P
\
< \1?XMh`X___PPT9:2@
tSince some of the reduced cost are negative, the current solution is not optimal.
Cell (2,4) has the most negative; therefore, it will be the basic variable that must be occupied in the next iteration.Z 2Q'x',QxH
\0h ? aa`iy___PPT10Y+D=' F
=
@B +"
0L0 ""%'` !(
`
` 3r$kxaxa1 ?P3
` 3rkxaxa1 ?
H7
F b
'`#v
`
3r4pxaxa111?bw
I25 &
`
3r vxaxa111?bw
<5
`
3rHtxaxa111?w
A -4
`
3r\}xaxa111?bw
A +8
`
3r8xaxa111?wbw
?20
`
3rxaxa111?w
?40
`
3rxaxa111?w
?10
`
3řxaxa111?ww
B
-10
`
3rh>>111?ww
Z42hh88
`
3r>>111?bw
Z40hh88
`
3r,>>111?b
Y0hh88
`
3r>>111?w
Y0hh88
`
3r>>111?
w
Z40hh88
`
3r>>111?
b
Z30hh88
`
3rɢ>>111?+w
Z30hh88
`
`xѢ>>1?R
`
hvj,
hh88
`
`ܢ>>1?
;
hui,
hh88
`
`>>1?
X10hh88
`
` >>1?
X 0hh88
`
`>>1?
W0hh88
`
`,>>1?*
n
X32hh88
`
`x>>1?
X30hh88
`
`>>1?"
f
X24hh88
`
` >>1?*2
[Dummyhh88
`
`)>>1?b
]Plant 1hh88
`
`2>>1?b
]Plant 2hh88
`
`<>>1?:*2
^Eastwood hh88
`
`F>>1?*2
^Westwood hh88
`
`X>>1?*2
_ Northwood
hh88
!`
3r ?@ABCDEFGHIJKLMNOPOh+'0
,
P\h
tdecision analysisJohn S. Loucks IVD:\MS9ppt\Ms9ch15.pptwww61Microsoft PowerPoint 4.0@Pˆ?@@DO,@6?G4 g 7y--$xx--'"Arial-. 2
v1."System(7-"Arial-. 2
v1.-@Book Antiqua-. 2
vSlide.-@Book Antiqua-. 2
vSlide.-@Book Antiqua-. *2
Dr. Mohamed Abdel Salam).. *2
Dr. Mohamed Abdel Salam).-@Book Antiqua-. +2
4'Operations Research (OR).. +2
3&Operations Research (OR).-@Book Antiqua-. 2
HA Chapter 8.. 2
G@ Chapter 8.-@Book Antiqua-. 72
Q Transportation, Assignment, and .. 72
P Transportation, Assignment, and .-@Book Antiqua-. (2
Y-Transshipment Problems.. (2
X,Transshipment Problems.-՜.+,0
vOn-screen ShowyD;he Stepping Stone, by using the MODI method for evaluating the reduced costs may be used to move from the initial feasible solution to the optimal one.J6XB6X y<Initial TableauThere are many method for finding the initial tableau for the transportation problem which are:
Northwest corner
Minimum cost of the row
Minimum cost of the column
Least cost
Vogle s approximation method
Russell s approximation methodR`n`3<=Northwest cornerUNorthwest corner: Begin by selecting X11 (that is, start in the northwest corner of the transportation tableau). Therefore, if Xij was the last basic variable (occupied cell) selected, then select Xij+1 (that is, move one column to the right) if source I has any supply remaining. Otherwise, next select Xi+1 j (that is, move one row down).
~U&XDg $TTransportation AlgorithmPhase I - Minimum-Cost Method
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.
f ~ 9Transportation AlgorithmPPhase 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. \!X!
Transportation AlgorithmPhase 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.D-- tTransportation Algorithm5MODI 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.*A* Example: BBC' 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 1 24 30 40
Plant 2 30 40 42
J(z Example: BBCInitial Transportation Tableau
Since total supply = 100 and total demand = 80, a dummy destination is created with demand of 20 and 0 unit costs.
*xxExample: BBC>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.`!+*000P\?Example: BBCInitial tableau
Example: BBCLIteration 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 u2 + 30 = 40, hence u2 = 10.
4. Since u2 + vj = c2j for occupied cells in row 2, then
10 + v3 = 42, hence v3 = 32.N5 /+4
Example: BBCaIteration 1
MODI Method (continued)
Calculate the reduced costs (circled numbers on the next slide) by cij - ui + vj.
Unoccupied Cell Reduced Cost
(1,3) 40 - 0 - 32 = 8
(2,1) 30 - 24 -10 = -4
(2,4) 0 - 10 - 0 = -10>F
Example: BBCIteration 1 Tableau
Example: BBCIteration 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 = 0 + 20 = 20 (0 is its current allocation)
x14 = 20 - 20 = 0 (blank for the next tableau)
x12 = 5 + 20 = 25
x22 = 40 - 20 = 20
The other occupied cells remain the same.<<G>Example: BBC
Example: BBCIteration 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 u2 + 30 = 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.7/+7
Example: BBC`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) 40 - 0 - 32 = 8
(1,4) 0 - 0 - (-10) = 10
(2,1) 30 - 10 - 24 = -4
=G
Example: BBCIteration 2 Tableau
Example: BBCOIteration 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 = 0 + 20 = 20 (0 is its current allocation)
x11 = 25 - 20 = 5
x12 = 25 + 20 = 45
x22 = 20 - 20 = 0 (blank for the next tableau)
The other occupied cells remain the same..7>h@
Example: BBC
Example: BBCIteration 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 u2 + 24 = 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. 3/
+3
Example: BBCUIteration 3
MODI Method (continued)
Calculate the reduced costs (circled numbers on the next slide) by cij - ui + vj.
Unoccupied Cell Reduced Cost
(1,3) 40 - 0 - 36 = 4
(1,4) 0 - 0 - (-6) = 6
(2,2) 40 - 6 - 30 = 4
2F
!
Example: BBC`Iteration 3 Tableau
Since all the reduced costs are non-negative, this is the optimal tableau.*MM"
Example: BBCSOptimal Solution
From To Amount Cost
Plant 1 Northwood 5 120
Plant 1 Westwood 45 1,350
Plant 2 Northwood 20 600
Plant 2 Eastwood 10 420
Total Cost = $2,490
C
##Assignment ProblemAn assignment problem seeks to minimize the total cost assignment of m workers to m jobs, given that the cost of worker i performing job j is cij.
It assumes all workers are assigned and each job is performed.
An assignment problem is a special case of a transportation problem in which all supplies and all demands are equal to 1; hence assignment problems may be solved as linear programs.
The network representation of an assignment problem with three workers and three jobs is shown on the next slide.0%qxX$Assignment ProblemNetwork Representation% Assignment ProblemRLinear Programming Formulation
Min SScijxij
i j
s.t. Sxij = 1 for each worker i
j
Sxij = 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.:AJ%)
$ &
%&(
BExample: Hungry Ownerd 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.
Project
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 distance (and total cost)?ne6*CExample: Hungry OwnerNetwork Representation
"DExample: Hungry OwnerLP Formulation
Decision Variables Defined
xij = 1 if subcontractor i is assigned to project j
= 0 otherwise
where: i = 1 (Westside), 2 (Federated),
3 (Goliath), and 4 (Universal)
j = 1 (A), 2 (B), and 3 (C) &UHExample: Hungry OwnerLP Formulation
Objective Function
Minimize total distance:
Min 50x11 + 36x12 + 16x13 + 28x21 + 30x22 + 18x23
+ 35x31 + 32x32 + 20x33 + 25x41 + 25x42 + 14x43
!EExample: Hungry OwnerLP Formulation
Constraints
x11 + x12 + x13 < 1 (no more than one
x21 + x22 + x23 < 1 project assigned
x31 + x32 + x33 < 1 to any one
x41 + x42 + x43 < 1 subcontractor)
x11 + x21 + x31 + x41 = 1 (each project must
x12 + x22 + x32 + x42 = 1 be assigned to just
x13 + x23 + x33 + x43 = 1 one subcontractor)
all xij > 0 (non-negativity)
u#FExample: Hungry OwnerJOptimal Assignment
Subcontractor Project Distance
Westside C 16
Federated A 28
Universal B 25
Goliath (unassigned)
Total Distance = 69 miles `8
G Variations of Assignment ProblemrTotal number of agents not equal to total number of tasks
Maximization objective function
Unacceptable assignmentsss&!Hungarian MethodThe 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~K.
-z%q'"Hungarian MethodStep 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.| T b H% 0 c(#Hungarian MethodFinding 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.IQH $ S.)$Example: Hungry OwnerT 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?U5*|
B*%Example: Hungry Owner0Network Representation (note the dummy project)
"01+&Example: Hungry OwnerInitial 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
Goliath 35 32 20 0
Universal 25 25 14 0
(,'Example: Hungry OwnervStep 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
=:
(D-(Example: Hungry OwnermStep 3: Draw the minimum number of lines to cover all zeroes. Although one can "eyeball" this minimum, use the following algorithm. If a "remaining" row has only one zero, draw a line through the column. If a remaining column has only one zero in it, draw a line through the row.
A B C Dummy
Westside 25 11 2 0
Federated 3 5 4 0
Goliath 10 7 6 0
Universal 0 0 0 0
Step 4: The minimum uncovered number is 2 (circled).
,
7 /
/.)Example: Hungry OwnerStep 5: Subtract 2 from uncovered numbers; add 2 to all numbers covered by two lines. This gives:
A B C Dummy
Westside 23 9 0 0
Federated 1 3 2 0
Goliath 8 5 4 0
Universal 0 0 0 2
d' [
/*Example: Hungry OwnerStep 3: Draw the minimum number of lines to cover all zeroes.
A B C Dummy
Westside 23 9 0 0
Federated 1 3 2 0
Goliath 8 5 4 0
Universal 0 0 0 2
Step 4: The minimum uncovered number is 1 (circled).?6 A
-0+Example: Hungry OwnerrStep 5: Subtract 1 from uncovered numbers. Add 1 to numbers covered by two lines. This gives:
A B C Dummy
Westside 23 9 0 1
Federated 0 2 1 0
Goliath 7 4 3 0
Universal 0 0 0 3
a X
1,Example: Hungry OwnerStep 4: The minimum number of lines to cover all 0's is four. Thus, there is a minimum-cost assignment of 0's with this tableau. The optimal assignment is:
Subcontractor Project Distance
Westside C 16
Federated A 28
Goliath (unassigned)
Universal B 25
Total Distance = 69 miles
%2-Transshipment ProblemTransshipment problems are transportation problems in which a shipment may move through intermediate nodes (transshipment nodes)before reaching a particular destination node.
Transshipment problems can be converted to larger transportation problems and solved by a special transportation program.
Transshipment problems can also be solved by general purpose linear programming codes.
The network representation for a transshipment problem with two sources, three intermediate nodes, and two destinations is shown on the next slide.3.Transshipment ProblemNetwork Representation4/Transshipment ProblemLinear Programming Formulation
xij represents the shipment from node i to node j
Min SScijxij
i j
s.t. Sxij < si for each source i
j
Sxik - Sxkj = 0 for each intermediate
i j node k
Sxij = dj for each destination j
i
xij > 0 for all i and j5yAA# 5
50Example: Transshipping Thomas Industries and Washburn Corporation supply three firms (Zrox, Hewes, Rockwright) with customized shelving for its offices. They both order shelving from the same two manufacturers, Arnold Manufacturers and Supershelf, Inc.
Currently weekly demands by the users are 50 for Zrox, 60 for Hewes, and 40 for Rockwright. Both Arnold and Supershelf can supply at most 75 units to its customers.
Additional data is shown on the next slide. 61Example: Transshipping Because of long standing contracts based on past orders, unit costs from the manufacturers to the suppliers are:
Thomas Washburn
Arnold 5 8
Supershelf 7 4
The cost to install the shelving at the various locations are:
Zrox Hewes Rockwright
Thomas 1 5 8
Washburn 3 4 4u
b
q72Example: TransshippingNetwork Representation83Example: TransshippingLinear Programming Formulation
Decision Variables Defined
xij = amount shipped from manufacturer i to supplier j
xjk = amount shipped from supplier j to customer k
where i = 1 (Arnold), 2 (Supershelf)
j = 3 (Thomas), 4 (Washburn)
k = 5 (Zrox), 6 (Hewes), 7 (Rockwright)
Objective Function Defined
Minimize Overall Shipping Costs:
Min 5x13 + 8x14 + 7x23 + 4x24 + 1x35 + 5x36 + 8x37
+ 3x45 + 4x46 + 4x47r}$
0-'094Example: TransshippingConstraints Defined
Amount Out of Arnold: x13 + x14 < 75
Amount Out of Supershelf: x23 + x24 < 75
Amount Through Thomas: x13 + x23 - x35 - x36 - x37 = 0
Amount Through Washburn: x14 + x24 - x45 - x46 - x47 = 0
Amount Into Zrox: x35 + x45 = 50
Amount Into Hewes: x36 + x46 = 60
Amount Into Rockwright: x37 + x47 = 40
Non-negativity of Variables: xij > 0, for all i and j.!$"!**'
I@Solving the transshipment problem using transportation algorithmAAFSupply point: is a point that can send goods to another point but can not receive goods from any other point
Demand point: is a point that can receive goods form other points but cannot send goods to any other point.
Transshipment point: is a point that can both receive goods from other points and send goods to other points RG a ` [ J@Solving the transshipment problem using transportation algorithmAAa transshipment problem can be transformed to a balanced transportation problem by using the following procedure:
Step 1: if necessary, add a dummy demand point or a dummy supply point as needed
Step 2: construct a transportation tableau as follows:
A row in the tableau will be needed for each supply point and transshipment point.
A column will be needed for each demand point and transshipment point
Each supply point will have a supply equal to its original supply, and each demand point will have a demand equals to its original demand.
each transshipment point will have
supply = its original supply + total available supply, and
demand = its original demand + total available supply
Then the problem can be solved as a transportation problem xrZZJZ}ZAZrJ}AKExample: transshippingVThe balanced transportation tableau for the transshipment problem will be as follows:
"VZZW:5The End of Chapter 7/t<=>?@ACD E
FGH
IJKLMNOPQRSTUVWXYZ[ \!]"^#_$`%a&b'c(d)e*f+g,h-i.j/k0l1m2n3o4p5789:;<=P
50L0`(
3r8xaxa1 ?P3
v"
NG.
p?
B#CDEF$18c8c?w""Nw@`
JH
0h ? aa`iy___PPT10Y+D=' {=
@B +r},:JY,1Root EntrydO)N{O9Current UserQ/SummaryInformation(
PowerPoint Document(%
!"#$%&'()*+,-./01234567:;<=>@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{}~&
?'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}
!"#$%&'()*+-./0123456789:;<=>?@ABCDEFGHIJKLMNOPD 2
G@ Chapter 8._ahmadahmadtiqua-. 72
Q Transportation, Assignment, and .. 72
P Transportation, Assignment, and .-@Book Antiqua-