Escolar Documentos
Profissional Documentos
Cultura Documentos
Retailer i pays Ki dollars for every order, hi dollars per item per day for
holding inventory on site, h0 dollars per item per day for holding inventory
at the warehouse
1 of 18
Decision variables: Inventory profiles in time Ii(t) for every retailer and
I0(t) for the warehouse
2 of 18
Optimal profiles can be very complicated
Still a little too involved, so we restrict our options further to policies where
each Ti is an integer multiple of a common base cycle time:
3 of 18
Power-of-two (POT) Objective Function
4 of 18
3. Holding cost @warehouse:
Case 1 (T0 ≤ Ti): If the warehouse orders more frequently than retailer i
(i.e., T0 ≤ Ti) then the warehouse never holds inventory for i and therefore
the cost is zero.
Case 2 (T0 > Ti): Otherwise, the warehouse will hold inventory for i for a
number of cycles equal to ni = T0/Ti until the warehouse reorders again.
To minimise holding costs at the warehouse, the warehouse must order no
more than what retailer i will need over that time; i.e., niλiTi
ni
X 1 1
(ni − k)h0λiTi2 2
= ni(ni − 1)h0λiTi ≡ (ni − 1)h0λiTiT0
2 2
k=1
5 of 18
Total (retailer+warehouse) holding cost over T0 days:
(
1 2
2 ni λi hi Ti , Ti ≥ T0
1 2 1
2 n i λ i hi Ti + 2 ni (ni − 1)h0λiTi2, T0 > Ti
(
1
2 λi hi Ti T0 , Ti ≥ T0
= 1
2 λi (hi − h0 )Ti T0 + 12 h0λiT02, T0 > Ti
(
1
2 λi (hi − h0)TiT0 + 12 h0λiTiT0, Ti ≥ T0
= 1
2 λi (hi − h0)TiT0 + 12 h0λiT02, T0 > Ti
1 1
= λi(hi − h0)TiT0 + h0λiT0 max{T0, Ti}
2 2
6 of 18
Final POT average cost:
m
X Ki K0 + 12 λi(hi − h0)TiT0 + 21 h0λiT0 max{T0, Ti}
+
i=1
Ti T0
m
K0 X Ki 1 1
= + + (hi − h0)λiTi + λih0 max{T0, Ti}
T0 T
i=1 i
2 2
7 of 18
Final Optimisation Problem
m
K0 X Ki 1 1
minimise + + (hi − h0)λiTi + λih0 max{T0, Ti}
T0 T
i=1 i
2 2
subject to Ti = 2ri TB , ∀i ∈ {0, . . . , m}
Ti > 0, ∀i ∈ {0, . . . , m}
ri ∈ Z+, ∀i ∈ {0, . . . , m}
TB > 0
8 of 18
Let us relax all POT constraints and solve:
m
K0 X Ki 1 1
minimise + + (hi − h0)λiTi + λih0 max{T0, Ti}
T0 T
i=1 i
2 2
subject to Ti > 0, ∀i ∈ {0, . . . , m}
9 of 18
We use the following notation:
• z ∗ = optimal value over arbitrary policies
• zpot = optimal value over POT policies
• zrelaxed = optimal value of relaxed POT problem
• zrounded = objective value of rounded POT policy
Lemma 1.
The relaxed POT problem is a convex program that can be solved in O(n)
time.
Lemma 2.
zrelaxed ≤ z ∗.
Lemma 3.
The solution of the relaxed problem can be rounded to a feasible POT
solution with objective zrounded such that zrounded ≤ 1.02zrelaxed if TB is
optimised.
10 of 18
Theorem 1. The rounded POT solution is a 2%-approximate solution for
the original problem.
Proof.
11 of 18
Warehouse-Retailer Network Design
Goal: Decide which warehouses to open, assign each retailer to exactly one
open warehouse and determine retailer and warehouse reorder policies so
that total operation, transportation, reorder and holding costs are minimised.
12 of 18
Suppose a set of retailers S ⊆ {1, . . . , m} are assigned to retailer j. Then
the average cost of this assignment is the cost of the optimal (arbitrary)
policy plus operation and transport costs.
Ki
cS,j ≈ min{ K + 12 (hi − h0)λiTi + 21 λih0 max{T0, Ti} : Ti > 0, ∀i}
0
P
T0 + i∈S Ti
X
+ Fj + vij
i∈S
X
,I(S, j) + Fj + vij
i∈S
13 of 18
The problem can be (2%-approximately) modelled as a set-partitioning
integer program:
n
X X
min cS,j xS,j
j=1 S∈2[n] \∅
n X
X
s.t. xS,j = 1, ∀i ∈ [n]
j=1 S:i∈S
14 of 18
Algorithm: Column Generation
1. Start with arbitrary basis (e.g., the Euclidean basis for one warehouse).
2. In each iteration:
(a) Solve the LP with the current set of columns and associated variables,
and find the dual variables u. P
(b) Find a column S, j (variable) with negative reduced cost cS,j − i∈S ui.
If no such column exists, terminate and output the current solution as
optimal.
(c) Otherwise, add the variable and associated column to the problem and
go back to (2a).
15 of 18
Obstacle: Exponentially-many columns; how to efficiently find a column
with negative reduced cost?
Lemma 4.
A column with negative reduced cost can be found (if one exists) in
O(mn log n) time.
16 of 18
Example with m = 5 and n = 3:
Warehouses Retailers
K h F K h λ
1 1 6 3 1 4 12 2
2 2 8 4 2 3 9 2
3 5 3 2 3 4 12 8
4 2 16 4
5 4 18 3
Transportation v
1 2 3 4 5
1 5 1 13 5 1
2 2 10 6 4 4
3 1 7 4 2 3
17 of 18
Initial Basis Warehouse cS,j
1 0 0 0 0 1 23.4919
0 1 0 0 0 1 16.0000
0 0 1 0 0 1 46.9839
0 0 0 1 0 1 27.5959
0 0 0 0 1 1 27.2379
Iteration Column Added Warehouse cS,j
1 1 1 1 1 1 1 120.362
2 1 0 1 1 0 3 80.2523
3 1 1 1 0 1 1 99.0172
4 1 1 0 0 1 1 57.4866
5 0 1 1 0 1 1 80.1608
6 0 1 1 1 1 1 101.5056
7 0 1 0 0 1 1 38.6302
8 1 0 1 0 0 2 59.7975
18 of 18