tapraid4/z3z-pom/z3z-pom/z3z00207/z3z2573d07a tillotsj S⫽8 3/14/07 8:44 Art: POM 2573 Input-cjd(cjd)
POMS
PRODUCTION AND OPERATIONS MANAGEMENT Vol. 16, No. 2, Summer 2007, pp. 000 – 000 issn 1059-1478 兩 07 兩 1602 兩 001$1.25
© 2007 Production and Operations Management Society
A Periodic Inventory Model for Stocking Modular Components Douglas J. Thomas • Donald P. Warsing Smeal College of Business Administration, Pennsylvania State University, University Park, Pennsylvania, USA North Carolina State University, College of Management, Raleigh, North Carolina, USA
[email protected] •
[email protected]
W
e study the benefit obtained by exploiting modular product design in fulfilling exogenous demand for both a complete assembly and its components in a service parts inventory system. Our goal is to reduce overall service system costs by allowing assembly and/or disassembly (A/D) to occur at some unit cost per A/D action. In an extensive set of computational experiments, we compare a naı¨ve stocking and operating policy that treats all items independently and ignores the modular product structure and related A/D capability to the optimal base stock policy, and to a policy that allows A/D from the naı¨ve stocking levels. While extensive computational analysis shows that the optimal base stock policy improves the system cost between 3 to 26% over the naı¨ve approach, simply allowing A/D from the naı¨ve stocking levels captures a significant portion (an average of 67%) of the naı¨ve– optimal gap. Our computational results demonstrate that the optimization shifts the component-assembly mix from the naı¨ve levels and that limiting A/D capacity affects this mix. Limiting A/D capacity can actually increase the expected number of A/D actions (versus the uncapacitated case), since the optimization shifts stocking levels to reduce the probability that “too many” actions will be required. Key words: inventory; service systems; modular products; base stock policies Submissions and Acceptance: Received November 2003; revision received August 2004, August 2005, November 2005, May 2006; accepted May 2006 by Jay Swaminathan.
1.
Introduction
field service context, products can exhibit modularity from the standpoint of both the product architecture, in that sub-assemblies or components of the product may exhibit stand-alone functionality (per the definition of modularity in Ulrich 1995), and the customer demands, in that a customer could order (through a field service call) either an assembled item or its components (along the lines of the definition of modularity given by Swaminathan 2001). The importance and potential impact that can result from decision making that accounts for modularity in managing service parts inventories can be significant. Recent discussions between the authors and senior managers at a Fortune 500 company in the enterprise computing industry revealed that this company’s service operation represents over 70% of its revenues. Motivated by such discussions, we investigate optimal stocking policies for parts used in field service of a multi-indenture product, a natural consequence of modular product design. A multi-indenture product is
As a consequence of mass customization strategies, modularity and enhanced configurability have become prevalent in product design (e.g., Feitzinger and Lee 1997; Ulrich 1995; Swaminathan 2001). Recent research (Squire et al. 2006; Hedge et al. 2005) has provided empirical evidence of the links between such customization strategies and operations performance. In fact, Hedge et al. (2005) demonstrate that for custom steel products, thresholds can exist for product- and process-based customization, beyond which the net benefit of customizing can turn negative. In this research, we formally explore and quantify the positive effect on inventory system performance that can result from exploiting product modularity in supplying field service operations. As Ramdas (2003) points out that in a broad conceptual framework for customization, modular product architecture, when combined with the process flexibility to exploit this modularity, can be an effective means of meeting customer needs. In a 1
tapraid4/z3z-pom/z3z-pom/z3z00207/z3z2573d07a tillotsj S⫽8 3/14/07 8:44 Art: POM 2573 Input-cjd(cjd)
2
Thomas and Warsing: A Periodic Inventory Model for Stocking Modular Components Production and Operations Management 16(2), pp. 000 – 000, © 2007 Production and Operations Management Society
composed of modular assemblies, which in turn are composed of modular sub-assemblies, and so on, until one reaches the indenture level of discrete components. What makes modularity particularly interesting in a service setting is the substitutability that it allows in stocking inventory for field service. Since a complex system could fail at any indenture level, demand for service parts is generated by various indenture levels. Moreover, although it may be possible to trace the failure down to some discrete component or set of components, the amount of time and effort needed for such diagnosis might not be feasible, and a decision might be made by a field service technician or by a customer service center helping a customer self-diagnose the failure to replace the higher level assembly as a more expedient measure. For a service system in which inventory can be stocked at various indenture levels and in which assembly and disassembly (hereafter abbreviated as A/D) are allowed, we find the best base stock policy. As we will discuss below, the optimal policy is not necessarily of base stock form, but such policies are easy to implement and common in practice. (In the computational experiments that follow, we calculate a bound on the gap between the best base stock policy and the optimal policy.) We compare the system costs for the best base stock policy with A/D allowed to those that would result from a more naı¨ve stocking and operating strategy, one which uses the simple newsvendor-based stocking levels of each component and assembly and ignores the possibility of A/D. Furthermore, we break down the gap between this naı¨ve approach and the best base stock policy to show how much of the overall benefit is generated by taking advantage of A/D without adjusting the naı¨ve stocking levels. Our discussions with high-tech companies confirm that they implicitly recognize the value of stocking multi-indenture service parts at both their assembly and component levels. An important aspect of such an approach is that A/D may be performed to shift inventories from assemblies to components and back as necessary, provided that the costs of A/D make such actions reasonable. When A/D actions can occur and are utilized, an inventory pooling benefit is obtained, though at the expense of A/D costs. In our discussions with practitioners, however, we have not encountered any firms that apply rigorous quantitative rules to take advantage of such A/D capabilities and account for the tradeoffs. In fact, one of the companies to whom we spoke indicated that, although they knew that A/D actions were feasible for some of their service parts, they did not take advantage of them. We speculate that an unwillingness to use A/D in managing inventory might stem from an unwillingness to allow that much discretion “in the trenches,” perhaps
for fear of “messing up” inventory levels on certain items in an attempt to improve them on others. Our objectives for this research are to do the following: • In a service parts environment, develop, optimize, and analyze a base stock inventory decision model that explicitly incorporates options for assembly and disassembly, explicitly reflects the costs of these options, and explicitly accounts for exogenous component demand for both assemblies and components. • Explicitly compare the cost performance of optimal base-stock policies with naı¨ve base-stock policies that either allow or disallow A/D actions. In the next section, we discuss the academic literature that is relevant to our research, focusing on the literature that describes the pooling benefits that accrue from product modularity and the literature on service inventory management. In Section 3, we develop the mathematical model that is the focus of our research, and we present and discuss a number of approaches to solve our model. In doing so, we carefully explain the logic of the decision rules that dictate the use of, and the benefits obtained from, A/D operations in our periodic inventory system. In Section 4, we present the results of a series of computational experiments to draw out insights about how various solutions compare under different cost and demand conditions. Finally, in Section 5, we summarize our results and insights and discuss possible extensions.
2.
Literature Review
There are several streams of research that are relevant to our work. In this section, we review some important previous work in the areas of Spare Parts Inventory Management, Demand Substitution, Component Commonality, Remanufacturing, and Assembly Systems. 2.1. Spare Parts Inventory Management Some of the most well-recognized work in service parts inventory management was done by Sherbrooke, and most of that work is summarized in the volume he published in 1992 (Sherbrooke 1992). In his work with Rand Corporation, and later with the Logistics Management Institute (LMI), analyzing the service parts supply systems of the U.S. Air Force, Sherbrooke developed an inventory management system called METRIC (M គ ulti-Eគ chelon Tគ echnique for R គ ecoverable Iគtem C គ ontrol). The METRIC approach takes into account the effects of item-level stocking decisions on all of the other items in the system, specifically with regard to how they jointly impact the expected percentage of installed products that are serviceable (or operational) at any point in time; i.e., the operational availability of the system.
tapraid4/z3z-pom/z3z-pom/z3z00207/z3z2573d07a tillotsj S⫽8 3/14/07 8:44 Art: POM 2573 Input-cjd(cjd) Thomas and Warsing: A Periodic Inventory Model for Stocking Modular Components Production and Operations Management 16(2), pp. 000 – 000, © 2007 Production and Operations Management Society
Various academic researchers have extended Sherbrooke’s seminal work on the METRIC model. Graves (1985) suggests an alternative approximation procedure to set multi-echelon stocking levels under Poisson demand and demonstrates that, in a two-echelon setting, this procedure generates the stocking level that minimizes backorders at the service depot for a given item more often than the METRIC model. Other researchers have similarly used METRIC as a basis for more extensive models of service systems, such as MOD-METRIC (Muckstadt 1973) and VARI-METRIC (Slay 1984). These particular variants address the multi-indenture aspect of many service parts networks, meaning that the systems supported can fail and be repaired at various levels (e.g., sub-systems like an engine or individual components like a crankshaft). The model we present in this paper focuses particularly on such multi-indenture structures. Indeed, the complexity of the problem of determining stocking policies for service parts is compelling and, considering its various aspects—multi-item, multi-echelon, and/or multi-indenture— has been and continues to be an active area of research. While many researchers have focused on and extended the fullsystem approach of METRIC or developed other fullsystem approaches (e.g., Cohen et al. 1989), no one has, to our knowledge, stepped back to investigate the value of the flexibility afforded by service parts modularity and the capability to move between components and assemblies through A/D operations. Our research focuses on a building-block approach to improving service stocking decisions in multi-indenture environments. In this paper, we focus on understanding the benefits of formally specifying rules for A/D and the level of benefit in system cost that these operations can provide. 2.2. Demand Substitution An important aspect of studying the pooling effects of inventory planning across indenture levels is the ability to explicitly plan for an assembly to substitute for a component, or vice versa. The effect on inventory planning of having some inventory items substitute for others has been studied by a number of previous researchers. Chand et al. (1994) generalize the segmented substitution policy presented by Pentico (1976), wherein components are grouped into “segments” such that the highest-numbered item in each segment can fulfill demand for all lower-numbered items. Two conditions are proved: (1) For any item j ⱖ i, either all of part i demand is met from the stock of component j or none of it is. (2) For any j ⬎ i, if the demand for part i is met from the stock of part j, then demands for all parts in {i, i ⫹ 1, . . . , j} are met from the stock of part j. We should point out, however, that condition (1) holds only as a consequence of assuming
3
a deterministic EOQ environment. Interestingly, Drezner et al. (1995) find that, for a two-product substitution problem, full substitution is never optimal, though it is “essentially” optimal as the holding cost of the substitute product becomes infinitely large. Gurnani and Drezner (2000) extend the work of Drezner et al. (1995) to consider an n-product substitution problem. In this version of the problem, however, they assume that transferring demand to a higher-indexed substitute product, at some cost T ⬎ 0, results in lower holding cost, an assumption that might be hard to justify in practice. Bassok et al. (1999) exploit similar inter-product parameter differences to develop a greedy algorithm for solving a profit-maximizing formulation of the substitution problem. The essence of these inventory substitution models, however, is to trade substitution costs for lower end item holding costs and/or higher end item margins, which is very different from our approach, where no final substitution is allowed in meeting item demands. In contrast to most other work on inventory substitution, Bassok et al. (1999) excepted, Weng (1999) incorporates backorder costs in a more general model that analytically compares the expected cost of a distribution system employing joint buffer stock for more expensive, substitutable items to the expected cost of distributing only demand-specific items. Weng finds that (1) more extensive coverage by the most substitutable product (i.e., more of these products being supplied by the retailer) leads to greater benefit in using joint buffer stock, and (2) as the ratio of the cost of the most substitutable product to the cost of the specific products grows, the benefit of joint buffer stock declines as the service level target increases. 2.3. Component Commonality The literature on component commonality displays a similar mix of backorder-inclusive and backorder-exclusive models as the inventory substitution literature. The component commonality research also focuses on reducing stocking levels by pooling demand uncertainty for a common component across the products that use it. In this vein, Baker et al. (1986) present an inventory model of a two-product system with each product composed of either two unique components or one unique and one common component. Under independent, uniform demands for the two products, they show that, while using a common component in place of two of the unique components decreases total safety stock levels across all components, the required stocking levels of the remaining unique components actually increase slightly. Gerchak et al. (1988) build on this prior work and extend it to inventory systems with n products, each using a unique component and a shared common component, with an arbitrary joint distribution for product demands. This work, how-
tapraid4/z3z-pom/z3z-pom/z3z00207/z3z2573d07a tillotsj S⫽8 3/14/07 8:44 Art: POM 2573 Input-cjd(cjd)
4
Thomas and Warsing: A Periodic Inventory Model for Stocking Modular Components Production and Operations Management 16(2), pp. 000 – 000, © 2007 Production and Operations Management Society
ever, and that of Baker et al. (1986) focus solely on minimizing component stocking levels, subject to service constraints, and not on minimizing the total costs of managing the production and inventory system. Hillier (2000) extends these earlier results and uses a more comprehensive objective function to demonstrate that in a multiple-period setting, increased component costs arising from commonality eventually overtake the savings from safety stock reduction. More recently, Mirchandani and Mishra (2002) return to the more parsimonious model of Gerchak et al. (1988) and generalize it by incorporating component usage levels and allowing prioritization of end products in computing common and product-specific component stocking levels. They demonstrate that this extension alters the structure of the probability distributions for component requirements and affects the inventory tradeoff between common and product-specific components. Although there is some similarity in the poolingreduction aspects of the commonality research and the work we present in this paper, there are some important distinctions. First, in our service system, customers may demand either components or assemblies. Second, beyond assembly of component modules to satisfy demand for assemblies, our model also allows disassembly to satisfy demand for components. 2.4. Remanufacturing In the literature on remanufacturing, disassembly to fulfill component demands is a commonly encountered problem. As part of a much larger materials planning system for remanufacturing, Ferrer and Whybark (2001) develop a two-stage linear programming formulation to first determine the number of cores (field items to be remanufactured) to buy and then feed the result of this decision to an LP to determine how many cores to disassemble to generate component parts for remanufacturing assemblies that share the components. In a similar vein, Meacham et al. (1999) use various algorithmic techniques to solve large-scale LP formulations that find maximum revenue disassembly configurations in both single- and multiple-product settings. They determine the optimum extent of disassembly when components can be recovered in remanufactured products or when the sub-assemblies built from those components could otherwise be sold on the open market. To our knowledge, however, the remanufacturing literature does not consider any problems that are truly parallel to the focus of the research in this paper, one that incorporates assembly and disassembly as a means of pooling end-level customer demands for both components and their parent assemblies.
2.5. Assembly Systems In contrast to the work above, Swaminathan and Tayur (1998) consider a new product manufacturing situation in which a wise choice of assemblies from components—partially configured products or “vanilla boxes,” in their terminology—leads to an improvement in the operating cost of an assemble-toorder production system. They formulate a two-stage stochastic program that first determines the best stock levels of “vanilla boxes” prior to demand revelation, and then determines the optimal final assembly schedule after observing demand. Swaminathan and Lee (2003) provide a detailed review of research models and advancements in the area of postponement, especially those related to postponement-based assembly strategies and the effects of product design on the ability to implement them. Rao et al. (2004) consider the opposite approach to managing build-to-order manufacturing, building “cadillac boxes” in advance of demand and then either stripping out excess components once product demand is revealed, or simply providing an “over-specified” product (i.e., allowing downward substitution in addition to the product build/mix problem). In presenting a downward substitution problem with a set up cost for offering a product, Rao et al. extend the substitution literature in that dimension. Given the complexity of the problems Swaminathan and Tayur (1998) and Rao et al. (2004) consider, however, the comparisons they make in their computational studies differ from ours. In the case of Swaminathan and Tayur (1998), they compare their optimal solutions only to naı¨ve solutions (maketo-stock or build-to-order). Specification of relatively general solution approaches between naı¨ve and optimal for the problem they consider would be difficult, and perhaps arbitrary. In the case of Rao et al. (2004), they compare only optimal stocking solutions, some with limitations imposed on the types of recourse actions that may be taken; however, a true naı¨ve solution approach would be hard to define for the problem they consider. In contrast, we study in this paper a reasonably straightforward service system and compare naı¨ve, “better than naı¨ve,” and optimal policies. In the sections that follow, we show that our problem can also be formulated as a stochastic program. However, a complicating factor in our problem is that assembly decisions are not irrevocable, since we allow assemblies to be disassembled into components, if doing so would reduce net shortage costs. This complicating factor could lead to an excess of components, which could also lead to a relatively complex set of rules for how to manage this excess. Since our intent, at this stage of the research, is simply to understand the benefit of exploiting the flexibility afforded by modular product design in managing service inventories. Furthermore, to provide insights regarding the
tapraid4/z3z-pom/z3z-pom/z3z00207/z3z2573d07a tillotsj S⫽8 3/14/07 8:44 Art: POM 2573 Input-cjd(cjd) Thomas and Warsing: A Periodic Inventory Model for Stocking Modular Components
5
Production and Operations Management 16(2), pp. 000 – 000, © 2007 Production and Operations Management Society
value of using some simple strategies for doing so, in this paper we focus on a relatively specific version of the problem.
3.
Model Formulation
We study a periodic, order-up-to system for a single assembly with multiple components. The sequence of events in a period is as follows: (i) the order from the previous period arrives, (ii) demand is observed, (iii) decisions regarding which demand to satisfy are made, (iv) products are assembled/disassembled and shipped, (v) replenishment orders are placed, to arrive at the beginning of the next period, and (vi) if excess component stock has been created through disassembly, action is taken to reduce component stock levels to their base stock targets. As we will see below, this problem can be modeled as a two-stage stochastic program with recourse. This formulation applies to a single assembly composed of k components, meaning that k ⫹ 1 stocking decisions must be made (components and assembly). At stage one, the k ⫹ 1-vector of stock levels, s, must be selected. At the recourse stage, decisions must be made regarding assembly and disassembly actions and allocation of inventories to demands. In our motivating environment, any shortage results in a field service failure; thus, we use a single stockout cost, p, for all shortages. Since component and assembly replenishment times are assumed to be zero and supply is not capacitated or random, this shortage cost can be interpreted as either a lost-sales cost or a backlog cost. As we demonstrate below, this common-penalty-cost assumption simplifies the analysis of the computational experiments. Our model can, however, accommodate different shortage costs for different component or assembly shortages. Other cost parameters include a vector of per-unit holding costs, h, and per-unit assembly and disassembly costs, cA and cD. We assume that inventory holding cost is based on the maximum (beginning) inventory in a period. In addition to the per unit costs cA and cD, we include a capacity limit C on the number of A/D actions that can be done in a single period. In order to guarantee a renewal to the base stock levels each period, we introduce a per-unit cost, cR, of redispositioning stock of disassembled components in excess of their base stock levels. This “redisposition” action is necessary in our model since the ending inventory level for a component might exceed its base stock level. For example, in a system with two components, a and b, and a complete assembly, ab, if demand for component a is greater than the supply of a’s and demand for component b is zero, any disassembly of ab’s to satisfy demands for a will increase the stock level of b above the base stock level for b. The
redispositioning activity, at cost cR per unit, forces a renewal. This activity may entail either (1) returning excess stock to the source, or (2) ordering appropriate companion components to assemble with the component(s) in excess. In the former case, the cost cR is incurred for every unit of every component in excess of its base stock level. In the latter case, which we assume in our model, a cost of cR is incurred for every unit of the component having the largest excess above its base stock level. A base stock policy will be optimal when cR ⫽ 0 but may not be optimal when cR is strictly positive. A better class of policies might be to permit inventory levels to “drift” above some target level and only take redisposition action if some maximum inventory level is reached. Henig et al. (1997) show such a two-parameter policy to be optimal for a single-item inventory system with committed transportation capacity. In our setting, however, such a policy is not likely to be optimal due to the interaction between components. That is, the optimal ordering decision for component a depends on the inventory position for component b. Still, a two-parameter policy may be relatively easy to implement and may improve over a strict base stock policy. Here, we analyze only the base-stock policy, noting that computation of the optimal policy, or even the simpler two-parameter (sគi , si) policy, would require substantial computational effort. We save this more extensive modeling and analysis effort for future research. In Section 4, however, we computationally investigate the potential difference in total cost between the optimal policy and the best base stock policy. The problem of minimizing holding, shortage, assembly, and disassembly costs is modeled as a singleperiod stochastic linear program with recourse. Define si to be the stocking levels for the assembly and components, and define xi to be the number of units of demand for the assembly and components that will be satisfied in the period. Let A and D be the numbers of units assembled and disassembled, respectively, and let R be the number of redisposition assemblies performed to return component inventory to base stock levels. Let demand be represented by the (k ⫹ 1)vector d. Thus, for our system with a single assembly (indicated by subscript 0) and k components, the problem may be stated as follows:
冉冘
冊
k
P : min TC共s兲 ⬅ s
hi si ⫹ E[Q(s, d)]
i⫽0
(1)
where
冘 共d ⫺ x 兲 ⫹ c D ⫹ c A ⫹ c R k
Q共s, d兲 ⫽ min p x, A,D,R
i
i⫽0
i
D
A
R
(2)
tapraid4/z3z-pom/z3z-pom/z3z00207/z3z2573d07a tillotsj S⫽8 3/14/07 8:44 Art: POM 2573 Input-cjd(cjd) Thomas and Warsing: A Periodic Inventory Model for Stocking Modular Components
6
Production and Operations Management 16(2), pp. 000 – 000, © 2007 Production and Operations Management Society
s.t. xi ⫹ A ⫺ D ⱕ si
for i ⫽ 1, . . . , k
(3)
x0 ⫺ A ⫹ D ⱕ s0
(4)
A⫹DⱕC
(5)
D ⫺ A ⫺ xi ⫺ R ⱕ 0 xi ⱕ di
for i ⫽ 1, . . . , k
for i ⫽ 0, . . . , k D, A, R ⱖ 0
(6) (7) (8)
The objective function TC(s) denotes the total cost for base stock s and optimal A/D recourse actions. Constraints (3 to 4) enforce that units shipped cannot exceed component or assembly availability. Note that component availability is increased by disassembly actions and reduced by assembly actions; the opposite is true for complete assemblies. Constraint (5) enforces the capacity limit on the number of actions performed. Constraint (6) forces redisposition when ending component inventory exceeds the base stock level. As noted above, redisposition could also be achieved by returning components to the supplier. If this were the case, the formulation below would be modified to include Ri , the number of units of component i returned to the supplier, potentially with different i redisposition costs cR . In this formulation, we assume that the capacity limit applies to the total number of A/D actions, noting that it is an easy modification to weight these actions by different resource consumption rates. We also assume that assemblies performed for redisposition do not count against this capacity limit since they could be performed prior to the observation of demand in the next period. We note that while the stochastic linear programming formulation can be modified relatively easily to accommodate more complicated product architectures, relaxing the assumption of replenishment between each demand realization substantially increases the computational burden. The recourse linear program determines the best actions and allocations in a myopic sense. When the system renews immediately following this allocation (as is the case with zero replenishment lead time and forced redisposition), this myopic approach is best. If multiple action and allocation decisions must be made
Table 1
between replenishments (e.g., daily action and allocation decisions with weekly replenishment), then our two-stage stochastic LP would become a multi-stage stochastic LP. Finally, we note here that for a two-stage stochastic linear program with fixed recourse, the objective of the recourse LP, Q, is a piecewise-linear, convex function of the stocking levels s (for details, see Theorem 5 in Birge and Louveaux 1997: pp. 89 –90). Since the expectation operator preserves this convexity and the inventory holding costs are linear in s, problem P is therefore convex in s. 3.1.
Possible Actions—Two Component, Single Assembly For the remainder of the paper, we focus on the simplest version of a modular assembly: a single assembly, called ab, composed of two components, a and b, with stationary demand distributions (not necessarily independent) for all three items and zero lead time for resupply. For this special case, we can explicitly characterize the optimal actions that would be taken for any demand realization (i.e., the solution to the linear program Q above). This characterization, in turn, allows us to derive an expression for the expected total cost as a function of the stock level decisions. When assembly and disassembly are permitted, there are five situations where appropriate A/D actions can prevent additional shortages in step (iii) of the sequence of events (where decisions are made regarding which demands to satisfy) in the operating process laid out above—four involving disassembly and one involving assembly. These five types of actions and the benefit of taking each action are summarized in Table 1 and explained in detail below. Note that some Type 3 and 4 actions may force a redisposition action, thus reducing the net benefit. Holding costs are not affected since those are incurred based on stock levels at the beginning of the period. Given our assumed timeline for each period, demand is known at the point that an A/D decision must be made. In setting the component and assembly stocking levels (which drive the optimal number of A/D actions), however, demand is treated as a random variable. Hence, at the point at which stocking levels are set, the number of A/D actions is also a
Five Possible Action Types
Type
Situation
Action
1 2 3 4 5
Excess ab, shortage of a and b Shortage of a, b and ab Shortage of a, excess of ab and b Shortage of b, excess of ab and a Shortage of ab, excess of a and b
Disassemble ab, ship a and b Disassemble ab, ship a and b Disassemble ab and ship a Disassemble ab and ship b Assemble and ship ab
Net benefit 2p p p p p
⫺ ⫺ ⫺ ⫺ ⫺
cD cD cD or p ⫺ cD ⫺ cR cD or p ⫺ cD ⫺ cR cA
T1
tapraid4/z3z-pom/z3z-pom/z3z00207/z3z2573d07a tillotsj S⫽8 3/14/07 8:44 Art: POM 2573 Input-cjd(cjd) Thomas and Warsing: A Periodic Inventory Model for Stocking Modular Components
7
Production and Operations Management 16(2), pp. 000 – 000, © 2007 Production and Operations Management Society
random variable. We use Ti to denote the random variable that describes the number of A/D actions of type i; a realization of this random variable (once demand is revealed) is denoted by ti. We use Da, Db, and Dab to denote the random variables describing demand for components a and b and assembly ab, respectively, and we use da, db, and dab to denote the realizations of these random variables. First, we present expressions for actions that are not capacity constrained. We then discuss how the capacity level affects the expected number of actions. Type 1: Disassemblies that Prevent Two Shortages. If a firm has excess supply of complete assemblies and demand for each component exceeds what is currently on hand, then a disassembly action will prevent two shortages. This action is worthwhile when 2p ⬎ cD. The number of disassemblies of this type is t 1 共s a , s b , s ab 兲 ⫽ min 关共da ⫺ sa 兲⫹, 共db ⫺ sb 兲⫹, 共sab ⫺ dab 兲⫹兴. (9) Note that the total number of disassemblies can be expressed as the middle value of (da ⫺ sa)⫹, (db ⫺ sb)⫹ and (sab ⫺ dab)⫹, potentially capped by the capacity limit C or the total number of available assemblies sab. The minimum defined above in Equation 9 gives the number of disassemblies that stop two shortages. The middle value (potentially capped) minus the minimum value gives the number of disassemblies that stop only one net shortage. There are three types of such disassemblies. Type 2: Disassemblies that Stop Two Component Shortages but Create an Assembly Shortage. If a firm has demand in excess of all three items, disassembly will create an additional shortage of a complete assembly, but will prevent two component shortages, a net reduction of one shortage. This occurs when (sab ⫺ dab)⫹ is the minimum valued term in Equation 9. Such disassembly is worthwhile when p ⬎ cD, and the number of actions of this type is given by t 2 共s a , s b , s ab 兲 ⫽ min 关共da ⫺ sa 兲⫹, 共db ⫺ sb 兲⫹, sab 兴 ⫺ t1 共sa , sb , sab 兲. (10) Type 3: Disassemblies that Stop a Component a Shortage. If a firm has excess supply of complete assemblies and is short for only one of the two components, in this case component a, disassembling will prevent a component shortage. This occurs when (db ⫺ sb)⫹ is the minimum valued term in Equation 9. Such disassembly is worthwhile when p ⬎ cD (but see the note below regarding Type 6 actions). The number of actions of this type is t 3 共s a , s b , s ab 兲 ⫽ min 关共da ⫺ sa 兲⫹, 共sab ⫺ dab 兲⫹兴 ⫺ t1 共sa , sb , sab 兲.
(11)
Type 4: Disassemblies that Stop a Component b Shortage. The expression for t4 is identical to t3 with the roles of components a and b interchanged, as follows: t 4 共s a , s b , s ab 兲 ⫽ min 关共db ⫺ sb 兲⫹, 共sab ⫺ dab 兲⫹兴 ⫺ t1 共sa , sb , sab 兲.
(12)
Type 5: Assemblies. Assembly will only take place when a firm has excess supply of both components and excess demand for assemblies. Otherwise, an assembly could only prevent an ab shortage at the expense of a component shortage, resulting in no net shortage reduction. Performing assembly prevents a shortage, saving p, but incurs the cost cA; thus, assembly will only be performed when p ⬎ cA. The expression for the number of assemblies performed is t 5 共s a , s b , s ab 兲 ⫽ min 关共sa ⫺ da 兲⫹, 共sb ⫺ db 兲⫹, 共dab ⫺ sab 兲⫹兴. (13) Type 6 and 7: Redispositions or Assemblies Necessary to Return to Base Stock Levels. If the number of Type 1 plus the number of Type 3 disassemblies is greater than db, then redisposition actions will be required to return to base stock levels since ending inventory of component b will be greater than sb: t 6 共s a , s b , s ab 兲 ⫽ 关t 1 共s a , s b , s ab 兲 ⫹ t 3 共s a , s b , s ab 兲 ⫺ d b 兴 ⫹ . (14) Note that if p ⬎ cD but p ⬍ cD ⫹ cR, then a firm will only perform t3 ⫺ t6 Type 3 disassemblies instead of t3. That is, they will only perform this type of disassembly if it will not force a redisposition action. If p ⬍ cD, a firm would not perform any Type 3 disassemblies, so there would never be a need for redispositions. t7 is symmetrically defined for redispositions of component a. Note that for our two-component problem, Type 6 and Type 7 redisposition actions are mutually exclusive. As noted above, these expressions ignore the capacity limit. Since assembly and disassembly actions are mutually exclusive, one can simply represent total disassemblies as the middle value of {(da ⫺ sa)⫹, (db ⫺ sb)⫹, (sab ⫺ dab)⫹}, where this number of disassemblies is capped by the capacity level C and the stock level sab. The number of assemblies is capped by C. 3.2.
Computing Objective Function Values in Problem P The ti expressions presented above can be used to represent the optimal decisions for the recourse linear program, Q, in problem P. Assemblies, disassemblies, and redispositions are given by A ⫽ t5, D ⫽ t1 ⫹ t2 ⫹ t3 ⫹ t4, and R ⫽ t6 ⫹ t7, respectively, although some potential actions will not be exercised if they are not economically attractive. With A, D, and R known, the
tapraid4/z3z-pom/z3z-pom/z3z00207/z3z2573d07a tillotsj S⫽8 3/14/07 8:44 Art: POM 2573 Input-cjd(cjd)
8
Thomas and Warsing: A Periodic Inventory Model for Stocking Modular Components Production and Operations Management 16(2), pp. 000 – 000, © 2007 Production and Operations Management Society
values for demand satisfied, xi , are given by constraints (3), (4), (6), and (7). Specifically, xi is given by the largest number that satisfies those constraints. With xi specified, the penalty cost term of the recourse objective (2) in problem P can be stated explicitly as the product of p, the per-unit penalty cost, and the sum of the initial shortfalls in demand that would result without A/D actions, (di ⫺ si)⫹, and the shortfalls avoided by A/D actions, (2t1 ⫹ t2 ⫹ t3 ⫹ t4 ⫹ t5). Thus, expression (2) can be restated for the two-component case as follows:
4.
Q共s, d兲 ⫽ p关共da ⫺ sa 兲⫹ ⫹ 共db ⫺ sb 兲⫹ ⫹ 共dab ⫺ sab 兲⫹ ⫺ 共2t1 ⫹ t2 ⫹ t3 ⫹ t4 ⫹ t5 兲兴 ⫹ cA t5 ⫹ cD 共t1 ⫹ t2 ⫹ t3 ⫹ t4 兲 ⫹ cR 共t6 ⫹ t7 兲.
(15)
The overall objective function for problem P is the sum of the linear holding cost terms plus the expected value of Q. We describe our methods for solving this problem below. 3.3. Comparative Solutions to Problem P We wish to compare three solutions for this problem. First, we consider the case where A/D is ignored or not possible (i.e., forcing A ⫽ D ⫽ R ⫽ 0). In this case, the problem of choosing stocking levels reduces to solving three newsvendor problems. We call this the naı¨ve approach. As pointed out in the introduction, one of the companies we visited in developing our model is essentially using this approach even though A/D is possible. The solutions for the naı¨ve approach are easily obtained. Using the superscript N to represent the naı¨ve N N solution, simply set sN a , sb , and sab such that F a 共s aN 兲 ⫽
Gamma distributions. For this situation, all expected value terms in the total cost function as well as all terms necessary for first order derivatives can be obtained via numeric integration; details are provided in the appendix. We use a Gaussian Quadratures approach from Numerical Recipes (Press et al. 1997: p. 147) to perform the numeric integration. To find optimal solutions, we use a conjugate gradient optimization routine from Numerical Recipes (Press et al. 1997: p. 420).
p ⫺ ha p ⫺ hb p ⫺ h ab N 兲⫽ , F b 共s bN 兲 ⫽ , F ab 共s ab . p p p (16)
(The critical fractile is (p ⫺ h)/p rather than the more familiar p/(p ⫹ h) since holding costs are based on the beginning rather than ending stock levels.) This solution is the baseline solution to which we will compare solutions obtained from the other two methods. Second, if A/D is permitted, the simplest approach would be to use the stock levels as determined by (16), but permit A/D. As long as any individual A/D action is economically attractive (see conditions in Table 1), this approach will clearly outperform the naı¨ve approach by reducing shortages at the expense of some A/D actions. Hereafter, we refer to this policy as the N ⫹ A/D policy. Third, since problem P is jointly convex in s, a gradient optimization procedure can be used to find the unique minimum. In our computational analysis, we assume that demands are independent and follow
Computational Experiments
4.1. Data Generation In the previous section, we presented three different solution approaches for comparison. Here, we evaluate each of these across a variety of parameters, as follows: • In order to explore the general properties of the model, we use continuous demand distributions, which allow a more straightforward computation of the solutions. We consider independent Gamma distributions with parameters (␣ab, ab), (␣a, a), (␣b, b) 僆 {(2, 1), (2, 5)}, giving mean demand (variance) of either ␣ ⫽ 2 (␣2 ⫽ 2) or ␣ ⫽ 10 (␣2 ⫽ 50). The skewed shape of the Gamma distribution is representative of a typical service environment, with a higher probability of small demand values, but a heavy right tail that results in non-trivial probabilities of large values as well. Finally, we assume independent demand distributions across components and assemblies. In a multi-indenture field service setting, demands for components and complete assemblies built from those components are typically generated by independent diagnosis actions of failure events at independent field installations. Moreover, some of those diagnoses might allow the service technician to “drill down” to the component level, and some might end with a conclusion that replacing the complete assembly is the more expedient action. • We consider holding cost values such that hab ⫽ ha ⫹ hb. While this assumption is not required by the model developed in Section 3, it is a reasonable assumption when holding costs are driven by material costs. Furthermore, this assumption simplifies the specification of the experiments. We use ha ⫽ 1, and hb 僆 {1, 20}. • We consider a range of shortage costs values, with p 僆 {50, 75, 100, . . . , 275}. • We also consider a range of possible A/D costs, with (cA, cD) 僆 {(1, 1), (20, 20), (1, 20), (1, ⬁), (20, 1), (⬁, 1)}. The cases with infinite cost for either cA or cD represent situations in which assembly or disassembly is impossible (e.g., irreversible or de-
tapraid4/z3z-pom/z3z-pom/z3z00207/z3z2573d07a tillotsj S⫽8 3/14/07 8:44 Art: POM 2573 Input-cjd(cjd) Thomas and Warsing: A Periodic Inventory Model for Stocking Modular Components
9
Production and Operations Management 16(2), pp. 000 – 000, © 2007 Production and Operations Management Society
structive). Initially, we set the redisposition cost such that cR ⫽ cA, since our model assumes, but is not restricted to (see Section 3), resolution of component excess situations by ordering complementary components and assembling prior to the beginning of the next period. The list above represents our base set of experiments, which contains a total 840 cases. (This is not a full factorial experiment because certain parameter values result in identical problems. For example, the experiment with ha ⫽ hb ⫽ 1, cA ⫽ cD ⫽ 1, a ⫽ 1, and b ⫽ 5, and the experiment with the same values of h and c, but with a ⫽ 5 and b ⫽ 1, yield the same solutions with a and b interchanged. We eliminate these duplicates from the experiments.) We summarize the difference in outcomes between these cases and those with free redispositioning of excess components, cR ⫽ 0, noting that this latter case provides a lower bound on the expected cost of the optimal policy. In addition, we investigate situations in which disassembly is expensive, but still viable for preventing two component shortages; these cases have (cA, cD) 僆 {(1, 1.9p), (20, 1.9p), (⬁, 1.9p)}. This represents another 420 cases. While we allow an unlimited number of A/D actions in the base set of experiments, we also compare the base experiments to cases in which A/D capacity is limited to some percentage of expected total demand. Finally, we explore the effect of demand variability on the results.
T2
4.2. Comparison of Policy Outcomes The results of the base experiments are summarized in Table 2. Recall that these cases have unlimited A/D capacity (i.e., with C ⫽ ⬁, essentially removing Constraint (5) from problem P). The table shows the percentage improvement in total cost that results from using the N ⫹ A/D policy or the optimal base stock policy instead of the naı¨ve policy. Also shown is the Table 2
ratio of the N ⫹ A/D cost savings to the optimal savings (expressed as a percentage). The next three columns show the fill rate (i.e., the expected proportion of demand satisfied, as determined by expected overall demand and expected overall shortages) achieved by the N policy and how it compares to the N ⫹ A/D and base-stock-optimal policies. Finally, the table shows the reduction in inventory holding cost afforded by the optimal base stock policy as compared to the N and N ⫹ A/D policies. Across the base experiments, an A/D-capable, optimal base-stock policy generates a savings in total cost of approximately 12% over N, on average, 3% at minimum, and as much as 26%. (As an aside, we note that the optimal base stock solutions can be computed quickly, with average CPU time of 0.37 seconds and a maximum of 2.45 seconds across the 840 base cases, using compiled C code on a 2GHz Pentium 4 PC; other cases were similar in terms of computational time.) Approximately 67% of the overall savings from optimally solving P, on average, can be captured by simply allowing A/D from the N-base-stock solution. However, we caution against putting too much emphasis on the absolute magnitude of the savings from optimizing the base stock levels and/or allowing A/D actions. Our experiments are biased toward environments with high shortage costs relative to holding costs, such that the absolute benefit of avoiding shortages through A/D flexibility is greater than the absolute benefit of reducing inventory holding costs through pooling demands across components and assemblies. Comparisons of the relative effects on costs between the N ⫹ A/D and optimal policies across various parameter levels, however, generate some interesting insights. In the subsections that follow, we analyze in detail some of the important effects indicated by Table 2.
Outcome Averages by Category—cR ⴝ cA, A/D Capacity ⴝ ⴥ (840 Cases) % Savings in total cost over naı¨ve (N)
Category All Min Max p 僆 [50, 150], hb ⫽ 1 p 僆 [50, 150], hb ⫽ 20 p 僆 [175, 275], hb ⫽ 1 p 僆 [175, 275], hb ⫽ 20 (cA, cD) ⫽ (1, 1) (cA, cD) ⫽ (20, 20) (cA, cD) ⫽ (1, 20) (cA, cD) ⫽ (1, ⬁) (cA, cD) ⫽ (20, 1) (cA, cD) ⫽ (⬁, 1)
Fill rate—% pts above N
N ⫹ A/D
Optimal
N ⫹ A/D as % of opt
Fill rate (N )
N ⫹ A/D
Optimal
Inv cost—optimal % difference from N
8.26% 1.60% 16.39% 7.88% 7.57% 8.05% 9.37% 10.94% 9.09% 10.10% 5.32% 9.93% 4.16%
12.29% 2.80% 25.96% 12.97% 9.48% 14.89% 12.65% 14.50% 11.54% 14.12% 13.65% 13.12% 6.80%
67.18% — — 60.79% 79.93% 54.10% 74.08% 75.41% 78.80% 71.53% 38.96% 75.65% 61.17%
95.68% 75.01% 99.78% 99.11% 89.62% 99.66% 96.17% 95.68% 95.68% 95.68% 95.68% 95.68% 95.68%
1.36 0.04 5.98 0.50 2.62 0.21 1.61 1.68 1.68 1.68 0.82 1.68 0.63
1.02 0.00 7.95 0.26 2.36 0.10 0.94 1.11 1.20 1.12 1.10 1.14 0.44
⫺9.57% ⫺23.68% 3.81% ⫺12.01% ⫺4.26% ⫺14.08% ⫺9.67% ⫺10.83% ⫺9.18% ⫺10.68% ⫺10.58% ⫺10.15% ⫺6.01%
tapraid4/z3z-pom/z3z-pom/z3z00207/z3z2573d07a tillotsj S⫽8 3/14/07 8:44 Art: POM 2573 Input-cjd(cjd)
10
Thomas and Warsing: A Periodic Inventory Model for Stocking Modular Components Production and Operations Management 16(2), pp. 000 – 000, © 2007 Production and Operations Management Society
Two of these effects appear to be particularly important: First, we note that optimizing the base stock levels is most beneficial in cases with high penalty costs relative to holding costs, an effect that arises due to the optimization’s ability to pool demands across components and assemblies, and thereby reduce inventory levels while still improving service. Second, we note that when A/D costs are “asymmetric,” i.e., when one of assembly or disassembly is more costly or infinitely costly (impossible), the optimization of base stock levels is beneficial in adjusting the mix of components and assemblies to best take advantage of assembly and/or disassembly capability. 4.2.1. Cost-Service Tradeoffs. Note from Table 2 that the N ⫹ A/D policy provides, on average, an improvement of more than a full percentage point in fill rate over N, whereas optimal base-stock solutions provide a fill rate improvement of approximately one point while reducing inventory holding costs, on average. As indicated in the table, the maximum difference in inventory cost between the naı¨ve and optimal stocking policies is positive. Optimal inventory cost increases over naı¨ve inventory cost for only about 5% of the cases, and only when p ⫽ 50 and hb ⫽ 20. However, the average difference between optimal and na¨ıve inventory cost across all cases reflects a decrease of almost 10%. In terms of service across all 840 cases, the fill rate of the optimal base stock policy is never lower than that of the N policy. Clearly, these results indicate that the three policies reside on different cost-service frontiers, with the N ⫹ A/D policy improving service over N at the same level of inventory investment and the optimal policy providing higher service than N Figure 1
An example of cost-service tradeoffs.
with generally, though not always, less inventory investment. A cost-service frontier for our model provides a pictorial representation of the shape of the tradeoff between the explicit financial costs of holding inventory and paying for A/D actions and the costs implied by lower service performance for a given level of inventory holding and A/D cost investment. Examples of this tradeoff are shown in Figure 1. This set of cost-service frontiers was generated using the case with (␣ab, ab) ⫽ (␣a, a) ⫽ (2, 5), (␣b, b) ⫽ (2, 1), and hb ⫽ 1. The points that form each frontier result from each level of penalty cost we consider in our experiments (p 僆 {50, 75, 100, . . . , 275}). For these frontiers, points in the northwest corner (upper-left) are clearly preferred. Note that as the costs of assembly and disassembly change across the four graphs in Figure 1, the relative position of the frontiers changes; however, it is always true that the N frontier sits below and to the right, i.e., southeast, of the N ⫹ A/D frontier, which in turn sits southeast of the optimal frontier. Since the plotted points on each frontier represent identical cost conditions, point-by-point comparisons across frontiers demonstrate that the optimization of base stock levels occasionally moves the system to a much lower fill rate than N ⫹ A/D, but with significant savings in holding and action costs. Moreover, one can see from the top right graph that the optimization may move the system to a point with higher holding plus A/D costs (e.g., for the leftmost points on the optimal and naı¨ve frontiers in the top-right graph), moving east of N, but with better service performance, moving north of N. Finally, note that when assembly
F1
tapraid4/z3z-pom/z3z-pom/z3z00207/z3z2573d07a tillotsj S⫽8 3/14/07 8:44 Art: POM 2573 Input-cjd(cjd) Thomas and Warsing: A Periodic Inventory Model for Stocking Modular Components Production and Operations Management 16(2), pp. 000 – 000, © 2007 Production and Operations Management Society
and disassembly are both moderately expensive (top right graph), the N ⫹ A/D and optimal frontiers are nearly coincident, implying that most of the benefit in this case comes from A/D alone, with very little to be gained by optimizing base stock levels. We will return to this example in discussing the effects of “asymmetry” in A/D actions. The magnitude of the relative difference in the performance of the N ⫹ A/D and optimal policies differs as the relative costs of holding and shortage change. Note from Table 2 that in lower fill rate situations, the N ⫹ A/D policy captures a larger portion of the optimal-naı¨ve gap (see, e.g., the “p 僆 [50, 150], hb ⫽ 20” row of the table), although the overall savings tend to be lower in these cases. Conversely, in higher fill rate cases, finding the best base stock policy is more important (see, e.g., the “p 僆 [175, 275], hb ⫽ 1” row of the table) and the overall savings from optimizing versus N are higher. Much of the difference in the relative performance appears to be driven by the size of the naı¨ve base stock levels in comparison to mean demand, i.e., by the safety stock levels. For example, consider a high service case with hb ⫽ 1, p ⫽ 275, cA ⫽ cR ⫽ cD ⫽ 1, and (␣, ) ⫽ (2, 1). In this case, the naı¨ve base stock levels are (sa, sb, sab) ⫽ (7.79, 7.79, 7.00), whereas the optimal base stock levels are (6.18, 6.18, 5.11), representing a relatively large percentage reduction in overall inventory investment, with a corresponding reduction of 26% in total cost between the optimal and N policies. Interestingly, N ⫹ A/D captures less than half (48.7%) of this overall benefit, even though it exhibits a slightly higher fill rate (99.99% for N ⫹ A/D versus 99.84% for optimal, both being an improvement over the naı¨ve fill rate of 99.73%). Since the naı¨ve stocking levels are so high relative to demand for both components and assemblies, this leaves the N ⫹ A/D policy with little need to perform beneficial A/D actions. The optimal base-stock solution, on the other hand, is actually able to take greater advantage of A/D actions, even though it stocks less inventory. In fact, for the optimal solution, E[A ⫹ D] ⫽ 0.6734 (or 1.12% of total expected demand) versus E[A ⫹ D] ⫽ 0.1570 (or 0.26% of total expected demand) for N ⫹ A/D. Thus, risk-pooling-driven reductions in inventory are particularly valuable in highservice cases. In a low service setting, however, with hb ⫽ 20, p ⫽ 50, and all other parameters the same, the comparative naı¨ve and optimal base stock levels are (5.83, 2.02, 1.95) and (5.70, 2.19, 1.94), respectively. The optimal policy reduces total cost by only 10.5%, with 99% of that benefit coming from simply allowing A/D. (We should point out that our assumption that demand is a continuous random variable obviously implies that stocking levels may be similarly continuous. This is done to facilitate interpreting the solutions in
11
order to generate insights about the problem. In practice, if demands were discrete-valued with low means, as in the latter example, stocking levels would probably be set to the same values for N and optimal policies.) Clearly, as the naı¨ve safety stock levels decline in low-service environments (note that in the low-service case above, component b safety stock is close to zero and assembly ab safety stock is actually slightly below zero), there is much less relative benefit to optimizing stock levels. A similar effect could also be achieved in a high-service environment when cA and cD are close to p. In such a case, since preventing a shortage by performing some action will reduce cost only slightly, the naı¨ve and optimal stock levels will be close to each other. 4.2.2. Effects of A/D Costs. Another prominent difference between average outcome groupings in Table 2 is that between cases in which A/D feasibility is “asymmetric,” when either assembly or disassembly is infeasible. In this setting, optimizing the base stock levels provides relatively more benefit than simply allowing A/D, particularly when only assembly is feasible. This is to be expected since restrictions in the flexibility of A/D make it more important to set inventory levels to most effectively take advantage of A/D. (For example, when only assembly is feasible, the optimal solution will tend to stock more components and fewer complete assemblies.) Since the N ⫹ A/D policy is “stuck” with the naı¨ve base stock levels, this policy is less capable of generating good solutions in those A/D-limited settings than the optimal base stock policy. The opposite effect occurs when A/D costs are perfectly symmetric; in those cases, N ⫹ A/D captures between 75% and 79% of the optimalbase-stock savings, on average. As an example, consider the case where cA ⫽ cR ⫽ 1, cD ⫽ ⬁, and p ⫽ 150, with the same parameters we used to generate Figure 1; i.e., (␣ab, ab) ⫽ (␣a, a) ⫽ (2, 5), (␣b, b) ⫽ (2, 1), hb ⫽ 1. In this case, the naı¨ve base stock levels are (sa, sb, sab) ⫽ (35.51, 7.10, 31.53), whereas the optimal base stock levels are (40.36, 24.67, 12.22). Note that the optimal solution significantly shifts the inventory mix to components, which makes sense since assembly and redisposition are inexpensive and disassembly is impossible. Moreover, the optimal total cost provides a 16% reduction over the naı¨ve total cost, with only 32% of that benefit being driven by A/D. In contrast, the parallel case with cA ⫽ cR ⫽ ⬁ and cD ⫽ 1 results in, obviously, the same naı¨ve stock levels and optimal stock levels of (33.72, 3.75, 31.70), only a slight change from naı¨ve for assembly ab, a small reduction for component a, and significant reduction for component b, apparently covering a good portion of its demand through inexpensive disassembly of ab’s. In this case, the optimal total cost
tapraid4/z3z-pom/z3z-pom/z3z00207/z3z2573d07a tillotsj S⫽8 3/14/07 8:44 Art: POM 2573 Input-cjd(cjd) Thomas and Warsing: A Periodic Inventory Model for Stocking Modular Components
12
Production and Operations Management 16(2), pp. 000 – 000, © 2007 Production and Operations Management Society
provides only a 4% reduction from the naı¨ve total cost, 51% of which is driven by A/D. Returning to Figure 1, these results are reflected in the bottom two graphs. For infeasible disassembly with cheap assembly (bottom left), the optimal frontier sits significantly northwest of the other two. For the opposite situation (bottom right), the three frontiers are more tightly grouped. T3
4.3. Comparison to cR ⴝ 0 Bound Table 3 shows a comparison of the total cost results between cases with costly redispositioning of excess inventory (i.e., cA ⫽ cR ⬎ 0) and cases with cR ⫽ 0. Since a base stock policy is optimal when cR ⫽ 0, this comparison establishes an upper bound on the gap between the optimal base stock policy and the true optimal policy for cR ⫽ 0. For the cR ⫽ cA cases, the total cost is only about 1% higher, on average, than for the cR ⫽ 0 cases. The worst relative performance occurs, not surprisingly, when cA ⫽ cR ⫽ ⬁— cases in which redispositions are impossible. In comparison to those cases, free-redisposition cases generate values of total cost that are as much as 16.5% lower, but still less than 7% lower on average. Even when cA ⫽ 20, however, the optimal values of the free-redisposition solutions are not far from those of the cA ⫽ cR solutions, especially when cD ⫽ 20 as well. On a category-bycategory basis between Tables 2 and 3, one can see that the cases with positive cR generate results that are generally quite comparable to the cR ⫽ 0 outcomes. 4.4. Impact of Limiting A/D Actions We also explore cases in which the number of A/D actions is limited, first through cost-based limitations, i.e., cases in which p ⬍ cD ⬍ 2p, meaning that only disassemblies of Type 1 are performed—and then through an explicit limit C on the number of A/D actions that may be performed per period. The outcomes of the “cost-limited-A/D” cases are summa-
Table 3
Difference in Optimal Total Cost Savings Between cR ⴝ cA and cR ⴝ 0 Cases, A/D Capacity ⴝ ⴥ Difference in optimal % savings in total cost
Category
Average
Min
Max
All p 僆 [50, 150], hb ⫽ 1 p 僆 [50, 150], hb ⫽ 20 p 僆 [175, 275], hb ⫽ 1 p 僆 [175, 275], hb ⫽ 20 (cA, cD) ⫽ (1, 1) (cA, cD) ⫽ (20, 20) (cA, cD) ⫽ (1, 20) (cA, cD) ⫽ (1, ⬁) (cA, cD) ⫽ (20, 1) (cA, cD) ⫽ (⬁, 1)
1.39% 1.83% 0.85% 1.96% 1.16% 0.02% 0.33% 0.00% 0.00% 1.03% 6.95%
0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0.01% 0.00% 0.00% 0.08% 0.53%
16.50% 13.95% 13.67% 16.01% 16.50% 0.17% 1.99% 0.02% 0.00% 5.43% 16.50%
rized in Table 4. Not surprisingly, the total savings across all cases is substantially less than in the base set of experiments (7.36% vs. 12.29%). In addition, the relative benefit of optimizing stock levels is higher in these constrained cases. This is in line with the observations above for the base set of experiments (Table 2) where optimization of stock levels is more valuable when only one kind of action is possible. Finally, note that as cA increases in these cases, the relative benefit of either N ⫹ A/D or optimal base stock policies diminishes, almost disappearing as assembly becomes infinitely costly. (For cA ⫽ ⬁ cases, average savings from optimizing is actually 0.002%.) To see why this is the case, consider Table 5, which compares the average, minimum, and maximum expected number of disassembly (D), assembly ( A), and redisposition (R) actions (expressed as a percentage of overall demand) between the base set of experiments, with cD varying between 1, 20, and ⬁, and the “costrestricted-disassembly” cases, with cD ⫽ 1.9p. As one can see from the table, in the latter cases, since “double-disassembly” situations (the only situations for which a disassembly action is economically feasible when p ⬍ cD ⬍ 2p) occur infrequently, the N ⫹ A/D and optimal systems have only a very small expected number of disassembly actions to use in driving improvements over the naı¨ve system. Thus, when the assembly option is additionally not feasible (i.e., cA ⫽ ⬁), the system is nearly equivalent to N, except for very infrequent disassembly actions to reduce shortages. Cases in which A/D actions are explicitly limited in number also generate interesting results, particularly when one digs into some of the individual experiments. In Table 6, we summarize the outcomes of cases in which the number of A/D actions per period is limited to no more than 10% of expected total perperiod demand (where Dtot ⬅ Da ⫹ Db ⫹ Dab), and to no more than 30% of expected total demand. As expected, increased limitations on the A/D capacity reduce the overall savings. As the capacity limit is relaxed, however, the savings begin to approach the cases with unlimited A/D capacity (Table 2). Note that as A/D capacity is more limited, the relative benefit of simply allowing A/D versus finding the optimal base stock levels increases. Optimization of the base stock levels is more valuable when the capacity limit is higher since the system has more freedom to take advantage of that inventory “tuning” via A/D. Figure 2 delves further into this comparison between capacity-constrained optimization, unconstrained optimization, and the simple N ⫹ A/D policy. The figure shows results for the case with (␣ab, ab) ⫽ (␣a, a) ⫽ (2, 5), (␣b, b) ⫽ (2, 1), cA ⫽ cD ⫽ cR ⫽ 1, p ⫽ 150, ha ⫽ hb ⫽ 1, and increasing values of A/D capacity, C, on the x-axis of each of the graphs in the
T4
T5
T6
F2
tapraid4/z3z-pom/z3z-pom/z3z00207/z3z2573d07a tillotsj S⫽8 3/14/07 8:44 Art: POM 2573 Input-cjd(cjd) Thomas and Warsing: A Periodic Inventory Model for Stocking Modular Components
13
Production and Operations Management 16(2), pp. 000 – 000, © 2007 Production and Operations Management Society
Table 4
Outcome Statistics—cD ⴝ 1.9p, A/D Capacity ⴝ ⴥ (420 Cases) % Savings in total cost over naı¨ve (N)
Fill rate—% pts above N
Category
N ⫹ A/D
Optimal
N ⫹ A/D as % of opt
Fill rate (N )
N ⫹ A/D
Optimal
Inv cost—optimal % difference from N
All Min Max cA ⫽ 1 cA ⫽ 20 cA ⫽ ⬁
3.28% 0.00% 8.22% 5.32% 4.52% 0.00%
7.36% 0.00% 24.15% 13.65% 8.42% 0.00%
44.61% — — 38.98% 53.73% 99.78%
95.68% 75.01% 99.78% 95.68% 95.68% 95.68%
0.55 0.00 2.73 0.83 0.83 0.01
0.70 0.00 7.75 1.10 1.01 0.01
⫺5.94% ⫺22.90% 3.45% ⫺10.58% ⫺7.23% 0.00%
figure, expressed as a percentage of E[Dtot]. Consider first the top two graphs in the figure. The top-left figure shows that the fill rate increases monotonically as a function of A/D capacity for both N ⫹ A/D and optimal. Since the N ⫹ A/D policy performs as many beneficial A/D actions as possible, the fill rate for N ⫹ A/D must be monotonically nondecreasing with increasing A/D capacity. In general, however, the fill rate is not necessarily non-decreasing for the optimal base-stock solution as more A/D actions are allowed (see the Appendix for an example of a case in which the unconstrained optimal base-stock policy exhibits a lower fill rate than the naı¨ve (i.e., C ⫽ 0) policy), although the optimal base-stock solutions in our computational experiments consistently exhibit non-decreasing fill rates. In the top-right graph we show the change in the optimal inventory cost as C increases. (Note that inventory investment is constant for N ⫹ A/D.) In this case, the optimal unconstrained inventory investment is lower than the naı¨ve level. Note, however, that the reduction is not general, nor is it necessarily monotonic. (Recall from the third row of Table 2 that there are cases where the optimal solution chooses higher inventory cost than the naı¨ve solution.) While the improvements in fill rate and inventory investment as C increases are not surprising, the expected number of actions as a function of C can behave Table 5
in a non-intuitive manner. In this case, the middle-left graph shows that the expected number of actions does not increase monotonically in C as one might expect. This occurs because the optimization of the stochastic program considers not only the expected number of actions (due to the cost implications of A and D), but also how the desired number of actions for a particular demand realization compares to the capacity constraint. Examining the optimal stock levels as a function of C (the middle-right graph) sheds some light on this phenomenon. The point where the “kink” in expected actions occurs is where C is around 68% of mean demand or C ⫽ 15. Note that the optimal choice of sa for this case is also around 15 (15.3 to be precise). This is noteworthy since the maximum number of possible assemblies is bounded by the minimum of the two component stocking levels. That is, the optimal stock levels for this case are such that the desired number of assemblies cannot exceed 15.3. The bottomleft graph shows the histogram of the desired number of actions falling into the ranges strictly greater than zero, but less than or equal to 1, strictly greater than 1, but less than or equal to 2, etc., at the optimal stock levels for this C ⫽ 15 case. The probability of not wanting to perform any actions is noted on the graph, along with the expected number of actions and the probability of desired actions exceeding the capacity
Comparing Expected Actions (as % of Overall Demand)—cD 僆 {1, 20, ⴥ} Versus cD ⴝ 1.9p Naı¨ve ⫹ A/D
cD ⫽ 1 cD ⫽ 20 cD ⫽ ⬁ cD ⫽ 1.9p
Average Min Max Average Min Max Average Min Max Average Min Max
Optimal
E [D ]
E [A]
E [R ]
E [D]
E [A ]
E [R ]
0.779% 0.041% 3.282% 0.857% 0.057% 3.282% 0.000% 0.000% 0.000% 0.004% 0.000% 0.033%
0.546% 0.000% 2.695% 0.819% 0.037% 2.695% 0.819% 0.037% 2.695% 0.546% 0.000% 2.695%
0.155% 0.000% 1.935% 0.232% 0.007% 1.935% 0.000% 0.000% 0.000% 0.000% 0.000% 0.000%
1.643% 0.093% 5.806% 0.514% 0.009% 2.417% 0.000% 0.000% 0.000% 0.002% 0.000% 0.033%
0.630% 0.000% 4.674% 3.225% 0.078% 15.803% 9.761% 1.170% 25.521% 4.239% 0.000% 25.521%
0.254% 0.000% 2.566% 0.127% 0.000% 1.362% 0.000% 0.000% 0.000% 0.000% 0.000% 0.000%
tapraid4/z3z-pom/z3z-pom/z3z00207/z3z2573d07a tillotsj S⫽8 3/14/07 8:44 Art: POM 2573 Input-cjd(cjd) Thomas and Warsing: A Periodic Inventory Model for Stocking Modular Components
14 Table 6
Production and Operations Management 16(2), pp. 000 – 000, © 2007 Production and Operations Management Society
Outcome Statistics—A/D Constrained, cR ⴝ cA (840 Cases for each Capacity Level) % Savings in total cost over naı¨ve (N )
A/D Capacity
0.1E [Dtot ]
0.3E [Dtot ]
Figure 2
Fill rate—% pts above N
Category
N ⫹ A/D
Optimal
N ⫹ A/D as % of opt
Fill rate (N )
N ⫹ A/D
Optimal
Inv cost—optimal % difference from N
All Min Max All Min Max
5.03% 1.39% 11.81% 7.74% 1.61% 14.83%
6.04% 2.17% 14.47% 10.60% 2.81% 18.80%
83.17% — — 73.01% — —
95.68% 75.01% 99.78% 95.68% 75.01% 99.78%
0.88 0.03 3.71 1.30 0.04 5.89
0.44 0.00 3.39 0.86 0.00 7.17
⫺5.71% ⫺13.08% 1.48% ⫺8.88% ⫺19.46% 3.10%
An example of A/D capacity effects.
tapraid4/z3z-pom/z3z-pom/z3z00207/z3z2573d07a tillotsj S⫽8 3/14/07 8:44 Art: POM 2573 Input-cjd(cjd) Thomas and Warsing: A Periodic Inventory Model for Stocking Modular Components
15
Production and Operations Management 16(2), pp. 000 – 000, © 2007 Production and Operations Management Society
limit of 15. Notice that the probabilities in this histogram drop markedly at the capacity limit. This drop is caused in part by the selection of sa close to 15, since the number of assemblies cannot exceed this value of sa. That is, the optimization chooses stock levels such that the capacity limit is less likely to come into play. The bottom-right graph shows the distribution of actions at the unconstrained optimal stock levels. Note that there are fewer expected actions for this scenario, but the probability of desired actions exceeding 15 is about four times higher than in the C ⫽ 15 case. Finally, we note that Figure 2 demonstrates the value of even a small number of A/D actions. Note from the upper-left graph that even when C is set at a large value relative to expected overall demand (e.g., 60% or 80% of this number), the expected number of actions in this case is quite small (only 1.5 to 2% of expected total demand). Moreover, setting C to only 20% of expected demand yields a dramatic effect on inventory investment (upper-right graph). Note that this dramatic reduction in inventory investment can be achieved while simultaneously increasing the fill rate (upper-left graph). We point this out to reemphasize the potential value of A/D to practicing managers who have the capability to utilize A/D in their operations supporting modular products.
T7
4.5. Impact of Demand Variability on Outcomes Note that in our base experiments, the coefficient of variation (cv) of demand is, in all cases, cv ⫽ 1/公␣ ⬇ 0.71. In Table 7, we provide results from re-running the base experiments (Table 2) with larger values of ␣, and therefore, small values of cv. The results confirm our intuition regarding the ability of the optimization of stock levels to exploit the risk pooling effects of covering demand for assemblies with component stock, or vice versa. Specifically, as Table 7 shows, lower cv results in less cost savings from the N ⫹ A/D and optimal policies over the naı¨ve policy, driven by less variability-based demand risk that can be pooled into common components. Note that between Table 2 and Table 7, the minimum, maximum, and average inventory cost differences between optimal and naı¨ve all move closer to zero as cv decreases (i.e., the range Table 7
0.50
0.33
5.
Conclusions
In this research, we formally explore and quantify the positive effect on inventory system performance that can result from exploiting product modularity in setting inventory levels to support field service operations. Specifically, this work sought to achieve two broad objectives: (1) to develop, optimize, and analyze a decision model for setting service parts stocking levels that takes advantage of the assembly/disassembly (A/D) flexibility afforded by a multi-indenture product structure, and (2) to investigate the service system cost savings and understand the cost and service improvements that can be obtained through allowing A/D actions in managing multi-indenture service parts systems. We compare the optimal base-stock policy costs to those that would result from a naı¨ve stocking strategy, and then break down the naı¨ve– optimal gap to determine how much benefit can be generated by simple, though non-optimal, stocking strategies that allow both assembly and disassembly, provided that the A/D costs make such actions reasonable. Some specific findings of our modeling and computational experiments are as follows: • There is benefit to be gained from explicitly incorporating A/D flexibility in multi-indenture service parts inventory planning. Our model allows us to describe the amount of benefit for given values of assembly, disassembly, holding, and shortage costs. Moreover, not taking advantage of A/D can be costly. In our computational experiments, A/D-capable, optimal-base-stock solutions exhibit 12% less cost, on average, and as much as 26% less cost, than those that disallow or ignore A/D. • Even if a manager fails to explicitly take the A/D effects into account in setting inventory levels, he or she may still be able to capture a significant
Outcome Statistics—Comparing Effects of cv (840 Cases for each cv Level) % Savings in total cost over naı¨ve (N )
cv
of the inventory cost benefits narrows as the demand distributions narrow). Moreover, the relative benefit of A/D versus optimizing stock levels also declines with cv.
Fill rate—% pts above N
Category
N ⫹ A/D
Optimal
N ⫹ A/D as % of opt
Fill rate (N )
N ⫹ A/D
Optimal
Inv cost—optimal % difference from N
All Min Max All Min Max
6.86% 1.59% 13.09% 5.25% 1.30% 9.70%
10.74% 2.74% 21.88% 8.58% 2.11% 17.14%
63.86% — — 61.24% — —
97.26% 83.34% 99.87% 98.35% 89.53% 99.93%
0.91 0.02 4.31 0.57 0.01 2.86
0.65 0.00 5.24 0.39 0.01 3.23
⫺8.44% ⫺19.82% 1.15% ⫺6.76% ⫺15.40% 0.00%
tapraid4/z3z-pom/z3z-pom/z3z00207/z3z2573d07a tillotsj S⫽8 3/14/07 8:44 Art: POM 2573 Input-cjd(cjd)
16
Thomas and Warsing: A Periodic Inventory Model for Stocking Modular Components Production and Operations Management 16(2), pp. 000 – 000, © 2007 Production and Operations Management Society
portion of the optimal reduction in inventory system costs simply by applying A/D to the naı¨ve base stock levels for components and assemblies. Across our base set of experiments, approximately 67%, on average, of the cost savings over the naı¨ve base-stock system is due solely to allowing A/D actions. This simple strategy performs particularly well when assembly and disassembly costs are small relative to shortage costs, when the naı¨ve system fill rates are relatively low, and when A/D capacity is highly constrained. Conversely, optimizing to find the best base stock levels of components and assemblies is most valuable when A/D costs are asymmetric (e.g., when one is impossible), when the naı¨ve-base-stock fill rates are high, and when A/D capacity is less constrained or unconstrained. • The optimization of the base stock levels shifts the mix of components and assemblies to best exploit A/D capabilities. Generally, this means that the system holds more components, fewer assemblies, and less overall stock, but those effects are obviously impacted by the cost of A/D actions. Moreover, if A/D actions are constrained in number, the optimization will seek a different mix of components and assemblies than in the uncapacitated case, occasionally shifting that mix in a manner that actually increases the expected number of A/D actions over the uncapacitated case. The results listed above are based on experimentation using the smallest possible multi-indenture product structure, with a single assembly composed of two component parts. We intend to pursue follow-on research to understand whether the insights we have generated persist with product structures that are more realistic and more complex. While such complexity may limit our ability to solve for optimal stocking levels, we believe that computational techniques such as infinitesimal perturbation analysis might be used to generate good solutions that can be similarly compared to naı¨ve stocking policies that ignore product structure-driven A/D capabilities. Another interesting line of follow-on research would be to introduce a non-zero lead time for resupply. This additional assumption would change the problem formulation significantly, turning our stationary, single-period analysis into a multi-period, stochastic dynamic program, thereby precluding easilycomputed, closed-form solutions for the inventory levels. However, this more complex problem setting may also lead to a rich set of follow-on results regarding the manner in which A/D-driven changes in inventory position across periods lead to further improvements over naı¨ve policies that ignore these modularity-driven capabilities.
Acknowledgments The authors would like to thank Department Editor Jay Swaminathan and the anonymous referees and Senior Editor for their extensive and very helpful efforts in improving the model and analysis presented in this paper. The authors also acknowledge Shrikant Karwa for his contributions to the early stages of this research. This work was supported in part by funding from the Center for Supply Chain Research in the Smeal College of Business at Pennsylvania State University. Earlier versions of this work were presented at the M&SOM Conference, Ithaca, New York, June 2002, and the POMS Annual Conference, Boston, Massachusetts, April 2006.
Appendix Example of Numeric Integration. Recall that the number of Type 1 disassemblies (disassemblies that prevent two shortages) is given by: t 1 共s a , s b , s ab 兲 ⫽ min 关共da ⫺ sa 兲⫹, 共db ⫺ sb 兲⫹, 共sab ⫺ dab 兲⫹兴. (17) Consider the case where (da ⫺ sa)⫹ is the minimum value. In this case, da ⱖ sa, db ⱖ da ⫺ sa ⫹ sb, dab ⱕ sab ⫺ da ⫹ sa. Assuming non-negative demands, note that da ⱕ sa ⫹ sab since da ⫺ sa ⱕ sab ⫺ dab. So, this term for E[T1] is given by
冕 冕 冕 s a ⫹s ab
sa
⬁
d a ⫺s a ⫹s b
s ab ⫺d a ⫹s a
共d a ⫺ s a 兲dF ab dF b dF a
(18)
0
or
冕
s a ⫹s ab
F b 共d a ⫺ s a ⫹ s b 兲 F ab 共s ab ⫺ d a ⫹ s a 兲共d a ⫺ s a 兲dF a .
(19)
sa
Other terms for E[T1] and expressions for other action types, as well as their first order derivatives, are obtained similarly.
Example of a Case with Reduced Fill Rate for Unconstrained A/D. Consider a case with demand for component a of 1 w.p. 0.90 and 2 w.p. 0.10. Let demand for assembly ab be the same. Let demand for component b be deterministically zero, and let cA ⫽ cD ⫽ cR ⫽ 0, to enable full substitutability of a and ab. Thus, if the critical fractiles for a and ab are both strictly greater than 0.90, the naı¨ve stock levels for both a and ab are 2, giving an overall fill rate of 100%. When pooling is allowed, aggregate demand is 2 w.p. 0.81, 3 w.p. 0.18, and 4 w.p. 0.01. Then, as long as the critical fractiles for a and ab are both strictly less than 0.99 (0.81 plus 0.18), we would stock 3 units of either a or ab instead of the naı¨ve total stock of 4, yielding an expected shortfall of 0.01. Since E[Dtot] ⫽ 2.2, the resulting overall fill rate is (1 ⫺ 0.01/2.2), or 99.55%. References Baker, K. R., M. J. Magazine, H. L. W. Nuttle. 1986. The effect of commonality on safety stock in a simple inventory model. Management Science 32(8) 982–988.
tapraid4/z3z-pom/z3z-pom/z3z00207/z3z2573d07a tillotsj S⫽8 3/14/07 8:44 Art: POM 2573 Input-cjd(cjd) Thomas and Warsing: A Periodic Inventory Model for Stocking Modular Components Production and Operations Management 16(2), pp. 000 – 000, © 2007 Production and Operations Management Society
Bassok, Y., R. Anupindi, R. Akella. 1999. Single period multiproduct inventory models with substitution. Operations Research 47(4) 632– 642. Birge, J. R., F. Louveaux. 1997. Introduction to stochastic programming. Springer Series in Operations Research, Springer, New York, NY. Chand, S., J. E. Ward, Z. K. Weng. 1994. A parts selection model with one-way substitution. European Journal of Operational Research 73(1) 65– 69. Cohen, M. A., P. R. Kleindorfer, H. L. Lee. 1989. Near-optimal service constrained stocking policies for spare parts. Operations Research 37(1) 104 –117. Drezner, Z., H. Gurnani, B. A. Pasternack. 1995. An EOQ model with substitutions between products. Journal of the Operational Research Society 46(7) 887– 891. Feitzinger, E., H. L. Lee. 1997. Mass customization at HewlettPackard: The power of postponement. Harvard Business Review 75(1) 116 –121. Ferrer, G., D. C. Whybark. 2001. Material planning for a remanufacturing facility. Production and Operations Management 10(2) 112–124. Gerchak, Y., M. J. Magazine, A. B. Gamble. 1988. Component commonality with service level requirements. Management Science 34(6) 753–760. Graves, S. C. 1985. A multi-echelon inventory model for a repairable item with one-for-one replenishment. Management Science 31(10) 1247–1256. Gurnani, H. Z. Drezner. 2000. Deterministic hierarchical substitution inventory models. Journal of the Operational Research Society 51(1) 129 –133. Hedge, V. G., S. Kekre, S. Rajiv, P. R. Tadikamalla. 2005. Customization: Impact on product and process performance. Production and Operations Management 14(4) 388 –399. Henig, M., Y. Gerchak, R. Ernst, D. F. Pyke. 1997. An inventory model embedded in designing a supply contract. Management Science 43(2) 184 –189. Hillier, M. S. 2000. Component commonality in multiple-period, assemble-to-order systems. IIE Transactions 32(8) 755–766. Meacham, A., R. Uzsoy, U. Venkatadri. 1999. Optimal disassembly configurations for single and multiple products. Journal of Manufacturing Systems 18(5) 311–322.
17
Mirchandani, P., A. K. Mishra. 2002. Component commonality: Models with product-specific service constraints. Production and Operations Management 11(2) 199 –215. Muckstadt, J. 1973. A model for a multi-item, multi-echelon, multiindenture inventory system. Management Science 20(4) 472– 481. Pentico, D. W. 1976. The assortment problem with non-linear cost functions. Operations Research 24(6) 1129 –1142. Press, W. H., B. P. Flannery, S. A. Teukolsky, W. T. Vetterling. 1997. Numerical recipes in C: The art of scientific computing, 2nd ed. (revised). Cambridge University Press, Cambridge, MA. Ramdas, K. 2003. Managing product variety: An integrative review and research directions. Production and Operations Management 12(1) 79 –101. Rao, U. S., J. M. Swaminathan, J. Zhang. 2004. Multi-product inventory planning with downward substitution, stochastic demand and setup costs. IIE Transactions 36(1) 59 –71. Sherbrooke, C. C. 1992. Optimal inventory modeling of systems: Multiechelon techniques. John Wiley and Sons, New York, NY. Slay, F. M. 1984. VARI-METRIC: An approach to modelling multiechelon resupply when the demand process is Poisson with a Gamma prior, Technical Report AF301–3, Logistics Management Institute, Washington, DC. Squire, B., S. Brown, J. Readman, J. Bessant. 2006. The impact of mass customisation on manufacturing trade-offs. Production and Operations Management 15(1) 10 –21. Swaminathan, J. M. 2001. Enabling customization using standardized operations. California Management Review 43(3) 125–135. Swaminathan, J. M., H. L. Lee. 2003. Design for postponement, Vol. 11 of Handbooks in Operations Research and Management Science. A. G. de Kok and S. C. Graves (eds.), Elsevier, Amsterdam, Chapter 5, 199 –225. Swaminathan, J., S. Tayur. 1998. Managing broader product lines through delayed differentiation using vanilla boxes. Management Science 44(12) 161–172. Ulrich, K. 1995. The role of product architecture in the manufacturing firm. Research Policy 24(3) 419 – 440. Weng, Z. K. 1999. Risk-pooling over demand uncertainty in the presence of product modularity. International Journal of Production Economics 62(1/2) 75– 85.