Introduction

In the competitive environment, companies must satisfy more complicated demands with less response time. Cross-docking is a relatively new warehousing strategy in logistic that involves moving products directly from the receiving dock to the shipping dock (Bellanger et al. 2013). It can be defined as a transshipment platform which receives flows from various suppliers and consolidates them with other flows for a common final delivery to a destination (Kinnear 1997). Also the efficiency of cross-docking will influence the lead time, inventory level and response time to the costumer (Kuo 2013).

In the literature, there are some researchers who considered cross-docking problem. For instance, Bellanger et al. (2013) dealt with the problem of finding optimal schedule in cross-docking, where the main goal was to minimize the completion time of the latest order. In their paper, cross-docking was modeled as a three-stage hybrid flow shop, and for obtaining good feasible solutions, they have developed several heuristic schemes. They also proposed a branch-and-bound algorithm to evaluate the heuristics. Chen and Song (2009) considered two-stage hybrid cross-docking scheduling problem, where the objective was minimizing the make span. To do so, a mixed-integer programming and four heuristics were presented.

Kuo (2013), considered another interesting aspect in optimization of cross-docking; he presented a model for optimizing both inbound and outbound truck sequencing and both inbound and outbound truck dock assignment. Jayaraman and Ross (2003) considered supply chain design problem which incorporates cross-docking into a supply chain environment. Agustina et al. (2010) provide a literature review of mathematical models in cross-docking, where the models were classified into three levels of operational, tactical and strategic.

In recent years, Santos et al. (2013) dealt with pickup and delivery in cross docks, and proposed an integer programming model and a Branch-and-price for the problem. Liao et al. (2012) considered problem of inbound and outbound truck sequencing for cross docks, and proposed two new hybrid differential evolution algorithms for the problem. Agustina et al. (2014) considered perishable food products, and proposed a mixed-integer model to minimize earliness, tardiness, inventory holding, and transportation cost.

Location analysis and network design are two major research areas in supply chain optimization, location problems deal with the decisions of where to optimally locate facilities whereas network design involves activating optimal links (Contreras and Fernández 2012). In this area, Ross and Jayaraman (2008) studied location planning for the cross docks and distribution centers in supply chains. Later, Babazadeh et al. (2012) proposed a new network design mathematical model for an agile supply chain.

Lüer-Villagra and Marianov (2013) considered price and location; they proposed a competitive hub location and pricing problem for the air passenger industry. Mousavi and Tavakoli-Moghaddam (2013) considered location and routing scheduling problems with cross-docking, and present a two-stage mixed-integer programming model.

Tavakkoli-moghaddam et al. (2013) considered a network design problem for a three level supply chain, and proposed a new mathematical model, where their aims were to determine the number of located distribution centers, their locations, capacity level, and allocating customers to distribution centers.

One of the most important factors in supply chain management is response time, which consists of production, handling and waiting times (Vis and Roodbergen 2011). Some researchers modeled response time in stochastic environment, and some of them used queuing theory to represent a mathematical model. Some researchers believe that it makes the problem hard to solve, and some suggest cutting planes for obtaining optimal solutions in small and medium-sized problem instances (Karimi-Nasab and Seyedhoseini 2013).

In this area, Ha (1997) considered Poisson demand and exponential production times for a single item make-to-stock production system. He proposed an M/M/1/S queuing system for modeling the system. Later, Karimi-Nasab and Fatemi Ghomi (2012) argued that it is not a practical assumption that production times are fixed input data of the problem. They proposed that in many cases the production time of the item may be considered as either a decision variable or an uncertain input data other than a fixed value. Nonetheless, many operational managers believe that making decisions with minimal total costs is of crucial importance (Karimi-Nasab and Sabri-Laghaie 2014).

Kerbache and Smith (2004) proposed context of supply chain and application of queue approach. They modeled supply chain network as a queuing system and analyzed it, in particular, they used queuing network methods to evaluate the performance measures of a supply chain. In this research, queuing theory has been used to describe stock control system of retailers and response of suppliers, where each retailer has been assumed to be an M/M/1 queue with balk arrival, and each supplier has been assumed to be an M/M/1 queue.

In summary, it is clear that despite of the many contributions in the location problems, there is little consideration due to cross dock location problem, which considers stochastic waiting time for cross docks. In this paper, cross dock location problem has been considered, where the primary goal is to develop a rich model to represent following key questions:

  • Where cross docks should be located?

  • What is the optimal number of indoor trucks and outdoor trucks?

  • How customers should be allocated to cross docks?

These questions are obviously interconnected, for example location and numbers of cross docks affect interval flows for each cross dock and consequently it would influence number of trucks, for that matter, a mixed-integer model has been presented. The main contributions of this paper can be summarized as follows:

  • Location problem of cross docks has been considered in an uncertainty environment

  • A mathematical model has been developed which simultaneously optimizes location of cross docks, number of indoor trucks and outdoor trucks.

  • A congestion constraint has been considered in the model which restricts waiting time of customers to not be more than tI, and another constraint has been considered that restricts waiting time of shipments in cross docks to not be more than tI.

The reminder of this paper is organized as follows: section two provides a brief definition of the problem, and also represents a mathematical model and a linearization approach to solve the problem. Section three is for computational results which consist of an example and a real case. Section four concludes the paper.

Problem definition

The basic supply chain elements considered in this paper consist a network with some cross docks and some customers, where each customer sends shipments to the other customers, and cross docks transport the shipments for customers. Material flow in which network implemented is illustrated in Fig. 1. In this Figure, dotted lines demonstrate flows that distribute shipments for customers, and connection lines are for flows which collect shipments from customers. The considered problem deals with two types of decisions, the primary decisions are where to optimally locate cross docks and how to allocate customers to cross docks, and the secondary decision is determining the optimal truck number which needs to be allocated to each cross dock. The objective of the model consists of costs related to transportation costs, establishing costs and operation costs of trucks.

Fig. 1
figure 1

Demonstration of a cross-docking network

This problem entails the following assumptions:

  1. 1.

    Demand size for each customer is less than size of a truck, and each truck can give service to n customers.

  2. 2.

    Each truck gives service to exactly n customers, and if number of customers be lesser than n, then truck waits to service with full capacity.

  3. 3.

    Location of customers is fixed.

  4. 4.

    Between each pair of nodes—customers and cross docks—at most one link can be constructed.

  5. 5.

    Candidate nodes for cross docks are fixed.

  6. 6.

    Demand of customer k has been assumed Poisson distribution with rate of \( \lambda_{\text{k}} \).

  7. 7.

    Service time for each truck has been assumed exponentially distribution with mean value of \( \frac{1}{\mu } \).

  8. 8.

    Waiting time for each shipment in cross dock must not be more than tI.

  9. 9.

    Waiting time for customers that are ready to get service must not be more than tI.

Considering following assumption, all n customers get service together. Consequently, a Markov process would occur for a shipment with size of n customers, which could be transported by a truck. Figure 2 depicts this Markov process, where each state, number of customers for a specific shipment, has been represented by i. In this Markov, when n−1 customers are in the system and a new customer arrives, then a new shipment becomes ready for transportation. As probabilities of all the states are equal, rate of truck demands is Poisson distribution with value of \( \frac{{ \lambda_{\text{j}} }}{n} \), where \( \lambda_{\text{j}} \) is demand rate for all costumers that allocated to cross dock j.

Fig. 2
figure 2

Markov process for completion a shipment

In this queue each customer has some waiting time but as \( \lambda_{\text{j}} \) is a big amount for cross docks, waiting time in this queue could be ignorable. For that matter only waiting time for trucks are considered in this paper.

Considering following assumption, an M/M/c queue occurs in each cross dock for outdoor shipments and an M/M/c queue occurs in each cross dock for indoor shipments. For this queue, probability of zero waiting time in queue is equal to Eq. 1.

$$ W_{q} \left( 0 \right) = 1 - \left( {\frac{\lambda }{\mu }} \right)^{c} \frac{1}{c!}.\frac{1}{1 - \rho }\left[ {\mathop \sum \limits_{n = 0}^{c - 1} \frac{1}{n!}\left( {\frac{\lambda }{\mu }} \right)^{n} + \frac{1}{c!}\left( {\frac{\lambda }{\mu }} \right)^{c} \left( {\frac{c\mu }{c\mu - \lambda }} \right)} \right]^{ - 1} $$
(1)

Also probability of t waiting time in queue is equal to Eq. 2.

$$ W_{s} \left( t \right) = \frac{{\mu e^{ - \mu t} \left[ {\lambda - c\mu + \mu W_{q} \left( 0 \right)} \right] - [1 - W_{q} \left( 0 \right)][\lambda - c\mu ]\mu e^{ - (c\mu - \lambda )t} }}{\lambda - (c - 1)\mu } $$
(2)

In other words, W s (t) can be expressed as follows:

$$ \begin{gathered} W_{s} \left( t \right) = \frac{{\mu e^{ - \mu t} \left[ {\lambda - c\mu + \mu \left[ {1 - \left( {\frac{\lambda }{\mu }} \right)^{c} \frac{1}{c!}.\frac{1}{1 - \rho }\left[ {\mathop \sum \nolimits_{n = 0}^{c - 1} \frac{1}{n!}\left( {\frac{\lambda }{\mu }} \right)^{n} + \frac{1}{c!}\left( {\frac{\lambda }{\mu }} \right)^{c} \left( {\frac{c\mu }{c\mu - \lambda }} \right)} \right]^{ - 1} } \right]} \right]}}{\lambda - (c - 1)\mu } \hfill \\ \quad \quad \quad - \frac{{\left[ {1 - \left[ {1 - \left( {\frac{\lambda }{\mu }} \right)^{c} \frac{1}{c!}.\frac{1}{1 - \rho }\left[ {\mathop \sum \nolimits_{n = 0}^{c - 1} \frac{1}{n!}\left( {\frac{\lambda }{\mu }} \right)^{n} + \frac{1}{c!}\left( {\frac{\lambda }{\mu }} \right)^{c} \left( {\frac{c\mu }{c\mu - \lambda }} \right)} \right]^{ - 1} } \right]} \right][\lambda - c\mu ]\mu e^{ - (c\mu - \lambda )t} }}{\lambda - (c - 1)\mu } \hfill \\ \end{gathered} $$
(3)

Model development

Objective

$$ {\text{Min z}} = \mathop \sum \limits_{\text{i}} \mathop \sum \limits_{\text{j}} \mathop \sum \limits_{\text{l}} \mathop \sum \limits_{\text{t}} {\text{fl}}_{\text{ij}} .{\text{X}}_{\text{ijtl}} .{\text{C}}_{\text{ijtl }} + \mathop \sum \limits_{t = 1}^{N} {\text{F}}_{\text{t}} {\text{N}}_{\text{t}} + \mathop \sum \limits_{\text{t}}^{N} \mathop \sum \limits_{\text{m}}^{{M_{\text{I}} }} y_{\text{mt}} .C_{{1{\text{mt}}}} + \mathop \sum \limits_{\text{t}}^{N} \mathop \sum \limits_{\text{m}}^{{M_{{1{\text{O}}}} }} l_{\text{mt}} .C_{{1{\text{mt}}}} + \mathop \sum \limits_{\text{t}}^{N} \mathop \sum \limits_{\text{m}}^{{M_{{2{\text{O}}}} }} z_{\text{mt}} .C_{{2{\text{mt}}}} $$
(4)

St:

$$ \lambda_{\text{It}} = \mathop \sum \limits_{\text{i}} \mathop \sum \limits_{\text{j}} \mathop \sum \limits_{\text{l}} {\text{fl}}_{\text{ij}} .{\text{x}}_{\text{ijtl}} $$
(5)
$$ \lambda_{{{\text{O}}1{\text{t}}}} = \mathop \sum \limits_{\text{i}} \mathop \sum \limits_{\text{j}} \mathop \sum \limits_{\text{l}} {\text{fl}}_{\text{ij}} .{\text{x}}_{\text{ijtl}} - \mathop \sum \limits_{\text{i}} \mathop \sum \limits_{\text{j}} {\text{fl}}_{\text{ij}} .{\text{x}}_{\text{ijtt}} $$
(6)
$$ \lambda_{{{\text{O}}2{\text{t}}}} = \mathop \sum \limits_{\text{i}} \mathop \sum \limits_{\text{j}} \mathop \sum \limits_{\text{l}} {\text{fl}}_{\text{ij}} .{\text{x}}_{\text{ijlt}} $$
(7)
$$ \mathop \sum \limits_{t = 1}^{\text{N}} {\text{x}}_{\text{ijtl}} = 1\quad \forall {\text{i,j}} $$
(8)
$$ \mathop \sum \limits_{l = 1}^{\text{N}} {\text{x}}_{\text{ijtl}} = 1\quad \forall {\text{i,j}} $$
(9)
$$ {\text{x}}_{\text{ijtl}} \le {\text{N}}_{\text{t}} \quad \forall {\text{t,l,i, j}} $$
(10)
$$ \mathop \sum \limits_{m = 1}^{M} y_{\text{mt}} \le {\text{N}}_{\text{t}} $$
(11)
$$ \mathop \sum \limits_{m = 1}^{M} z_{\text{mt}} \le {\text{N}}_{\text{t}} $$
(12)
$$ \mathop \sum \limits_{m = 1}^{M} l_{\text{mt}} \le {\text{N}}_{\text{t}} $$
(13)
$$ P[waiting\,time\,of\,customers\,in\,cross\,dock\,t\,for\,indoor\,trucks > {\text{t}}_{\text{It}} ] \le \delta $$
(14)
$$ P[waiting\,time\,of\,customers\,in\,cross\,dock\,t\,for\,outdoor\,trucks > {\text{t}}_{\text{It}} ] \le \delta $$
(15)
$$ P[waiting\,time\,of\,shipments\,in\,cross\,dock\,t\,for\,transporting\,to\,another\,cross\,dock > {\text{t}}_{\text{It}} ] \le \delta $$
(16)

Objective function has composed of five sections. First section is for transportation costs, second section relates to costs of establishing cross docks, and the other three sections are for operating indoor and outdoor trucks.

Constraint five calculates indoor flows for cross dock t, constraint six calculates outdoor flows that need to be transported from cross dock t to another cross dock, and constraint seven calculates outdoor flows go through cross dock t and customers. Constraints eight and nine ensure that between each pair of customers, only one path be constructed. Constraint 10 states that a path goes through a cross dock only if it is established. Constraints 11, 12 and 13 states that no truck can be allocated to a cross dock unless it has been established. Constraints 14, 15 and 16 ensure that waiting time of customer for indoor trucks or outdoor trucks not to be more than tIt, where constraint 14 is for indoor trucks, constraint 16 is for outdoor trucks which give service to shipments between two cross docks and constraint 15 is for outdoor trucks which goes through cross docks and customers.

Solving approach

Using Eq. 3, constraint 14 is equal to constraint 17.

$$ \begin{gathered} \mathop \int \limits_{{t_{It} }}^{ + \infty } \frac{{\mu e^{ - \mu t} \left[ {\lambda - c\mu + \mu \left[ {1 - \left( {\frac{\lambda }{\mu }} \right)^{c} \frac{1}{c!}.\frac{1}{1 - \rho }\left[ {\mathop \sum \nolimits_{n = 0}^{c - 1} \frac{1}{n!}\left( {\frac{\lambda }{\mu }} \right)^{n} + \frac{1}{c!}\left( {\frac{\lambda }{\mu }} \right)^{c} \left( {\frac{c\mu }{c\mu - \lambda }} \right)} \right]^{ - 1} } \right]} \right]}}{\lambda - (c - 1)\mu } \hfill \\ \quad - \frac{{\left[ {1 - \left[ {1 - \left( {\frac{\lambda }{\mu }} \right)^{c} \frac{1}{c!}.\frac{1}{1 - \rho }\left[ {\mathop \sum \nolimits_{n = 0}^{c - 1} \frac{1}{n!}\left( {\frac{\lambda }{\mu }} \right)^{n} + \frac{1}{c!}\left( {\frac{\lambda }{\mu }} \right)^{c} \left( {\frac{c\mu }{c\mu - \lambda }} \right)} \right]^{ - 1} } \right]} \right][\lambda - c\mu ]\mu e^{ - (c\mu - \lambda )t} }}{\lambda - (c - 1)\mu } \le \delta \hfill \\ \end{gathered} $$
(17)

where λ is equal to λ It. Similar to constraint 14, constraints 15 and 16 can be described in order to W s (t), which are some nonlinear constraints. To conquer nonlinearity of the model, it has been proposed to replace constraints 14, 15 and 16 with Eqs. 18, 19, and 20.

$$ \frac{{\lambda_{{I{\text{t}}}} }}{n} \le \mathop \sum \limits_{m = 1}^{{M_{I} }} y_{\text{mt}} .\lambda_{{{ \hbox{max} },I{\text{m}}}} $$
(18)
$$ \frac{{\lambda_{{1{\text{Ot}}}} }}{n} \le \mathop \sum \limits_{m = 1}^{{M_{1O} }} z_{\text{mt}} .\lambda_{{{ \hbox{max} },1{\text{Om}}}} $$
(19)
$$ \frac{{\lambda_{{2{\text{Ot}}}} }}{n} \le \mathop \sum \limits_{m = 1}^{{M_{{2{\text{O}}}} }} l_{\text{mt}} .\lambda_{{{ \hbox{max} },2{\text{Om}}}} $$
(20)

where λ max,Im, λ max,1Om and λ max,2Om are the maximum arrival rate for each of the queues that constraints 14, 15 and 16 would be satisfied. For this reason, to solve the model, λ max,Im and λ max,1Om and λ max,2Om must be defined for each possible number of indoor or outdoor trucks.

Computational result

In this paper, using a numerical example, performance of the proposed model has been evaluated, and then efficiency of the model has been examined by a real case.

Numerical result

In this section, the model has been coded with Gams software, and an example has been produced in “Appendix” A. We analyzed the model due to flow rate in Fig. 3, where ρ is considered as a coefficient for flow rate between each pair of nodes. As demonstrated in this figure, flow rate has a concave relation with optimal costs. This pattern has been affected by two reasons: the first reason is change in trucks and operating costs of trucks, and the second reason is change in transportation costs.

Fig. 3
figure 3

Sensitivity of optimal costs due to flow rate

Mousavi and Tavakoli-Moghaddam (2013) proposed a two-stage model for cross-docking problem, where the first stage aims to find location of cross docks and the second stage aims to find optimal scheduling of trucks. For the first stage they considered fixed costs of establishing cross docks and transportation costs. Ross and Jayaraman (2008) also considered same costs and examined two location problem of cross docks. Using queuing theory, we proposed three waiting time constraints for shipments in cross docks and customers, and also considered costs related to operation of trucks. Differences between results of our model and previous models occur because of tIt and δ, which affect transportation costs also. As tIt be bigger, our model becomes more similar to the previous models. To prepare a better description among models, previous example has been considered and three values of tIt have been considered and sensitivity of the objective value due to operating cost of each truck has been analyzed in Fig. 4. As demonstrated in this figure, when tIt becomes lesser, sensitivity due to truck costs increases.

Fig. 4
figure 4

Sensitivity of optimal costs due to operation costs of trucks for different tIt

Case study

In this section, we represent a case study, which is for Dried fruit products in Iran. In this case, we only considered two major products of raisin and pistachios. Based on information of 2012, Iran is capable to produce 154,000 tons of raisin and 192,000 tons of pistachios per year. Where it exports 138,000 tons of raisin and 150,000 tons of pistachios. These two products need to be gathered from farmers or factories that pack the products, then transfer them to wholesalers.

There are five wholesalers in countries of Qatar, Iraq, Russia, Azerbaijan and Turkey which consist of major exports of these products, and also more than 15 wholesalers are existing in different cities of Iran. Also there are 14 cities which produce major raisins of Iran and 30 cities which produce major pistachios of Iran. In these cities, Ghazvin produces with 50,000 tons of raisin is the most capable producer of raisin, and Rafsanjan with 21,000 tons of pistachios is the most capable producer of pistachios.

Production rate of raisin and pistachios for different cities in year of 2012, and also products flow rate between each pair of cities for both of the products have been presented in “Appendix” B. In this case, it has been assumed that all the cross docks must be established in the Iran. Consequently, transportation of the exports out of the Iran can be ignored, and only it be considered in Iran. Another reason for this is for different transportation types which could be used out of the Iran. For instance, if a shipment wants to go Qatar, it must go to Bandarabas dock, and then it goes to Qatar.

Experts defined 16 potential locations for cross docks. This case has been solved under two scenarios: the first one is when raisin products and pistachios products need to be transported separately, and the second one is when they could be transported together. For this case, Figs. 5 and 6 demonstrate optimal solution of the case for the first scenario, and Fig. 7 demonstrates optimal solution for the second scenario.

Fig. 5
figure 5

Solution for the first scenario for raisin

Fig. 6
figure 6

Solution for the first scenario for pistachios

Fig. 7
figure 7

Optimal solution for the second scenario

For this case, Table 1 prepares a brief description of optimal solution for both of the scenarios.

Table 1 Optimal solution for the problem (costs are in 1,000,000 Tomans)

As it is demonstrated in Table 1, if raisin and pistachios could be transported together, optimal costs would plunge. For this scenario, costs are 720 million Tomans, which is significantly lesser than when these products need to be transported separately. Because of consolidation of raisin and pistachios, numbers of trucks and cross docks have been decreased. In this case, 64 trucks and seven cross docks are needed for the first scenario and 56 trucks and four cross docks are needed for the second scenario.

Conclusion

In this paper, we considered the problem of cross-docking, and proposed a mathematical model to simultaneously optimize location of cross docks and number of trucks. Assigning optimal trucks, and sequencing of trucks in cross docks are some historical problems, but considering location of cross docks with variable number of trucks is a new problem.

In this model, we used one of the most important concepts of cross docks, which state that no shipment in cross docks can wait more than a specific time. Some of the researchers state that this waiting time is equal to 12 h and some defined 24 h. For this reason we proposed two stochastic constraints. We also improved the model by considering another waiting time constraint for shipments in customer nodes. Consequently, to satisfy these constraints, numbers of indoor trucks and outdoor trucks in each cross dock have been considered variable.

In this paper, the model has been examined due to different parameters of the model, and differences among our model and previous models have been analyzed. We also prepared a real case to illustrate performance of the model, which is for products of raisin and pistachios in Iran. For this case, two scenarios have been considered and proposed model has been analyzed.

For future studies this research can be extended by considering scheduling of trucks, this may increase complexity of the problem but the model would become more realistic. Another extension of this research is possible by considering rate of corruption for perishable inventories. Another aspect which is of further interest is to consider waiting time costs in objective, although it may be expected that this will lead to intractable formulations.