Location-Routing for Distribution Centers

Read this article. One objective of this paper is to determine distribution center locations. Compare and contrast the two cases presented.

Problem formulation

The following notations are used to describe the problem.


O: Supplier location

M: Transportation modes, m∈{H(road),R(rail),S(sea)}

V_{one}: Set of intermediate nodes (between supplier and DCs) crossed by only one transportation mode

V_{HR}: Set of intermediate nodes (between supplier and DCs) crossed by road and railway transportation modes only

V_{HS}: Set of intermediate nodes (between supplier and DCs) crossed by road and seaway transportation modes only

V_{RS}: Set of intermediate nodes (between supplier and DCs) crossed by railway and seaway transportation modes only

V_{two}: Set of intermediate nodes (between supplier and DCs) crossed by more than one transportation modes, V_{two} = {V_{HR} ∪ V_{HS} ∪ V_{RS}}

V: Set of nodes including supplier node as well as the nodes between supplier and potential DCs, V={V_{one} ∪ V_{two} ∪ O ∪ J }

E_m: Set of arcs for each transportation mode from supplier to DCs, E_m,m∈{H,R,S}

J: Set of potential DCs

I: Set of retailers

G=I ∪ J : Set of potential DCs and retailers

K: Set of vehicles to be used to deliver products from DCs to retailers


d_{ij}: Distance between nodes i and j, i,j∈G

D_{ab}: Distance between nodes a and b, a,b∈V∪J

q_i: Raised demand by retailer i

Q_k: Capacity of vehicle k

C_{k}: Unit product distribution cost per unit distance from DCs to retailers by vehicle k

C_m: Unit product transportation cost per unit distance for each mode

C_{V}: Fixed cost of providing a mode changing facility at node v, v∈V_{two}

F_j: Fixed cost of establishing a DC at node j

θ: Number of retailers

n: Number of DCs

Decision variables

z_{j} = \left\{ {\begin{array}{*{20}c} 1 & {{\text{If a DC is established at potential node }}j} \\ 0 & {\text{Else}} \\ \end{array} } \right.

x_{ijk} = \left\{ {\begin{array}{*{20}c} 1 & {{\text{If vehicle }}k{\text{ goes immediately from node }}i{\text{ to node }}j,\;i,j \in G} \\ 0 & {\text{Else}} \\ \end{array} } \right.

u_{ij} = \left\{ {\begin{array}{*{20}c} 1 & {{\text{If retailer }}i{\text{ is assigned to DC }}j} \\ 0 & {\text{Else}} \\ \end{array} } \right.

y_{v} = \left\{ {\begin{array}{*{20}c} 1 & {{\text{If transportation mode is changed at node }}v} \\ 0 & {\text{Else}} \\ \end{array} } \right.

w_{ab}^{jm}: Amount of products passing, on the transportation mode m, through link a–b to DC j, a,b∈V∪J

Moreover, R_{ik} is a slack variable used in sub-tour elimination constraint, and B is large enough constant parameter. Note that, if three different modes cross over one another a node, a combination of the modes is accounted for and the node will be taken as a member of all three sets, namely V_{HR},V_{HS} \text {and} V_{RS}.

The problem formulation is as follows:

{\text{Min}}\,Z = \mathop \sum \limits_{i \in G} \mathop \sum \limits_{j \in G} \mathop \sum \limits_{k \in K} C_{k} d_{ij} x_{ijk} + \mathop \sum \limits_{j \in J} F_{j} z_{j} + \mathop \sum \limits_{{(a,b) \in E_{m} }} \mathop \sum \limits_{m \in M} \mathop \sum \limits_{j \in J} D_{ab} C_{m} w_{ab}^{jm} + \mathop \sum \limits_{{v \in V_{\text{two}} }} C_{V} y_{v}



\mathop \sum \limits_{{\left( {a,b} \right) \in E_{m} }} \mathop \sum \limits_{m \in M} \mathop \sum \limits_{j \in J} w_{ab}^{jm} - \mathop \sum \limits_{{\left( {b,c} \right) \in E_{m} }} \mathop \sum \limits_{m \in M} \mathop \sum \limits_{j \in J} w_{bc}^{jm} = 0 \quad \forall b \in V_{\text{one}} \mathop \cup \nolimits V_{\text{two}}


\mathop \sum \limits_{{\left( {a,b} \right) \in E_{m} }} \mathop \sum \limits_{j \in J} w_{ab}^{jm} - \mathop \sum \limits_{{\left( {b,c} \right) \in E_{m} }} \mathop \sum \limits_{j \in J} w_{bc}^{jm} \le {\text{By}}_{b} \quad \forall b \in V_{\text{two}} ,m \in M

\mathop \sum \limits_{{\left( {a,b} \right) \in E_{m} }} \mathop \sum \limits_{j \in J} w_{ab}^{jm} - \mathop \sum \limits_{{\left( {b,c} \right) \in E_{m} }} \mathop \sum \limits_{j \in J} w_{bc}^{jm} \le {\text{By}}_{b} \quad \forall b \in V_{\text{two}} ,m \in M


\mathop \sum \limits_{m \in M} \mathop \sum \limits_{{\left( {a,j} \right) \in E_{m} }} w_{aj}^{jm} - \mathop \sum \limits_{i \in I} q_{i} u_{ij} = 0\quad \forall j \in J,a \in V


w_{ab}^{jm} \le {\text{Bz}}_{j} \quad \forall m \in M, \left( {a,b} \right) \in E_{m} ,j \in J


\mathop \sum \limits_{j \in G} \mathop \sum \limits_{k \in K} x_{ijk} = 1 \quad \forall i \in I


\mathop \sum \limits_{i \in I} q_{i} \mathop \sum \limits_{j \in G} x_{ijk} \le Q_{k} \quad \forall k \in K


\mathop \sum \limits_{p \in G} x_{ipk} - \mathop \sum \limits_{p \in G} x_{pik} = 0 \quad \forall k \in K, i \in G


\mathop \sum \limits_{i \in I} \mathop \sum \limits_{j \in J} x_{ijk} \le 1\quad \forall k \in K


\mathop \sum \limits_{k \in K} x_{jrk} + z_{j} + z_{r} \le 2 \quad \forall r = 1, \ldots ,n, r,j \in J


- u_{ij} + \mathop \sum \limits_{p \in G} (x_{ipk} + x_{pjk} ) \le 1\quad \forall i \in I, j \in J, k \in K


\mathop \sum \limits_{i \in I} \mathop \sum \limits_{k \in K} x_{jik} - z_{j} \ge 0\quad \forall j \in J


\mathop \sum \limits_{i \in I} x_{jik} - z_{j} \le 0 \quad \forall j \in J,k \in K


R_{ik} - R_{rk} + \theta x_{irk} \le \theta - 1 \quad \forall i,r \in I, k \in K


z_{j} ,u_{ij} , y_{v} \in \left\{ {0,1} \right\}\quad \forall i \in I, j \in J, v \in V_{\text{two}}


x_{ijk} \in \left\{ {0,1} \right\}\quad \forall i, j \in G, k \in K


w_{ab}^{jm} , R_{ik} \ge 0 \quad \forall i \in I, k \in K,a,b \in V, j \in J,m \in M.


Objective function (1) seeks to minimize costs including multimodal transportation costs and location-routing costs. First and second sentences are about location-routing costs which calculate cost of routing from DCs to retailers and DCs establishment fixed cost, respectively. Third and fourth sentences, respectively, calculate cost of transportation from supplier to DC on multimodal network, and cost of providing mode changing facilities as multimodal transportation costs. Constraint set (2) defines flow conservation on multimodal network and states that product flow inters to a node should be to equal product flow exits it. Mode changing can be happened only on multimodal terminals (nodes that more than one mode inters or exits the node). For each transportation mode, if products inter to a multimodal network and leave it with the same mode, mode changing will not happen and the corresponding variable (y_v) will be zero. Same logic uses for changing modes. Constraint set (3) illustrate this for each node v∈V_{two}. As accounted for by constraint set (4), sum of products arriving at a DC should be equal to total demands raised by the assigned retailers to that DC. Based on the constraint set (5), each retailer is assigned to exactly one DC. Constraint set (6) ensures that no product can be dispatched to a non-established DC and if DC establishment variable (z_j) takes zero, all the product flows ending to that DC take zero as well. Constraint set (7) assigns each retailer to exactly one vehicle, while the constraint set (8) limits the capacity of the vehicles and ensures that summation of assigned customers demand does not pass vehicle capacity. In each product delivery tour on road network, every vehicle once entered a node will definitely exit that node and constraint set (9) guarantees that. Constraint set (10) is to ensure that each and every vehicle is allocated to at most one DC. The absence of common links between DCs is promised by constraint set (11). The constraint set (12) assures that a retailer is assigned to a DC if and only if there is a route from the DC to that retailer. Constraint sets (13) and (14) state that vehicles can be dispatched only from established DCs. Constraint set (15) relates to sub-tour elimination, and constraints (16), (17), and (18) define variables. The last three constraints determine model variables signs.