[go: up one dir, main page]

Academia.eduAcademia.edu

Aggregate overhaul and supply chain planning for rotables

Aggregate overhaul and supply chain planning for rotables

We consider the problem of planning preventive maintenance and overhaul for modules that occur in a fleet of assets such as trains or airplanes. Each type of module, or rotable, has its own maintenance program in which a maximum amount of time between overhauls of a module is stipulated. Overhauls are performed in an overhaul workshop with limited capacity. The problem we study is to determine aggregate workforce levels, turn-around-stock levels of modules, and overhaul and replacement quantities per period so as to minimize to sum of labor costs, material costs of overhaul, and turn-around-stock investments over the entire life-cycle of the system to be maintained. We prove that this planning problem is strongly NP-hard, but we also provide computational evidence that the mixed integer programming formulation can be solved within reasonable time for real-life instances. Furthermore, we show that the linear programming relaxation can also be used to aid decision making. We apply the model in a case study.

Aggregate overhaul and supply chain planning for rotables J. Arts S.D. Flapper K. Vernooij January 10, 2012 Abstract We consider the problem of planning preventive maintenance and overhaul for modules that occur in a fleet of assets such as trains or airplanes. Each type of module, or rotable, has its own maintenance program in which a maximum amount of time between overhauls of a module is stipulated. Overhauls are performed in an overhaul workshop with limited capacity. The problem we study is to determine aggregate workforce levels, turn-around-stock levels of modules, and overhaul and replacement quantities per period so as to minimize to sum of labor costs, material costs of overhaul, and turn-around-stock investments over the entire life-cycle of the system to be maintained. We prove that this planning problem is strongly N P-hard, but we also provide computational evidence that the mixed integer programming formulation can be solved within reasonable time for real-life instances. Furthermore, we show that the linear programming relaxation can also be used to aid decision making. We apply the model in a case study. keywords: Maintenance; Aggregate planning; Life cycle costs; NP-hard; Repairable parts; Reverse logistics 1. Introduction The primary processes of both manufacturing and service companies rely on the availability of equipment. When this equipment represents a significant financial investment, such equipment is usually referred to as a capital asset or capital good. Examples of such capital assets include trains, airplanes, MRI-scanners, and military equipment. While the acquisition cost of capital assets is substantial, the costs associated with maintenance and downtime over 1 the lifetime of the asset is typically 3 to 4 times the acquisition price, even when the future costs of maintenance and downtime are discounted (Öner et al., 2007). Accordingly there has been much focus and research on what is called life cycle costing (lcc), see Gupta and Chow (1985) and Asiedu and Gu (1998). The lcc approach to decision making in asset acquisition, maintenance, and disposal stipulates that the consequences of decisions should be accounted for over the entire lifetime of the asset in question. Another factor influencing maintenance is the modular design of many technical systems. Usually, a capital asset is not maintained in its entirety at any one time. Instead, different modules of the system are dismounted from the asset and replaced by ready-for-use modules. After replacement, the module can be overhauled while the capital asset is up and running again. Exchanging modules, rather than maintaining them at the spot, increases the availability of capital assets, as assets are only down for the time it takes to replace a module. After overhaul, the module is ready for use again and can be used in a similar replacement procedure for another asset. To make this system work, some spare modules are needed, and they form a so called turn-around-stock. In this paper, we consider the replacement of modules that have their own maintenance program. The maintenance program stipulates a maximum amount of time a module is allowed to be operational before it needs to be overhauled. We refer to this time allowance as the maximum inter overhaul time (MIOT). Due to safety regulations, the MIOT is usually quite conservative and so most modules are almost exclusively maintained preventively. We call the practice described in the previous paragraph as maintenance-by-replacement. Note that this is similar, but different from, repair-by-replacement, wherein components are replaced in corrective, as opposed to preventive, maintenance efforts. We refer to the modules involved as rotables, because they rotate through a closed loop supply chain. At this point, we emphasize that rotables differ from repairables as they are studied in much of the spare parts inventory control literature (e.g., Sherbrooke, 2004). Repairables do not have a maintenance program of their own, and, consequently, the need for replacement of repairables is usually characterized by stochastic models such as the (compound) Poisson process. By contrast, rotables do have their own maintenance program, and so replacements and overhauls of rotables are planned explicitly by a decision maker. This paper is motivated by a maintenance-by-replacement system in place at NedTrain, a Dutch company that performs maintenance of rolling stock for several operators on the Dutch railway network. Below, we describe several characteristics and constraints of maintenanceby-replacement systems and their implications for planning. 2 In a maintenance-by-replacement system, replacements and overhauls are subject to the following two constraints respectively. A replacement may not occur, unless a ready-foruse rotable is available to replace the rotable that requires overhaul, so that the asset can immediately return to operational condition. An overhaul cannot occur, unless there is available capacity in the overhaul workshop. Since the result of an overhaul is a ready-foruse rotable, these constraints are connected. The maintenance programs of rotables also impose constraints on a maintenance-byreplacement system. For each rotable type, the maintenance program stipulates a MIOT, the maximum amount of time a rotable is allowed to be operational before it needs to be overhauled. Note that, the decision to replace a rotable in some period t, directly implies that the replacing rotable needs to be replaced before time t + MIOT. With respect to the timing of rotable overhauls and replacements, the lcc perspective offers opportunities. In traditional maintenance models, the focus is on postponing maintenance as long as possible, thereby taking advantage of the technical life of the unit to be maintained. This approach need not lead to optimal decisions over finite lifetimes of assets. To see why, consider the following example based on practice at NedTrain. The typical lifetime of a rolling stock unit is 30 years. Bogies are important rotables in a train with MIOTs that range from 4 to 10 years. Suppose the MIOT of two types of bogies is 7 years, and both types of bogies belong to the same type of train. Then, if replacements are planned to occur just in time, bogie replacements occur 4 times during the life cycle of this train type, namely in year 7, 14, 21, and 28. Another plan, that is feasible with respect to overhaul-deadlines, is to replace in years 6, 12, 19, and 25. Note that it is possible to replace rotables earlier than technically necessary, while not increasing the number of replacements (and overhauls) that are needed during the lifetime of an asset. To smoothen the workload of the overhaul workshop it may be possible to overhaul the first type of rotable according to the first schedule, and the second type of rotable according the the second. In general, the flexibility in the exact timing of replacements and overhauls can be used to smoothen the workload of the overhaul workshop and utilize other resources more efficiently. In this paper, we study a model for the aggregate planning of rotable replacements and overhaul for multiple rotable types that use the same resources in an overhaul workshop. We take the lcc perspective by taking the finite life cycle of assets into consideration. Our aggregate planning model supports decisions regarding overhaul workshop capacity levels, sizing of turn-around-stocks of rotables and overhaul and replacement quantities per period. This paper is structured as follows. In §2, we review the literature on maintenance and 3 aggregate supply chain planning. We provide and analyze our model in §3. Computational results based on a real life case are presented in §4. Finally, conclusions are offered in §5. 2. Literature review and contribution Aggregate planning is performed in many contexts and businesses. We review the literature on maintenance planning in §2.1. Since our model also deals with the rotable supply chain, we review aggregate planning models in the context of production and supply chain in §2.2. 2.1 Preventive maintenance and capacity planning Wagner et al. (1964) are among the first to consider the joint problem of preventive maintenance and capacity planning. They consider a setting where a set of preventive maintenance tasks is to be planned, while fluctuations in work-force utilization are to be kept at a minimum. The objective is approximately met by formulating the problem as a binary integer program and using rounding procedures to quickly find feasible solutions. Paz and Leigh (1994) give an overview of many different issues involved with maintenance planning and review much of the literature from before 1993. They identify manpower as the critical resource to be reckoned with in maintenance planning. More recent research on maintenance planning includes Charest and Ferland (1993), Chen et al. (2010) and Safaei et al. (2011). Safaei et al. (2011) consider short term maintenance scheduling to maximize the availability of military aircraft for the required flying program. The problem is cast as a mixed-integer-program (MIP) in which the required workforce is the most important constraint. Chen et al. (2010) study short-term manpower planning using stochastic programming techniques and apply their model to carriage maintenance at the mass rapid transit system of Taipei. The horizon they consider is around a week and their model allows for random maintenance requirements due to break-down-maintenance (as opposed to planned preventive maintenance). Charest and Ferland (1993) study preventive maintenance scheduling where each unit that is to be maintained is fixed to a rigid maintenance schedule with fixed inter-maintenance intervals. They model the problem as a MIP and solve this MIP with various heuristic methods such as exchange procedures and tabu search. A closely related problem is the clustering of maintenance activities when a set-up cost is associated with performing maintenance. See Van Dijkhuizen and Van Harten (1997) and the references therein for this stream of literature. 4 Recently, some attention has also been paid to the availability of ready-for-use rotables as a critical constraint in maintenance planning. Driessen et al. (2010) provide a framework for the planning of maintenance spare parts, including rotables. Our work fits partially in their framework, as rotables are a special type of spare part. While Driessen et al. (2010) consider mostly repairable logistics, where maintenance is an exogenous fact, we take a broader view by incorporating the maintenance decisions into our model, as rotables have their own maintenance program. Joo (2009) also explicitly considers the availability of ready-for-use rotables as an essential constraint in their overhaul planning model. Joo (2009) considers a set of rotables of a single type that has to meet an overhaul deadline in the (near) future. The model is set-up such that overhaul is performed as late as possible, but before this deadline and within capacity constraints. The key idea is that the useful life of a rotable must be used to the fullest extent possible. Joo (2009) uses a recursive scheme to plan rotable overhaul, that is very much akin to dynamic programming. 2.2 Aggregate production and supply chain planning Aggregate planning in production environments was first proposed by Bitran and Hax (1977), and has been expanded upon by many authors (e.g. Bitran et al. (1981), Bitran et al. (1982)). Today, aggregate production planning models have found their way into standard textbooks in operations and production management (e.g. Silver et al. (1998), Hopp and Spearman (2001), Nahmias (2009)). These aggregate production planning (APP) models are used to plan workforce capacity and production quantities of product families over several periods. Similar models are also used in supply chain planning. These models are described and reviewed in Billington et al. (1983), Erengüç et al. (1999), De Kok and Fransoo (2003) and Spitter et al. (2005). Aggregate maintenance planning differs from aggregate production planning in two fundamental ways. First, while in APP exogenous demand triggers the use of production capacity either implicitly or explicitly, maintenance requirements are necessarily endogenous to the modeling approach. The reason for this is that preventive maintenance needs to be performed within limited time intervals due to safety and/or other reasons. Thus, a decision to maintain a rotable at some time t, also dictates that the replacing rotable undergo preventive maintenance before time t+MIOT. It is also here that the lcc perspective has en added value. While MIOTs have to be respected, there is considerable freedom in the exact timing of performing maintenance without increasing the number of times preventive maintenance is done during the life cycle of an asset. This flexibility however, can only be leveraged by 5 considering the entire life cycle in the planning process. When this is done, flexibility can be used to utilize resources such as workforce and turn-around-stock efficiently. Second, maintenance has a fundamentally different capacity restriction in the availability for rotables for replacement actions. While production capacity levels are not directly influenced by production quantities earlier, the availability of ready-for-use rotables depends on the number of rotables that have undergone overhaul in previous periods. Thus the number of rotables in the closed loop supply chain form a special type of capacity constraint. For a recent literature review on closed-loop supply chains, see Ilgin and Gupta (2010). A fundamental difference between the closed-loop supply chain studied in this paper and other closed-loop supply chains studied in literature so far, is that in this case a return (replacement) automatically generates another return within some preset fixed maximum period of time, the MIOT. 2.3 Contribution In the field of preventive maintenance our model has several contributions to existing literature that we summarize below: (a) Our model can be used for tactical decision making with long horizons. These long horizons explicitly incorporate lcc considerations into decision making and utilize the flexibility there is in the exact timing of overhaul over the whole life cycle of an asset. (b) Our model makes the constraints imposed by a finite rotable turn-around-stock explicit by modeling the rotable supply chain. It also supports the decisions regarding the size of rotable turn-around-stocks. (c) Our model considers multiple rotables types that utilize the same overhaul capacity. For each rotable type, the models plans multiple overhauls into the future. (d) We perform a case study, and show that the a linear programming relaxation of our optimization problem yields sufficiently accurate results to aid in decision making. We also provide useful insights about planning for NedTrain, the company involved in the case study. 6 Table 1: Example of regular and aggregated time periods and the set TyY Time in aggregated periods (Y ) Time in periods (T ) 3. 1 1 2 3 T1Y T2Y T3Y 2 3 4 5 6 7 8 9 10 11 12 Model We consider an installed base of capital assets and a supply chain of rotables in a maintainby-replacement system. Each asset consist of several rotables of possibly different types. For each type of rotable, there is a population of this rotable type in the field. Each rotable in the population of a type requires overhaul before the MIOT has lapsed since the rotable has gone into active use. For the aggregate planning problem under consideration, we divide time in periods and let T denote the set of periods in the planning horizon, T = {1, ..., |T |}. The length of a period is typically one month while the length of the planning horizon should be at least the length of the the life cycle of the assets in which the rotables function. In this way, the model can capture the entire lcc. For rolling stock and aircraft, this planning horizon is about 25-30 years. We let I denote the set of different types of rotables. The first (last) period in the planning horizon during which rotables of type i ∈ I, are in the field is denoted ai (pi ), ai < pi . For most types of rotables ai = 1 meaning, that rotables of type i are already in the field when a plan is generated. We let TiI = {ai , ...pi } denote the set of periods in the planning horizon during which rotables of type i ∈ I are active in the field. Furthermore, we let It denote the set of rotables that are active in the field during period t ∈ T : It = {i ∈ I|ai ≤ t ≤ pi }. We also define a set of aggregated periods, Y = {1, ..., |Y |}. Typically an aggregated period is a year. Furthermore, we let TyY denote the set of periods that are contained in the aggregated period y ∈ Y . Table 1 shows an example of how T , Y and TyY relate to each other. The example concerns a horizon of three aggregated periods (e.g. years) and 12 regular periods (e.g. quarters). T1Y contains the periods contained in the first aggregated period (e.g. the quarters of the first year). In the rest of this section we will describe the equations that govern different parts of the system under study. 7 3.1 Supply chain dynamics The rotable supply chain is a two-level closed loop supply chain as depicted in Figure 1. There are two stock-points where inventory of rotables that are ready-for-use and requiring overhaul respectively, are kept. We let the variables Bi,t (Hi,t ) denote the number of readyfor-use (overhaul requiring) rotables of type i ∈ I in inventory at the beginning of period t ∈ TiI . We let the decision variable xi,t denote replacements of rotables of type i ∈ I during period t ∈ TiI . We assume the time required to replace a rotable is negligible compared to the length of a period. The overhaul workshop acts as a production unit as defined in supply chain literature (De Kok and Fransoo, 2003). This means that when an overhaul order is released at any time t, the rotable becomes available ready-for-use at time t + Li . Thus, Li is the overhaul lead time and we assume it is an integer multiple of the period length considered in the problem. Also, we let the decision variable ni,t denote the number of overhaul orders for rotables of type i ∈ I released in period t. The supply chain dynamics are described by the inventory balance equations: Bi,t = Bi,t−1 − xi,t−1 + ni,t−Li −1 , Hi,t = Hi,t−1 + xi,t−1 − ni,t−1 , ∀i ∈ I, ∀i ∈ I, ∀t ∈ TiI \ {ai } ∀t ∈ TiI \ {ai }. (1) (2) Equations (1) and (2) require initial conditions. The stock levels for rotables already in the field in the first planning period (ai = 1) are initialized by the parameters Bid and Hid respectively; so Bi,ai = Bid and Hi,ai = Hid if ai = 1. Here, and throughout the remainder of this paper, the superscript d is used for parameters known from data that initialize variables. (Note that Bi,ai is a variable and Bid is a parameter known from data.) For rotables that enter the field after the first period, the initial stock level conditions are to start with the entire turn-around-stock Si ∈ N consisting of ready-for-use repairables, and no rotables requiring maintenance; so Bi,ai = Si and Hi,t = 0 if ai > 1. The initial turn-around-stock levels for rotables that are not yet in the field in period 1, Si , are decision variables. For t = ai −Li +1, ..., ai −1, ni,t also has initial conditions: ni,t = ndi,t for t ∈ {ai −Li +1, ..., ai −1}. These initial conditions are known from data if ai = 1 and set to 0 if ai > 1. We assume that when ni,t overhaul orders are released during period t, these releases occur uniformly during that period. 3.2 Workforce capacity and flexibility in the overhaul workshop The workforce capacity in the workshop is flexible. Workforce is acquired or disposed of at the ending of each aggregated time period y ∈ Y . We let the decision variable Wy denote 8 ni,t ni,t-L i Overhaul workshop Hi,t Bi,t Maintenance depot xi,t xi,t Capital assets in operation Flow of capital assets Flow of rotables requiring overhaul Flow of ready-for-use rotables Figure 1: Rotable supply chain overview the available labor hours during aggregated period y ∈ Y . For example, if the length of an aggregated period is a year, Wy represent the number of labor hours to be worked during that year given the number of contracts with laborers. However, there is flexibility as to when exactly these hours are to be used during the aggregated period (year). If we let the decision variable wt denote the amount of labor hours used during period t ∈ T , this can be expressed as follows: Wy = P t∈TyY wt , ∀y ∈ Y. (3) The average number of hours worked during any period t ∈ TyY is Wy /|TyY |. We let the parameters δtl and δtu denote lower and upper bounds on the fraction of Wy /|TyY | that is utilized during period t ∈ TyY : δtl Wy /|TyY | ≤ wt ≤ δtu Wy /|TyY |, ∀y ∈ Y, ∀t ∈ TyY . (4) Thus the flexibility of manpower planning is also constrained per period by (4). The labor allocated in any period t affects possible overhaul order releases as follows. We let ri denote the amount of labor hours required to start overhaul of a type i ∈ I rotable. Then overhaul order releases must satisfy: P i∈It ri ni,t ≤ wt , 9 ∀t ∈ T. (5) Finally, we note that Wy can be changed from one aggregated period to the next. Such a change from aggregated period y to y + 1 is bounded from below and above as a fraction of Wy by∆ly and ∆uy respectively: ∆ly Wy ≤ Wy+1 ≤ ∆uy Wy , ∀y ∈ {1, ..., |Y | − 1}. (6) Finally we note that W1 is initialized by the parameter W d . 3.3 Rotable availability Since the asset from which the rotables are to be replaced require high availability, we require that replacements may not occur unless there is a ready-for-use rotable available to complete the replacement. Similarly, we require that the release of an overhaul order must be accompanied immediately by a rotable requiring overhaul. Recalling our assumption that the replacements and overhaul order releases during any period are uniformly distributed over that period, rotable availability can be expressed as ni,t ≤ Hi,t + xi,t , ∀i ∈ I, xi,t ≤ Bi,t + ni,t−Li 3.4 ∀i ∈ I, ∀t ∈ TiI , ∀t ∈ TiI . (7) (8) Overhaul deadlines propagation Due to safety and possibly other reasons, the maintenance program of rotables of type i ∈ I stipulates that any rotable of type i has to be replaced before it has been operational for qi periods. Thus for each period in the planning horizon, there are a number of rotables of type i ∈ I that have to be replaced before or in that period and we denote this quantity Di,t for rotables of type i ∈ I in period t ∈ TiI . For a given rotable type i ∈ I, these quantities d are known for period ai up to ai + qi − 1 and given by Di,t . We assume that rotables of any type are replaced in an older rotable first fashion, i.e., whenever a rotable of any type is to be overhauled, the specific rotable of that type that has been in the field the longest is always chosen. Thus, from periods ai + qi onwards Di,t = xi,t−qi , ∀i ∈ I, ∀t ∈ {ai + qi , ..., pi }. (9) To comply with the maintenance program, the replacements have to satisfy: Pt t′ =ai xi,t′ ≥ Pt t′ =ai Di,t′ 10 ∀i ∈ I, ∀t ∈ TiI (10) This constraint can also be described using an auxiliary variable, Ui,t , that represents the number of replacements of rotables of type i in excess of what is strictly necessary by period P P t, i.e. Ui,t = tt′ =ai xi,t′ − tt′ =ai Di,t′ . With this auxiliary variable, (10) can be replaced by two expressions: xi,t ≥ Di,t − Ui,t−1 , ∀i ∈ I, Ui,t = xi,t − Di,t + Ui,t−1 , ∀t ∈ TiI , ∀i ∈ I, (11) ∀t ∈ TiI . (12) We let Uid denote the initialization of Ui,ai −1 . 3.5 Cost factors There are four cost factors in our model. Cost per labor hour during aggregated period y ∈ Y is denoted cW y . For rotables not yet in the field in the first period of the planning horizon, a turn-around-stock of rotables needs to be acquired at the price of cai per rotable of type i ∈ I. (cai may also include the expected inventory holding cost over the relevant time horizon.) There are also material costs associated with overhaul and these are denoted cm i,t for rotables of type i ∈ I when the overhaul order was released during period t ∈ TiI . Similarly, cri,t represent costs of replacing a rotable of type i ∈ I during period t ∈ TiI . Note that we do not explicitly model the cost of replacing a rotable earlier than required; these costs can be modeled implicitly through the dependence on time included in all the cost factors. Adding all costs over the relevant horizon we find that the total relevant costs (T RC) satisfy T RC = 3.6 P y∈Y cW y Wy + P a i∈I|ai >1 ci Si + P i∈I P t∈TiI cm i,t ni,t + P i∈I P t∈TiI cri,t xi,t (13) Mixed integer programming formulation The modeling results of the previous sub-sections lead to an optimization problem that we shall call the aggregate rotable overhaul and supply chain planning (AROSCP) problem. For convenience, all introduced notation is summarized in Table 2, where also a distinction is made between sets, parameters, (auxiliary) variables and decision variables. A natural formulation of AROSCP is a mixed integer program, as shown below. 11 Table 2: Overview of notation Sets I : Set of all types of rotables (not the rotables themselves) It : Set of all types of models in the field in period t ∈ T , It = {i ∈ I|ai ≤ t ≤ pi } T : Set of all periods considered in the planning horizon (typically months) TiI : Set of periods during which rotable i ∈ I is active in the field (TiI = {ai , ..., pi }) Y : Set of aggregated periods (typically years) TyY : Set of periods that are contained in a certain aggregated period Parameters ai Bid ca i cm i,t cri,t cW y d Di,t Hid : First period in the planning horizon that rotables of type i ∈ I are in the field (ai ∈ T ) : Number of ready-for-use rotables of type i ∈ I available (on stock) at the beginning of period ai : Acquisition cost of rotable i ∈ I : Material costs associated with releasing an overhaul order : Costs of replacing a rotable i ∈ I during period t ∈ TiI : Cost per labor hour during aggregated period y ∈ Y for a rotable of type i ∈ I in period t ∈ TiI : Number of rotables of type i ∈ I that require overhaul in or before period t ∈ {ai , ..., ai + qi } : Number of non-ready for use rotables of type i ∈ I on stock at the beginning of period ai Li : The overhaul lead time (in periods) for rotables of type i ∈ I ndi,t : Number of overhaul order releases of rotables of type i ∈ I in period t ∈ {ai − Li , ..., ai − 1} pi : Last period that rotables of type i ∈ I are in the field during the planning horizon (pi ∈ T ) qi : Inter-overhaul deadline for rotables of type i ∈ I ri : Amount of labor hours required to start production of a type i ∈ I rotable Uid : Number of replacements of rotables of type i in excess of what is strictly necessary by period ai − 1 ∆ly (∆u y) : Lower (upper) bound on the change in number of labor contracts δtl (δtu ) : Lower (upper) bound on the number of labor hours for from aggregated period y to y + 1, y ∈ {1, ..., |Y | − 1} rotable overhaul made available in period t ∈ T (Auxiliary) variables Bi,t : Number of ready-for-use rotables of type i ∈ I available at the beginning of period t ∈ TiI Di,t : Number of rotables of type i ∈ I that require overhaul in or before period t ∈ {ai + qi , ..., |TiI |} Hi,t : Number of non-ready for use rotables of type i ∈ I at the beginning of period t ∈ TiI Ui,t : Number of replacements of rotables of type i in excess of what is Pt Pt t′ =ai xi,t′ − t′ =ai Di,t′ strictly necessary by period t, i.e. Ui,t = Decision variables ni,t : Number of overhaul order releases of rotables of type i ∈ I during period t ∈ {ai − Li + 1, ..., pi } Si : Turn-around-stock of rotables of type i ∈ I Wy : Number labor hours available in aggregated period y ∈ Y wt : Number of labor hours for overhaul that are allocated to period t ∈ T xi,t : Number of rotable replacements of type i ∈ I during period t ∈ T 12 minimize T RC = X X cW y Wy + y∈Y cai Si + XX i∈I i∈I|ai >1 cm i,t ni,t + XX i∈I t∈TiI cri,t xi,t (14) t∈TiI subject to Bi,t = Bi,t−1 − xi,t−1 + ni,t−Li −1 ∀i ∈ I, ∀t ∈ TiI \{ai } (15) Hi,t = Hi,t−1 + xi,t−1 − ni,t−1 ∀i ∈ I, ∀t ∈ TiI \{ai } (16) Bi,ai = Si ∀i ∈ {i ∈ I|ai > 1} (17) Bi,ai = Bid ∀i ∈ {i ∈ I|ai = 1} (18) Hi,ai = 0 ∀i ∈ {i ∈ I|ai > 1} (19) Hi,ai = Hid ∀i ∈ {i ∈ I|ai = 1} (20) ni,t = ndi,t P Wy = t∈TyY wt ∀i ∈ I, (21) δtl Wy /|TyY | ≤ wt ≤ δtu Wy /|TyY | ∀y ∈ Y, ∀y ∈ Y ∆ly Wy ≤ Wy+1 ≤ ∆uy Wy P t ∈ {ai − Li , ..., ai − 1} (22) ∀t ∈ TyY (23) ∀y ∈ {1, ..., |Y | − 1} W1 = W d i∈It (24) (25) ri ni,t ≤ wt ∀t ∈ T (26) ni,t ≤ Hi,t + xi,t ∀i ∈ I, ∀t ∈ TiI (27) xi,t ≤ Bi,t + ni,t−Li ∀i ∈ I, ∀t ∈ TiI (28) xi,t ≥ Di,t − Ui,t−1 ∀i ∈ I, ∀t ∈ TiI (29) Ui,t = xi,t − Di,t + Ui,t−1 ∀i ∈ I, ∀t ∈ TiI (30) Ui,ai −1 = Uid ∀i ∈ I (31) d Di,t = Di,t ∀i ∈ I, ∀t ∈ {ai , ..., ai + qi − 1} (32) Di,t = xi,t−qi ∀i ∈ I, ∀t ∈ {ai + qi , ..., pi } (33) ∀i ∈ I, ∀t ∈ T (34) xi,t , ni,t ∈ N0 Si ∈ N ∀i ∈ {i ∈ I|ai > 1} 0 ≤ ni,t , xi,t , Bi,t , Hi,t , Wy , wt , Ui,t ∀i ∈ I, ∀t ∈ T, (35) ∀y ∈ Y. (36) Here, N0 = N ∪ {0}. We remark that it is possible to choose parameter values such that a feasible solution to this MIP does not exist. In particular infeasibility can be created by d setting the parameters Di,t to exceed the available capacity in terms of either work force or 13 rotable availability. Seeing as MIPs are in general hard to solve, it is natural to question what the complexity of AROSCP is. In this regard we offer the following proposition. Proposition 3.1. The aggregate rotable overhaul and supply chain planning problem (AROSCP) is strongly N P-hard. The proof of Proposition 3.1 uses reduction from BIN-PACKING and is found in the appendix. In §4, we provide computational evidence that, despite the computational complexity of the problem, mixed integer programming can still be used to find optimal or close to optimal solutions for instances of real life size. 3.7 Modeling flexibility The formulation presented in (14)-(36) still has significant modeling flexibility. We shall illustrate this flexibility by several examples. In many practical applications the availability of workforce fluctuates with the time of the year; particularly during holiday and summer season there is reduced workforce availability. This can be modeled through the bounds on wt , δtu and δtl . The cost parameters in (14) depend on t. This dependence can be used to penalize early t m overhaul of rotables and to discount future costs, e.g. by taking cm i,t = α ci with α ∈ (0, 1]. Labor flexibility has taken a very specific form that is congruent with the setting we will describe in §4. Traditionally, labor flexibility has been modeled by including overtime at extra cost in the model as has also been done in Bitran and Hax (1977) and the related literature as reviewed in §2. These modeling constructs are easily incorporated into our MIP formulation. In our model we have assumed capacity bounds to exist only on labor in the overhaul workshop. The model can easily be extended with capacity constraints on the number of replacements in the maintenance depot and capacity constraints of different types (e.g. on equipment and tools) in both the overhaul workshop and the maintenance depot. Note however that when these constraints are clearly not binding, it is best to avoid the extra modeling and data collection efforts associated with such extensions. 14 Figure 2: An example of a bogie 4. Case study In this section, we report on a case-study at NedTrain, a Dutch company that maintains rolling stock. The fleet maintained by NedTrain consists some 3000 carriages across 6 main train types. Almost all carriages rest on two bogies. Bogies are rotables and there are about 30 different types of bogies in the fleet maintained by NedTrain. In the city of Haarlem, NedTrain has a facility dedicated to the overhaul of all types of bogies in the fleet. Bogies are considered important rotables and this case-study is about the overhaul and supply chain planning of rotables at NedTrain. An example of a bogie is shown in Figure 2. The data set used for the case study we present is outlined in considerable detail in the master thesis of Vernooij (2011). Here, we present a high level description of the data. Rolling stock has a planned life cycle of 30 years and our model uses this as the length of the planning horizon. The period length we consider is a month, while the aggregated period length is a year. The instance we study has 56 bogie types |I| = 56, 30 bogie types of which are currently in operation and 26 of which belong to new types of trains that will enter the fleet some time in the next 30 years. The population size of any bogie type ranges from 32 to 611 and depends on how many trains there are of a specific type in the fleet, and how often a bogie type appears in any specific trainset. (For instance, bogies with traction engines appear less often then bogies without in most trainsets.) The flexibility of changing capacity from one aggregated period to the next is limited at 10%, i.e., ∆ly = 0.9 and ∆uy = 1.1 for all y ∈ {1, ..., |Y | − 1}. The flexibility of allocating labor to specific periods is also limited to 10%, i.e., δtl = 0.9 and δtu = 1.1 for all t ∈ T . The MIOTs, qi , range from 72 to 240 months. 15 Overhaul lead times are 1 period for all bogie types (Li = 1 for all i ∈ I). To start overhaul of any bogie, 200 hours of labor need to be available, for any bogie type (ri = 200 for all i ∈ I). For confidentiality reasons, we do not report any real cost figures. Under the MIP formulation in this paper, this instance has 64896 variables and 76378 constraints. 4.1 Computational feasibility Seeing as the AROSCP problem is N P-hard, we first test the computational feasibility of the model. To this end we propose 3 ways to (approximately) solve the problem: (i) Solve the MIP formulation while allowing for an optimality gap of 1% (ii) Relax the integrality constraints on ni,t and xi,t and solve the resulting MIP while allowing for an optimality gap of 1% (iii) Solve the linear programming relaxation of the MIP formulation. All these three methods can be readily implemented using several MIP/LP solvers. We did this for four well known solvers: CPLEX 12.5.0.0 1 , GUROBI 4.6.1. 2 , CBC 2.7.5 3 , and GLPK 4.47 4 . We solved the instance of AROSCP described above 5 times for each combination of solver and (approximate) solution method. The average computational times and halfwidths of 95% confidence intervals based on the t-distribution are shown in Table 3. All experiments were ran on a machine with Intel Core Duo 2.93GHz processor and 4GB RAM. For the solvers, we used the ‘out of the box’ settings. It is notable that only GUROBI can solve the MIP formulation; the other solvers either run out of memory or time. With a computational time of less than two hours, the performance of GUROBI is quite good. All solvers can solve the Partial MIP relaxation and the LP relaxation. The LP relaxation can be solved in a matter of minutes by any solver. In the next section, we show that the results produced by both the partial MIP relaxation and 1 CPLEX is a commercial solver that can use multiple CPU cores in parallel. More information on this solver can be found on http://www-01.ibm.com/software/integration/optimization/cplex-optimizer/. 2 GUROBI is a commercial solver that can use multiple CPU cores in parallel. More information on this solver can be found on http://www.gurobi.com/. 3 CBC stands for Coin Branch and Cut and is an open source solver associated with the COIN-OR initiative. At present, CBC can only use one CPU core. More information on this solver can be found on http://www.coin-or.org/Cbc/. 4 GLPK stands for GNU linear programming kit and is an open source solver. GLPK can only use one CPU core. More information on this solver can be found on http://www.gnu.org/software/glpk/. 16 Table 3: Computational times for different solvers and solution methods using ‘out of the box’ settings. Solver Solution Method 5 GUROBI 4.6.1 Average Halfwidth of 95% CI MIP (MIPGap 1%) 5128.0 27.83 Partial MIP relaxation 119.2 0.30 LP relaxation 85.6 0.60 MIP (MIPGap 1%) CPLEX 12.5.0.0 CBC 2.7.5 GLPK 4.47 out of memory after 881 seconds Partial MIP relaxation 186.9 0.12 LP relaxation 126.8 0.29 MIP (MIPGap 1%) infeasible after 43200 seconds Partial MIP relaxation 207.4 0.49 LP relaxation 293.8 0.16 MIP (MIPGap 1%) infeasible after 43200 seconds Partial MIP relaxation 3031.8 2.40 LP relaxation 138.2 0.09 the LP relaxation are quite good in terms of both the estimated lcc and the decisions that follow from the solution. 4.2 Sensitivity of result to integrality constraints The most important decisions that follow from the model are the dimensioning of aggregate workforce capacity (Wy ) and turn-around-stocks (Si ). Figure 3 shows the aggregate capacity plan, Wy , for the planning horizon of 30 years as found by the three (approximate) solution methods proposed in §4.1. From Figure 3, it is evident that, for tactical decision making, the results of both the Partial MIP relaxation and the LP-relaxation are sufficiently accurate, although the results of the Partial MIP relaxation are somewhat closer to the solution of the original MIP. Results for the turn-around-stock levels are also very close across different solution methods, as shown in Figure 4. Here the turn-around-stocks of the LP-relaxation are determined by rounding up to the nearest integer. We remark that the results of rounding the turnaround-stock levels found by the LP-relaxation, yield results that are closer the the MIP solution then the Partial MIP solution that does not relax integrality constraints on the turn-around-stocks, Si . Figure 5 shows the costs found by all three solution methods, normalized so that the solution found by the MIP formulation is exactly 100. It is notable that estimated lower 17 5 1.5 x 10 MIP Partial MIP relaxation LP-relaxation Aggregegate Capacity Level [Labour hours per year] 1.4 1.3 1.2 1.1 1 0.9 0.8 0.7 0.6 0.5 0 5 10 15 20 25 30 Time [years] Figure 3: Aggregate capacity plan for case-study at NedTrain using different solution methods bounds of T RC found by solving either relaxation are very tight. Also the division of costs over labor, material, acquisition, and replacement costs are almost identical. In conclusion, we observe that for making good decisions and estimating cost accurately, it is sufficient to solve relaxations of AROSCP. In particular the linear programming relaxation is a good candidate given its computational tractability. 4.3 Insights from case-study From Figure 5, we know that labor costs are the the most dominant cost factor. Our model allows for labor flexibility through the parameters ∆uy , ∆ly and δtu , δtl . The first two of these parameters control what we call long term labor flexibility, as they model how the size of the workforce can be changed over a longer horizon. The second pair of parameters, δtu , δtl , models the flexibility to allocate labor of the current workforce to different periods within the same aggregated period. For this reason we say that δtu , δtl model short term labor flexibility. We performed a sensitivity analysis on long term versus short term labor flexibility. In what follows, we say that long (short) term labor flexibility is x% when ∆uy = 1 + x/100 and 18 8 MIP Partial MIP relaxation LP-relaxation rounded up 7 Size of turn-around stock 6 5 4 3 2 1 0 0 5 10 15 20 25 Rotable type Figure 4: Turn-around-stock sizes for case at NedTrain as determined by different solution methods ∆ly = 1 − x/100 (δtu = 1 + x/100 and δtl = 1 − x/100) for all y ∈ Y (t ∈ T ). Figure 6 shows how T RC varies with different percentages of long and short term labor flexibility. Here again, costs were normalized to 100 for the MIP solution of the original instance with 10% labor flexibility in both the short and long term. It appears that short term labor flexibility has relatively little effect on costs over the horizon under consideration, while long term labor flexibility can be leveraged quite effectively. An explanation for this is that the greatest gains in planning rotable overhaul supply chains are often achieved by moving replacements and overhauls more than a year backward in time. Thus, effective planning does not rely on moving labor capacity around in the short term. Rather, gains can be made by planning replacement and overhauls such that exercising short term labor flexibility has only marginal impact. Overhauls and replacements interact with each other on the time scale of the MIOT. Thus, taking the entire life cycle of an asset and not artificially penalizing early overhaul and replacements really pays of. At NedTrain, it is practice to not plan overhauls and replacements very far into the future. The reason is that the MIOTs are subject to some uncertainty. The engineers that fix the MIOTs try to fix them as late as possible in the hope that they may stretch these MIOTs. The basic idea is that, by stretching the MIOT, a rotable needs to undergo overhaul less often per time unit and so associated material an labor costs are incurred less often. 19 140 Labor Cost Rotable Acquisition Cost Overhaul Material Cost Replacement Cost Optimal objective value, normalized for MIP method 120 100 80 60 40 20 0 MIP Partial MIP relaxation LP relaxation Figure 5: Cost break down for different solution methods 105 105 MIP Partial MIP relaxation LP relaxation 104 103 103 102 102 Normalized TRC Normalized TRC 104 101 100 101 100 99 99 98 98 97 5 10 Long term labor flexibility 15 [|ly-1|*100% 20 and MIP Partial MIP relaxation LP relaxation 97 25 |uy-1|*100%] 5 10 15 20 25 Short term labor flexibility [|ly-1|*100% and |uy-1|*100%] Figure 6: The value of long term versus short term labor flexibility While this is true for asset with an infinite life cycle and overhaul shops that have capacity available when convenient and not otherwise, it is not necessarily true for assets with a finite 20 life cycle overhaul shops that provide specialized labor that has to be contracted ahead of time. A result of knowing the MIOT late is that the overhaul workshop does not know how much work to expect so it plans for the worst case scenario. Especially for the sake of labor costs and workload smoothing, it is much more beneficial to fix MIOTs early and optimize the plan for overhaul and supply chain operations. 5. Conclusion In this paper, we have presented a model for the aggregate planning of rotable overhaul and supply chain operations. The model has many realistic features and incorporates lcc considerations in planning decisions. Despite the fact that solving the presented model to optimality is N P-hard in general, we have provided evidence to suggest that a linear programming relaxation of the problem still yields decisions that are close to optimal for large instances of AROSCP as found practice. In a case study, we have demonstrated how our model can aid decision making. In particular, we have argued that it is beneficial to fix MIOTs relatively early so that an effective plan for overhaul and supply chain operations can be made that utilizes the flexibility of overhaul planning that exists only when considering the entire life cycle of an asset. Acknowledgements The authors would like to thank Bob Huisman of NedTrain for introducing this research topic to the authors and many stimulating discussions. References Y. Asiedu and P. Gu. Product life cycle cost analysis: state of the art review. Internationa Journal of Production Research, 36(4):883–908, 1998. P.J. Billington, J.O. McClain, and L.J. Thomas. Mathematical programming approaches to capcity-contrained MRP systems: Review, formualtion and problem reduction. Management Science, 29(10):1126–1141, 1983. G.R. Bitran and A.C. Hax. On the design of hierarchical production planning systems. Decision Sciences, 8:28–55, 1977. 21 G.R. Bitran, Haas. E.A., and Hax A.C. Hierarchical production planning: a single stage system. Operations Research, 29(4):717–743, 1981. G.R. Bitran, Haas. E.A., and Hax A.C. Hierarchical production planning: a two stage system. Operations Research, 30(2):232–251, 1982. M. Charest and J.A. Ferland. Preventive maintenance scheduling of power generating units. Annals of Operations Research, 41:185–206, 1993. C.H. Chen, S. Yan, and M. Chen. Short-term manpower planning for mrt carriage maintenance under mixed deterministic and stocastic demands. Annals of Operations Research, 181:67–88, 2010. T.G. De Kok and J.C. Fransoo. Planning supply chain operations: Definition and comparison of planning concepts. In A.G. de Kok and S.C. Graves, editors, Supply Chain Management: Design, Coordination and Operation, pages 597–675. Elsevier, 2003. M.A. Driessen, J.J. Arts, G.J. Van Houtum, W.D. Rustenburg, and B. Huisman. Maintenance spare part planning and control: A framework for control and agenda for future research. Beta Working paper 325, Eindhoven University of Technology, 2010. Ş.S. Erengüç, N.C. Simpson, and A.J. Vakharia. Integrated production/distribution planning in supply chains: An invited review. European Journal of Operational Research, 115, 1999. M.R. Garey and D.S. Johnson. Computers and intractibility: A guide to the theory of NPcompleteness. W.H. Freeman and company, 1979. Y. Gupta and W.S. Chow. Twenty-five years of life cycle costing - theory and applications: A survey. International Journal of Quality and Reliability Management, 2(3):51–76, 1985. W.J. Hopp and M.L. Spearman. Factory physics. McGraw-Hill, 2001. M.A. Ilgin and S.M. Gupta. Environmentally conscious manufacturing and product recovery (ecmpro): A review of the state of the art. Journal of Environmental Management, 91: 563–591, 2010. S.J. Joo. Scheduling preventive maintenance for modular designed components: A dynamic approach. European Journal of Operational Research, 192:512–520, 2009. S. Nahmias. Production and Operations Analysis. McGraw-Hill, 6 edition, 2009. 22 K.B. Öner, R. Franssen, and G.P. Kiesmüller. Life cycle costs measurement of complex systems manufactured by an engineer-to-order company. In R.G. Qui, D.W. Russel, W.G. Sullivan, and M. Ahmad, editors, The 17th International Conference on Flexible Automation and Intelligent Manufacturing, pages 569–589, 2007. N.M. Paz and W. Leigh. Maintenance scheduling: Issues, results and research needs. International Journal of Operations and Production Management, 14(8), 1994. N. Safaei, D. Banjevic, and A.K.S. Jardine. Workforce constrained maintenance scheduling for military aircrapft fleet: a case study. Annals of Operations Research, 186:295–316, 2011. C.C. Sherbrooke. Optimal inventory modeling of systems: Multi-echelon techniques. Wiley, 2004. E.A. Silver, D.F. Pyke, and R. Peterson. Inventory management and production planning and scheduling. John Wiley & Sons, 1998. J.M. Spitter, C.A.J. Hurkens, A.G. De Kok, J.K. Lenstra, and E.G. Negenman. Linear programming models with planned lead times for supply chain operations planning. European Journal of Operational Research, 163:706–720, 2005. G. Van Dijkhuizen and A. Van Harten. Optimal clustering of frequency-constrained maintenance jobs with shared set-ups. European Journal of Operational Research, 99:552–564, 1997. K. Vernooij. An aggregate planning for preventive maintenance of bogies by NedTrain. Master’s thesis, Eindhoven University of Technology, School of Industrial Engineering, the Netherlands, 2011. H.M. Wagner, R.J. Giglio, and R.G. Glaser. Preventive maintenance scheduling by mathmatical programming. Management Science, 10(2):316–334, 1964. A. Proof of Proposition 1 We show that being able to solve the AROSCP will enable one to decide the BIN-PACKING decision problem, i.e. we reduce BIN-PACKING to AROSCP. The following decision problem, known as BIN-PACKING, is strongly N P-complete (e.g. Garey and Johnson, 1979): Given positive integers α1 , ..., αm , β, and κ, is there P a partition of {1, ..., m} into disjoint sets Υ1 , ..., Υκ such that j∈Υi αj ≤ β for i = 1, ..., κ? 23 Now suppose we are given an instance of BIN-PACKING. Without loss of generality, we may assume Pm i=1 αi ≤ κβ and αi ≤ β for all i ∈ {1, ..., m}. From this instance of BIN-PACKING, we will show that how to create an instance of AROSCP in polynomial time such that the answer to this instance of BINPACKING is yes, if and only if the optimal objective value of the corresponding instance of AROSCP equals 0. The basic idea behind this reduction is the following. By setting the initial number of non ready-for-use rotables sufficiently high, the release of overhaul orders is constrained only by available workforce capacity, i.e. by (26). This workforce capacity can be kept constant at β across periods by constraints (24) and (25). Now the problem can be viewed as packing overhaul order releases into several one period bins of fixed size β. By penalizing these order releases in all but κ periods, the objective becomes to pack as many order releases as possible in the κ periods in which the order releases are not penalized. If the optimal objective of AROSPC is 0, then it was possible to pack all overhaul order releases in κ periods and so the instance of BIN-PACKING is a yes-instance. More formally, the reduction is as follows. Set Y = {1, ..., m + 1} and TyY = {y} for all y ∈ Y ; thus, aggregated and regular periods coincide. Set W d = β, and ∆ly = ∆uy = δtl = δtu = 1. This ensures capacity is identical across periods. Set I = {1, ..., m} and set ai = 1, pi = m + 1, qi = m + 1, Li = 1, Hid = 1, Bid = 0, d d = 0 for all i ∈ I and t ∈ {1, ..., m}. = 1 and ri = αi for all i ∈ I. Furthermore, set Di,t ndi,0 = 0, Di,m+1 Thus, each type of rotable needs to be replaced exactly once before or in the last period of the planning horizon. This instance of AROSCP is feasible because the following is a feasible solution: ni,i = 1 for i ∈ I and ni,t = 0 otherwise, xi,m+1 = 1 for all i ∈ I and xi,t = 0 otherwise. (Note that all other variables are set by constraints). There are no acquisitions (ai = 1 for all i ∈ I) so cai does not need to be set. Most other cost r I m parameters are set to 0; cW y = 0 for all y ∈ Y and ci,t = 0 for all i ∈ I and t ∈ Ti However, we set ci,t = 1 for all i ∈ I and t ∈ {1, ..., m − κ} and set cm i,t = 0 otherwise. Note that m − κ ≥ 1 because, by assumption, Pm P Pm−κ m i∈I i=1 αi ≤ κβ and αi ≤ β for all i ∈ {1, ..., m}. The objective function now reduces to t=1 ci,t ni,t . Let OP T denote the optimal solution to this instance of AROSCP. If OP T = 0 then, necessarily ni,t = 0 P for all i ∈ I and t ∈ {1, ..., m − κ}. Furthermore, by constraint (22), i∈It ri ni,t ≤ wt for all t ∈ T , which, P by our choice of parameter values, implies i∈I αi ni,t ≤ β for all t ∈ {m − κ + 1, ..., m}. All rotables in this instance of AROSCP have to be overhauled exactly once in or before period m because of constraints (28), (29) and (32). Therefore, for each i ∈ I there is some t ∈ {m − κ + 1, ..., m} such that ni,t = 1. when OP T = 0. Now it follows that a partition that satisfies the requirement of the original BIN-PACKING problem is given by: Υj = {i ∈ I|ni,m−κ+j = 1}, j ∈ {1, ..., κ}. In an analogous manner, it is possible to construct an optimal solution with objective 0 to an instance of AROSCP if the corresponding instance and truth certificate of BIN-PACKING is given, by setting all xi,t and ni,t to 0, except xi,m+1 = 1 for all i ∈ I and ni,m−κ+j = 1 if i ∈ Υj . Thus, we have shown that an instance of BIN-PACKING is a yes-instance if and only if the corresponding AROSCP problem has an optimal objective of 0. Observing further that the reduction can be performed in polynomial time, and that BIN-PACKING is strongly N P-complete, completes the proof. 24