1 Introduction

In classical facility location problems, all facilities are assumed reliable and optimal facility locations are determined in this ideal environment. However, in practice, the facilities face numerous unexpected events that may partially or completely disable them (Xie et al. 2015). A consequence of these facility failures may be a higher transportation cost since customers need to be reassigned from their initial facilities to another operational facility that is more distant (Snyder and Daskin 2005; Cui et al. 2010; Berman et al. 2007). Therefore, designing a reliable supply chain network is one of the most effective approaches to deal with disruption risks, failures and uncertainties since alternative plans in the event of a disruption are mostly limited.

Generally, uncertainties and risks in the supply chains can be classified into two major categories including operational risks and disruptions. Risks at operational levels are short term and daily problems that mostly do not affect the functionality of the elements of supply chains. Some examples of operational risks are machine failures, short-term supply–demand imbalances, procurement prices for raw materials, production costs, poor process performance, decrease in production rate of a machine, lead times or transportation times (Ahmadi-Javid and Seddighi 2013). However, disruptions can completely or partly block the flow of products in the network for a significant and uncertain amount of time. Disruptions can be caused by natural disasters (e.g. earthquakes, floods, and hurricanes), terrorist attacks, labor strikes, political instability, power outages, sabotage or even equipment breakdowns. Some events such as the Severe Acute Respiratory Syndrome (SARS) outbreak in Asia, the September 11, 2001 terrorist attack, the hurricanes Katrina and Rita (2005), and more recent disasters like earthquake and Tsunami in Japan, 2011, highlighted the necessity to protect supply chains against disruption (Berman et al. 2009).

Disruption management strategies can be categorized into three main classes: mitigation strategies (in advance of a disruption), recovery strategies (after the occurrence of a disruption), and passive acceptance (Paul et al. 2016). Some examples of mitigation strategies are increasing the safety stock, multiple sourcing, increasing capacity, etc. Recovery strategies consist of using alternative sourcing, rescheduling of plans and rerouting the transportation plan in recovery periods. In this study, we deal with a recovery strategy, in which once a disruption happens, the alternative plan will be applied to hedge against it. Considered network consists of suppliers, cross-docks (as consolidation points) and assembly plants which are connected to suppliers via two transportation methods: cross-docking and direct shipment.

Cross-docking helps to accelerate the flow of parts and material, reduces the number of vehicles and diminishes inventory costs. The main purpose of cross-docking in almost all companies is to collect various supply products in the form of pallets (boxes), consolidate them into a collection of mixed pallets of products with the same destination, and dropped them off at the consume point (manufacturing/assembly plants/end user), according to the orders. Cross-docking can reduce cost in distribution networks by consolidation, as well as applying full-truck-load (FTL) shipments, instead of delivering all shipments directly and in less-than-truck-load (LTL). Note that incoming pallets are usually delivered to the cross-dock facility in LTL shipments, while outgoing pallets are shipped in FTL. The goal is to maximize the utilization of FTL shipments in order to decrease transportation and distribution cost. To function correctly, a reliable system of cross-docks and a precise coordination of inbound/outbound vehicles are essential (Ladier and Alpan 2016). In other words, cross-docking is an approach to implement just-in-time (JIT) strategy. Based on recent studies, JIT may make supply chains more vulnerable to local and global disturbances. It adds vulnerability in supply process when delays, failures, accidents, breakdowns, or fluctuation in demand occur (Ebrahimi et al. 2012).

As a real case, the earthquakes and tsunami in Japan 2011 reflected the vulnerability of companies to supply chain disruptions caused by natural disasters, and pinpointed the JIT strategy pioneered by Toyota and followed by many other companies. After the occurrence of such events, companies made efforts to address these problems by applying recovery plans, such as using alternative suppliers. Another recovery plan in the supply chains with distribution centers is using alternative distribution facilities in the case of disruption, in which, instead of considering many scenarios for disruption, a set of distribution centers are assigned to every supplier. Each supplier is served by the nearest distribution center and if disruption happens, it will get service from the second one in the set and so on. This approach can be utilized in food, clothing and auto making industries, etc.

In this study, we design a cross-docking network that is both reliable and cost efficient. It takes disruption risk in to consideration, which seems that has not been addressed, so far, in cross-docking. Based on cross-docking literature, uncertainty is mostly handled by robust optimization technique and fuzzy approach in cross-docking, while in this study, the aim is to generate recovery plans to manage disruptions at cross-docks after occurrence, without enumerating all possible failure scenarios. In a scenario-based method, a large number of probabilistic failure scenarios may complicate the problem (Zhang et al. 2016) and increase the computational effort.

Here, therefore, the optimal location of a set of cross-docking centers is decided, when cross-docks are subject to disruption. To do so, a location model is developed to minimize establishing cost of cross-docks, transportation costs in both regular and failure conditions and penalty cost of not serving suppliers and plants. By solving the model, the optimal number and locations of cross-docking centers, as well as the initial and back up assignments of suppliers and assembly plants to cross-docks are determined. Moreover, regarding regular and disruption conditions, the optimal capacity of cross-docks can be specified using the formulation, which is another extension to previous reliability models. The model is formulated as a mixed integer nonlinear programming model, then it is linearized to present a linear model and finally two Lagrangian relaxation methods are proposed as solution algorithms.

The remainder of this study is organized as follows. Section 2 presents a relevant literature review. In Sect. 3, the problem and mathematical model with heterogeneous disruption probabilities are introduced and linearization process is explained. Lagrangian relaxation methods as the solution algorithms are presented in Sect. 4 and computational tests along with numerical results are addressed in Sect. 5. In this section, a case study is investigated, as well. Finally, we conclude the study in Sect. 6.

2 Literature

Because of inherent stochastic nature of cross-docking, considering disruption in such environment is unavoidable, while it has not drawn much attention in the literature. Some papers address uncertainty in location problem of cross-docking, as well as in other design or implementation levels, while some others considered a deterministic environment for various cross-docking problems.

Location problem in cross-docking can be seen in Sung and Song (2003), Gumus and Bookbinder (2004), Jayaraman and Ross (2003), Ross and Jayaraman (2008), Bachlaus et al. (2008), Musa et al. (2010), Mousavi and Tavakkoli-Moghaddam (2013), and Mousavi et al. (2014). In these studies, the best location of cross-docks is determined without considering the risk of disruptions. Very few research works tackle uncertainties on the operational level. Babazadeh et al. (2014) propose a robust optimization model for location problem in a responsive supply chain consisting of plants, warehouses and cross-docks. They first presented a multi-stage multi-product deterministic mixed-integer linear programming (MILP) model and then addressed the robust optimization to handle the uncertainty of parameters. Ladier and Alpan (2016) also use robust optimization for handling uncertainties in truck scheduling in which delay of trucks is the source of uncertainty. They apply classical techniques of robust optimization (minimax and minimization of the expected regret) and techniques from robust project scheduling (resource redundancy and time redundancy) to the problem. Afterward, Rahbari et al (2019) utilized two robust models in order to consider the uncertainty of travel time and freshness-life of perishable products in vehicle routing problem with cross-docking (VRPCD). In a paper by Darvishi et al. (2020), the tactical planning level is focused. The authors apply an approach based on hybrid fuzzy-robust stochastic method in production planning with cross-docking.

So far, no research work has addressed disruption in cross-docking strategy, to the best of our knowledge. Hence, a brief review on reliable location problems is presented, in which the location of general facilities is determined.

The reliable facility location problem was probably first introduced by Snyder and Daskin (2005) to handle facility disruption, where the authors assume that some facilities are subject to random failure with equal probability, while the others are reliable. In their problem, excessive transportation costs may be burden because of serving customers by more distant facilities compared to their regularly assigned ones. They develop a bi-objective linear integer programming model based on level assignments, where the first objective represents the total travel cost to initial facilities in regular condition (the first level assignment) and the second objective indicates the expected transportation cost after facility failures. The authors apply a Lagrangian relaxation solution method to solve the model. Another study that develops this approach is the work of Berman et al. (2007), which is based on the P-median problem. They relax the assumption of identical failure probabilities and formulated the stochastic problem as a nonlinear mixed integer program. They also prove that the solution to the stochastic P-median problem with zero failure probabilities is equal to the solution of deterministic problem. The authors develop several exact and heuristic methods to the problem. Based on their work, Cui et al. (2010) and Shen et al. (2011) also relax the equal failure probability assumption in Snyder and Daskin (2005) and allow the failure probabilities to be facility-specific and independent (the probabilities are taken as a priori). Cui et al. (2010) propose a mixed-integer programming formulation and a continuum approximation model to optimize the initial establishment cost and the expected transportation costs under regular and disruption conditions. Both papers consider R ≥ 1 level to assignment of customers, which means that each customer can be assigned to R facilities. The authors provide several heuristic solution algorithms. Shen et al. (2011) also study a similar reliable facility location problem and formulate it as a two-stage stochastic nonlinear integer programming (NIP) model. They propose an approximation algorithm for a special case where the failure probability of a facility is independent of the facility. In their study, the uncertainty is modeled via two approaches: (1) by a set of scenarios that determines which subset of facilities are subject to a failure and (2) by considering an individual and independent failure probability for each facility. They also provide several heuristics for the problem.

In the study of Berman et al. (2009), the location of facilities is addressed in an environment that customers are not aware in advance about whether a given facility is operational or not, therefore they may go to several facilities to find an operational one. Seeking for automated teller machines (ATMs) is an example, where a customer may have to try several ATMs before finding one able to provide service, due to network disruptions, maintenance, etc. The authors present a model that try to locate a set of facilities to minimize the total expected cost of customer travel including travel, reliability and information costs. Lim et al. (2010) also apply a similar approach to manage disruption in location problem. They define two classes of facilities: reliable (which are not subject to failure, but are more expensive) and unreliable and formulate the problem as a mixed integer programming (MIP) model. A Lagrangian relaxation-based algorithm is developed as a solution method.

Some extensions of reliable location problem can be found in the literature. Chen et al. (2011) integrated inventory and reliable facility location problems. Li and Ouyang (2010) address a problem in which facilities are subject to heterogeneous and spatially correlated disruptions and Li et al. (2013b) further propose a supporting station model to manage interdependent facility disruptions. In Li et al. (2013b), a new model is proposed to transform correlated and complex facility failures (e.g., those due to common disasters) into independent and identically distributed (i.i.d.) disruptions in a supporting structure framework. They generate a mathematical model for reliable facility location problem under correlated facility disruption, which is formulated into a compact integer linear program and can be efficiently solved by usual solvers.

Li et al. (2013a) develop a reliable P-median problem and a reliable un-capacitated fixed-charge location problem, where the facility failure probabilities are assumed to be independent and location-specific. They also consider one layer of supplier backup and facility fortification with a limited budget. A Lagrangian relaxation-based (LR) method is developed to solve the models. Jalali et al. (2016) study a bi-objective reliable facility location problem for a three-echelon supply chain network. In their model, provider-side uncertainty is also considered. As the proposed model is NP-hard, the authors use an algorithm called multi-objective biogeography-based optimization (MOBBO) and compare the results with non-dominated ranking genetic algorithm (NRGA) and a multi-objective simulated annealing (MOSA). Another related model is proposed in Zarrinpoor et al. (2017) that address reliable location model for design of health service network. The authors formulate the problem based on robust optimization approach and solve it using Benders decomposition algorithm. Other similar works can be seen in Zhang et al. (2016), Rohaninejad et al. (2018), Jabbarzadeh et al. (2018), Raziei et al. (2018), Esfandiyari et al. (2018), Torkestani et al. (2018), Bashiri et al. (2018); and finally, Yahyaei and Bozorgi-Amiri (2018). Many other researchers are inspired by this method of handling disruption and even utilized it in location routing problem (see Zhang et al. 2015).

Although several studies consider disruption in supply chain networks (Kleindorfer and Saad 2009; Schmitt 2011; Zegordi and Davarzani 2012; Qiang and Nagurney 2012; Qi 2013; Hishamuddin et al. 2013, 2014; Shi et al. 2013; Kim et al. 2014; Bode and Wagner 2015; Zhao et al. 2019), there are not considerable studies addressing disruption in cross-docking.

In this paper, we focus on a cross-dock location model, where cross-docks may be subject to disruptions, causing suppliers and assembly plants to seek service from other operating cross-docks or use direct shipment strategy. Despite a wide range of publications in reliable facility location problem, very few considered reliable cross-docking problem. For example, Hasani Goodarzi et al. (2018) address disruption in cross-docking, when disruption probabilities are the same for all cross-docking center, which is a simplifying assumption.

In most studies reviewed in reliable facility location, the authors suppose that certain facilities are designated as indefectible, though in this paper we assume all cross-docks as unreliable and direct shipment as a safe way to move consignments. The probabilities of cross-dock failure are assumed to be heterogeneous, since identical failure probability is reasonable in the case of similar facilities, such as ATMs.

The problem we seek to formulate is how to optimally locate a set of |J| cross-docking centers on a network when cross-docks are subject to disruption, without enumerating all possible failure scenarios. Drawing inspiration from literature, we develop a reliable location problem for cross-docking network, where all built cross-docks are subject to independent and cross-dock specific disruption probability. The model allocates suppliers and plants to cross-docks at multiple levels. The “higher-level” allocations are only realized when the primary cross-docks are subject to a disruption. As can be inferred from literature, disruption issues have not been addressed perfectly in cross-docking so far and it seems that robust optimization is a common method to address uncertainty in cross-docking. In other words, there is no piece of research considering disruption in cross-docking, to the best of authors’ knowledge. Therefore, in this study, the aim is to generate recovery plans to manage disruptions at cross-docks after occurrence. Another extension to previous works is that optimal capacity of cross-docks is specified regarding regular and disruption conditions using the formulation.

3 Problem definition

This study addresses a network in which cross-docks are considered as consolidation nodes serving the suppliers and assembly plants. We assume that when a cross-dock is disrupted, one can use other cross-docking centers as backups instead of building a new one, until the regular operating conditions are re-established. In addition to cross-docking strategy, it is also possible to use direct shipment whenever it is economic. Each supplier and assembly plant can be assigned to up to |R| ≥ 1 cross-docks. Although each supplier will be served by only one operational cross-dock, it needs to be assigned to a group of cross-docks that are ordered by levels, meaning that when the lowest-level facility is subject to a failure, the service is provided by the next level cross-dock that is operational; and so on. Another backup plan can be direct shipment strategy which means that if all operational cross-docks are too far away from a supplier, direct shipment can be utilized.

In order elaborate the concept of level in this problem, let us give an example. Consider 10 suppliers, 3 cross-docks and 2 assembly plants. In the first level (r = 1), the normal condition is considered and the assignment of suppliers to cross-docks is as bellow, which means that cross-dock 1 serves supplier 4 and 9, cross-dock 2 serves supplier 5, 7 and 8; and cross-dock 3 serves supplier 1, 2, 3 and 10. Supplier 6 sends all products through direct shipment (see Table 1).

Table 1 Assignment of suppliers to cross-docks at level 1

Now the goal is to define a backup strategy (including cross-docking or direct shipment) for each supplier, independent of other suppliers. It must be different from the previous assigned cross-dock (see Table 2). The second level assignment (r = 2) meaning that if a cross-dock fails, its assigned suppliers are allocated to other cross-docks or to direct shipment. For example, both suppliers 1 and 10, at normal condition, are allocated to cross-dock 3, but if a disruption happens to this cross-dock, the first supplier is assigned to cross-dock 2, while suppler 10 is served by direct shipment.

Table 2 Assignment of suppliers to cross-docks at level 2

In order to compare scenario-based method with this approach, consider this problem in a scenario-based format. There are eleven different scenarios for failure in cross-docks: (1) all cross-docks are normal (1 case), (2) all cross-docks are disrupted (1 case), (3) one of cross-docks is disrupted (6 cases), (4) two of cross-dock are disrupted (3 cases). As can be inferred, “a large number of probabilistic failure scenarios complicates the problem” (Zhang et al. 2016) and increases the computational effort. While in our approach, every cross-dock is considered, separately.

It should be noted that using direct shipment is possible at each level, if it is less costly compared to cross-docking, meaning that the same cardinality |R| of the support is assumed for all suppliers, while all or some of them may be assigned to direct shipment in level r <|R|. If direct shipment is assigned to a supplier in a given level, he/she cannot be served by a cross-dock in the subsequent levels. Therefore, the cross-docking reliability problem extends the cross-docking location problem taking into account the random disruptions of cross-docks. Other assumptions are as follows:

  • Cross-docking disruptions are independent and heterogeneous meaning that each cross-dock may fail with a given specific probability and multiple cross-docks may fail simultaneously. All cross-docks are considered unreliable and each may have a level of reliability.

  • Backup plan can be decided in multi-levels (|R| ≥ 1). At each level, each supplier can be served at most by one cross-dock, while assembly plants can receive parts from more than one cross-dock.

  • A penalty cost is considered for cases in which disruption causes a supplier not to be served at all (by any of the assigned cross-docking centers or direct shipment).

  • As mentioned above, when a disruption occurs, it seems more reasonable to use other cross-docking centers or change the transportation strategy from cross-docking to direct shipment until the disruptive event is repaired. In the cases that disruption leads to the permanent destruction of one or more cross-docks, resolving the location problem will be recommended. In other words, when a huge disruption occurs in such a way that a cross-dock cannot be utilized any more, it is better to resolve a location problem to find a new point to establish an alternative cross-dock.

In Fig. 1, the supply chain network is indicated in a typical level. It is obvious that in various levels, the configuration of network is different. The problem addresses: (1) the location of cross-docks, (2) the initial allocation of suppliers and assembly plants to cross-docks and (3) back up plan for allocation in the case of disruption in cross-docking centers. Moreover, the best capacity of opened cross-docks, as well as the transportation strategy in each level to move parts from suppliers to assembly plants is determined. The objective is to minimize the total cross-dock establishing cost and the expected transportation and penalty costs.

Fig. 1
figure 1

The supply chain network at a typical level

3.1 Mathematical model

In this sub-section, we first introduce the notation and the decision variables used throughout the study. We then formulate the problem as a mixed integer nonlinear programming model. The sets, parameters and variables used in the model are described in the following sub-section.

3.1.1 Sets and parameters

Define J to be the set of assembly plants {j = 1, 2, …, |J|}, I to be the set of candidate cross-docks {i = 1, 2, …, |I|}, L to be the set of suppliers {l = 1, 2, …, |L|}and finally, R as the set of levels {r = 1, …, |R|}. The term “Node” will be used to represent the assembly plants, suppliers and cross-docks. We assume that probability of failure in each cross-dock is given by \(0 \le q_{i} < 1\), and cross-dock disruptions are independent of each other. When a cross-dock fails, it cannot provide service and its assigned nodes will be either served by other operational facilities, or linked by direct shipment. In the cases that no transportation strategy is used, it will be subject to a penalty cost. According to our assumptions, each supplier is assigned to up to R cross-docks (1 ≤ R ≤ |I| + 1) and can be served only by these cross-docks. The demand of plant j from supplier l is denoted by djl that must be met by vehicles with capacity Q. Transportation cost from node i to node j (i, j ∈ (L ∪ I ∪ J)) is given by cij. Parameter gi represents the fixed cost of establishing cross-dock i and vi is the variable cost per part unit at this cross-dock. Associated with each supplier l is a cost \(\gamma_{l}\) that represents the penalty cost for not serving that supplier. The parameters are briefly listed as follows:

cij:

Transportation cost from node i to node j (i, j ∈(LIJ))

gi:

Fixed cost of establishing cross-dock i

vi:

Variable cost per part unit at cross-dock i

qi:

Probability of failure in cross-dock i (\(0 \le q_{i} < 1\))

djl:

Demand of plant j from supplier l

Q:

Capacity of vehicles

\(\gamma_{l}\):

Penalty for not serving supplier l

3.1.2 Decision variables

U ljr :

1: if load from supplier l to plant j is sent directly at level r; 0: otherwise

y i :

1: if cross-dock i is open; 0: otherwise

Z ilr :

1: if load from supplier l is served by cross-dock i at level r; 0: otherwise

m lir :

The number of vehicles from supplier l to cross-dock i at level r

n ijr :

The number of vehicles from cross-dock i to plant j at level r

B lijr :

1: if demand of plant j from supplier l goes thorough cross-dock i at level r; 0: otherwise

w ijr :

Quantity of parts shipped from cross-dock i to plant j at level r

P lir :

Probability that cross-dock i serves supplier l at level r

PP lr :

Probability that direct shipment serves supplier l at level r

Pr ijr :

Probability that cross-dock i serves plant j at level r

\(\beta_{l}\) :

Probability that supplier l will not be served at all

Cap i :

Capacity of cross-dock i.

3.1.3 Mathematical formulation

With the notations introduced above, the problem can be formulated as a mathematical model (CDL-NLP) as follows:

$$\begin{aligned} & \left( {\text{CDL } - \text{ NLP}} \right) \\ & Min \mathop \sum \limits_{i \in I} g_{i} \times y_{i} + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{j \in J} \mathop \sum \limits_{l \in L} c_{lj} \times PP_{lr} \times U_{ljr} + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{i \in I} \mathop \sum \limits_{l \in L} c_{li} \times m_{lir} \times P_{lir} \\ & \quad + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{i \in I} \mathop \sum \limits_{l \in L} \mathop \sum \limits_{j \in J} v_{i} \times d_{jl} \times B_{lijr} \times P_{lir} + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{i \in I} \mathop \sum \limits_{l \in L} c_{ij} \times n_{ijr} \times Pr_{ijr} + \mathop \sum \limits_{l \in L}^{{}} \beta_{l} \times \gamma_{l} \\ \end{aligned}$$
(1)
$$\begin{aligned} & {\text{Subject}}\,{\text{to}} \\ & U_{ljr} + \mathop \sum \limits_{i \in I} B_{lijr} = 1; \quad \forall l,j,r \\ \end{aligned}$$
(2)
$$\mathop \sum \limits_{r \in R}^{ } Z_{ilr} \le y_{i} ;\quad \forall i, l$$
(3)
$$\mathop \sum \limits_{j \in I} B_{lijr} \times d_{jl} \le m_{lir} \times Q; \quad \forall l,i,r$$
(4)
$$\mathop \sum \limits_{l \in L} d_{jl} \times B_{lijr} - w_{ijr} = 0; \quad \forall i, j, r$$
(5)
$$Z_{ilr} \le \mathop \sum \limits_{j \in J} B_{lijr} ; \quad \forall l,i, r$$
(6)
$$\mathop \sum \limits_{j \in J} B_{lijr} \le \left| J \right| \times Z_{ilr} ; \quad \forall l,i, r$$
(7)
$$w_{ijr} \le n_{ijr} \times Q; \quad \forall i, j, r$$
(8)
$$P_{li1} = 1 - q_{i} ;\quad \forall l,i$$
(9)
$$P_{lir} = \left( {1 - q_{i} } \right) \times \mathop \sum \limits_{k = 1}^{I} \frac{{q_{k} }}{{1 - q_{k} }} \times P_{lkr - 1} \times Z_{klr - 1} ;\quad \forall l,i;2 \le r \le \left| R \right|$$
(10)
$$PP_{l1} = 1; \quad \forall l$$
(11)
$$PP_{lr} = \mathop \sum \limits_{k = 1}^{I} \frac{{q_{k} }}{{1 - q_{k} }} \times P_{lkr - 1} \times Z_{klr - 1} ;\quad \forall l;2 \le r \le \left| R \right|$$
(12)
$$Pr_{ijr} = \frac{{\mathop \sum \nolimits_{l}^{{}} d_{jl} \times B_{lijr} \times P_{lir} }}{{w_{ijr} + \varepsilon }};\quad \forall i, j, r$$
(13)
$$\beta_{l} = \mathop \sum \limits_{k = 1}^{I} \frac{{q_{k} }}{{1 - q_{k} }} \times P_{lkR} \times Z_{klR} ;\quad \forall l$$
(14)
$$Cap_{i} = max_{r} \left( {\mathop \sum \limits_{j \in J} w_{ijr} } \right); \quad \forall i$$
(15)
$$y_{i} , U_{ljr} , B_{lijr} , Z_{ilr} \in \left\{ {0, 1} \right\}$$
(16)
$$m_{lir} , n_{ijr} , w_{ijr} \in \left\{ {0, 1, 2, \ldots } \right\}$$
(17)
$$P_{lir} ,PP_{lr} ,Pr_{ijr} , \beta_{l} \in \left[ {0, 1} \right]$$
(18)

The objective function minimizes the total expected cost including the fixed cost of establishing cross-docks, the expected transportation costs (including direct transshipment cost, indirect transportation cost from suppliers to cross-docks, variable cross-docking cost at receiving process and delivery cost to assembly plants) and finally the expected penalty cost. Constraint (2) ensures that demand of each plant is supplied via cross-docks or direct transshipment at each level. constraint (3) limits supplier assignments to only the open cross-docks, while constraint (4) stipulates the maximum vehicle capacity and calculates the number of required vehicles from suppliers to cross-docks at each level. Equation (5) determines the load to be sent from cross-docks to assembly plants and ensures that at each level, a flow entering a cross-dock is equal to the flow exiting it.

Constraints (6) and (7) ensure that when Σj Blijr is positive, then Zilr should be equal to one, otherwise Zilr = 0. These constraints stipulate that cross-dock i gives service to supplier l, if Blijr is equal to one, at least for one assembly plant. Constraint (8) determines the number of vehicles shipped from each cross-dock to each plant in different levels. Equations (913) are the “probability” equations. In Eqs. (9) and (10), the probability that a cross-dock serves a supplier at each level is determined recursively, while in Eqs. (11) and (12) the probability that direct shipment is used to serve suppliers at different levels is calculated. Based on Eqs. (9) and (10), the probability that a cross-dock serves a plant at each level is determined in Eq. (13). In order to avoid an undetermined value for this equation, we add a small value (\(\varepsilon\)) in the denominator. Equation (14) finds the probability that a supplier is not served at all. Finally, constraint (15) determines the optimum capacity of each cross-dock. The types of decision variables are defined in (1618).

The proposed formulation is a nonlinear model consisting of |I| + |L||R|(|J| + |I||J| + |I|) binary variables, (|L| + 2|J|) |R||I| integer variables, |R|(|I||L| + |L| + |I||J|) + |L| continues variables and |R|(|L||J| + 3|I||L| + 3|I||J|) + 2|L|(|I| + 1) + (|R| − 1)|L|(|I| + 1) active constraints. It can be reduced to un-capacitated facility location problem if (1) cross-docking is the only transportation strategy and no direct shipment is allowed (by increasing the cost of direct shipment to a very big number), (2) all cross-docks are perfectly reliable (\(q_{i} = 0\,\,\forall i \in {\text{I}}\)), so all assignments are at the primary level (R = 1) and penalty cost is zero, thus the model is reducible to a two-level extension of classical facility location problem. The latter is known to be NP-hard as acclaimed by Nemhauser and Wolsey (1999); therefore, the studied problem is NP-hard as well.

3.2 Linearization

There are some nonlinear terms in the mathematical model and the solver is not able to find a solution in a reasonable time, even for small instances. As can be seen in the mathematical model (CDL-NLP), the objective function (1) and constraints (10), (1214) are nonlinear. It should be noted that Eq. (15) could be simply calculated after running the model, while its linearization process is presented here, as well. In this section, we try to linearize the nonlinear terms and constraints. In order to do so, first the linearization of objective function is implemented. In the objective function (1), the following terms are nonlinear:

$$\mathop \sum \limits_{r \in R} \mathop \sum \limits_{j \in J} \mathop \sum \limits_{l \in L} c_{lj} \times PP_{lr} \times U_{ljr}$$
$$\mathop \sum \limits_{r \in R} \mathop \sum \limits_{i \in I} \mathop \sum \limits_{l \in L} c_{li} \times m_{lir} \times P_{lir}$$
$$\mathop \sum \limits_{r \in R} \mathop \sum \limits_{i \in I} \mathop \sum \limits_{l \in L} \mathop \sum \limits_{j \in J} v_{i} \times d_{jl} \times B_{lijr} \times P_{lir}$$
$$\mathop \sum \limits_{r \in R} \mathop \sum \limits_{i \in I} \mathop \sum \limits_{l \in L} c_{ij} \times n_{ijr} \times Pr_{ijr}$$

We define \(PP_{lr} \times U_{ljr}\) as \(\mu_{ljr}\), and \(B_{lijr} \times P_{lir}\) as \(\epsilon_{lijr}\). The following Eqs. (19)−(26) demonstrate the linearization process of these two terms of objective function.

$$PP_{lr} \times U_{ljr} = \mu_{ljr} ;\quad \forall l,j,r$$
$$\mu_{ljr} \le U_{ljr} ;\quad \forall l,j,r$$
(19)
$$\mu_{ljr} \le PP_{lr} ;\quad \forall l,j,r$$
(20)
$$PP_{lr} \le \mu_{ljr} + \left( {1 - U_{ljr} } \right);\quad \forall l,j,r$$
(21)
$$\mu_{ljr} \ge 0;\quad \forall l,j,r$$
(22)
$$B_{lijr} \times P_{lir} =\epsilon_{lijr} ;\quad \forall l,i,j,r$$
$$\epsilon_{lijr} \le B_{lijr} ; \forall l,i,j,r$$
(23)
$$\epsilon_{lijr} \le P_{lir} ; \forall l,i,j,r$$
(24)
$$P_{lir} \le \epsilon_{lijr} + \left( {1 - B_{lijr} } \right); \forall l,i,j,r$$
(25)
$$\epsilon_{lijr} \ge 0;\quad \forall l,i,j,r$$
(26)

For \(m_{lir} \times P_{lir}\), as well as \(n_{ijr} \times Pr_{ijr}\) linearization is not as straightforward as the above process, since in these cases the product of an integer and a continuous variable needs to be linearized. In order to do so, we show \(m_{lir}\) and \(n_{ijr}\) by m and n and define an upper bound equal to M and N for them, respectively. Then, we replace the integer variables of m and n by a series of binary variables \(m^{\prime}_{t}\) and \(n^{\prime}_{j}\), i.e. \(m = \sum\nolimits_{t = 0}^{M} t m^{\prime} _{t} = 1m^{\prime}_{1} + 2m^{\prime}_{2} + 3m^{\prime}_{3} + \cdots + Mm^{\prime}_{M}\) and \(n = \sum\nolimits_{h = 0}^{N} h n^{\prime}_{h}\) (\(m^{\prime}_{t}\) and \(n^{\prime}_{h} \in \left\{ {0,1} \right\}\)). Each product of integers now is a product of binaries and product of the corresponding binary variables can be linearized simply. Equations (27)−(32) and (33)−(38) show the linearization process for \(m_{lir} \times P_{lir}\) and \(n_{ijr} \times Pr_{ijr}\), respectively.

$$m_{lir} \times P_{lir} = \phi_{lir} ;\quad \forall l,i,r$$
$$m_{lir} = \mathop \sum \limits_{t = 0}^{M} tm^{\prime}_{lirt} ; \quad \forall l,i,r$$
(27)
$$\phi_{lir} = \mathop \sum \limits_{t = 0}^{M} \phi^{\prime}_{lirt} ; \quad \forall l,i,r$$
(28)
$$\phi^{\prime}_{lirt} \le tP_{lir} ; \quad \forall l,i,r,t$$
(29)
$$\phi^{\prime}_{lirt} \le tm^{\prime}_{lirt} ; \quad \forall l,i,r,t$$
(30)
$$\phi^{\prime}_{lirt} \ge tP_{lir} + t\left( {m^{\prime}_{lirt} - 1} \right);\quad \forall l,i,r,t$$
(31)
$$m^{\prime}_{lirt} \in \left\{ {0,1} \right\}; \phi^{\prime}_{lirt} \ge 0; \quad \forall l,i,r,t$$
(32)
$$n_{ijr} \times Pr_{ijr} = \pounds_{ijr} ; \quad \forall i,j,r$$
$$n_{ijr} = \mathop \sum \limits_{h = 0}^{N} hn^{\prime}_{ijrh} ; \quad \forall i,j,r$$
(33)
$${{\pounds}}_{ijr} = \mathop \sum \limits_{h = 0}^{N} {{\pounds^{\prime}}}_{ijrh} ; \quad \forall i,j,r$$
(34)
$${{\pounds^{\prime}}}_{ijrh} \le hPr_{ijr} ; \quad \forall i,j,r,h$$
(35)
$${{\pounds^{\prime}}}_{ijrh} \le hn^{\prime}_{ijrh} ; \quad \forall i,j,r,h$$
(36)
$${{\pounds^{\prime}}}_{ijrh} \ge hPr_{ijr} + h\left( {n^{\prime}_{ijrh} - 1} \right);\quad \forall i,j,r,h$$
(37)
$$n^{\prime}_{ijrh} \in \left\{ {0,1} \right\}; {{\pounds^{\prime}}}_{ijrh} \ge 0; \quad \forall i,j,r,h$$
(38)

Linearization of constraints (10), (12) and (14) is implemented using constraints (39)–(42). Although Eqs. (10), (12) and (14) are nonlinear, the only nonlinear term is \(P_{lkr} \times Z_{klr}\), which is a product of a continuous and a binary variable. We replace each \(P_{lkr} \times Z_{klr}\) with a new variable \(\theta_{klr}\) and a set of new constraints (39)–(42) is added to the programming model.

$$P_{lkr} \times Z_{klr} = \theta_{klr} ; \quad \forall k,l,r$$
$$\theta_{klr} \le Z_{klr} ;\quad \forall k,l,r$$
(39)
$$\theta_{klr} \le P_{lkr} ;\quad \forall k,l,r$$
(40)
$$P_{lkr} \le \theta_{klr} + \left( {1 - Z_{klr} } \right);\quad \forall k,l,r$$
(41)
$$\theta_{klr} \ge 0;\quad \forall k,l,r$$
(42)

In constraint (13), some modifications are needed to linearize the equation. In this constraint, \(Pr_{ijr}\) and \(w_{ijr}\) are continuous and integer variables, respectively. Therefore, in order to linearize this constraint, the method explained before (for two terms of objective function) will be applied again. This method is implemented in constraints (43)–(51).

$$Pr_{ijr} = \frac{{\mathop \sum \nolimits_{l}^{{}} d_{jl} \times B_{lijr} \times P_{lir} }}{{w_{ijr} + \varepsilon }};\quad \forall i, j, r$$
$$Pr_{ijr} \left( {w_{ijr} + \varepsilon } \right) = \mathop \sum \limits_{l}^{{}} d_{jl} \times B_{lijr} \times P_{lir} ;\quad \forall i, j, r$$
(43)
$$Pr_{ijr} \left( {w_{ijr} + \varepsilon } \right) = \mathop \sum \limits_{l}^{{}} d_{jl} \times \epsilon_{lijr} ; \quad \forall i, j, r$$
(44)
$$\alpha_{ijr} + \varepsilon Pr_{ijr} = \mathop \sum \limits_{l}^{{}} d_{jl} \times \epsilon_{lijr} ;\quad \forall i, j, r$$
(45)
$$w_{ijr} \times Pr_{ijr} = \alpha_{ijr} ;\quad \forall i, j, r$$
$$w_{ijr} = \mathop \sum \limits_{b = 1}^{W} bw^{\prime}_{ijrb} ;\quad \forall i, j, r$$
(46)
$$\alpha_{ijr} = \mathop \sum \limits_{b = 1}^{W} \alpha^{\prime}_{ijrb} ;\quad \forall i, j, r$$
(47)
$$\alpha^{\prime}_{ijrb} \le bPr_{ijr} ;\quad \forall i, j, r,b$$
(48)
$$\alpha^{\prime}_{ijrb} \le bw^{\prime}_{ijrb} ;\quad \forall i, j, r,b$$
(49)
$$\alpha^{\prime}_{ijrb} \ge bPr_{ijr} + b(w^{\prime}_{ijrb} - 1);\quad \forall i, j, r,b$$
(50)
$$w^{\prime}_{ijrb}\in \left\{ {0,1} \right\}; \alpha^{\prime}_{ijrb} \ge 0;\quad \forall i, j, r,b$$
(51)

In order to wte constraint (15) in a simpler linear fashion, first consider this new variable \(W_{ir}\) as \(\sum\nolimits_{j \in J} {w_{ijr} } ; \forall i,r\). The linearization process is as follows.

$$Cap_{i} = max_{r} \left( {\mathop \sum \limits_{j \in J} w_{ijr} } \right);\quad \forall i$$
(15)
$$W_{ir} = \mathop \sum \limits_{j \in J} w_{ijr} ;\quad \forall i,r$$
(52)
$$W_{ir} \le Cap_{i} ;\quad \forall i,r$$
(53)
$$W_{ir} \ge Cap_{i} - \left( {1 - \tau_{r} } \right)M;\quad \forall i,r$$
(54)
$$\mathop \sum \limits_{r\in R} \tau_{r} \ge 1;$$
(55)
$$\tau_{r} \in \left\{ {0,1} \right\};{ }W_{ir} \ge 0{ }$$
(56)

Regarding the linearization of nonlinear constraints, the following model (CDL-LP) will be achieved:

$$\begin{aligned} & ({\text{CDL } - \text{ LP}}) \\ & Min \mathop \sum \limits_{i \in I} g_{i} \times y_{i} + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{j \in J} \mathop \sum \limits_{l \in L} c_{lj} \times \mu_{ljr} + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{i \in I} \mathop \sum \limits_{l \in L} c_{li} \times \phi_{lir} \\ & \quad + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{i \in I} \mathop \sum \limits_{l \in L} \mathop \sum \limits_{j \in J} v_{i} \times d_{jl} \times \epsilon_{lijr} + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{i \in I} \mathop \sum \limits_{l \in L} c_{ij} \times {{\pounds}}_{ijr} + \mathop \sum \limits_{l \in L}^{{}} \beta_{l} \times \gamma_{l} \\ \end{aligned}$$
(57)
$$\begin{aligned} &{\text{Subject to}} \hfill \\ &\left( {2} \right){-}\left( {9} \right) \hfill \\ &\left( {{11}} \right) \hfill \\ &\left( {{16}} \right){-}\left( {{18}} \right) \hfill \\ &\left( {{19}} \right){-}\left( {{42}} \right) \hfill \\ &\left( {{45}} \right){-}\left( {{56}} \right) \hfill \\ \end{aligned}$$
$$P_{lir} = \left( {1 - q_{i} } \right) \times \mathop \sum \limits_{k = 1}^{I} \frac{{q_{k} }}{{1 - q_{k} }} \times \theta_{klr - 1} ; \quad \forall l,i;2 \le r \le \left| R \right|$$
(58)
$$PP_{lr} = \mathop \sum \limits_{k = 1}^{I} \frac{{q_{k} }}{{1 - q_{k} }} \times \theta_{klr - 1} ; \quad \forall l;2 \le r \le \left| R \right|$$
(59)
$$\beta_{l} = \mathop \sum \limits_{k = 1}^{I} \frac{{q_{k} }}{{1 - q_{k} }} \times \theta_{klR} ;\quad \forall l$$
(60)

Unlike most scenario-based stochastic programming formulations that have exponential number of variables and constraints, the proposed formulation is polynomial in size. In other words, it attempts to find the best solution without enumerating all possible combinatorial disruption scenarios. As indicated by Cui et al. (2010), if |R| = |I|, then the programming model is equal to stochastic programming formulation that covers all disruption scenarios. One can refer to Cui et al. (2010) for more details.

3.3 Programming formulation with identical disruption probability q

When the disruption probability is the same for all cross-docking centers, the original model (CDL-NLP) simply changes to cross-docking location problem with homogenous disruption probability (HDCDL). This problem has been introduced by Hasani Goodarzi et al. (2018) as a mixed integer linear programming model, whose model is presented in “Appendix 1”. Parameter q represents the identical failure probability for all cross-docks. In order to validate the proposed formulation (CDL-NLP), we compared it with model (HDCDL), where all qi values are set to q in (CDL-NLP). A simple proof for this assertion is presented here. In the model (CDL-NLP), consider all \(q_{i}\) values as q. Thus, constraint (10) changes to the following constraint.

$$P_{lr} = \left( {1 - q} \right) \times \frac{q}{1 - q} \times P_{lr - 1} = q \times P_{lr - 1} = q^{2} \times P_{lr - 2} = q^{r - 1} \times P_{l1} = q^{r - 1} \left( {1 - q} \right)$$
(61)

Based on above equation, the probability of using direct shipment for suppliers in level r (\(PP_{lr}\)) is \(q^{r - 1}\). Constraint (13) of model (CDL-NLP), the probability of serving plant j by cross-dock i, is modified to the following constraint.

$$Pr_{jr} = \frac{{\mathop \sum \nolimits_{l}^{{}} d_{jl} \times B_{lijr} \times P_{lr} }}{{w_{ijr} + 0.0001}} = \frac{{q^{r - 1} \left( {1 - q} \right)\mathop \sum \nolimits_{l}^{{}} d_{jl} \times B_{lijr} }}{{w_{ijr} + \varepsilon }} = q^{r - 1} \left( {1 - q} \right); \quad \forall i, j, r$$
(62)

Finally, \(\beta_{l}\) is calculated regarding this constraint:

$$\beta_{l} = \frac{q}{1 - q} \times P_{lR} = \frac{q}{1 - q} \times q^{R - 1} \left( {1 - q} \right) = q^{R} ; \quad \forall l$$
(63)

These modified fixed values are replaced with corresponding variables in the model (CDL-NLP) that provides the formulation of HDCDL.

4 Solution method: Lagrangian relaxation

The proposed model (CDL-NLP) can be solved using a standard optimization software such as GAMS via its BONMIN solver in nonlinear case, as well as by CPLEX for linear model (CDL-LP), although the computational time is considerable for (CDL-NLP) even in small sized instances with five suppliers and one assembly plant. Thus, we apply a Lagrangian relaxation (LR) method to solve the problem effectively.

We relax constraint set (3) as performed by Cui et al. (2010) with Lagrange multipliers λil. Relaxing this constraint cause a decomposition in the problem, since this constraint shows the connection between two decision variables (\(Z_{ilr}\) and \(y_{i}\)). In the literature of Un-capacitated facility location problem (UFLP), this constraint is usually selected for relaxing, since, compared to relaxing other constraints, it reduces the computational effort. The following problem is obtained after relaxing constraint set (3):

$$\begin{array}{*{20}c} {\max } \\ \lambda \\ \end{array} \begin{array}{*{20}c} {min} \\ {y,U, B, Z, m, n} \\ \end{array}$$

where \(min_{y,U, B, Z, m, n}\) is the following relaxed formulation:

$$\begin{aligned} & \left( {{\text{LRCDL}}} \right) \\ & Min \mathop \sum \limits_{i \in I} g_{i} \times y_{i} + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{j \in J} \mathop \sum \limits_{l \in L} c_{lj} \times \mu_{ljr} + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{i \in I} \mathop \sum \limits_{l \in L} c_{li} \times \phi_{lir} \\ & \quad + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{i \in I} \mathop \sum \limits _{l \in L} \mathop \sum \limits_{j \in J} v_{i} \times d_{jl} \times \epsilon_{lijr} + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{i \in I} \mathop \sum \limits_{l \in L} c_{ij} \times {{\pounds}}_{ijr} + \mathop \sum \limits_{l \in L}^{{}} \beta_{l} \times \gamma_{l} \\ & \quad + \mathop \sum \limits_{i \in I}^{{}} \mathop \sum \limits_{l \in L}^{{}} \lambda_{il} \left( {\mathop \sum \limits_{r \in R}^{{}} Z_{ilr} - y_{i} } \right) \\ \end{aligned}$$
(64)
$$\begin{aligned} &{\text{Subject to}} \hfill \\ & \left( {2} \right) \hfill \\ &\left( {4} \right){-}\left( {9} \right) \hfill \\ &\left( {{11}} \right) \hfill \\ &\left( {{16}} \right){-}\left( {{18}} \right) \hfill \\ &\left( {{19}} \right){-}\left( {{42}} \right) \hfill \\ &\left( {{45}} \right){-}\left( {{56}} \right) \hfill \\ &\left( {{58}} \right){-}\left( {{6}0} \right) \hfill \\ \end{aligned}$$

Hence, this method attempts to minimize the objective function value regarding the original decision variables \(y_{i} , U_{ljr} , B_{lijr} , Z_{ilr}\),\(m_{lir}, n_{ijr}\), while maximizing it with respect to λil. The objective function can be rewritten as follows:

$$\begin{aligned} & Min \mathop \sum \limits_{i \in I} \left(g_{i} - \mathop \sum \limits_{l \in L}^{{}} \lambda_{il} \right)y_{i} + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{j \in J} \mathop \sum \limits_{l \in L} c_{lj} \times \mu_{ljr} + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{i \in I} \mathop \sum \limits_{l \in L} c_{li} \times \phi_{lir} \\ & \quad + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{i \in I} \mathop \sum \limits_{l \in L} \mathop \sum \limits_{j \in J} v_{i} \times d_{jl} \times \epsilon_{lijr} + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{i \in I} \mathop \sum \limits_{l \in L} c_{ij} \times {{\pounds}}_{ijr} + \mathop \sum \limits_{l \in L}^{{}} \beta_{l} \times \gamma_{l} \\ & \quad + \mathop \sum \limits_{i \in I}^{{}} \mathop \sum \limits_{l \in L}^{{}} \mathop \sum \limits_{r \in R}^{{}} Z_{ilr} \lambda_{il} \\ \end{aligned}$$
(65)

4.1 Lagrangian relaxation outline

The main concept of Lagrangian relaxation algorithm is to identify the set of constraints that increase the computational complexity of the model and to relax them. In order to do so, they are added into the objective function by attaching penalties based on the amount of constraints violation. Hence, the solution approach is guided towards reducing the amount of violation (Mohammad Nezhad et al. 2013). The relaxed constraint set provides a lower bound. A corresponding upper bound is then generated meaning that at each iteration of algorithm, the lower and the upper bounds are derived concurrently. Lagrangian relaxation improves the lower and upper bounds through updating the Lagrange multipliers.

The process is repeated until either the gap between the lower and upper bounds goes below a predefined threshold or another stopping criterion is met (Lim et al. 2010). The main steps of LR for solving the model are presented below (Fig. 2).

Fig. 2
figure 2

The main steps of Lagrangian relaxation (Lim et al. 2010)

The steps of algorithm are described in detail in the following sub-sections.

4.2 Computation of lower bound

The first step is to compute the lower bound. For fixed values of the Lagrange multipliers \(\lambda_{il}\), (59) provides a lower bound on the optimal objective function (52), which is the linear reformulation of objective (1). Two methods are applied to generate lower bounds: in the first one, lower bounds are derived by solving the relaxed programming model (LRCDL) via exact algorithms, while in the second method, a fast-approximate approach is used to provide lower bounds based on Cui et al. (2010). Considering these two methods of obtaining lower bound, two Lagrangian relaxations are proposed.

4.2.1 An approximate model to find lower bound

Although in the exact model (LRCDL) one constraint has been relaxed, its worst-case complexity is still exponential. Thus, in this section we provide a fast approximate formulation and algorithm to find lower bounds in polynomial time. Inspired by Cui et al. (2010), we replace the variable probabilities Plir, PPlr and Prijr with fixed numbers in the approximate formulation. Define i1, i2, …, iI as the order of cross-docks such that \(q_{{i_{1} }} \le q_{{i_{2} }} \le \cdots \le q_{{i_{I} }}\). In the case of identical qi, the tie can be broken arbitrarily. For \(1 \le r \le \left| R \right|\), we replace Plir with ƒr and PPlr with \(\partial_{r}\), where ƒr and \(\partial_{r}\) are computed using Eqs. (66) and (67).

$$f_{r} = \left( {1 - q_{{i_{r} }} } \right)\mathop \prod \limits_{l = 1}^{r - 1} q_{{i_{l} }}$$
(66)
$$\partial_{r} = \mathop \prod \limits_{l = 1}^{r - 1} q_{{i_{l} }} = \frac{{f_{r} }}{{\left( {1 - q_{{i_{r} }} } \right)}}$$
(67)

It should be noted that disruption probability for direct shipment is equal to zero and we do not consider it in ranking of cross-docks; the ranking is only done for cross-docking centers. Hence, if direct shipment is used for a supplier in level r, we can simply set \(q_{{i_{r} }} = 0\) and as a result \(f_{r + 1} = f_{r + 2} = \cdots = f_{R} = 0\). The Probability that plant j is served by cross-dock i at level r (Prijr) also can be replaced by \(f_{r}\). Equation (68) calculates the penalty of not serving a supplier at all. Regarding the above description, if there is direct shipment in any level of reassignment, the penalty cost will be zero.

$$\beta = \mathop \prod \limits_{l = 1}^{R} q_{{i_{l} }}$$
(68)

Based on these modifications, the mathematical formulation will change to a linear programming model. The approximated model (CDL-APRX) is presented below.

$$\begin{aligned} & \left( {\text{CDL } - \text{ APRX}} \right) \\ & Min \mathop \sum \limits_{i \in I} g_{i} \times y_{i} + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{j \in J} \mathop \sum \limits_{l \in L} c_{lj} \times \partial_{r} \times U_{ljr} + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{i \in I} \mathop \sum \limits_{l \in L} c_{li} \times m_{lir} \times f_{r} \\ & \quad + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{i \in I} \mathop \sum \limits_{l \in L} \mathop \sum \limits_{j \in J} v_{i} \times d_{jl} \times B_{lijr} \times f_{r} + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{i \in I} \mathop \sum \limits_{l \in L} c_{ij} \times n_{ijr} \times f_{r} + \mathop \sum \limits_{l \in L}^{{}} \beta \times \gamma_{l} \\ \end{aligned}$$
(69)
$$\begin{aligned}& {\text{Subject to}} \hfill \\ &\left( {2} \right){-}\left( {8} \right) \hfill \\ &\left( {{16}} \right){-}\left( {{17}} \right) \hfill \\ \end{aligned}$$

4.3 Computation of upper bound

At each iteration of Lagrangian relaxation, both a lower and an upper bound are obtained. The solution of relaxed model (LRCDL) provides a lower bound. If it is feasible for original model (CDL-LP), then it provides an upper bound as well, and in fact an optimal solution for (CDL-LP): since the violation of constraint (3) is 0 and the lower and upper bounds are equal. If the solution of (LRCDL) is not feasible for (CDL-LP), then we construct a feasibility phase by the method that will be explained. Upper bounds are computed using the following process:

First, the decision variables are recalled from the lower bound solution and set as a parameter in programming model (CDL-LP). Then the feasibility of solution is checked regarding constraint set (3). In this procedure after finding a lower bound, the algorithm checks if the solution is feasible or not and if it is not, a modification on solution is executed. In order to do so, a loop is defined in which the following process is done.

$$\begin{aligned} & for \left( {i,l} \right) \\ & if \mathop \sum \limits_{r \in R}^{{}} Z_{ilr} > 0 \& y_{i} = 0;\,\,\, then\,\, y_{i} = 1 \\ & end \\ \end{aligned}$$

In order to strengthen the upper bound, another loop is defined that performs as a cutting constraint: if a cross-dock serves no supplier in all levels, it must be closed.

$$\begin{aligned} & for \left( i \right) \\ & if \mathop \sum \limits_{r \in R}^{{}} \mathop \sum \limits_{l \in L} Z_{ilr} = 0 \& y_{i} = 1; \,\,\,\,then \,\,y_{i} = 0 \\ & end \\ \end{aligned}$$

After implementing this phase, we compute the upper bound for the original objective function (52) using the decision variables.

4.4 Multiplier initialization and updating

The Lagrange multipliers, λ, are initialized by setting their initial values to 2 (\(\lambda_{il}^{\left( 0 \right)} = 2\)). As mentioned before, each value of λ provides a lower bound on the optimal objective value of (CDL-LP). Thus, in order to find the best possible lower bound which is close to optimal value, we need to solve max obj(λ).

This problem is solved approximately using sub-gradient optimization as described by Fisher (1981, 1985) and Daskin (1995). At iteration n, the step size \(\tau^{{{\prime }n}}\) is calculated by Eq. (70), where \(\overline{UB}\) is the best known upper bound and \(LB\) is the lower bound found at the current iteration. \(\rho^{n}\) is a constant at iteration n, halved when 10 consecutive iterations fail to improve, and \(\rho^{1}\) is initialized to 2. Using the lower and upper bounds obtained, the multipliers are updated based on Eq. (71).

$$\tau^{{{\prime }n}} = \frac{{\rho^{n} \left( {\overline{UB} - LB} \right)}}{{\mathop \sum \nolimits_{i \in I} \mathop \sum \nolimits_{l \in L} (\mathop \sum \nolimits_{r \in R} Z_{ilr} - y_{i} )^{2} }}$$
(70)
$$\lambda_{il}^{{\left( {n + 1} \right)}} = \max \left\{ {0,\lambda_{il}^{\left( n \right)} + \tau^{{{\prime }n}} \left( {\mathop \sum \limits_{r \in R} Z_{ilr} - y_{i} } \right)} \right\}$$
(71)

4.5 Termination criteria

The algorithm terminates when any of the following criteria is achieved:

  1. 1.

    \(\frac{{\overline{UB} - LB}}{LB} < \varepsilon\), in which \(\varepsilon\) is the pre-specified optimality tolerance (the gap between the best lower and upper bound gets close to zero); we typically set the tolerance value \(\varepsilon\) to 0.001;

  2. 2.

    The number of iterations reaches a maximum value determined by the user (i.e., n > nmax) or the maximum computing time is obtained;

  3. 3.

    Step size constant \(\rho^{n}\) gets close to zero; i.e., \(\rho^{n} < \rho_{min}\), which means that a negligible change in the solution configuration is detected. We typically set the minimum level of step size constant (\(\rho_{min}\)) to 0.0001.

5 Computational results

Although there are some data sets in Snyder and Daskin (2005) and Lim et al. (2010) to evaluate the formulation and algorithm, the network and environment in our problem is different from these earlier studies. In our case, we consider a three-echelon supply chain regarding cross-docking networks and take in to account location and transportation problems, simultaneously, while they design a two-echelon reliable location problem. Thus, the geographical distribution of suppliers and assembly plants (i.e. the distance between them) is inspired by test problems considered by Hasani Goodarzi and Zegordi (2016): set 1(10 3 1) (i.e. 10 part suppliers, 3 cross-docks and 1 assembly plant), set 2 (17 5 2), set 3 (24 6 3), set 4 (30 8 4). For each problem set, we generate 10 instances (totally 40 instances). Distances between each couple of nodes are drawn from U (10, 100). Transportation cost is set equal to the distance between each couple of nodes. The maximum capacity of vehicles is assumed 100 and demand of assembly plants is drawn from U [20, 90] and rounded to the nearest integer. The penalty for not serving supplier l is set to 103 for all suppliers in which losing a supplier is extremely costly. Fixed cost of establishing cross-docks is randomly generated from U (200, 500) and variable cost per commodity unit at all cross-docks is 0.01. Disruption probabilities qi are drawn from U [0.1, 0.5].

We test the algorithm for |R| = 2, in all problem sets and for R = 3 and 4 in problem set 1. Using the programming formulation, the maximum capacity of cross-docks is obtained considering disruption risk for candidate nodes. The Lagrangian relaxation algorithm is coded in GAMS/CPLEX software (version 24.7) and run on a PC with an Intel Core 5 Duo CPU (2.33 GHz) and 2 GB memory. Parameter values for the algorithm are summarized in Table 3.

Table 3 Parameter values for Lagrangian relaxation

5.1 Algorithm performance

This section presents the results of computational study to investigate the performance of solution algorithms. We execute the Lagrangian relaxation process in two different methods: in the first one, lower bounds are obtained by solving the relaxed formulation via exact algorithm (LR1), and the second method (LR2) uses an approximate lower bound as described in Sect. 4.2.1.

For all problem sets, LR1 and LR2 are executed with heterogeneous disruption probabilities. Table 4 presents the result of solving four problem sets using GAMS/CPLEX, LR1 and LR2 in |R| = 2 levels. The third column shows the solutions found by GAMS/CPLEX, which are optimal in problem sets 1–3. For problem set 4, it is not able to find optimal solution in < 2 h and the solution reported in this table are the best solution found in 16 min. In Table 4, LB, UB and Gap give the lower bound, upper bound and gap between lower bound and upper bound in percent, respectively. The columns specified by “ITR” indicate the iteration number, when the best lower bound is reached for LR1 and LR2.

Table 4 Algorithms’ results for two levels

For problem #21, the gap between lower and upper bound of LR1 is small (0.849%), though LR1 took about 20 h to solved it. Hence, problem set 3 and 4 do not have available solution using LR1 as the solving method. For problem set 1–3, the optimal solutions are available, so Table 5 shows the difference between lower bound of LR2 and optimal solution in problem #1 to #30. These values are shown in GAP columns. LR2 is able to find optimal solutions in 6 cases of problem set 1. Although there is a gap between its lower bound and optimal solution, it is fast compared to exact method regarding Table 4.

Table 5 The difference between optimal value and lower bound of LR2

As can be inferred from Table 4, in some instances like problem #3, LR2 presents a small gap between lower and upper bound, while it has a considerable difference with optimal value. This happens because of reformulation of model in LR2 and solving an approximate model to find lower bound. Similarly, in problem #10 the lower and upper bounds of LR2 are equal but with a deviation from CPLEX solution. In such cases, LR2 finds equal lower and upper bounds and consequently an optimal solution for the approximated model that has a deviation from the original model (CDL-LR).

The difference of solutions found by LR2 and CPLEX is relatively large in set 4, since in this problem set CPLEX solutions are not optimal and consequently are greater than optimal value, so the difference between approximated lower bound and CPLEX solutions is considerable. Regarding Table 5, in problem set 3, the difference between CPLEX and LR2 is great compared to other sets, though the lower and upper bound of this algorithm has a relatively small gap.

In Table 4, two levels of reassignment are considered. In order to study the effect of levels on solutions quality and computational time, problem set 1 is solved with |R| = 3 and 4 levels in Table 6. It should be noted that in most cases, computational time drastically grows when the number of levels increases, but it is not necessarily more in four-level problems compared to three-level instances. This trend is true for most problem instances, even in the cases that solution structure and cost are the same for |R| = 2, 3 and 4 levels. The computation time of LR1 for more complicated problems is considerably high, for instance, CPU time for problem #11 is about 7 h and 54 min when there are 3 levels of reassignment. Algorithm LR1 is not able to solve problem #11 in less than 28 h with R = 4. CPLEX solves it in 125 s for |R| = 3 and we set a time limitation of 16 min for |R| = 4. Only the results for set 1 are reported in Table 6.

Table 6 Results of solving problem set 1 with 3 and 4 levels of reassignment

When the costs of problem set 1 are scrutinized in Tables 4 and 6, in most cases increasing the number of levels does not change the objective value. This event has a simple reason: in this problem set, either all shipments are moved directly in the first level or a cross-dock is used in the first level and direct shipment in the second level. Since it is not cost-effective to open more than one cross-dock, the model decides to send every consignment directly or use at most one cross-dock. If model assigns the only cross-dock to nodes in a level, in the next level it will use direct shipment definitely. When the direct shipment is assigned in a level, no cross-docking center will be allocated in the next level as a backup method for direct shipment, meaning that problem will be solved in one or two levels and increasing the reassignment level will not change the solution in such kind of instances. Moreover, in the cases when only direct shipment is used, the result is the same for LR1 and LR2 and increasing the number of levels will not change the cost, but CPU time in most cases drastically grows especially in LR1. As an example, in problem #6, CPU time for |R| = 4 is considerably more than that of 2 and 3 levels. In problem #7 with |R| = 2, although all shipments are implemented by direct strategy, LR1 is not able to find optimal solution and takes considerable computation time, while for |R| = 3 it finds optimal solution in a less running time.

As mentioned in the literature, heterogeneous disruption probability makes the model very complicated, while for problems with identical probability, CPLEX is able to find optimum solution in a small amount of running time. For illustration, CPU time of CPLEX for problem #21 to #25 is reported in Fig. 3 in two cases: with identical and heterogeneous disruption probability.

Fig. 3
figure 3

A comparison of CPLEX CPU time (s) in cases of identical and heterogeneous for test problem #21 to #25

In general, some points can be easily inferred from the results, LR1 takes more CPU time compared to LR2 and CPLEX (optimal solution). LR1 is not able to solve problem set 3 in less than 20 h, thus we solve set 3 and set 4 just by CPLEX and LR2. CPU time of LR2 is less than that of CPLEX, especially in set 4. Moreover, penalty cost is set to 103 for all suppliers and in none of instances, penalty cost happens.

5.2 Case study

In this section, we present the application of the approach on a real industrial case in auto-making industry. The chosen case is the biggest auto-making company in the Middle East consisting of more than 600 suppliers in different cities. To simplify the problem, we categorize all suppliers in 24 different cities. There are five assembly plants and six potential locations for establishing cross-dock(s). Location of all nodes in this distribution network can be found in “Appendix 3”. Transportation cost between each couple of nodes is shown in “Appendix 3”, as well. The homogenous vehicle fleet consists of trucks and capacity of each truck is 192 standard pallets. The smallest pallet is defined as the standard pallet in the real case and size of other pallets are reported in comparison with the standard pallet.

In order to estimate the fixed cost of establishing cross-docks, we utilize the approach developed by Gumus and Bookbinder (2004), in which, the establishing (commissioning) cost is determined per each usage. Based on experts in the company, estimated establishing cost is about 3 million dollars. If depreciation period of cross-docks is set to 12 years, the annual establishing cost is $250,000. Regarding similar cases in auto-making industry, shipments typically spend less than 72 h in the cross-docking process (3 days). Hence, the prorated establishing cost is about $2083 for each time of utilization (around ten times a month). We simply put $2500 for this cost. As mentioned above, the time frame of the model is set to 72 h, which is equivalent to each time of running the cross-docking process, from the first step (pick up parts from suppliers) to the last point (drop parts off at assembly plants). This time interval is based on the case study and other similar real cases data in auto making industry for which the data of transportation costs are defined in 3 days intervals. That is why all costs including fixed cost of establishing cross-docks are transformed to be used in this time scope. We note that this transformation can be done with any length of time frame, depending on the case study data. Operational cost at cross-docks is calculated based on number of standard pallets passing through them and is set to $0.25 for each pallet. The potential nodes to establishing cross-docks are: Nodes 25, 26, 27, 28, 29 and 30, as can be found in Fig. 7 in “Appendix 3”.

5.2.1 Case without disruption

First, the problem is solved under normal condition without considering disruption to indicate the effect of using cross-docking on total distribution cost. Based on case study conditions, the demand from a supplier can be more than vehicle capacity, hence, we modified the objective function as follows.

$$\begin{aligned} & Min \mathop \sum \limits_{i \in I} g_{i} \times y_{i} + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{j \in J} \mathop \sum \limits_{l \in L} c_{lj} \times dir_{ljr} + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{i \in I} \mathop \sum \limits_{l \in L} c_{li} \times m_{lir} \\ & \quad + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{i \in I} \mathop \sum \limits_{l \in L} \mathop \sum \limits_{j \in J} v_{i} \times d_{jl} \times B_{lijr} + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{i \in I} \mathop \sum \limits_{l \in L} c_{ij} \times n_{ijr} \\ \end{aligned}$$
(72)

Constraint (73) has been also added to the model.

$$U_{ljr} \times d_{jl} \ge dir_{ljr} \times Q; \quad \forall l,j,r$$
(73)

where \(dir_{ljr}\) is the number of vehicles that go directly from supplier l to plant j at level r. When both strategies (direct shipment and cross-docking) are allowed, cost terms are as indicated in Table 7.

Table 7 Terms of supply cost when both strategies are allowed

In this solution, City 30 is selected as cross-dock, for which the best capacity is 4240 pallets. This means that if we consider totally 10,000 pallets in the system, 42.39% of pallets go through cross-dock and the remaining are sent directly. Total number of vehicles from cross-dock to assembly plants 1 to 5 is 9, 6, 1, 1 and 7, respectively. Totally 41 vehicles are sent directly from suppliers to assembly plants. If we force the model to pass all transshipments through cross-dock, the total cost of system will be $33,247, for which the cost terms are shown in Table 8. In this case, City 30 is selected for setting up the cross-dock, as well, with the capacity of 10,000 pallets. If creating such a capacity is not possible, more than one cross-dock should be established. In contrast, if all shipments have to be done directly, total cost of network is $58,003. If limited capacity of vehicles is relaxed, the total number of pallets passing thought cross-docks will be 6134 which means that in a network with this topology, considering a combination of both strategies is economical and for 61.34% of pallets, at maximum, cross-docking strategy is recommended.

Table 8 Terms of supply cost when just cross-docking is allowed

In order to investigate the effect of cross-docks capacity on total cost, we boost the capacity from 1000 pallets to 10,000 pallets. The result is indicated in Fig. 4. It seems that capacity of 4000 pallets is an appropriate choice, which decrease 21% of cost, in comparison with capacity of 1000 pallets. The fluctuation in trend may be because of CPLEX solver which is sensitive to large values such as big M.

Fig. 4
figure 4

The effect of cross-dock capacity on total supply cost

5.2.2 Case considering disruption

In this sub-section the problem is solved in the condition in which the probability of disruption is counted. As mentioned in the literature, a drawback of this approach is assuming known disruption probabilities (Jabbarzadeh et al., 2016), while cross-dock failure probabilities, qi, should be estimated by historical data, experts view and some other resources such as the probability of earthquake, fire and flood occurrence in a region. “Since historical data on rare events such as earthquakes, floods, strikes, and terrorist attacks are limited or nonexistent, the likelihood of a disruption occurrence is difficult to quantify” (Simchi-Levi et al. 2014). Because of lacking historical data in disruption occurrence, we consider the same probability of disruption in all potential cross-docks, which is one limitation of our work. The objective function of model is modified to Eq. (74).

$$\begin{aligned} & Min \mathop \sum \limits_{i \in I} g_{i} \times y_{i} + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{j \in J} \mathop \sum \limits_{l \in L} c_{lj} \times dir_{ljr} \times q^{r - 1} + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{i \in I} \mathop \sum \limits_{l \in L} c_{li} \times m_{lir} \left( {1 - q} \right)q^{r - 1} \\ & \quad + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{i \in I} \mathop \sum \limits_{l \in L} \mathop \sum \limits_{j \in J} v_{i} \times d_{jl} \times B_{lijr} \left( {1 - q} \right)q^{r - 1} + \mathop \sum \limits_{r \in R} \mathop \sum \limits_{i \in I} \mathop \sum \limits_{l \in L} c_{ij} \times n_{ijr} \left( {1 - q} \right)q^{r - 1} + \mathop \sum \limits_{l \in L}^{{}} q^{R} \gamma_{l} \\ \end{aligned}$$
(74)

To investigate the influence of factors on cost and number of opened cross-docks, sensitivity analysis is performed here in four various aspects:

  • The effect of fixed cost of establishing cross-docks on total cost of network

  • The effect of disruption probability on total cost of network

  • The effect of number of recovery levels (R) on total cost of network

  • The effect of not servicing penalty on total cost of network

5.2.2.1 The effect of fixed cost of establishing cross-docks on total cost of network

In the first run, q is 0.1 for all cross-docks and |R| = 2. Penalty cost of not serving is set to $250 and fixed cost of establishing is $2500. In this problem, City 30 is chosen for setting up the cross-dock, as in previous section. Totally, 3384 pallets pass through it. Other details are provided in Table 9.

Table 9 Terms of supply cost when disruption is considered (|R| = 2, Fixed cost of establishing = $2500)

When prorated establishing cost of each potential cross-dock is $5000, City 30 still is chosen with the best capacity of 4212 pallets. Details of this run is presented in Table 10.

Table 10 Terms of supply cost when disruption is considered (|R| = 2, Fixed cost of establishing = $5000)

In order to investigate this sensitivity, various runs of problem with different values for establishing cost, from 2500 to 40,000 are performed, whose result are shown in Table 11 and Fig. 5.

Table 11 The effect of changing fixed cost of establishing cross-docks on total system cost (|R|  = 2)
Fig. 5
figure 5

Trend of total system cost relative to changing in fixed cost of establishing cross-docks (|R| = 2)

Having used Newton's method, we found the first point at which all transshipments are done directly from suppliers to assembly plants. In other words, the set point for direct shipment and cross-docking is the point in which prorated fixed cost of establishing cross-dock is $30,275 at maximum.

5.2.2.2 The effects of disruption probability and number of recovery levels |R| on total cost of network

In this run, fixed cost of establishing each cross-dock is $2500 and not servicing penalty for each supplier is $2500, meaning that parts shortage is not allowed. In order to observe the effects of increasing levels and disruption probability on the total cost, we solve the problem with different values for R and q. q is varied between 0.1 to 0.5 with the step size of 0.05 and R = 2, 3, 4. The results are indicated in Table 12 and Fig. 6.

Table 12 The sensitivity of total cost to parameter q and R
Fig. 6
figure 6

The effect of increasing q and R on total cost of problem (penalty cost of not servicing = $2500)

When |R| = 3 and q = 0.5, the solver decides to establish two cross-docking centers. Penalty cost in this test problem is 0, since it uses direct shipment as a backup strategy for all suppliers. Candidate nodes of 28 and 30 are chosen as cross-docks in all cases. For some values of q, other candidates are added to them. For instance, when |R| = 3 and q = 0.45, candidate nodes of 27 up to 30 are recommended by solver for establishing cross-docks.

In Fig. 6, we observe that the total cost is sensitive to disruption probability, and for a given probability of disruption, the impact of R is very low or even negligible. We also observe that, when the disruption is highly probable, higher levels of recovery plans become interesting to consider.

5.2.2.3 The effect of not servicing penalty on total cost of network

When |R| = 2, q = 0.2 and not servicing penalty cost for each supplier is $250, the total cost of network is $32,485 and 4287 pallets pass through cross-dock. Increasing this penalty cost from $250 to $15,000 leads to the results in Table 13. When penalty cost for each supplier is $9250, the solver prefers to use direct shipment as the main or back up strategy for all consignments and one node is chosen for setting up cross-dock. Total transportation cost is $38,143 and penalty cost is 0. In other words, if shortage of parts is not allowed and imposes a huge cost on system, direct movement is recommended as the main or backup strategy for all shipments. In this case, establishing cross-dock will be done in Node 27. Increasing penalty to extremely large values will not change the solution.

Table 13 The sensitivity of total cost to changes in not-servicing penalty

To sum up, the results show that in such networks, using cross-docking exclusively, is not the solution and for the chosen case, this can be used just for 61.34% of flow of parts, at maximum, when capacity of vehicles is relaxed. Hence, forcing all parts to pass through cross-docks is not cost effective. According to Tables 7 and 8, integrating both strategies can reduce system cost about 14% compared to condition in which only cross-docking is allowed. This approach also can diminish costs about 99% in comparison to exclusive direct shipment. In most runs, Node 30 is chosen as the best location to set up a cross-dock. The break-even point of fixed cost of establishing cross-dock is $30,275, meaning that the budget for commencing cross-dock can be $43,596,000 at maximum. Spending more than this amount is not economic. Regarding Fig. 4 (normal condition) and Table 12, the best capacity for cross-dock is proposed to be about 40% to 50% of total pallets in system. The exact value of capacity can be determined regarding fixed cost and other parameters.

Comparing the case with and without disruption (Tables 7, 9), we will find that considering failure probability of 0.1 for all cross-docks leads to 12% increase in the total cost. When there is no disruption in the system, 4240 pallets pass the cross-dock, while in disruption condition with q = 0.1, 3384 pallets go through cross-dock and direct shipment is preferred in comparison with normal situation. Hence, the required capacity of cross-dock is decreased. In both cases the same location is selected to open a cross-dock.

Paying attention to data of Table 12, one can realize that when |R| = 2 and shortage is not allowed, increasing disruption probability from 0.1 by 5% leads to 2.84% cost growth. Changing q from 0.1 to 0.2 causes 9.86% augmentation in total cost, while to 0.3 causes 17.4% cost increase. If failure probability raises from 0.1 to 0.5, there will be 41.5% increment in the total cost of system to handle this disruption risk. In these cases, two locations are chosen to establish cross-docks. Comparing the result in this table with Table 7 reveals that when there is 0.2 failure probability for all cross-docks, 19% more cost is imposed on the distribution system to handle the disruption risk (in comparison with normal condition).

6 Conclusion

Nowadays consequences of disruptions caused by natural disasters, terrorist attacks or man-made events on supply chains cannot be neglected. In order to deal with these consequences, one effective approach is to design recovery plans to apply in the case of disruptions. In this study we attempt to hedge against disruption in cross-docking facilities by considering levels of reassignment in which every supplier can be allocated to up to |R| ≥ 1 cross-docks. If disruption occurs, this supplier will be either diverted to other operational cross-docks or served by direct shipment as the backup strategy. This approach can be easily utilized in many supply chains having any kind of distribution centers (not necessarily the cross-docking centers), such as food, clothing and auto making industries, etc. We present a mathematical model for this problem to find cross-dock locations and the optimal capacity of them. In the model (CDL-NLP), the disruption probabilities are heterogeneous (facility-specific), which significantly complicates the mathematical model and makes it a nonlinear programming formulation. In order to solve the nonlinear model, first some tools are utilized to linearize it and generate (CDL-LP). Then we propose two Lagrangian relaxation-based methods (LR1 and LR2) that are effective for solving the linearized model. LR1 finds lower bounds by solving relaxed model via exact methods, while in LR2 an approximated model is utilized to estimate the lower bound quickly. Approximated solving method (LR2) provides near-optimal solutions for (CDL-LP) quickly (with an optimality gap below 2.26%) and handles larger problem instances compared to CPLEX and LR1. Computational studies for model (CDL-LP) show that LR2 is fast (in terms of CPU time) with a small optimality gap, while LR1 outperforms it in terms of solution quality.

A case study is conducted in this research on the biggest auto-making company in Middle East. We present some sensitivity analysis on the case to investigate the effect of changing various parameters on system cost and number of opened cross-docks. Based on results, in such networks, using cross-docking exclusively, is not a recommended solution and integrating cross-docks with direct shipment is cost-effective. Increasing disruption probability can impose a surplus cost on system and in most cases increments the number of opened cross-docks.