Embodiments of the invention generally relate to the field of materials management and, more particularly, to a system and method for service parts planning in a multi-echelon network.
In many cases, repairable parts that are part of a larger system or machine are not disposed of after they are removed from the system or machine in which they are used. Instead, these “service parts” are, for reasons of cost and time, typically shipped to a repair and refurbishment location and prepared for reuse. The term “repairable part” broadly refers to a part that can be economically restored to a serviceable condition. Typically, a repairable part can be repeatedly rehabilitated to a serviceable condition over a period approximating the life of the system to which it is related. A “service part” is a more generic term which can refer to repairable parts as well as to non-repairable parts (e.g., consumable parts).
The inventory planning for service parts (or, for ease of reference, service parts planning), typically involves, inter alia, balancing the availability of a system against the magnitude of the investment in the service parts for the system. For example, an ample supply of service parts is desirable to maintain continuity in the operations of the system. The capital invested in the service parts, however, is non-revenue generating and perishable if, for example, a service part becomes obsolete.
Service parts planning can be applied to networks having a variety of topologies. These topologies are typically classified based on the number of service parts in the network (e.g., item approach vs. system approach) and the number of hierarchical levels in the network (e.g., single echelon vs. multi-echelon networks). A network having a single type of service part and flat topology is often referred to as a single part single echelon network. A network having a number of different service parts and a two-level hierarchy is called a multipart two-echelon network. A generalized network having an arbitrary number of service parts and an arbitrary number of hierarchical levels is called a multipart multi echelon network.
Conventional service parts planning systems are often directed to single part single echelon networks. These conventional systems, however, do not provide a generalized solution for service parts planning in a multi-echelon network. In addition, these conventional processes do not address certain analytical complexities that arise in multi-echelon networks.
Embodiments of the invention are generally directed to a system and method for service parts planning in a multi-echelon network having one or more service parts. For at least a subset of the one or more service parts, a calculation is performed to determine a location within the multi-echelon network at which allocating the service part provides the greatest gain in system availability per item cost. In one embodiment, the calculations take into consideration violations of incremental optimal allocation. In an embodiment, the calculations take into consideration violations of convexity.
Embodiments of the invention are illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings in which like reference numerals refer to similar elements.
Embodiments of the invention are generally directed to a system and method for service parts planning in a multi-echelon network having one or more service parts. One objective of service parts planning is to optimize the allocation of service parts to locations with respect to an available budget. Optimization may refer to attempting to maximize system availability with a constrained budget or (inversely) to achieving a given target system availability with a minimum budget.
A demand facing location is a location that provides service parts to systems or machines as needed (and as available). For example, when service part 102 in system/machine 104 fails, demand facing location 112 provides a serviceable instance of service part 102 to system/machine 104. Typically the defective instance of service part 102 is removed from system/machine 104 and exchanged for a serviceable instance of service part 102 provided by demand facing location 112. The defective instance of service part 102 is (typically) conveyed through the hierarchical levels of network 100 or directly presented to repair facility 140 for refurbishment, maintenance, etc. In the illustrated example, the defective instance of service part 102 may be transferred from demand facing location 112 to parent location 124, and so forth, until it reaches entry location 132. The term “entry location” refers to a location at which one or more service parts may enter network 100 from a supplier. Service Parts may leave the network once they are non-refurbishable.
The term “forecasting” refers to estimating the demand for one or more service parts within a network (e.g., network 100, shown in
(operating hours per time period)*(# of installed base systems)*(# of parts per installed base system)/(mean time between removal).
Similarly, where service part usage is measured in terms of the number of times the service part is used (e.g., the number of flights made by an airplane) demand mi,j can be determined in the following way:
(# of start/land cycles of aircraft per time period)*(# of parts per aircraft)*(failure rate per start/land cycle).
In one embodiment, the start/land cycles refer to the start/land cycles for all aircraft at that location. Alternatively, the average number of start/land cycles per aircraft multiplied by the number of aircraft may be used. In an embodiment, only demand of potential “stocking locations” is considered when forecasting demand. The term “stocking location” refers to a location (e.g., demand facing location 112 and parent location 124) that is expected to hold a service part. Demand for a service part experienced at non-stocking locations is aggregated to the next higher level in the network location hierarchy. That is, demand is aggregated from locations where the part is not allowed to be stored to a stocking location. In one embodiment, demand mi,j is considered constant when it is used in calculations.
The term “inventory visibility” refers to determining the size and distribution of a service parts pool in a network (e.g., network 100, shown in
In an embodiment, Distribution Resource Planning (DRP) is not driven by the projected (serviceable) inventory at the entry location, which is time-shifted and aggregated throughout the network. The reason for this is that such a policy could (e.g., in the case of unusually large demand for a part) lead to the generation of purchase requisitions, which would unnecessarily increase the size of the service parts pool. In an embodiment, the optimal investment strategy includes a policy of replenishing to locations where repair cannot be preformed and to accept eventual backorders.
In one embodiment, the procurement process is directed to maintaining a target service parts pool size. If a service part is scrapped for some reason and the service parts pool decreases below the target size, then a service part may be procured so that the size of service parts pool is balanced. If, on the other hand, the service parts pool does not decrease below the target size when the service part is scrapped, then procurement of the service part is not triggered.
In an embodiment, replenishment is based on the following principle: whenever a service part is used at a location and the unserviceable instance of the service part is not repaired at that location, then the service part is replenished from the next higher echelon in the distribution location hierarchy. Stated more abstractly, whenever the service parts pool assigned to a given location falls below the target pool size for that location, replenishment form the next higher echelon in the distribution location hierarchy is triggered.
In an embodiment, the size and distribution of the service parts pool is recalculated. In response to these recalculations, the service part inventory at one location may be decreased to increase the service part inventory at another location (or a number of other locations). In one embodiment, if this process cannot be implemented within a reasonable time using regular turnover or regular replenishment channels, then a lateral parts movement may be triggered. The term “lateral parts movement” refers to moving service parts among locations that occupy the same hierarchical level within a network.
The term “delta planning” refers to conducting service parts planning when the budget allocated for service parts within a network has changed. In an embodiment, if a new budget for purchasing new or replacement service parts becomes available, then delta planning may be triggered. In one embodiment, the system-wide number of parts for each service part is minimally constrained to the size of the current service parts pool, during delta planning. In such an embodiment, delta planning allocates the new budget in a way to provide the best increase in service level starting from the current status quo.
Delta planning does not necessarily imply that retired or scraped parts are replaced. Instead, there may be a number of other investments that provide a more beneficial way to allocate the new budget. For example, a change in demand, a change in installed service parts base, or the presence of a currently non-optimal mix of service parts might suggest that it could be more beneficial to allocate the new budget to other areas.
A system and method for substantially optimizing service parts planning is provided below with reference to
Table 1 provides a list of parameters used in an embodiment of the invention.
The term “system availability” refers to the probability that a system consisting of a set of parts is functioning. The system may be a single location, a set of locations, or the entire network. In an embodiment, the system availability across all demand facing locations in a network is calculated using equation 1:
The term J represents the number of demand facing locations. As illustrated by equation 1, the system availability across all demand locations is the average of system availability values at each location. In an embodiment, the system availability at location j is given by equation 2:
As illustrated by equation 2, the availability at location j is given by the product of the availability for each part at location j. For example, if location j has two parts that each have an availability of 50%, then the probability that both parts are available at the same time is 50% of 50% or, more precisely, the product of the availability for each part.
In an embodiment, the system availability of part i at location j is given by equation 3:
As shown by equation 3, the system availability of part i at location j is a summed Poisson distribution with mean μi,j. In an embodiment, μi,j is given by equation 4:
Location 0 is the parent location of location j. In a two echelon network, location 0 is the entry location. The expected backorders (EBO) for the parent location depend on the stocking strategy of its parent location.
The expected backorders provide an indication of how quickly the inventory position at a location can be built up. In an embodiment the expected backorders are given by equation 5:
As shown by equation 5, the expected backorders at a parent location are the weighted sum of the probabilities of x backorders at the next higher location in the location hierarchy. In a two echelon hierarchy, location 0 is the entry location. In a network having more than two echelons, location 0 may be an intermediate location.
The pipeline for a parent location is calculated to be the sum of the demand rolled up from the child locations minus the probability that a service part can be repaired at a child location. In an embodiment, the pipeline is calculated using equation 6:
The “1−ri,j” term illustrates that only the demand for service parts that cannot be repaired at the child location(s) is rolled up to the parent location.
In an embodiment, the value of the investment made in a service parts pool is calculated according to equation 7:
As shown by equation 7, the total investment in a service parts pool is the sum of the value of the individual service parts across all of the locations in the network.
The optimization of the investment in a service parts pool can have two inverse objectives. The objective can be to achieve the maximum system availability with a constrained budget. Inversely, the objective can be to achieve a target system availability with a minimum budget. In either case, the allocation of budget to service parts and the allocation of a service part among the potential stocking locations in a network are optimized. In an embodiment, the inverse definitions for the optimization function are given by equations 8a and 8b:
Minimize C|A≧Amin (8a); or
Maximize A|C≦Cmax (8b).
In an embodiment, the generalized procedure for the multipart multi-echelon case is informed by the procedures for more specific cases. Selected aspects of the procedures for certain specific cases are introduced below. These procedures provide a foundation for the generalized procedure described below with reference to
In an embodiment, the system availability of a part in a single echelon network is given by equation 3. Since the Poisson distribution function is steadily increasing, the optimal investment can be determined by increasing S until the maximum budget is reached or until the minimum service level is reached (see, e.g., equations 8a and 8b). In the single-part, single echelon case, equation 4 is reduced to: μi,j=mi,jTi,j.
In an embodiment, the system availability for an arbitrary number of service parts when considered at a location is given by equation 2. The distribution of the given budget among the service parts is determined using marginal analysis. Marginal analysis refers to an incremental approach that starts with a minimum Si,j for each service part. Selecting a service part in which to invest is based, at least in part, on which investment yields the greatest gain in system availability per incremental dollar (or other unit of currency) invested. In one embodiment, the marginal analysis includes an assumption that for each service part the gain in system availability decreases with each additional investment in that service part. This precondition is valid (mathematically) if Si,j>(μi,j−2). In an embodiment, this value for Si,j is set as the minimum level for Si,j when performing marginal analysis.
The system availability across all demand facing (child) locations is determined according to equation 1. The various locations (e.g., child locations or parent location) “compete” to determine which location provides the best gain in overall system availability. In an embodiment, the “competition” is implemented in an incremental approach using marginal analysis. While an investment (e.g., increasing Si,j) in a demand facing location affects the system availability of this location, this is not the case for an investment in the parent location. The parent location is not considered in the calculation of system availability. It nevertheless indirectly affects system availability by increasing the availability of each child location through reducing the expected backorders in the network-internal distribution (see, e.g., equation 5).
The contribution to the system availability of an investment in a demand facing location is directly computable as the change in availability of that location divided by the number of child locations. In an embodiment, the contribution to system availability in a parent location is calculated by the sum of the effects on child point availability, divided by the number of child locations. The location that yields the largest contribution to system availability is selected for the investment. These procedural elements are repeated until the minimum service level is reached or the budget is exhausted.
The system availability for the service parts for each location is calculated using equation 2. In an embodiment, the distribution of the given budget among the service parts is determined through marginal analysis: In an incremental approach starting with a minimum Si,j for each part, the investment for that part that yields the greatest gain in system availability per incremental dollar invested is increased. A simplification to the marginal analysis recognizes that the increase in system availability per dollar invested can refer to the availability of each single part only and not to the system availability. As total system availability is calculated as the mean of the location system availabilities and not as a multiplication of system-wide part availabilities, calculating the exact optimal investment decision involves frequent recalculation of the system availability at all locations, which is a computationally intensive process. Nevertheless, for part availabilities close to 100% those approaches become approximately equal. This simplification can again lead to decisions which result in investment suggestions slightly below the efficiency frontier (the optimal distribution). This precondition is valid (mathematically) if Si,j>(μi,j−2). In an embodiment, this value for Si,j is set as the minimum level for Si,j when performing marginal analysis.
In an embodiment, the procedures as described for the two-echelon case can be extended to determine the system availability for a part in a higher echelon structure. In such an embodiment, repair probabilities are applied to the intermediate parent locations and the repair lead time at the entry location includes the average transport time from the child location to the repair facility and to the entry location. The allocation procedure in a multi-echelon network becomes increasingly complex. In an embodiment, service parts are again incrementally allocated to the location where they contribute most to system availability. In one embodiment, the multipart multi-echelon procedure includes additional checks to provide a substantially optimal result.
Turning now to
Referring to 312, the system availability for location 310 is 0.03 if 1 instance of service part A and 0 instances of service part B are stocked at location 310. Similarly, reference number 314 shows that the system availability for location 310 is 0.03 if 0 instances of service part A and 1 instance of service part B are stocked at location 310. Marginal analysis may be used to determine whether location 310 experiences a greater gain in system availability per item cost if an investment is made in either service part A or service part B. If a second instance of service part A is allocated to location 310 the gain in system availability per item cost is 2*10−4 as shown by 316. If an instance of service part B is allocated to location 310, the gain in system availability per item cost is 6*10−5 as shown by 316. Thus, in the illustrated embodiment, a greater gain in system availability per item cost is achieved by investing in service part A.
In an embodiment, the service parts planning procedure checks for violations of incremental optimal allocation as shown by process block 220. The term “violation of incremental optimal allocation” refers to optimal allocation distributions that involve the combination of (1) increasing the inventory at a location and (2) reallocating a service part (or parts) among two or more locations (e.g., from a parent location to a child location).
Referring to process block 410, the service parts planning procedure checks for violations of incremental optimal allocation in conjunction with selecting a location at which the allocation of a service part maximally increases system availability per item cost. In one embodiment, these checks are directed to determining whether a higher gain in system availability can be achieved by reallocating a part from the location's parent to a child location providing the largest gain in system availability per item cost. This reallocation may be repeated until the gain in system availability per item cost decreases. Referring to process block 420, the procedure determines whether the location (e.g., as calculated in process block 210, shown in
Referring to process block 435, the procedure determines whether the location's parent has inventory (e.g., has an instance of a service part). If the parent does not have inventory, then the procedure determines whether the parent is an entry location as shown by 440. If the parent is not an entry location, then the procedure is applied to a location that is one level higher in the location hierarchy as shown by 445.
If the parent (or a location selected at, e.g., 445) does have inventory, then the procedure reallocates an instance of the service part from the parent to a child location as shown by 450. In an embodiment, the service part is reallocated to the child that provides the greatest gain in system availability per item cost. The procedure compares the current gain in system availability per item cost to the gain in system availability per item cost prior to the most recent reallocation at 455. If the current gain in system availability per item cost is not greater than it was prior to the most recent reallocation, then the procedure checks a location that is one level higher in the location hierarchy as shown by 460. On the other hand, if the gain in system availability per item cost is greater than it was prior to the most recent reallocation, then the procedure is repeated for the parent of the location where the last item of inventory was reallocated as shown by 465. In an embodiment, this procedure is repeated until the entry location is encountered.
In the multi-echelon environment, the delta in system availability due to an incremental investment in one service part is not necessarily convex. For example, the gain in system availability per item cost may be greater if two (or more) instances of a service part are allocated to a location. Referring again to
Referring again to
Referring to process block 645, procedure 600 calculates, for each service part, which location within a network provides the greatest gain in system availability per item cost. In an embodiment, this calculation is based, at least in part, on marginal analysis (e.g., as illustrated in
In certain cases, obtaining the greatest gain in system availability per item cost involves checking for violations of convexity (e.g., as described above with reference to
In the illustrated embodiment, a check for violations of convexity is performed at process block 640. In an embodiment, checking for violations of convexity includes repeating loop C until the average increase in system availability per additionally allocated service part decreases. In one embodiment these checks are substantially similar to the checks described above with reference to
Service parts planning module 750 may enable computing system 700 to determine a service parts distribution in a multipart multi-echelon network. Service parts planning module 750 may be executable content, control logic (e.g., ASIC, PLD, FPGA, etc.), firmware, or some combination thereof, in an embodiment of the invention. In embodiments of the invention in which service parts planning module 750 is executable content, it may be stored in memory 720 and executed by processor(s) 710.
In an embodiment, service parts planning module 750 is part of a multi-tiered network. The multi-tiered network may be implemented using a variety of different application technologies at each of the layers of the multi-tier architecture, including those based on the Java 2 Enterprise Edition™ (“J2EE”) platform, the Microsoft .NET platform, the Websphere platform developed by IBM Corporation, and/or the Advanced Business Application Programming (“ABAP”) platform developed by SAP AG.
Memory 720 may encompass a wide variety of memory devices including read-only memory (ROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), random access memory (RAM), non-volatile random access memory (NVRAM), cache memory, flash memory, and other memory devices. Memory 720 may also include one or more hard disks, floppy disks, ZIP disks, compact disks (e.g., CD-ROM), digital versatile/video disks (DVD), magnetic random access memory (MRAM) devices, and other system-readable media that store instructions and/or data. Memory 720 may store program modules such as routines, programs, objects, images, data structures, program data, and other program modules that perform particular tasks or implement particular abstract data types that facilitate system use.
One or more I/O devices 730 may include a hard disk drive interface, a magnetic disk drive interface, an optical drive interface, a parallel port, serial controller or super I/O controller, serial port, universal serial bus (USB) port, a display device interface (e.g., video adapter), a network interface card (NIC), a sound card, modem, and the like. System interconnection 760 permits communication between the various elements of computing system 700. System interconnection 760 may include a wide variety of signal lines including one or more of a memory bus, peripheral bus, local bus, host bus, bridge, optical, electrical, acoustical, and other propagated signal lines.
Elements of embodiments of the present invention may also be provided as a machine-readable medium for storing the machine-executable instructions. The machine-readable medium may include, but is not limited to, flash memory, optical disks, compact disks-read only memory (CD-ROM), digital versatile/video disks (DVD) ROM, random access memory (RAM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), magnetic or optical cards, propagation media or other type of machine-readable media suitable for storing electronic instructions. For example, embodiments of the invention may be downloaded as a computer program which may be transferred from a remote computer (e.g., a server) to a requesting computer (e.g., a client) by way of data signals embodied in a carrier wave or other propagation medium via a communication link (e.g., a modem or network connection).
It should be appreciated that reference throughout this specification to “one embodiment” or “an embodiment” means that a particular feature, structure or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention. Therefore, it is emphasized and should be appreciated that two or more references to “an embodiment” or “one embodiment” or “an alternative embodiment” in various portions of this specification are not necessarily all referring to the same embodiment. Furthermore, the particular features, structures or characteristics may be combined as suitable in one or more embodiments of the invention.
Similarly, it should be appreciated that in the foregoing description of embodiments of the invention, various features are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure aiding in the understanding of one or more of the various inventive aspects. This method of disclosure, however, is not to be interpreted as reflecting an intention that the claimed subject matter requires more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive aspects lie in less than all features of a single foregoing disclosed embodiment. Thus, the claims following the detailed description are hereby expressly incorporated into this detailed description, with each claim standing on its own as a separate embodiment of this invention.
Number | Date | Country | Kind |
---|---|---|---|
EP04103460.4 | Jul 2004 | EP | regional |
EP04107030.1 | Dec 2004 | EP | regional |
This application is a continuation of co-pending application Ser. No. 11/065,393, filed Feb. 22, 2005.
Number | Date | Country | |
---|---|---|---|
Parent | 11065393 | Feb 2005 | US |
Child | 12837047 | US |