Spare part inventory control for an aircraft component repair shop Martin de Jong - Fokker Services Willem van Jaarsveld - Erasmus Universiteit Rotterdam 19th of January 2011
Outline Introduction Component Maintenance, Repair and Overhaul (CMRO) market Relevant company processes Research goals Modelling approach Algorithm Results & insights
Components/LRUs...
Components/LRUs...
Aerospace CMRO market Unserviceable components are replaced by serviceable ones during line maintenance These components are often called Line Replacable Units (LRUs) The unserviceable LRUs are repaired to be used in future line maintenance. These repairs are often outsourced: Component Maintenance Repair and Overhaul (CMRO) market This market was worth at least $9 billion in 2007 Very competitive market Key factors are quality, turnaround time (TAT), and price
Aerospace CMRO market Unserviceable components are replaced by serviceable ones during line maintenance These components are often called Line Replacable Units (LRUs) The unserviceable LRUs are repaired to be used in future line maintenance. These repairs are often outsourced: Component Maintenance Repair and Overhaul (CMRO) market This market was worth at least $9 billion in 2007 Very competitive market Key factors are quality, turnaround time (TAT), and price
... and spare parts
... and spare parts
... and spare parts
Spare parts stocking is a major issue Good spare parts provisioning is considered as the key element in component maintenance activities: To achieve a good on time delivery, while keeping working capital low.
The repair process (simplified) Customer sends LRU to shop for repair. On arrival, the LRU is inspected for fault diagnosis. This inspection reveals which spare parts are needed for the repair. Any parts not on stock are ordered. As soon as all parts that are needed are available, the LRU is repaired and returned to the customer.
Inventory control process (simplified) When stock on hand + items on order - backorders for a part falls below the reorder point (min) for that part, the inventory controller is notified (undershoot). The inventory controller sends out a purchase order, after evaluation of the undershoot trigger. Evaluation is mainly based on leadtime, cost and past usage of the part. When applicable, prior knowledge such as the expected number of future repairs for specific LRUs is taken into account.
Research goal Develop a method that can determine suitable reorder points and order quantities 1 taking into account the service level targets to be achieved, which are set on LRU level. 2 automatically, based on data available in ERP system. 3 to advice the inventory controllers in their decision making, to help in achieving the service level targets.
Modelling issues Multiple LRU types (> 1000 active), and multiple different parts (> 10000 active). Parts are used for the repair of different LRU types, each with different availability targets dictated by the market. A broad range of parts is possibly needed to repair a LRU of a certain type.
Modelling issues Multiple LRU types (> 1000 active), and multiple different parts (> 10000 active). Parts are used for the repair of different LRU types, each with different availability targets dictated by the market. A broad range of parts is possibly needed to repair a LRU of a certain type. Introduce Statistical Bill of Materials.
The Statistical Bill of Materials (St. BOM) Data analysis on completed repairs of LRUs of a given type: P/N Usage prob. Quantity MA9541 31.30% 1 (31.3%) 40-882-208 17.39% 1 (15.65%), 2 (1.74%)... 40-693-518 4.35% 2 (4.35 %)... KIP1012 0.87% 1(0.87%) KIP1060 0.87% 1(0.87%)... Excerpt of statistical BOM for LRU type 123-456-78 (based on 115 repairs)
The Statistical Bill of Materials (St. BOM) Data analysis on completed repairs of LRUs of a given type: P/N Usage prob. Quantity MA9541 31.30% 1 (31.3%) 40-882-208 17.39% 1 (15.65%), 2 (1.74%) (5 parts) 40-693-518 4.35% 2 (4.35 %) (10 parts) KIP1012 0.87% 1(0.87%) KIP1060 0.87% 1(0.87%) (32 parts) Excerpt of statistical BOM for LRU type 123-456-78 (based on 115 repairs)
The model - information requirements Based on following information:
The model - information requirements Based on following information: The forecasted repair volume for each LRU type. The statistical BOM for each LRU type. Leadtime & price of individual spare parts. Availability target(s) per LRU type: E.G. of all repairs done for LRU type 123-456-78, in at least 95% of the cases all spare parts needed for the repair must be available within 10 days after the repair commences. May have multiple such constraints per LRU type.
Gathering this information Repair volume estimate is based on sales forecast, historical maintenance interval, and operational plan. Statistical BOM as shown on earlier slide, and adapted in case of exceptions. Leadtime and price are in ERP system; they are continually monitored and improved.
Gathering this information Repair volume estimate is based on sales forecast, historical maintenance interval, and operational plan. Statistical BOM as shown on earlier slide, and adapted in case of exceptions. Leadtime and price are in ERP system; they are continually monitored and improved. Availability targets are in line with agreed performance targets, for every individual LRU: Augmented by LRU classification.
The model Formulated as optimization problem: 1 Select reorder point and order up to point (min, max) for each spare part; 2 such that the availability targets for each LRU are achieved; 3 while minimizing total cost, consisting of i) holding costs for all parts, and ii) total ordering efforts
The model Formulated as optimization problem: 1 Select reorder point and order up to point (min, max) for each spare part; 2 such that the availability targets for each LRU are achieved; 3 while minimizing total cost, consisting of i) holding costs for all parts, and ii) total ordering efforts Availability and total cost calculation: Assume Poisson arrival process for repairs. Demand for spare parts becomes compound Poisson. Steady state analysis.
The algorithm: IP formulation min i I p P i c ip x ip s.t. f a ({x ip } i,p ) ˆf a a A x ip = 1 i I p P i x ip {0, 1} i I, p P i I : Spare parts P: Policies: p := (min, max) x: Decision variables: x ip = 1 policy p is used for part i. c: Costs A: Availability contraints (LRUs) f a : Availability ˆf a : Availability target
Linearizing the availability constraint Inventory level of different parts are dependent. Exact LRU availability f a ({x ip } i,p ) is intractable.
Linearizing the availability constraint Inventory level of different parts are dependent. Exact LRU availability f a ({x ip } i,p ) is intractable. Assume the inventory level of different parts is independent: Reasonable approximation, only weakly correlated in reality. Tractability. As suggested by others who solve similar problems (Assemble To Order (Song); Tooling problems (Vliegen)).
Linearizing the availability constraint Inventory level of different parts are dependent. Exact LRU availability f a ({x ip } i,p ) is intractable. Assume the inventory level of different parts is independent: Reasonable approximation, only weakly correlated in reality. Tractability. As suggested by others who solve similar problems (Assemble To Order (Song); Tooling problems (Vliegen)). LRU availability can be approximated as the product of (LRU specific) availability of individual spare parts. f a ({x ip } i,p ) i I a p P i f aip x ip
Linearizing the availability constraint min [...] s.t. f aip x ip ˆf a a A i I a p P i x ip = 1 i I p P i x ip {0, 1} A: Availability contraints (LRUs) f aip : LRU a specific availability for part i, policy p ˆf a : Availability target x ip : Binary decision variables i I, p P i
Linearizing the availability constraint min [...] s.t. log i I a p P i x ip = 1 x ip {0, 1} p P i f aip x ip log ˆf a a A i I i I, p P i A: Availability contraints (LRUs) f aip : LRU a specific availability for part i, policy p ˆf a : Availability target x ip : Binary decision variables
Linearizing the availability constraint min [...] s.t. log f aip x ip log ˆf a i I a p P i x ip = 1 p P i x ip {0, 1} a A i I i I, p P i A: Availability contraints (LRUs) f aip : LRU a specific availability for part i, policy p ˆf a : Availability target x ip : Binary decision variables
Linearizing the availability constraint min [...] s.t. log(f aip )x ip log ˆf a a A i I a p P i x ip = 1 i I p P i x ip {0, 1} A: Availability contraints (LRUs) f aip : LRU a specific availability for part i, policy p ˆf a : Availability target x ip : Binary decision variables i I, p P i
Linearizing the availability constraint min [...] s.t. aipx ip ˆf a i I a p P i f x ip = 1 p P i x ip {0, 1} a A i I i I, p P i A: Availability contraints (LRUs) f aip : LRU a specific availability for part i, policy p ˆf a : Availability target x ip : Binary decision variables
Linearizing the availability constraint min [...] s.t. aipx ip ˆf a i I a p P i f x ip = 1 p P i x ip {0, 1} a A i I i I, p P i A: Availability contraints (LRUs) f aip : LRU a specific availability for part i, policy p ˆf a : Availability target x ip : Binary decision variables Linear, but still hard to solve because of sheer size
Solution approach (overview) Main ingredients used to solve LP relaxation:
Solution approach (overview) Main ingredients used to solve LP relaxation: 1 Use column generation: each column corresponds to a (min, max) policy for a specific part.
Solution approach (overview) Main ingredients used to solve LP relaxation: 1 Use column generation: each column corresponds to a (min, max) policy for a specific part. 2 The pricing problem decouples into a problem for each spare part; an innovative algorithm was developed to solve these problems efficiently.
Solution approach (overview) Main ingredients used to solve LP relaxation: 1 Use column generation: each column corresponds to a (min, max) policy for a specific part. 2 The pricing problem decouples into a problem for each spare part; an innovative algorithm was developed to solve these problems efficiently. 3 In total, 10 6 columns are generated: a selection mechanism is used to decide which of the new and existing columns will become part of the new restricted master problem.
Solution approach (overview) Main ingredients used to solve LP relaxation: 1 Use column generation: each column corresponds to a (min, max) policy for a specific part. 2 The pricing problem decouples into a problem for each spare part; an innovative algorithm was developed to solve these problems efficiently. 3 In total, 10 6 columns are generated: a selection mechanism is used to decide which of the new and existing columns will become part of the new restricted master problem. Integer solution is found using simple rounding procedures, which gives good results (3% gap).
Solution approach (overview) Main ingredients used to solve LP relaxation: 1 Use column generation: each column corresponds to a (min, max) policy for a specific part. 2 The pricing problem decouples into a problem for each spare part; an innovative algorithm was developed to solve these problems efficiently. 3 In total, 10 6 columns are generated: a selection mechanism is used to decide which of the new and existing columns will become part of the new restricted master problem. Integer solution is found using simple rounding procedures, which gives good results (3% gap). Problem with 10000 parts and 4000 constraints is solved in about 2 minutes, with LPSolve as backing LP solver.
Insights Much can be gained by concentrating on good performance for important LRUs.
Insights Much can be gained by concentrating on good performance for important LRUs. To achieve short TATs with high probability, we are forced to stock slower moving spare parts as well.
Insights Much can be gained by concentrating on good performance for important LRUs. To achieve short TATs with high probability, we are forced to stock slower moving spare parts as well. Or look at other options: exchanges/cannibalization.
Insights Much can be gained by concentrating on good performance for important LRUs. To achieve short TATs with high probability, we are forced to stock slower moving spare parts as well. Or look at other options: exchanges/cannibalization. Component maintenance is a knowledge driven industry, based on their specific knowledge inventory controllers should influence the final decision: Modification programs Reliability changes Vendor reliability Market availability of spare parts others
Importance of research to FS Model was implemented as a software tool linked to ERP system: Generates recommended min-max policy for each part, supporting the inventory controller decision making.
Importance of research to FS Model was implemented as a software tool linked to ERP system: Generates recommended min-max policy for each part, supporting the inventory controller decision making. This can help acting early on changes (in leadtime/repair rate/ St. BOM), instead of acting when inventory breaches the unadapted min quantity.
Importance of research to FS Model was implemented as a software tool linked to ERP system: Generates recommended min-max policy for each part, supporting the inventory controller decision making. This can help acting early on changes (in leadtime/repair rate/ St. BOM), instead of acting when inventory breaches the unadapted min quantity. Tool can also help to plan for new capabilities.
Importance of research to FS Tool gives management the capability to steer the entire assortment at once, and to quickly get a broad insight of the assortment. It allows for a better coordination between the performance targets, and the inventory decisions on the spare part level.
Importance of research to FS Tool gives management the capability to steer the entire assortment at once, and to quickly get a broad insight of the assortment. It allows for a better coordination between the performance targets, and the inventory decisions on the spare part level. Min quantities give quick and detailed insight into changes in inventory requirements resulting from changes in the repair volume of specific LRU s.
Importance of research to FS Tool gives management the capability to steer the entire assortment at once, and to quickly get a broad insight of the assortment. It allows for a better coordination between the performance targets, and the inventory decisions on the spare part level. Min quantities give quick and detailed insight into changes in inventory requirements resulting from changes in the repair volume of specific LRU s. And identify overstock situation, which can act as a trigger to initiate special actions to reduce the overstock for specific parts.
Discussion & questions