Chapter 1 Strategic Problems: Location
Dec 15, 2015
Chapter 1
Strategic Problems: Location
QEM - Chapter 1
Location problems
Full truck loadtransportation
…CW1 CW2Central warehouse
FTL or tourstransportation
…DC1 DC2 DC3 DC4Distribution centers
tourstransportation
…C1 C2 C3 C4customers
…PS1 PS2 PS3 PS4Production site
(c) Prof. Richard F. Hartl Kapitel 3 / 2
QEM - Chapter 1
More levels possible (regional warehouses)
Can be delegated to logistics service providers
Decision problems Number and types of warehouses Location of warehouses Transportation problem (assignment of customers)
(c) Prof. Richard F. Hartl Kapitel 3 / 3
QEM - Chapter 1
Median Problem
Simplest location problem Represent in complete graph. Nodes i are customers with weights bi
Choose one node as location of warehouse Minimize total weighted distance from warehouse
Definition: Median directed graph (one way streets…):
σ(i) = ∑dijbj → min.
undirected graph:σout(i) = ∑dijbj → min … out median
σin(i) = ∑djibj → min … in median
(c) Prof. Richard F. Hartl Kapitel 3 / 4
QEM - Chapter 1
Example: fromDomschke und Drexl (Logistik: Standorte, 1990, Kapitel 3.3.1)
0 12 2 10 6 12
2 0 3 3 7 5
12 10 0 8 4 10
4 2 5 0 5 2
8 6 9 4 0 6
11 9 12 7 3 0
2/0
1/4
3/2
4/3
5/1
6/2
22 2
2
3
3
3
4
4
5
D=
4
0
2
3
1
2
b=
(c) Prof. Richard F. Hartl Kapitel 3 / 5
Distance betweenlocations
weight
QEM - Chapter 1
Example: Median
i\j 1 2 3 4 5 6 i/j 1 2 3 4 5 6
OUT e.g: emergency delivery of goods IN e.g.: collection of hazardous waste
4*0 0*12 2*2 3*10 6*1 2*12 64
4*12 0*10 2*0 3*8 4*1 2*10 96
4*4 0*2 2*5 3*0 5*1 2*2 35
4*8 0*6 2*9 3*4 0*1 2*6 74
4*11 0*9 2*12 3*7 3*1 2*0 92
4*2 0*0 2*3 3*3 7*1 2*5 40
66
2*12
3*4
1*8
2*11
0*2
4*0
98
2*10
3*2
1*6
2*9
0*0
4*12
56
2*0
3*5
1*9
2*12
0*3
4*2
74
2*8
3*0
1*4
2*7
0*3
4*10
53
8
15
0
6
0
24
80
20
6
6
0
0
481
3
4
5
6
2
σout(i)
1
3
4
5
6
2
σin(i)City 4 is median since 35+74 = 109 minimal
(c) Prof. Richard F. Hartl Kapitel 3 / 6
QEM - Chapter 1
Related Problem: Center
Median Node with min total weighted distance
→ min.
Center Node with min Maximum (weighted) Distance
→ min.
j
jijbd (i)
jijj
bdmax (i)
(c) Prof. Richard F. Hartl Kapitel 3 / 7
QEM - Chapter 1
24
8
15
0
6
0
24
Solution
i\j 1 2 3 4 5 6 i/j 1 2 3 4 5 6
4*0 0*12 2*2 3*10 6*1 2*12 30
4*12 0*10 2*0 3*8 4*1 2*10 48
4*4 0*2 2*5 3*0 5*1 2*2 16
4*8 0*6 2*9 3*4 0*1 2*6 32
4*11 0*9 2*12 3*7 3*1 2*0 44
4*2 0*0 2*3 3*3 7*1 2*5 10
24
2*12
3*4
1*8
2*11
0*2
4*0
48
2*10
3*2
1*6
2*9
0*0
4*12
24
2*0
3*5
1*9
2*12
0*3
4*2
40
2*8
3*0
1*4
2*7
0*3
4*10
48
20
6
6
0
0
481
3
4
5
6
2
out(i)
1
3
4
5
6
2
in(i)City1 is center since 30+24 = 54 minimal
(c) Prof. Richard F. Hartl Kapitel 3 / 8
QEM - Chapter 1
Uncapacitated (single-stage) Warehouse Location Problem – LP-Formulation
single-stage WLP: warehouse
customer:
W1 W2 m
C1 C2 C3 C4 n
Deliver goods to n customers each customer has given demand Exist: m potential warehouse locations Warhouse in location i causes fixed costs fi
Transportation costs i j are cij if total demand of j comes from i.
(c) Prof. Richard F. Hartl Kapitel 3 / 9
QEM - Chapter 1
Problem:
How many warehouses?(many/few high/low fixed costs, low/high transportation costs
Where?
Goal:
Satisfy all demand
minimize total cost (fixed + transportation)
transportation to warehouses is ignored
(c) Prof. Richard F. Hartl Kapitel 3 / 10
QEM - Chapter 1
Example: from Domschke & Drexl (Logistik: Standorte, 1990, Kapitel 3.3.1)
Solution 1: all warehouses
i\j 1 2 3 4 5 6 7 fi
1 1 2 10 9 6 7 3 5
2 2 9 0 7 3 6 10 7
3 7 6 1 5 3 10 5 5
4 6 5 10 2 6 3 6 6
5 6 4 6 3 7 2 6 5
i\j 1 2 3 4 5 6 7 fi
1 1 2 10 9 6 7 3 5
3 7 6 1 5 3 10 5 5
Fixed costs = 5+7+5+6+5 = 28 high
Transp. costs = 1+2+0+2+3+2+3 = 13
Total costs = 28 + 13 = 41
Fixed costs = 5+5 = 10
Transp. costs = 1+2+1+5+3+7+3 = 22
Total costs = 10 + 22 = 32
Solution 2: just warehouses 1 and 3
(c) Prof. Richard F. Hartl Kapitel 3 / 11
QEM - Chapter 1
Formulation as LP (MIP) yi … Binary variable for i = 1, …, m:
yi = 1 if location i is chosen for warehouse
0 otherwise
when locations are decided: transportation cost easy (closest location) Problem: 2m-1 possibilities (exp…)
xij … real „assignment“ oder transportation variable für i = 1, …,m and j = 1, …, n:
xij = fraction of demand of customer j devivered from location i.
(c) Prof. Richard F. Hartl Kapitel 3 / 12
QEM - Chapter 1
MIP for WLP
min ),(11 1
m
i
ii
m
i
n
j
ijij yfxcyxZ
miijx11
transportation cost+ fixed cost
Delivery only from locations i that are built
Satisfy total demand of customer j
yi is binary
xij non negative
xij ≤ yi
i = 1, …, m
j = 1, …,n
i = 1, …, mFor all i and j0
}1,0{
ij
i
x
y
j = 1, …,n
m
i
ijx1
1
(c) Prof. Richard F. Hartl Kapitel 3 / 13
QEM - Chapter 1
Problem:
m*n real Variablen und m binary → for a few 100 potential locations exact solution difficult → Heuristics
Heuristics: Construction or Start heuristics (find initial feasible solution)
Add Drop
Improvement heuristics (improve starting or incumbent solution)
(c) Prof. Richard F. Hartl Kapitel 3 / 14
QEM - Chapter 1
ADD for WLP
Notation:I:={1,…,m} set of all potential locations
I0 set of (finally) forbidden locations (y i = 0 fixed)
Iovl set of preliminary forbidden locations (y i = 0 tentaitively)
I1 set of included (built, realized) locations (y i =1 fixed)
reduction in transportation cost, if location i is built in addition to current loc.
Z total cost (objective)
i
(c) Prof. Richard F. Hartl Kapitel 3 / 15
QEM - Chapter 1
Initialzation:
Determine, which location to build if just one location is built:
row sum of cost matrix ci := ∑cij … transportation cost
choose location k with minimal cost ck + fk
set I1 = {k}, Iovl = I – {k} und Z = ck + fk … incumbent solution
compute savings of transportation cost ωij = max {ckj – cij, 0} for all locations i from Io
vl and all customers j as well as row sum ωi … choose maximum ωi
Example: first location k=5 with Z:= c5 + f5 = 39, I1 = {5}, Iovl = {1,2,3,4}
(c) Prof. Richard F. Hartl Kapitel 3 / 16
QEM - Chapter 1
i\j 1 2 3 4 5 6 7 fi ci fi + ci
1 1 2 10 9 6 7 3 5 38 43
2 2 9 0 7 3 6 10 7 37 44
3 7 6 1 5 3 10 5 5 37 42
4 6 5 10 2 6 3 6 6 38 44
5 6 4 6 3 7 2 6 5 34 39
i\j 1 2 3 4 5 6 7 ωi fi
1
2
3
4
ωij is saving in transportation cost when delivering to custonmer j, by opening additional location i.
→ row sum ωi is total saving in transportation cost when opening additional location i.
11
5 2 1 3
45 1
4 6 4
2 6
10 5
14 7
11 5
(c) Prof. Richard F. Hartl Kapitel 3 / 17
QEM - Chapter 1
Iteration:
in each iteration fix as built the location from Iovl, with the largest total saving:
},{11 kII Iovl = Io
vl – {k} and Z = Z – ωk + fk
Fild potential location k from Iovl, where saving in transportation cost minus
additional fixed cost ωk – fk is maximum.
Also, forbid all locations (finally) where saving in transportation cost are smaller than additional fixed costs
Update the savings in transpotrtation cost for all locations Iovl and all customers j :
ωij = max {ωij - ωkj, 0}
vlIi 0For all with ωi ≤ fi : }{ }{ 0000 iIIandiII vlvl
(c) Prof. Richard F. Hartl Kapitel 3 / 18
QEM - Chapter 1
Stiopping criterion: Stiop if no more cost saving are possible by additional locations from Io
vl
Build locationd from set I1.
Total cost Z assignment: xij = 1 iff
} { min 1 Ihcc hjij
i\j 1 2 3 4 5 6 7 ωi fi
1
2
3
4
Fix k = 2
Forbid i = 4
Beispiel: Iteration 1
Because of ω4 < f4 location 4 is forbidden finally. Location k=2 is built.
Now Z = 39 – 7 = 32 and Iovl = {1,3}, I1 = {2,5}, Io = {4}.
Update savings ωij.
4 6 4
1 1
5 2 1 3
5 4 1
11 5
14 7
10 5
2 6
(c) Prof. Richard F. Hartl Kapitel 3 / 19
QEM - Chapter 1
Iteration 2:
Location 3 is forbidden, location k = 1 is finally built.
i\j 1 2 3 4 5 6 7 ωi fi
1
3
Fix k = 1
Forbid i = 3
1 2 3
1
6 5
1 5
Ergebnis:
Final solution I1 = {1,2,5}, Io = {3,4} and Z = 32 – 1 = 31.
Build locations 1, 2 and 5 Customers {1,2,7} are delivered from location 1, {3,5} from location 2, and {4,6}
from location 5. Total cost Z = 31.
(c) Prof. Richard F. Hartl Kapitel 3 / 20
QEM - Chapter 1
DROP for WLP
Die Set Iovl is replaced by I1
vl.
I1vl set of preliminarily built locations (yi =1 tentatively)
DROP works the other way round compared to ADD, i.e. start with all locations temporarily built; in each iteration remove one location…
Initialisation: I1vl = I, I0
= I1 = { }
Iteration In each Iteration delete that location from I1
vl (finally), which reduces total cost most.
If deleting would let total cost increase, fix this location as built
(c) Prof. Richard F. Hartl Kapitel 3 / 21
QEM - Chapter 1
Expand matrix C: Row m+1 (row m+2) contains smallest ch1j (second smallest ch2j)
only consider locations not finally deleted → 0 Ii
i\j 1 2 3 4 5 6 7 δi fi
1 1 2 10 9 6 7 3 5
2 2 9 0 7 3 6 10 7
3 7 6 1 5 3 10 5 5
4 6 5 10 2 6 3 6 6
5 6 4 6 3 7 2 6 5
ch1j 6
ch2j 7
h1 8
h2 9
build
delete
Example: Initialisation and Iteration 1: I1vl ={1,2,3,4,5}
Row m+3 (row m+4) contains row number h1 (and h2) where smallest (second smallest) cost elemet occurs. If location h1 (from I1
vl) is dropped, transportation cost for customer Kunden j increase by ch2j - ch1j
5
1
0
1
1
2
1
4
5
0
2
1
3
2
4
3
5
3
2
3
3
2
5
3
4
3
1
5
32
2
1
1
(c) Prof. Richard F. Hartl Kapitel 3 / 22
QEM - Chapter 1
For all i from I1vl compute increase in transportation cost δi if I is finally dropped. δi
is sum of differences between smallest and second smallest cost element in rows where i = h1 contains the smallest element.
Iteration 2: I1
vl = {3,4,5}, I1 = {1}, I0
= {2}
Omit row 2 because finally dropped. Update remaining 4 rows, where changes are only possible where smallest or second smallest element occurred
Keep row 1 since I1 = {1}, but 1 is no candidate for dropping. Hence do not
compute δi there.
2 examples:
If fixed costs savings fi exceed additional transportation cost δi, finally drop i. In Iteration 1 location 1 is finally built.
δ1 = (c21 – c11) + (c52 – c12) + (c37 – c17) = 5 δ2 = (c33 – c23) + (c35 – c25) = 1
(c) Prof. Richard F. Hartl Kapitel 3 / 23
QEM - Chapter 1
i\j 1 2 3 4 5 6 7
1 1 2 10 9 6 7 3
3 7 6 1 5 3 10 5
4 6 5 10 2 6 3 6
5 6 4 6 3 7 2 6
δi fi
-
5
6
5
build
forbid
Location 3 is finally built, location 4 finally dropped.
ch1j
ch2j
h1
h2
2
1
4
5
1
3
6
5
2
4
3
5
3
3
6
1
2
5
3
4
3
1
5
34
6
1
1
-
8
1
1
(c) Prof. Richard F. Hartl Kapitel 3 / 24
QEM - Chapter 1
Iteration 3: I1
vl = {5}, I1 = {1,3}, I0 = {2,4}
Location 5 is finally built
i\j 1 2 3 4 5 6 7
1 1 2 10 9 6 7 3
3 7 6 1 5 3 10 5
5 6 4 6 3 7 2 6
δi fi
-
-
5 build
ch1j
ch2j
h1
h2
2
1
4
5
1
3
6
5
3
5
5
3
3
3
6
1
2
5
7
1
3
1
5
35
6
1
1
-
-
7
(c) Prof. Richard F. Hartl Kapitel 3 / 25
QEM - Chapter 1
Result:
Build locations I1 = {1,3,5}
Deliver customers {1,2,7} from 1, customers {3,5} from 3, and customers {4,6} from 5.
Total cost Z = 30 (slightly better than ADD – can be the other way round)
(c) Prof. Richard F. Hartl Kapitel 3 / 26
QEM - Chapter 1
Improvement for WLP
In each iteration you can do:
Replace a built location (from I1) by a forbidden location (from I0). Choose first improvement of best improvement
Using rules of DROP-Algorithm delete 1 or more locations, so that cost decrease most (or increase least) and then apply ADD as long as cost savings are possible.
Using rules of ADD-Algorithm add 1 or more locations, so that cost decrease most (or increase least) and then apply DROP as long as cost savings are possible.
(c) Prof. Richard F. Hartl Kapitel 3 / 27
P-Median
Number of facilities is fixed … p Typically fixed costs are not needed (but can be
considered if not uniform)
QEM - Chapter 1 28(c) Prof. Richard F. Hartl
QEM - Chapter 1
MIP for p-Median
min ),(1 1
m
i
n
j
ijijxcyxZ
miijx11
transportation cost+ fixed cost
Delivery only from locations i that are built
Satisfy total demand of customer j
yi is binary
xij non negative
xij ≤ yi
i = 1, …, m
j = 1, …,n
i = 1, …, mFor all i and j0
}1,0{
ij
i
x
y
j = 1, …,n
m
i
ijx1
1
(c) Prof. Richard F. Hartl Kapitel 3 / 29
Exactly p facilities
m
ii py
1