Asymptotically Optimal Inventory Control for Assemble-to-Order Systems

Published Online:https://doi.org/10.1287/stsy.2022.0099

Abstract

We consider assemble-to-order (ATO) inventory systems with a general bill of materials and general deterministic lead times. Unsatisfied demands are always backlogged. We apply a four-step asymptotic framework to develop inventory policies for minimizing the long-run average expected total inventory cost. Our approach features a multistage stochastic program (SP) to establish a lower bound on the inventory cost and determine parameter values for inventory control. Our replenishment policy deviates from the conventional constant base stock policies to accommodate nonidentical lead times. Our component allocation policy differentiates demands based on backlog costs, bill of materials, and component availabilities. We prove that our policy is asymptotically optimal on the diffusion scale, that is, as the longest lead time grows, the percentage difference between the average cost under our policy and its lower bound converges to zero. In developing these results, we formulate a broad stochastic tracking model and prove general convergence results from which the asymptotic optimality of our policy follows as specialized corollaries.

Funding: This study is based on work supported by the National Science Foundation [Grant CMMI-1363314].

1. Introduction

Optimal control of assemble-to-order (ATO) inventory systems is a canonical problem in inventory theory. In an ATO system, product assembly is assumed to take a negligible amount of time, so there is no need to keep inventories of final products. Component supplies are not capacity constrained, but it is necessary to hold inventories for them to accommodate replenishment lead times (i.e., delays between ordering and receiving components). The goal of ATO inventory management is to minimize the total inventory cost, which consists of both holding and backlog costs, by controlling the timing and quantities of component orders and allocation of available components to different product demands.

Although optimal control of single-product ATO systems has long been settled (see Karlin and Scarf (1958) and Rosling (1989) for systems with single and multiple components, respectively), optimizing multiproduct ATO systems is an immensely more difficult problem that remains unsolved. The complexity arises from the need to allocate components that are used by multiple products. Optimal allocation depends on component availabilities, which are outcomes of replenishment decisions. Optimal replenishment needs to take into account how components will be allocated. A joint optimal solution of both decisions is contingent on not only the current inventory and backlog levels, but also the arrival times of all outstanding replenishment orders, giving rise to an enormous state space. The problem becomes even more complicated in systems where components do not have identical lead times, because the ordering of components often needs to be coordinated with the availabilities of other components with longer lead times.

There has been a large body of studies on managing multiproduct ATO systems. One may find a thorough review of the related literature in Song and Zipkin (2003), and a more recent one in Atan et al. (2017). Many previous studies focus on particular types of policies, such as base stock replenishment policies, FIFO, or no-hold-back allocation policies (see Lu and Song (2005), Lu et al. (2010), and Huang and de Kok (2015) for some samples), and for periodic-review systems, allocation policies that always satisfy demands from previous periods first (Zhang 1997, Hausman et al. 1998, Agrawal and Cohen 2001, Akçay and Xu 2004). Restricting the consideration to these types of policies makes the problem more tractable, but also sacrifices optimality, because both analytical and numerical studies (Doğru et al. 2010, 2017) have shown that there are often better alternatives in other types of policies.

Asymptotic analysis has recently emerged as a powerful tool for analyzing inventory systems. Although a weaker standard than being exactly optimal, asymptotic optimality provides vital guidance to formulating novel inventory policies and evaluating their performance when meeting the latter criterion is analytically intractable. Asymptotic optimality has been used to justify the use of base stock policies in lost sale inventory systems (in the regime of high penalty costs; Huh and Rusmevichienton 2009), ATO inventory systems with identical lead times (Reiman and Wang 2015) or when differences in lead times are small relative to the lead times themselves (Reiman et al. 2016), or systems with nonstationary demands and probabilistic service level constraints (Wei et al. 2021). It also supports the use of no-hold-back allocation policies in assemble-to-order N and W systems (Lu et al. 2015). Asymptotic analysis has led to several surprising discoveries. For instance, simple constant ordering policies can be highly effective in managing lost sale inventory systems with long lead times (Reiman 2004, Goldberg et al. 2016, Xin and Goldberg 2016, Bu et al. 2020), and randomness of lead times is a useful feature that can be exploited to reduce the inventory cost in backlog systems when orders can cross in time (Stolyar and Wang 2022). We refer readers to Goldberg (2021) for a comprehensive review of these developments.

In this paper, we study ATO inventory systems with nonidentical, deterministic lead times and a general bill of materials (BOM). We develop an inventory policy that includes both replenishment and allocation decisions. We prove that our policy is asymptotically optimal, that is, as the longest lead time increases, the percentage difference between the long-run average inventory cost under our policy and the optimal policy converges to zero.

Our analysis follows a general four-step asymptotic framework that has produced many ground-breaking results in the study of stochastic processing networks (Harrison 1988, 1996; Harrison and Wein 1990; Harrison and López 1999). It has also been adopted for optimizing pricing, capacity, and allocation decisions in ATO production-inventory systems (Plambeck and Ward 2006). In Reiman and Wang (2015), the framework is formally summarized where each step is explicitly described and specialized to the study of ATO inventory systems with identical lead times. As a continuation of the latter work, here we apply the framework to address ATO inventory systems with general deterministic lead times. A step-by-step discussion of previous results and our new contributions is provided.

  • Step 1: Relax some feasibility constraints of the original system to formulate a proxy model that is easier to solve and provides a lower bound on the cost achievable under any feasible policy.

    In Reiman and Wang (2012), a multistage stochastic program (SP) is formulated as a static analog to dynamic ATO systems. The optimal objective value of the SP is proven to be a lower bound on the average inventory cost of the latter systems under any feasible policy. Unfortunately, this lower bound takes the form of an infimum that is often not attained at finite values of the decision variables.

    As a contribution of this paper, we transform this SP into an equivalent form where the optimal objective value is the same, whereas the optimal decision variables are finite. This paves the way for using these optimal decision variables as parameters for ATO inventory control policies.

  • Step 2: Solve the proxy model.

    There have been many studies on the model structure and computational efficiency of the aforementioned SP, mainly on special cases that have two stages and correspond to systems with particular BOMs (Doğru et al. 2010, Nadar et al. 2014, van Jaarsveld and Scheller-Wolf 2015, Zipkin 2016, DeValve et al. 2020). Developing efficient algorithms for multistage SPs is an active area of research. Although we solve the SP for some simple examples in Section 8, solving more general cases is well beyond the scope of this paper, and we focus on a different aspect of the problem that is critical for proving asymptotic optimality of our policy. To use optimal solutions of the SP as parameters of inventory control policies, we need to show that these values are stable; that is, they do not change drastically in response to small fluctuations of inputs. The analysis should be applicable to the SP with a general number of stages and general BOMs.

    To this end, we show that with a negligible loss of the accuracy, the SP can be approximated by a finite-dimension linear program (LP), which has a unique optimal solution that is Lipschitz continuous in input parameters. By characterizing and making use of the structure of constraints of the approximating LPs, we prove that their optimal solutions are Lipschitz continuous in inputs that change with the state of the ATO system, and importantly, the Lipschitz constant is independent of the problem size.

  • Step 3: Use the optimal solution of the proxy model to formulate inventory control policies for the original systems.

    In Reiman and Wang (2015), a two-stage SP is used to set asymptotically optimal inventory policies for systems with identical lead times. Replenishment decisions follow a base stock policy with the base stock levels specified by the first stage SP solution. Allocation decisions are controlled by an allocation principle, which uses the second-stage SP solution to set backlog targets to dynamically choose the amount of each demand to serve. However, it is well known that base stock policies are inefficient for general ATO systems considered in this paper, which allow significantly different lead times (Zipkin 2000).

    To the best of our knowledge, except for single-product ATO systems (Rosling 1989), an asymptotically optimal replenishment policy remains to be developed for systems with general deterministic lead times and general BOMs. We fill the gap in this paper by formulating such a policy, which uses the optimal solutions of the aforementioned multistage SP to set dynamic targets for inventory positions that determine order quantities. The policy generalizes previous work: it specializes to the policy in Rosling (1989) in systems with a single product and the base stock policy in Reiman and Wang (2015) in systems with identical lead times. We adopt the same allocation principle in Reiman and Wang (2015) with minor twists to fit with the new replenishment policy.

  • Step 4: Show the performance benefit of the policy by proving that it is asymptotically optimal.

    For the special case of identical lead times, an SP-based policy has been shown to be asymptotically optimal (Reiman and Wang 2015). However, the proof relies on the fact that the constant inventory positions prescribed by the two-stage SP can be exactly followed by a base stock policy. Also, the state of the system under this policy is completely determined by the history within the previous lead time. In contrast, for systems with nonidentical lead times, the ideal inventory positions prescribed by the multistage SP may not always be attainable. The state of system can be affected by the history in the unbounded past. Therefore, new techniques are needed to prove asymptotic optimality of our policy for general systems.

We introduce a broadly defined stochastic tracking model, which features a general target process and a general tracking process. We prove that the expected difference between these two processes converges to zero. We apply this model to compare the inventory position and backlog targets prescribed by the SP for reaching the cost lower bound with their actual levels under our policy. We show that these comparisons are special cases of the convergence results of this tracking model and use this to establish asymptotic optimality of our policy. We also perform simulations on several special ATO systems to illustrate that our policy performs well, even under “nonasymptotic” conditions.

The rest of the paper is organized as follows. We define the problem in Section 2. In Section 3, we formulate the SP, develop bounds on its optimal solutions (Theorem 1), and show that its optimal objective value is the same as that of the SP in Reiman and Wang (2012) and thus is a lower bound on the average inventory cost of the ATO system (Theorem 2). In Section 4, we present our inventory policy. In Section 5, we show that the policy is asymptotically optimal if the resulting inventory positions and backlog levels converge to their respective SP-based targets (Theorem 3). The latter convergence results are proven in Section 6 with the formulation and analysis of the aforementioned stochastic tracking model. There, Theorem 4 proves convergence for the general stochastic tracking model. Its corollaries show that inventory positions and backlog levels converge to their targets if the latter satisfy stability conditions that require them to be asymptotically Lipschitz continuous in changes of demands in some previous periods. In Section 7, we prove that the target stability conditions are indeed satisfied with the aforementioned development of finite-dimensional LP approximations. We support our analysis with numerical studies in Section 8 and conclude the paper in Section 9.

As for notation, Rl and R+l are, respectively, sets of l-dimensional real vectors and nonnegative real vectors (l1). Their superscripts are omitted when l = 1. We define 1{} to be an indicator function, which equals one if the statement inside the bracket is true and zero otherwise. The maximum and minimum of x1 and x2 are denoted by x1x2 and x1x2, respectively, and max(x,0) is denoted by x+. Vector symbols are always in bold, and as two special vectors, ej is the unit vector with the jth element taking the value of unity, and 1 is the vector of all 1s (dimensions of both vectors depend on the context). The norm ||x||β on Rl is defined by ||x||β=(i=1l|xi|β)1/β for l1 and β1. For each pair of vectors x1 and x2, the maximum and minimum, x1x2 and x1x2, are taken componentwise. Between any pair of vectors, x1()x2 if every component of x1 is greater (less) than or equal to its corresponding component in x2, and x1x2 unless each component in x1 equals the corresponding component in x2.

To improve the flow and avoid distracting from our main results, we leave proofs of all lemmas and some theorems in Appendix A. To highlight the major ideas of our work, we include proofs of key results, Theorems 3, 4, and 6, and related corollaries, in the main body of the paper.

2. Problem Formulation

We consider continuous-review ATO inventory systems. Inventories are nonperishable and unserved demands are always backlogged. Component lead times are deterministic but may differ from each other. Our policy and analysis apply to periodic-review systems but do not extend to cases with perishable inventories, lost sales, or stochastic lead times.

2.1. System

There are m products and n components. The BOM, given as an n × m nonnegative integer matrix, A, specifies the use of components by different products. Elements of A, aji, represents the amount of component j needed to assemble product i (1im). Thus, the jth row of A, Aj, specifies the amounts of component j needed by all products (1jn). Without loss of generality, we assume that there is at least one nonzero entry in every row and every column of A.

Figure 1 shows three ATO systems that are common in the literature. The W system has two products, and three components, one of which is used by both products. Each product is assembled from one unit of the common component and one unit of a product-specific component. With a slight deviation from the aforementioned notation, the common component is referred to as component 0. The M system uses two components to build three products. Products 1 and 2 use one unit of components 1 and 2, respectively. The third product, referred to as product 0 in a slight deviation from the aforementioned notation, uses one unit of both components. The N system is a special case of both the W and M systems. It has two products and two components. Product 0 uses one unit of both components 0 and 1 and Product 1 uses only one unit of component 0.

Figure 1. Examples: The W, M, and N Systems

There are K distinct component lead times, L1<<LK. Define L0=0 for notational convenience. Let nk be the number of components with lead time Lk (1kK). Components are indexed according to an ascending order of their lead times. Let n¯0=0 and n¯k=kknk (1kK). Observe that n¯K=n. Thus, {n¯k1+1,,n¯k} are the indexes of components with lead times Lk (1kK). We associate each component j with an index kj (1kjK) such that Lkj is the lead time of component j (1jn). Without loss of generality, we arrange the rows of A in an order such that the submatrix Ak, composed of rows n¯k1+1,.., and n¯k of A, specifies the use of components with lead time Lk (1kK).

Without loss of generality and for simplicity, we let the system start at a time when there is no inventory on-hand, no order in transit, and no backlog, and define that time to be t=LK. Demand arrives according to an integer vector valued compound Poisson process

D(t)=(D1(t),,Dm(t)), tLK,
where Di(t) is the amount of demand for product i (1im) that arrives during [LK,t]. The process {D(t),t0} is right continuous. The number of demand orders arriving during [LK,t] (tLK) is a Poisson process Λ={Λ(t),tLK}, and there is an associated independent and identically distributed (i.i.d.) sequence of random vectors that give order sizes. A generic element of this sequence is denoted by S=(S1,S2,,Sm), where Si is the order size for product i. Although the elements of the sequence (the order size vectors) are independent, the components (S1,S2,,Sm) within each vector can be dependent. Let
λ¯=E[Λ(1)Λ(0)]
denote the order arrival rate. Mean demand arriving within a unit of time is
μ=(μ1,,μm)E[D(1)D(0)]=λ¯E[S].

The covariance matrix of (D(1)D(0)) is denoted by Σ, of which the diagonal elements, σii, are variances of demand i (1im) over a unit of time. Because the demand process is stationary, μ and Σ are also, respectively, the means and the covariance matrix of demands over [t,t+1] (tLK).

We assume that Si has a finite moment of order 6, that is,

ηiE[Si6]<,1im.

As will be evident from the proof of Theorem 4, we assume a finite moment of order 6 for a similar reason as that in Huh et al. (2009), which is to use the moment to bound the difference between two stochastic processes. (Beyond that, both the time horizon and stochastic processes involved are completely different between the two studies.)

2.2. Inventory Control Problem

Inventory control includes both replenishment and allocation decisions. For components with lead time Lk, the replenishment starts from time Lk and is defined by Rk(t) (tLk), an integer-valued vector process with nk components. Each component of Rk(t),Rj(t), represents the amount of component j ordered over the period [Lk,t] (n¯k1+1jn¯k). In this context, Rk(t) (tLk) should be nonnegative and nondecreasing, which we assume in the paper. Orders are placed at distinct points of time. Hence, we assume the process is right-continuous.

The allocation decision is specified via an m-dimensional, integer-valued process Z(t). Each component of Z(t),Zi(t) (tLK), represents the amount of demand for product i (1im) served over the period [LK,t]. We assume that Z(t) (tLK) is also nonnegative, nondecreasing, and right-continuous.

Both Rk(t) (tLk,1kK) and Z(t) (t0) must be adapted to the filtration generated by the initial states of the system, as well as D(s) (LKst), Rk(s) (Lks<t,1kK), and Z(s) (LKs<t), which means that policies under our consideration are nonanticipating.

For the inventory control to be feasible, at any point of time, the total amounts of demand served cannot exceed the amounts that have arrived. The amounts of components used cannot exceed the amounts that have been received. Because the replenishment of components with the lead time Lk starts at time Lk (1kK), no unit is received and thus no demand can be served before time 0. In our model, these restrictions are formalized by the following assumptions:

Z(t)=0,  t<0,Z(t)D(t),  t0,andAkZ(t)Rk(tLk), 1kK, t0.(1)

Observe that by definition, Rk(tLk) (t0,1kK) are the amounts of components ordered at least one lead time before time t.

For t0, the inventory level of components with the lead time Lk is

Ik(t)Rk(tLk)AkZ(t),k=1,,K,(2)
and the backlog level is
B(t)D(t)Z(t).(3)

By (1), both Ik(t) (1kK) and B(t) (t0) are nonnegative. Also by (1) and our assumption about the replenishment starting times,

Ik(t)=0, Lkt<0, andB(t)=D(t),  t<0.

Let bi be the cost of backlogging one unit of demand of product i (1im) per unit of time. Let hj be the cost of holding one unit of inventory of component j (1jn) per unit of time. We assume that hj (1jn) and bi (1im) are strictly positive. Let

b=(b1,,bm)    and   hk=(hn¯k1+1,,hn¯k), 1kK.

Then at each time t (t0), the system incurs the total inventory cost at the expected rate

C(t)=k=1Khk·E[Ik(t)]+b·E[B(t)].(4)

The problem of inventory control is to develop integer-valued, nonnegative, nondecreasing, right-continuous, and nonanticipating vector processes Rk(t) (tLk,1kK) and Z(t) (tLK), subject to (1)–(3), to minimize the following long-run average expected total inventory cost:

C=limsupT1T0TC(t)dt.(5)

2.3. Additional Variables, Processes, and Relationships

For the needs of our analysis, we introduce additional variables and processes and specify their relationships.

2.3.1. Variables and Processes.

The additional variables and processes, defined in terms of the more “primitive” processes introduced in Sections 2.1 and 2.2, are listed in Table 1 along with their definitions. For the convenience of the reader, Table 1 also includes the definitions of the inventory and backlog processes defined in Section 2.2. Further discussions of these quantities are as follows:

Table

Table 1. Key Variables: Notation and Value

Table 1. Key Variables: Notation and Value

VariablesDefinitions
DemandD(t1,t2),LKt1<t2D(t2)D(t1)
Dk(t),tLK+Lk,1kKD(tLk1)D(tLk)
D¯k(t),t0,1kKD(tLk1)D(tLK)
D¯(t),t0D(t)D(tLK)
d(t),tLK{D(LK),t=LKD(t)D(t),t>LK
Dk,1kK=dDk(t)
D¯k,1kK=dD¯k(t)
D¯=dD¯(t)
D¯k,1kKDk++D1=dD(tLk,t)
ReplenishmentRk(t),tLk, 1kK{Rk(t)Rk(tLk),t0Rk(t),t<0
AllocationZ(t1,t2),LKt1<t2Z(t2)Z(t1)
InventoryIk(t),t0,1kKRk(tLk)AkZ(t)
BacklogB(t),t0D(t)Z(t)
B(t),t0{D(t),t=0B(t)+d(t),t>0
Inventory positionIPk(t),tLk,1kKRk(t)AkD(t)
IPk(t),tLk,1kK{AkD(Lk),t=LkIPk(t)Akd(t),t>Lk
Inventory balanceQk(t),t0,1kK,AkD(t)Rk(tLk)

The first processes we introduce here denote increments of the processes D(t) (tLK),Rk(t) (tLk,1kK), and Z(t) (tLK) over particular time intervals. Here D(t1,t2) denotes demand that arrives during the time interval (t1,t2] (LKt1<t2),Dk(t) are special cases of D(t1,t2) with t1=tLk and t2=tLk1 (tLK+Lk,1kK), and

D¯k(t)=k=kKDk(t),t0.

We also use D¯(t) as a shorthand of D¯1(t) (t0). (Recall that L0=0.) We also introduce some random vectors. Let Dk and D¯k be random vectors that follow the same distributions of Dk(t) and D¯k(t),1kK,t0, respectively. Let D¯ be a random vector that follows the same distribution of D¯(t). We also define

D¯kDk++D1,
which follows the same distribution of D(tLk,t) (tLK+Lk,1kK). By stationarity of D(t), these distributions do not depend on t. Recall that we assumed that the demand process is right continuous. We let d(t) denote the demand that arrives at time t,tLK (if any).

Similarly, Rk(t) (1kK) denotes the amounts of components ordered over the previous lead time, or for t < 0, since the beginning of the replenishment process. Each component of Rk(t),Rj(t) (tLk,n¯k1+1jn¯k), represents the amount of component j that is in transit: ordered from the supplier but not yet arrived. The amounts of demand served over the interval (t1,t2] is denoted by Z(t1,t2) (LKt1<t2).

Next we introduce two additional processes: inventory position IPk(t) and component balance Qk(t) (tLk,1kK). For k=1,,K, entries of IPk(t),IPj(t) (n¯k1+1jn¯k), are the differences between the total amounts of components that have been ordered up to time t (tLk) and the total amounts needed to serve all demands that have arrived by that time. Entries of Qk(t),Qj(t) (n¯k1+1jn¯k), are the differences between the amounts needed to serve demands and the total amounts that have been ordered and received.

Recall that the replenishment and allocation processes (which are the control processes) are assumed to be integer valued and right continuous. Thus, the controls are exercised at discrete time points. It is helpful to distinguish the values of certain processes immediately before these actions are taken. To this end, we let IPk(t) (1kK) denote the inventory positions at time t (tLk) before placing any order at that time, and let B(t) (tLK) denote the backlog levels at time t (tLK) before serving any demand at that time. In Table 1, d(t),IPk(t), and B(t) are defined using the left limits D(t) (t>LK),IPk(t) (t>Lk,1kK), and B(t) (t>LK). These left limits exist because in (2) and (3), D(t) (tLK),Rk(t) (tLk,1kK), and Z(t) (tLK) are nondecreasing and right-continuous. One may also observe that by definition,

IPk(t)=IPk(t)+Rk(t)Rk(t),tLk, 1kK,andB(t)=B(t)(Z(t)Z(t)),tLK.

2.3.2. Relationships.

The key definitions (2) and (3), along with the definitions introduced in Section 2.3.1, allow us to obtain relationships that are useful in our analysis. Using (2) and (3), and the definitions of Rk(t) (tLk,1kK) and Z(t) (tLK) in Table 1, changes of inventory and backlog levels over a lead time Lk can be determined by

Ik(t)=Ik(tLk)+Rk(tLk)AkZ(tLk,t),t0, 1kK,andB(t)=B(tLk)+D(tLk,t)Z(tLk,t),tLK+Lk.(6)

Again using (2) and (3), along with definitions of Rk(t) and IPk(t) (tLk,1kK) in the table,

IPk(t)=Ik(t)+(Rk(t)Rk(tLk))AkB(t)=Ik(t)+Rk(t)AkB(t),  tLk.(7)

The second line corresponds to another definition of the inventory position in the literature: the total amount of the component in the system, including both on-hand inventory and orders in-transit, minus the amount needed to clear all existing backlog at that time.

Yet again using (2) and (3), along with the definition of Qk(t) in the table, and then applying (6) and (7) to replace B(t) and Ik(t),

Qk(t)=AkB(t)Ik(t)=AkD(tLk,t)IPk(tLk),t0, 1kK.(8)

Observe that the negative of an entry of Qk(t),

Qj(t)=Ij(t)Aj·B(t),n¯k1+1jn¯k,
is commonly referred to as the net inventory of component j at time t (t0): there is a shortage (surplus) of component j to clear existing backlogs at time t if Qj(t)>(<)0.

2.3.3. Other Parameters.

Define

c=(c1,,cm)b+k=1K(Ak)hk,(9)
where element ci of c represents the amount of inventory cost that can be removed from the system by serving one unit of demand i (1im).

For convenience, we define additional variables to denote the smallest (nonzero) and largest components of A, b,h, and c in Table 2 below.

3. Stochastic Program

As we outlined in Section 1, the first step of our analysis is to develop a multistage SP that provides a lower bound on the average inventory cost and sets the stage for developing inventory control policies to drive the cost toward that bound. To this end, we first present a relevant SP from the literature and discuss the intuition that underlies its formulation in Section 3.1. In Section 3.2, we transform this SP into an alternative SP that we use for policy development in Section 4.

3.1. Previous Result

For ATO systems formulated in the last section, theorem 1 in Reiman and Wang (2012) proves that

C¯=infα0{b·α+ΦK(α)}+b·E[D¯],(10)
is a lower bound on C, the long-run average cost defined in (5). Here D¯ is defined in Table 1, and ΦK(α) is the minimum objective value of the K + 1 stage stochastic program (SP):
ΦK(α)=infyK0{hK·yK+E[ΦK1(yK,α+DK)]},Φk(yk+1,,yK,x)=infyk0{hk·yk+E[Φk1(yk,,yK,x+Dk)]},k=K1,,1,Φ0(y1,,yK,x)=maxz0{c·z|zx,Akzyk,1kK},(11)
where Dk (1kK) are also defined in Table 1.

We now take the rest of this section to provide some intuition as to why the SP (10)–(11) yields a lower bound on the cost in the ATO inventory control problem. The basic idea is that the SP (10)–(11) is a relaxation of the actual ATO inventory control problem. The SP corresponds to myopically focusing on a single point of time, with no concern for the effect that any replenishment or allocation decision might have on costs at other points of time. Thus, in the presence of random demand, all decisions are put off until the last possible moment, allowing as much information about actual demand as possible to be used for the decisions.

To explain the SP in more detail, using (6) and (9), with k = K when substituting for B(t) and

Z(tLk,t)=Z(tLK,t)Z(tLK,tLk)
when substituting for Ik(t) (1kK), we can write the inventory cost at any time t (t0) as
k=1Khk·Ik(t)+b·B(t)=b·B(tLK)c·Z(tLK,t)+k=1Khk·[Ik(tLk)+Rk(tLk)+AkZ(tLK,tLk)]+b·D(tLK,t).

The cost at t depends only on states and processes over the period [tLK,t]. Comparing (10)–(11) with this expression for the cost, α corresponds to the initial backlog levels B(tLK) and z corresponds to Z(tLK,t), the amounts of demand served in the period [tLK,t]. For components with lead time Lk, Ik(tLk)+Rk(tLk)+AkZ(tLK,tLk) includes the amounts in inventory at time tLk, the amounts that will arrive between tLk and t from the pipeline, and the amounts used in the period [tLK,tLk] (1kK). Corresponding to the sum of these three quantities, yk represents the total amounts of these components that can be used to serve demands in period [tLK,t].

In (10)–(11), α,z, and yk (1kK) are chosen to minimize the inventory cost with no constraint other than the ones that must be satisfied by the aforementioned counterparts of these variables in the ATO system. By (1)–(3), B(t) and Ik(t) (1kK,t0) are nonnegative, so using (6):

Z(tLK,t)B(tLK)+D(tLK,t),
and
AkZ(tLk,t)Ik(tLk)+Rk(tLk)i.e., AkZ(tLK,t)Ik(tLk)+Rk(tLk)+AkZ(tLK,tLk),1kK.

Correspondingly, in (11),

zα+D¯=α+DK++D1 andAkzyk (1kK).

The information constraint in the SP is less obvious, as the sequential/recursive nature of its formulation both encodes and potentially obscures the information available when certain decisions are made. Although it is not needed in the definition of the SP, the information available when decisions are made in the SP can be described via a discrete filtration

FKFK1F0,(12)
where FK={,Ω} and Fk is the σ-field generated by {DK,Dk+1,yK,yk+1} (0k<K). The set of optimal values of yk is Fk-measurable (1kK) and that of z is F0-measurable.

The filtration Fk (0kK) imitates the information available in the associated ATO system and is generated by both Dk and yk, corresponding, respectively, to histories of demand arrivals in periods [tLk,tLk1] and decision making at times tLk (k<kK). In ATO systems, tLk is the last moment of decision making that can affect the value of Ik(tLk)+Rk(tLk)+AkZ(tLK,tLk), so letting yk be adapted to Fk allows its value to be chosen with the maximum amount of information. This adaptedness is not explicitly enforced in the SP but is implicit in the recursive structure of the SP. When Φk (which corresponds to stage K+1k) is solved to obtain yk, the prior decisions yK,,yk+1 are all known, and x=DK++Dk+1 is known as well. Similarly, t is the last moment of decision making that can affect Z(t), so the choice of z is adapted to F0. It is not surprising that, with α,z, and yk (1kK) chosen under the minimum constraints and maximum information, (10) is a lower bound on the expected cost of the ATO system at any given time t and hence a lower bound on its average cost C.

3.2. New Development

The SP in (11) is not directly applicable to our analysis. As one may observe from (10)–(11), and as is shown in the proof of Theorem 2, b·α+ΦK(α) decreases in α, and strictly so in many cases. Therefore, the lower bound C¯ is not directly computable by solving (11) with any fixed α. To reach the infimum in (10), α, and thus yk (1kK) and z often have to approach infinity, so one cannot make use of the optimal values of these decision variables for policy development.

To address this issue, we transform (11) into an alternative SP by replacing yk in (11) with ykAkα (1kK) and z with zα and, following (10), letting α approach infinity. The transformation removes α and the nonnegativity constraints in (11) and leads to

φK=infyKRnK{hK·yK+E[φK1(yK,DK)]},φk(yk+1,,yK,x)=infykRnk{hk·yk+E[φk1(yk,,yK,x+Dk)]}, 1k<K,φ0(y1,,yK,x)=maxzRm{c·z|zx,Akzyk, 1kK}.(13)

For any feasible solution α,yk (1kK), and z in (11), ykAkα (1kK) and zα is a feasible solution to (13), so φKΦK(α) for all α. Therefore, (13) can also be used to set a lower bound on the inventory cost of an ATO system, a result that we will formally present in Theorem 2. Here, we first prove that the optimal solution of (13) is bounded.

Theorem 1

(See Appendix A for Proof). For any given values of yk+1,,yK, and x, if yk*=(yn¯k1+1*,,yn¯k*) is an optimal solution to the SP in (13) at stage k, that is,

hk·yk*+E[φk1(yk*,yk+1,yK,x+Dk)]
attains the value of φk(yk+1,,yK,x) (k=K,,1), then
β¯(||x||1+E[||D¯k||1]+l=k+1K||yl||1)yj*β¯(||x||1+E[||D¯k||1]+1),  n¯k1<jn¯k,(14)
where D¯k (1kK) are random vectors defined in Table 1, and β¯ and β¯ are any constants that satify
β¯na¯2a¯c¯b¯ andβ¯a¯a¯c¯h¯,
with constants on the right-hand side (RHS) of inequalities given in Table 2.

Table

Table 2. Smallest and Largest Components of Relevant Vectors and Matrix

Table 2. Smallest and Largest Components of Relevant Vectors and Matrix

Symbola¯a¯h¯h¯b¯b¯c¯
Definitionmini,j:aij>0{aij}maxi,j{aij}maxj{hj}minj{hj}maxi{bi}mini{bi}maxi{ci}

The formulation in (13) helps us to avoid the aforementioned issue with (10)–(11). By (14), the optimal solutions to the new SP are finite, so they can and will be used as parameters of our inventory policy. Moreover, instead of taking the infimum in (10), we can use the optimal objective value of (13), which is directly computable, to set the same lower bound on the cost objective.

Theorem 2

(See Appendix A for Proof). Let C¯ be the lower bound defined in (10) and φK be the optimal objective value of the SP defined in (13). Then

C¯=φK+b·E[D¯].(15)

For future analysis, we replace z with B=xz in (13) to transform the last stage LP into

φ0(y1,,yK,x)=φB0(y1,,yK,x)c·x,where φB0(y1,,yK,x)=minB{c·B|B0, AkBAkxyk, 1kK}.(16)

In φB0(y1,,yK,x),B represents the amounts of unserved demands and thus is analogous to B(t) (tLK), backlog levels in the ATO system. Let yK* be an optimal solution to φK,yk* be an optimal solution to φk(yk+1*,,yK*,D¯k+1) (1k<K), z* be an optimal solution to φ0(y1*,,yK*,D¯), and B*=D¯z*. Then by Theorem 2:

C¯=k=1Khk·E[yk*]c·E[z*]+b·E[D¯]=k=1Khk·E[yk*]+c·E[B*]k=1K[(Ak)hk]·E[D¯].(17)

Because both components and products are measured in discrete units, (11) and (13) should be discrete optimization problems that can be difficult to solve exactly. For the purpose of setting a lower bound, if suffices to solve (13) without the integrality constraint, which is a continuous relaxation of the discrete problem. However, as will be shown in the next section, we will also use the SP to formulate inventory control policies, and for that purpose, the solutions need to be integer valued and satisfy certain uniqueness and continuity conditions. These issues will be addressed in Section 7.

4. Inventory Policy

Here, we will first describe the general idea that motivates our approach in Section 4.1, followed by developments of our replenishment and allocation policies in Sections 4.2 and 4.3, respectively. We will then make a few important observations in Section 4.4. A simple example that illustrates the application of our inventory policy, involving the N system, is given in Appendix B.

4.1. General Idea

To drive the average cost of the ATO system toward its SP-based lower bound in (13), we formulate inventory policies that mimic the optimal solution of this SP. As is commonly known and easily verifiable from (6)–(7), in an ATO system, the net inventory levels satisfy

Ik(t)AkB(t)=IPk(tLk)AkD(tLk,t)=IPk(tLk)Ak[D(tLK,t)D(tLK,tLk)], 1kK, t0.

The second equality allows us to rewrite the expected cost rate as the following function of inventory positions and backlog levels:

C(t)=k=1Khk·E[Ik(t)]+b·E[B(t)]=k=1Khk·(E[IPk(tLk)]+AkE[D(tLK,tLk)])+c·E[B(t)]E[D(tLK,t)]k=1K(Ak)hk,t0,(18)
where c is defined in (9). Because D¯=dD(tLK,t),E[D¯]=E[D(tLK,t)]. Thus, by a direct comparison of the cost rate in (18) with its lower bound in (17), at any time t (t0),
if E[IPk(tLk)]+AkE[D(tLK,tLk)]=E[yk*],1kK,(19)
  andE[B(t)]=E[B*],(20)
then C(t)=C¯.

Hence, the average inventory cost of an ATO system (C) reaches its lower bound (C¯) if (19)–(20) are both satisfied for all time. Based on this observation, we develop replenishment and allocation policies by using the SP solutions to set targets for inventory positions and backlog levels, keeping actual values “close” to these targets under feasibility constraints.

4.2. Replenishment Policy

4.2.1 Overview.

The RHS of (19) is determined in (13). For k = K, yK* is constant, and for k=K1,,1,yk*, (k=K1,,1) are determined recursively (going backward in k) on each sample path of (DK,,Dk+1) as values of yk that minimize

hkyk+E[φk1(yk,y(k+1)*,,yK*,x+Dk)],(21)
where x denotes the value of DK++Dk+1 on that path.

Our replenishment policy is built on processes Yk(t) (tLk), with their distributions at each point of time mimicking those of yk* (1kK). Figure 2 shows a match of these two quantities in any period [tLK,t] (t0). Let YK(tLK)=yK*, and determine Yk(tLk) (k=K1,1) recursively on each sample path of D(tLK,tLk) to minimize (21) with x=D(tLK,tLk). Because D(tLk,tLk1) and Dk (1kK) have the same distribution,

E[Yk(tLk)]=E[yk*],1kK.(22)

Figure 2. Match Between Processes Yk(t) in the ATO System with SP Solutions yk* (tLk,1kK)

Motivated by (19), our policy uses Yk(tLk) and AkD(tLK,tLk) to set inventory position targets IPk(t) (tLk,1kK) and make ordering decision to move actual inventory positions IPk(tLk) (tLk,1kK) toward these targets.

Except for components with the longest lead time LK, inventory position targets typically change over time. When a target rises above the actual inventory position, it is feasible to bring the latter position to its target immediately by ordering an appropriate amount of the component. When a target falls below the actual position, it is not feasible to close the gap immediately before the target is reduced and/or new demand arrives. Recognizing the latter restriction, our replenishment policy orders a component when and only when its inventory position is below the target, in the exact amount needed to eliminate the deficit.

4.2.2. Specific Policy Procedure.

For components with the longest lead time LK, the inventory position target process starts from time LK and is determined by

IPK(t)=YK,tLK,(23)
where YK is the value of yK that minimizes
hK·yK+E[φK1(yK,DK)].(24)

For components with lead time Lk (k=K1,,1), the target process starts from Lk and that its values are given by

IPk(t)=Yk(t)AkD(t+LkLK,t),tLk,1kK1,(25)
where referring to (21) and the match shown in Figure 2, Yk(t) is the value of yk that minimizes
hk·yk+E[φk1(yk,Yk+1(t+LkLk+1),,YK,D(t+LkLK,t)+Dk)],tLk.(26)

Starting from time Lk, the actual inventory position of a component with lead time Lk is compared with its target. New replenishment is ordered to keep the actual inventory position at

IPk(t)=IPk(t)IPk(t),tLk,1kK,(27)
where recognizing that inventory positions need to be integers, the ceiling function is applied to IPk(t). The “preorder” inventory position IPk(t) (tLk,1kK) is defined in Table 1.

Although IPk(t) and IPk(t) (tLk,1kK) are both continuous-time processes, their values change only at discrete points of time, corresponding to new demand arriving at t, or a demand arrival at one of a particular set of previous times, as follows. For components with lead time LK, as seen in (23), the procedure reduces to a constant base stock policy with YK as base stock levels. For components with lead time LK1,IPK1(t) needs to be updated only when there is a demand arrival at time t+LK1LK or t, which changes the value of D(t+LK1LK,t), so (26) needs to be re-solved to update YK1(t) (tLK1). Similarly, by induction on k in (26), for k<K1,IPk(t) can change only when there is a demand arrival at time (i) t, which changes D(t+LkLK,t), or (ii) t+LkLk (k<k<K) which might change Yk(t+LkLk), or (iii) t+LkLK, which changes both D(t+LkLK,t) and Yk(t+LkLk) (k<k<K). Moreover, (27) implies that only at these times can IPk(t) change: because IPk(t) can only change at these times, and as Table 1 shows, IPk(t) can differ from IPk(t) only when there is a demand arrival at time t (tLk,1kK).

Although it may seem that an exact implementation of the previous idea would require looking back in time at every moment t, to see if there is any demand arrival at times t+LkLk (k<k<K), to decide whether to update IPk(t) and place orders to reach new IPk(t) (tLk,1kK), there is an equivalent simpler and more intuitive implementation, which allows demand arrivals to drive future updates. Specifically, when there is a demand arrival at time t, schedule updates of inventory position targets and corresponding ordering decisions at times t,t+Lk+1Lk,,t+LKLk (1kK1).

Figure 3 illustrates the process. The vertical line represents a particular time t when there is a demand arrival. Each horizontal line corresponds to a lead time. On the line corresponding to Lk, circles mark points of time when (26) needs to be re-solved to update Yk(·) and IPk(·) (1k<K). The expression next to a circle shows the distance in time from time t to the circle. Updates of Yk(·) take place at times t and t+LKLk as demand arrival at time t changes D(t+LkLK,t) in (26) when t=t or t=t+LKLk (1k<K). Moreover, as shown by two parallel dashed lines, updates of YK1(·) at times t and t+LKLK1 change values of YK1(t+LkLK1) in (26) when t=t+LK1Lk and t=t+LKLk, so Yk(·) needs to be updated at the latter two times (1k<K1). In general updates of Yk(·) at times t and t+LKLk trigger updates of Yl(·) at times t+LkLl and t+LKLl, respectively (1l<k).

Figure 3. Inv. Position Target Updates and Ordering Decisions That Follow Demand Arrival at Time t

The complete replenishment procedure is presented in Algorithm 1. The collection of times at which Yk(·),IPk(·) and IPk(·) possibly change is denoted by Γk(1kK). The ceiling function on IPj(t) in step 2(c) ensures that both IPj(t) and Rj(t) are integer-valued (tLkj,1jn). In Steps 2(a) and 2(b), inventory position targets IPk(t) (tLk,1kK) are updated repeatedly over time except for k = K, in which case IPK(t) are constants that are set once at time LK. It is easy to verify that Rj(t) (tLkj,1jn) prescribed in Algorithm 1 satisfy the feasibility requirements defined in Section 2: integer-valued, nonnegative, nondecreasing, right-continuous, and nonanticipating.

It is worth pointing out that in ATO systems with a single product, this replenishment policy specializes to the one prescribed by Rosling (1989). In this special case, the latter policy is exactly optimal because all components are used according to fixed proportions, so one can always keep inventory positions at their targets (after some initial lapse for these positions to reach “coordinated levels”). In systems with identical lead times, our policy specializes to the one formulated in Reiman and Wang (2015), which uses base stock policies for replenishment and is asymptotically optimal in the large lead time regime.

Algorithm 1

(Replenishment Policy Procedure)

Initialization: for k=1,K, let

Γk={Lk},Rk(Lk)=0, andIPk(Lk)=AkD(Lk).

For tLK:

  1. if d(t)>0, then for k=1,,K such that tLk, let

    IPk(t)=IPk(t)Akd(t). andΓk=Γk{t,t+Lk+1Lk,,t+LKLk}.

  2. for k=1,,K, if tΓk, then:

    • (a) let Yk(t) be the value of yk that minimizes (26)

    • (b) as in (25), let

      Ik(t)=Yk(t)AkD(t+LkLK,t).

    • (c) for each component j with lead time Lk, let

      Rj(t)=Rj(t)+(Ij(t)IPj(t))+,
          by ordering (Ij(t)IPj(t))+ units, changing its inventory position to
      IPj(t)=IPj(t)+Rj(t)Rj(t).
      End of Algorithm 1

4.3. Allocation Policy

4.3.1. Overview.

On the RHS of (20), B* is the optimal solution of the LP

minB{cB|B0, AkBAkxyk*,1kK},(28)
which is defined on each sample path of (DK,,D1), with x denoting DK++D1 and yk* determined recursively by minimizing (21) for values of (DK,,Dk+1) (1kK) on the same path. In the corresponding ATO system, D(tLK,t) has the same distribution as DK++D1 and Yk(tLk) has the same distributions as yk* (t0,1kK). Hence, we can mimic B* at time t (t0) by letting B*(t) be the value of B that minimizes (28) with Akxyk* replaced by
Qk(t)AkD(tLK,t)Yk(tLk).(29)

As a result, (20) holds for B*(t), that is,

E[B*(t)]=E[B*].(30)

Although B*(t) (t0) gives the desired backlog levels for the inventory cost to reach its lower bound, it is determined by (see (25) and (29))

Qk(t)=AkD(tLK,t)(IPk(tLk)+AkD(tLK,tLk))=AkD(tLk,t)IPk(tLk),1kK.

Comparing with Qk(t) in Table 1, Qk(t) differs from actual component balances by having inventory position targets IPk(tLk) in place of actual positions IPk(tLk) (t0,1kK). Because our replenishment policy in general does not keep inventory positions at their targets, Qk(t) does not always capture the exact state of component availability in the system. Recognizing this discrepancy, we set the backlog target at B(t) (t0), which, like B*(t), is determined by minimizing (28), but using Qk(t) instead of Qk(t) to replace Akxyk* (1kK). Although (20) may not hold for B(t) (t0) at equality, our analysis shows that the difference is asymptotically negligible.

Actual backlog levels may exceed or fall below their targets. It is generally infeasible to keep all backlog levels at their targets: a below-target backlog level cannot be raised immediately to the target if there is no new demand arrival, and an above-target backlog level cannot be reduced if a required component is not available. Naturally, we prescribe an allocation policy that uses all available components to reduce backlogs that are above their targets and never serves a demand when its backlog level is at or below the target.

Algorithm 2

(Allocation Policy Procedure)

Initialization: let

Z(t)=0 for all t<0(so B(0)=D(0)).

For t0,

 if t = 0 or Qj(t)Qj(t)0 for some j=1,,n, then

  •  1 .let B(t) be the value of x that minimizes:

    {cx|x0,AkxQk(t),1kK}.(31)

  •  2. let

    Z(t)=D(t)B(t),(32)
    where B(t) must be integer-valued and its choice satisfies:
    • (a) for all i=1,,m,

      [Bi(t)Bi(t)]+min1jn{(Ij(t)aji+1)+}=0,(33)
            and
      Bi(t)Bi(t)Bi(t)Bi(t),(34)
            where
      Bi(t)=Bi(t)+di(t),(35)
            and by definition (8),
      Ij(t)=i=1majiBi(t)Qj(t).

    • (b) for all j=1,,n,

      i=1majiBi(t)Qj(t).(36)
      End of Algorithm 2

4.3.2. Specific Policy Procedures.

Algorithm 2 prescribes the specific policy procedure that implements the previous idea on component allocation.

To explain, the allocation decision starts at time 0 when the first batches of replenishment orders arrive. Before that time, backlogs simply accumulate as new demands arrive. After that time, new allocations are triggered by changes of Qj(t) (t0,1jn), the balance of some components. (This occurs as demands and replenishments arrive.) As Table 1 shows, Qk(t) is the difference between the accumulated demand and supply, AkD(t)Rk(tLk) (t0,1kK). The former is a compound Poisson process and the latter is a pure jump process under the replenishment policy executed by Algorithm 1. Thus, allocation actions are taken at discrete points of time, which include using (31) to set backlog targets and serving demand under conditions (32)–(36). Of the latter conditions, (32) and (35) simply repeat definitions of B(t) and B(t) in Table 1. Distinct features of the policy are characterized by (33), (34), and (36).

  • In (33), Bi(t) is specified as an integer, Bi(t) is real number, and the floor function is applied to eliminate the rounding error in their difference. The equation defines the key feature of the policy: a backlog level can exceed its target (within the rounding error) only when the system runs out of a needed component to serve the demand, that is, when

    aji>i=1majiBi(t)Qj(t)=Ij(t) for some j (1jn).

  • The left inequality of (34) requires that the backlog level of a demand (Bi(t)) should be kept at its existing level (Bi(t)) if the latter level does not exceed its target (Bi(t)).

  • The right inequality of (34) encodes that serving a demand can only reduces its backlog level.

  • Referring to (8), (36) is equivalent to

    Ij(t)0,1jn,
    that is, demands cannot be served with a nonexisting component.

In prescribing this procedure, we have omitted specific processes for determining B(t) (t0) to satisfy (33), (34), and (36) because there can be many different ones. For instance, one can select all backlogs that exceed their targets and use available components to reduce them one at a time according to a particular order. Each backlog is reduced to the point where (33) applies, that is, either the backlog reaches the target or there are not enough components to bring it down further. This process obviously also satisfies (34) and (36). We can formulate many other processes by, for instance, changing the order by which backlogs are processed or not following a fixed order at all. Therefore, Algorithm 2 defines not a single policy but a family of eligible policies. Such policies always exist, for example, the one that follows the process we just described.

To show that this family of eligible policies satisfy requirements for feasible policies defined in Section 2: Once B(t) (t0) is determined, the original allocation process Z(t) (t0) is fully specified by (32). By (32) and (35), we can write

Z(t)=Z(t)+B(t)B(t),t0,
and use the right inequality of (34) to show that Z(t) (t0) is nondecreasing, and also nonnegative as Z(t)=0 for t < 0. Because the value of Z(t) (t0) changes only at discrete points of time, the process is right-continuous. Apply the definition of Qk(t) in Table 1, its alternative expression in (8), and use (32) to write
AkZ(t)=AkD(t)AkB(t)=AkD(t)(Qk(t)+Ik(t))=Rk(tLk)Ik(t), 1kK,t0,
from which it is easy to see that Z(t) (t0) satisfies all conditions in (1).

From the first expression of Qk(t) (1kK,t0) in (8) and the constraints in the LP (31),

Ij(t)=i=1majiBi(t)Qj(t)i=1maji(Bi(t)Bi(t)),1jn, t0.

Therefore, for any given product i (1im),

Ij(t)+iiaji[Bi(t)Bi(t)]aji[Bi(t)Bi(t)],1jn, t0.

Apply the inequality to (33) leads to the following important property of our allocation policy:

For any i=1,,m, if Bi(t)Bi(t)1, then

1+a¯a¯ii(Bi(t)Bi(t))+Bi(t)Bi(t),t0.(37)

See Table 2 for definitions of a¯ and a¯.

By this property, our policy does not allow backlog of any product i to exceed its target by more than a rounding error when no backlog is below its target (i.e., Bi(t)Bi(t) for all ii). A similar observation was made in Reiman and Wang (2015) for developing asymptotically optimal policies to manage ATO systems with identical lead times. Likewise, we will use this fact in Section 6.2.2.

4.4. Further Comments

Algorithms 1 and 2 show that our policies can be fully implemented by controlling inventory positions via (27) and choosing backlog levels that satisfy (33), (34), and (36). For brevity, from now on, we will only use the latter variables to characterize our policies, instead of invoking the original replenishment process Rk(t) (tLk,1kK) and allocation process Z(t) (tLK).

The procedures in these tables implicitly assume that there is no ambiguity about Yk(t) (tLk,1kK) and B(t) (t0), which is true if the related SPs for choosing these values all have unique optimal solutions. In Section 7, we will discuss how to perturb these SPs to satisfy the uniqueness condition without compromising asymptotic optimality.

5. Asymptotic Optimality

The rest of the paper will focus on performance evaluation, especially asymptotic optimality, of our policy, and this section provides a critical lead into this analysis. We first set up the asymptotic regime in Section 5.1. We then define the asymptotic optimality criteria in Section 5.2, followed by the development of a key theorem in Section 5.3 (Theorem 3) that specifies sufficient conditions for meeting these criteria.

5.1. Large Lead Time Asymptotic Regime

We introduce a family of systems indexed by L. In the Lth system, Lk(L) is the lead time of components n¯k1+1,,n¯k (1kK). The longest lead time LK(L)=L. We define the large lead time asymptotic regime by letting the longest lead time L.

For convenience, define L0(L)=0. Let

L^k(L)Lk(L)L,0kK.(38)

We impose no assumptions on other lead times except that for all L,

L0(L)<L1(L)<L2(L)<<LK(L), and therefore0<L^1(L)<L^K1(L)<1.

5.1.1. Demand Process.

The Lth system is empty at time –L when the demand process D(L)(t) (tL) starts. This process is the same as D(t) (tLK) in Section 2 except for the starting time. Similar to definitions of D(t1,t2) and d(t) in Table 1, let D(L)(t1,t2) be the increment of D(L)(t) over (t1,t2] (Lt1<t2), with μ and Σ denoting the mean and covariance matrix of D(L)(t,t+1), and d(L)(t) be the instantaneous change of D(L)(t) at t (tL). Define

D^(L)(t1,t2)D(L)(Lt1,Lt2)L(t2t1)μL,1t1<t2,andd^(L)(t)d(L)(Lt)L,t1.(39)

Let Dk(L) be a random vector with the same distribution as D(L)(0,Lk(L)Lk1(L)) (1kK). Then

D^k(L)Dk(L)(Lk(L)Lk1(L))μL
has the same distribution as D^(L)(tL^k(L),tL^k1(L)) (t1,1kK).

5.1.2. Replenishment and Inventory.

In the Lth system, replenishments of components with lead time Lk(L) start at time Lk(L) (1kK). Following the policy description in Section 4.2, the inventory position targets are

IPk(L)(t)=Yk(L)(t)AkD(L)(t+Lk(L)L,t),tLk(L),1kK,
where YK(L)(t) is a constant vector (and thus will be denoted by YK(L)) that minimizes
hKyK+E[φK1(yK,DK(L))],(40)
and Yk(L)(t) (1k<K) minimizes
hkyk+E[φk1(yk,Yk+1(L)(t+Lk(L)Lk+1(L)),,YK(L),x+Dk(L))](40′)
on the sample path of
D(L)(t+Lk(L)Lk(L),t+Lk(L)Lk1(L)),k=K,,k+1,
with x denoting the value of D(L)(t+Lk(L)L,t) on that path.

Let IPk(L)(t) (t0,1kK) be the actual inventory position in the Lth system. Under the aforementioned replenishment policy, for k=1,,K:

IPk(L)(Lk(L))=AkD(L)(Lk(L)),IPk(L)(t)=IPk(L)(t)IPk(L)(t),tLk(L),andIPk(L)(t)=IPk(L)(t)Akd(L)(t),t>Lk(L),
where the operator is applied componentwise. Component balances under the targeted and actual inventory positions are, respectively,
Qk(L)(t)=AkD(L)(tLk(L),t)IPk(L)(tLk(L)),andQk(L)(t)=AkD(L)(tLk(L),t)IPk(L)(tLk(L)),t0,1kK.(41)

For k=1,,K, let

Y^k(L)(t)Yk(L)(Lt)LAkμL,tL^k(L),Ik(L)(t)IPk(L)(Lt)AkLk(L)μL,IPk(L)(t)IPk(L)(Lt)AkLk(L)μL,tL^k(L),Q^k(L)(t)Qk(L)(Lt)L,Q^k(L)(t)Qk(L)(Lt)L,t0.(42)

5.1.3. Allocation and Backlog.

Referring to our allocation policy in Algorithm 2, denote backlog targets B(t) in the Lth system by B(L)(t) (t0). Denote backlog levels B(t) and B(t) by B(L)(t) and B(L)(t) (tL), respectively. Hence, B(L)(t) (t0) is the optimal solution that minimizes

minx{cx|x0,AkxQk(L)(t),1kK}.(43)

Corresponding to B*(t) prescribed by (28)–(29), let B*(L)(t) be the optimal solution to (43) with Qk(L)(t) replaced by Qk(L)(t) (t0,1kK).

Define

B^*(L)(t)B*(L)(Lt)L,B^(L)(t)B(L)(Lt)L,t0,B^(L)(t)B(L)(Lt)L,B^(L)(t)B(L)(Lt)L,t1.(44)

Obviously, B^*(L)(t) and B^(L)(t) (t0) are optimal solutions to (43) with Qk(L)(t) replaced by Q^k(L)(t) and Q^k(L)(t) (1kK,t0), respectively.

5.1.4. Inventory Cost.

In the Lth system, the long-run average expected inventory cost is

C(L)=limsupT1T0TC(L)(t)dt.

Using (18), the expected inventory cost rate can be written as

C(L)(t)=k=1Khk·(E[IPk(L)(tLk(L))]AkE[D(L)(tLk(L),t)])+c·E[B(L)(t)],t0.(45)

Define

C^(L)C(L)L.

Then

C^(L)=limsupT1T0TC^(L)(t)dt,
where the scaled inventory cost rate is defined to be
C^(L)(t)C(L)(Lt)L,t0,
and by applying (39), (42), and (44) to (45), C^(L)(t) can be written as
C^(L)(t)=k=1Khk·(E[IPk(L)(tL^k(L))]AkE[D^(L)(tL^k(L),t)])+c·E[B^(L)(t)],t0.(46)

5.1.5. Summary of Definitions.

For future reference, we summarize the definitions made in this subsection for asymptotic analysis. Some vectors of random processes x(L)(t) are centered and scaled componentwise by

x^(L)(t)=x(L)(Lt)x¯(L)L,
where t varies in a proper range of time and the centering x¯(L) is proportional to L. Similar operations apply to increments of demand processes over some periods (t1,t2] and demand vectors used in the lower bound SP. These definitions are given in Table 3.

Some other processes and variables are scaled componentwise (without any centering) by

x^(L)(t)=x(L)(Lt)L,
and their definitions are summarized in Table 4.

5.2. Asymptotic Optimality Criterion

Applying Theorem 2 to the Lth system, the average inventory cost C(L) has a lower bound C¯(L), determined by the SP (13), using Dk(L) as inputs Dk (1kK). Define

C¯^(L)C¯(L)L.

Let Cmin(L) denote the infimum of the average inventory cost over all feasible policies. Because these values are bounded below by C¯(L), this infimum exists. We show that our policy is asymptotically optimal in the traditional sense that

limLC(L)Cmin(L)Cmin(L)=0,(47)
that is, the percentage difference between the cost and its minimum value converges to zero as the longest lead time becomes large.

Because Cmin(L)C¯(L), we have

C(L)Cmin(L)Cmin(L)LCmin(L){C(L)C¯(L)L}.

Hence, we can prove (47) by showing that

limsupL{LCmin(L)}<,(48)

and,

limLC(L)C¯(L)L=limL{C^(L)C¯^(L)}=0.(49)

To show (48) is true, apply the SP (13) to the Lth system with following changes: let i be a product with ani>0, where component n has the longest lead time L. Keep hn and bi intact while resetting hj = 0 (jn) and bi = 0 (ii). The problem then becomes

minyn{hnyn(anihn+bi)E[min(yn/ani,D¯i(L))]},
where we use D¯i(L) to denote DiK(L), which has the same distribution as Di(L)(tL,t) (t0).

Let φnK(L) be the optimal objective value of the above minimization problem. Obviously, φnK(L)φK(L), where φK(L) is the objective value of (13) specialized to the Lth system. Apply φnK(L) and the new costs to (15) and compare the resulting value (denoted by Cn(L)) with the lower bound and the minimum cost:

Cn(L)φnK(L)+bi·E[D¯i(L)]φK(L)+i=1mbiE[D¯i(L)]=C¯(L)Cmin(L).

Furthermore, simple transformations of φnK(L) shows that

φnK(L)+bi·E[D¯i(L)]=minyn{hnE[(ynaniD¯i(L))+]+bianiE[(aniD¯i(L)yn)+]}
is a Newsvendor model (unlike the standard formulation, here we allow yn to be negative, but it is easy to see that yn<0 is never optimal), so Cn(L) is proportional to the standard deviation of D¯i(L), which is on the order of L, and (48) follows as a consequence.

Hence, to show (47) is satisfied, we only need to prove (49); that is, our policy is asymptotically optimal on the diffusion scale.

5.3. Sufficient Conditions for Asymptotic Optimality

The following theorem shows that (49) holds if inventory positions and backlog levels converge to their respective targets. Recall that these targets were set at levels at which the average inventory cost can attain its SP-based lower bound (see (19) and (20)). Although meeting these targets exactly is not possible in general, the theorem shows that meeting them on the diffusion scale, which we will prove to be feasible in the next section, is sufficient to guarantee asymptotic optimality.

Theorem 3.

In a family of systems indexed by their longest lead time L, if

limsupL{suptL^kj(L)E[|IPj(L)(t)Ij(L)(t)|]}=0, 1jn,(50)
and
limsupL{supt0E[|B^i(L)(t)B^i*(L)(t)|]}=0, 1im,(51)
then (49) holds; that is, our policy is asymptotically optimal on the diffusion scale, and (47) follows as a consequence.

Proof.

Following (17), in the Lth system,

C¯(L)=k=1Khk·(E[yk*(L)]AkE[DK(L)])+c·E[B*(L)],
where yk*(L) (1kK) is obtained from (13) and B*(L) is obtained from (16).

Specializing (22) and (30) in our policy formulation to the Lth system:

E[yk*(L)]=E[Yk(L)(tLk(L))], 1kK andE[B*(L)]=E[B*(L)(t)],t0.

Moreover, DK(L) has the same distribution as D(L)(tL,t) (t0) by definition. Thus,

C¯(L)=k=1Khk·(E[Yk(L)(tLk(L))]AkE[D(L)(tL,t)])+c·E[B*(L)(t)]=k=1Khk·(E[IPk(L)(tLk(L))]AkE[D(L)(tLk(L),t)])+c·E[B*(L)(t)],t0,
where the second equality results from the determination of inventory position targets in (25).

By the definition of C¯^(L) and applying the second equality of the above equation:

C¯^(L)=k=1Khk·(E[IPk(L)(LtLk(L))]AkE[D(L)(LtLk(L),Lt)])+c·E[B*(L)(Lt)]L=k=1Khk·(E[Ik(L)(tL^k(L))]AkE[D^(L)(tL^k(L),t)])+c·E[B^*(L)(t)],t0.

Comparing this with (46):

C^(L)C¯^(L)=limsupT1T0T(C^(L)(t)C^¯(L))dt=limsupT1T0Tk=1Khk·(E[IP^k(L)(tL^k(L))]E[Ik(L)(tL^k(L))])dt+limsupT1T0Tc·(E[B^(L)(t)]E[B^*(L)(t)])dt.(52)

The theorem follows immediately by applying (50) and (51) to (52). □

6. Proof of Sufficient Conditions

Continuing from Theorem 3, we prove in this section that (50)–(51) are satisfied under target stability conditions to be defined later. To put results obtained in this section in perspective, it was shown in Reiman and Wang (2015) that for systems with identical lead times only (51) was needed because asymptotic optimality can be achieved under a base-stock policy that keeps the inventory positions constant. The convergence (51) was shown in theorem 4 in Reiman and Wang (2015), whereas here it is shown in Corollary 2. The proof of (51) in Reiman and Wang (2015) does not carry over to this setting because it assumes the use of a base stock policy for replenishment.

Target Stability Conditions. Under our inventory policy, Yk(t) (tLk,1kK), obtained by solving (26), B*(t) (t0), obtained by solving (28)–(29), and B(t) (t0), obtained by solving (31), have the following properties: there exists some constant κ, depending only on h,b, and A, such that on each sample path of these processes,

  • for all t2>t1Lkj,

    |Yj(t2)Yj(t1)|κk>kj||D(t2(LkLkj),t2)D(t1(LkLkj),t1)||1,1jn,(53)

  • for all t0,

    |Bi(t)Bi*(t)|κj=1n|Qj(t)Qj(t)|,1im,(54)
    and for all t2>t10,
    |Bi*(t2)Bi*(t1)|κj=1n|Qj(t2)Qj(t1)|,1im.(55)

We will develop an SP solution procedure in Section 7 to satisfy (53)–(55). Here in this section, we assume these conditions hold to prove (50) and (51).

Let us first give an informal explanation of the intuition of our proof. Under our replenishment policy, an inventory position can differ from its target only by exceeding it. When this happens, our policy will stop ordering the component, so its inventory position drops at the same rate as its demand arrival rate. The target may also change as new demand arrives. However, Condition (53) ensures that the latter change in the target is “slow” in comparison with demand arrivals, so the excess of inventory position over its target can be eliminated fast enough to satisfy (50). We then use a similar argument to show that under Conditions (54)–(55), (51) cannot be violated by having a backlog level falling below its target. To show that (51) can also not be violated by having a backlog level exceeding its target, we make use of the property of our allocation policy given in (37); that is, no backlog level will exceed its target when no other backlog level is below its target.

To reduce redundancy and improve generality, in Section 6.1, we define a general problem, referred to as the stochastic tracking model, based on common features of (50) and (51). We develop Theorem 4, which applies to the general model and contains (50) and (51) as special cases.

6.1. Stochastic Tracking Model

Consider a family of systems indexed by L > 0, where the Lth system is associated with the following parameters and processes:

{D(L)(t),tL; A; sl(L) (lK); t0(L); T(L)(t),tt0; W(L)(t),tt0; W0(L)}.(56)

  • The process D(L)(t) (tL) is the same compound Poisson demand process defined in Section 5.1.1 for the Lth system, with the arrival rate λ¯ and order sizes S apply to all systems. For the results of this section, it is important to recall that components of S, Si (1im), are assumed to have a finite moment of order 6. As in Section 5.1.1, the increment of D(L)(t) over interval (t1,t2] is denoted by D(L)(t1,t2) (Lt1<t2) and the jump of D(L)(t) at time t is denoted by d(L)(t) (tL).

  • The vector A is an m-dimensional vector of nonnegative integers. The value of the vector is the same for all systems and at least one of its elements is strictly positive.

  • Each system is associated with a set of constants sl(L) (lK). Values of sl(L) (lK) differ between systems, but the index set K, which is finite, remains the same for all systems. In the Lth system,

    0sl(L)L,(lK).

  • The process T(L)(t) (tt0(L)), which we refer to as the target process, is a pure jump process that starts at time t0(L), where in the Lth system,

    L+sl(L)t0(L)0, and thust0(L)s(L)L, for all lK.

  • The process W(L)(t) (tt0(L)), which we refer to as the tracking process, is another pure jump process that also starts at time t0(L) from an initial level W0(L). The process is defined by

    W(L)(t0(L))=W0(L),W(L)(t)=W(L)(t)T(L)(t)=T(L)(t)+(W(L)(t)T(L)(t))+, tt0(L),W(L)(t)=W(L)(t)A·d(L)(t),t>t0(L).(57)

For convenience, we denote the initial difference between the target and tracking processes by

G0(L)=W(L)(t0(L))T(L)(t0(L))=(W0(L)T(L)(t0(L)))+.

Observe that the tracking process can instantly catch the target that rises higher than its level. When the target is lower, the gap can be closed after a sufficient amount of demand has arrived.

Let D^(L)(t1,t2) (1t1<t2) and d^(L)(t) (t1) be defined the same as in (39). Let

s^l(L)sl(L)L (lK) andt^0(L)t0(L)L.

Following the conditions imposed on sl(L) and t0(L) in their definitions,

0s^l(L)<1 and1+s^l(L)t^0(L)<0,lK.

Let

T^(L)(t)T(L)(Lt)LandW^(L)(t)W(L)(Lt)L,tt^0(L),withW^0(L)W0(L)LandG^0(L)G0(L)L=(W^0(L)T^(L)(t^0(L)))+.(58)

Finally, the definition of the model also requires the following asymptotic Lipschitz continuity condition on the target processes in this family of systems:

Asymptotic Lipschitz Condition. There exists some constant κ that applies to all systems, such that for all t0(L)t1<t2,

|T(L)(t2)T(L)(t1)|κlK||D(L)(t2sl(L),t2)D(L)(t1sl(L),t1)||1+E(L)(t1)+E(L)(t2),(59)
where E(L)(t) (tt0(L)) satisfies the following condition: let
E^(L)(t)E(L)(Lt)L,  tt^0(L).

Then

limLE[suptt^0(L)|E^(L)(t)|]=0.(60)

The main conclusion we draw from this model is in Theorem 4, which shows that as L increases, the tracking process converges to the target process on the diffusion scale.

Theorem 4.

Assume that Si (1im) has a finite moment of order 6. If

limLE[G^0(L)]=0,(61)
then
limLE[suptt^0(L){W^(L)(t)T^(L)(t)}]=0.(62)

Before proving the theorem, we provide some context and intuition for the result. The convergence in (62) is, in essence, an example of “state-space collapse,” a phenomenon that plays a critical role in the heavy traffic analysis of queueing systems and stochastic processing networks (Reiman 1984, Harrison and van Miegham 1997, Bramson 1998, Bell and Williams 2001, Atar et al. 2019). As noted previously, the tracking process W^(L) is able to instantly match the upward jumps of the target process but not the downward jumps. Under the scaling that we introduced, the family of processes D^(L) satisfies a functional central limit theorem (FCLT). This implies that D^(L) has “almost continuous” paths for large L. The assumed asymptotic Lipschitz continuity of T^(L) implies that it has almost continuous paths as well. When W^(L)(t)>T^(L)(t), it is following total demand downward. This is uncentered demand, so that W^(L) is decreasing at a “rate” that is O(L) when W^(L)(t)>T^(L)(t). Thus, W^(L) never gets “far away” from T^(L), and the two-dimensional processes (T^(L)(t),W^(L)(t)) “collapse” into a one-dimensional process with T^(L)(t)=W^(L)(t) in the limit. The proof of Theorem 4 makes this intuitive description rigorous.

As noted previously, D^(L) satisfies an FCLT. Interestingly, we never actually invoke this fact in our proofs. A key reason is that it would not be enough to obtain the result that we need. FCLTs involve convergence over a finite time interval. To prove asymptotic optimality under the long run average cost criterion that we use, we need uniform convergence over an infinite time interval, which does not follow from the FCLT.

The proof of Theorem 4 is built on the following four lemmas. The first two are restatements of two lemmas in Reiman and Wang (2015), and the next two are new. In all lemmas, order sizes Si are assumed to have a finite moment of order 2+δ (δ>0), except for Lemma 3, which requires a stronger condition of having a finite moment of order 6.

Lemma 1

(Lemma 2 in Reiman and Wang 2015). For all i=1,,m,

E[sup0τ1d^i(L)(τ)]3λ¯1/(2+δ)(1+ηi)Lδ/(2(2+δ)),(63)
where λ¯ is the demand arrival rate and ηiE[Si2+δ] (δ>0).

Lemma 2

(Lemma 3 in Reiman and Wang 2015). For all i=1,,m,

E[sup0τL1/4|D^i(L)(0,τ)|](1+σii2)L1/4.(64)

This is where σii is the variance of Di(0,1).

Let g be any strictly positive constant. Then for all i=1,,m,

E[supL1/4τ1(|D^i(L)(0,τ)|Lτg)+]σii2gL1/4.(65)

Lemma 3

(See Appendix A for Proof). Assume that Si has a finite moment of order 6 (1im). Let ν be any strictly positive constant. Then for all i=1,,m,

limLE[supt0(|D^i(L)(0,t)|Ltν)+]=0.(66)

Lemma 4

(See Appendix A for Proof). Let ν be any strictly positive constant. Then for all i=1,,m,

limLE[τ=0sup0t<1(d^i(L)(t)Lντ)+]=0.(67)

The theorem is proved here by showing that there is uniform upper bound on the expected value at the left-hand side (LHS) on (62) and the bound converges to zero as L increases.

Proof of Theorem 4.

We prove (62) in the theorem by bounding (W^(L)(t)T^(L)(t))+ and prove the bound converges uniformly to zero for all tt^0(L). By definition,

W^(L)(t)T^(L)(t),tt^0(L),
so to bound (W^(L)(t)T^(L)(t))+, we only need to consider the case where W^(L)(t)>T^(L)(t), and for the latter case, only need to consider changes of W^(L)(t)T^(L)(t) since the last moment before t when W^(L)(·) jumps from W^(L)(τ)=T^(L)(τ) to W^(L)(τ)>T^(L)(τ). That moment is defined by
t˜(L)=supt^0(L)τt{τ:W^(L)(τ)=T^(L)(τ)},
or if the set on the RHS is empty, let t˜(L)=t^0(L). Observe that, although not explicit in its notation, t˜(L) depends on t.

Observe that

|W^(L)(t)T^(L)(t)|=(W^(L)(t)T^(L)(t))1{t˜(L)=t^0(L)}+(W^(L)(t)T^(L)(t))1{t˜(L)>t^0(L)},(68)
so the proof of the theorem is reduced to proving
limLE[suptt^0(L){(W^(L)(t)T^(L)(t))1{t˜(L)=t^0(L)}}]=0,(69)
and  limLE[suptt^0(L){(W^(L)(t)T^(L)(t))1{t˜(L)>t^0(L)}}]=0.(70)

To prove (69), when t˜(L)=t^0(L),W^(L)(τ)>T^(L)(τ) for all τ[t^0(L),t], so by (57),

W^(L)(t)W^(L)(t^0(L))=A·D(L)(Lt^0(L),Lt)L=A·(D^(L)(t^0(L),t)+Lμ(tt^0(L))).

By applying the previous expression and Condition (59), for any time t (tt^0(L)),

W^(L)(t)T^(L)(t)=(W^(L)(t)W^(L)(t^0(L)))+G^0(L)(T^(L)(t)T^(L)(t^0(L)))A·(D^(L)(t^0(L),t)+Lμ(tt^0(L)))+G^0(L)+κlK||D^(L)(ts^l(L),t)D^(L)(t^0(L)s^l(L),t^0(L))||1+|E^(L)(t)|+|E^(L)(t^0(L))|.

Therefore, under Condition (61), (69) holds if

limLE[suptt^0(L){A·[D^(L)(t^0(L),t)+Lμ(tt^0(L))]+κlK||D^(L)(ts^l(L),t)D^(L)(t^0(L)s^l(L),t^0(L))||1}]=0,(71)
which we prove next.

Let

ζ=A·μm(||A||+2κ|K|)>0   and   κ˜=||A||+κ|K|>0.

Then

A·[D^(L)(t^0(L),t)+Lμ(tt^0(L))]+κlK||D^(L)(ts^l(L),t)D^(L)(t^0(L)s^l(L),t^0(L))||1AD^(L)(t^0(L),t)1LA·μ(tt^0(L))+κlK(||D^(L)(t^0(L),t)||1+||D^(L)(t^0(L)s^l(L),ts^l(L))||1)κ˜i=1m(|D^i(L)(t^0(L),t)|Lζ(tt^0(L)))++κlKi=1m(|D^i(L)(t^0(L)s^l(L),ts^l(L))|Lζ(tt^0(L)))+.(72)

Because D(L)(t) (tL) is a stationary process,

|D^i(L)(t^0(L),t)|=d|D^i(L)(t^0(L)s^l(L),ts^l(L))|=d|D^i(L)(0,tt^0(L))|, lK, 1im.(73)

Because t^0(L)[1,0], for all i=1,,m,

limLE[suptt^0(L)(|D^i(L)(0,tt^0(L))|Lζ(tt^0(L)))+]limLE[supttsup1t0(|D^i(L)(0,tt)|Lζ(tt))+]=limLE[supt0(|D^i(L)(0,t)|Lζt)+]=0       (Lemma 3),(74)
and (71) follows directly from (72)–(74).

To prove (70), by the definition of t˜(L), in cases where t˜(L)>t^0(L),

W^(L)(t˜(L))=T^(L)(t˜(L)),
and thus
W^(L)(t)T^(L)(t)=W^(L)(t)T^(L)(t)[W^(L)(t˜(L))T^(L)(t˜(L))]=[W^(L)(t)W^(L)(t˜(L))]+[W^(L)(t˜(L))W^(L)(t˜(L))] +[T^(L)(t˜(L))T^(L)(t˜(L))]+[T^(L)(t˜(L))T^(L)(t)].(75)

Because W^(L)(τ)>T^(L)(τ) for all τ(t˜(L),t], by (57),

W^(L)(t)W^(L)(t˜(L))=A·(D^(L)(t˜(L),t)+Lμ(tt˜(L))).Ai=1m|D^i(L)(t˜(L),t)|L(tt˜(L))A·μ,(76)
and
W^(L)(t˜(L))W^(L)(t˜(L))=A·d^(L)(t˜(L))0.(77)

For the last two items in (75), by (59),

|T^(L)(t˜(L))T^(L)(t˜(L))|κlK(||d^(L)(t˜(L)s^l(L))||1+||d^(L)(t˜(L))||1)+E^(L)(t˜(L))+E^(L)(t˜(L))=κi=1mlK(|d^i(L)(t˜(L)s^l(L))|+|d^i(L)(t˜(L))|)+E^(L)(t˜(L))+E^(L)(t˜(L)),(78)
and
|T^(L)(t˜(L))T^(L)(t)|κlK||D^(L)(ts^l(L),t)D^(L)(t˜(L)s^l(L),t˜(L))||1+E^(L)(t˜(L))+E^(L)(t)=κlK||D^(L)(t˜(L),t)D^(L)(t˜(L)s^l(L),ts^l(L))||1+E^(L)(t˜(L))+E^(L)(t)κi=1mlK(|D^i(L)(t˜(L),t)|+|D^i(L)(t˜(L)s^l(L),ts^l(L))|)+E^(L)(t˜(L))+E^(L)(t).(79)

Let

ν=A·μm(||A||+4κ|K|).

By applying (76), (77), (78), and (79) to bound each item in the last expression of (75) and replacing A·μ with m(||A||+4κ|K|)ν, we can prove that (70) holds under Condition (61) by showing that for all i=1,,m and lK,

limLE[supt^0(L)tt<(|D^i(L)(t,t)|L(tt)ν)+]=0,(80)
limLE[supt^0(L)tt<(|D^i(L)(ts^l(L),ts^l(L))|L(tt)ν)+]=0,(81)
limLE[supt^0(L)tt<(d^i(L)(ts^l(L))L(tt)ν)+]=0,(82)
and               limLE[supt^0(L)<tt<(d^i(L)(t)L(tt)ν)+]=0.(83)

For each given i (1im) and l (lK),

D^i(L)(t,t)=dD^i(L)(ts^l(L),ts^l(L))=dD^i(L)(0,tt),t^0(L)tt,d^i(L)(ts^l(L))=dd^i(L)(t),tt^0(L).

(Recall that 1+s^l(L)t^0(L), so ts^l(L)1 in the previous expression). Therefore, (80) and (81) follow from a similar argument that proves (74): by the use of Lemma 3,

limLE[supt^0(L)tt<(|D^i(L)(t,t)|L(tt)ν)+]=limLE[supt0(|D^i(L)(0,t)|Ltν)+]=0,
and
limLE[supt^0(L)tt<(|D^i(L)(ts^l(L),ts^l(L))|L(tt)ν)+]=limLE[supt0(|D^i(L)(0,t)|Ltν)+]=0.

To prove (82), because 1+s^l(L)t^0(L)tt and the demand process is stationary,

E[supt^0(L)tt<(d^i(L)(ts^l(L))L(tt)ν)+]E[sup1tt<(d^i(L)(t)L(tt)ν)+]E[supt0(τ=0t(d^i(L)(t)Lτν)+1(tτ1ttτ)+sup1t0d^i(L)(t))]E[τ=0sup0t1(d^i(L)(t)Lτν)+]+E[sup1t0d^i(L)(t)],
and (82) follows from Lemmas 1 and 4. We then use the same argument to prove (83), and thus complete the proof of (70). □

6.2. Convergence to Targets

We again consider a family of ATO systems indexed by L, with D(L)(t) (tL) as the demand process in the Lth system. For each component and for each product, we specify other parameters in (56) to define an instance of the stochastic tracking model and prove (50) and (51) as corollaries of Theorem 4. In fact, the theorem shows convergence of E[sup(·)] over an infinite time horizon, which is a stronger result than what is needed, which is the convergence of supE[(·)].

The proofs use the following lemma.

Lemma 5

(See Appendix A for Proof). Let Y^j(L)(L^kj(L)) be defined in (42) with t=L^kj(L) (1jn) and ν be any strictly positive constant. Then

limLE[(|Y^j(L)(L^kj(L))|Lν)+]=0,   1jn.(84)

6.2.1. Proof of Condition (50).

For each component j (1jn), define

A=Aj,K={kj+1,,K},sl(L)=Ll(L)Lkj(L) (lK),t0(L)=Lkj(L),T(L)(t)=IPj(L)(t),  tt0(L),W(L)(t)=IPj(L)(t),   tt0(L), andW0(L)=Aj·D(L)(L,Lkj(L)).(85)

To verify this is an instance of the stochastic tracking model, by our replenishment policy in Algorithm 1, IPj(L)(t) (t0) is a pure jump process. Apply (25) to the Lth system,

IPj(L)(t)=Yj(L)(t)Aj·D(L)(t+Lkj(L)L,t), tLkj(L).

Thus, under (53), the asymptotic Lipschitz condition (59)–(60) is satisfied with E(L)(t)=1.

By the definition of IPj(t) in Table 1 and referral to (27), in the Lth system,

IPj(L)(t)=IPj(L)(t)IPj(L)(t),tLkj(L),andIPj(L)(t)=IPj(L)(t)Aj·d(L)(t),t>Lkj(L),
which fits the definition of the tracking process W(L)(t) (tt0(L)). The initial value W0(L) is the inventory position of component j before the placement of the first order at time Lkj(L).

Corollary 1.

For all j=1,,n,

limLE[suptL^kj(L)|IPj(L)(t)Ij(L)(t)|]=limLE[suptL^kj(L)|IPj(L)(Lt)IPj(L)(Lt)L|]=0.(86)

Proof.

The first equality follows from definitions in (42) because the fractional value of IPj(L)(Lt) can be ignored when L. Theorem 4 shows that the second equality holds if

limLE[G^0(L)]limL(W0(L)T(L)(t0(L)))+L=0,
where by (85), for given j (1jn),
G^0(L)=(Aj·D(L)(L,Lkj(L))IPj(L)(Lkj(L))L)+.

Applying (25) to the Lth system,

IPj(L)(Lkj(L))=Yj(L)(Lkj(L))Aj·D(L)(L,Lkj(L)).

Therefore, by Lemma 5 with ν=Aj·μ,

limLG^0(L)=limLE[(Yj(L)(Lkj(L)))+L]limLE[(|Y^j(L)(L^kj(L))|LAj·μ)+]=0. □

6.2.2. Proof of Condition (51).

It is helpful to first review the processes that will be involved in the analysis. In the Lth system and for product i (1im), Bi(L)(t) (t0) is the backlog target and Bi*(L)(t) (t0) is the ideal backlog level for reaching our SP-based lower bound. Both are determined by the LP in (43), using actual inventory positions and inventory position targets as their respective inputs. The backlog level under our allocation policy is Bi(L)(t) (t0). To help with the analysis, we will define below an auxiliary process B¯i(L)(t) (t0), which mimics Bi(L)(t) (t0), except that it is not allowed to rise above the target Bi(L)(t) (t0).

For each product i (1im), we construct an instance of the stochastic tracking model by letting

A=ei,K={1,,K},sl(L)=Ll(L) (lK),t0(L)=0,T(L)(t)=Bi(L)(t),   t0,W(L)(t)=B¯i(L)(t),   t0, andW0(L)=Di(L)(L,0),(87)
where B¯i(L)(t) (t0) is defined by
B¯i(L)(0)=W0(L)=Di(L)(L,0),B¯i(L)(t)=B¯i(L)(t)Bi(L)(t),t0,andB¯i(L)(t)=B¯i(L)(t)+Ad(L)=B¯i(L)(t)+di(L)(t),t>0.

Here, we will show that Bi(L)(t) (t0) is a target process, which, following the previous definition, also implies that B¯i(L)(t) (t0) is a tracking process.

When defining our allocation policy in Section 4.3.2, we have shown that Bi(L)(t) (t0) is a pure jump process. To show that Bi(L)(t) (t0) is asymptotically Lipschitz continuous, let

E(L)(t)=|Bi*(L)(t)Bi(L)(t)|,t0.(88)

Then

|Bi(L)(t1)Bi(L)(t2)||Bi*(L)(t1)Bi*(L)(t2)|+E(L)(t1)+E(L)(t2),
which satisfies conditions (59)–(60) because
  1. By applying (29) to (55), there exists some constant κ such that

    |Bi*(L)(t1)Bi*(L)(t2)|κj=1n (|AjD(L)(t2L,t2)AjD(L)(t1L,t1)|+|Yj(L)(t2Lkj(L))Yj(L)(t1Lkj(L))|),

    where under (53), there also exists some constant κ such that

     |Yj(L)(t2Lkj(L))Yj(L)(t1Lkj(L))|κk>kj||D(L)(t2Lk(L),t2Lkj(L))D(L)(t1Lk(L),t1Lkj(L))||1κk>kj (||D(L)(t2Lk(L),t2)D(L)(t1Lk(L),t1)||1+||D(L)(t2Lkj(L),t2)D(L)(t1Lkj(L),t1)||1).

  2. By (54), there exists some constant κ such that

    |E(L)(t)|κj=1n|Qj(L)(t)Qj(L)(t)|=κj=1n|IPj(L)(tLkj(L))IPj(L)(tLkj(L))|,t0.

    Thus, (60) follows directly from Corollary 1.

Having shown that (Bi(L)(t),B¯i(L)(t)) (t0) is an instance of the target and tracking processes, we now can prove (51) as the following corollary to Theorem 4.

Corollary 2.

For i=1,,m, let

B^¯i(L)(t)=B¯i(L)(Lt)L.

Then,

limLE[supt0|B^i(L)(t)B^¯i(L)(t)|]=0,(89)
which implies Condition (51).

Proof.

By Theorem 4, (89) holds if

limLE[|B^i(L)(0)B^¯i(L)(0)|]=0.(90)

To prove this initial condition, observe that

Bi(L)(0)B¯i(L)(0)=Bi(L)(0)Bi(L)(0)Bi(L)(0)=(Bi(L)(0)Bi(L)(0))+=(Bi(L)(0)Di(L)(L,0))+.

Because Bi(L)(0) minimizes (31) with Q(t)=Q(L)(0), there exists some constant κ, which depends only on matrix A, such that

Bi(L)(0)κj=1n[Qj(L)(0)]+=κj=1n[Aj·D(L)(Lkj(L),0)IPj(L)(Lkj(L))]+.

Because IPj(L)(Lkj(L))IPj(L)(Lkj(L)) (1jn) under our replenishment policy (see (27)),

Bi(L)(0)Di(L)(L,0)κj=1n[Aj·D(L)(Lkj(L),0)IPj(L)(Lkj(L))]+Di(L)(L,0)=κj=1n[Aj·D(L)(L,0)Yj(L)(Lkj(L))]+Di(L)(L,0).

Let ν=μi/(κn(ma¯+1)+1). By its definition, B¯i(L)(0)=Bi(L)(0)Di(L)(L,0). Therefore,

|B^i(L)(0)B^¯i(L)(0)|1L(κj=1n[Aj·D(L)(L,0)Yj(L)(Lkj(L))]+Di(L)(L,0))+(κj=1nAj·|D^(L)(1,0)|+κj=1n|Y^j(L)(L^kj)|LμiD^i(L)(1,0))+nκa¯i=1m(|D^i(1,0)|Lν)++κj=1n(|Y^j(L)(L^kj)|Lν)++(D^i(L)(1,0)Lν)+.

Because D(L)(t) (tL) is stationary, Lemmas 3 and 5 imply (90), which proves (89).

To show that (89) implies (51),

|B^i(L)(t)B^i*(L)(t)||B^i(L)(t)B^i(L)(t)|+|B^i(L)(t)B^i*(L)(t)|.

By (88), the last term is simply E^(L)(t) that satisfies (60); thus, we only need to prove

limLE[supt0|B^i(L)(t)B^i(L)(t)|]=0.(91)

As is shown in (34), under our allocation policy,

Bi(L)(t)Bi(L)(t)Bi(L)(t)=B¯i(L)(t),t0,
and thus
(B^i(L)(t)B^i(L)(t))+(B^i(L)(t)B^¯i(L)(t))+=|B^i(L)(t)B^¯i(L)(t)|,t0.

Moreover, because Property (37) applies when Bi(L)(t)Bi(L)(t)1, in all cases,

B^i(L)(t)B^i(L)(t)1L+a¯a¯ii(B^i(L)(t)B^i(L)(t))+1L+a¯a¯ii|B^i(L)(t)B^¯i(L)(t)|,t0.

Combine the above two inequalities,

|B^i(L)(t)B^i(L)(t)|1L+a¯a¯i=1m|B^i(L)(t)B^¯i(L)(t)|,t0,
so (91) follows immediately from (89). □

7. Stability of SP Optimal Solution

In this section, we finalize our analysis by showing that with proper treatments of the SP (13), Conditions (53), (54), and (55) can be satisfied. To this end, we need to address two issues: uniqueness of the optimal solutions and values of Lipschitz constants.

Recall that Bi(t) and Bi*(t) (t0) are optimal solutions to the same LP (28) with different RHS coefficients in constraints. Hence, by Hoffman’s lemma, for each t (t0), there exist Bi(t) and Bi*(t) that satisfy (54), and for each t1 and t2 (t2>t10), there exist Bi*(t1) and Bi*(t2) that satisfy (55). Nevertheless, the lemma does not exclude the possibility that if the optimal solution of (28) is not unique, then to satisfy (55) at the same t1, we may need different Bi*(t1) for different t2. In this case, a well-defined process Bi*(t) (t0) that satisfies (55) for all t1 and t2 (0t1<t2) is not guaranteed. To avoid this situation, we use perturbation to keep the optimal solution of (28) unique. As a result, both Bi(t) and Bi*(t) (t0) are uniquely defined processes that satisfy (54) and (55).

It takes significantly more effort to address (53). Because the supports of Dk (1kK) are unbounded, φk(yk+1,,yK,x) in (13) are infinite-dimensional problems, so their optimal solutions may not satisfy the continuity condition specified by (53). We develop finite-dimensional LPs to approximate the latter problem and prove that we can always keep the approximation error negligible by keeping the dimension of the LP sufficiently high. We also use perturbation to maintain uniqueness of the optimal solution. Both the approximation and perturbation (which also addresses uniqueness of the optimal solution to (28)) are developed in Section 7.1.

In the asymptotic analysis, when lead times increase, probabilities of having larger sample values of Dk(t) (1kK) increase, so the dimension of the approximating LP needs to increase to keep the approximation sufficiently accurate. To sustain (53), we need to rule out the possibility that the Lipschitz constant κ has to grow unboundedly with the problem dimension. In Section 7.2, we show that κ can be kept at a finite value regardless how large the dimension of the LP becomes.

7.1. Approximation and Perturbation

We develop finite-dimensional approximations to SP (13) by taking following steps: let M be a m-dimensional vector with all entries equal to an integer M > 0. Denote DkM by DMk (1kK). Replace Dk in (13) with DMk in φk(yk+1,,yK,x) (1kK) to define

φMK=minyKRnK{hK·yK+E[φMK1(yK,DMK)]},φMk(yk+1,,yK,x)=minykRnk{hk·yk+E[φMk1(yk,,yK,x+DMk)]}, 1k<K,φM0(y1,,yK,x)=φ0(y1,,yK,x)=maxzRm{c·z|zx,Akzyk,1kK}.(92)

Because Dk are integers, for given M, DMk have a finite support (1kK). Hence, for each k (1kK), φMk(yk+1,,yK,x) is a finite-dimension problem, which can be equivalently formulated as an LP. The LP formulation is thoroughly elaborated on in section 3.1.3 of Shapiro et al. (2009). Appendix C describes the detailed steps of specializing this standard process to (92), which leads to

φMk(yk+1,,yK,x)=minyk,,y1,z{hk·yk+k=1k1ω¯ΩkkP(ω¯)hk·yk(ω¯)ω¯Ωk0P(ω¯)c·z(ω¯)},(93)
subject to
z(ω¯)x+D¯Mk(ω¯),   ω¯Ωk0,(94)
Akz(ω¯)yk(ω¯)0,ω¯Ωk0, ω¯Ωkk, ω¯ω¯, 1k<k,(95)
Akz(ω¯)yk0,ω¯Ωk0,(96)
Akz(ω¯)yk,ω¯Ωk0, k<kK.(97)

Here Ωkk is the set of strings that encode sample paths (DMk+1,,DMk),0k<kK. For each sample path ω¯Ωk0,

D¯Mk(ω¯)=DMk(ω¯)++DM1(ω¯),1kK.

The probability attached to sample path ω¯ is denoted by P(ω¯). For ω¯Ωkk and ω¯Ωk0 (0<k<k,1<kK), we write ω¯ω¯ if the sample path (DMk+1,,DMk) encoded by ω¯ is on the same sample path (DM1,,DMk) encoded by ω¯.

We perturb coefficients in the objective function (93) to keep the optimal solution of the LP unique. The approach is standard, so we leave the details to Appendix C. As a general description, because Ak and DMk (1kK) are integer-valued, the optimal solution must be rational numbers when k = K, and by induction, so are the optimal solutions when k=K1,,1. By adding tiny different irrational values, we replace c,hk, and P(ω¯) in (93) with their perturbed values, which are denoted, respectively, by c˜,h˜k (1kK), and P˜(ω¯) (ω¯Ωkl,0l<kK). The use of the perturbed coefficients removes the possibility that two different rational solutions can yield the same objective value, and thus guarantees the uniqueness of the optimal solution.

In our following discussion, we will refer to φMk(·) as φ˜Mk(·) (1kK) if they correspond to the stage k problem of (92), or equivalently, (93)–(97), with perturbed coefficient values. At each stage, the perturbation does not change with inputs yk+1,,yK (1kK) and x. In other words, the same perturbed coefficients apply to all instances, including cases when the problem is solved repeatedly over time with different inputs to execute our inventory policies.

For this truncated and perturbed SP to be an effective proxy of the SP in (13), its optimal objective value, φ˜MK, must stay close to that of the original problem. To this end, we define Δ as the range of perturbation, that is,

||c˜c||1Δ,||h˜khk||1Δ, and|P˜(ω¯)P(ω¯)|<Δ,ω¯Ωkl, 0l<kK.(98)

The following theorem shows the convergence of the two optimal objective values under proper choices of M and Δ.

Theorem 5

(See Appendix A for Proof). For any constant ϵ, there exists M0>0 such that

φKφMK<φK+ϵ for allM>M0.(99)

There also exists Δ>0, such that for all c˜,h˜k (1kK), and P˜(ω¯) (ω¯Ωkl,0l<kK) in the range defined by (98),

|φ˜MKφMK|ϵ.(100)

In Appendix C, we show that for any Δ>0, it is easy to find perturbed coefficients that guarantee the uniqueness of the optimal solution while also fitting into the range defined in (98). Hence, the theorem indicates that the lower bound on the average inventory cost,

C¯=φK+b·E[D¯],
can always be approximated by φ˜MK+b·E[D¯] with negligible error.

For inventory control, we incorporate the previous approximation into our inventory policy to specify a unique trajectory of targets on each sample path. In the replenishment policy defined in Algorithm 1, instead of (26), we set inventory position targets at Step 2(a) by solving the stage k problem of (92) (or equivalently, the LP in (93)–(97)),

φ˜Mk(yk+1,,yK,x)=minykRnk{h˜k·yk+E[φ˜Mk1(yk,yk+1,,yK,x+DMk)]},
using as inputs
yk=Yk(t+LkLk) (k<kK) andx=D(t+LkLK,t).(101)

Observe a subtle difference from (92): here only demands of future scenarios are truncated to DMk, which keeps the dimension of the problem finite. Demands that have already arrived by time t, D(t+LkLK,t), enter the SP as inputs without truncation, allowing their amounts to be fully accounted for in the determination of desirable inventory positions.

In the allocation policy implemented by Algorithm 2, (31) is equivalent to φM0(·) in (92) for all M, and we solve the LP with c substituted by its perturbed values of c˜. Similarly, as the input we use

x=D(tLK,t),
that is, the LP is solved without truncating realized demands.

To evaluate the performance of the targets set by the above process, we consider how their values and resulting inventory costs can be represented by solutions and objective values of the approximating SPs. Let ypk (1kK) denote the optimal solution to stage k (1kK) and zp denote the optimal solution to the stage 0 problem of (92) with perturbed coefficient values. Inputs to the stage k problem are (k=0,,K),

yk=ypk,k=k+1,,K,
which are the optimal solutions of higher stages on the same sample path, and importantly,
x=DK++Dk+1,
which corresponds to realized demand, D(tLK,t+LkLK) (1kK), without truncation. Here the subscript p stands for policy, as these solutions correspond to target setting in our inventory policy. Referring to Section 4.1, when these approximating SPs are used in place of the original SP (13), ypk replaces yk* (1kK) on the RHS of (19) and D¯zp replaces B* on the RHS of (20). Following the same analysis of (18), when inventory positions and backlog levels are kept at these replaced targets, the expected inventory cost rate at time t (t0) is
Cp˜(t)=k=1Kh˜k·E[ypk]c˜·E[D(tLK,t)B(t)]+b·E[D(tLK,t)]=φ˜(p),MK+b·E[D¯],
where
φ˜(p),MK=k=1Kh˜k·E[ypk]c˜·E[zp].

It is important to observe that the values of φ˜(p),MK and φ˜MK may differ even though they both are based on the same problem formulation in (92). The latter is the optimal objective value when the problem is solved in its entirety, with perturbed coefficients and truncated demand input,

x=DKM++Dk+1M,
at every stage k (1kK). On the other hand, φ˜(p),MK is obtained when the subproblems of (92) are solved separately, with the aforementioned use of demand inputs without truncation. Therefore, although Theorem 5 shows that φ˜MK+b·E[D¯] is a close approximation of the lower bound on the inventory cost, the discrepancy prevents the direct application of the theorem’s conclusion to φ˜(p),MK+b·E[D¯]. The following corollary closes this gap.

Corollary 3

(See Appendix A for Proof). Under any truncation parameter M and perturbed coefficient values,

φ˜(p),MKφ˜MK.(102)

Hence, given the same ϵ, M0, and Δ in Theorem 5, for all MM0,

φ˜(p),MK+b·E[D¯]C¯+2ϵ.(103)

The corollary shows that we can use a perturbed finite-dimensional version of the SP (13) in our policy without compromising asymptotic optimality: fix a constant ϵ>0, and for each system L, choose a proper constant M and range Δ to keep

|φK(L)φ˜MK(L)|2ϵ.

This difference is asymptotically negligible on the diffusion scale.

The remaining question is whether the previous development can provide us with the targets we need. For backlogs, the answer is immediate. Because φM0 in (92) is the same LP as (31) for all M, we only need to replace c with c˜ and keep the latter value the same in all cases. Hoffman’s lemma immediately leads to the following.

Lemma 6.

Let B(t) be the (unique) optimal solution of (31) and B*(t) be the (unique) optimal solution of the same LP with Qk(t) replaced by Qk(t) (1kK,t0). Then B(t) (t0) and B*(t) (t0) satisfy (54) and B*(t) (t0) satisfies (55).

For inventory position targets, the analysis is much more involved and given in Section 7.2.

7.2. Values of Lipschitz Constants

The approximation and perturbation scheme in Section 7.1 is developed to set inventory position targets that satisfy (53) and backlog targets that satisfy (54)–(55). In the asymptotic analysis, the LP (31) stays the same when L changes, so (54)–(55) are satisfied as long as the optimal solution is kept unique by the aforementioned perturbation. On the other hand, as L increases, larger M is needed in (93)–(97) for an accurate approximation of the demand distribution. For (53) to hold, the value of κ needs to be independent of the change of M. Theorem 6 and its corollary show that such a value always exists.

Theorem 6.

For k=1,,K, let yM,ak* and yM,bk* be (unique) optimal solutions to (93)–(97) under inputs (yak+1,,yaK,xa) and (ybk+1,,ybK,xb), respectively. Then

||yM,ak*yM,bk*||κ(||yak+1ybk+1||++||yaKybK||+||xaxb||),(104)
where κ depends only on (m,n1,,nK) and Ak (1kK).

Before proving the theorem, we first show its implication by deriving a corollary: as is specified in Section 7.1, we solve (93)–(97) to obtain values of Yk(t) (tLk,1kK) for implementing our replenishment policy. For this purpose, Yk(t) (tLk) needs to satisfy (53), which is clearly satisfied when k = K, in which case these values are kept constant. Theorem 6 allows us to use induction to extend (53) to k < K, which is stated as the following corollary.

Corollary 4.

For t0, let Yk(t) (tLk,1kK) be the (unique) optimal solution of φMk(yk+1,,yK,x) defined in (93)–(97), with inputs given by (101). Then (53) holds for a constant κ that depends only on (m,n1,,nK) and Ak (1kK).

Proof of Corollary 4.

For given k, suppose that (53) holds for all l > k (which is the case for k=K1). This means that there exists some κ, depending only on (m,n1,,nK) and Ak (1kK), such that for all Llt1<t2,

||Yl(t2(LlLk))Yl(t1(LlLk))||1κk=l+1K||D(t2(LkLk),t2(LlLk))D(t1(LkLk),t1(LlLk))||1,=κk=l+1K||{D(t2(LkLk),t2)D(t2(LlLk),t2)}{D(t1(LkLk),t1)D(t1(LlLk),t1)}||1.(105)

Because Yk(t) (tLk) is obtained by solving (93)–(97) using (101) for inputs yl (k<lK) and x, by Theorem 6,

||Yk(t2)Yk(t1)||1κl=k+1K||Yl(t2(LlLk))Yl(t1(LlLk))||1+κ||D(t2(LKLk),t2)D(t1(LKLk),t1)||1κ(Kk)l=k+1K||D(t2(LlLk),t2)D(t1(LlLk),t1)||1,(106)
which shows that (53) holds for k. □

The remainder of this section is dedicated to proving Theorem 6. We start from the following theorem 2.4 in Mangasarian and Shiau (1987) (for convenience, we denote u and v in their theorem by u¯ and v¯, respectively, here):

Let β1 and β*=1/(11/β) (so that ||x||β* is the dual norm of ||x||β). Let the linear program

maxx{p·x     s.t.  Axb, Cx=d}
have nonempty solution sets S1 and S2 for RHSs (b1,d1) and (b2,d2), respectively. For each x1S1, there exists x2S2 such that
||x1x2||νβ(A;C)||b1b2d1d2||β,
where
νβ(A;C)supu¯,v¯  {||u¯v¯||β*  |||u¯A+v¯C||1=1Rows of (AC) corresponding to nonzeroelements of (u¯v¯) are linearly independent} .

To apply the theorem to φMk(yk+1,,yK,x) defined in (93)–(97), let Ak be the LHS constraint matrix of the latter LP. Because there is no equality constraint, we can ignore v¯ and C. Let β=, and thus β*=1. Then νβ(A;C) and u¯ in the theorem specialize to

ν(Ak)supu¯||u¯||1,
where
||u¯Ak||1=1,
and rows of Ak corresponding to nonzero elements of u¯ are linearly independent.

The following lemma builds a critical connection between the formulation of the previous quantities and the conclusion of Theorem 6.

Lemma 7

(See Appendix A for Proof). For k=1,,K, let A^k be a maximal nonsingular submatrix of Ak. Let u be a vector that has the same number of components as the number of rows in A^k. Then there exists a constant κ, depending only on (m,n1,,nK) and the values of the components of Ak (1kK), such that

||u||1κ||uA^k||1.(107)

Proving this lemma is quite involved because we need to exploit the particular structure of Ak to show that the result, which does not apply to an arbitrary matrix, is true here. As may be seen from the proof of this lemma in Appendix A, it takes some effort to define this structure, especially for cases where k > 1. To help with the understanding of this result, we explain the intuition behind the lemma’s conclusion, after we first use the lemma to give the following proof of Theorem 6.

Proof of Theorem 6.

Let u¯ be any vector such that ||u¯Ak||1=1 and rows of Ak corresponding to nonzero elements of u¯ are linearly independent. Let A^k be a maximal nonsingular submatrix of Ak that contains all these independent rows. Let u be a subvector of u¯ that is composed of components corresponding to rows in A^k in u¯Ak, and thus includes all nonzero elements of u¯.

By Lemma 7, there exists a constant κ, depending only on (m,n1,,nK) and component values of Ak (1kK), such that

||u¯||1=||u||1κ||uA^k||1=κ||u¯Ak||1=κ,
and thus
ν(Ak)=supu¯||u¯||1κ.

By theorem 2.4 in Mangasarian and Shiau (1987), ν(Ak) satisfies (104), so does κ. □

To explain the insights on proving Lemma 7, we start from the identity

u=uA^k(A^k)1, i.e.,uT=[(A^k)-1]T[uA^k]T,(108)
where T denotes transpose. Following standard definitions (Meyer 2000), the L1 norm of a matrix A is
||A||1=supx0||Ax||1||x||1,
and its value is the maximum absolute column sum of A. This is also the value of ||AT||, which is the maximum absolute row sum of that matrix. Applying definitions of these norms to (108) with [(A^k)1]T in place of A,
||(A^k)1||=||[(A^k)1]T||1=supx0||[(A^k)1]Tx||1||x||1||[(A^k)1]T[uA^k]T||1||[uA^k]T||1=||u||1||uA^k||1.

Thus, we can let κ in (107) be the largest ||(A^k)1|| over all A^k (nonsingular submatrices of Ak). What needs to be explained then is why this value of κ can stay bounded as M increases, which leads to more elements in Ωk0 and Ωkk (k<kK) and thus a larger Ak.

Our explanation focuses on k = 1, in which case (95) is irrelevant and

A1=(H1E1H1),
where H1 is the coefficient matrix of z(ω¯) for a given ω¯ and E1 is the coefficient matrix of y1. Submatrix H1 has m columns, corresponding to the number of components in z(ω¯), and m+n1++nK rows, corresponding to the number of constraints in (94), (96), and (97). Entries of H1 are zero, one, or values of components in Ak (1kK).

Any nonsingular submatrix of A1 can be written as

A^1=(H1EHN),(109)
where Hi is a submatrix of H1, N is the number of such submatrices contained in A^1, and E is a submatrix of E1. As M increases, the number of block matrices H1 in A1 increases, as does N and thus the dimension of many submatrices A^1, especially the maximal ones of A1.

As a thought experiment, suppose that for every aforementioned nonsingular matrix A^1, we can find a matrix B to make the following linear transformation

BA^1=A^d.

Here A^d is a nonsingular matrix in the form of

(H^1H^N),
where H^i (1iN) are nonsingular submatrices with their dimensions bounded by an integer function of m and n1 and their entries depending only on Ak (1kK). Then,
(A^1)1=A^d1B=(H^11H^N1)B.

Suppose further that for all A^1, (a) entries of the corresponding matrix B are values in a finite set and (b) the number of nonzero entries on each row of B is bounded by an integer function of m and n1. Then the previous expression implies that regardless how large M is, the maximum absolute value of entries of (A^1)1 stays bounded, and the number of nonzero entries on each row of (A^1)1 remains finite. Thus ||(A^1)1|| and thus the value of the aforementioned κ is bounded by some constant that is independent of M.

The actual proof of Lemma 7 is based on a similar idea to earlier, although we do not need to specify B and carry out the aforementioned transformation explicitly. Roughly speaking, we observe that in (109), all H s have finite dimensions and E has a finite number of columns (n1) with zero or one as their entries. This structure allows all nonzero entries of (A^1)1, which recovers ||u||1 from ||uA^1||1 (in the sense of (108)), to be obtained by inverting submatrices of A^1. These submatrices have finite dimensions and values of their entries do not depend on M. Consequently, in (A^1)1, both the number of nonzero entries on each row and their values are finite, so ||(A1^)1|| can remain bounded as M increases.

Similar insights are used to prove Lemma 7 for cases with k > 1, but the procedure gets considerably more complicated. For instance, when k = 2, the LHS matrix of (94)–(97) is

A2=(H2E2H2),
where H2 is the coefficient matrix of z(ω¯) and y1(ω¯), and E2 is the coefficient matrix of y2. Each H2 corresponds to a particular ω¯ and contains all ω¯ such that ω¯ω¯ (see (94)–(95) with k = 2 and k=1). Like E1,E2 has a fixed number (n2) of columns, and like A1, entries of A2 come from a finite set of values that do not depend on M. Different from H1, the dimension of H2 is not fixed but grows with M. Because of this difference, we need to introduce additional constructs to define the matrix structure recursively and prove the lemma by induction.

8. Numerical Results

We evaluate the performance of our policy by simulating its application to the examples of ATO systems shown in Figure 1. Each system features two distinct lead times. We vary cost parameters and lead times to generate various cases. For all cases the demand for products consists of independent Poisson processes, with the arrival rate of demand for product i denoted by λi. In each case, C¯ is the SP lower bound, Cs is the average inventory cost determined by the simulation, and the following optimality gap

Δ=CsC¯C¯
serves as the performance metric of our policy.

For each case, we carry out 30 simulation runs. Depending on the lead times, the length of each run ranges from 150,000 to 600,000 time units, ensuring that it is at least 1,250 times of the longer lead time. The first one-tenth of the simulation time is for warm-up. Values presented are summaries of outputs from the remaining periods, averaged over the 30 simulation runs.

We first consider the W system, using 27 parameter sets given in Doğru et al. (2010, section 4.1). The inventory holding cost of the common component, h0, is normalized to unity and demand arrival rates are kept at λ1=λ2=25. Values of h1, h2, b1, and b2, which are shown in the tables, are chosen to cover a wide range of cost relationships. Components 1 and 2 have the same lead time, which differs from that of component 0.

Table 5 shows optimality gaps when component 0 has the shorter lead time. Entries marked by * correspond to cases where the SP solution is within the 95% confidence interval (CI) of the average cost estimated by 30 simulation runs. In these cases, the difference between the inventory cost under our policy and its lower bound is not statistically significant. In all other cases, the optimality gap decreases as the lead times increase, consistent with the trend predicted by Theorem 3. The optimality gaps fall to a level that is close to or below 1% in many cases when (L1,L2)=(20,30), and in a majority of cases when (L1,L2)=(40,60). We stop running simulations for these cases with longer lead times (as indicated by “-” in the table). In a few cases, the optimality gap stays significantly above 1% in all simulations, but nevertheless, still follows a clear pattern of converging to 0. These cases (e.g., 15, 21, 27) are normally associated with a high c1/c2 ratio. Discussions in section 4.2 in Doğru et al. (2010) explain why the gap tends to be larger under these parameter values for systems with identical lead times. The same intuition applies here for systems with nonidentical lead times.

Table

Table 3. Centered and Scaled Processes and Vectors (1kK)

Table 3. Centered and Scaled Processes and Vectors (1kK)

Process/vectorD(L)(t1,t2)Dk(L)Yk(L)(t)Ik(L)(t)IPk(L)(t)
CenteringL(t2t1)μ(Lk(L)Lk1(L))μLAkμLk(L)AkμLk(L)Akμ
Centered and scaledD^(L)(t1,t2)D^k(L)Y^k(L)(t)Ik(L)(t)IPk(L)(t)

In Table 6, we use the same parameter set but let the common component have the longer lead time and the other two components have the same shorter lead time. Like results in Table 5, it is evident that in each case, the optimality gap converges to zero as the lead times increase. Nevertheless, these gaps are generally larger here. For instance, when (L1,L2)=(160,240), the gap is close to 2% in cases 21 and 27. We have additional runs for these two cases with (L1,L2)=(320,480) and found the gap drops to 1.03% and 1.26%, respectively.

Table

Table 4. Scaled Processes and Variables (1kK)

Table 4. Scaled Processes and Variables (1kK)

Process/variabled(L)(t)Qk(L)(t)Qk(L)(t)B(L)(t)B(L)(t)B*(L)(t)C(L)(t)C(L)
Scaledd^(L)(t)Q^k(L)(t)Q^k(L)(t)B^(L)(t)B^(L)(t)B^*(L)(t)C^(L)(t)C^(L)

It is interesting to focus on the first four cases where c1 = c2. In Table 5, the SP lower bound is within the 95% CI except for case 4 when (L1,L2)=(1,1.5). A further calculation shows that this bound is within the (wider) 99.9% CI. In Table 6, the SP lower bound is outside the 95% CI in cases 1, 3, and 4 when (L1,L2)=(1,1.5). Further calculations show that in cases 3 and 4, the SP lower bound is also outside the 99.9% CI. Comparing the sample mean of the average cost obtained from the simulation with the lower bound, the t value is 4.69 for case 3 and 6.48 for case 4. Given that the sample size is 30, these values suggest that the inventory cost in both cases is significantly higher than the lower bound (with α<0.0005).

The observation is consistent with theorem 4 in Reiman and Wang (2012), which concludes that in W systems with c1 = c2, the SP lower bound is reachable when the common component has the shorter lead time. However, the conclusion does not extend to W systems in which the common component has the longer lead time. Here, we use a special case of the W system, the N system shown in Figure 1, to explain this subtlety.

When c1 = c2, serving a unit of either product 1 or 2 removes the same amount of inventory cost from the system. Thus, the optimal allocation outcome prescribed by the SP solution is trivially attainable. However, when the common component has the longer lead time, it may not be possible to meet the SP-based inventory position target of the other component for all time. To see this point, consider a time t when a large batch of demand for product 1 has just arrived, exhausting all inventory of component 0, both on hand and in transit at the moment.

When component 0 has the longer lead time, any new order of it will not arrive until t+L2, which means that its net inventory level at t+L1 is nonpositive. Correspondingly at time t, the inventory position target of component 1, constrained by the availability of component 0 at t+L1, will be set at a nonpositive level. The system may not be able to meet this target because the actual inventory position is affected by previous ordering decisions, and therefore can be positive at t even without ordering any new unit. Reducing it to a nonpositive level requires removing existing units, which is not feasible.

This situation does not happen when component 0 has the shorter lead time. In this case, the SP sets a constant inventory position target for component 1, which is always met (excluding the initial period) under a constant base stock policy. Any usage of component 1 is accompanied by the usage of component 0 by the same amount. Therefore, when the inventory position target of component 0 needs to be reduced because of the lack of component 1 within the next (shorter) lead time, its actual inventory position is also at a lowered level, which allows the target to be met without removing any unit from the system.

The impact of this difference on the optimality gap is shown by a few examples in Table 7. The first three columns give cost parameters. For each example, we compare the SP lower bound with the average cost from 100 simulation runs. Results in columns 4, 5, and 6 are from examples in which component 0 has the longer lead time. In each example, the SP lower bound is strictly below the lower end of the 99.9% CI of the average cost. Comparing the sample mean of the latter cost with the lower bound, the t values are 25.08, 16.81, and 33.30, respectively, in these three cases, so the optimality gap is strictly positive at exceedingly high significance levels. Results in columns 7, 8, 9 are from examples in which component 0 has the shorter lead time. In all examples, the SP lower bound is inside the 95% CI and thus certainly inside the (wider) 99.9% CI. The t values are 1.28, 0.97, and 1.34, respectively, none of them is significant at α=0.05.

Table

Table 5. Optimality Gaps: W System, Component 0 Has the Shorter Lead Time, h0=1,λ1=λ2=25

Table 5. Optimality Gaps: W System, Component 0 Has the Shorter Lead Time, h0=1,λ1=λ2=25

Case no.h1h2b1b2Optimality gap (L1: component 0, L2: components 1 and 2)
L1=1L1=5L1=10L1=20L1=40L1=80L1=160
L2=1.5L2=7.5L2=15L2=30L2=60L2=120L2=240
111440.03% *0.14% *0.04% *
20.20.22.42.40.01% *0.04% *0.08% *
3151060.10% *0.07% *0.19% *
45512120.05%0.01% *0.00% *
50.21640.56%0.12% *0.24% *
60.20.22.41.23.51%1.92%1.34%0.83%
711421.04%0.68%0.49%
8551260.13%0.08%0.04% *
910.242.42.20%1.03%0.79%
100.20.2623.41%1.63%1.22%0.87%
11111042.07%1.24%0.76%
125530120.40%0.12% *0.04% *
130.20.262.45.47%2.89%2.03%1.56%1.03%
1410.241.25.85%2.98%2.07%1.45%0.98%
150.20.261.214.36%7.17%5.34%3.75%2.48%1.92%1.37%
16111025.20%2.55%2.12%1.45%0.86%
17511241.45%1.09%0.72%
18553060.84%0.32%0.23%
1910.2102.47.10%3.73%2.79%2.04%1.52%1.01%
20511223.12%1.63%1.15%0.78%
2110.2101.214.85%7.98%5.47%4.08%2.88%2.17%1.36%
2250.2122.44.65%2.45%1.83%1.35%0.87%
23513044.21%2.21%1.47%1.30%0.75%
2450.2121.29.03%4.48%3.53%2.51%1.78%1.26%
25513027.79%3.81%3.08%2.06%1.59%1.05%
2650.2302.49.65%5.24%3.91%2.76%1.89%1.38%
2750.2301.217.01%8.65%6.47%4.53%2.92%2.30%1.55%


Note. See the text for an explanation of entries with * or —.

We also conducted simulations on the M system shown in Figure 1. We use the same cost parameters as these in Dogru et al. (2017). The inventory holding costs of both components, h1 and h2, are set to unity. Backlog costs, b0, b1, and b2, are varied (see the second row in Tables 8 and 9) to generate four regions of different cost relationships: (1) c1+c2<c0 (region A); (2) c2c1<c0c1+c2 (region B); (3) c2<c0c1 (region C); and (4) c0c2c1 (region D). As discussed in Doğru et al. (2017), our allocation policy specializes to allocation rules that are qualitatively different between the regions. Tables 8 and 9 show optimality gaps for cases when component 1 has the shorter and longer lead times, respectively. In both cases, the gaps are above zero when (L1,L2)=(1,1.5) and significantly so in regions A and D. Nevertheless, in each case, there is also a clear trend that the gap converges toward zero as the lead times increase, as is predicted by Theorem 3.

Table

Table 6. Optimality Gaps: W System, Component 0 Has the Longer Lead Time, h0=1,λ1=λ2=25

Table 6. Optimality Gaps: W System, Component 0 Has the Longer Lead Time, h0=1,λ1=λ2=25

Case no.h1h2b1b2Optimality gap (L1: components 1 and 2, L2: component 0)
L1=1L1=5L1=10L1=20L1=40L1=80L1=160
L2=1.5L2=7.5L2=15L2=30L2=60L2=120L2=240
111440.16%0.08% *0.08% *
20.20.22.42.40.11% *0.05% *0.11% *
3151060.30%0.10% *0.15% *
45512120.34%0.11% *0.14%
50.21640.78%0.31%0.20%
60.20.22.41.23.46%2.04%1.28%0.94%
711421.65%0.72%0.43%
8551260.94%0.42%0.13%
910.242.42.72%1.25%0.95%
100.20.2623.97%1.88%1.39%0.92%
11111042.63%1.38%0.97%
125530120.96%0.37%0.33%
130.20.262.45.76%2.77%1.97%1.52%1.00%0.53%
1410.241.27.74%3.61%2.74%2.04%1.33%0.97%
150.20.261.214.47%7.29%5.07%3.67%2.67%2.04%1.50%
16111026.56%3.19%2.55%1.81%1.41%0.95%
17511242.79%1.55%1.17%0.86%
18553062.23%1.11%0.69%
1910.2102.48.78%4.54%3.33%2.46%1.60%1.10%0.77%
20511225.73%3.19%2.32%1.58%1.15%0.83%
2110.2101.217.04%8.88%6.77%4.87%3.35%2.79%1.95%
2250.2122.47.43%3.71%2.72%1.97%1.33%0.87%
23513046.32%3.49%2.44%1.57%1.19%0.77%
2450.2121.213.02%6.64%4.99%3.60%2.62%1.75%1.31%
255130210.83%5.87%4.17%2.98%2.21%1.64%0.86%
2650.2302.413.29%6.75%5.02%3.67%2.59%1.97%1.03%
2750.2301.224.68%12.13%8.52%6.00%4.39%3.09%1.98%


Note. See the text for an explanation of entries with * or —.

Table

Table 7. Optimality Gaps: N-System with Symmetric Costs (h0=1,L1=1,L2=1.5,λ1=λ2=5)

Table 7. Optimality Gaps: N-System with Symmetric Costs (h0=1,L1=1,L2=1.5,λ1=λ2=5)

h1b1b2L1: component 1L1: component 0
L2: component 0L2: component 1
Lower boundAverage99.9% CILower boundAverage95% CI
0.10.40.521.3821.56[21.54,21.59]18.9518.95[18.94,18.97]
0.10.70. 828.8229.00[28.96,29.04]25.2625.27[25.25,25.29]
11251.3851.98[51.91,52.04]49.2449.25[49.23,49.28]
Table

Table 8. Optimality Gaps: M System, Component 1 Has the Shorter Lead Time, h1=h2=1,λ0=25,λ1=λ2=50

Table 8. Optimality Gaps: M System, Component 1 Has the Shorter Lead Time, h1=h2=1,λ0=25,λ1=λ2=50

Lead time
L1: component 1
L2: component 2
ABCD
b0=8b0=3b0=2b0=1
b1=3.5b1=2.5b1=3.5b1=8
b2=1b2=1b2=1b2=3
L1=1L2=1.510.03%4.60%5.72%23.20%
L1=5L2=7.54.82%2.30%2.87%11.27%
L1=10L2=153.29%1.72%2.07%8.18%
L1=20L2=302.32%1.17%1.44%6.13%
L1=40L2=601.75%1.00%4.45%
L1=80L2=1201.37%3.20%
Table

Table 9. Optimality Gaps: M System, Component 2 Has the Shorter Lead Time, h1=h2=1,λ0=25,λ1=λ2=50

Table 9. Optimality Gaps: M System, Component 2 Has the Shorter Lead Time, h1=h2=1,λ0=25,λ1=λ2=50

Lead time
L1: component 2
L2: component 1
ABCD
b0=8b0=3b0=2b0=1
b1=3.5b1=2.5b1=3.5b1=8
b2=1b2=1b2=1b2=3
L1=1L2=1.59.07%4.20%5.20%22.48%
L1=5L2=7.54.42%2.25%2.67%11.16%
L1=10L2=153.17%1.40%1.87%8.12%
L1=20L2=302.25%0.99%1.29%5.74%
L1=40L2=601.46%0.88%3.99%
L1=80L2=1200.94%2.69%

9. Conclusion

Optimal inventory control of ATO systems with multiple products is a long-standing problem in the literature. In principle, this paper has settled the issue of developing an asymptotically optimal control policy for systems with general BOMs and deterministic lead times. We have “collapsed” the design of a dynamic control policy for minimizing the average cost over an infinite time horizon to the solution of certain multistage stochastic programs. The approach leads to drastically simplified analyses and feasible inventory policies with provable optimality properties.

This paper is a continuation of a stream of past work on ATO inventory systems. The multistage SP in Section 3 generalizes the two-stage SP in (34), which applies only to systems with identical lead times. In comparison with the formulation in (33), the SP here is a better alternative as it directly sets the same lower bound on the average cost, eliminating the need to take the infimum of the objective values and yields optimal solutions that have finite values and hence can be used as parameters of inventory control policies. Although the allocation policy follows the same principle as that in (34), we break new ground in developing a replenishment policy. The conventional base stock policy is justified by asymptotic analysis for use in systems with identical or near identical lead times (Reiman and Wang 2012, Reiman et al. 2016), whereas a different policy has been shown to be optimal for one-product systems with nonidentical lead times (Rosling 1989). Subsuming both as special cases, our policy is supported by the proof of asymptotic optimality and numerical results for its use in systems with general BOMs and lead times.

As a result of the new policy development, the asymptotic analysis is more involved than for systems with identical lead times in (34). Instead of setting constant targets for inventory positions, the new policy updates them repeatedly over time based on changes of relevant system states, giving rise to the question about the stability of these targets. In general, it is not possible to keep actual inventory positions at their targets for all times, and in theory, the influence of the discrepancies can last into the indefinite future. We address these issues with new approaches, such as the formulation and analysis of the “stochastic tracking model” and the characterization and exploitation of the matrix structures of SP constraints. We develop these technical machineries for general settings, making it possible to apply them to models other than ATO systems, for example, to prove convergence of other stochastic processes or address Lipschitz continuity of certain types of infinite LPs.

This paper is, in a sense, the culmination of the stream of previously mentioned work. On the other hand, this is not the end of the story. In particular, making our policy implementable in practical ATO systems requires new approaches to overcome the computational complexity of multistage SPs. In this paper, we consider the use of finite-dimensional LPs to approximate the original problems to generate stable targets for inventory positions and backlog levels. For the approximation to be sufficiently accurate, the dimensions of these LPs may need to be exceedingly high, especially when the system has many different and very long lead times. Moreover, the SPs need to be reoptimized repeatedly over time to update policy parameters, which makes the computation even more expensive.

Recent studies on two-stage SPs show that exploring structural properties of ATO problems implied by their BOMs can facilitate solution procedures (Zipkin 2016, Doğru et al. 2017, DeValve et al. 2020). How to extend this strategy to multistage SPs is an issue yet to be explored. It has also been shown that when the percentage difference between the longest and shortest lead times becomes insignificant, it can be asymptotically optimal to follow a base stock policy (32), reducing the SP to a two-stage problem and eliminating the need to update inventory position targets. Similarly, it also seems possible to preserve asymptotic optimality while reducing computational efforts by applying simple replenishment rules without resorting to SP solutions on components whose lead times are insignificant fractions of the longest lead time. In general, there can be opportunities to systematically explore exploiting small lead time differences to reduce the number of stages of the SPs. Furthermore, one may also find ways to reduce the computational burden by resolving multistage SPs less frequently. Although interesting and important, these topics are certainly beyond the scope of one paper, and we leave them for future research.

As a broader message, our work highlights the power of asymptotic analysis to tackle difficult inventory models that defy exact analysis. There is no shortage of such problems in the inventory theory literature, giving rise to ample opportunities for innovative research. On this subject, we refer to a recent survey Goldberg et al. (2021) for detailed discussions.

Acknowledgments

The authors are grateful to the associate editor and anonymous referees for constructive comments.

Appendix A. Proof of Theorems

Proof of Theorem 1.

The proof will use the following primal-dual transformation of the last stage LP in (13):

φ0(y1,yK,x)=maxz{c·z|zx,Azy}=minν,κ0{x·ν+y·κ|ν+Aκ=c}=c·xminκ0{(yAx)·κ|Aκc}=maxκ0{(Axy)·κ|Aκc}c·x.(A.1)

Given that all components of A are nonnegative, it is always optimal to set κj=0 for any j such that Aj·xyj0 (1jn). Thus, without the loss of generality, we replace (Axy) with (Axy)+ in (A.1), in which case

φ0(y1,yK,x)=φd0(y1,yK,x)c·x,where  φd0(y1,yK,x)maxκ0{(Axy)+·κ|Aκc}.(A.2)

In (A.2), for any feasible solution of φd0(y1,yK,x),

κjκ¯ (1jn),   where  κ¯=c¯a¯,
where c¯ and a¯ are defined in Table 2. Let yl* (1lk) be an optimal solution on the sample path (Dk,,D1). Then
φk(yk+1,,yK,x)=l=1khl·E[yl*]+E[φd0(y1*,,yk*,yk+1,,yK,x+D¯k)]c·E[x+D¯k].(A.3)

Let φk,j(yk+1,yK,x) be a deviation from the optimal objective value φk(yk+1,,yK,x), obtained by changing yj* to yj*1 while keeping all other values at the optimal levels. Then

φk,j(yk+1,yK,x)φk(yk+1,,yK,x)0,
that is,
 hj+E[κj(Aj·(x+D¯k)(yj*1))+]E[κj(Aj·(x+D¯k)yj*)+]=hj+E[κj1{Aj·(x+D¯k)yj*}]0.

For the latter condition to hold, it is necessary that

κ¯Pr{a¯(||x||1+||D¯k||1)yj*}h¯.

When yj*>0, apply Markov’s Inequality to the above inequality,

E[a¯(||x||1+||D¯k||1)]yj*h¯/κ¯,
which yields an upper bound
yj*β¯(||x||1+E[||D¯k||1]),
where β¯ can be any constant such that
β¯a¯h¯κ¯=a¯a¯c¯h¯.

This upper bound obviously applies when yj*0.

To prove the lower bound, fix a component j of yk (i.e., kj = k) and consider the following feasible solution to (A.2)

κj= {0kj>k,hj+b/a¯j=j,hj    otherwise,(A.4)
which yields a weakly lower objective value than the optimal one, that is,
l=1khl·(Alxyl*)+b¯/a¯(Aj·xyj*)φd0(y1*,,yk*,yk+1,,yK,x).

Apply the inequality to (A.3) (notice that x in φd0() corresponds to x+D¯k in φd0() in (A.3)),

φk(yk+1,yK,x)hk·yk*+hk·(Ak(x+E[D¯k])yk*)+b¯/a¯[Aj·(x+E[D¯k])yj*]+l=1k1hl·E[yl*]+l=1k1hl·(Al(x+E[D¯k])E[yl*])c·(x+E[D¯k])(b¯/a¯)yj*c·(x+E[D¯k]),(A.5)
where c=cl=1k(Ak)hk(b¯/a¯)Aj.

Let κ0 be an optimal solution of φd0(0,,0,yk+1,yK,x). Then {yl=0 (1lk),κ0} is a feasible solution of φk(yk+1,yK,x) and yields the following objective value:

j:kjkE[κj0Aj·(x+D¯k)]+j:kj>kE[κj0(Aj·(x+D¯k)yj)]c·(x+E[D¯k]).

Therefore,

φk(yk+1,yK,x)j=1nAj·E[κj0(x+D¯k)]+j:kj>k|yj|E[κj0]c·(x+E[Dk]).(A.6)

Using (A.5) and (A.6), and applying that κjκ¯:

(b¯/a¯)yj*κ¯(j=1nAj·(x+E[Dk])+j:kj>k|yj|)+(cc)·(x+E[Dk]).

Therefore,

yj*β(||x||1+E[||Dk||1]+l=k+1K||yl||1),  1jn,
where β¯ can be any constant such that
β¯a¯b¯κ¯(na¯)=n(a¯)2a¯c¯b¯. □

Proof of Theorem 2.

By substituting yk with ykAkα (1kK) and z with zα in (11):

ΦK(α)=ΨαKb·α,
where
ΨαK=infyKAKα{hK·yK+E[ΨαK1(yK,DK)]},Ψαk(yk+1,,yK,x)=infykAkα{hk·yk+E[Ψαk1(yk,,yK,x+Dk)]},  k=K1,,1,Ψα0(y1,,yK,x)=maxzα{c·z|zx,Akzyk, 1kK}.(A.7)

Using (10), we prove (15) by showing that

infα0{ΨαK}=φK.(A.8)

Let M be a positive integer and M be a m-dimensional vector with all components equal to M. Let φMK be the optimal objective value of the SP defined in (13) with inputs Dk replaced by

DMkDkM,1kK.

Likewise, let ΨM,αK be the optimal objective value of the SP defined in (A.7) with the replacement of Dk by DMk (1kK). Following Theorem 5, as M,φMK converges to φK and ΨM,αK converges to ΨαK uniformly over all α (see (A.20) and the later discussion in the proof of Theorem 5). Although the latter theorem and its proof appear later in the paper, they do not rely on the conclusion that we are proving here. Thus, to prove (A.8), we only need to show that for any given M, there exists some α, such that

ΨM,αK=φMK.(A.9)

Let yk* (1kK) be an optimal solution of φMK. By Theorem 1, yMK* is finite. For k=K1,,1, because every entry of x in φMk(yMk+1*,,yMK*,x), which is

DMK+DMk+1
is bounded by M(Kk), by a simple induction on (14), yMk* has a finite upper bound that applies to all sample paths. This means that when α is sufficiently large, yMk* (1kK) are feasible solutions to ΨM,αk(yMk+1*,,yMK*,x) (1kK). On the other hand, any optimal values of yk for ΨM,αk(yk+1,,yK,x) are obviously feasible for φMk(yk+1,,yK,x) (1kK). Thus, to prove (A.9), we only need to show that if α is sufficiently large,
ΨM,α0(y1,,yK,x)=φM0(y1,,yK,x)(A.10)
for any xKM and yk (1kK) bounded by a constant that depends on M but not α. By definition, except for restrictions on inputs, φM0(y1,,yK,x) and ΨM,α0(y1,,yK,x) are the same LPs as φ0(y1,,yK,x) and Ψα0(y1,,yK,x), respectively.

Obviously, for any yk (1kK) and x

ΨM,α0(y1,,yK,x)φM0(y1,,yK,x),(A.11)
because any feasible solution for the LP on the LHS is also feasible for the LP on the RHS. To prove the inequality holds in reverse, observe that if z* optimizes
φM0(y1,,yK,x)=maxz{c·z|Akzyk (1kK), zx}=maxz{i=1mcizi|i=1majiziyj (1jn), zixi (1im)},
then
zi*α¯    where  α¯max1jn{|yj|+i=1majiximinaji>0{aji}}, 1im.

Otherwise, one can improve the objective value by increasing zi without violating any constraint. Because yk (1kK) and x are bounded, α¯ is also bounded by some constant α¯max. When αα¯max, any optimal solution to φM0(y1,,yK,x) is a feasible solution to ΨM,α0(y1,,yK,x), so (A.11) holds in reverse. This completes the proof of the theorem. □

Proof of Lemma 3.

Observe that

E[supt0(|D^i(L)(0,t)|Ltν)+]τ=1E[supτt<τ+1(|D^i(L)(0,t)|Ltν)+] +E[supL1/4t<1(|D^i(L)(0,t)|Ltν)+] +E[sup0t<L1/4(|D^i(L)(0,t)|Ltν)+].(A.12)

Notice that D˜(L)(t) (t1) is a stationary process and |D^i(L)(0,t)| (t1) is a sub-martingale:

τ=1E[(supτtτ+1|D^i(L)(0,t)|Ltν)+]τ=1E[(supτtτ+1|D^i(L)(0,t)|Lτν)+]=τ=1E[(sup0t1|D^i(L)(0,t+τ)|Lτν)+]=τ=1LτνPr{sup0t1|D^i(L)(0,t+τ)|x}dxτ=1LτνE[|D^i(L)(0,τ+1)|p]xpdx=(Lν)1pp1τ=1E[|D^i(L)(0,τ+1)|p]τp1,(A.13)
where the second inequality is Doob’s inequality and p > 1.

To bound the sum in the above, observe that

E[(D^i(L)(0,τ+1))6]=E[(s=1τ+1D^i(L)(s1,s))6],
where E[D^i(L)(s1,s)]=0. Because D^i(L)(s1,s) (1sτ+1) is an i.i.d. sequence,
E[(D^i(L)(s1,s))k]=E[(D^i(L)(0,1))k],  1k6, s=1,,τ+1.

By eliminating terms that contain E[D^i(L)(s1,s)]=0 and thus equal zero in the expansion,

E[(D^i(L)(0,τ+1)6]=C1τ+1×E[(D^i(L)(0,1))6] +C2τ+1(2C26×E[(D^i(L)(0,1))4]×E[(D^i(L)(0,1))2]+C36×(E[(D^i(L)(0,1))3])2) +C3τ+1×C26×C24×(E[(D^i(L)(0,1))2])3,(A.14)
where Crq denotes q choose r (q, r integers and qr). Let
υ=τ=1E[(D^i(L)(0,τ+1))6]τ5,
which is a finite constant: Because the jump size of the Compound Poisson process is assumed to have a finite moment of order 6, E[(D^i(L)(0,1))k] (k=2,3,4,6) are all finite. Moreover Ckτ+1 (k = 1, 2, 3) are on the order of τ3 or smaller. By (A.13) with p = 6,
τ=1E[(supτtτ+1|D^i(L)(0,t)|Ltν)+]υ5ν5L5/2.(A.15)

Applying the above and bounds in (64) and (65) of Lemma 2 to (A.13) proves (66). □

Proof of Lemma 4.

For each i=1,,m,

E[τ=0sup0t<1(d^i(L)(t)Lντ)+]=E[sup0t<1d^i(L)(t)]+τ=1E[sup0t<1(d^i(L)(t)Lντ)+]3λ12+δ(1+ηi)Lδ2(2+δ)+τ=1E[sup0t<1(d^i(L)(t)Lντ)+],
where the first equality follows from Tonelli’s theorem, and the next inequality is obtained by applying lemma 2 in Reiman and Wang (2015) to bound the first expected value (τ = 0). Observe that
τ=1E[sup0t<1(d^i(L)(t)Lντ)+]=τ=1LντPr{sup0t<1d^i(L)(t)x}dxτ=1LντE[(sup0t<1d^i(L)(t))2+δ]x2+δdx=τ=1E[(sup0t<1d^i(L)(t))2+δ](1+δ)(Lν)1+δ1τ1+δτ=1LλE[(Si/L)2+δ](1+δ)(Lν)1+δ1τ1+δ=L(1/2+δ)ληi(1+δ)ν1+δτ=11τ1+δ,
where the last inequality follows from
(sup0t<1d^i(L)(t))2+δk=0Λ(L)(1)(SiL)2+δ,
where Λ(L)(1) is the number of arrivals in [0,L] and Si is the order size, which are independent of each other. This analysis shows that
E[τ=0sup0t<1(d^i(L)(t)Lντ)+]ξ1Lδ2(2+δ)+ξ2L(1/2+δ),
where
ξ1=3λ1/(2+δ)(1+ηi)  and ξ2=ληi(1+δ)ν1+δτ=11τ1+δ
are both finite values that are independent of L. The lemma follows as a result. □

Proof of Lemma 5.

It is easy to verify from the expressions in (13) that because Yk(L)(t) (tLk,1kK) minimize (40)–(40′), Y^k(L)(t) (tL^k(L),1kK) minimize the same functions with the same linear transformation of inputs as follows: at each stage k (1kK), let D^k(L) replace Dk(L),x take the value of D^(L)(t+L^k+1(L)1,t) instead of D(L)(t+Lk+1(L)L,t), and Y^k(L)(t+L^k(L)L^k(L)) replace Yk(L)(t+Lk(L)Lk(L)) (k<kK).

For each j=1,,n, applying (14), there exists a constant β˜ such that

Y^j(L)(L^kj(L))β˜i=1mk=kjK(|D^i(L)(1,L^k(L))|+E[|D^i(L)(L^kj(L),0)|]).

For any constant ν>0, let

ν˜=ν/β˜2m(n¯k++n¯K).

Because D(L)(t) (tL) is a stationary process and 0L^kj(L)1 (1jn),

E[(|Y^j(L)(L^kj(L))|Lν)+]β˜i=1mk=kjKE[(|D^i(L)(1,L^k(L))|Lν˜)++(E[|D^i(L)(L^kj(L),0)|]Lν˜)+]2β˜(Kkj)i=1mE[supt0(|D^i(L)(0,t)|Lν˜)+].

Applying Lemma 3 to the last expression in the above inequality concludes the proof. □

Proof of Theorem 5.

To prove (99), we use induction to show that for k=0,,K and any yk+1,,yK and x, there exists a η, depending only on c and Ak (1kK), such that

0φMk(yk+1,,yK,x)φk(yk+1,,yK,x)ηk=1kE[||DkDMk||1].(A.16)

Because φM0(y1,,yK,x) in (13) and φ0(y1,,yK,x) in (92) are the same LP, (A.16) holds when k = 0. Furthermore, for any xa and xb such that xaxb,

0φ0(y1,,yK,xa)φ0(y1,,yK,xb)η||xaxb||1,(A.17)
where η is a constant that depends only on c and Ak (1kK). The left inequality holds because the feasible set of the LP under xa is a subset of that under xb. The right inequality and the specification of η are standard results of LP sensitivity analysis (section 10.4 of Schrijver 1986).

The induction starts from the assumption that when k = l (0l<K), there exists constant η, depending only on c and Ak (1kK), such that

0φMl(yl+1,,yK,x)φl(yl+1,,yK,x)ηk=1lE[||DkDMk||1],(A.18)
and for any xa and xb, where xaxb,
0φl(yl+1,,yK,xa)φl(yl+1,,yK,xb)η||xaxb||1.(A.19)

We have proved both conditions for the case with k = 0. We now prove that they are also true when k=l+1.

Let yM(l+1)* be an optimal solution of φMl+1(yl+2,,yK,x). Then

φl+1(yl+2,,yK,x)=minyl+1{hl+1·yl+1+E[φl(yl+1,yl+2,,yK,x+Dl+1)]}hl+1·yM(l+1)*+E[φl(yM(l+1)*,yl+2,,yK,x+Dl+1)]hl+1·yM(l+1)*+E[φl(yM(l+1)*,yl+2,,yK,x+DMl+1)]hl+1·yM(l+1)*+E[φMl(yM(l+1)*,yl+2,,yK,x+DMl+1)]=φMl+1(yl+2,,yK,x),
where the second inequality follows from induction assumption (A.19) with xa=DMl+1 and xb=Dl+1 and the third inequality follows from (A.18).

Let y(l+1)* be an optimal solution to φl+1(yl+2,,yK,x). Then

φMl+1(yk+2,,yK,x)=minyl+1{hl+1·yl+1+E[φMl(yl+1,yk+2,,yK,x+DMl+1)]}hl+1·y(l+1)*+E[φMk(y(l+1)*,yk+2,,yK,x+DMl+1)]hl+1·y(l+1)*+E[φk(y(l+1)*,yk+2,,yK,x+DMl+1)]+ηk=1lE[||DkDMk||1]hl+1·y(l+1)*+E[φk(y(l+1)*,yk+2,,yK,x+Dl+1)]+ηk=1l+1E[||DkDMk||1]=φl+1(yl+2,,yK,x)+ηk=1l+1E[||DkDMk||1],
where the second inequality follows from (A.18) and third inequality follows from (A.19) with xa=DMl+1 and xb=Dl+1. Hence, we have proved (A.18) holds when k=l+1.

To prove (A.19) holds for k=l+1, for any xa and xb, where xaxb,

φl+1(yl+2,,yK,xa)=minyl+1{hl+1·yl+1+E[φl(yl+1,yl+2,,yK,xa+Dl+1)]}minyl+1{hl+1·yl+1+E[φl(yl+1,yk+2,,yK,xb+Dl+1)+η||xaxb||1]}=φl+1(yl+2,,yK,xb)+η||xaxb||1,
where the inequality follows from the right inequality of (A.19). Following the same step and use the left inequality of (A.19),
φl+1(yl+2,,yK,xa)φl+1(yl+2,,yK,xb).

We have thus proved (99). As a slight extension, in proving Theorem 2, we refer to this theorem to show that

limMΨM,αK=Ψα,(A.20)
where Ψα is defined in (A.7) and ΨM,αK is defined by the same equation with Dk replaced by DMk (1kK). It is straightforward to follow the same process as above, with φMk() and φk() replaced by ΨM,αk() and Ψαk(), respectively (1kK), to prove (A.20). The only difference is that the determination of η in (A.17) needs to include the LHS of the constraint zα. Because the value of η is independent of α, which is on the RHS, the convergence is uniform over all α.

To prove (100), note that φMK and φ˜MK are optimal objective values of (92) under the original and perturbed coefficient values, respectively. Because the perturbation only applies to coefficients of the objective function, the feasible set remains the same between the two problems (so one problem’s optimal solution is also a feasible solution of the other). Therefore, we only need to show that under a chosen M, the optimal solution in either problem is bounded by some quantities that are independent of perturbed coefficient values as long as they satisfy (98). Thus, by reducing Δ in (98), the difference of the two optimal objective values can be kept arbitrary small.

Theorem 1 shows that, with or without coefficient perturbation, ||yk||1 in (92) satisfies ||yk||1γ1 (1kK) for some finite constant γ1. With Dk truncated to DMk (1kK), in (14), ||x||1γ2M for some finite constant γ2, and E[||D¯k||1] (1kK) are finite even without truncation. Although the allowed ranges of β¯ and β¯ do depend on b and hk (1kK), the definitions of these two quantities also imply that there are non-empty ranges of perturbed coefficients to which some fixed values of β¯ and β¯ apply.

To show that ||z||1 is also bounded, first note that the constraint zx in φM0(·) of (92), along with the upper bound on x shown in the last paragraph imply that ziγ2M (1im). To bound the optimal value of zi, when this value is negative, it must be in at least one of the constraints Akzyk,1kK at equality (otherwise, the objective value can be improved by increasing zi). Combining the above bounds yields zi[γ1+(m1)a¯γ2M],1im. □

Proof of Corollary 3.

The formulation of the LP (93)–(97) implies that for any given yk+1,,yK (1kK1), if xaxb, then

φ˜Mk(yk+1,,yK,xa+DMk)φ˜Mk(yk+1,,yK,xb+DMk).

Let

xak=DK++Dk+1,0k<K,
and
xbk=DKM++Dk+1M,0k<K.

Then, for all k=K1,,1,

φ˜Mk(ypk+1,ypK,xbk)=minyk{h˜k·yk+E[φ˜Mk1(yk,ypk+1,,ypK,xbk+DMk)]}minyk{h˜k·yk+E[φ˜Mk1(yk,ypk+1,ypK,xak+DMk)]}=h˜k·ypk+E[φ˜Mk1(ypk,,ypK,xak+DMk)].

Apply this inequality repeatedly from k = K to k = 1,

φ˜MK=h˜K·ypK+E[φ˜MK1(ypK,DMK)]h˜K·ypK+E[h˜K1·ypK1]+E[φ˜MK2(ypK1,ypK,xaK1+DMK1)]h˜K·ypK++E[h˜1·yp1]+E[φ˜M0(yp1,,ypK,xa1+DM1)]k=1Kh˜k·E[ypk]c˜·E[zp]=φ˜(p),MK,
which proves (102). Therefore,
φ˜(p),MK+b·E[D¯]φ˜MK+b·E[D¯](φMK+ϵ)+b·E[D¯](φK+b·E[D¯])+2ϵ=C¯+2ϵ,
where the second and third inequalities follow from Theorem 5.

Proof of Lemma 7.

The proof requires a substantial amount of articulation. To facilitate understanding, we will first prove the special case with k = 1 before proving the general case in which k can vary from 1 to K.

Special Case (k=1). Consider φM1(y2,,yK,x), in which (94)–(97) specialize to

z(ω¯)        x+DM1(ω¯),    ω¯Ω10,A1z(ω¯)  y10,                   ω¯Ω10,Akz(ω¯)        yk,                 ω¯Ω10, 1<kK.(A.21)

The coefficient matrix on the LHS of constraints can be expressed as

A=(H,E)    where    H=(H1HN).(A.22)

All components of submatrix H are zero except for those in block matrices on the diagonal (here and below we will deviate slightly from the standard definition by referring to a submatrix on the diagonal as a block even if it is not a square one). The number of blocks, N, is the number of elements in Ω10. Each block Hi (1iN) is composed of coefficients associated with z(ω¯) of a particular ω¯, and thus has m+n1++nK rows and m columns. In particular,

H1==HN=(IA1.....AK).(A.23)

The matrix E is composed of coefficients of y1. It has n1 columns (the number of components in y1) and its components are either 0 or –1. Because every Hi (1iN) has an identity submatrix, E has a negative identity submatrix, and these submatrices are on different rows, A in (A.22) has full column rank.

In general, we define a matrix A as a finite coupling block matrix (FCBM) with characterization numbers (m,n1) if:

  1. With necessary permutations of rows and columns, A can fit into the pattern defined by (A.22);

  2. The matrix A is of full column rank;

  3. The submatrix H has a finite number of blocks (denoted by N); all blocks, Hi (1iN), have the same finite number of columns (denoted by m), but can have different number of rows;

  4. The submatrix E has a finite number of columns (denoted by n1), and its components are either 0 or –1.

Let A^ be a maximal nonsingular submatrix of a FCBM A. Because A is of full column rank, A^ has the same number of columns as A. Referring to (A.22), because each block Hi (1iN) in A is of full column rank (or otherwise A will not be so), A^ must contain at least m rows from each block. To be a square matrix, A^ must draw more rows than columns from some blocks, and the total number of these extra rows is exactly n1 (the number of columns of E). This means that the number of blocks with more than m rows in A^ is somewhere between one and n1. Correspondingly we can divide Hi (1iN) into two groups: group 1 are those with exactly m rows in A^, each forms a m-dimensional nonsingular submatrix. Group 2 are those with more than m rows in A^. Hence, by permuting rows and columns, we can write A^ as

A^=(H1E100  E2  H2),(A.24)
where H1 is a diagonal block matrix, where each block is a m-dimensional nonsingular matrix, H2 is a also a diagonal block matrix with no more than n1 blocks, where each block has more rows than columns, and (E1E2) is a submatrix of E with rearranged rows. Clearly A^ is a FCBM itself.

Under these specifications, Lemma 7 holds when k = 1 if the following statement is true:

For any FCBM A with characterization numbers (m,n1), where m and n1 can be any positive integer, let A^ be a maximal nonsingular submatrix of A. Let V be the set of values of elements of A. Let u be any vector with the same number of components as the number of rows in A^. Then there exists a constant κ, depending only on V and (m,n1), such that

||u||1κ||uA^||1.(A.25)

To prove this statement, let M1 be the set of indexes of nonsingular blocks in H1. We partition u into u1 and u2 such that when multiplying u with A^, components of u1 are multiplied with (H1 E1) and components of u2 are multiplied with (H2 E2). Similarly, we partition u1 into ui1 (iM1) where components of ui1 are multiplied with block Hi in H1. For each iM1, Hi is nonsingular, thus

||u1||1=iM1||ui1||1=iM1||ui1HiHi1||1κ1iM1||ui1Hi||1.(A.26)

Here Hi (iM1) are m-dimensional nonsingular matrices, with their components taking values from the finite set V, and κ1 is the maximum component value of all possible Hi1 (iM1).

Define G2(E2 H2). Because both A^ and H1 are nonsingular matrices, G2 is also nonsingular. Each block in H2 has m columns. For G2 to be a square matrix, H2 has n1 more rows than columns, so the dimension of G2 is between n1+m if H2 has one block with n1+m rows and (m+1)n1 if H2 has n1 blocks, each with m + 1 rows. Let κ2 be the maximum component of all possible formation of G21, where G2 is a nonsingular matrix with dimension between n1+m and (m+1)n1 and component values drawn from the finite set V. Then

||u2||1=||u2G2G21||1κ2||u2G2||1=κ2(||u2H2||1+||u2E2||1).(A.27)

It follows that

||uA^||1=iM1||ui1Hi||1+||u2H2||1+||u1E1+u2E2||1iM1||ui1Hi||1+||u2H2||1+||u2E2||1||u1E1||1iM1||ui1Hi||1+||u2H2||1+||u2E2||1n1||u1||1||u1||1κ1+||u2||1κ2n1||u1||1,(A.28)
where the second inequality holds because components of E1 are either 0 or –1, and the last inequality follows from (A.26) and (A.27). Also by (A.26),
||u1||1κ1iM1||ui1Hi||1κ1||uA^||1,
where the second inequality follows from the structure of A^ shown in (A.24). Thus, (A.28) implies that
||u||1=||u1||1+||u2||1(κ1κ2)(||uA^||1+n1||u1||1)(κ1κ2)(1+n1κ1)||uA^||1,(A.29)
and (A.25) is satisfied with
κ=(κ1κ2)(1+n1κ1).

General Case (1kK). We can extend the proof of (107) to cases with k=1,,K by induction. To do that, we first generalize the definition of FCBM with the following recursive characterizations:

  • A matrix A0 is stage 0 FCBM with characterization number m if it is a finite-dimensional matrix with m columns and full column rank;

  • A matrix Ak is a stage k FCBM (k1) with characterization numbers (m,n1,,nk) if it is of full column rank, and with necessary permutations of rows and columns, can be written as

    Ak=(Hk,Ek),(A.30)
    where
    • The matrix Hk has nonzero entries only in diagonal blocks, the number of which, denoted by Nk, can take any finite value. Specifically,

      Hk=(A1k1ANkk1);(A.31)
      where each block Aik1 (1iNk) is a stage-(k1) FCBM with characterization numbers (m,n1,,nk1); blocks might not be identical, but they all have the same number of columns;

    • The matrix Ek has a finite number of columns (denoted by nk) and its components are either 0 or −1.

For k=1,,K, the LHS constraint matrix of φMk(yk+1,,yK,x) is a FCBM. To show this, when k = 2, (94)–(97) specialize to

z(ω¯)x+D¯M2(ω¯),  ω¯Ω20,(A.32)
A1z(ω¯) y1(ω¯)0,               ω¯Ω21, ω¯Ω20, ω¯ω¯,(A.33)
A2z(ω¯)             y20,               ω¯Ω20,(A.34)
Akz(ω¯)yk,              ω¯Ω20, 2<kK.(A.35)

With necessary permutations of rows and columns, its LHS constraint matrix can be written as

A2=(H2,E2)=(A11E2AN21).

Here E2 is composed of coefficients of y2 and N2 is the number of elements in Ω21. Each Ai1 (1iN2) corresponds to a particular ω¯Ω21, and

Ai1=(A10E1AN10),
where E1 is composed of coefficients of y1(ω¯), N1 is the number of elements ω¯ in Ω20 such that ω¯ω¯. Corresponding to a particular ω¯,Ai0 (1iN1) are the same as His in (A.23), and composed of coefficients associated with z(ω¯). Thus, by definition, Ai1 (1in1) is a stage 1 FCBM with characterization numbers (m,n1). Moreover, because Ai0 (1iN1) contains an identity matrix (Constraints (A.32)), each E1 (1iN2) contains a negative identity matrix (Constraints (A.33)), E2 contains a negative identity matrix (Constraints (A.34)), and these submatrices have no overlapping rows, A2 has full column rank. Hence, A2 is a FCBM with characterization numbers (m,n1,n2).

For general k (1kK), the same can be shown by induction. Referring to (94)–(97). Let Nk be the number of elements in Ωkk1. Then we can make the induction assumption that coefficients of z(ω¯) (ω¯Ωk0) and yk(ω¯) (ω¯ω¯,ω¯Ωkk,ω¯Ωk0,1k<k) are given by a number of Nk stage-(k1) FCBMs with characterization numbers (m,n1,,nk1), which we denote by Aik1 (1iNk). Coefficients of yk, which are either −1 or 0, are given by matrix Ek, which has nk columns. Thus, with necessary permutations of rows and columns, the LHS constraint matrix of φMk(yk+1,,yK,x) can be written as

Ak=(A1k1EkANkk1).

Because every column in Constraints (94), (95), and (96) are covered by an identity or negative identity matrix and rows of these matrices do not overlap, by definition Ak is a FCBM with characterization numbers (m,n1,,nk).

Let A^k be a maximal nonsingular submatrix of Ak (1kK). Then following the same reasoning that leads to (A.24), A^k and Ak must have the same number of columns because Ak has full column rank. By (A.30) and (A.31), for i=1,,Nk,A^k contains either a maximal nonsingular submatrix of Aik1 (the rank of the submatrix equals the column rank of Aik1) or a submatrix that includes every column of Aik1 and has more rows than columns. The total number of extra rows is nk for A^k to be nonsingular. Hence A^k can be written as

A^k=(H1k  E1k  00  E2k  H2k),(A.36)
where H1k is a diagonal block matrix, with each block being a nonsingular submatrix of Aik1 for some i (1iNk), H2k is a non-square diagonal block matrix, where each block is a submatrix of Aik1 for some other i (1iNk), and has more rows than columns, and (E1kE2k) is composed of a subset of rows in Ek. The number of blocks H2k ranges from one to nk.

Under the previous specifications, the lemma holds for all k (1kK) if the following statement is true:

For k=1,,K, let Ak be a stage-k FCBM with characterization numbers (m,n1,,nk), where m,n1,,nk can be any positive integers. Let A^k be a maximal nonsingular submatrix of Ak. Let V be the set of component values in Ak. Let u be any vector with the same number of components as the number of rows in A^k. Then there exists a constant κ, depending only on V and (m,n1,,nk), such that

||u||1κ||uA^k||1.(A.37)

We have already shown in (A.29) that the previous statement is true for k = 1, and thus can use induction to prove the same for k > 1:

Assume that (A.37) holds for any maximal nonsingular submatrix of a stage-(k1) FCBM (k > 1) with any finite and positive characterization numbers. Let Ak be a stage-k FCBM with characterization numbers (m,n1,,nk1,nk). Recall that by permuting rows and columns, a maximal nonsingular matrix of Ak can be written as

A^k=(H1k  E1k  00  E2k  H2k),(A.38)
where H1k is a diagonal block matrix, where each block is a nonsingular stage-(k1) FCBM with characterization numbers (m,n1,,nk1),H2k is a diagonal matrix, where each block is also a stage-(k1) FCBM with characterization numbers (m,n1,,nk1) but has more rows than columns, and (E1kE2k) is a matrix with nk columns and the values of its components are either −1 or 0. Let blocks in H1k be indexed and let M1k be the index set. Denote these blocks by A^k1,i (iM1k), where the first superscript shows the stage and the second one identifies a particular block.

We partition the vector u into u1 and u2 such that in the product of u and A^k, components of u1 and u2 are multiplied with rows in (H1k E1k) and (E2k H2k), respectively. We also partition u1 into ui1 (iM1k) such that components of ui1 are multiplied with rows in A^k1,i (iM1k).

Because A^k1,i (iM1k) is a nonsingular stage-(k1) FCBM, its maximal nonsingular submatrix is the matrix itself. Therefore, by the induction assumption, there exists a constant κ1, depending only on (m,n1,,nk1) and V, such that

||u1||1=iM1k||ui1||1κ1iM1k||ui1A^k1,i||1.(A.39)

To bound u2, recall that H2k is a diagonal block matrix that contains no more than nk (non-square) blocks. Suppose that the actual number is N (1Nnk). As noted previously, each block is a stage-(k1) FCBM with full column rank. Let M2k be the index set of these blocks and denote them by Ak1,i (iM2k). Following the definition in (A.30) and (A.31),

Ak1,i=(Hk1,i Ek1,i),  iM2k.

For the ease of presentation, we let indexes in M2k take integer values i=1,,N. Thus, the lower right submatrix in (A.38) can be written as

(E2k H2k)=(Ak1,1       ........E2k   Ak1,i        ........... Ak1,N)=(Hk1,1  Ek1,1.......E2k     Hk1,i Ek1,i........ Hk1,NEk1,N).

Applying (A.30) and (A.31) recursively, every Hk1,i is a diagonal block matrix, where each block is a stage-(k2) FCBM with characterization numbers (m,n1,,nk2). Let M(i) be the number of blocks in Hk1,i (iM2k). Denote a block in Hk1,i by Ajk2,i (1jM(i),iM2k). Then with necessary permutations of rows and columns, (E2k H2k) can be written in a more expanded form as

(A1k2,1 ....AM(1)k2,1....A1k2,i....AM(i)k2,i.....A1k2,N....AM(N)k2,N|Ek1,1....Ek1,i    E2kEk1,N).

The submatrix to the left of | is a diagonal block matrix, where each block is a stage (k2) FCBM. The submatrix on the right has either 0 and –1 as its component value. Since E2k has nk columns, each Ek1,i (iM2k) has nk1 columns, and the number of components of M2k is Nnk, the latter submatrix has a finite number of Nnk1+nk columns. Also by (A.38), (E2k H2k) has full rank. Hence, (E2k H2k) fits the definition as a nonsingular stage (k1) FCBM with characterizations numbers of (m,n1,,nk2,Nnk1+nk).

By the induction assumption, there exists a constant κ2, which depends only on V and (m,n1,,nk2,Nnk1+nk) (and thus (m,n1,,nk1,nk) because 1Nnk), such that

||u2||1κ2||u2(E2k H2k)||1=κ2(||u2E2k||1+||u2H2k||1).(A.40)

The proof can then be completed by observing that

||uA^k||1=iM1k||ui1A^k1,i||1+||u1E1k+u2E2k||1+||u2H2k||1iM1k||ui1A^k1,i||1+||u2E2k||1||u1E1k||1+||u2H2k||1iM1k||ui1A^k1,i||1+||u2E2k||1nk||u1||1+||u2H2k||1iM1k||ui1A^k1,i||1+||u2E2k||1nkκ1iM1k||ui1A^k1,i||1+||u2H2k||1||u1||1κ1+||u2||1κ2nkκ1||uA^k||1,
where the second inequality holds because E1k has nk columns, the third inequality comes from (A.39), and the last inequality is implied by (A.39), (A.40), and the first equality in the previous expression. Thus,
||u||1=||u1||1+||u2||2κ1κ2(1+nkκ1)||uA^k||1. □

Appendix B. Illustration of the Inventory Policy

We use a very simple example, the N system, to illustrate our inventory policy developed in Section 4. Figure 1 in Section 2 shows that the system has two products and two components. One unit of component 1 is used by both products, and one unit of component 2 is used by product 2 only. Components have different lead times and L1<L2. Thus, K = 2. We also assume that c1>c2.

The formulation of the SP (13) for this system specializes to

φ2=miny2{h2y2+E[φ1(y2,D2)]}φ1(y2,x)=miny1{h1y1+E[φ0(y1,y2,x+D1)]}φ0(y1,y2,x)=maxz1,z2{c1z1+c2z2|z1x1,z2x2,z1+z2y1,z2y2}.

To maximize φ0(y1,y2,x),

z1*=x1 andz2*=x2(y1x1)y2.

Correspondingly, with y2 and x given, y1* is chosen to minimize

h1y1c1E[x1+D11]c2E[(x2+D21)(y1x1D11)y2],(B.1)
where the expectation is taken with respected to D1=(D11,D21). Substituting x with the realization of D2 in the resulting optimal objective value φ1(y2,x) and taking the expectation over D2,y2* is chosen to minimize
h2y2+E[φ1(y2,D2)].(B.2)

It follows that the replenishment policy prescribed in Algorithm 1 specializes to the following actions:

  1. Let y2* be the (constant) inventory position target for component 2 and follow a base stock policy to keep the actual inventory position at that level.

  2. At time t, where t is either L1 or any time afterward when there is a demand arrival:

    1. choose y1* to minimize (B.1) with x=D(tL2+L1,t), set component 1’s inventory position target to

      IP1(t)=y1*[D1(tL2+L1,t)+D2(tL2+L1,t)],
      and order (IP1(t)IP1(t))+ units of that component;

    2. schedule a future update of the inventory position target and a possible new replenishment at time t=tL1+L2. Repeat Step 2(a) when the system reaches t=t.

For the allocation policy, the procedure prescribed in Algorithm 2 specializes to the following actions:

At each time t, where t is either zero or any time afterward when there is a demand arrival or some previously ordered component is received:

  1. Set backlog targets at

    B1(t)=0 andB2(t)=(D1(tL1,t)+D2(tL1,t)IP1(tL1))+(D2(tL2,t)y2*)+,
    which correspond to the optimal solution to
    minB0{c1B1+c2B2|B1+B2Q1(t),B2Q2(t)},
    using
    Q1(t)=D1(tL1,t)+D2(tL1,t)IP1(tL1) andQ2(t)=D2(tL2,t)y2*.

  2. Use component 1 to serve demand 1 until either the component runs out or B1(t)=0. In the latter case, use the remaining amount of component 1 and the available amount of component 2 to serve as much demand 2 as possible.

In this process, the backlog target B1(t) does not depend on system state and B2(t) is the higher shortage level of the two components. Thus, the previous procedure can be simplified to a priority policy, that is, use available components to serve as much demand as possible, and when there is not sufficient component 1 to serve both demands, use the component for product 1 first.

Appendix C. Formulation and Perturbation of LP (93)–(97)

The SP in (92) has K + 1 stages. Correspondingly, we develop a scenario tree with K + 1 levels to encode information available at each stage. The top level (k = K) has a single node, which is the root of the tree. A node at lower levels k=K1,,1 is the root node of a subtree that starts from that level. On that subtree, the path from the root node to a descendant node at level k (0k<k) is encoded by a string

ω¯=ωkωk+1,
and DMl(ωl) is a realization of demand DMl (k<lk). Because DMl are independent, this specification applies to all subtrees that start from level k. Let Ωkk be the collection of these strings (0k<kK). Note that Ωkk depends on M, but we suppress this to ease the notational burden. For k<k, the probability associated with a path encoded by string ω¯Ωkk is
P(ω¯)=PMk(ωk)××PMk+1(ωk+1),(C.1)
where PMl(ωl) is the probability that DMl=DMl(ωl) (k<lk). For convenience, we also allow k=k, where Ωkk contains a single element, ω¯, corresponding to an empty string, and P(ω¯)=1. The total demand realized on the path ω¯=ωkω1 is then denoted by
D¯Mk(ω¯)=DMk(ωk)++DM1(ω1).

For any two strings ω1 and ω2, write ω1ω2 if ω1 is a prefix substring of string ω2. On any subtree that starts from level k (1kK), let ω¯ (ω¯Ωkk) encode a path between its root node and a descendant node at level k (0<kk). Let ω¯ (ω¯Ωkk) encode a path between the root node and a descendant node at a lower level k (0k<k). Then the former path is a segment of the latter one if and only if ω¯ω¯.

A tree starting from level k (0kK), as specified previously, and associated with data (yk+1,,yK,x) (x0), allows us to formulate φMk(yk+1,,yK,x) as the following LP (recall that P(ω¯)=1 for ω¯Ωkk as the set that contains a single element):

φMk(yk+1,,yK,x)=minyk,,y1,z{k=1kω¯ΩkkP(ω¯)hk·yk(ω¯)ω¯Ωk0P(ω¯)c·z(ω¯)},(C.2)
subject to
z(ω¯)         x+D¯Mk(ω¯),            ω¯Ωk0,(C.3)
Akz(ω¯)   yk(ω¯)         0,               ω¯Ωk0, ω¯Ωkk, ω¯ω¯, 1k<k,(C.4)
Akz(ω¯)          yk0,                        ω¯Ωk0,(C.5)
Akz(ω¯)         yk,                      ω¯Ωk0, k<kK.(C.6)

This is the same formulation as (93)–(97) given in Section 7.1. When k = K, (C.2)–(C.6) is the same problem defined in (92). When k < K, it defines subproblems of (92) at stage k (0k<K), with (yk+1,,yK) given by decisions already taken at stages K,,k+1 (0k<K), and x representing the amounts of existing demands.

We perturb coefficients in (C.2) to keep the optimal solution of the LP unique. Let h˜k be perturbed values of hk (1kk),b˜ be perturbed value of b, and referring to (C.1), let P˜Mk(ωk) be the perturbed values of PMk(ωk) (1kK). Consequently,

c˜=b˜+k=1K(Ak)h˜k andP˜(ω¯)=P˜Mk(ωk)××P˜Mk+1(ωk+1)
are perturbed values of c and P(ω¯) (ω¯Ωkk,0k<kK), respectively.

In each system, we assign same values to h˜k (1kK), b˜, and PMk(ω¯) (ω¯Ωkk,1kK). Hence, the same perturbed coefficients are used in φMk(yk+1,,yK,x), independent of data yk+1,,yK,x (0kK). These coefficients are chosen to satisfy the following conditions.

First, there are no two nonzero rational vectors rl(ω¯) (ωΩkl,1lk) and r0(ω¯) (ω¯Ωk0) such that

l=1kω¯ΩklP˜(ω¯)h˜l·rl(ω¯)+ω¯Ωk0P˜(ω¯)c˜·r0(ω¯)=0.(C.7)

To meet this condition, we can, for instance, add distinct irrational values to hk (1kK),b, and PMk(ω¯) (ω¯Ωkk,0k<kK). These irrational values are chosen to keep the ratio of any two perturbed coefficients irrational, so that their weighted sum cannot be zero if weights are rational numbers. The condition guarantees that the optimal solution of (C.2)–(C.6) is unique, because if not, then the LP would have two extreme-point solutions, which must be rational-valued because Ak and D¯Mk(ω¯) (1kK) in (C.3)–(C.6) are integers. Thus, by induction from k = K downward, yk (k<kK) on the RHS of (C.6) are rational vectors. Because the two solutions yield the same objective value, (C.7) is satisfied if we let rl(ω¯) be the difference in yl(ω¯) (ω¯Ωkl,1lk) and r0(ω¯) be the difference in z(ω¯) (ω¯Ωk0), which is a contradiction.

Second, these values can be kept sufficiently small; that is, they can satisfy (98) for any choice of Δ>0. This is easily achievable by dividing the aforementioned irrational values by a sufficiently large integer before adding them to the original coefficients.

References

  • Agrawal N, Cohen MA (2001) Optimal material control in an assembly system with component commonality. Naval Res. Logist. 48:409–429.Google Scholar
  • Akçay Y, Xu SH (2004) Joint inventory replenishment and component allocation optimization in an assemble-to-order system. Management Sci. 50:99–116.LinkGoogle Scholar
  • Atan Z, Ahmadi T, Stegehuis C, De Kok T, Adan I (2017) Assemble-to-order systems: A review. Eur. J. Oper. Res. 261:866–879.Google Scholar
  • Atar R, Keslassy I, Mendelson G (2019) Replicate to the shortest queues. Queueing Systems 92(1):1–23.Google Scholar
  • Bell SL, Williams RJ (2001) Dynamic scheduling of a system with two parallel servers in heavy traffic with resource pooling: Asymptotic optimality of a threshold policy. Ann. Appl. Probability 11:608–649.Google Scholar
  • Bramson M (1998) State space collapse with application to heavy traffic limits for multiclass queueing networks. Queueing Systems 30:89–140.Google Scholar
  • Bu J, Gong X, Yao D (2020) Constant-order policies for lost-sales inventory models with random supply functions: Asymptotics and heuristic. Oper. Res. 68:1063–1073.LinkGoogle Scholar
  • DeValve L, Pekeč S, Wei Y (2020) A primal-dual approach to analyzing ATO systems. Management Sci. 66:5389–5407.LinkGoogle Scholar
  • Doğru MK, Reiman MI, Wang Q (2010) A stochastic programming based inventory policy for assemble-to-order systems with application to the W model. Oper. Res. 58:849–864.LinkGoogle Scholar
  • Doğru MK, Reiman MI, Wang Q (2017) Assemble-to-order inventory management via stochastic programming: Chained BOMs and the M-system. Production Oper. Management 26:446–468.Google Scholar
  • Goldberg DA, Reiman MI, Wang Q (2021) A survey of recent progress in the asymptotic analysis of inventory systems. Prod. Oper. Manag. 30:1718–1750.Google Scholar
  • Goldberg DA, Katz-Rogozhnikov DA, Lu Y, Sharma M, Squillante MS (2016) Asymptotic optimality of constant-order policies for lost sales inventory models with large lead times. Math. Oper. Res. 41:898–913.LinkGoogle Scholar
  • Harrison J (1988) Brownian models of queueing networks with heterogeneous customer populations. Inst. Math. Its Appl. 10:147.Google Scholar
  • Harrison J (1996) The bigstep approach to flow management in stochastic processing networks. Stochastic Networks Theory Appl. 4:147–186.Google Scholar
  • Harrison J, López M (1999) Heavy traffic resource pooling in parallel-server systems. Queueing Systems 33:339–368.Google Scholar
  • Harrison J, Wein L (1990) Scheduling networks of queues: Heavy traffic analysis of a two-station closed network. Oper. Res. 38:1052–1064.LinkGoogle Scholar
  • Harrison JM, van Mieghem JA (1997) Dynamic control of Brownian networks: State space collapse and equivalent workload formulations. Ann. Appl. Probability 7:747–771.Google Scholar
  • Hausman W, Lee H, Zhang A (1998) Order response time reliability in a multi-item inventory system. Eur. J. Oper. Res. 109:646–659.Google Scholar
  • Huang K, de Kok T (2015) Optimal FCFS allocation rules for periodic-review assemble-to-order systems. Naval Res. Logist. 62:158–169.Google Scholar
  • Huh WT, Rusmevichientong P (2009) A nonparametric asymptotic analysis of inventory planning with censored demand. Math. Oper. Res. 34:103–123.LinkGoogle Scholar
  • Huh WT, Janakiraman G, Muckstadt JA, Rusmevichientong P (2009) Asymptotic optimality of order-up-to policies in lost sales inventory systems. Management Sci. 55:404–420.LinkGoogle Scholar
  • Karlin S, Scarf H (1958) Inventory models of the Arrow-Harris-Marschak type with time lag. Stud. Math. Theory Inventory Production 1:155.Google Scholar
  • Lu Y, Song J-S (2005) Order-based cost optimization in assemble-to-order systems. Oper. Res. 53:151–169.LinkGoogle Scholar
  • Lu L, Song JS, Zhang H (2015) Optimal and asymptotically optimal policies for assemble-to-order N- and W-systems. Naval Res. Logist. 62:617–645.Google Scholar
  • Lu Y, Song J-S, Zhao Y (2010) No-holdback allocation rules for continuous-time assemble-to-order systems. Oper. Res. 58:691–705.LinkGoogle Scholar
  • Mangasarian OL, Shiau T-H (1987) Lipschitz continuity of solutions of linear inequalities, programs, and complementarity problems. SIAM J. Control Optim. 25:583–595.Google Scholar
  • Meyer CD (2000) Matrix Analysis and Applied Linear Algebra, vol. 71 (SIAM, Philadelphia).Google Scholar
  • Nadar E, Akan M, Scheller-Wolf A (2014) Optimal structural results for assemble-to-order generalized M-systems. Oper. Res. 62:571–579.LinkGoogle Scholar
  • Plambeck EL, Ward AR (2006) Optimal control of a high-volume assemble-to-order system. Math. Oper. Res. 31:453–477.LinkGoogle Scholar
  • Reiman MI (1984) Some diffusion approximations with state space collapse. Modelling and Performance Evaluation Methodology (Springer, Berlin), 207–240.Google Scholar
  • Reiman MI (2004) A new and simple policy for a continuous review lost-sales inventory model. Unpublished manuscript.Google Scholar
  • Reiman MI, Wang Q (2012) A stochastic program based lower bound for assemble-to-order inventory systems. Oper. Res. Lett. 40:89–95.Google Scholar
  • Reiman MI, Wang Q (2015) Asymptotically optimal inventory control for assemble-to-order systems with identical lead times. Oper. Res. 63:716–732.LinkGoogle Scholar
  • Reiman MI, Wan H, Wang Q (2016) On the use of independent base-stock policies in assemble-to-order inventory systems with nonidentical lead times. Oper. Res. Lett. 44:436–442.Google Scholar
  • Rosling K (1989) Optimal inventory policies for assembly systems under random demands. Oper. Res. 37:565–579.LinkGoogle Scholar
  • Schrijver A (1986) Theory of Linear and Integer Programming (John Wiley & Sons, Hoboken, NJ).Google Scholar
  • Shapiro A, Dentcheva D, Ruszczyński A (2009) Lectures on Stochastic Programming: Modeling and Theory (SIAM, Philadelphia).Google Scholar
  • Song J-S, Zipkin P (2003) Supply chain operations: Assemble-to-order systems. Handbook Oper. Res. Management Sci. 11:561–596.Google Scholar
  • Stolyar AL, Wang Q (2022) Exploiting random lead times for significant inventory cost savings. Oper Res. 70(4):2496–2516.Google Scholar
  • van Jaarsveld W, Scheller-Wolf A (2015) Optimization of industrial-scale assemble-to-order systems. INFORMS J. Comput. 27:544–560.LinkGoogle Scholar
  • Wei L, Jasin S, Xin L (2021) On a deterministic approximation of inventory systems with sequential service-level constraints. Oper. Res. 69:1057–1076.LinkGoogle Scholar
  • Xin L, Goldberg DA (2016) Optimality gap of constant-order policies decays exponentially in the lead time for lost sales models. Oper. Res. 64:1556–1565.LinkGoogle Scholar
  • Zhang AX (1997) Demand fulfillment rates in an assembleto-order system with multiple products and dependent demands. Production Oper. Management 6:309–324.Google Scholar
  • Zipkin PH (2000) Foundations of Inventory Management (McGraw-Hill, New York).Google Scholar
  • Zipkin P (2016) Some specially structured assemble-to-order systems. Oper. Res. Lett. 44:136–142.Google Scholar