SLIDE 1 Decomposition for Network Design
Bernard Gendron∗ February 24, 2016
EPFL, Lausanne, Switzerland
∗ CIRRELT and D´
epartement d’informatique et de recherche op´ erationnelle, Universit´ e de Montr´ eal, Canada
SLIDE 2
Outline of lesson 2: Introduction to network design
Network design problems Multicommodity capacitated network design Multiperiod capacitated multifacility location
SLIDE 3 Network design
◮ Network with multiple commodities ◮ Each commodity flows between supply and demand points ◮ Minimization of a “complex” (non-convex) objective function
◮ Tradeoff between transportation and investment costs ◮ Transportation costs: not necessarily linear, can be piecewise
linear
◮ Investment costs: “fixed” cost for building, renting, operating
“facilities” at nodes or arcs of the network
◮ Additional constraints: budget, capacity, topology, reliability,... ◮ Variants:
◮ Centralized / Decentralized ◮ Static / Dynamic ◮ Determinist / Stochastic ◮ Strategic / Tactical / Operational
SLIDE 4 Infrastructure network design: strategic planning
◮ Planning horizon: years ◮ Decisions: invest in building roads, warehouses, plants,... ◮ Typical assumptions:
◮ Central control ◮ Static network ◮ Linear transportation costs ◮ Fixed costs for investment decisions ◮ Usually no capacities ◮ Known demands based on average values
◮ Robustness is an issue: stochastic demands?
SLIDE 5 Service network design: tactical planning
◮ Planning horizon: months ◮ Decisions: establish or not “services” (vehicles moving
between two points) + flows-inventories
◮ Dynamic network: space-time expansion
◮ Node = location-period ◮ Transportation arc = (location1-period1, location2-period2) =
moving from location1 to location2 in time (period2-period1)
◮ Inventory arc = (location-period, location-period+1) =
holding inventory at location between two consecutive periods
◮ Typical assumptions:
◮ Central control ◮ Linear inventory-transportation costs ◮ Fixed costs for service decisions ◮ Service capacities ◮ Known demands
SLIDE 6 Adaptive network design: operational planning
◮ Planning horizon: days ◮ Decisions: operate or not “facilities” (warehousing or parking
space) for fast product delivery + how many vehicles to use
◮ Typical assumptions:
◮ Central control ◮ Dynamic network ◮ Piecewise linear transportation costs ◮ Fixed costs for facility decisions ◮ Facility and vehicle capacities ◮ Known demands
SLIDE 7
Multicommodity capacitated network design
◮ Directed network G = (N, A), with node set N and arc set A ◮ Commodity set K: known demand dk between origin O(k)
and destination D(k) for each k ∈ K
◮ Unit transportation cost cij on each arc (i, j) ◮ Capacity uij on each arc (i, j) ◮ Cost fij for each capacity unit installed on arc (i, j)
SLIDE 8 Problem formulation
Z = min
cijdkxk
ij +
fijyij
i
xk
ij −
i
xk
ji =
1, i = O(k) − 1, i = D(k) 0, i = O(k), D(k) i ∈ N, k ∈ K
dkxk
ij ≤ uijyij
(i, j) ∈ A 0 ≤ xk
ij ≤ 1
(i, j) ∈ A, k ∈ K yij integer (i, j) ∈ A
SLIDE 9
Extensions
◮ Fixed-charge?
SLIDE 10
Extensions
◮ Fixed-charge? 0 ≤ yij ≤ 1
(i, j) ∈ A
◮ Asset-balance constraints?
SLIDE 11 Extensions
◮ Fixed-charge? 0 ≤ yij ≤ 1
(i, j) ∈ A
◮ Asset-balance constraints? j∈N+
i yij −
j∈N−
i yji = 0
i ∈ N
◮ Non-bifurcated flows?
SLIDE 12 Extensions
◮ Fixed-charge? 0 ≤ yij ≤ 1
(i, j) ∈ A
◮ Asset-balance constraints? j∈N+
i yij −
j∈N−
i yji = 0
i ∈ N
◮ Non-bifurcated flows? xk ij integer
(i, j) ∈ A, k ∈ K
◮ Multifacility design?
SLIDE 13 Extensions
◮ Fixed-charge? 0 ≤ yij ≤ 1
(i, j) ∈ A
◮ Asset-balance constraints? j∈N+
i yij −
j∈N−
i yji = 0
i ∈ N
◮ Non-bifurcated flows? xk ij integer
(i, j) ∈ A, k ∈ K
◮ Multifacility design? several facilities t ∈ Tij on each arc, each
with capacity ut
ij and cost f t ij ◮ Piecewise linear arc flow costs?
SLIDE 14
Capacitated facility location problem (CFLP)
◮ K: set of customers ◮ J: set of locations for potential facilities ◮ dk > 0: demand of customer k ◮ uj > 0: capacity at location j ◮ fj ≥ 0: fixed cost for opening facility at location j ◮ cjk ≥ 0: unit cost of satisfying the demand of customer k
from facility at location j
◮ Problem description: Determine the locations of the
facilities to satisfy customers’ demands at minimum cost, while respecting the capacity at each facility location
SLIDE 15
CFLP model
◮ yj: 1, if location j is chosen for a facility, 0, otherwise ◮ xjk: fraction of the demand dk of customer k satisfied from
facility at location j
SLIDE 16 CFLP model
◮ yj: 1, if location j is chosen for a facility, 0, otherwise ◮ xjk: fraction of the demand dk of customer k satisfied from
facility at location j min
dkcjkxjk +
fjyj
SLIDE 17 CFLP model
◮ yj: 1, if location j is chosen for a facility, 0, otherwise ◮ xjk: fraction of the demand dk of customer k satisfied from
facility at location j min
dkcjkxjk +
fjyj
xjk = 1, k ∈ K
SLIDE 18 CFLP model
◮ yj: 1, if location j is chosen for a facility, 0, otherwise ◮ xjk: fraction of the demand dk of customer k satisfied from
facility at location j min
dkcjkxjk +
fjyj
xjk = 1, k ∈ K
dkxjk ≤ ujyj, j ∈ J
SLIDE 19 CFLP model
◮ yj: 1, if location j is chosen for a facility, 0, otherwise ◮ xjk: fraction of the demand dk of customer k satisfied from
facility at location j min
dkcjkxjk +
fjyj
xjk = 1, k ∈ K
dkxjk ≤ ujyj, j ∈ J xjk ≤ yj, j ∈ J, k ∈ K
SLIDE 20 CFLP model
◮ yj: 1, if location j is chosen for a facility, 0, otherwise ◮ xjk: fraction of the demand dk of customer k satisfied from
facility at location j min
dkcjkxjk +
fjyj
xjk = 1, k ∈ K
dkxjk ≤ ujyj, j ∈ J xjk ≤ yj, j ∈ J, k ∈ K xjk ∈ [0, 1], j ∈ J, k ∈ K yj ∈ {0, 1}, j ∈ J
SLIDE 21
Capacitated multifacility location problem (CMFLP)
◮ K: set of customers ◮ J: set of locations for potential facilities ◮ L: set of capacity levels for each facility (including 0) ◮ dk > 0: demand of customer k ◮ ujl > 0: capacity of level l at location j ◮ fjl ≥ 0: fixed cost for opening facility of level l at location j ◮ cjkl ≥ 0: unit cost of satisfying the demand of customer k
from facility of level l at location j
◮ Problem description: Determine the locations and capacity
levels of the facilities to satisfy customers’ demands at minimum cost, while respecting the capacity at each facility location (at most one capacity level can be selected at each location)
SLIDE 22 CMFLP model
◮ yjl: 1, if location j is chosen for a facility of level l, 0,
◮ xjkl: fraction of the demand dk of customer k satisfied from
facility of level l at location j
SLIDE 23 CMFLP model
◮ yjl: 1, if location j is chosen for a facility of level l, 0,
◮ xjkl: fraction of the demand dk of customer k satisfied from
facility of level l at location j
min
dkcjklxjkl +
fjlyjl
SLIDE 24 CMFLP model
◮ yjl: 1, if location j is chosen for a facility of level l, 0,
◮ xjkl: fraction of the demand dk of customer k satisfied from
facility of level l at location j
min
dkcjklxjkl +
fjlyjl
xjkl = 1, k ∈ K
SLIDE 25 CMFLP model
◮ yjl: 1, if location j is chosen for a facility of level l, 0,
◮ xjkl: fraction of the demand dk of customer k satisfied from
facility of level l at location j
min
dkcjklxjkl +
fjlyjl
xjkl = 1, k ∈ K
dkxjkl ≤ ujlyjl, j ∈ J, l ∈ L
SLIDE 26 CMFLP model
◮ yjl: 1, if location j is chosen for a facility of level l, 0,
◮ xjkl: fraction of the demand dk of customer k satisfied from
facility of level l at location j
min
dkcjklxjkl +
fjlyjl
xjkl = 1, k ∈ K
dkxjkl ≤ ujlyjl, j ∈ J, l ∈ L xjkl ≤ yjl, j ∈ J, k ∈ K, l ∈ L
SLIDE 27 CMFLP model
◮ yjl: 1, if location j is chosen for a facility of level l, 0,
◮ xjkl: fraction of the demand dk of customer k satisfied from
facility of level l at location j
min
dkcjklxjkl +
fjlyjl
xjkl = 1, k ∈ K
dkxjkl ≤ ujlyjl, j ∈ J, l ∈ L xjkl ≤ yjl, j ∈ J, k ∈ K, l ∈ L
yjl = 1, j ∈ J
SLIDE 28 CMFLP model
◮ yjl: 1, if location j is chosen for a facility of level l, 0,
◮ xjkl: fraction of the demand dk of customer k satisfied from
facility of level l at location j
min
dkcjklxjkl +
fjlyjl
xjkl = 1, k ∈ K
dkxjkl ≤ ujlyjl, j ∈ J, l ∈ L xjkl ≤ yjl, j ∈ J, k ∈ K, l ∈ L
yjl = 1, j ∈ J xjkl ∈ [0, 1], j ∈ J, k ∈ K, l ∈ L yjl ∈ {0, 1}, j ∈ J, l ∈ L
SLIDE 29
Multiperiod capacitated multifacility location problem (MCMFLP)
◮ K: set of customers ◮ J: set of locations for potential facilities ◮ L: set of capacity levels for each facility (including 0) ◮ T = {0, 1, . . . , |T| + 1}: set of time periods ◮ dkt > 0: demand of customer k at period t ◮ ujl > 0: capacity of level l at location j ◮ fjl′lt ≥ 0: cost for changing capacity at location j from level l′
to l at period t
◮ cjklt ≥ 0: unit cost of satisfying the demand of customer k at
period t from facility of level l at location j
◮ Problem description: Determine the locations and capacity
levels of the facilities to satisfy customers’ demands at each time period at minimum cost, while respecting the capacity at each facility location (at most one capacity level can be selected at each location and time period)
SLIDE 30
MCMFLP model
◮ yjl′lt: 1, if location j is chosen for a facility and changes from
capacity level l′ to l at period t, 0, otherwise
◮ xjklt: fraction of the demand dk of customer k at period t satisfied
from facility of level l at location j
SLIDE 31 MCMFLP model
◮ yjl′lt: 1, if location j is chosen for a facility and changes from
capacity level l′ to l at period t, 0, otherwise
◮ xjklt: fraction of the demand dk of customer k at period t satisfied
from facility of level l at location j
min
dktcjkltxjklt +
fjl′ltyjl′lt
SLIDE 32 MCMFLP model
◮ yjl′lt: 1, if location j is chosen for a facility and changes from
capacity level l′ to l at period t, 0, otherwise
◮ xjklt: fraction of the demand dk of customer k at period t satisfied
from facility of level l at location j
min
dktcjkltxjklt +
fjl′ltyjl′lt
xjklt = 1, k ∈ K, t ∈ T
SLIDE 33 MCMFLP model
◮ yjl′lt: 1, if location j is chosen for a facility and changes from
capacity level l′ to l at period t, 0, otherwise
◮ xjklt: fraction of the demand dk of customer k at period t satisfied
from facility of level l at location j
min
dktcjkltxjklt +
fjl′ltyjl′lt
xjklt = 1, k ∈ K, t ∈ T
dktxjklt ≤ ujl
yjl′lt, j ∈ J, l ∈ L, t ∈ T
SLIDE 34 MCMFLP model
◮ yjl′lt: 1, if location j is chosen for a facility and changes from
capacity level l′ to l at period t, 0, otherwise
◮ xjklt: fraction of the demand dk of customer k at period t satisfied
from facility of level l at location j
min
dktcjkltxjklt +
fjl′ltyjl′lt
xjklt = 1, k ∈ K, t ∈ T
dktxjklt ≤ ujl
yjl′lt, j ∈ J, l ∈ L, t ∈ T xjklt ≤
yjl′lt, j ∈ J, k ∈ K, l ∈ L, t ∈ T
SLIDE 35 MCMFLP model
◮ yjl′lt: 1, if location j is chosen for a facility and changes from
capacity level l′ to l at period t, 0, otherwise
◮ xjklt: fraction of the demand dk of customer k at period t satisfied
from facility of level l at location j
min
dktcjkltxjklt +
fjl′ltyjl′lt
xjklt = 1, k ∈ K, t ∈ T
dktxjklt ≤ ujl
yjl′lt, j ∈ J, l ∈ L, t ∈ T xjklt ≤
yjl′lt, j ∈ J, k ∈ K, l ∈ L, t ∈ T
yjl0l0 = 1, j ∈ J
SLIDE 36 MCMFLP model
◮ yjl′lt: 1, if location j is chosen for a facility and changes from
capacity level l′ to l at period t, 0, otherwise
◮ xjklt: fraction of the demand dk of customer k at period t satisfied
from facility of level l at location j
min
dktcjkltxjklt +
fjl′ltyjl′lt
xjklt = 1, k ∈ K, t ∈ T
dktxjklt ≤ ujl
yjl′lt, j ∈ J, l ∈ L, t ∈ T xjklt ≤
yjl′lt, j ∈ J, k ∈ K, l ∈ L, t ∈ T
yjl0l0 = 1, j ∈ J
yjl′l(t−1) =
yjll∗t, j ∈ J, l ∈ L, t ∈ T \ {0}
SLIDE 37 MCMFLP model
◮ yjl′lt: 1, if location j is chosen for a facility and changes from
capacity level l′ to l at period t, 0, otherwise
◮ xjklt: fraction of the demand dk of customer k at period t satisfied
from facility of level l at location j
min
dktcjkltxjklt +
fjl′ltyjl′lt
xjklt = 1, k ∈ K, t ∈ T
dktxjklt ≤ ujl
yjl′lt, j ∈ J, l ∈ L, t ∈ T xjklt ≤
yjl′lt, j ∈ J, k ∈ K, l ∈ L, t ∈ T
yjl0l0 = 1, j ∈ J
yjl′l(t−1) =
yjll∗t, j ∈ J, l ∈ L, t ∈ T \ {0} xjklt ∈ [0, 1], j ∈ J, k ∈ K, l ∈ L, t ∈ T yjl′lt ∈ {0, 1}, j ∈ J, l′ ∈ L, l ∈ L, t ∈ T