Proselo eng bastenvanhoutum ijpe2011

Page 1

Int. J. Production Economics 143 (2013) 546–552

Contents lists available at SciVerse ScienceDirect

Int. J. Production Economics journal homepage: www.elsevier.com/locate/ijpe

Near-optimal heuristics to set base stock levels in a two-echelon distribution network R.J.I. Basten a,n, G.J. van Houtum b a b

University of Twente, P.O. Box 217, 7500 AE Enschede, The Netherlands Eindhoven University of Technology, P.O. Box 513, 5600 MB Eindhoven, The Netherlands

a r t i c l e i n f o

a b s t r a c t

Available online 28 October 2011

We consider a continuous review two-echelon distribution network with one central warehouse and multiple local stock points, each facing independent Poisson demand for one item. Demands are fulfilled from stock if possible and backordered otherwise. We assume base stock control with one-forone replenishments and the goal is to minimize the inventory holding and backordering costs. Although this problem is widely studied, only enumerative procedures are known for the exact optimization. A number of heuristics exist, but they find solutions that are far from optimal in some cases (over 20% error on realistic problem instances). We propose a heuristic that is computationally efficient and finds solutions that are close to optimal: 0.2% error on average and less than 5.0% error at maximum on realistic problem instances in our computational experiment. & 2011 Elsevier B.V. All rights reserved.

Keywords: Service logistics Spare parts inventories Heuristic Two-echelon Distribution network

1. Introduction Capital goods are expensive, technologically advanced products or systems that are critical for the companies that are using them. Examples are MRI-scanners in hospitals, baggage handling systems at airports, or radar systems on board naval vessels. Since the availability of these systems is so important, spare parts are generally located close to the installed base. However, since spare parts are often expensive, also more central stocking locations at higher echelon levels are used to obtain risk pooling effects. Although in principle any number of echelon levels is possible, spare parts networks for capital goods often have a two-echelon structure (Cohen et al., 1997). In such networks, many different items are stocked: Gallego et al. (2007) give the example of General Motors’ spare parts organization, which manages over four million stock-keeping units. We consider a single-item, two-echelon distribution system with continuous review base stock control, one-for-one replenishments, and first-come first-served (FCFS) allocation at the central warehouse. We assume Poisson demand processes at the local stock points. Demands are backordered if they cannot be fulfilled immediately, and a penalty is paid per unit time for items that are on backorder. This model is widely studied and can be evaluated exactly. However, only enumerative procedures are known for the exact optimization of the base stock levels. Because

n

Corresponding author. Tel.: þ31 53 489 4007. E-mail addresses: r.j.i.basten@utwente.nl (R.J.I. Basten), g.j.v.houtum@tue.nl (G.J. van Houtum). 0925-5273/$ - see front matter & 2011 Elsevier B.V. All rights reserved. doi:10.1016/j.ijpe.2011.10.018

in practice this optimization has to be executed for thousands of components, efficient heuristics are required. Our main contribution is that we develop two such heuristics. One always finds the optimal solution in our computational experiment. The other finds base stock levels that lead to costs that are much closer to optimal than the costs found by existing heuristics, while it is still faster than most existing heuristics. A second contribution is that we derive new properties of the total cost function. The remainder of this paper is structured as follows. We give a literature review in Section 2. In Section 3, we give the mathematical problem formulation, and in Section 4, we show some analytical properties of the cost function. In Section 5, we describe the heuristics that we propose. We show the results of the computational experiment in Section 6. In Section 7, we give conclusions and recommendations for further research.

2. Literature review Because of the practical relevance, there has been a lot of interest in distribution networks, starting with the seminal papers by Clark and Scarf (1960) for serial (N-echelon) networks, which are networks in which each stock point has at most one successor and at most one predecessor, and Sherbrooke (1968) for general distribution networks, which are networks in which each stock point has (at most) one predecessor. The paper by Clark and Scarf (1960) started the research on periodic review models. For distribution networks, Eppen and Schrage (1981) introduce the balance assumption, which


R.J.I. Basten, G.J. van Houtum / Int. J. Production Economics 143 (2013) 546–552

effectively means that the inventory position of a local stock point immediately after ordering is allowed to be lower than the inventory position just before ordering. In other words, after ordering, the inventory is balanced over the various stock points even if it was unbalanced before ordering. Using this assumption, the optimal policy can be characterized under various circumstances, see, e.g., Diks and de Kok (1998, 1999) or Van der Heijden et al. (1997). Instead of periodic review, we consider continuous review. We further assume base stock control and first-come first-served (FCFS) allocation at the central warehouse. This stream of research started with the paper by Sherbrooke (1968) and overviews are given in Sherbrooke (2004) and Muckstadt (2005). Van Houtum (2006) gives a more general overview of literature on multi-echelon inventory systems. We will discuss the most relevant literature in more detail: First, we discuss two papers in which the model that we use is evaluated exactly and second, we discuss a number of papers in which heuristics are developed to optimize the base stock levels. ¨ For the model that we consider, Axsater (1990) gives recursive formulas to evaluate the inventory holding and penalty costs. Furthermore, he finds that the costs are convex in each of the local base stock levels, but not in the central base stock level. ¨ Axsater (1990) gives a lower and upper bound on the optimal central base stock level, between which he enumerates all possible values to set optimal base stock levels in the network. Because of his recursive formulas, this enumeration is still relatively fast, e.g., in comparison with the exact evaluation that Graves (1985) proposes. Graves (1985) develops both an exact and approximate procedure to determine the distribution of the items in inventory and on backorder at the local stock points. If items are on backorder at the central warehouse, they delay the replenishments at the local stock points. In the exact evaluation, Graves (1985) calculates a convolution, which is computationally intensive. In the approximate procedure, he fits a negative binomial distribution on the first two moments of the distribution of the number of items on backorder at the central warehouse. Optimization of the base stock levels is not considered. Heuristics for this problem exist as well. Gallego et al. (2007) compare FCFS allocation with other forms of allocation in which central information is required. Although this is very relevant in certain business situations, we consider FCFS allocation only here. Gallego et al. (2007) develop the restriction-decomposition heuristic (RD), in which they restrict the central base stock level to have one of three possible values: zero (‘cross-docking’), the expected lead time demand at the central warehouse (‘zero safety stock’), or the maximum value at the central warehouse if each local stock point would hold no inventory (‘stock-pooling’). Using each of these three values, the base stock levels at each of the local stock points can be optimized independently using simple newsvendor equations. Rong et al. (2010) propose two different heuristics for distribution systems with a general number of echelon levels. In the recursive optimization (RO) heuristic, first the base stock levels of all local stock points (lowest echelon level) are optimized assuming that there are no delays at higher echelon levels. These problems reduce to simple newsvendor equations. Then the next higher echelon’s base stock levels are optimized using the base stock level at the lowest echelon level as an input. This cost function is convex and can be solved easily. Then the next higher echelon level can be solved (if existent), etc. In the decomposition-aggregation (DA) heuristic of Rong et al. (2010), the problem is decomposed into one serial system per local stock point. Each of these serial systems

547

consists of the path from the most central location to (and including) the local stock point. Each non-local stock point is part of a number of serial systems. The backorders at such a stock point that result from the optimization of each of the serial systems are summed (aggregated) and it is determined which base stock level is required at that stock point to achieve the summation of the backorders. This is the final base stock level. 3. Problem description and notation We consider a two-echelon distribution network consisting of one central warehouse and N local stock points in steady state. The central warehouse has index 0 and the local stock points are indexed 1, . . . ,N. The demand process at local stock point i is a Poisson process with rate li ð 4 0Þ. A demand is backordered if it cannot be fulfilled immediately. Local stock point i uses a base stock policy with base stock level Si ð Z0Þ. Hence, each demand at a local stock point is immediately followed by a replenishment order at the central warehouse. As a result, the demand process at the central P warehouse is also a Poisson process, with rate l0 ¼ N i ¼ 1 li . Demands that cannot be fulfilled immediately at the central warehouse are backordered and fulfilled first come first served (FCFS). The central warehouse uses a base stock policy with base stock level S0 ð Z0Þ. The central warehouse orders components at an external supplier with infinite supply or, equivalently, repairs components using an uncapacitated repair facility. The total lead time from the occurrence of a demand until the central warehouse receives a new or repaired component is a random variable with mean L0 ð 4 0Þ. Successive lead times are i.i.d. Each shipment from the warehouse to local stock point i takes Li ð Z 0Þ time units (deterministic). We consider holding costs h0 ð 40Þ at the central warehouse and hi ð 40Þ at each of the local stock points i for each unit time that a spare part is in stock (considering holding costs for spare parts in transit is straightforward since the average number of spare parts in transit is a constant given the fact that we use backordering). Furthermore, we consider penalty costs bi ð 4 0Þ per unit per unit time for backordered demand at local stock point i. We need the following additional notation for the cost function that we want to minimize and the analysis in Section 4. The number of items on order at the central warehouse is X0 . This number is Poisson-distributed with parameter l0 L0 . The corresponding number of backorders is B0 ðS0 Þ ¼ ðX 0 S0 Þ þ and the number of items on hand is I0 ðS0 Þ ¼ ðS0 X 0 Þ þ . BðiÞ 0 ðS0 Þ is the number of backorders at the central warehouse that is due P ðiÞ to local stock point i ( N i ¼ 1 B0 ðS0 Þ ¼ B0 ðS0 Þ). The number of items on order at local stock point i, X i ðS0 Þ, is equal to the number of demands over the lead time, Y i, which is Poissondistributed with parameter li Li , plus the number of backorders at the central warehouse that are due to stock point i, BðiÞ 0 ðS0 Þ. (Y i and BðiÞ 0 ðS0 Þ are mutually independent.) The corresponding number of backorders is Bi ðS0 ,Si Þ ¼ ðX i ðS0 Þ Si Þ þ and the number of items on hand is Ii ðS0 ,Si Þ ¼ ðSi X i ðS0 ÞÞ þ . Finally, Z i is a Bernoulli-distributed random variable for all i A f1, . . . ,Ng: Z i ¼1 with probability li =l0 and 0 otherwise. If there is a queue at the central warehouse, then Z i ¼1 can be interpreted as indicating that the first backorder in that queue is due to local stock point i. The goal of the optimization is to set the base stock levels Si for iA f0, . . . ,Ng such that total average costs per unit time in steady state are minimized: CðS0 ,S1 , . . . ,SN Þ ¼ h0 EI0 ðS0 Þ þ

N X

½hi EIi ðS0 ,Si Þ þ bi EBi ðS0 ,Si Þ

i¼1

ð1Þ


548

R.J.I. Basten, G.J. van Houtum / Int. J. Production Economics 143 (2013) 546–552

4. Analytical properties In this section, we give some properties of the cost function CðS0 ,S1 , . . . ,SN Þ. These properties are not strong enough to give an easy way to optimize this function, but we use some of the properties in the heuristics that we propose. Lemma 1. CðS0 ,S1 , . . . ,SN Þ is supermodular in ðS0 ,Si Þ for all i A f1, . . . ,Ng, i.e.: CðS0 ,S1 , . . . ,Si 1, . . . ,SN Þ CðS0 þ1,S1 , . . . ,Si 1, . . . ,SN Þ Z CðS0 ,S1 , . . . ,Si , . . . ,SN Þ CðS0 þ 1,S1 , . . . ,Si , . . . ,SN Þ

¨ Proof. See Axsater (1990, p. 68, Eqs. (29) and (31)).

&

This implies that if costs can be reduced by adding one spare part at the central warehouse for a given Si (right hand side), costs can certainly be reduced by adding one spare part at the central warehouse if Si is one unit lower (left hand side). Before we can give convexity properties of the cost function, we require Lemma 2. Lemma 2. For i A f1, . . . ,Ng, it holds that:

EIi ðS0 ,Si þ 1Þ EIi ðS0 ,Si Þ ¼ PfBi ðS0 ,Si Þ ¼ 0g

ð2Þ

EBi ðS0 ,Si þ 1Þ EBi ðS0 ,Si Þ ¼ PfBi ðS0 ,Si Þ 40g

ð3Þ

~ variable A is stochastically larger than another random variable A. ðiÞ ðiÞ This implies that BðiÞ ðS þ 1Þ Z B ðS Þ 1, and thus Y þ B ðS þ 1Þ Z st 0 0 0 0 i 0 0 ðiÞ st Y i þB0 ðS0 Þ 1, which is equivalent to X i ðS0 þ1Þ Z st X i ðS0 Þ 1. Hence, in particular PfX i ðS0 þ 1Þ r Sni ðS0 Þ 2g r PfX i ðS0 Þ 1 rSni ðS0 Þ 2g, which is equivalent to PfX i ðS0 þ1Þ rSni ðS0 Þ 2g rPfX i ðS0 Þ r Sni ðS0 Þ 1g. Since Sni ðS0 Þ is the smallest Si for which Eq. (5) holds, we know that Eq. (5) does not hold for Sni ðS0 Þ 1. In other words, PfX i ðS0 Þ rSni ðS0 Þ 1g o bi =ðbi þ hi Þ, and therefore PfX i ðS0 þ1Þ rSni ðS0 Þ 2g o bi =ðbi þhi Þ. This means that Sni ðS0 þ 1Þ 4 Sni ðS0 Þ 2 or, equivalently, Sni ðS0 þ 1Þ Z Sni ðS0 Þ 1. The second inequality can be proved analogously, but follows also directly from the supermodularity of the cost function (cf. Lemma 1). & CðS0 ,S1 , . . . ,SN Þ is not convex in S0 in general. For given values of Si (i A f1, . . . ,Ng), the function generally decreases with an increasing S0 until a minimum is reached. It then increases such PN that the derivative becomes close to i after which i ¼ 1 ðli =l0 Þh P the derivative converges to h0. Therefore, if h0 o N i ¼ 1 ðli =l0 Þhi , CðS0 ,S1 , . . . ,SN Þ is generally first convex and then concave in S0. This suggests that it is unimodal in S0, but we are not able to prove this. However, Lemmas 6 and 8 give two cases in which it is convex in S0. Lemma 6. If Si ¼0 for all i A f1, . . . ,Ng, then CðS0 ,S1 , . . . ,SN Þ is strictly convex in S0 and its corresponding difference function is ! N N X X li bi l i bi D0 CðS0 ,0, . . . ,0Þ ¼ þ þ h0 PfB0 ðS0 Þ ¼ 0g ð6Þ

EIi ðS0 ,Si þ 1Þ EIi ðS0 ,Si Þ ¼

Si X

ðSi þ1 xÞPfX i ðS0 Þ ¼ xg

x¼0

¼

Si X

l0

i¼1

Proof. Eq. (2) can be proved as follows:

i¼1

l0

Proof. See Appendix A. SX i 1

Corollary 7. The S0 that minimizes Eq. (6), Su0 , is the smallest S0 such that

ðSi xÞPfX i ðS0 Þ ¼ xg

x¼0

PN

PfX i ðS0 Þ ¼ xg ¼ PfX i ðS0 Þ rSi g ¼ PfBi ðS0 ,Si Þ ¼ 0g

i¼1

x¼0

PfB0 ðS0 Þ ¼ 0g Z

PN

i¼1

The proof of Eq. (3) is analogous.

&

Lemma 3. CðS0 ,S1 , . . . ,SN Þ is strictly convex in Si for all i A f1, . . . ,Ng. Proof. This can be seen by looking at the difference function:

Di CðS0 ,S1 , . . . ,SN Þ ¼ CðS0 ,S1 , . . . ,Si þ 1, . . . ,SN Þ CðS0 ,S1 , . . . ,Si , . . . ,SN Þ ¼ hi ½EIi ðS0 ,Si þ 1Þ EIi ðS0 ,Si Þ þ bi ½EBi ðS0 ,Si þ 1Þ EBi ðS0 ,Si Þ ¼ hi PfBi ðS0 ,Si Þ ¼ 0g bi PfBi ðS0 ,Si Þ 4 0g ¼ bi þ ðbi þ hi ÞPfBi ðS0 ,Si Þ ¼ 0g

ð4Þ

Di CðS0 ,S1 , . . . ,SN Þ

is strictly increasing in Si since PfBi ðS0 ,Si Þ ¼ 0g ¼ PfX i ðS0 Þ r Si g is strictly increasing in Si. Therefore, CðS0 ,S1 , . . . ,SN Þ is strictly convex in Si. & ¨ Axsater (1990) mentions this result, without giving the deduction.

li b l0 i

li b þ h0 l0 i

Su0 is an upper bound for the optimal S0. Proof. The first part follows directly from Lemma 6. Because of the supermodularity of CðS0 ,S1 , . . . ,SN Þ, Su0 is an upper bound for the optimal S0. & The upper bound that we have derived is sometimes higher ¨ than the upper bound that Axsater (1990, p. 68) derives. However, the computational costs are lower and it turns out that the bounds are not too far apart (a few percent on larger problem instances). P Lemma 8. CðS0 ,S1 , . . . ,SN Þ is convex in S0 if h0 Z N i ¼ i ðli =l0 Þhi . Proof. See Appendix B. Notice that this includes the important case that hi ¼ h0 for all iA f1, . . . ,Ng.

Corollary 4. The optimal Si for a given S0, Sni ðS0 Þ, is the smallest Si for which: PfBi ðS0 ,Si Þ ¼ 0g Z

5. Heuristics

bi

ð5Þ

bi þ hi

Proof. This follows directly from Eq. (4).

&

Lemma 5. If S0 is increased by one unit, then for all iA f1, . . . ,Ng the optimal Si, Sni ðS0 Þ, stays the same or decreases by one unit:

We propose two heuristics. The smart enumeration heuristic is not very fast, but in our computational experiment it always finds the optimal solution. The step and check heuristic is very fast and is shown to be near-optimal via the computational experiment. 5.1. Smart enumeration

Sni ðS0 Þ 1 rSni ðS0 þ 1Þ r Sni ðS0 Þ Proof. The first inequality can be proved as follows. It is easily seen that B0 ðS0 þ 1Þ Z st B0 ðS0 Þ 1, where A Z st A~ denotes that a random

The basic idea of the smart enumeration (SE) heuristic is to set S0 at its upper bound, set Si optimally and determine the costs. Then we keep decreasing S0 by one (enumeration), while


R.J.I. Basten, G.J. van Houtum / Int. J. Production Economics 143 (2013) 546–552

simultaneously reoptimizing Si, until the solution has not improved anymore for N þ2 times. At that moment we stop the algorithm. The stopping criterion is the critical part of the heuristic. We essentially assume that if the function CðS0 ,Sn1 ðS0 Þ, . . . ,SnN ðS0 ÞÞ does not improve N þ2 times, it cannot improve anymore (although we are not able to analytically show such a property). Formally: we introduce a counter: K. Initialize K :¼ 0 and set S0 at its upper bound (using Corollary 7). Determine optimal Si (for all i A f1, . . . ,Ng, using Corollary 4) and the corresponding costs (using Eq. (1)), which are necessarily the best costs so far. In each step, decrease S0 by one, determine optimal Si (for all i A f1, . . . ,Ng) using the fact that Sni ðS0 Þ Z Sni ðS0 þ1Þ ZSni ðS0 Þ 1, and determine the corresponding costs. If these costs are lower than the previously best costs, set K :¼ 0 and continue. Otherwise, check if K ¼ N þ 2. If so, stop. Otherwise, increase K by one and continue. Stopping the algorithm when K ¼ N þ1 leads to suboptimal solutions in a few cases. 5.2. Step and check The basic idea of the step and check (SC) heuristic is to set S0 at its upper bound, use Graves’ two-moment approximation to approximate X i ðS0 Þ, set Si optimally and determine the costs. Since we approximate X i ðS0 Þ, we cannot be certain to find the true optimal Si and the exact costs, but in Section 6 we show that the results are very satisfactory. In steps of size N we decrease S0 until this does not improve the costs anymore. We perform a local search around the local optimum that we have thus found. Formally: we introduce a step size: G. Initialize G :¼ N and set S0 at its upper bound (using Corollary 7). Fit a negative binomial distribution to the first two moments of X i ðS0 Þ (for all iA f1, . . . ,Ng, using Graves, 1985) and determine optimal Si (for all iA f1, . . . ,Ng, using Corollary 4) and the corresponding costs (using Eq. (1)), which are necessarily the best costs so far. In each step, decrease S0 by G, approximate X i ðS0 Þ (for all i A f1, . . . ,Ng), and determine optimal Si (for all iA f1, . . . ,Ng) and the corresponding costs. If these costs are lower than the previously best costs, continue. Otherwise, we go to the second part of the algorithm: local search. Set S0 at the local optimum that we found. Divide G by 2 (round upwards if necessary). Check whether S0 þG would lead to lower costs (using the approximation of X i ðS0 Þ), if not, check S0 G. If one of them leads to lower costs, set S0 at the corresponding value. Otherwise, do not change S0. In both cases, divide G by 2 and continue (until G ¼1).

549

restriction-decomposition heuristic (RD) of Gallego et al. (2007). To get the optimal solution, Rong et al. (2010) enumerate all possible values for S0 between a lower and an upper bound, determine the optimal Si that belong to that S0 value and use the exact evaluation of Graves (1985) to determine the costs. The settings that are used in the problem instances can be found in Table 1. Since Li and bi (iA f1, . . . ,Ng) are drawn from a uniform distribution, 200 problem instances are generated for each combination of li , L0, and h0 to avoid basing conclusions on one specific problem instance. This leads to 72,000 problem instances in total (notice that li ¼ lj for all i,j A f1, . . . ,Ng). The results that Rong et al. (2010) report can be found in Table 2. Notice that the heuristics by Rong et al. (2010) find base stock levels only; the corresponding costs are determined afterwards and this is not included in the computation time. Since the RO heuristic is quite slow and the RD heuristic is relatively slow and leads to a relatively high average error compared with the DA heuristic, we may see the DA heuristic as the best heuristic. Hence, we compare our heuristics with the DA heuristic. We implement the DA heuristic, our heuristics, and ¨ the algorithm of Axsater (1990) in Python and perform the experiments on a laptop computer running Windows XP on an Intel Core Duo P8600 @ 2.40 GHz, 3.5 GB RAM. The results for the problem instances of Rong et al. (2010) can be found in Table 3. The error that we find for the DA heuristic is lower than the error that Rong et al. report, but the difference is small and probably due to the randomness in the problem instances. The key result is that the SC heuristic performs much better than the DA heuristic in terms of solution quality, whereas the optimization time is still very low. Another important result is that the SE heuristic always finds the optimal solution.

Table 1 Problem instances from Rong et al. (2010, p. 11). Parameter

Value(s)

N Li L0

4 U[0.1,0.25] 0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1 4,8,16,32 1 0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9 U[9,39]

li hi h0

bi

Table 2 Results from Rong et al. (2010, Table 1, p. 11). Rong et al.

6. Computational experiment We perform an extensive computational experiment to examine the performance of our heuristics, both in terms of optimization time and quality of the solution. For the quality, we use two indicators (using P problem instances, numbered 1, . . . ,P): ðpÞ Costs the average error: ð1=PÞ PPp ¼ 1 Costs ðpÞ Costs ðpÞ Costs ðpÞ the maximum error: maxp Costs .

Average time (s)

Graves

RO

DA

RD

exact

1.4 22.2

1.9 23.6

3.4 12.7

– –

0.548

0.015

0.176

4.012

optimal ðpÞ

heuristic

optimal

heuristic

Average error (%) Maximum error (%)

Gallego et al.

,

optimal

Costsoptimal ðpÞ

First, we use problem instances from the literature to compare our heuristics with the optimal solution and existing heuristics by Gallego et al. (2007) and Rong et al. (2010). Second, we perform more extensive experiments in which we compare our heuristics with the optimal solution only. Rong et al. (2010) give a set of problem instances on which they compare their recursive optimization (RO) and decompositionaggregation (DA) heuristics with the optimal solution and the

Table 3 Our results on the tests by Rong et al. (2010).

Average error (%) Maximum error (%) Average time (s) Maximum time (s)

Rong et al.

Our heuristics

¨ Axsater

DA

SE

SC

exact

1.69 22.80

0.00 0.00

0.11 2.70

– –

0.145 0.782

0.020 0.056

0.279 1.768

0.006 0.025


550

R.J.I. Basten, G.J. van Houtum / Int. J. Production Economics 143 (2013) 546–552

We perform a more extensive experiment which is quite different from the one by Rong et al. (2010). We are interested in a broader range of local stock points and a long lead time at the central warehouse relative to the lead time at the local stock points. This better reflects the typical situation in the area of spare parts for capital goods. Furthermore, we are interested both in the setting in which the holding costs at the local stock points are higher than those at the central warehouse and in the setting in which holding costs are equal at all locations. Because the DA heuristic does not generally find good solutions when there are equal holding costs at both echelon levels, we do not compare our results with those of that algorithm. For the exact values that we use, see Table 4. The local stock points are divided into two sets of equal size and we vary the relevant values (Li, li , hi, and bi ) in each group independently from those in the other group. So, there are three values for li , which means that there are nine combinations, three of which lead to ‘balanced’ networks in which all local stock points have the same value. In total, there are 9 settings for N and L0 and 36 settings for the parameters related to the local stock points. Therefore, there are 9 36 36 ¼ 11; 664 problem instances in total. The results can be found in Table 5. The SE heuristic still always finds the optimal solution. For the SC heuristic, the maximum error is 4.9% and only 15 (out of 11,664) problem instances have an error of more than 2.5% (439 above 1.0%). Notice that the SC heuristic finds a cost estimate because of the use of the two-moment fits of Graves (1985). We calculate the exact costs after execution of our heuristic; the difference between the cost estimate and the exact costs is 0.8% on average and varies between 11.0% and 1.9%. Further, we find base stock levels at the central warehouse of up to 1057, indicating that we are dealing with large scale problem instances. We show more detailed results in Table 6, in which we vary N and L0, Table 7, in which we vary li and bi , and Table 8, in which we vary hi and Li. In the latter two tables, we only show the results of the problem instances for which the relevant parameter (li , bi , hi, or Li) is equal for all local stock points. The most interesting things to notice are:

The influence of N on the quality of the SC solution is minor, which suggests that the SC heuristic can also be used on even larger problem instances.

Table 6 Detailed test results for our heuristics (1/3). N

L0

2

8

32

1

2

4

Average time SE (s) Maximum time SE (s)

0.027 0.223

0.375 3.398

5.626 55.965

0.892 12.940

1.714 26.333

3.423 55.965

Average error SC (%) Maximum error SC (%)

0.16 4.93

0.15 4.23

0.13 3.08

0.09 2.32

0.14 4.93

0.21 4.23

Average time SC (s) Maximum time SC (s)

0.007 0.031

0.034 0.110

0.159 0.493

0.062 0.380

0.066 0.436

0.073 0.493

Table 7 Detailed test results for our heuristics (2/3).

li ð8i A f1, . . . ,NgÞ

bi ð8i A f1, . . . ,NgÞ

0.125

1

8

16

64

Average time SE (s) Maximum time SE (s)

0.051 0.273

0.415 2.840

7.043 55.965

1.828 51.571

2.193 55.965

Average error SC (%) Maximum error SC (%)

0.03 4.93

0.09 2.07

0.13 1.44

0.09 2.13

0.19 4.93

Average time SC (s) Maximum time SC (s)

0.027 0.104

0.045 0.169

0.120 0.493

0.062 0.425

0.072 0.493

Table 8 Detailed test results for our heuristics (3/3). Li ð8i A f1, . . . ,NgÞ

hi ð8i A f1, . . . ,NgÞ 1

2

4

0.25

1

Average time SE (s) Maximum time SE (s)

2.226 55.965

2.019 52.501

1.769 49.886

1.340 25.889

2.691 55.965

Average error SC (%) Maximum error SC (%)

0.23 4.93

0.17 2.32

0.07 1.44

0.19 3.08

0.10 4.93

Average time SC (s) Maximum time SC (s)

0.073 0.436

0.067 0.431

0.060 0.419

0.053 0.276

0.082 0.493

The optimization time of the SC heuristic increases approximately Table 4 Additional problem instances.

Parameter

Value(s)

N L0 h0 Li

2, 8, 32 1, 2, 4 1 0.25, 1 0.125, 1, 8 1, 2, 4 16, 64

li hi

bi

Table 5 Additional test results. ¨ Axsater

Our heuristics SE Average error (%) Maximum error (%)

0.00 0.00

Average time (s) Maximum time (s)

2.009 55.965

SC

exact

0.15 4.93

– –

0.067 0.493

4.454 122.073

linearly with the number of local stock points (N), whereas the optimization time of the SE heuristic increases much harder. The optimization time of the SC heuristic is almost independent of the lead time at the central warehouse (L0), whereas the optimization time of the SE heuristic increases approximately linearly with L0. The optimization time of the exact ¨ algorithm by Axsater (1990) increases even harder (for L0 ¼ 4, SE is on average 53% faster than the exact algorithm, whereas for L0 ¼ 1, it is only 18%). The optimization time of the SC heuristic increases less than linearly with the demand rate (li ), whereas the optimization time of the SE heuristic increases more than linearly with li . The optimization time of the exact algorithm increases even harder (for li ¼ 4, SE is on average 53% faster, whereas it is 1.5% slower for li ¼ 0:25Þ. Notice that the problem instances in which the two sets of local stock points have different values for li (‘unbalanced’), are excluded from the comparison in the previous bullet. Since the average errors that we report in Table 7 are on average (over the three values for li ) lower than those that we report in Table 5, we can conclude that in the ‘unbalanced’ problem instances the error is higher on average than in the ‘balanced’ problem instances.


R.J.I. Basten, G.J. van Houtum / Int. J. Production Economics 143 (2013) 546–552

The quality of the SC solution depends on the value of hi: the quality increases with an increasing hi (notice that the unbalanced problem instances are excluded from this comparison).

551

For the second equality, notice that ðSi Y i BðiÞ 0 ðS0 þ 1ÞÞ and ðS ÞÞ differ if an increment of S by one unit leads to a ðSi Y i BðiÞ 0 0 0 decrease in BðiÞ 0 ðS0 Þ. This occurs when:

7. Conclusions and recommendations for further research

the number of backorders at the central warehouse decreases

We have studied two-echelon distribution networks. We have developed a fast heuristic (step and check) that finds base stock levels that are close to optimal, and a heuristic (smart enumeration) that always finds the optimal solution in our computational experiment. In that experiment, we have shown that the former heuristic is faster than most existing heuristics and gives a better solution than all existing heuristics. It may be possible to extend the SC heuristic in a couple of ways. First, it is relatively straightforward to extend our algorithm to the general multi-echelon case. This would be useful since only two heuristics exist for this case so far (those of Rong et al., 2010). Second, it may be possible to consider compound Poisson demand. The approximation by Graves (1985) that we use in our heuristic can also be used as an approximation for the compound Poisson demand (with some changes), although we do not know the approximation quality. A comparison could be made with the exact algorithm that exists for this case (with two echelon levels), see Forsberg (1995). Third, it may be interesting to extend the (S 1,S)-policies to (R,Q)-policies, especially at the central warehouse. The extension to (R,Q)-policies at all stock points may be difficult. A comparison can be made with the exact algorithm by Forsberg (1996). Combining (R,Q)-policies and compound Poisson demand may be even harder, but it would lead to a model that fits many practical situations. For this case, a comparison can be made with ¨ the exact algorithm of Axsater (2000).

the first backorder in the pipeline at the central warehouse is

Acknowledgements The authors thank the anonymous referees for their valuable comments. The authors gratefully acknowledge the support of the Innovation-Oriented Research Programme ‘Pieken in de Delta’ Project ‘OneLogistics’ of the Netherlands Ministry of Economic Affairs, Agriculture and Innovation.

by adding a spare part, so B0 ðS0 Þ 4 0, due to local stock point i, so Zi ¼1. The proof of Eq. (A.3) is as follows: ðiÞ þ þ EBi ðS0 þ1,Si Þ EBi ðS0 ,Si Þ ¼ EðY i þ BðiÞ 0 ðS0 þ 1Þ Si Þ EðY i þB0 ðS0 Þ Si Þ

¼ PfB0 ðS0 Þ 40 \ BðiÞ 0 ðS0 Þ þ Y i 4 Si \ Z i ¼ 1g ¼

li PfB0 ðS0 Þ 4 0 \ BðiÞ 0 ðS0 Þ þY i 4 Si 9Z i ¼ 1g l0

þ For the second equality, notice that ðY i þ BðiÞ and 0 ðS0 þ 1Þ Si Þ þ ðS Þ S Þ differ if an increment of S by one unit leads ðY i þ BðiÞ 0 0 i 0 to a decrease in BðiÞ 0 ðS0 Þ, which in turn leads to a decrease in þ ðS Þ S Þ . This occurs when: ðY i þ BðiÞ 0 i 0

the number of backorders at the central warehouse decreases by adding a spare part, so B0 ðS0 Þ 4 0,

the first backorder in the pipeline at the central warehouse is due to local stock point i, so Zi ¼1, and

the number of backorders at local stock point i decreases if the number of backorders that is due to local stock point i at the central warehouse decreases, so BðiÞ 0 ðS0 Þ þ Y i 4 Si . & Lemma 10. The difference function D0 CðS0 ,S1 , . . . ,SN Þ is as follows:

D0 CðS0 ,S1 , . . . ,SN Þ ¼ CðS0 þ 1,S1 , . . . ,SN Þ CðS0 ,S1 , . . . ,SN Þ ¼ h0 PfB0 ðS0 Þ ¼ 0g N X li þ ½hi PfB0 ðS0 Þ 40g ðbi þ hi ÞPfB0 ðS0 Þ 4 0 \ BðiÞ 0 ðS0 Þ i¼1

l0

þY i 4 Si 9Z i ¼ 1g Proof. The cost function CðS0 ,S1 , . . . ,SN Þ can be rewritten as follows: CðS0 ,S1 , . . . ,SN Þ

Appendix A. Proof of Lemma 6

¼ h0 EI0 ðS0 Þ þ

N X

½hi EIi ðS0 ,Si Þ þ bi EBi ðS0 ,Si Þ

i¼1

Before we can go to the actual proof, we need two additional lemmas.

¼ h0 EI0 ðS0 Þ þ

N X

½hi ðEIi ðS0 ,Si Þ EBi ðS0 ,Si ÞÞ þ ðbi þ hi ÞEBi ðS0 ,Si Þ

i¼1

Lemma 9. It holds that

EI0 ðS0 þ 1Þ EI0 ðS0 Þ ¼ PfB0 ðS0 Þ ¼ 0g

ðA:1Þ

¼ h0 EI0 ðS0 Þ þ

N X

½hi EðSi Y i BðiÞ 0 ðS0 ÞÞ þðbi þ hi ÞEBi ðS0 ,Si Þ

i¼1

and, for all i A f1, . . . ,Ng it holds that ðiÞ EðSi Y i BðiÞ 0 ðS0 þ 1ÞÞ EðSi Y i B0 ðS0 ÞÞ ¼

EBi ðS0 þ 1,Si Þ EBi ðS0 ,Si Þ ¼

li PfB0 ðS0 Þ 4 0g l0

ðA:2Þ

li PfB0 ðS0 Þ 4 0 l0

\BðiÞ 0 ðS0 Þ þY i 4 Si 9Z i

¼ 1g

ðA:3Þ

Next, we can derive the difference function, using Lemma 9:

D0 CðS0 ,S1 , . . . ,SN Þ ¼ h0 ðEI0 ðS0 þ 1Þ EI0 ðS0 ÞÞ þ

Proof. The proof of Eq. (A.1) is analogous to the proof of Lemma 2. Eq. (A.2) can be proved as follows: ðiÞ EðSi Y i BðiÞ 0 ðS0 þ 1ÞÞ EðSi Y i B0 ðS0 ÞÞ

ðiÞ ¼ EBðiÞ 0 ðS0 þ 1Þ EB0 ðS0 Þ

¼ PfB0 ðS0 Þ 4 0 \ Z i ¼ 1g ¼

li PfB0 ðS0 Þ 4 0g l0

N X

ðiÞ ½hi ½EðSi Y i BðiÞ 0 ðS0 þ 1ÞÞ EðSi Y i B0 ðS0 ÞÞ

i¼1

þðbi þhi Þ½EBi ðS0 þ 1,Si Þ EBi ðS0 ,Si Þ ¼ h0 PfB0 ðS0 Þ ¼ 0g N X li þ ½hi PfB0 ðS0 Þ 40g ðbi þ hi ÞPfB0 ðS0 Þ 4 0 \ BðiÞ 0 ðS0 Þ i¼1

l0

þY i 4 Si 9Z i ¼ 1g

&


552

R.J.I. Basten, G.J. van Houtum / Int. J. Production Economics 143 (2013) 546–552

References

Now we are ready to prove Lemma 6: Proof. Consider the difference function D0 CðS0 ,S1 , . . . ,SN Þ (Lemma 10). Next, note that if B0 ðS0 Þ 4 0 and Zi ¼ 1 for some iA f1, . . . ,Ng, ðiÞ ðiÞ then BðiÞ 0 ðS0 Þ 4 0. If Si ¼0, then B0 ðS0 Þ 40 implies that B0 ðS0 Þ þ Y i 4Si . Therefore, if Si ¼ 0 for all i A f1, . . . ,Ng:

D0 CðS0 ,0, . . . ,0Þ ¼ h0 PfB0 ðS0 Þ ¼ 0g þ

N X li i¼1

¼

N X li b i¼1

l0

i

þ

N X li b i¼1

l0

i

l0

ð bi ÞPfB0 ðS0 Þ 4 0g !

þ h0 PfB0 ðS0 Þ ¼ 0g

Since PfB0 ðS0 Þ ¼ 0g is strictly increasing in S0, D0 CðS0 ,S1 , . . . ,SN Þ is strictly increasing in S0 and CðS0 ,S1 , . . . ,SN Þ is strictly convex in S0. & Appendix B. Proof of Lemma 8 Proof. We rearrange the terms of the difference function

D0 CðS0 ,S1 , . . . ,SN Þ (Lemma 10): D0 CðS0 ,S1 , . . . ,SN Þ ¼ h0 ð1 PfB0 ðS0 Þ 4 0gÞ N X li ½hi PfB0 ðS0 Þ 4 0g ðbi þ hi ÞPfB0 ðS0 Þ 4 0 \ BðiÞ þ 0 ðS0 Þ i¼1

l0

þ Y i 4 Si 9Z i ¼ 1g ¼ h0 h0

N X li i¼i

N X li i¼i

l0

l0

! hi PfB0 ðS0 Þ 4 0g

ðbi þ hi ÞPfB0 ðS0 Þ 4 0 \ BðiÞ 0 ðS0 Þ þY i 4 Si 9Z i ¼ 1g

P PN If h0 Z N i ¼ i ðli =l0 Þhi , then ðh0 i ¼ i ðli =l0 Þhi ÞPfB0 ðS0 Þ 4 0g is P PN decreasing in S0 (it is 0 if h0 ¼ N i ¼ i ðli =l0 Þhi ). i ¼ i ðli =l0 Þ ðiÞ ðbi þ hi ÞPfB0 ðS0 Þ 4 0 \ B0 ðS0 Þ þY i 4 Si 9Z i ¼ 1g is also decreasing in S0, so D0 CðS0 ,S1 , . . . ,SN Þ is too, and CðS0 ,S1 , . . . ,SN Þ is convex in S0. &

¨ Axsater, S., 1990. Simple solution procedures for a class of two-echelon inventory problems. Operations Research 38 (1), 64–69. ¨ Axsater, S., 2000. Exact analysis of continuous review (R, Q) policies in twoechelon inventory systems with compound poisson demand. Operations Research 48 (5), 686–696. Clark, A.J., Scarf, H., 1960. Optimal policies for a multi-echelon inventory problem. Management Science 6 (4), 475–490. Cohen, M.A., Zheng, Y.-S., Agrawal, V., 1997. Service parts logistics: a benchmark analysis. IIE Transactions 29, 627–639. Diks, E.B., de Kok, A.T., 1998. Optimal control of a divergent multi-echelon inventory system. European Journal of Operational Research 111, 75–97. Diks, E.B., de Kok, A.T., 1999. Computational results for the control of a divergent N-echelon inventory system. International Journal of Production Economics 59, 327–336. Eppen, G., Schrage, L., 1981. Centralized ordering policies in a multi-warehouse system with lead times and random demand. In: Schwarz, L.B. (Ed.), MultiLevel Production/Inventory Control Systems, Theory and Practice. TIMS Studies in the Management Sciences, vol. 16. , North-Holland Publishing Company, pp. 51–67. Forsberg, R., 1995. Optimization of order-up-to-S policies for two-level inventory systems with compound poisson demand. European Journal of Operational Research 81, 143–153. Forsberg, R., 1996. Exact evaluation of (R, Q)-policies for two-level inventory systems with poisson demand. European Journal of Operational Research 96, 130–138. ¨ zer, O ¨ ., Zipkin, P.H., 2007. Bounds, heuristics, and approximations for Gallego, G., O distribution systems. Operations Research 55 (3), 503–517. Graves, S.C., 1985. A multi-echelon inventory model for a repairable item with one-for-one replenishment. Management Science 31 (10), 1247–1256. Muckstadt, J.A., 2005. Analysis and Algorithms for Service Parts Supply ChainsSpringer, New York, NY. Rong, Y., Atan, Z., Snyder, L.V., 2010. Heuristics for Base-Stock Levels in MultiEchelon Distribution Networks. Working Paper. Available at SSRN: /http://ssrn. com/abstract=1475469S. Last checked on February 10, 2011. Sherbrooke, C.C., 1968. METRIC: a multi-echelon technique for recoverable item control. Operations Research 16 (1), 122–141. Sherbrooke, C.C., 2004. Optimal Inventory Modelling of Systems, Multi-Echelon Techniques, 2nd ed. Kluwer, Dordrecht, The Netherlands. van der Heijden, M.C., Diks, E.B., de Kok, A.T., 1997. Stock allocation in general multi-echelon distribution systems with (R, S) order-up-to-policies. International Journal of Production Economics 49, 157–174. van Houtum, G.J., 2006. Multi-echelon production/inventory systems: optimal policies, heuristics, and algorithms. In: Johnson, M.P., Norman, B., Secomandi, N. (Eds.), Tutorials in Operations Research: Models, Methods, and Applications for Innovative Decision Making. INFORMS, Hanover (MD), pp. 163–199 (Chapter 8).


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.