Available online at www.sciencedirect.com
European Journal of Operational Research 194 (2009) 728–742 www.elsevier.com/locate/ejor
Production, Manufacturing and Logistics
An inventory sharing and allocation method for a multi-location service parts logistics network with time-based service levels Erhan Kutanoglu a,*, Mohit Mahajan b a
Graduate Program in Operations Research and Industrial Engineering, Department of Mechanical Engineering, The University of Texas at Austin, 1 University Station C2200, Austin, Texas 78712-0292, USA b PROS Holdings, Inc., 3100 Main Street, Houston, TX 77002, USA Received 2 February 2007; accepted 23 December 2007 Available online 9 January 2008
Abstract We consider a model to allocate stock levels at warehouses in a service parts logistics network. The network is a two-echelon distribution system with one central warehouse with infinite capacity and a number of local warehouses, each facing Poisson demands from geographically dispersed customers. Each local warehouse uses a potentially different base stock policy. The warehouses are collectively required to satisfy time-based service targets: Certain percentages of overall demand need to be satisfied from facilities within specified time windows. These service levels not only depend on the distance between customers and the warehouses, but also depend on the part availabilities at the warehouses. Moreover, the warehouses share their inventory as a way to increase achieved service levels, i.e., when a local warehouse is out of stock, demand is satisfied with an emergency shipment from another close-by warehouse. Observing that the problem of finding minimum-cost stock levels is an integer non-linear program, we develop an implicit enumeration-based method which adapts an existing inventory sharing model from the literature, prioritizes the warehouses for emergency shipments, and makes use of a lower bound. The results show that the proposed inventory sharing strategy results in considerable cost reduction when compared to the no-sharing case and the method is quite efficient for the considered test problems. Ó 2008 Elsevier B.V. All rights reserved. Keywords: Inventory allocation; Service parts logistics; Time-based service levels
1. Introduction After sales customer service is one of the factors critical to the success of any company and service parts logistics is a critical component of providing quality service, especially for high technology hardware manufacturers. Service parts logistics (SPL) can be defined as the management of processes, activities and spare parts in support of repairing and maintaining products. In after sales service for industries like heavily automated production systems, information systems, automobile and aircraft manufacturing, service parts are required to repair the failed systems. *
Corresponding author. Tel.: +1 512 232 7194; fax: +1 512 232 1489. E-mail addresses:
[email protected] (E. Kutanoglu),
[email protected] (M. Mahajan). 0377-2217/$ - see front matter Ó 2008 Elsevier B.V. All rights reserved. doi:10.1016/j.ejor.2007.12.032
Downtime of critical equipment due to part failures may have serious consequences so obtaining replacement parts quickly is essential. In today’s market, customer service has become an important dimension of competition along with price and quality. A classical measure of customer service has been fill rate, which by definition is the percentage of the random demand satisfied with the stock on hand (Hopp and Spearman, 2000; Zipkin, 2000). But in the realm of service parts logistics, customers are not concerned about whether the service provider has the part in inventory or not. They mainly care about the time taken by the service provider to provide the service. Therefore, in order to retain the company’s current customers and to acquire new customers, prompt service is the key to success, for which the first requirement is to have service parts readily available.
E. Kutanoglu, M. Mahajan / European Journal of Operational Research 194 (2009) 728–742
Considering the high costs of service parts and very low part demand rates for a very large number of parts to be stocked, it is not economical to have a large stock of parts at all inventory locations. The company therefore faces a problem of determining best stocking levels of service parts which minimize its cost while providing the demanded parts to the customers within a specified time frame. Because customers are usually scattered over a large geographical area, many companies use an extensive distribution network of inventory locations to ensure a high service level. We can list the service networks of computer companies such as IBM,1 and DELL2 and of heavy equipment manufacturers such as Caterpiller3 and Applied Materials4 fitting this general network structure explained here. Service parts are often supplied via a multi-echelon distribution network in which warehouses at higher echelons supply parts to lower echelon warehouses. A reason to have a multiple echelons is the need to achieve quick response time while achieving stock centralization to reduce holding costs. As service parts have random and very low demand, the network is assumed to be controlled by base stock policy in which each local warehouse continuously monitors its corresponding inventory level. Whenever the inventory level falls below the base stock level due to demand, the warehouse orders the service part from the central warehouse one at a time. The main reason for using the base stock policy is the high price and low demand characteristics of the service parts and is very common both in practice and in the research literature. (The two authoritative references on SPL (Sherbrooke, 1992; Muckstadt, 2005) make the same two assumptions, Poisson demand and base stock policy at all locations in all of their models). The time-based service focus in SPL leads to the tiered service levels that are to be achieved within certain time windows (e.g., 60% of the demand satisfied within 4 hours, 80% within 8 hours). Hence, service levels not only consider part availability (fill rate) but also the response time, which is a function of distance between the customer requesting the part and the warehouse that provides that part. When time-based service levels are used to measure customer service, satisfying the demand in a specified time window is more important than which specific warehouse satisfies it. To satisfy these stringent time-based service levels, the traditional hierarchical pass up structure (i.e., passing up the demand that cannot be satisfied by a local warehouse to the central warehouse in emergency basis) has been replaced by the network in which all the locations in the same echelon share their inventory. This leads to the concept of emergency lateral transshipments (ELTs) and direct deliveries. 1
http://www-935.ibm.com/services/us/index.wss/itservice/its/a1000418. 2 http://www.dell.com/content/topics/global.aspx/services/main/ index?c=us&cs=555&l=en&s=biz. 3 https://logistics.cat.com/cda/layout?m=117220&x=7. 4 http://www.appliedmaterials.com/products/service_offerings_2.html? menuID=6_2_1.
729
ELT is passing demand request along to a neighboring warehouse when a customer’s local warehouse (usually the closest to the customer) does not have the part in stock. The neighboring warehouse can provide the part and still contribute to the time-based service. Then, whenever a local warehouse faces a customer demand, the demand is satisfied from the stock on hand. If the local warehouse is out of stock, the demand is satisfied from an ELT at any other nearby local warehouses. If the required stock is unavailable at all the facilities, then an emergency shipment (direct delivery) is ordered from the central warehouse. The inclusion of inventory sharing makes the stocking level decisions more challenging. But this is compensated by the improvement in time-based service levels and by the reduced system-wide stock level necessary to obtain a certain service level. The problem then can be stated as follows: Given a twoechelon distribution system with one central warehouse assumed to have infinite capacity and a number of local warehouses, find a set of stocking levels at the local warehouses that meet all the time-based service level constraints at minimum total cost (inventory holding, transportation and penalty). The key steps of our analysis are as follows: We formulate a model which allows inventory sharing among local warehouses in order to satisfy the timebased service levels. We use an ELT model from the literature (Alfredsson and Verrijdt, 1999). We develop an implicit enumeration algorithm that estimates the total cost, and eliminates the unpromising stocking policies using a developed lower bound. We analyze the sensitivity of the total cost with respect to each of the influencing parameters. We further investigate the advantage of obtaining lower bounds and observe the benefits of prioritization between local warehouses in case of ELTs. The paper is organized as follows: Section 2 contains the literature review on multi-echelon inventory models for service parts that consider emergency lateral transshipments. In Section 3, we formulate the problem and give the details of our modeling technique. Section 4 explains the methodology developed to solve the problem. Section 5 explains the experimental design used to test the model. We discuss the computational results in Section 6. In Section 7, we give several concluding remarks and list some possible extensions of the current work.
2. Literature review Considering the vast literature on inventory management, we focus our review on inventory models for service parts that consider ELTs. Practically all papers in this area assume Poisson demand and one-for-one (or base stock or (S 1, S), where S is the base stock level) replenishment policy. Considering the high costs and low demands of
730
E. Kutanoglu, M. Mahajan / European Journal of Operational Research 194 (2009) 728–742
these parts in real settings, both assumptions are appropriate and representative of the SPL practice. Sherbrooke (1968) was first to analyze a multi-echelon inventory model for repairable items. He developed an approximate technique (METRIC) to calculate the stock levels at each echelon. In the event of a stock-out, his model assumed that the demand is backordered. Muckstadt and Thomas (1980) showed the importance of using multi-echelon inventory systems as opposed to single-echelon methods. They used data from an industrial inventory system to provide comparative results on overall inventory required to meet a given service level. Graves (1985) developed a multi-echelon inventory model for a repairable item, which assumes that the failures occur according to a compound Poisson process and the shipment time between warehouses is deterministic. Cohen et al. (1986, 1989, 1992) proposed algorithms for similar multi-echelon low-demand service parts systems. Cohen et al. (1997) performed a benchmark study of SPL systems for technologically complex high value products. They provided a detailed introduction into SPL and reported the latest industrial practices and trends. Two successful inventory applications in real SPL systems are discussed in Cohen et al. (1990) and Cohen et al. (1999). As inventory sharing is common in SPL, it is not surprising to see that ELT studies first appeared in this domain. Lee (1987) extended the existing SPL-motivated low-demand models by allowing ELTs between facilities. He considered a multi-echelon model in which the facilities were supplied from a central warehouse that was in turn supplied from a plant assumed to have infinite supply. He developed a procedure to approximately calculate the portion of demand met by stock on hand and the portion of demand met by ELTs. In his ELT model, Axsa¨ter (1990) assumed Poisson demand and one-for-one replenishments. Although the system was similar to that of Lee (1987), his modeling approach was different. The demand at a facility was calculated as the sum of the regular demand and the demand due to ELTs. Comparing the results of his iterative approach with Lee’s earlier results, he found that his technique was more effective. Sherbrooke (1992) allowed facilities to have backordered lateral transshipments, which are not allowed in the previous models, focusing on simulation as a modeling technique. All the models mentioned here so far assume zero or negligible lateral transshipment times. Two exceptions are Wong et al. (2005a) who considered non-zero lateral transshipment times, and Tagaras and Dimitrios (2002) who investigated the effects of demand distributions along with non-negligible transshipment times. Another variation of these models is Wong et al. (2005b) that considered downtime cost explicitly, but ignores service level constraints. The time-based service level is a function of fill rates which were traditional ‘‘service” measures in the literature. In this sense, the time-based service levels are similar in spirit and form to the demand-weighted composite fill rates in Muckstadt (2005) and Hopp et al. (1997). In the recent
text on SPL, Muckstadt (2005) collected his and others’ research results. As part of the development in the book, he introduced models for inventory allocation in multi-echelon, multi-item distribution networks and considered inventory sharing between facilities. He also considered time-based service level commitments in a different manner than ours, interpreting them as wait times due to backorders. He described several algorithms to determine nearoptimal stock levels that meet service level constraints at minimum inventory investment. The model presented in this paper is an extension of the model by Alfredsson and Verrijdt (1999). Building on Axsa¨ter (1990), they considered a two-echelon inventory system where the demands at facilities were not backordered, but satisfied through an ELT, a direct delivery from a central warehouse, or a direct delivery from a manufacturing facility. They developed an iterative procedure to calculate the fill-rates at each facility, which incorporates the probabilities of using different facilities as the ELT source for a particular facility. They concluded that using both ELT flexibility and direct delivery flexibility results in significant cost reductions compared with using no supply flexibility at all. They also observed that the distribution of shipment times (assumed to be exponential) had a negligible effect on the long term service performance. In the model, the central warehouse had a limited supply and received replenishments from a manufacturing facility assumed to have infinite production capacity. We modify their model by assuming that the central warehouse has infinite capacity (hence the manufacturing echelon is not needed). We also modify their model by introducing relative priorities of facilities when an ELT is needed due to stock-out. Also, they did not develop a method to calculate the optimum stock levels, which we do in the current paper in the form of implicit enumeration. Finally, we minimize the total cost subject to time-based service level constraints, which were not present in any of the earlier models. 3. Model formulation In this section, we give the details of the overall mathematical development. In Section 3.1, we first provide a more formal problem description, and introduce the model’s notation. For further development, we need to compute the portions of demands satisfied by different sources, including by the central warehouse (Section 3.2) and by local warehouses and by ELTs as part of an iterative process (Section 3.3). They are combined to compute time-based service levels in Section 3.4 and the total cost function in Section 3.5. Finally, Section 3.6 summarizes the no-inventory sharing scenario. 3.1. Model description and notation Following Alfredsson and Verrijdt (1999), we consider a single part, two-echelon distribution network model, consisting of a central warehouse with infinite capacity and a
E. Kutanoglu, M. Mahajan / European Journal of Operational Research 194 (2009) 728–742
number of local warehouses. All customers are dispersed among the local warehouses based on their relative positions, i.e., a customer is assigned to the closest local warehouse. We assume customer demand follows an independent Poisson process, requesting one part at a time. The central warehouse replenishes the local warehouses every time a demand request draws an available part from stock on hand (if available), following a base stock policy. For each local warehouse, the neighboring warehouses are prioritized according to their relative distance from the customers of the local warehouse. In case of a stockout at a local warehouse, customer demand is satisfied by an ELT from a neighboring location holding the part. If none of the local warehouses are able to satisfy the demand, it is then satisfied by a direct delivery from the central warehouse. For example, consider a case of three local warehouses (numbered 1–3). Warehouses 2 and 3 are the neighboring locations for warehouse 1 and we suppose that customers of warehouse 1 are closer to warehouse 3 compared to warehouse 2. Hence, for warehouse 1, warehouse 3 has higher priority than warehouse 2 in ELTs. If a customer requests a part at warehouse 1 and if it is out of stock, the demand would be satisfied by an ELT from warehouse 3, if it has the required stock. Otherwise, the demand would be satisfied by warehouse 2. If warehouse 2 cannot satisfy the demand due to stock-out, it would be satisfied by a direct delivery from the central warehouse. Fig. 1 illustrates a system with one central warehouse and three local warehouses. The arrows show part supply and replenishment directions. The dotted lines show ELTs and direct deliveries. We assume that there is no lost demand and the customer whose request is to be satisfied through the ELT or direct delivery waits for the part to arrive. (It may be possible that the customer’s assigned warehouse may receive the part through normal replenishment while the customer is waiting. In a more realistic scenario, the customer’s warehouse may use the replenishment to satisfy the customer’s demand in a timelier manner, but that would make the overall model much more complicated. In addition, considering that the direct delivery and replenishment lead times (say a week) are typically much longer than the ELT times among
Central Warehouse
Local Warehouse 1
Customers
Local Warehouse 2
Local Warehouse 3
Customers
Customers
Fig. 1. A two-echelon system with three local warehouses and inventory sharing.
731
nearby facilities (a few hours), this possibility can be small. Hence, following the assumptions of the previous models in the literature, we keep the model manageable by making this assumption). Inventory sharing between the local warehouses makes the stock more valuable as the stock is used not only for the assigned customer, but also by another local warehouse to satisfy their respective customers. This would decrease the total inventory required and hence the holding costs for a particular service level. But ELTs and direct deliveries would have higher transportation costs and there would be penalty costs associated with them, which would increase the costs. Hence, stock allocation becomes more difficult when inventory sharing is allowed. Similar to Alfredsson and Verrijdt (1999), to facilitate the model development, we assume that the replenishment lead times are identically and independently distributed exponential random variables. (They showed that the underlying model was not sensitive to the choice of lead time distribution). By definition, fill rate is the probability of filling the demand with the stock on hand. While fill rate does not capture the time taken to satisfy the demand, the time-based service level is the percentage of demand satisfied within a certain time window, say 4 hours. Hence, the time-based service depends not only on part availability but also on distances between warehouses and customers (i.e., whether they are within the time window or not). Following is the notation used in the model:
n i
Number of local warehouses Local warehouse index used to represent a main location for a customer, i = 1, 2, . . . , n q Local warehouse index used to represent a neighboring location, q = 1, 2, . . . , n, and q – i k Customer index l(k) Local warehouse assigned to customer k (Main location for k is local warehouse l (k)) Base stock level at local warehouse i Si P S Total stock level (i.e., S ¼ ni¼1 S i ) kik Mean demand rate of customer k assigned to local warehouse i Total P demand rate at local warehouse i ki (ki ¼ iklðkÞ¼i kik ) P k Total demand rate (k ¼ i ki ) L Average replenishment lead time (assumed same for all warehouses) l Rate at which replenishment orders arrive at a local warehouse (=1/L) ELT demand at local warehouse i from other ei warehouses Total demand at local warehouse i (after considering gi ELT demand, gi = ki + ei) Fraction of local warehouse i’s demand satisfied from bi on hand stock Fraction of local warehouse i’s demand satisfied ai through ELTs
732
c xiq pim pj pij c t uik v
E. Kutanoglu, M. Mahajan / European Journal of Operational Research 194 (2009) 728–742
Fraction of total demand satisfied from the central warehouse through direct deliveries Probability of using local warehouse q as a source for an ELT for a customer assigned to local warehouse i Local warehouse having the mth priority for filling an ELT by local warehouse i Steady-state probability that there is a total of j items on hand at all local warehouses Steady-state probability that there are j items on hand at local warehouse i Unit cost of the service part Unit cost of transporting the part from the central warehouse to local warehouses Unit cost of transporting the part from local warehouse i to customer k Unit cost of transporting the part from the central warehouse to a customer through direct delivery (may include additional penalty cost for such delivery)
3.2. Aggregate model for c For the fraction of demand satisfied by the central warehouse (c) we consider an aggregate model, i.e., all the local warehouses Pn as one single warehouse with a total stock level of SP¼ i¼1 S i , and experiencing a total demand of n k ¼ i¼1 ki . The aggregate model would behave according to a continuous time Markov chain (CTMC). The state space comprises the total stock level in all the local warehouses at any time. The value of c is the same for all the local warehouses, independent of their individual stock levels and demand rates (for a given total stock level and a given total demand). The state space and corresponding transition rates are depicted in Fig. 2 (Alfredsson and Verrijdt, 1999). The steady-state probabilities are calculated by solving the global balance equations for the CTMC (Kulkarni, 1995). Then, for j = 1, 2, . . . , S, we obtain exact probabilities of pj ¼
S! l j p0 ; ðS jÞ! k
where p0 ¼ P S
1
S! j¼0 ðSjÞ!
Sμ
1
S S! j¼0 ðSjÞ!
1
As described by Axsa¨ter (1990) and Alfredsson and Verrijdt (1999), the state space at each local warehouse can be modeled as a CTMC. In this model, the demand rate at each local warehouse is adjusted by taking into account the demand coming from other local warehouses in the form of ELTs. For a local warehouse facing a regular demand ki and an ELT demand of ei, the adjusted demand rate can be calculated as gi = ki + ei. Following Alfredsson and Verrijdt (1999), we approximate the distribution of the (total) demand at local warehouse i with Poisson with rate gi, and assume that the demand processes across local warehouses are independent. Fig. 3 shows the state space model for warehouse i. Note that the structure of the model is similar to that of the aggregate model. Thus, the solution to the steady-state equations of this model can be obtained similarly. The steady-state probabilities are then as follows: j Si! l i pi0 for j ¼ 1; 2; . . . ; S i ; pj ¼ ðS i jÞ! gi where pi0 ¼ PS i
(S-2)
μ
. j ðgli Þ As pi0 denotes the probability of not having a stock at warehouse i, we can compute the local fill rates easily, bi ¼ 1 pi0 . Since the local fill rate, ELT rate, and central warehouse portion for each location i add up to 1 (100% of local demand), we obtain the ELT rate to be ai = 1 bi c. ELT demand rate ei still needs to be evaluated and it is done following the approach described by Alfredsson and Verrijdt (1999). If fi denotes the fraction of total demand k that is satisfied at local warehouse i, then fik equals to ki + ei if warehouse i has stock and equals to zero if warehouse i is out of stock. Then
μ
2μ
S-1
3
2
λ
1
Si ! ðS i jÞ!
j¼0
λ
λ
(Si-1) μ
(Si-2) μ
μ
2μ
S 0
λ
k
3.3. Model for ELTs and local fill rates (ai and bi)
Siμ 0
: l j
Amount fik can also be viewed as the total demand satisfied by warehouse i with two parts: the demand originally assigned to warehouse i, and the other warehouses’
k
μ
c¼P
fi k ¼ bi ðki þ ei Þ þ ð1 bi Þ0:
: l j
(S-1)
The value of c is then equal to the probability of having zero total stock, since all the local warehouses share their inventories and try to satisfy demands from their on-hand inventories before requesting for a direct delivery from the central warehouse. Thus
C
3
C
S
S-1
λ
Fig. 2. Transition diagram of the aggregate model representing the central warehouse.
gi
gi
gi
gi
gi
Fig. 3. Transition diagram of local warehouse i.
E. Kutanoglu, M. Mahajan / European Journal of Operational Research 194 (2009) 728–742
demands warehouse i is able to satisfy through ELTs. Then, we have, n X xqi aq kq : fi k ¼ bi ki þ q¼1 q–1
Then, we have Q bpim m1 m0 ¼1 ð1 bpim0 Þ xipim ¼ Pn1 Qm0 1 m0 ¼1 bpim0 m00 ¼1 ð1 bpim00 Þ
733
8i; m ¼ 1; 2; . . . ; n 1:
Solving for ei between these two equations, we obtain n 1 X ei ¼ xqi aq kq : bi q¼1 q–1
Clearly, ei is a function of both ai and bi, which themselves depend on ei. Therefore, an iterative procedure is used to update the values of ei, ai and bi, as was done in Axsa¨ter (1990) and in Alfredsson and Verrijdt (1999), who both reported convergence in a few iterations. Iterations are started by setting ei to zero for all i and at each iteration the ei’s are used to calculate the adjusted demand rates gi, which are then used to calculate the steady-state probabilities at each warehouse. Then, ai’s and bi’s are calculated and are used to recalculate ei’s. New values of ei’s are used in the next iteration and the whole process is continued until the values over two consecutive iterations converge. For local warehouse i having a stock level of zero, we know that bi is zero and ai = 1 c, which means iterations are not needed for warehouses with a stock level of zero. Alfredsson and Verrijdt (1999) report numerical results that show very high accuracy levels of the local and ELT fill rates values estimated by their procedure. We now need to provide a procedure to evaluate x’s. Note that for n = 2, this probability is always equal to 1. Also, when a stocked neighboring location is chosen for ELT randomly, the probability xiq is equal to 1/(n 1) for all i and q. Choosing the warehouse to provide an ELT randomly may result in the demand being satisfied by a warehouse that is far from the customer, even though a nearer warehouse can satisfy it. In our model, for each local warehouse i, the neighboring warehouses are prioritized according to their relative distance from the customers of warehouse i. Let pim denote the warehouse having the mth priority for fulfilling an ELT for a customer originally assigned to warehouse i. In case of a stock-out at warehouse i, consider that the stock is satisfied by a warehouse having the priority m. This means that the stock is available at local warehouse pim with probability bpim , and is not available at all the local warehouses Qm1 having a priority higher than m, with probability m0 ¼1 ð1 bpim0 Þ. Hence, xipim can be calculated as m 1 Y
xipim ¼ bpim
ð1 bpim0 Þ for m ¼ 1; 2; . . . ; n 1:
m0 ¼1
These probabilities need to be normalized, as they must sum to one for local warehouse i. Thus xiq ; 8i; q: xiq ¼ Pn q¼1 xiq0 q–1
3.4. Evaluation of time-based service levels Time-based service levels are defined as the percentage of total demand satisfied within specified time windows. In our model, three time windows (e.g., 4 hours, 8 hours and 12 hours) are considered. For each local warehouse, all the customers (including the customers of other warehouses) are categorized such that the customers who are within 4 hour from the warehouse make up the 4 hour customers, customers who are within 8 hour make up the 8 hour customers, and so on. The time taken by a warehouse to provide service to a customer depends on the distance between them. The central warehouse is assumed to be located far away from the customers and hence direct deliveries from the central warehouse do not count as on-time deliveries for any of the time windows. Thus, having more direct deliveries from the central warehouse intentionally causes a decrease in the time-based service levels. We introduce additional notation to calculate the timebased service levels: Wik: The time window in which customer k can be satisfied by warehouse i. is within the time window Kwi: Total local demand that P w of warehouse i, i.e., Kwi ¼ 8k;lðkÞ¼i kik . W ik 6w
K0wiq : Total demand of warehouse i customers that are within P time window w of warehouse q(q – i), i.e., K0wiq ¼ 8k;lðkÞ¼i kik . W qk 6w
Fw: Time-based service level for time window w. The demand that is satisfied within time window w is divided into two parts: The demand satisfied by on-hand inventory and demand satisfied by ELTs. Assuming local warehouses satisfy demands in first come, first served fashion (i.e., without any customer prioritization), demand satisfied within window w by on-hand stock at warehouse i is determined by biKwi. Recall xiq is the probability of using warehouse q as an ELT source for a customer assigned to warehouse i. Then, the amount xiq K0wiq gives the demand of warehouse i within window w that is satisfiedPby a neighboring warehouse q. n 0 Therefore, we calculate q¼1 xiq Kwiq which provides the q–1
total demand of warehouse i that is satisfied within time window w by all the neighboring warehouses. Multiplying Pn 0 q¼1 xiq Kwiq by ai, we obtain the total demand of wareq–1
house i that is satisfied within time window w by ELTs (again assuming FCFS demand satisfaction). Thus, we
734
E. Kutanoglu, M. Mahajan / European Journal of Operational Research 194 (2009) 728–742
obtain the following expression for the achieved time-based service level: 0 1 Fw ¼
n X C 1 Xn B Bbi Kwi þ ai xiq K0wiq C A forw in W i¼1 @ k q¼1 q–i
where W ¼ fw1 ; w2 ; . . . ; wz g represents the set of z distinct time windows considered: where W represents the set of z distinct time windows considered. Note that time-based service level is a system-wide measure that includes all the warehouses and hence is a function of stock levels and customer demands of all warehouses. It further depends on the distances of all the customers with respect to all local warehouses. 3.5. Total cost function The cost of the system depends on the local and ELT fill rates of the local warehouses for a given stock distribution. The total cost function includes several components: 3.5.1. Inventory holding cost This is calculated as the holding cost per unit item per unit time (h) times the average inventory level across all local warehouses. Using the steady-state probabilities for the system (recall that ps is the probability of having a total of S items on hand across the local warehouses), we can calculate the average inventory across all local warehouses using the lost-sales average inventory formula for a virtual facility with a total stock level s as follows: k Average Inventory ¼ S ð1 cÞ : l We can do this as all the available inventory in the system is fully shared by all local warehouses. Then, the inventory holding cost per unit time for the overall system is h S ð1 cÞ lk .
3.5.2. Transportation and penalty costs Transportation costs include the cost of transporting the part from the central warehouse to local warehouses and from local warehouses to customers. In our system, a customer may be served by its assigned warehouse, a neighboring local warehouse, or the central warehouse. Hence, multiple sources for providing parts to customers need to be considered. Whenever a customer is satisfied with an ELT or a direct delivery from the central warehouse, there is some loss of customer goodwill which is captured by a penalty cost. In the cost model, penalty costs are assumed part of the transportation costs, by multiplying the transportation costs by a factor. Transportation costs are further divided into four categories:
(i) Cost of transporting the part from the central warehouse to local warehouses (TC1): The central warehouse is assumed to be far away from all the local warehouses and customers, and therefore, the cost of transporting the part from the central warehouse to any of the local warehouses is considered to be same. Hence, amount (1 c)k is the total demand that is satisfied by local warehouses, which is the same as the number of parts the central warehouse has to ship to the local warehouses. Therefore TC 1 ¼ tð1 cÞk: (ii) Cost of transporting the part from local warehouse i to customer k when l(k) = i (TC2): For warehouse i, bi represents the fraction P of demand satisfied from onhand stock. Hence, k bi kik is the total demand warehouse i satisfies directly, and the associated cost is XX bi kik uik : TC 2 ¼ i
k
(iii) Cost of transporting the part from local warehouse q to customer k when l(k) – q (TC3): This is the cost of emergency lateral transshipments. To include penalty costs, the ELT transportation cost is multiplied by a factor q, assumed to be independent of q and k. This implies that 100(q 1)% is the additional (penalty) cost due to ELTs as a percentage P of the ELT transportation cost. Then, amount k xiq ai kik represents the demand of warehouse i satisfied by warehouse q and the cost of satisfying that demand is XXX xiq ai kik uqk : TC 3 ¼ q i
q;q–i
k
(iv) Cost of direct deliveries from the central warehouse to customer k (TC4): Since all customers are far-off from the central warehouse, the costs here are independent of the customer and are considered in the single parameter v. The amount ck is the demand satisfied via direct deliveries from the central warehouse. Therefore TC 4 ¼ vck: Hence the total cost can be evaluated as follows: XX X ki þ tð1 cÞk þ Total cost ¼ h Si bi kik uik l i i k XXX þq xiq ai kik uqk þ vck: i
q;q–i
k
To achieve high time-based service levels, large amounts of inventory (higher stock levels) are required, which would result in high holding costs and both TC1 and TC2 would increase as more demand would be satisfied by on hand inventory and a less number of direct deliveries and ELTs would be required. Hence, both TC3 and TC4 would decrease. Therefore, an optimization method is needed to find
E. Kutanoglu, M. Mahajan / European Journal of Operational Research 194 (2009) 728–742
the stock levels that minimize the total cost and satisfy the time-based service level constraints. The cost minimization problem in the steady state is XX X ki þ tð1 cÞk þ h Si bi kik uik Min Z ¼ l i i k XXX þq xiq ai kik uqk þ vðckÞ i
subject to 1 Fw ¼ k
q;q–i
1
Bbi Kwi þ ai @
n X q¼1 q–1
C xiq K0wiq C A
P F w ; w in W ¼ fw1 ; w2 ; . . . ; wz g; S i P 0; and integer; 8i where Fw is the target time-based service level for time window w. In the experiments, we use z = 3 time windows (w1 = 4 hours, w2 = 8 hours, and w3 = 12 hours) with target service levels expressed as percentages, F4 = 0.6, F8 = 0.8, and F12 = 0.95, as base settings. To calculate the total cost objective function (Z) and constraints (time-based service levels), values of c,ai, bi (for all i) and xiq (for all i, q) are required. Recall that ai, bi and xiq are obtained by using the iterative procedure described earlier. Solving the above problem would give the stock levels at all the local warehouses. The stock levels may however suggest that some of the local warehouses should have a zero base stock level, i.e., they should not have any stock on hand. This implies that all the demand coming to that local warehouse would be satisfied by ELTs or direct deliveries, which would then result in questioning the existence of that local warehouse. In general, there are a variety of parts involved in the system and this local warehouse might be needed for stocking some other part. Hence, we assume that the local warehouses can have zero stock level. 3.6. No inventory sharing case For the case when there is no inventory sharing between the local warehouses, the aggregate model presented earlier is not valid. Here, all the local warehouses behave independently of each other. Then, the fraction of warehouse i demand satisfied by the central warehouse (ci) depends on the stock level and demand rate at warehouse i. Without inventory sharing, bi is calculated as 1 ci and hence iterations to calculate the fill-rates are not required in this case. Therefore ci ¼ P Si
1
Si ! j¼0 ðS i jÞ!
bi ¼ 1 ci ;
j ;
for the holding cost used in the sharing case is not used here. The equations used for the no-sharing case are: 2 0 1 PS i S i ! l s n s X 6 B s¼0 ðS i sÞ! ki C s A Total cost ¼ 4 h@ P Si l Si ! i¼1
s¼0 ðS i sÞ!
þðtð1 ci Þki Þ þ
0
n B X i¼1
k
8i;
l ki
8i:
The total cost can be found by just adding the costs of each of the local warehouses. There is no ELT transportation cost as there is no inventory sharing. The approximation
735
X
ki
b kik uik k i
3 7 þ ðmci ki Þ 5
1 Xn b Kwi for w in i¼1 i k W ¼ fw1 ; w2 ; . . . ; wz g:
Fw ¼
4. Solution methodology The inventory sharing optimization problem described in Section 3 is non-linear with implicit constraints and an iterative procedure, and is quite complicated to solve. If the stock level at each local warehouse is known, it is relatively easy to compute the total cost and to check whether time-based service level constraints are satisfied. Hence, we develop a method based on enumeration, in which all possible stock profiles (stock levels across all local warehouses, (S1, . . . , Sn)) are enumerated and the total cost for each enumeration is calculated. For each stock profile, we check whether it satisfies the time-based service level constraints or not. The best stock profile is the one that satisfies all of the time-based service level constraints and yields minimum total cost. The algorithm is coded in C++ and is run on Pentium M 1.4 GHz Centrino processor with a Windows-based operating system. Because service parts have very low demand, we assume that in the best solution a local warehouse would never stock more than a certain number of parts, a bound assumed to be the same across warehouses for simplicity. Therefore, each local warehouse can have a stock level of zero, or a positive integer up to Smax. For a 10-warehouse problem with 3 units of stock allowed, approximately a million (410) stock profiles (combinations of individual stock levels across all warehouses) are possible and the goal is to find the one with minimum (estimated) cost. Considering that enumerating a million configurations and then calculating their costs (and service levels), is not particularly efficient, we introduce a lower bound that tries to eliminate the unpromising stock profiles from consideration, making the overall procedure an implicit enumeration algorithm. (Given the warehouse demand rates, a tighter bound on the stock level, potentially different for each warehouse, can be calculated. One way is to find the stock level that achieves a very high fill rate (say 99.99%), i.e., solve for the base stock level in the fill rate equation given the lead time demand rate and the fill rate of 99.99%. In this case, holding more than this stock level would not improve service, but would increase the inventory costs, hence it would serve as a bound. We can view
736
E. Kutanoglu, M. Mahajan / European Journal of Operational Research 194 (2009) 728–742
the simplistic level of Smax as a maximum value on the warehouse specific bound. The lower bounding method introduced later naturally makes use of the tighter bounds mainly because having higher stock levels with no extra gain in service would be dominated and eliminated. For example, if 2 units of stock already yield 99.99% fill rate, considering 3 units will only increase the cost.) For a n-local warehouse problem, the total stock across all the local warehouses can range from 0 to nSmax. In order to decrease the number of enumerations required, a lower bound on cost is calculated corresponding to every total stock level. Given the total stock level, S, the lower bound constructs a system that overestimates service and underestimates cost. For inventory cost, the system assumes that the total stock is fully shared as if it is centralized in a single location. For direct deliveries and replenishments from the central warehouse, the transportation costs are captured without underestimation (hence tightly) by calculating c assuming full sharing among local warehouses. For local warehouses to customer deliveries, the transportation costs are underestimated as if all such deliveries are made from customers’ main locations (with smallest transportation costs). As part of this calculation, local warehouse fill rates are overestimated; assuming the demand not satisfied by direct delivery from the central warehouse is satisfied by the main local warehouse. Hence, this component is an underestimation, as portions of these deliveries are through ELTs and are more expensive in an actual solution with full inventory sharing. A similar logic is used for time-based service calculation (all local warehouse to customer deliveries are assumed to be done from the customers’ main locations and fill rate are overestimated). To facilitate the lower bound calculation more formally, we calculate c as before. With centralized inventory under k estimation, the holding cost is calculated as h S l . The central warehouse direct deliveries to customers and replenishments cost vck, and t(1 c)k, respectively. Finally, assuming all deliveries to a customer are done from its main location, we obtain bi = 1 c, which is the same for all i (denoted by b dropping P P its index), and compute this cost component as b i k kik uik . In short, the lower bound does not change TC1 or TC4, increase TC2, and decrease TC3 to zero. Because the costs of ELTs are always higher than normal deliveries, the increase in TC2 is less than the decrease in TC3. Therefore, the lower bound for each total stock level (S) is calculated as XX k þ tð1 cÞk þ b kik uik þ vck; LBðSÞ ¼ h S l i k where c¼P
1
S S! j¼0 ðSjÞ!
; l j k
and b ¼ 1 c:
Note that no iterations are needed (required earlier to calculate ai and bi) when calculating lower bounds. Also, c used here is not the same as the case when there is no-sharing of inventory between the local warehouses. This means that all the customer demand can be satisfied by direct deliveries from the central warehouse and by the local warehouse on-hand inventory, which is generally not true. Lower bounds for all the total stock levels (say 0 to nSmax) are then sorted. We start by enumerating all the stock profiles for the total stock level having the lowest lower bound and then for the one having second lowest lower bound and so on. We do this hoping that enumerating stock levels with smaller lower bounds first would give good feasible solutions that can be used to eliminate nonpromising stock profiles that have larger lower bounds than the best feasible solution’s cost. For each enumerated stock profile, ai and bi are calculated (for all i) using the iterative procedure. Then, the total cost is calculated and the time-based service level constraints are checked. Whenever a feasible stock profile is enumerated, if it is better than the best solution found so far, then its total cost is set as the new incumbent upper bound on the minimum total cost. We obtain an upper bound on cost (best solution achieved so far) after enumerating all the stock profiles for a particular total stock level. At the start of enumeration for a total stock level if it is found that the current upper bound is less than the lower bound for the total stock level, then there is no need of further (stock profile) enumeration of the total stock level. All the remaining total stock levels would also have lower bound greater than the upper bound as they are already sorted. The stock profile corresponding to the most recent upper bound provides the minimum-cost stock levels at all local warehouses and the upper bound is reported as the total cost corresponding to the best solution. 5. Experimental settings To investigate the behavior of the system and the performance of the algorithm with changes in the system parameters, a hypothetical network is designed by randomly locating 75 customers and n = 10 local warehouses on a grid of 100 100 ‘miles’. Four different networks are designed so that the results are not biased due to instances. Then, certain values are assigned to the system parameters including holding cost, transportation cost, penalty cost, replenishment rate, and demand rates. However, each of these parameters is quite subjective and depends on the industry. Hence, for each of the four networks, the behavior of the system is analyzed by observing how the number of enumerations required, costs of the system, and stocking decisions change with changes in these parameters. We study the effect of variation in the following system parameters: Replenishment rate (or lead time). Holding cost per unit item (h).
E. Kutanoglu, M. Mahajan / European Journal of Operational Research 194 (2009) 728–742
Penalty factor (q). Unit cost of direct delivery from the central warehouse (v). Unit cost of replenishment delivery from the central warehouse to a local warehouse (t). To study the effect of change in demand rates, first a number between 0 and 0.15 is generated for each customer, representing mean demand rates. This gives one set of demand rates. By multiplying and dividing these demand rates by 1.5, two other sets of demand rates are generated. The demand is chosen in this range so as to incorporate low-demand characteristic of SPL systems. The lead times are assumed to be exponentially distributed, with three different mean values: 2 days (replenishment rate of 15 times per month), 3 days (10 per month), and 6 days (5 per month). Given these demand rates and lead times, we assume that stock levels can be up to 3, with Smax = 3. For each of the 75 customers and 10 local warehouses, the x and y coordinates are determined by generating two random numbers between 0 and 100. The Euclidean distance of the customers from every local warehouse is calculated. Each customer is then assigned to its nearest local warehouse (main location). Assuming that the cost of delivery from a local warehouse to a customer (uik) is directly proportional to the distance between them, the transportation cost is assumed to be $2.5 per unit distance. To incorporate the penalty costs associated with ELTs, the ELT transportation cost is multiplied by factor q, which is varied from two to four. The cost of direct deliveries from the central warehouse is assumed to be independent of customer location and is generally very high compared to normal shipment costs. The unit cost of direct deliveries is then varied between $500 and $1500. The effect of cost of transporting the part from the central warehouse to a local warehouse (t) is studied by varying it between $10 and $30. The cost of the part and interest rate are required to calculate holding costs. As service parts are generally expensive, the cost of the part is varied between $500 and $4500. The monthly interest rate has been fixed at 2%. The time window in which a customer can be satisfied will depend on the distance between the customer and the local warehouse serving the customer. Therefore, for each local warehouse, all the customers are grouped into four categories: customers who can be satisfied within 4 hours (within 20 units of distance), 8 hours (40 units), 12 hours (60 units), and more than 12 hours from the warehouse. The ELT priorities are also required. For each local warehouse q(q – i), the mean transportation cost for all the customers of warehouse i (weighted by respective demand) is calculated as follows: ! P k;lðkÞ¼i uqk kik P : Mean Transportation Cost ði; qÞ ¼ k;lðkÞ¼i kik The warehouse having a lower mean transportation cost is relatively closer to the customers of warehouse i. Therefore,
737
based on these mean transportation costs, priorities for fulfilling an ELT by local warehouse i are decided. In the model, time-based service levels form the constraints stating 60% of the total demand should be satisfied in 4 hours, 80% in 8 hours, and 95% in 12 hours. To see the effect of relaxing these constraints, the percentages are reduced to 40%, 60% and 85% for the demand that should be satisfied in 4 hours, 8 hours, and 12 hours, respectively. 6. Computational results More than 200 individual problems are solved using the algorithm introduced in Section 4. The developed implicit enumeration algorithm solves all instances within 3 minutes of CPU time. Tables 1–3 show the results for the first network. Table 1 shows the results when sharing between local warehouses and priorities for ELTs are considered. Table 2 shows the results for the case when sharing between local warehouses is considered but all the local warehouses has the same priority for an ELT (randomly selecting a warehouse with stock on hand). The results for the case when there is no inventory sharing between local warehouses are shown in Table 3. The results for the other networks are similar to network 1. Therefore, for brevity, we discuss the results corresponding to network 1 in detail. In each of the tables, there is a base case with certain values assigned to the system parameters such as unit holding cost, penalty factor, cost of direct deliveries, total demand rate, replenishment rate, and target time-based service levels. Then each of these parameters is varied one by one to study their effect on the system. For the no-sharing case there will be no ELTs and hence, penalty factor q is not varied for that case. In all the problem instances the best stock level at a local warehouse was always less than or equal to 2 parts. This shows that having more than a stock of 3 parts at a local warehouse as an option would never be optimal for the generated demands. The stock levels vary across different networks for the same values of parameters mainly due to time-based service levels which depend on relative locations of customers and warehouses. There is not much difference in the total demand rate in the four networks considered. Hence, we conclude that the locations of local warehouses and customers can have an impact on the stocking decisions. 6.1. Effect of the lower bounds As discussed earlier, there are more than a million (410) enumerations possible for a 10-local warehouse problem. Tables 1 and 2 show that the number of enumerations required to find the best stock profile within the algorithm is reduced significantly. For our model, which considers both inventory sharing as well as prioritization of warehouses in ELTs, the total number of enumerations required is reduced by at least 65%, in some instances much more,
738
Table 1 Network 1 results (considering inventory sharing between local warehouses with priorities for ELTs)
Base case Changing c
Changing q Changing v Changing l Changing k
l
5.63 5.63 5.63 5.63 5.63 5.63 5.63 5.63 5.63 5.63 5.63 5.63 5.63 3.75 8.45
10 10 10 10 10 10 10 10 10 10 10 15 5 10 10
Changing time-based service 40%, 60%, 85% 5.63 60%, 80%, 95% 5.63 40%, 60%, 85% 5.63
levels 10 10 10
t
q
v
Total enum.
CPU time
HC
TC1
TC2
TC3
TC4
50 90 70 30 10 50 50 50 50 50 50 50 50 50 50
10 10 10 10 10 20 30 10 10 10 10 10 10 10 10
2 2 2 2 2 2 2 3 4 2 2 2 2 2 2
1000 1000 1000 1000 1000 1000 1000 1000 1000 1500 500 1000 1000 1000 1000
62777 33782 33727 171040 354035 171040 171040 171040 171040 62777 62832 62832 107360 33782 171040
26 15 15 70 157 71 71 81 77 28 28 27 57 14 82
321.85 579.32 450.58 253.11 104.37 321.85 321.85 421.85 471.85 321.85 321.85 331.23 343.69 281.23 357.77
56.309 56.309 56.309 56.309 56.309 112.62 168.93 56.309 56.309 56.309 56.309 56.309 56.307 37.539 84.463
153.96 153.96 153.96 173.94 185.13 153.96 153.96 173.94 181.95 153.96 153.96 158.57 150.85 90.83 236.28
165.97 165.97 165.97 81.694 38.617 165.97 165.97 122.54 103.7 165.97 165.97 143.76 185.23 156.82 230.85
0.011419 0.011419 0.011419 5.03E05 1.45E07 0.011419 0.011419 5.03E05 2.83E06 0.017128 0.005709 0.000806 0.117166 0.010024 0.023316
50 100 100
10 10 10
2 2 2
1000 1000 1000
62777 33782 16577
28 15 7
321.85 643.69 443.71
56.309 56.309 56.294
153.96 153.96 114.06
165.97 165.97 361.4
0.011419 0.011419 1.51263
h
Total cost 698.099 955.576 826.837 565.054 384.425 754.408 810.717 774.639 813.804 698.1056 698.0942 689.87 736.199 566.43 909.377
Optimal stock 7 7 7 9 11 9 9 9 10 7 7 7 8 6 8
698.099 1019.94 976.97
7 7 5
Table 2 Network 1 results (considering inventory sharing between local warehouses, but no priorities for ELTs)
Base case Changing c
Changing T Changing q Changing v Changing l Changing k
k
l
5.63 5.63 5.63 5.63 5.63 5.63 5.63 5.63 5.63 5.63 5.63 5.63 5.63 3.75 8.44
10 10 10 10 10 10 10 10 10 10 10 15 5 10 10
Changing time-based service 40, 60, 85% 5.63 60, 80, 95% 5.63 40, 60, 85% 5.63
levels 10 10 10
t
q
v
Total Enum.
CPU time
HC
TC1
TC2
TC3
TC4
Total cost
Total stock level
50 90 70 30 10 50 50 50 50 50 50 50 50 50 50
10 10 10 10 10 20 30 10 10 10 10 10 10 10 10
2 2 2 2 2 2 2 3 4 2 2 2 2 2 2
1000 1000 1000 1000 1000 1000 1000 1000 1000 1500 500 1000 1000 1000 1000
171040 107635 107635 354035 694409 171040 171040 253980 354090 171040 171095 171095 354035 107635 466070
26 16 16 59 141 26 25 41 61 26 26 23 65 14 85
421.85 759.32 590.58 283.11 124.37 421.85 421.85 471.85 521.85 421.85 421.85 431.23 493.69 431.23 507.77
56.31 56.31 56.31 56.31 56.31 112.6 168.9 56.31 56.31 56.31 56.31 56.31 56.31 37.54 84.46
174.03 174.03 174.03 181.81 190.62 174.03 174.03 181.81 185.35 174.03 174.03 178.48 173.56 118.99 270.65
153.59 153.59 153.59 108.66 37.65 153.59 153.59 162.99 157 153.59 153.59 117.52 157.7 78.347 176.26
5.03E05 5.03E05 5.03E05 2.83E06 2.95E10 5.03E05 5.03E05 2.83E06 1.45E07 7.54E05 2.51E05 1.58E06 1.69E04 1.05E06 1.42E05
805.773 1143.25 974.511 629.883 408.948 862.081 918.39 872.951 920.495 805.773 805.773 783.538 881.26 666.102 1039.14
9 9 9 10 13 9 9 10 11 9 9 9 11 9 11
50 100 100
10 10 10
2 2 2
1000 1000 1000
171040 107635 62832
26 15 8
421.85 843.69 443.71
56.31 56.31 56.29
174.03 174.03 125.69
153.59 153.59 535.69
5.03E05 5.03E05 1.51263
805.773 1227.62 1162.9
9 9 5
h
E. Kutanoglu, M. Mahajan / European Journal of Operational Research 194 (2009) 728–742
Changing t
k
E. Kutanoglu, M. Mahajan / European Journal of Operational Research 194 (2009) 728–742
739
Table 3 Network 1 results (no inventory sharing between local warehouses)
Base case Changing c
Changing t Changing v Changing l Changing k
t
v
50 90 70 30 10 50 50 50 50 50 50 50 50
10 10 10 10 10 20 30 10 10 10 10 10 10
1000 1000 1000 1000 1000 1000 1000 1500 500 1000 1000 1000 1000
levels 10 50 10 100 10 100
10 10 10
1000 1000 1000
k
l
5.63 5.63 5.63 5.63 5.63 5.63 5.63 5.63 5.63 5.63 5.63 3.75333 8.445
10 10 10 10 10 10 10 10 10 15 5 10 10
Changing time-based service 40, 60, 85% 5.63 60, 80, 95% 5.63 40, 60, 85% 5.63
h
TC1
TC2
TC3
TC4
Total cost
Total stock level
572.773 941.785 801.882 403.413 174.395 572.773 572.773 622.513 523.214 581.643 695.332 482.074 758.366
54.454 53.572 54.454 55.289 56.053 108.909 163.363 54.975 53.572 55.072 54.668 35.851 83.267
188.702 185.758 188.702 191.695 194.36 188.702 188.702 190.75 185.758 190.881 189.754 124.35 288.844
0 0 0 0 0 0 0 0 0 0 0 0 0
185.43 273.67 185.43 101.97 25.52 185.43 185.43 200.09 136.84 123.7 164.06 168.76 119.56
1001.36 1454.79 1230.47 752.366 450.329 1055.81 1110.27 1068.33 899.379 951.295 1103.81 811.039 1250.04
12 11 12 14 18 12 12 13 11 12 15 10 16
572.773 1046.43 947.393
54.454 53.572 52.607
188.702 185.758 182.487
0 0 0
185.43 273.67 370.177
1001.36 1559.43 1552.66
12 11 10
HC
by up to 94%. These results justify the use of the lower bounds. The number of enumerations required increases as the unit holding cost (h) decreases. This is because the lower bounds are calculated by neglecting the ELT costs, and hence, the lower bounds would not be as tight if the holding costs are very low as compared to the cost of ELTs. This does not present a significant problem for our model because the unit holding cost is generally high for service parts. We also find that the number of enumerations required for the system having priorities for ELTs (Table 1) was always less than or equal to that for the system without priorities (Table 2). Hence, the solution can be found with less number of enumerations, potentially leading to best solutions faster. 6.2. Sensitivity with respect to the unit cost of a direct delivery (v) If there is significant sharing between local warehouses, the fraction of demand that is satisfied by the central warehouse (c) would be low. Hence, total cost of direct deliveries (TC4) would have negligible effect on the cost of the system or on the amount of total stock required. This is a general trend for all the problem instances and can be seen in Tables 1 and 2. Therefore, the cost of direct delivery is considerable only when the total stock level is low. However, low (total) stock levels will not usually be feasible because of the time-based service level constraints. Therefore, there is no need to consider direct delivery costs explicitly in the model if there are stringent time-based service level constraints. On the other hand, for the no-sharing case, the fraction of demand satisfied by the central warehouse can be significant and, in turn, there is a substantial effect of the direct delivery cost on the system, both its cost and its service. Table 3 shows that an increase in unit direct delivery cost results in increase in the total cost of the system and the system tends to hold more stock.
6.3. Sensitivity with respect to the transportation cost between the central and local warehouses (t) Increase in t increases cost of transportation from the central warehouse to the local warehouse (TC1), but has no effect on other costs. Hence, the total cost increases with increase in t. Changes in t do not affect the best stock levels for the system. We can explain this using the formula for TC1 and TC4 derived earlier: TC 1 þ TC 4 ¼ tð1 cÞk þ vck ¼ tk þ ðv tÞck; which is approximately equal to tk + vck, as v t. Then, we have oðTC 1 þ TC 4 Þ k: ot Therefore, the effect of changing t on total cost depends mainly on k and stocking decisions are not affected by the value of t. The above derivation assumes the fact that the unit direct delivery cost (v) is much larger than the cost of transportation from the central warehouse to local warehouses (t). This is generally true as the penalty cost for using the central warehouse for a direct delivery to a customer is very high. 6.4. Sensitivity with respect to the unit holding cost (h) From Fig. 4, it is clear that increase in holding cost increases the total cost of the system. It also shows that the total cost is reduced by a considerable amount by inventory sharing and is also lowered by having priorities for ELTs. Tables 1–3 also show that increasing the holding cost decreases the minimum total stock. Average inventory decreases because of decrease in stock levels. Considering the increase in unit holding cost, the net effect is an increase
740
E. Kutanoglu, M. Mahajan / European Journal of Operational Research 194 (2009) 728–742
No Sharing
Sharing with Priority 1500
1500
1300
1300 1100
TC4
900
TC3
700
TC2
500
TC1
Cost
Cost
1100
TC4
900
TC3
700
TC2
500
TC1
Holding Cost 300
Holding Cost
300
100
100
-100
10
30
50
70
-100
90
10
30
50
70
90
Holding Cost per unit item(c*I)
Holding Cost per unit item(c*I)
1500
No Sharing
Sharing with no priority 1500
1300
1300
1100
1100
TC3
700
TC2
500
TC1
Cost
Cost
900
TC4
900
700
Sharing with priority
500
Holding Cost
300
Sharing w/o priority
300 100
100 -100
10
30
50
70
90
-100
10
30
Holding Cost per unit item(c*I)
50
70
90
Holding Cost per unit item
Fig. 4. Effect of changing unit holding cost.
in the total holding costs. A decrease in total stock also decreases the cost of transporting parts from the local warehouses to their customers (TC2), but increases the cost due to ELTs (TC3) and direct deliveries (TC4). The results also
show that after a certain level, an increase in holding cost does not affect the minimum-cost total stock. This happens because of the time-based service level constraints, which force the system to have a certain minimum amount of stock.
Sharing with Priorty
Sharing without Priorty
1000
1000
900
900 800 TC4
700
TC4
600
TC3
600
TC3
500
TC2 TC1
400
Holding Cost
300
Cost
700
500
TC2
400
TC1
300
Holding Cost
200
200
100
100
0
0 2
3
4
2
3
Penalty Factor
Penalty Factor 1000 900 800 700
Total Cost
Cost
800
600 500
Sharing with priority
400 300
Sharing without priority
200 100 0 2
3 Penalty Factor
4
Fig. 5. Effect of changing penalty factor.
4
E. Kutanoglu, M. Mahajan / European Journal of Operational Research 194 (2009) 728–742
Sharing with Priorty
1000
Sharing without Priorty 1000
900
900
800
800
700
TC4
600
TC3
500
TC2
Cost
Cost
741
TC1
400
Holding Cost
300
700
TC4
600
TC3
500
TC2
400
TC1
300
Holding Cost
200
200
100
100
0
0 5
10
15
5
Replenishment Rate
10
15
Replenishment Rate
No Sharing
1200 1000
TC4
Cost
800
TC3
600
TC2 TC1
400
Holding Cost
200 0 5
10
15
Replenishment Rate
Fig. 6. Effect of changes in replenishment rate.
6.5. Sensitivity with respect to the penalty factor (q)
6.7. Sensitivity with respect to time-based service levels
The results suggest that the total cost of the system increases with the increase in the penalty factor (Fig. 5). The stock level increases as the penalty factor goes up (Tables 1 and 2). Intuitively this makes sense, as the system would try to satisfy more demand from the assigned local warehouses rather than using an ELT. An increase in the stock level increases holding costs and TC2, and decreases costs due to ELTs (TC3) and direct deliveries (TC4). Fig. 5 also shows that prioritizing ELTs results in lower total costs. The minimum-cost total stock required is less if priorities are used. This means that the time-based service level constraints can be satisfied with a lower stock level if priorities are used.
To study the effect of relaxing the time-based service level constraints, the constraints are changed as 40% of the total demand should be satisfied in 4 hours, 60% in 8 hours and 85% in 12 hours. Tables 1–3 show that the best solution does not change if these relaxations are applied. The reason is the relative difference between the unit holding cost and the unit cost of an ELT. With the lower service levels, smaller base stock levels become feasible but the lowest cost solution does not change. If the lower service targets are required for the higher unit holding cost levels, the best solution changes. The solution suggests a lower total stock level for the system and obtains a lower total cost. The decrease in total cost is more substantial in the case of sharing (Tables 1 and 2).
6.6. Sensitivity with respect to the replenishment rate (l)
7. Conclusions and future work
Fig. 6 depicts that the total cost decreases with an increase in the replenishment rate or a decrease in the lead time (1/l). As the lead time decreases, local warehouses are replenished faster, and hence they can have a lower base stock level, which would lead to a decrease in total cost. Similar to the case of holding costs, after a certain level, an increase in the replenishment rate does not affect the total stock. There is again a substantial decrease in the total cost, if sharing between the local warehouses is allowed. Also, prioritization produces lower total costs than those of random selection of ELT warehouses.
In this paper, we consider a two-echelon service parts logistics system with one central warehouse and a number of local warehouses. The problem is to determine the best base stock levels at all local warehouses that meet all the time-based service level constraints at minimal costs. We develop an implicit enumeration-based algorithm to solve the problem. To satisfy these stringent time-based service levels, we allow all the warehouses in the same echelon to share their inventory in the form of emergency lateral transshipments and prioritize warehouses for ELTs instead of using a random warehouse for ELTs.
742
E. Kutanoglu, M. Mahajan / European Journal of Operational Research 194 (2009) 728–742
The results indicate that to achieve a comparable level of service without location interactions, one need higher base stock levels, and the total system cost would be considerably higher than the case in which inventory sharing is allowed. We also show that having priorities for the emergency shipments results in overall cost reduction. We study the effects of changing various system parameters were studied. We summarize the main conclusions:
ple service regions, each potentially with different costs and service levels. Acknowledgements We thank the two anonymous referees for their comments and suggestions that significantly improved the paper. References
Cost of transporting a part from the central warehouse to a local warehouse has no significant role to play in stocking decisions and therefore, can be neglected in the model. In comparison to a no-sharing case, this cost should be part of the model. Direct delivery costs are not needed in the model if the time-based service levels are restrictive. Increase in the unit holding cost decreases the best total stock, but increases the total cost of the system. After a certain value, increase in holding costs has no effect on the stocking decisions. The response of the system to changes in replenishment rate is similar to the changes in holding costs. Increase in penalty costs due to ELTs increases the best total stock level as well as the total cost of the system. The effect of reducing time-based service levels depends on the relative value of unit holding cost and unit penalty cost. It can have no effect on the system and can also result in decrease in best stock level and total cost of the system. Higher unit holding cost values result in the latter effect. Relative locations of the local warehouses and the customers can change the best stock level and the total cost of the system. There are several possible extensions and improvements to the model. One can extend the model to include the central warehouse stock (capacitated) level as a decision as in Alfredsson and Verrijdt (1999). Keeping the assumption of the central warehouse being outside the time window of all customers, the algorithm will need minor changes to calculate central warehouse costs and service. We expect the results to be parallel to our current results. One can also extend the model to include multiple parts. In such a model, each part can have its own target service level, holding cost and penalty cost depending on criticality. We also assume fixed locations for warehouses. One can integrate facility location decisions into this model. We can also extend the model to consider a variety of transportation modes that can be used to satisfy the demand. One can make the model more flexible by allowing the facilities to have the option of sharing inventory in a particular scenario or not (instead of forcing inventory sharing for all facilities in all scenarios). Finally, we can extend the model by dividing the whole region into multi-
Alfredsson, P., Verrijdt, J., 1999. Modeling emergency supply flexibility in a two-echelon inventory system. Management Science 45, 1416–1431. Axsa¨ter, S., 1990. Modeling emergency lateral transshipments in inventory systems. Management Science 36, 1329–1338. Cohen, M.A., Kleindorfer, P.R., Lee, H.L., 1986. Optimal stocking policies for low usage items in multi-echelon inventory systems. Naval Research Logistics Quarterly 33, 17–38. Cohen, M.A., Kleindorfer, P.R., Lee, H.L., 1989. Near-optimal service constrained stocking policies for spare parts. Operations Research 37, 104–117. Cohen, M.A., Kamesam, P., Kleindorfer, P.R., Lee, H.L., Tekerian, A., 1990. OPTIMIZER: IBM’s multi-echelon inventory system for managing service logistics. Interfaces 20, 65–82. Cohen, M.A., Kleindorfer, P.R., Lee, H.L., Pyke, D.F., 1992. Multi-item service constrained (s,S) policies for spare parts logistics systems. Naval Research Logistics 39, 561–577. Cohen, M.A., Zheng, Y., Agrawal, V., 1997. Service parts logistics: A benchmark analysis. IIE Transactions 29, 627–639. Cohen, M.A., Zheng, Y.-S., Wang, Y., 1999. Identifying opportunities for improving Teradyne’s service parts logistics system. Interfaces 29, 1–18. Graves, S.C., 1985. A multi-echelon inventory model for a repairable item with one-for-one replenishment. Management Science 31, 1247–1256. Hopp, W.J., Spearman, M.L., 2000. Factory Physics. McGraw-Hill, New York City, NY. Hopp, W.J., Spearman, M.L., Zhang, R.Q., 1997. Easily implementable inventory control policies. Operations Research 45 (3), 327–340. Kulkarni, V.W., 1995. Modeling and Analysis of Stochastic Systems. Chapman & Hall Ltd., London, UK. Lee, H.L., 1987. A multi-echelon inventory model for repairable items with emergency lateral transshipments. Management Science 33, 1302– 1316. Muckstadt, J.A., 2005. Analysis and Algorithms for Service Parts Supply Chains. Springer, New York, NY. Muckstadt, J.A., Thomas, L.J., 1980. Are multi-echelon inventory methods worth implementing in systems with low-demand-rate items? Management Science 26, 483–494. Sherbrooke, C.C., 1968. METRIC: A multi-echelon technique for recoverable item control. Operations Research 16, 122–141. Sherbrooke, C.C., 1992. Optimal Inventory Modeling of Systems. Wiley, New York, NY. Tagaras, G., Dimitrios, V., 2002. Effectiveness of stock transshipment under various demand distributions and nonnegligible transshipment times. Production and Operations Management 11, 183–198. Wong, H., Cattrysse, D., Van Oudheusden, D., 2005a. Inventory pooling of repairable spare parts with non-zero lateral transshipment time and delayed lateral transshipments. European Journal of Operations Research 165, 207–218. Wong, H., Cattrysse, D., Van Oudheusden, D., 2005b. Stocking decisions for repairable spare parts pooling in a multi-hub system. International Journal of Production Economics 93–94, 309–317. Zipkin, P., 2000. Fundamentals of Inventory Management. McGraw HillIrwin, Boston, MA.