Aggregate overhaul and supply chain planning for rotables


We consider the problem of planning preventive maintenance and overhaul for modules that are used 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/usage 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 the sum of labor costs, material costs of overhaul, and turn-around stock investments over the entire life-cycle of the maintained asset. We prove that this planning problem is strongly \(\mathcal{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 be used to aid decision making. We apply the model in a case study and provide computational results for randomly generated instances.

This is a preview of subscription content, access via your institution.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5


  1. 1.

    The reverse option in which the integrality constraints are only relaxed for S i is not interesting because for integral x i,t and n i,t , optimal S i cannot be fractional.

  2. 2.

    CPLEX is a commercial solver that can use multiple CPU cores in parallel. More information on this solver can be found on

  3. 3.

    GUROBI is a commercial solver that can use multiple CPU cores in parallel. More information on this solver can be found on

  4. 4.

    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

  5. 5.

    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


  1. Asiedu, Y., & Gu, P. (1998). Product life cycle cost analysis: state of the art review. International Journal of Production Research, 36(4), 883–908.

    Article  Google Scholar 

  2. Billington, P., McClain, J., & Thomas, L. (1983). Mathematical programming approaches to capacity-constrained MRP systems: review, formulation and problem reduction. Management Science, 29(10), 1126–1141.

    Article  Google Scholar 

  3. Bitran, G., & Hax, A. (1977). On the design of hierarchical production planning systems. Decision Sciences, 8, 28–55.

    Article  Google Scholar 

  4. Bitran, G., Haas, E., & Hax, A. (1981). Hierarchical production planning: a single stage system. Operations Research, 29(4), 717–743.

    Article  Google Scholar 

  5. Bitran, G., Haas, E., & Hax, A. (1982). Hierarchical production planning: a two stage system. Operations Research, 30(2), 232–251.

    Article  Google Scholar 

  6. Charest, M., & Ferland, J. (1993). Preventive maintenance scheduling of power generating units. Annals of Operations Research, 41, 185–206.

    Article  Google Scholar 

  7. Chen, C., Yan, S., & Chen, M. (2010). Short-term manpower planning for MRT carriage maintenance under mixed deterministic and stochastic demands. Annals of Operations Research, 181, 67–88.

    Article  Google Scholar 

  8. De Kok, T., & Fransoo, J. (2003). Planning supply chain operations: definition and comparison of planning concepts. In A. de Kok & S. Graves (Eds.), Supply chain management: design, coordination and operation (pp. 597–675). Amsterdam: Elsevier.

    Google Scholar 

  9. Driessen, M., Arts, J., Van Houtum, G., Rustenburg, W., & Huisman, B. (2010). Maintenance spare part planning and control: a framework for control and agenda for future research. Beta working paper 325, Eindhoven University of Technology, Eindhoven, the Netherlands.

  10. Dzielinski, B., Baker, C., & Manne, A. (1963). Simulation tests of lot size programming. Management Science, 9(2), 229–258.

    Article  Google Scholar 

  11. Ebeling, C. (2010). Introduction to reliability and maintainability engineering (2nd ed.). Long Grove: Waveland Press.

    Google Scholar 

  12. Erengüç, E., Simpson, N., & Vakharia, A. (1999). Integrated production/distribution planning in supply chains: an invited review. European Journal of Operational Research, 115(2), 219–236.

    Article  Google Scholar 

  13. Garey, M., & Johnson, D. (1979). Computers and intractability: a guide to the theory of NP-completeness. New York: W.H. Freeman and company.

    Google Scholar 

  14. Gupta, Y., & Chow, W. (1985). Twenty-five years of life cycle costing—theory and applications: a survey. International Journal of Quality and Reliability Management, 2(3), 51–76.

    Article  Google Scholar 

  15. Hopp, W., & Spearman, M. (2001). Factory physics. New York: McGraw-Hill.

    Google Scholar 

  16. Ilgin, M., & Gupta, S. (2010). Environmentally conscious manufacturing and product recovery (ECMPRO): a review of the state of the art. Journal of Environmental Management, 91, 563–591.

    Article  Google Scholar 

  17. Joo, S. (2009). Scheduling preventive maintenance for modular designed components: a dynamic approach. European Journal of Operational Research, 192, 512–520.

    Article  Google Scholar 

  18. Nahmias, S. (2009). Production and operations analysis (6th ed.). New York: McGraw-Hill.

    Google Scholar 

  19. Öner, K., Franssen, R., & Kiesmüller, G. (2007). Life cycle costs measurement of complex systems manufactured by an engineer-to-order company. In R. Qui, D. Russel, W. Sullivan, & M. Ahmad (Eds.), The 17th international conference on flexible automation and intelligent manufacturing (pp. 569–589). Amsterdam: Elsevier.

    Google Scholar 

  20. Paz, N., & Leigh, W. (1994). Maintenance scheduling: issues, results and research needs. International Journal of Operations & Production Management, 14(8), 47–69.

    Article  Google Scholar 

  21. Ross, S. (1996). Stochastic processes (2nd ed.). Hoboken: Wiley.

    Google Scholar 

  22. Safaei, N., Banjevic, D., & Jardine, A. (2011). Workforce constrained maintenance scheduling for military aircraft fleet: a case study. Annals of Operations Research, 186, 295–316.

    Article  Google Scholar 

  23. Sherbrooke, C. (2004). Optimal inventory modeling of systems: multi-echelon techniques (2nd ed.). Boston: Kluwer.

    Google Scholar 

  24. Silver, E., Pyke, D., & Peterson, R. (1998). Inventory management and production planning and scheduling. Hoboken: Wiley.

    Google Scholar 

  25. Spitter, J. (2005). Rolling schedule approaches for supply chain operations planning. PhD thesis, Eindhoven University of Technology, Department of Technology Management, Eindhoven, the Netherlands.

  26. Spitter, J., Hurkens, C., De Kok, A., Lenstra, J., & Negenman, E. (2005). Linear programming models with planned lead times for supply chain operations planning. European Journal of Operational Research, 163, 706–720.

    Article  Google Scholar 

  27. Van Dijkhuizen, G., & Van Harten, A. (1997). Optimal clustering of frequency-constrained maintenance jobs with shared set-ups. European Journal of Operational Research, 99, 552–564.

    Article  Google Scholar 

  28. Vernooij, K. (2011). An aggregate planning for preventive maintenance of bogies by NedTrain. Master’s thesis, Eindhoven University of Technology, School of Industrial Engineering, the Netherlands.

  29. Wagner, H., Giglio, R., & Glaser, R. (1964). Preventive maintenance scheduling by mathematical programming. Management Science, 10(2), 316–334.

    Article  Google Scholar 

Download references


The authors would like to thank Bob Huisman of NedTrain for introducing this research topic to the authors and many stimulating discussions. The authors also thank Karin Vernooij who conducted an initial study in this subject, and who collected some of the data that we use. The authors also thank anonymous referees, Geert-Jan van Houtum and Matthew Reindorp for their constructive feedback.

Author information



Corresponding author

Correspondence to Joachim Arts.


Appendix A: Proof of Proposition 2

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 \(\mathcal{NP}\)-complete (e.g. Garey and Johnson 1979): Given positive integers α 1,…,α m , β, and κ, is there a partition of {1,…,m} into disjoint sets ϒ1,…,ϒ κ such that \(\sum_{j\in\Upsilon_{i}}\alpha_{j} \leq\beta\) for i=1,…,κ?

Now suppose we are given an instance of BIN-PACKING. Without loss of generality, we may assume that \(\sum_{i=1}^{m} \alpha_{i}\leq\kappa\beta\) and α i β for all i∈{1,…,m}. From this instance of BIN-PACKING, we will show how to create an instance of AROSCP in polynomial time such that the answer to this instance of BIN-PACKING 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 (29). This workforce capacity can be kept constant at β across periods by constraints (27) and (28). 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 \(T^{Y}_{y}=\{y\}\) for all yY; thus, aggregated and regular periods coincide. Set W d=β, and \(\Delta_{y}^{l}=\Delta_{y}^{u}=\delta_{t}^{l}=\delta_{t}^{u}=1\). This ensures capacity is identical across periods. Set I={1,…,m} and set a i =1, p i =m+1, q i =m+1, L i =1, \(H^{\mathrm{d}}_{i}=1\), \(B^{\mathrm{d}}_{i}=0\), \(n^{\mathrm{d}}_{i,0}=0\), \(D^{\mathrm {d}}_{i,m+1}=1\) and r i =α i for all iI. Furthermore, set \(D^{\mathrm{d}}_{i,t}=0\) for all iI and t∈{1,…,m}. 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: n i,i =1 for iI and n i,t =0 otherwise, x i,m+1=1 for all iI and x i,t =0 otherwise. (Note that all other variables are set by constraints). There are no acquisitions (a i =1 for all iI) so \(c^{a}_{i}\) does not need to be set. Most other cost parameters are set to 0; \(c^{W}_{y}=0\) for all yY and \(c^{r}_{i,t}=0\) for all iI and \(t\in T^{I}_{i}\). However, we set \(c^{m}_{i,t}=1\) for all iI and t∈{1,…,mκ} and set \(c^{m}_{i,t}=0\) otherwise. Note that mκ≥1 because, by assumption, \(\sum_{i=1}^{m}\alpha_{i}\leq\kappa\beta\) and α i β for all i∈{1,…,m}. The objective function now reduces to \(\textstyle\sum_{i\in I} \textstyle\sum_{t=1}^{m-\kappa} c^{m}_{i,t} n_{i,t}\). Let OPT denote the optimal solution to this instance of AROSCP. If OPT=0 then, necessarily n i,t =0 for all iI and t∈{1,…,mκ}. Furthermore, by constraint (25), \(\sum_{i\in I_{t}}r_{i} n_{i,t}\leq w_{t}\) for all tT, which, by our choice of parameter values, implies ∑ iI α i n i,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 (31), (32) and (35). Therefore, for each iI there is some t∈{mκ+1,…,m} such that n i,t =1. when OPT=0. Now it follows that a partition that satisfies the requirement of the original BIN-PACKING problem is given by:

$$\begin{aligned} \Upsilon_j = \{i\in I|n_{i,m-\kappa+j}=1\},\quad j\in\{1,\ldots,\kappa\}. \end{aligned}$$

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 x i,t and n i,t to 0, except x i,m+1=1 for all iI and n i,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 above is a pseudo-polynomial reduction as defined by Garey and Johnson (1979, p. 101), and that BIN-PACKING is strongly \(\mathcal{NP}\)-complete, completes the proof.  □

Appendix B: Details on the random instance generator

B.1 Rotable characteristics

First, we generate the number of different rotable types that are already in the field at the beginning of the planning horizon, |I 1|, from \(\mathcal{UD}(25,40)\). Then for each iI 1, we draw p i , q i , r i and L i as shown in Table 5. Note that for iI 1, a i =1 by definition and needs not be generated randomly.

Some of the rotables iI 1 may belong to assets that will be disposed of before the end of the planning horizon, i.e., possibly p i <360 for some iI 1. If this is the case, we assume that this asset will be replaced by a new type of asset, which consists of rotables with identical characteristics that will remain current for the remainder of the planning horizon. For example, if 1∈I 1, p 1=270, a 1=1, q 1=120, r 1=200, L 1=1, and |I 1|=32, then we add rotable type 33 to I and set a 33=p 1+1=271, p 33=p 1=360, q 33=q 1=120, r 33=r 1=200, and L 33=L 1=1. This procedure is shown formally in Table 5 using set expressions and the fact that I is generated to contain a sequence of integers. We note that it is also possible that a rotable type that is replaced some time during the planning horizon is replaced with a rotable type that has different characteristics. In particular, new rotable types are likely to be more reliable due to technological advancements. The models can also accommodate these scenarios. However, we make the conservative assumption that rotable types are replaced rotable types with identical characteristics.

B.2 Initial conditions and flexibility

For each type of rotable iI, there are revisions already due. We assume the worst case scenario that the first upcoming revision of any one rotable type are due in a single period. For rotable type iI, this single period is a i +τ i and τ i is generated as \(\tau_{i}=\mathcal{UD}(10,q_{i})\). The number of revisions due in period a i +τ i is drawn from \(\mathcal{UD}(30,600)\). This means that for each iI, \(D^{\mathrm{d}}_{i,t}=0\) if tτ i and \(D^{\mathrm{d}}_{i,\tau_{i}}=\mathcal{UD}(30,600)\).

Again as a worst case scenario, \(U^{\mathrm{d}}_{i}=0\) and \(n^{\mathrm {d}}_{i,t}=0\) for all relevant i and t, meaning that there are no recent order releases and that there have been no replacements ahead of time. Initially, for each iI 1 there is no stock of non-ready for use rotables, i.e., \(H^{\mathrm{d}}_{i}=0\) for all iI 1. The initial ready-for-use stock of iI 1 is generated as a fraction of the first peak number of revisions due in period a i +τ i : \(B^{\mathrm{d}}_{i} = \lceil\mathcal{U}(0.1,0.3)\cdot D^{\mathrm {d}}_{i,\tau_{i}} \rceil\), where ⌈x⌉ is x rounded up to the nearest integer.

The bounds \(\Delta^{l}_{y}\) and \(\Delta^{u}_{y}\) are obtained by generating Δlu) as \(\mathcal{U}(0.7,0.95)\) \((\mathcal{U}(1.05,1.3))\) and setting \(\Delta^{l}_{y} = \Delta^{l}\) and \(\Delta^{u}_{y}=\Delta^{u}_{y}\) for all yY∖{|Y|}. Similarly \(\delta^{l}_{t}\) (\(\Delta^{u}_{t}\)) are obtained by generating δ l (δ u) as \(\mathcal{U}(0.7,0.95)\) (\(\mathcal {U}(1.05,1.3)\)) and setting \(\delta^{l}_{t}=\delta^{l}\) and \(\delta^{u}_{t}=\delta^{u}\) for all tT. Finally, in each case, W d is set as 150000. We do not generate this parameter randomly, because the r i are already generated randomly.

B.3 Costs parameters

The costs parameters are discounted on a yearly basis by the discount parameter α. Within a year however, there is no discounting, so that for a period tT, the corresponding year is ⌈t/12⌉.

Rights and permissions

Reprints and Permissions

About this article

Cite this article

Arts, J., Flapper, S.D. Aggregate overhaul and supply chain planning for rotables. Ann Oper Res 224, 77–100 (2015).

Download citation


  • Maintenance
  • Aggregate planning
  • Life cycle costs
  • \(\mathcal{NP}\)-hard
  • Repairable parts
  • Reverse logistics