IIE Transactions (2001) 33, 83±89
An ecient procedure for non-stationary inventory control SRINAGESH GAVIRNENI1 and SRIDHAR TAYUR2 1
Maxager Technology, Inc., 8804 Rattlebush Cove, Austin, TX 78750, USA E-mail:
[email protected] 2 Graduate School of Industrial Administration, Carnegie Mellon University, Pittsburgh, PA 15213, USA E-mail:
[email protected] Received January 1999 and accepted January 2000
We present an ecient solution method ± Direct Derivative Estimation (DDE) ± for computing optimal order-up-to levels for a discrete time non-stationary inventory control model. We generalize a number of non-stationary inventory control models (which underlie larger models of supply chains) that include forecast updates, seasonality, information sharing, and exchange-rate ¯uctuations. This procedure is dierent from the existing ones in that it computes, in a recursive manner, the derivative of the cost function and not the cost function itself. It can also handle a much wider variety of ¯uctuations in the problem parameters. In our computational testing it was found to be considerably faster than Dynamic Programming and In®nitesimal Perturbation Analysis.
1. Introduction Underlying many models dealing with supply chain management issues is a basic discrete-time productioninventory model that incorporates random demand in a non-stationary environment. These non-stationaries arise from a variety of dierent causes: a perusal of recent literature provides many reasons including: (i) changes in economic conditions (Song and Zipkin, 1993); (ii) seasonal eects (Karlin, 1960a; Zipkin, 1989); (iii) Bayesian updates of demand distributions (Aviv and Federgruen, 1998; Lovejoy, 1990, 1992), (iv) information ¯ow (Gavirneni et al., 1999), and (v) exchange rate ¯uctuations (Scheller-Wolf and Tayur, 1997). It is well known that, in many cases, the optimal policy is order-up-to (equivalently, base stock), and the order-up-to level in a period depends on the state of the system in that period; (Karlin, 1960b). For other cases the optimal policy is typically very complex, and consequently one restricts analysis to the restrictive class of order-up-to policies, or uses this class as a bound (see Aviv and Federgruen (1998) for example). In this paper, we present an ecient solution procedure, which we call the Direct Derivative Estimation (DDE) procedure, to ®nd these optimal order-up-to levels. Existing solution procedures for non-stationary inventory control are either very complex and computationally expensive or speci®c to the setting they address and not easily generalized. Iglehart and Karlin (1962) developed a solution procedure for a discrete time non-stationary inventory control problem that involves solving systems of integral equations. This procedure requires considerable computational eort. Song and Zipkin (1993) present so0740-817X
Ó
2001 ``IIE''
lution procedures for the continuous time non-stationary problem under the additional assumption of Poisson demands. Karlin (1960a) and Zipkin (1989) present solution procedures for the discrete time problem when the demands are cyclic. These solution procedures are very speci®c to the non-stationarity for which they were developed. The DDE procedure overcomes both these de®ciencies and works under the non-restrictive assumption that demands are strictly positive. Our approach for determining the optimal levels is dierent because we compute them by estimating the derivative of the cost function where as the previous studies have concentrated on estimating the cost function. In addition to the ability to handle a wide variety of non-stationarities, this procedure is more ecient than Dynamic Programming (DP) and In®nitesimal Perturbation Analysis (IPA). The rest of this paper is organized as follows. In Section 2, we formally present the model we are studying. In Section 3, we describe the DDE procedure and explain the reasoning behind it. We present results from our computational study in Section 4 and conclude in Section 5.
2. The model We consider a periodic non-stationary inventory control problem with in®nite capacity, linear holding and penalty costs. There are no purchase, salvage, or setup costs. Every period is in one of k possible states where k is ®nite. In state i, the holding cost is hi per unit per period, the penalty cost is bi per unit, and the demand is realized from a distribution with cdf Ui
(pdf /i
. The
84
Gavirneni and Tayur
probability transition matrix P pij
di de®nes the transition from one period to the next. The quantity pij
di is the probability that a period is in state j given that the previous period was in state i and the demand observed was di . The fact that the probabilities pij are functions of di allows us to model forecast updates based on the current demand (Lovejoy, 1990). Notice that the transition matrices in Zipkin (1989), Scheller-Wolf and Tayur (1997), Sethi and Cheng (1997) and Gavirneni et al. (1999) are special cases. The myopic inventory level for state i, using the newsvendor formula, is bi ÿ1 : Ui bi hi Due to our assumption of in®nite capacity in each period, in every state the myopic level is an upper-bound on the optimal inventory level (Morton and Pentico, 1995). Let bi ÿ1 ; R max Ui i bi hi be the maximum of these myopic levels. Clearly if hi > 0 8 i and bi is ®nite for all i; R is ®nite and the optimal inventory level in any state will be at most R units. Let Li
y be the one-period cost in state i, when the inventory level is y. Zy Li
y hi
Z1
y ÿ tdUi
t bi
t ÿ ydUi
t: y
1
Li
y is convex and its minimum occurs at bi y Uÿ1 : i bi hi The n-period discounted (with discount factor 0 < b 1) cost function, Vni
x, with initial state i and initial inventory x can be written as Jni
y Li
y bEdi
k X j1
j pij
di Vnÿ1
y ÿ di ;
where Vni
x minfJni
yg: yx
Jni
y
is the discounted cost of an n-period problem starting in state i when the inventory after production is y. Starting with the initial condition V0i
x 0 8 x; i, it can be shown via induction that Jni
y is convex in y with the minimum being at some yni and that Vni
x is minimized at minfx; yni g. The in®nite horizon cost function Vi
x limn!1 Vni
x and is equal to Vi
x min Ji
y; yx
where Ji
y Li
y bEdi
k X j1
pij
di Vj
y ÿ di :
It is well established that both Ji
and Vi
are well de®ned and ®nite (Karlin, 1960b). Furthermore, as a limit of convex functions, Ji
and Vi
are convex and minimum for the in®nite horizon discounted cost situation occurs at some yi implying that the optimal policy is order-up-to. That is, when we are in state i, if the current inventory level is below yi , then bring it up-to yi and if we are above it, do nothing.
3. Solution procedure It is our objective to develop fast solution procedures to compute these order-up-to levels. Two solution procedures currently available for a general non-stationary inventory control problem are Dynamic Programming (Bertsekas, 1988) and In®nitesimal Perturbation Analysis (IPA) (Kapuscinski and Tayur, 1998). They are both iterative in nature and are expensive in terms of the computational eort required. We propose an ecient recursive procedure to compute the optimal order-up-to levels. This procedure recursively estimates, starting with the initial condition V0i
0 0, the derivatives J0i
and V0i
at every inventory level for each state. Since the cost function is convex, these derivatives are negative for low inventory levels and increase as the inventory is increased. The level at which the derivative is zero is the optimal order-up-to level. These derivatives are: J0i
y L0i
y bEdi V0i
x
k X j1
pij
di V0j
y ÿ di ;
maxfJ0i
x; 0g:
Since L0i
y
hi bi Ui
y ÿ bi is known, and di is strictly positive, if we know the values of V0i
x for all values of x below y, then we can estimate J0i
y. If J0i
y is negative, then V0i
y 0 due to the fact that the inventory can be increased from y to the optimal level at which the derivative is zero. However if J0i
y is positive, we recognize that the optimal solution is below y and set V0i
y equal to J0i
y. Due to in®nite capacity and positive demands V0i
x 0 8 x 0. So, we need to add up only the derivatives of those inventory levels that result from demands less than or equal to the current inventory level. Based on these observations, we propose the following recursive procedure. First we discretize the demand distributions. Let pri be the probability that demand is equal to r 2 f1; 2; 3; . . .g in state i. For ease of presentation, we use Wi
x to denote V0i
x and zi to denote yi . The algorithm to compute Wi
and zi is as follows:
Ecient procedure for non-stationary inventory control Step 1. Initialize Wi
0 0 8 i; x 0. Step 2. x x 1. Starting at i 1 and incrementing i each time by one until it reaches k, calculate Wi
x as follows: Wi
x L0i
x b
x X
pri
k X
r1
pij
rWj
x ÿ r:
j1
If Wi
x is negative, set Wi
x 0. Step 3. If Wk
x is positive for all k, STOP; otherwise go back to Step 2. Step 4. For each state i, select the optimal order-up-to level zi minfxjWi
x > 0g. Proposition 1. The time complexity of this algorithm is O
R2 k 2 . Proof. Clearly, the order-up-to level in any state will be at most R. That means Step 2 of the algorithm will be executed at most R times. However, Step 2 adds at most Rk terms for each state. So, the complexity of Step 2 is Rk 2 implying that the complexity of the algorithm is j R2 k 2 . It should be noted that if we relax the assumption of non zero demands, Step 2 of the algorithm becomes a system of linear equations which can be solved in polynomial time.
4. Computational results We implemented the solution procedure and computed the optimal order-up-to levels for a number of problems and compared with DP and IPA. The number of demand distributions (and also the number of states), k, was varied from ®ve to 20 in steps of ®ve. The maximum demand, D, could take values of 300 and 600. (Thus we have a total of eight settings. As described below, for each of these eight settings we experimented with many dierent demand distributions). The holding and penalty costs were held steady at two and eight respectively. The state transitions from one period to another were assumed to be independent of the demands. From any state in one period, it was equally likely to go to any state in the next period i.e., pij
1 k
85 terminated the procedure when the optimal inventory levels did not change from one iteration to the next. For the IPA procedure the number of iterations for each run was set equal to kD. The initial step size was set equal to one. We kept track of the lowest cost observed and when it did not change in 25 consecutive simulations, the step size was reduced to 80% of its current value. The procedure was terminated when the step size was smaller than 1 10ÿ6 . The CPU times of all the three procedures are given below in Table 1. Figure 1 is a graph of these times. The results indicate that the DDE procedure is ®ve to 10 times faster than Dynamic Programming and two to ®ve times faster than IPA. We performed a similar experiment for the case when the demands were distributed normally with a coecient of variation (cv) of 0.25 and 0.50, exponentially, and Erlang with parameters 2 and 4. In all cases, the mean in state i was assumed to be Di=2k. For normal demands we assumed that in state i the demand lies between one and Di=k. (This truncation did not change the cv for the lower variance case, but dropped it to 0.44 in the higher Table 1. Computation times of all three procedures for a uniform demand distribution k
D
DDE (Seconds)
IPA (Seconds)
DP (Seconds)
5 5 10 10 15 15 20 20
300 600 300 600 300 600 300 600
0.53 2.25 2.00 8.08 4.36 17.67 7.70 30.95
16.72 32.62 32.77 63.55 50.12 100.50 66.20 131.97
8.12 39.40 33.10 131.75 68.12 319.30 117.48 549.32
8 i; j:
In our ®rst set of experiments, the demand distribution in state i was assumed to be uniform between one and
D=k i. Since DP and IPA are both iterative procedures, there are many ways to de®ne the starting and stopping criteria. For Dynamic Programming, we started with the initial condition V0i
x 0 8 i; x. In iteration n 1; 2; 3; . . ., we calculated Vni
x using the recursion in Section 2, and estimated the optimal levels yni . We
Fig. 1. Plot of computational time versus problem size. The demand distribution in any state i is uniform between 1 and Di=k, and D is either 300 or 600.
86
Gavirneni and Tayur
Table 2. Computation times of all three procedures for normal demand distribution k
5 5 10 10 15 15 20 20
D
300 600 300 600 300 600 300 600
CV = 0.25
CV = 0.50
DDE (Seconds)
IPA (Seconds)
DP (Seconds)
DDE (Seconds)
IPA (Seconds)
DP (Seconds)
0.32 1.34 1.16 4.70 2.50 10.26 4.38 18.01
18.84 41.49 44.28 78.13 64.26 128.66 82.04 166.06
7.47 30.11 25.11 134.53 91.62 295.22 126.66 508.68
0.43 1.67 1.49 6.05 3.19 13.15 5.65 23.16
15.47 42.98 44.57 88.53 62.08 125.10 76.54 152.79
10.32 51.75 43.45 174.17 128.69 369.55 158.48 635.99
variance case). For the exponential and Erlang cases the demands were assumed to lie between one and 2Di=k. Tables 2, 3, and 4 give the resulting computational times for all three procedures. Notice that their behavior was similar to the behavior for uniformly distributed demand. It is important to understand the advantages and disadvantages of using these three procedures. The information provided by the three procedures varies signi®cantly. Dynamic Programming provides us with the optimal order-up-to levels, the optimal cost, and the cost Table 3. Computation times of all three procedures for exponential demand distribution k
D
DDE (Seconds)
IPA (Seconds)
DP (Seconds)
5 5 10 10 15 15 20 20
300 600 300 600 300 600 300 600
1.63 6.74 5.97 22.97 12.68 51.49 22.10 90.24
21.34 40.77 39.58 82.23 65.56 107.23 88.79 164.93
12.47 63.14 62.15 258.40 157.94 635.12 236.07 943.82
of using other order-up-to levels in a period. IPA on the other hand gives the optimal order-up-to levels and the optimal cost. It does not provide any information about the increase in cost if we use other order-up-to levels. The DDE procedure provides the optimal order-up-to levels and derivatives at every other inventory level. However, it does not provide the optimal cost of using these order-upto levels. So, while selecting a procedure to compute order-up-to levels for non-stationary demands, the information provided by these procedures should be kept in mind. However, observe that the DDE procedure combined with one simulation contains the information provided by DP while being cheaper than DP computationally. On the other hand, both IPA and DP can be used when the capacity in each period is ®nite whereas our solution procedure can not be used. While Fig. 1 shows that the DDE procedure is much faster than both Dynamic Programming and IPA, it also seems to indicate that for very large problems, the IPA procedure will be competitive with the DDE procedure. In fact we observed that for a problem with k 5 and D 10 000, IPA is faster than the DDE procedure. This is mainly because when the demands are very large, the DDE procedure has to iterate through every possible demand while IPA only generates a representative sample
Table 4. Computation times of all three procedures for Erlang demand distribution k
5 5 10 10 15 15 20 20
D
300 600 300 600 300 600 300 600
Erlang(2)
Erlang(4)
DDE (Seconds)
IPA (Seconds)
DP (Seconds)
DDE (Seconds)
IPA (Seconds)
DP (Seconds)
1.34 5.44 4.78 19.32 10.26 41.75 17.90 73.10
23.23 37.58 30.80 77.05 56.14 89.41 72.70 136.08
10.33 61.97 43.20 173.78 128.15 441.20 189.65 760.66
1.34 5.47 4.75 19.32 10.26 41.79 17.90 73.10
19.72 44.11 43.38 94.37 66.61 139.49 40.77 138.91
10.33 41.42 34.83 208.67 73.61 441.45 189.61 635.95
Ecient procedure for non-stationary inventory control of the random demands. However, if we discretize the demands more coarsely, then the DDE procedure will not have to iterate through as many demands and thus it will become faster. But, this will lead to order-up-to levels that will be approximate and will result in higher costs. So, we wanted to study how much the costs will increase by if we discretize the demand in units of 10 or 100 instead of one. Tables 5 to 10 give the resulting computation times and costs for these cases. Notice that here also the computational times reduced drastically while increasing the costs by at most 0.3%. So, for situations when the demands are
87 large, the DDE procedure will be very eective if the demands are discretized coarsely. Note that when the demands are discretized coarsely, the computation time for Dynamic Programming will also reduce but it still will not be competitive with the DDE procedure.
5. Conclusions In this paper, we have presented a fast recursive procedure (DDE) to estimate derivatives of the in®nite horizon
Table 5. Eect of lumping demand on computation times and costs for uniform demands k
3 5 7 10
D
15 10 7 5
000 000 000 000
No lumping
Lumping by 10
Lumping by 100
Time (Seconds)
Cost ($)
Time (Seconds)
Cost ($)
Time (Seconds)
Cost ($)
594.17 644.52 595.88 588.45
8625.73 5328.82 3606.10 2510.69
5.42 6.20 5.75 5.63
8625.76 5328.82 3606.13 2510.70
0.05 0.05 0.05 0.05
8626.44 5329.62 3607.84 2513.39
Table 6. Eect of lumping demand on computation times and costs for normal (cv = 0.25) demands k
3 5 7 10
D
15 10 7 5
000 000 000 000
No lumping
Lumping by 10
Lumping by 100
Time (Seconds)
Cost ($)
Time (Seconds)
Cost ($)
Time (Seconds)
Cost ($)
347.70 373.90 337.91 336.21
3537.99 2155.63 1451.44 1006.70
3.44 3.73 3.30 3.22
3538.00 2155.63 1451.46 1006.78
0.04 0.04 0.04 0.04
3539.18 2156.29 1452.12 1007.37
Table 7. Eect of lumping demand on computation times and costs for normal (cv = 0.50) demands k
3 5 7 10
D
15 10 7 5
000 000 000 000
No lumping
Lumping by 10
Lumping by 100
Time (Seconds)
Cost ($)
Time (Seconds)
Cost ($)
Time (Seconds)
Cost ($)
447.90 480.66 432.75 448.70
6487.22 3983.99 2689.91 1868.85
4.39 4.75 4.24 4.17
6487.24 3983.99 2689.91 1868.85
0.04 0.04 0.04 0.04
6487.59 3984.39 2691.49 1871.28
Table 8. Eect of lumping demand on computation times and costs for exponential demands k
D
No lumping Time (Seconds)
3 5 7 10
15 10 7 5
000 000 000 000
1184.24 1239.60 1102.28 1095.87
Lumping by 10 Cost ($)
14 8 5 4
363.09 782.70 913.44 099.16
Time (Seconds) 11.30 12.02 10.75 10.61
Lumping by 100
Cost ($) 14 8 5 4
363.16 782.75 913.52 099.30
Time (Seconds) 0.12 0.12 0.12 0.12
Cost ($) 14 8 5 4
367.27 784.02 913.82 101.88
88
Gavirneni and Tayur
Table 9. Eect of lumping demand on computation times and costs for Erlang(2) demands k
D
No lumping Time (Seconds)
3 5 7 10
15 10 7 5
000 000 000 000
1445.87 1535.99 1377.91 1362.98
Lumping by 10 Cost ($) 11 6 4 3
Time (Seconds)
253.10 873.62 632.12 210.02
14.21 15.18 13.59 13.34
Lumping by 100
Cost ($) 11 6 4 3
253.14 873.62 632.11 210.02
Time (Seconds) 0.14 0.14 0.14 0.14
Cost ($) 11 6 4 3
253.34 873.90 633.97 210.63
Table 10. Eect of lumping demand on computation times and costs for Erlang(4) demands k
3 5 7 10
D
15 10 7 5
000 000 000 000
No lumping
Lumping by 10
Lumping by 100
Time (Seconds)
Cost ($)
Time (Seconds)
Cost ($)
Time (Seconds)
Cost ($)
1443.76 1535.09 1376.14 1359.54
7943.68 4857.82 3270.23 2267.74
14.24 15.26 13.59 13.30
7943.72 4857.83 3270.23 2267.78
0.14 0.14 0.14 0.14
7944.26 4858.15 3270.82 2269.21
cost function for non-stationary inventory control. Using these derivatives, we are able to determine the optimal order-up-to level for each state. The strengths of the solution procedure are that it is fast and it can handle a wide variety of non-stationarities.
References Aviv, Y. and Federgruen, A. (1998) The bene®ts of design for postponement, in Quantitative Models for Supply Chain Management, Tayur, S., Ganeshan, R. and Magazine, M. (eds), Kluwer Academic Press, Boston, MA, pp. 553±584. Bertsekas, D.P. (1988) Dynamic Programming: Deterministic and Stochastic Models, Prentice-Hall, Englewood Clis, NJ. Gavirneni, S., Kapuscinski, R. and Tayur, S. (1999) Value of information in capacitated supply chains. Management Science, 45(1), 16±24. Iglehart, D. and Karlin, S. (1962) Optimal policy for dynamic inventory process with non-stationary stochastic demands, in Studies in Applied Probability and Management Science, Arrow, K.J., Karlin, S. and Scarf, H. (eds), Stanford University Press, Stanford, CA, pp. 127±147. Kapuscinski, R. and Tayur, S. (1998) A capacitated productioninventory model with periodic demand. Operations Research, 46(1), 899±911. Karlin, S. (1960a) Optimal policy for dynamic inventory process with stochastic demands subject to seasonal variations. Journal of Society for Industrial and Applied Mathematics (SIAM), 8(4), 611± 629. Karlin, S. (1960b) Dynamic inventory policy with varying stochastic demands. Management Science, 6(3), 231±258. Lovejoy, W.S. (1990) Myopic policies for some inventory models with uncertain demand distributions. Management Science, 36(6), 724± 738. Lovejoy, W.S. (1992) Stopped myopic policies in some inventory models with generalized demand processes. Management Science, 38(5), 688±707.
Morton, T. and Pentico, D. (1995) The ®nite horizon non-stationary stochastic inventory problem near-myopic bounds, heuristics and testing. Management Science, 41, 334±343. Scheller-Wolf, A. and Tayur, S. (1997) Reducing international risk through quantity contracts. GSIA Working Paper, Carnegie Mellon University, Pittsburgh, PA. Sethi, S. and Cheng, F. (1997) Optimality of
s; S policies in inventory models with Markovian demands. Operations Research, 45(6), 931±939. Song, J. and Zipkin, P. (1993) Inventory control in a ¯uctuating demand environment. Operations Research 41(2), 351±370. Zipkin, P. (1989) Critical number polices for inventory models with periodic data. Management Science, 35(1), 71±80.
Biographies Srinagesh Gavirneni is a software architect at Maxager Technology Inc., provider of the only business-to-business software solution that enables manufacturers using traditional sales channels or online emarkets to sell pro®tably. Previously he was a research scientist in the Austin Product Center of Schlumberger where he was involved in projects in the areas of manufacturing, supply chain management, facility location, rig operations, seismic surveys, simulation and information technology. His undergraduate degree from IIT ± Madras is in Mechanical Engineering and he holds Masters and Doctoral degrees in Manufacturing and Operations Management from Carnegie Mellon University. His research interests are in supply chain management, inventory control, scheduling, mathematical programming, and simulation. His papers have appeared in Management Science, Manufacturing & Service Operations Management, European Journal of Operational Research, IIE Transactions, and IEEE Journal on Reliability. Sridhar Tayur is a Professor at Carnegie Mellon University. He obtained his Ph.D. in ORIE from Cornell University. His research and teaching interests include topics in supply chain management, product variety, logistics, and plant management. He has developed models and algorithms by adapting and advancing ideas from inventory theory,
Ecient procedure for non-stationary inventory control stochastic processes, queuing theory, integer programming, theoretical computer science and algebraic geometry (Grobner Basis theory). His papers have been published in Management Science, Operations Research, Mathematics of Operations Research, Mathematical Programming, Stochastic Models, Queueing Systems, MSOM Journal, IIE Transactions, Naval Research Logistics Quarterly, Transportation Science and Interfaces. He has co-edited a book, Quantitative Models for Supply Chain Management. He has consulted for, and implemented systems at, several ®rms including McKinsey & Co., GE, Intel, Bush
89 and Caterpillar. He is an Associate Editor for Operations Research, Management Science and IIE Transactions, a Senior Editor for MSOM Journal and an Area Editor for POMS Journal. He won the Industrial Management Teaching award (Undergraduates) in 1993, the George Leland Bach teaching award (MBA students) in 1999, and has been voted as one of the ``Best Professors'' in Business Week surveys of MBA students. Contributed by the Inventory Department