Optimizing predictive maintenance and mission assignment to enhance fleet readiness under uncertainty
Ryan O’Neil, Abdelhakim Khatab, Claver Diallo

TL;DR
This paper introduces a new method to optimize fleet maintenance and mission assignments under uncertainty, improving readiness and efficiency.
Contribution
The novel FSM model integrates mission assignment, maintenance selection, and uncertainty handling using hybrid reliability assessment.
Findings
The proposed model improves fleet readiness by jointly optimizing mission assignment and maintenance decisions.
Hybrid reliability assessment using DNNs and analytical models better reflects real-world system behavior.
Chance-constrained optimization ensures maintenance is completed within break durations with specified confidence.
Abstract
In many industrial settings, fleets of assets are required to operate through alternating missions and breaks. Fleet Selective Maintenance (FSM) is widely used in such contexts to improve the fleet performance. However, existing FSM models assume that upcoming missions are identical and require only a single system configuration for completion. Additionally, these models typically assume that all missions must be completed, overlooking resource constraints that may prevent readying all systems within the available break duration. This makes mission prioritization and assignment a necessary consideration for the decision-maker. This work proposes a novel FSM model that jointly optimizes system to mission assignment, component and maintenance level selection, and repair task allocation. The proposed framework integrates analytical models for standard components and Deep Neural Networks…
Genes, proteins, chemicals, diseases, species, mutations and cell lines named across the full text — each resolved to its canonical identifier and authoritative record.
Click any figure to enlarge with its caption.
Figure 10
Figure 11
Figure 12
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9- —http://dx.doi.org/10.13039/501100000038Natural Sciences and Engineering Research Council of Canada
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsReliability and Maintenance Optimization · Software Reliability and Analysis Research · Risk and Safety Analysis
Introduction
Many engineered assets and systems are designed to operate according to a sequence of alternating missions and breaks. These mission-oriented systems (MOS) are ubiquitous in several industrial applications such as air transportation, military equipment, nuclear plants, spacecraft, and unmanned autonomous vehicles. A key metric used to assess their performance is the mission success probability, defined as the system’s ability to successfully complete a defined mission of a specific profile under given operational conditions. To ensure that the mission success probability meets a required level for the upcoming mission, maintenance actions are usually carried out on the system/components during scheduled maintenance breaks. However, due to the limited maintenance resources (e.g., time, budget, materials, spare parts, crews) only a subset of the desired maintenance tasks can be performed. In the literature, this resource-constrained maintenance problem is known as the selective maintenance problem (SMP). The primary objective is to identify the optimal subset of components and maintenance actions that either minimize maintenance costs while ensuring a required level of the system reliability to operate the next mission, or maximize the system reliability subjected to maintenance budget and/or break duration constraints.
The original selective maintenance (SM) model was introduced in [1] with the aim of maximizing mission success probability using a full enumeration algorithm. Many researchers have since expanded upon this original work to include complex system configurations [2], multistate systems [3, 4], component dependence [5–7], uncertainties related to maintenance, break, and mission durations [8–10], uncertainties related to maintenance quality [11, 12], fleet level selective maintenance [13, 14], and multiple repair channels [15, 16]. Significant advances have also been made in the solution methods used to solve the SMP. [17] refined to the total enumeration approach developed in [1]. Multiple authors have utilized metaheuristics such as Tabu search [18], genetic algorithms [16], and ant colony optimization [9]. [2] introduced a two-phase approach that eliminates the need for solving a nonlinear objective function as the approach converts the problem to a multidimensional multi-choice knapsack problem. More recently, [19] introduced a column generation approach to solve the multi-mission SMP, where a metaheuristic was employed to solve the subproblems. [20] developed a branch-and-price framework to solve large-scale single-mission SMP problems where the subproblems were solved exactly by reformulating the problem using exponential cones.
Many existing SMP papers treat maintenance and break durations as deterministic parameters that are known and constant. Nevertheless, there are many applications in which the precise duration of the maintenance actions and break durations cannot be exactly determined but would be characterized by a random value [8, 21]. For instance, in military aircraft fleets, the unexpected start of the next mission/battle introduces uncertainties in the available maintenance time [9]. Due to the variability in repair crew experience, among many other factors, the time to perform maintenance actions may also be nondeterministic. [8] studied the SMP when durations of the maintenance actions, scheduled breaks, and missions are stochastic by proposing a nonlinear stochastic optimization problem with a chance constraint to ensure the probability of completing the maintenance actions is greater than some predefined service level. [9] studied the SMP with stochastic maintenance and mission durations for multi-state systems. Their model aims to identify the subset of maintenance actions to perform, as well as the sequencing of the actions such that the system reliability is maximized. The saddlepoint approximation is utilized to approximate the multi-dimensional convolution that arises when evaluating the system reliability [22]. [23] dealt with a multi-mission SMP for multicomponent systems where the durations of missions, maintenance actions, and breaks are stochastic. [24] investigated the SMP with stochastic duration of maintenance tasks and breaks. The authors used the expected cumulative performance to calculate system reliability. More recently, [25] studied the SMP under uncertain maintenance durations, and employed distributionally robust chance-constraints to handle such uncertainties.
An interesting and important extension of the original SMP that has received much attention is the Fleet Selective Maintenance Problem (FSMP). In the FSMP, maintenance decisions must be determined for each component within a fleet of systems. [26] first introduced the FSMP and studied its application to a fleet of military aircraft. The authors proposed an optimization model aimed at maximizing fleet reliability, which is defined as the probability that all systems successfully complete the upcoming mission. [27] extended the work of [26] by proposing a cost-based formulation and considering the possibility of canceling upcoming missions. [28] introduced a multi-objective FSMP with three unique objective functions: maximize fleet reliability, minimize total maintenance cost, and minimize gap time. The proposed model was applied to a truck fleet carrying out long-distance highway transportation missions. [13] and [29] extended the FSMP problem to include repairperson assignment decisions, and [30] proposed a resource-constrained fleet maintenance optimization model with the objective of maximizing the expected fleet readiness under stochastic break durations.
Despite the above-mentioned extensions, several key limitations remain in the existing FSMP literature. First, all FSMP models rely on a restrictive assumption according to which missions are identical and require a single system configuration for successful completion. However, this assumption does not hold in many real-world scenarios. For example, in a military aircraft fleet, missions often require different system configurations and have different durations in accordance with mission goals [31]. Nearly all proposed models assume that all upcoming missions must be completed. However, due to resource limitations, it may not be possible to ready all systems within the available break duration, making mission prioritization and assignment a necessary consideration. Additionally, all FSMP models mentioned above fail to consider the inherent uncertainties in both maintenance and break durations. Finally, the FSMP models that have been discussed thus far rely on statistical/model-driven methods for system reliability computation. However, with the recent advances in data collection with sensors and the advent of Industrial Internet of Things (IIoT), data-driven methods relying on deep neural networks have become increasingly popular for the remaining useful life (RUL) prediction and reliability assessment [32]. These methods have achieved state-of-the-art performance in terms of prognostics and predictive maintenance. Although data-driven selective maintenance strategies have recently been studied, the few existing works [33, 34] assumed that all system components are sensor monitored. In practice, however, many industrial systems are composed of both standard components with known lifetime distributions, and critical components which are sensor-monitored. Thus, a hybrid approach is needed for the reliability modeling and assessment of such systems. These limitations motivate the need for the development of a generalized FSMP framework that incorporates stochastic maintenance and break durations, mission prioritization and assignment, and hybrid reliability assessment techniques.
Aiming to help maintenance decision-makers resolve practical issues arising in the implementation of the FSMP, this paper develops a new approach where the classical FSMP is extended to include flexible system configuration adapted to multiple mission types with unique operational demands, reliability requirements, minimum system assignment thresholds, and associated penalties. Maintenance activities are permitted during the break duration to ensure that systems assigned to specific missions meet the pre-specified performance requirements. Unlike existing studies, our approach introduces a new FSMP model that jointly determines four key decisions: (1) the assignment of systems to mission types, (2) the selection of components within each system to maintain, (3) the corresponding maintenance levels to be performed on the selected components, and (4) the assignment of maintenance tasks to repairpersons. Furthermore, inevitable uncertainties in maintenance and break durations are also explicitly accounted for. A chance-constrained optimization model is then developed and reformulated. A fleet of identical multi-component systems is considered, where components are of two types: standard and critical. The first type of components (i.e., standard) are assumed to follow known lifetime distributions allowing for the analytical reliability calculations. The second type of components (i.e., critical) are sensor-monitored with reliability estimates obtained using a Deep Neural Network (DNN) with Monte Carlo Dropout (MCD), a technique that has demonstrated outstanding performance in predictive maintenance [33, 35, 36].
A preliminary version of the present work appeared in a conference paper [22] where the SMP is solved for a single MOS operating under uncertain maintenance and break durations. The resulting optimization model maximized the system reliability for the next mission. The present paper is a significant extension of [22] as it expands the complexity of the model and analyses. Major contributions of the extended paper include: i) an expanded literature review covering recent advances in SMP; ii) an extension from a single MOS to a fleet of several MOS, where systems are operating under break duration uncertainties; iii) systems are composed of two types of components and Deep Neural Networks (DNNs) are used to predict the RUL of sensor-monitored components; iv) a new FSMP formulation and efficient solution method are presented; v) several numerical experiments are conducted to highlight the proposed approach.
In summary, this paper advances the FSMP literature through the following contributions and novel modeling and methodological elements:
- The development of an extended FSMP framework that incorporates flexible system configuration across multiple mission types, each characterized by a required reliability threshold, systems’ configuration and assignment, and associated penalties.
- The consideration of two types of components, standard and critical components. A data-driven reliability estimation method is developed using DNN combined with MCD for critical components.
- The development of a novel joint optimization model that simultaneously determines (i) the assignment of systems to mission types, (ii) the selection of components to maintain, (iii) the maintenance levels to perform, and (iv) the allocation of maintenance tasks to available repairpersons.
- The consideration of uncertainties in both maintenance tasks and break durations. A chance-constrained optimization model is developed, and then reformulated using Sample Average Approximation (SAA) and the Conditional Value-at-Risk (CVaR) approximation.
This paper is organized as follows. Section 2 provides a comprehensive description of the system and the problem under investigation. This section also develops the reliability and maintenance models for both standard and sensor-monitored components. In Sect. 3, the novel deterministic formulation of the FSMP is introduced, while Sect. 4 presents the chance-constrained formulation and its CVaR approximation. The mathematical model is validated through a case study involving the maintenance of a fleet of military aircraft in Sect. 5. The numerical results are analyzed and extensively discussed in Sect. 6. Finally, Sect. 7 concludes the paper by summarizing the key findings and identifying promising directions for future research.
Problem description
In this section, the problem considered is described and the main working assumptions are presented. First, the notation system is introduced.
Notation
The following notation system is used in the modeling of the problem.
Sets:
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{I}\end{document} Set of systems, \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{I} = {1, \ldots , I}\end{document} , with index i.
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{J}\end{document} Set of subsystems per system. \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{J} = {1, \ldots , J}\end{document} , with index j.
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{J}{m}\end{document} Set of subsystems required to perform mission type m. \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{J}{m} \subseteq \mathcal{J}\end{document} .
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{K}{j}\end{document} Set of all components in subsystem j. \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{K}{j} = {1, \ldots , J_{j}}\end{document} , with index k.
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{K}^{\text{s}}{j}\end{document} Set of standard components in subsystem j. \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{K}^{\text{s}}{j} \subseteq \mathcal{K}_{j}\end{document} , with index k.
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\bar{\mathcal{K}}^{\text{s}}{j}\end{document} Set of sensor-monitored components in subsystem j. \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\bar{\mathcal{K}}^{s}{j}=\mathcal{K}{j} \setminus \mathcal{K}{j}^{s}\end{document} .
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{L}{ijk}\end{document} Set of maintenance levels available for component \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E{ijk}\end{document} ; \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{L}{ijk} = {1, \ldots , L{ijk}}\end{document} , with index l.
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{Q}\end{document} Set of repairpersons, \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{Q} = {1, \ldots , Q}\end{document} , with index q.
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{M}\end{document} Set of mission types, \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{M} = {1, \ldots , M}\end{document} , with index m.
Parameters:
INumber of systems within the fleet.
JNumber of subsystems per system.
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}J_{j}\end{document} Number of components in subsystem j.
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{ijk}\end{document} The \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}k\textsuperscript{th}\end{document} component in subsystem j of system i.
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}B_{ijk}\end{document} Age of component \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{ijk}\end{document} at the start of the break.
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}u_{ijk}\end{document} Status of \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{ijk}\end{document} at the start of the break.
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}L_{ijk}\end{document} Number of maintenance levels available for component \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{ijk}\end{document} .
DDuration of maintenance break.
QMaximum number of repair persons available.
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}c^{f}\end{document} Fixed cost of hiring/using a repairperson.
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}c^{v}\end{document} Variable cost rate of using a repairperson.
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}t^{p}{ijkl}\end{document} Time to carry out PM level l on component \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E{ijk}\end{document} .
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}t^{c}{ijkl}\end{document} Time to carry out CM level l on component \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E{ijk}\end{document} .
MNumber of mission types.
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}U_{m}\end{document} Length of mission type m.
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\rho _{m}\end{document} Penalty incurred for not completing mission type m.
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}{R}^{\text{min}}_{jm}\end{document} Required minimum reliability for subsystem j for mission type m.
Decision variables:
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\chi _{m}\end{document} Binary variable equal to 1 if mission type m is completed.
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\gamma _{q}\end{document} Binary variable equal to 1 if repair person q is utilized.
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}z_{im}\end{document} Binary variable equal to 1 if system i is assigned to mission type m.
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}x_{ijklq}\end{document} Binary variable equal to 1 if repairperson q performs maintenance level l on component \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{ijk}\end{document} .
Main working assumptions
- Components and systems are binary state, this assumption is appropriate for a wide range of systems and is commonly used in the literature [14, 16, 37].
- During the maintenance break the systems are assumed to be switched off and therefore not experiencing any degradation. This is reasonable and is commonly used [15, 33].
- Maintenance activities are allowed only during the break duration. This is consistent with the definition of the SMP [2, 26, 37].
- Maintenance and break durations are stochastic quantities with known probability distributions. This is reasonable and commonly used [9, 10, 38].
Problem description
The FSMP addressed in this work deals with the optimization of the selective maintenance planning, repairperson scheduling, as well as system to mission assignment. Although this problem is inspired by the maintenance scheduling challenges encountered in maintaining military aircraft fleets, it can easily be adapted to various heterogeneous fleet of assets performing mission-critical operations. Examples could include: i) a fleet of various size autonomous mobile robots [39] equipped with mission-specific subsystems or; ii) a heterogeneous fleet of delivery trucks running short or long routes with varying loading/unloading equipment requirements during the day and undergoing maintenance at night, and; iii) a fleet of military aircraft that undergo maintenance between reconnaissance or humanitarian support missions requiring different equipment performance.
Specifically, it is assumed that a fleet of systems has just entered a maintenance break, providing the opportunity to perform necessary maintenance actions to get the fleet ready for a set of various upcoming missions. During this break, the goal is to determine the assignment of systems to mission types, the set of components within each system that should be maintained, and the required number of repairpersons needed to carry out the selected maintenance plan, the assignment of maintenance tasks to repairpersons. The objective is to minimize the grand total cost, which includes penalties for unselected missions as well as fixed and variable costs related to selected maintenance actions. Maintenance plays an important role in ensuring systems are mission-ready by addressing reliability requirements. A system can only be assigned to a mission provided that its reliability meets the required threshold. Each mission type has unique operational demands, reliability requirements, minimum system assignment thresholds, and associated penalties. However, due to resource limitations, such as the availability of repairpersons and time constraints, only a subset of all desirable maintenance actions can be performed. In the FSMP addressed, maintenance and break durations are stochastic, following known probability distributions. The uncertainty in maintenance task and break durations impacts planning and assignment decisions by introducing the risk of potentially not completing the required maintenance actions during the break and thus delaying mission readiness. Effective maintenance planning and the overall assignment decisions must indeed account for this uncertainty to ensure cost-effective and robust solutions.
Each mission type \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}m \in \mathcal{M}\end{document} is characterized by a profile captured by the vector \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}(\rho {m}, U{m}, \zeta {m}, \mathcal{J}{m}, \mathcal{R}{m})\end{document} , where \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\rho {m}\end{document} is the penalty incurred for not completing mission m, \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}U{m}\end{document} is the mission duration, and \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\zeta {m}\end{document} is the minimum number of systems required to successfully operate mission m. The parameter set \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{J}{m}\end{document} corresponds to the subset of subsystems or functions that are required to perform mission m. For example, in the context of a military aircraft fleet, a logistics support mission would likely not require the functionality of weapon systems, whereas a combat mission certainly would. Consequently, a system assigned to a logistics support mission would not require maintenance on those subsystems. Finally, the parameter \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{R}{m}\end{document} defines the set of minimum reliability requirements for all subsystems in the subset \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{J}{m}\end{document} . To perform the different mission types \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}m \in \mathcal{M}\end{document} , a fleet of I identical multi-component MOS is available. Each MOS i is comprised of J subsystems in series, and each subsystem is composed of \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}J{j}\end{document} statistically independent components \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{ijk}\end{document} in parallel (i.e., subsystem j functions if at least 1 out of its \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}J_{j}\end{document} components is functioning). At the start of the current maintenance break, each component \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{ijk}\end{document} is characterized by its current effective age \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}B_{ijk}\end{document} , while its status is determined by the binary state variable \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}u_{ijk}\end{document} defined as follows:
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$ {u_{ijk}}= \textstyle\begin{cases} 1, & \text{if }E_{ijk}\text{ is functioning at the start of the} \\ &\text{break}, \\ 0, & \text{otherwise.} \end{cases} $$\end{document}The components within each system are divided into two sets based on the availability of reliability information: standard components, defined by the set \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{K}^{\text{s}}{j}\end{document} , have lifetime distributions following known probability distributions allowing their reliability to be computed analytically. Sensor-monitored components, defined by the set \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\bar{\mathcal{K}}^{\text{s}}{j}\end{document} are equipped with sensors that provide real-time condition monitoring data (e.g., vibration, temperature, wear). These data are used to predict the RUL of each component. Data-driven approaches relying on deep neural networks (DNNs) have shown exceptional performance in predicting the probability of failure of such components [32]. In the present work, a DNN with MCD is used to estimate the probability that these sensor-monitored components will successfully operate the assigned mission. The hybrid (dual) model developed here addresses a real practical consideration: it is uneconomical and unpractical to have sensors on every single component of a multicomponent system. Some important/critical components will be equipped with sensors for real time condition monitoring, while the reliability of standard (non-critical) ones will simply be characterized/estimated using historical field data via lifetime probability distributions. The proposed dual/hybrid methodology is more general and can reduce to the two extreme cases: i) all components have sensors (pure predictive maintenance or data-driven) or ii) no component has sensor (pure lifetimes probability distributions based reliability assessment or analytical). A detailed description of the reliability computation for both standard and sensor-monitored components is provided in the next subsection.
Reliability computation
System i can only be assigned to mission m if and only if each subsystem j meets the required subsystem reliability threshold \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}{R}^{\text{min}}{jm}\end{document} for that mission type. For each mission m, specific reliability requirements \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{R}{m}\end{document} exist for different functions or subsystems \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{J}{m}\end{document} . To compute the reliability of each subsystem \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}j\in \mathcal{J}{m}\end{document} , the reliability of each component \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{ijk}\end{document} must first be determined. If \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{ijk}\end{document} is a standard component with known lifetime distributions and effective age \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}B_{ijk}\end{document} , then its reliability \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{R}{ijk}(t|{B{ijk}})\end{document} is computed as:
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$ \mathcal{R}_{ijk}(t|{B_{ijk}})= \frac{\mathcal{R}_{ijk}({B_{ijk}} + t)}{\mathcal{R}_{ijk}({B_{ijk}})}, $$\end{document}where \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{R}{ijk}(\cdot )\end{document} is the unconditional reliability function of component \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E{ijk}\end{document} . Without loss of generality, in this paper, the lifetime of a standard component \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{ijk}\end{document} is assumed to be governed by a Weibull distribution, with \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\beta _{ijk}\end{document} and \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\eta _{ijk}\end{document} being its respective shape and scale parameters. Therefore, its unconditional reliability function is:
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$ \mathcal{R}_{ijk}(t)=\exp \left [-\left (\frac{t}{\eta _{ijk}}\right )^{ \beta _{ijk}} \right ]. $$\end{document}For sensor-monitored components, a common set of S sensors is available to monitor components’ degradations, where new sensor measurements are recorded after the completion of each operating cycle. For a given component \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{ijk}\end{document} that has operated for \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}B_{ijk}\end{document} cycles, the overall degradation measurement can be stored in a matrix \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathbf{G}_{ijk}\end{document} as follows:
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$ \mathbf{G}_{ijk} = \begin{bmatrix} \pmb{g}^{1} \\ \pmb{g}^{2} \\ \vdots \\ \pmb{g}^{{B_{ijk}}} \end{bmatrix} = \begin{bmatrix} g^{1}_{1} &g^{1}_{2} & \ldots &g^{1}_{S} \\ g^{2}_{1} &g^{2}_{2} & \ldots &g^{2}_{S} \\ \vdots &\vdots & & \vdots \\ g^{{B_{ijk}}}_{1} &g^{{B_{ijk}}}_{2} & \ldots &g^{{B_{ijk}}}_{S} \end{bmatrix} , $$\end{document}where \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\pmb{g}^{c}\end{document} is a vector of all sensor measurements collected during cycle c ( \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}c=1,\dots ,{B_{ijk}}\end{document} ). To compute the reliability of such components, a DNN with MCD is employed. The DNN, denoted as \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}f(\cdot ; \theta )\end{document} , is parameterized by weights and biases θ and aims to learn a mapping between current sensor measurements and the true RUL. To learn this mapping, the network is trained on historical degradation data, where the true RUL values are known. Let the training set be defined as \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}{(\mathbf{G}{\lambda}, RUL{\lambda})}{\lambda =1}^{\Lambda}\end{document} , where \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathbf{G}{\lambda}\end{document} is a matrix of historical sensor recordings, and \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}RUL_{\lambda}\end{document} is the true remaining lifetime. The training process involves identifying the set of learnable weights and biases θ that minimize the following loss function:
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$ \min _{\theta} \quad \Xi = \frac{1}{\Lambda} \sum _{\lambda =1}^{ \Lambda}\left (RUL_{\lambda} - f(\mathbf{G}_{\lambda}; \theta ) \right )^{2} + \mu \cdot \Big|\Big|\theta \Big|\Big|^{2}_{2}. $$\end{document}The loss function being minimized is the mean squared error with \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}L_{2}\end{document} regularization, a typical loss function used for regression tasks. Once trained, the model is capable of predicting the RUL of components currently in operation. Let \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{ijk}\end{document} be a sensor-monitored component with sensor measurements \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathbf{G}{ijk}\end{document} , the predicted RUL can then be obtained as \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\widehat{RUL}{ijk}=f(\mathbf{G}{ijk}; \theta )\end{document} . If the trained model were capable of predicting the RUL with no error, then the probability of component \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E{ijk}\end{document} completing the upcoming mission would be known with certainty. However, in practice, developing a perfect RUL predictive model is not possible due to model limitations, noisy data, and other factors. To account for uncertainty in the prediction, MCD is implemented. Typically, dropout is a regularization technique that is applied only during the training phase of a neural network. MCD is an approach that extends dropout to the inference phase [40]. During inference, rather than using the trained model to make a single prediction, MCD involves performing Ω forward passes with dropout applied each time. This produces Ω different RUL predictions. Let \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\left (\widehat{\text{RUL}}^{1}{ijk}, \ldots , \widehat{\text{RUL}}^{ \Omega}{ijk}\right )\end{document} represent the Ω RUL predictions obtained for component \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{ijk}\end{document} . Accordingly, the reliability of component \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{ijk}\end{document} after completing \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}{B_{ijk}}\end{document} cycles is computed as follows:
where is the indicator function taking a value of 1 if the condition in the brackets is true, and 0 otherwise. Given the individual component reliabilities, the reliability of subsystem \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}j \in \mathcal{J}\end{document} of system \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}i \in \mathcal{I}\end{document} is given by (6) as its configuration is parallel:
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned} \mathcal{R}_{ij}(t)={}&1- \prod _{k \in \mathcal{K}^{\text{s}}_{j}} \left (1- \mathcal{R}_{ijk}\left (t|{B_{ijk}}\right ) \right ) \\ &{} \cdot \prod _{k \in \bar{\mathcal{K}}^{\text{s}}_{j}} \left (1- \mathcal{R}^{G}_{ijk}\left (t|\mathbf{G}_{ijk}\right ) \right ). \end{aligned}$$ \end{document}Imperfect maintenance model
During the intermission break, each failed component \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{ijk}\end{document} can be subjected to a CM of level \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}l \in {0, \ldots , L_{ijk} }\end{document} . The lowest maintenance level \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}l = 0\end{document} corresponds to the “Do-nothing” case, while the highest level \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}l = L_{ijk}\end{document} corresponds to the perfect corrective repair or “as-good-as-new” (AGAN) case, and level \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}l = 1\end{document} corresponds to minimal repair, which brings the component to an “as-bad-as-old” (ABAO) condition. Intermediate values of l ( \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}1 < l < L_{ijk}\end{document} ) represent imperfect maintenance (IM) actions that bring the component back to a condition between AGAN and ABAO. Similarly, a working component can be subjected to a PM of level \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}l \in {0, \ldots , L_{ijk} }\end{document} . PM levels \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}l = 0\end{document} and \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}l = L_{ijk}\end{document} correspond to the “Do-nothing” and perfect preventive maintenance (AGAN) cases, respectively. Following the work by [16], there is no minimal repair equivalent for a PM, and the maintenance option \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}l = 1\end{document} is assumed to be equivalent to the “Do-nothing” case. Intermediate values of l \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}(0 < l < L_{ijk})\end{document} represent imperfect maintenance actions.
For standard components, the age reduction approach is used to model the impact of maintenance actions [41]. When component \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{ijk}\end{document} is subjected to maintenance level l, its age \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}{B_{ijk}}\end{document} is reduced by an age reduction factor, thereby increasing its reliability. The age reduction coefficients are defined separately for corrective and preventive maintenance actions as follows:
- Corrective maintenance: the age reduction factor is \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mu ^{c}{ijkl}\end{document} , where \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}0 \leq \mu ^{c}{ijkl} \leq 1\end{document} , and the maintenance action requires a duration of \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}t^{c}_{ijkl}\end{document} .
- Preventive maintenance: the age reduction factor is \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mu ^{p}{ijkl}\end{document} , where \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}0 \leq \mu ^{p}{ijkl} \leq 1\end{document} , and the maintenance action requires a duration of \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}t^{p}_{ijkl}\end{document} .
The time required to perform maintenance level l on standard component \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{ijk}\end{document} can be formulated as:
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$ t_{ijkl}=t^{p}_{ijkl} \cdot {u_{ijk}} + t^{c}_{ijkl} \cdot \left (1 - {u_{ijk}}\right ), $$\end{document}and the reliability \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}r_{ijklm}\end{document} of component \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{ijk}\end{document} after maintenance, given that maintenance level l has been selected and system i has been assigned to mission m, is defined as:
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$ r_{ijklm} = \mathcal{R}_{ijk}(U_{m}|{A_{ijk}}) \cdot v_{ijkl}, $$\end{document}where is the status of component \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{ijk}\end{document} at the end of the break, and \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}{A_{ijk}}\end{document} is the effective age of \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{ijk}\end{document} at the end of the break. This quantity is defined as:
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$ {A_{ijk}} = {B_{ijk}} \, \left ({ u_{ijk}} \cdot \mu ^{p}_{ijkl} + (1-{u_{ijk}}) \cdot \mu ^{c}_{ijkl} \right ). $$\end{document}By analogy to the age reduction factor used to model IM, proposed by [41], we propose an RUL increase factor \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\Delta {ijkl}\end{document} to model IM for sensor-monitored components. When the sensor-monitored component \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E{ijk}\end{document} is subjected to maintenance level l, its RUL is extended by \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\Delta {ijkl}\end{document} . The factor \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\Delta {ijkl}\end{document} increases with respect to the maintenance levels. Thus, the reliability \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}r{ijklm}\end{document} of component \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E{ijk}\end{document} , given that maintenance level l has been selected and system i has been assigned to mission m, is defined as:
In practice, a dataset containing sensor data across multiple operating cycles of a machine undergoing maintenance can be used with machine learning techniques to predict how those actions influence RUL. By analyzing historical sensor trends before and after maintenance, such models can provide data-driven estimates of \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\Delta {ijkl}\end{document} . The time required to perform maintenance level l on sensor-monitored component \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E{ijk}\end{document} also follows Equation (7).
The deterministic formulation
The fleet of systems under study is assumed to have just completed a mission and is entering a maintenance break. Due to limited resources, maintenance actions can be performed only on a subset of components across all systems. The goal of the proposed optimization model is to jointly select the components to be maintained, determine the maintenance levels for the selected components, assign repairpersons to maintenance tasks, and assign systems to mission types so that the total expected cost \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{Z}\end{document} is minimized. The resulting optimization problem is formulated as a mixed-integer nonlinear program (MINLP) as follows:
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned} \min \,\,\mathcal{Z} = &\sum _{m \in \mathcal{M}} \rho _{m} \left (1 - \chi _{m}\right ) \\ &{}+ \sum _{i \in \mathcal{I}} \sum _{j \in \mathcal{J}} \sum _{k \in \mathcal{K}_{j}}\sum _{l \in \mathcal{L}_{ijk}} \sum _{q \in \mathcal{Q}} c^{v} \, t_{ijkl} \, x_{ijklq}+ \sum _{q \in \mathcal{Q}}c^{f}\,\gamma _{q} \end{aligned}$$ \end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned} \text{s.t.}\,\,&\sum _{m \in \mathcal{M}}z_{im} \leq 1, \qquad \forall i \in \mathcal{I}, \end{aligned}$$ \end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned} & \sum _{i \in \mathcal{I}}z_{im} \geq \zeta _{m} \, \chi _{m}, \qquad \forall m \in \mathcal{M}, \end{aligned}$$ \end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned} & \sum _{l\in \mathcal{L}_{ijk}}\sum _{q \in \mathcal{Q}} x_{ijklq} = 1, \qquad \forall i \in \mathcal{I}, \forall j \in \mathcal{J}, \forall k \in \mathcal{K}_{j}, \end{aligned}$$ \end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned} &1 - \prod _{k \in \mathcal{K}_{j}} \left (1 - \sum _{l \in \mathcal{L}_{ijk}}\sum _{q \in \mathcal{Q}}x_{ijklq} \,r_{ijklm} \right ) \\ &\quad \geq R^{\text{min}}_{jm} \cdot z_{im}, \quad \forall i, \forall j, \forall m, \end{aligned}$$ \end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned} &\sum _{i \in \mathcal{I}}\sum _{j \in \mathcal{J}}\sum _{k \in \mathcal{K}_{j}}\sum _{l \in \mathcal{L}_{ijk}\setminus \{0\}} x_{ijklq} \, t_{ijkl} \leq D \, \gamma _{q}, \quad \forall q \in \mathcal{Q}, \end{aligned}$$ \end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned} & \chi _{m} \in \{0, 1 \}, \end{aligned}$$ \end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned} & \gamma _{q} \in \{0, 1 \}, \end{aligned}$$ \end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned} & z_{im} \in \{0, 1 \}, \end{aligned}$$ \end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned} & x_{ijklq} \in \{0, 1 \}. \end{aligned}$$ \end{document}The objective function (11a) minimizes the total expected cost. The first term is the cost associated with unselected mission types, and the second and third terms account for the cost of performing the selected maintenance actions and the fixed cost of hiring the necessary repairpersons. Constraints (11b) ensure that each system is assigned to no more than one mission type, while Constraints (11c) enforce the requirement that a minimum number of systems must be assigned to a mission type to be successful and thus not incur the penalty cost. Constraints (11d) enforce a single maintenance action to be selected for each component. Constraints (11e) ensure that if a system is assigned to a mission type, the reliability of the required subsystems must exceed a defined threshold (i.e., required minimum reliability). Finally, Constraints (11f) guarantee that the selected maintenance actions can be performed within the break duration, and Constraints (11g)-(11j) are binary variable restrictions.
The above formulation is challenging to solve optimally due to the nonlinear reliability expression in Constraints (11e). However, these Constraints (11e) can equivalently be reformulated as linear constraints as shown through the following transformation:
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned} &\prod _{k \in \mathcal{K}_{j}} \left (1 - \sum _{l \in \mathcal{L}_{ijk}} \sum _{q \in \mathcal{Q}}x_{ijklq} \cdot r_{ijklm} \right ) \\ &\quad \leq 1 - R^{ \text{min}}_{jm} \cdot z_{im},\quad {\forall i \in \mathcal{I}, \forall m \in \mathcal{M}, \forall j \in \mathcal{J}_{m}}, \\ &\ln \left (\prod _{k \in \mathcal{K}_{j}} \left (1 - \sum _{l \in \mathcal{L}_{ijk}}\sum _{q \in \mathcal{Q}}x_{ijklq} \cdot r_{ijklm} \right )\right ) \\ &\quad \leq \ln \left (1 - R^{\text{min}}_{jm} \cdot z_{im} \right ),\quad {\forall i \in \mathcal{I}, \forall m \in \mathcal{M}, \forall j \in \mathcal{J}_{m}}, \\ &\sum _{k \in \mathcal{K}_{j}}\ln \left (1 - \sum _{l \in \mathcal{L}_{ijk}} \sum _{q \in \mathcal{Q}}x_{ijklq} \cdot r_{ijklm} \right ) \\ &\quad \leq \ln \left (1 - R^{\text{min}}_{jm} \cdot z_{im}\right ),\quad {\forall i \in \mathcal{I}, \forall m \in \mathcal{M}, \forall j \in \mathcal{J}_{m}}. \end{aligned}$$ \end{document}Due to the binary nature of the decision variables \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}x_{ijklq}\end{document} and \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}z_{im}\end{document} , they can be factored out of the logarithm expressions, leading to the linearization of Constraints (11e) as:
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned} &\sum _{k \in \mathcal{K}_{j}}\sum _{l \in \mathcal{L}_{ijk}}\sum _{q \in \mathcal{Q}}\ln \left (1 - r_{ijklm} \right ) \cdot x_{ijklq} \\ &\quad \leq \ln \left (1 - R^{\text{min}}_{jm}\right )\cdot z_{im}, \quad \forall i, \forall j, \forall m. \end{aligned}$$ \end{document}The resulting mixed-integer linear program (MILP) comprises \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}M + Q + I \times Q + Q \times \sum _{i \in \mathcal{I}} \sum {j \in \mathcal{J}}\sum {k \in \mathcal{J}{j}}L{ijk}\end{document} binary decision variables and a set of constraints that increase quickly with the number of components, systems, and mission types. Although the model is computationally demanding, its ability to solve practical-sized problems to optimality is demonstrated in the numerical experiments. In the following section, the methods used to deal with uncertainties in maintenance and break durations are presented and fully discussed.
Handling uncertainty in maintenance and break durations
Variability and uncertainty in maintenance durations are inevitable due to factors such as the operating environment, the complexity of repair tasks, and the skill level of repair personnel. Furthermore, in many applications, it would be difficult to precisely forecast the exact duration of the maintenance break. For example, in military aircraft fleets, the unexpected start of the next mission/battle introduces uncertainties in the available maintenance time window [9]. Ignoring these potential uncertainties can result in a lack of readiness and exposure to risk. Rather than treating maintenance and break durations as deterministic parameters, in the present work, these durations are considered as stochastic quantities with known probability distributions. Thus, in the following, the time required to perform maintenance level l on component \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{ijk}\end{document} is represented by the random variable \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\tilde{t}{ijkl}\end{document} with \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathbb{E}[\tilde{t}{ijkl}]\end{document} as its expectation, while the uncertain break duration is represented by the random variable D̃. The stochastic version of the proposed FSMP is then formulated using chance constraints as follows:
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned} \min \,\, \mathcal{Z} = {}&\sum _{m \in \mathcal{M}} \rho _{m} \left (1 - \chi _{m}\right ) \\ &{}+ \sum _{i \in \mathcal{I}} \sum _{j \in \mathcal{J}} \sum _{k \in \mathcal{K}_{j}}\sum _{l \in \mathcal{L}_{j}} \sum _{q \in \mathcal{Q}}c^{v}\, \mathbb{E}[\tilde{t}_{ijkl}] \, x_{ijklq} \\ &{} + \sum _{q \in \mathcal{Q}} c^{f} \,\gamma _{q} \end{aligned}$$ \end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned} \;\text{s.t.} \quad &\mathbb{P}\left (\sum _{i \in \mathcal{I}}\sum _{j \in \mathcal{J}}\sum _{k \in \mathcal{K}_{j}}\sum _{l \in \mathcal{L}_{j} \setminus \{0\}} \tilde{t}_{ijkl}\,x_{ijklq} \leq \tilde{D} \, \gamma _{q} \right ) \\ &\quad \geq 1 - \alpha , \quad \forall q \in \mathcal{Q}, \\ &\text{(11b)}-\text{(11d)}, \\ &\text{(12)}, \\ &\text{(11g)} - \text{(11j)}. \end{aligned}$$ \end{document}The chance-constrained formulation above ensures that the total maintenance time for each repairperson \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}q \in \mathcal{Q}\end{document} does not exceed the allocated break duration with a specified confidence level \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}1-\alpha \end{document} . Parameter α is the confidence level specified as the risk measure to model the decision makers’ risk preferences regarding the randomness of the maintenance time and the break duration. The remaining constraints are those previously described.
Let \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathbf{x_{q}}\end{document} denote the vector of all maintenance actions assigned to repairperson q. For such a vector, we associate the random variable \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}Y_{q}\end{document} defined as:
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$ Y_{q}:=\sum _{i \in \mathcal{I}}\sum _{j \in \mathcal{J}}\sum _{k \in \mathcal{K}_{j}}\sum _{l \in \mathcal{L}_{ijk} \setminus \{0\}} \tilde{t}_{ijkl}\,x_{ijklq} - \tilde{D}. $$\end{document}If furthermore we let \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}F_{Y_{q}}(y) = \mathbb{P}\left (Y_{q} \leq y\right )\end{document} be the cumulative distribution function (CDF) of \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}Y_{q}\end{document} , it follows that the maintenance task assignment \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathbf{x_{q}}\end{document} to repairperson q satisfies the chance constraints of (13b) if \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}F_{Y_{q}}(0) \geq 1 - \alpha \end{document} . However, \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}Y_{q}\end{document} is the sum of several random variables, making the computation of \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}F_{Y_{q}}(y)\end{document} intractable analytically due to the required multi-dimensional integral convolutions. To address this challenge, two well-known approximation techniques are employed: Sample Average Approximation (SAA) and Conditional Value-at-Risk (CVaR). These techniques are discussed in detail in the following subsections.
Sample average approximation
To convert the probabilistic constraints (13b) into deterministic and tractable forms, SAA is considered first. This technique approximates the original constraint using a finite set of N sampled scenarios as follows:
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned}& \frac{1}{N}\sum _{n=1}^{N}\mathbb{I}\left (\sum _{i \in \mathcal{I}} \sum _{j \in \mathcal{J}}\sum _{k \in \mathcal{K}_{j}}\sum _{l \in \mathcal{L}_{ijk} \setminus \{0\}}t_{ijkl, n} \, x_{ijklq} - D_{n} \, \gamma _{q} \right ) \\& \quad \leq \alpha , \quad \forall q \in \mathcal{Q}, \end{aligned}$$ \end{document}where \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}t_{ijkl,n}\end{document} and \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}D_{n}\end{document} are the maintenance action duration and break duration of the \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}n^{\text{th}}\end{document} realization of the random parameters \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\tilde{t}{ijkl}\end{document} and D̃. \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathbb{I}(\cdot )\end{document} is the indicator function, which equals 1 if the expression in the brackets is positive, and 0 otherwise. By introducing binary variables \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}y{q,n}\end{document} to indicate whether the constraint is violated for each realization n, the SAA constraints can be enforced as:
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned} &\sum _{i \in \mathcal{I}}\sum _{j \in \mathcal{J}}\sum _{k \in \mathcal{K}_{j}}\sum _{l \in \mathcal{L}_{ijk} \setminus \{0\}}t_{ijkl, n} \, x_{ijklq} - D_{n} \, \gamma _{q} \\ &{} \quad \leq M \, y_{q,n}, \quad \forall q \in \mathcal{Q}, \forall n \in \{1, \ldots , N\}, \end{aligned}$$ \end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned} &\sum _{n=1}^{N}y_{q,n} \leq \alpha \, N, \quad \forall q \in \mathcal{Q}, \end{aligned}$$ \end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned} &y_{q,n} \in \{0, 1\}. \end{aligned}$$ \end{document}The SAA approach is straightforward to implement but requires a significant number of samples N to provide good approximations. Another limitation of this method is the large number of additional binary variables it introduces. Specifically, the formulation requires \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}Q \times N\end{document} additional binary variables.
Conditional value-at-risk approximation
An alternative to the SAA method is the CVaR approximation, which provides a conservative reformulation of the chance constraints (13b). This method indeed transforms the probabilistic constraints into deterministic approximations. When the number of realizations N of the random parameters is finite, the probabilistic constraints (13b) are approximated using the CVaR constraints:
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned}& \inf _{t_{q}}\Biggl\{ t_{q} + \alpha ^{-1}\sum _{n=1}^{N}p_{n} \left [ \sum _{i \in \mathcal{I}}\sum _{j \in \mathcal{J}}\sum _{k \in \mathcal{K}_{j}}\sum _{l \in \mathcal{L}_{ijk} \setminus \{0\}} t_{ijkl, n}\,x_{ijklq} \right. \\& \quad {}-\left. D_{n} \, \gamma _{q} - t_{q} \right ]_{+} \Biggl\} \leq 0, \quad \forall q \in \mathcal{Q}, \end{aligned}$$ \end{document}where \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}[\nu ]{+}=\max (\nu ,0)\end{document} denotes the positive part of a real number ν, and \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}t{ijkl, n}\end{document} and \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}D_{n}\end{document} are the nth samples of \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}t_{ijkl}\end{document} and D respectively, and \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}p_{n}\end{document} denotes the probability of observing sample n. By introducing auxiliary variables \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}u_{q,n}\end{document} and \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}t_{q}\end{document} , the constraints can be reformulated as:
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned} &t_{q} + \alpha ^{-1} \sum _{n=1}^{N}p_{n} \, u_{q,n} \leq 0, \qquad \forall q \in \mathcal{Q}, \end{aligned}$$ \end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned} &u_{q,n} \geq \sum _{i \in \mathcal{I}}\sum _{j \in \mathcal{J}_{i}} \sum _{k \in \mathcal{K}_{j}}\sum _{l \in \mathcal{L}_{ijk} \setminus \{0\}}t_{ijkl, n}\,x_{ijklq} \\ &\hphantom{u_{q,n} \geq}{} - D_{n} \, \gamma _{q} - t_{q}, \quad \forall q \in \mathcal{Q}, \forall n \in \{1, \ldots , N\}, \end{aligned}$$ \end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned} &u_{q,n} \geq 0, \qquad \forall q \in \mathcal{Q}, \forall n \in \{1, \ldots , N\}. \end{aligned}$$ \end{document}Regarding the derivation of the CVaR constraints, the reader can find more details in [42]. The CVaR approximation is more conservative than SAA; however, it offers computational efficiency as only continuous variables are introduced.
Comparison of SAA and CVaR
This section aims to provide a comparison between the SAA and CVaR approximation methods and demonstrate the real-world applicability of the proposed optimization model. For this purpose, a fleet composed of \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}I=2\end{document} identical coal transportation systems that supply a boiler in a plant is considered. This example is inspired by the case study considered in multiple SMP papers [9, 13, 43]. Figure 1 displays the RBD of each system in this fleet, comprising \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}J=5\end{document} subsystems: two conveyors, two feeders, and a stacker-reclaimer. All components are standard and Table 1 gives their corresponding lifetime distribution parameters as well as their respective initial ages and states. A list of four potential maintenance levels is available, including do-nothing, minimal repair (for failed components only), imperfect maintenance, and perfect repair (i.e., renewal). All maintenance durations are assumed to follow a truncated normal distribution, where the respective mean μ, standard deviation σ, minimum a and maximum b values are reported in Table 2. The break duration D follows a uniform distribution in the range \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}[10, 20]\end{document} , i.e., \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}D \sim \mathcal{U}(10, 20) \end{document} , and Table 3 provides a detailed description of the different mission types considered, including the penalty for unassigned mission, duration, and other relevant input data. Two ( \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}Q=2\end{document} ) repairpersons are available to carry out the maintenance tasks, and similar to [13], the fixed and variable costs are set to \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}c^{f}=$25\end{document} and \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}c^{v}=$8.5\end{document} , respectively. The proposed optimization model is implemented in Python and solved using Gurobi 11.0. A time limit of 600 seconds is set for each instance solved. Figure 1. Real-world coal transportation systemTable 1Component data for standard componentsInitial age \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}(\varphi {ijk})\end{document} Initial state \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}(u{ijk})\end{document} Weibull shape parameter \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}(\beta {ijk})\end{document} Weibull scale parameter \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}(\eta {ijk})\end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E{1,1,1}\end{document} 3511.5150 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E{1,1,2}\end{document} 2402.4228 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{1,1,3}\end{document} 4501.6168 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{1,2,1}\end{document} 3502.6240 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{1,2,2}\end{document} 2811.8168 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{1,3,1}\end{document} 3612.4204 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{1,3,2}\end{document} 4402.5156 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{1,3,3}\end{document} 2802.0168 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{1,4,1}\end{document} 3811.2156 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{1,4,2}\end{document} 1501.4210 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{1,5,1}\end{document} 3002.8240 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{1,5,2}\end{document} 2211.5210 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{1,5,3}\end{document} 3812.4180 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{1,5,4}\end{document} 3502.2270 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{2,1,1}\end{document} 3501.5150 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{2,1,2}\end{document} 3812.4228 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{2,1,3}\end{document} 2211.6168 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{2,2,1}\end{document} 3012.6240 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{2,2,2}\end{document} 1501.8168 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{2,3,1}\end{document} 3812.4204 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{2,3,2}\end{document} 2802.5156 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{2,3,3}\end{document} 4402.0168 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{2,4,1}\end{document} 3611.2156 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{2,4,2}\end{document} 2811.4210 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{2,5,1}\end{document} 3502.8240 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{2,5,2}\end{document} 4501.5210 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{2,5,3}\end{document} 2402.4180 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{2,5,4}\end{document} 3512.2270Table 2Maintenance duration parameters for different components and maintenance levels \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{ijk}\end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}t^{p}{ij2}\end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}t^{p}{ij3}\end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}t^{c}{ij1}\end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}t^{c}{ij2}\end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}t^{c}{ij3}\end{document} μσabμσabμσabμσabμσa**b \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E{i11}\end{document} 1.330.270.662.652.640.531.325.291.110.220.562.222.440.491.224.894.60.922.39.2 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{i12}\end{document} 1.310.260.652.612.650.531.335.31.020.20.512.042.090.421.044.186.31.263.1512.59 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{i13}\end{document} 1.260.250.632.512.40.481.24.791.110.220.562.232.10.421.054.25.311.062.6510.62 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{i21}\end{document} 1.70.340.853.412.770.551.385.540.870.170.51.732.80.561.45.65.551.112.7711.1 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{i22}\end{document} 1.40.280.72.792.440.491.224.891.180.240.592.352.80.561.45.64.760.952.389.53 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{i31}\end{document} 1.70.340.853.42.710.541.365.430.940.190.51.892.780.561.395.556.211.243.112.41 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{i32}\end{document} 1.230.250.612.452.50.51.255.00.890.180.51.782.10.421.054.26.571.313.2813.14 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{i33}\end{document} 1.560.310.783.122.810.561.45.611.160.230.582.332.290.461.144.574.890.982.459.79 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{i41}\end{document} 1.710.340.853.422.150.431.084.30.890.180.51.782.040.411.024.085.321.062.6610.64 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{i42}\end{document} 1.350.270.672.72.60.521.35.20.940.190.51.882.030.411.014.064.991.02.499.98 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{i51}\end{document} 1.250.250.632.512.440.491.224.891.190.240.592.382.180.441.094.365.021.02.5110.03 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{i52}\end{document} 1.690.340.843.382.190.441.094.371.10.220.552.192.940.591.475.886.531.313.2713.07 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{i53}\end{document} 1.710.340.863.422.530.511.275.060.960.190.51.922.970.591.495.945.051.012.5310.1 \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}E_{i54}\end{document} 1.370.270.692.752.620.521.315.250.950.190.51.892.070.411.044.146.171.233.0812.34Table 3Mission profilesm \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\rho {m} ($)\end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}U{m}\end{document} (hours) \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\zeta {m}\end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{J}{m}\end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{R}_{m}\end{document} 11000501{1,2,3,4,5}{0.995,0.990,0.995,0.970,0.999}2500501{1,2,3,4,5}{0.995,0.990,0.995,0.970,0.999}
To perform the comparative analysis, we solve the problem for various service levels \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}1-\alpha \end{document} and different sample sizes N of the random parameters. For each combination of \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}1-\alpha \end{document} and N, the problem is solved 10 times using independently generated realizations of the random parameters. Table 4 provides the mean and standard deviation of the objective function value over the 10 runs for the SAA and CVaR approximation methods. From these results, it can be observed that for larger values of \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}1 - \alpha \end{document} , both SAA and CVaR tend to produce similar mean objective values, with SAA performing slightly better. For smaller values of \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}1-\alpha \end{document} , SAA tends to result in significantly lower mean objective function values. This is primarily because SAA assigns a system to each mission type, in contrast to the more conservative CVaR approach, which typically assigns only one system. Of course, assigning both systems requires more maintenance tasks to be performed, leading to an increase in the maintenance time per repairperson. Since the CVaR approach is inherently more conservative, it avoids such assignments to ensure that the solution remains feasible in terms of the required service level \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}1-\alpha \end{document} . Although SAA performs better in terms of the value of the objective function, especially for smaller values of \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}1-\alpha \end{document} , it is important to highlight the resulting disparity in terms of computational time and solution variability. Across all instances solved, the CVaR approximation method results in far faster solution time; this is notable for larger sample sizes and larger values of \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}1-\alpha \end{document} . However, the SAA approximation method introduces many additional binary decision variables, leading then to long solution times. Additionally, SAA tends to result in greater variability in objective value across the different runs, particularly at smaller sample sizes and higher confidence levels. This is evidenced by the larger standard deviations reported in Table 4. In contrast, the CVaR method provides more stable solutions with low variance. Another limitation of the SAA approach can be observed in Fig. 2, which displays the true completion probability for varying values of \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}1-\alpha \end{document} and sample sizes N. After solving each instance, the assigned maintenance actions were used to compute the true probability that each repairperson completes their tasks within the break duration. This was estimated using Monte Carlo simulation based on the known distributions of maintenance and break durations. For each of the 10 instances solved at each combination of \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}1-\alpha \end{document} and N, Fig. 2 reports the minimum completion probability across the two repairpersons. As shown, the SAA approach results in violations of the required service level for several of the instances solved, with true completion probabilities falling below the specified threshold \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}1-\alpha \end{document} . In contrast, the CVaR approach consistently produces solutions that meet or exceed the target. Figure 2. Constraint satisfaction probability for varying values of αTable 4. Comparison of SAA and CVaR1 − α**NSAACVaR \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mu _{\text{obj}}\end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\sigma _{\text{obj}}\end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mu _{\text{CPUt}}\end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\sigma _{\text{CPUt}}\end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mu _{\text{obj}}\end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\sigma _{\text{obj}}\end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mu _{\text{CPUt}}\end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\sigma _{\text{CPUt}}\end{document} 0.5050341.240.003.721.53646.420.000.180.06100341.240.007.736.40615.9091.550.510.38200341.240.0027.1819.50646.420.000.990.660.6050341.240.003.482.00648.927.500.220.09100341.240.005.252.61646.420.000.430.16200341.240.0019.8920.11646.420.000.900.290.7050402.28122.0714.2728.01658.9212.500.240.13100371.7691.5565.37178.26653.9211.460.380.18200524.35149.50431.72256.14648.927.500.950.330.8050618.4092.6916.6612.02668.927.500.320.1400616.0691.61461.21208.63668.927.500.490.18200646.420.00600.000.00668.927.501.220.530.9050666.4210.005.582.68671.420.000.230.14100663.9211.4632.6133.41671.420.000.430.22200668.927.50552.60142.19671.420.000.900.47
The overall results of this experiment demonstrate the pros and cons of both the SAA and CVaR approximation methods. Although the SAA method often yields solutions with lower objective function values, it can lead to violations of the probabilistic constraints. Additionally, it takes significant time to solve, especially as the number of random samples increases. In contrast, the CVaR approximation method consistently produces feasible solutions that often exceed the required service level, with lower solution variability and significantly faster computational time. However, due to the inherent conservatism of the CVaR approximation, it may lead to overly cautious maintenance plans that result in fewer missions being selected and completed, even in scenarios where successful completion would have been possible. Due to the significant improvement in computational time and solution variability, the CVaR approximation method is used for the case study presented in the following section.
Case study: military aircraft fleet maintenance
This section illustrates how the proposed optimization model can deal with joint maintenance, repairpersons assignment decisions, and assignment of systems to mission types for a fleet composed of \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}I=4\end{document} military aircraft. According to the reliability block diagram in Fig. 3, each aircraft is comprised of four key subsystems: propulsion (engines), sensors and communication, and combat systems (targeting, offensive weapons). It is assumed that the engines are sensor-monitored while all other components are standard with known lifetime distributions. The NASA C-MAPSS (Commercial Modular Aero-Propulsion System Simulation) dataset is used to train our DNN for the engines. This dataset provides degradation trajectories under 4 different operational conditions and fault modes for turbofan engines. Because these different sets consider different operational conditions and fault modes, they cannot be jointly studied. In this paper, the first set called FD001 which considers a single fault mode is selected. This set provides run-to-failure information for 100 engines and includes 3 operational settings and 21 sensor values for each operating cycle. The detailed description of the 21 sensor variables can be found in [44]. In total, 20,631 cycles are available for training. Each engine starts with a different degree of initial wear and manufacturing variation. The operational settings and sensor values are provided for every cycle up until engine failure. A second test set is also provided that includes truncated time series of various lengths before failure for 100 engines and actual RULs. Figure 3. Aircraft RBD considered for the case study
The engine data from FD001 is randomly assigned to aircraft engines to simulate a diverse range of initial health conditions. The engine assignment, RUL point prediction, and predicted reliability can be found in Table A.1 of the Appendix. In this Appendix, Table A.2 gives the parameters of the lifetime distributions of the standard components. Let us recall that, for the sensor-monitored engines, a single maintenance action is available, which restores the engines to the as-good-as-new state. For standard components, a list of four potential maintenance levels is available, including do-nothing, minimal repair (for failed components only), imperfect maintenance, and perfect repair. All maintenance durations are assumed to follow a Gamma distribution, where the respective shape and scale parameters \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\xi _{sh}\end{document} and \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\xi {sc}\end{document} are reported in Table A.3 of the Appendix. Table 5 provides a detailed description of the different mission types considered, including the penalty for unassigned mission, duration, and other relevant input data. It is important to note that operational data for sensor-monitored components is recorded in cycles, while the lifetimes of standard components are measured in operating hours. Accordingly, Table 5 provides the mission durations in both operating hours and cycles. Table 5. Mission profilesmMission Description \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\rho {m} ($)\end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}U{m}\end{document} (hours/cycles) \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\zeta {m}\end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{J}{m}\end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mathcal{R}{m}\end{document} 1Combat80,0002 / 102{1,2,3,4,5}{0.995,0.990,0.990,0.950,0.950}2Reconnaissance60,0005 / 251{1,2,3}{0.995,0.990,0.950}3Logistics Support40,0008 / 401{1,2,3}{0.995,0.990,0.900}
The following subsections will first present the results of the DNN with MCD for reliability prediction, followed by multiple experiments to demonstrate the impact of stochastic durations and the risk confidence level parameter α on the maintenance plan and the overall assignment decisions.
Performance analysis of DNN with MCD
In this work, the deep learning architecture implemented for RUL prediction is a recurrent neural network (RNN), specifically a bi-directional long short-term memory (Bi-LSTM) network. LSTMs are a type of RNN designed to overcome the vanishing and exploding gradient problem frequently encountered in standard RNNs. Bi-LSTMs comprise two LSTM cells and have demonstrated exceptional performance in predicting remaining useful life [33, 36]. The main advantage of using Bi-LSTMs instead of standard RNNs is that they can learn the temporal relationships in the forward and backward directions simultaneously. For detailed information on the inner workings of the LSTM cells, the reader is referred to [45]. Before training the Bi-LSTM for RUL prediction, the NASA C-MAPSS FD001 dataset was pre-processed and cleaned according to the following steps:
- Data labeling. A column was added to both the training and testing sets that specified the RUL after completion of each cycle. This column provides the labels that will be used to train and test the models.
- Input data scaling. It is widely acknowledged that scaling input data for neural networks leads to more efficient training. The min-max normalization approach was used to scale the input of the DL algorithm to be in the range \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}[0,1]\end{document} . The min-max normalization of data is performed according to the following formula:
where \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}x^{i}{j}\end{document} denotes the ith data measure of the jth sensor, \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\check{x}^{i}{j}\end{document} is the scaled value of \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}x^{i}{j}\end{document} , \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}x{j}^{max}\end{document} and \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}x_{j}^{min}\end{document} are the respective maximum and minimum raw measurements from the jth sensor.
- Data reformatting. In preparation for fitting the Bi-LSTM, the training and testing data was reformatted into 3-dimensional tensors of the form ( \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}N_{s}\end{document} , \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}N_{ts}\end{document} , \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}N_{f}\end{document} ). \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}N_{s}\end{document} refers to the number of samples, \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}N_{ts}\end{document} denotes the time sequence dimension, and \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}N_{f}\end{document} refers to the number of selected features.
For the Bi-LSTM, the hyperparameters proposed in [33] were adopted. The following three commonly used metrics are exploited to evaluate the proposed Bi-LSTM performance for point prediction: root mean squared error (RMSE), scoring function (SC), and accuracy (AC). Smaller values of RMSE and SC, along with higher values of AC are preferred. Assuming a total of Λ test examples with Ω predictions for each test example \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\lambda \in {1, \ldots \Lambda }\end{document} , we define \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}d_{\lambda} = \left (\frac{1}{\Omega}\sum {\omega =1}^{\Omega} \widehat{\text{RUL}}{\lambda \omega}\right ) - \text{RUL}_{\lambda}\end{document} as the difference between the average prediction and the target. The mathematical expression corresponding to each of the above valuation metrics is:
\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned}& \text{RMSE} = \sqrt{ \frac{\sum _{\lambda =1}^{\Lambda}\left (d_{\lambda} \right )^{2}}{\Lambda}}, \end{aligned}$$ \end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned}& \text{SC} = \sum _{\lambda =1}^{\Lambda}s_{\lambda}, \quad \text{where} \quad s_{\lambda}= \textstyle\begin{cases} \exp{\left (\frac{-d_{\lambda}}{13} \right )} - 1, & \text{if $d_{\lambda} \leq 0$}, \\ \exp{\left (\frac{d_{\lambda}}{10} \right )} - 1, & \text{if $d_{\lambda} \geq 0$}, \end{cases}\displaystyle \end{aligned}$$ \end{document} \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document} $$\begin{aligned}& \text{AC} = \frac{100}{\Lambda}\sum _{\lambda =1}^{\Lambda}a_{\lambda}, \quad \text{where} \\& \quad a_{\lambda}= \textstyle\begin{cases} 1, & \text{if $d_{\lambda} \in [-13, 10 ]$}, \\ 0, & \text{if $d_{\lambda} \notin [-13, 10 ]$}. \end{cases}\displaystyle \end{aligned}$$ \end{document}The same early stopping, learning rate decay strategy, and piecewise target function proposed in [33] are also implemented. Furthermore, the impact of the dropout rate on prediction accuracy and the predicted RUL distribution is analyzed. For varying dropout rates, Table 6 displays the results obtained across multiple point prediction metrics. Interestingly, models with different dropout rates demonstrate comparable performance across the different metrics considered. However, a dropout rate of 0.2 results in the worst performance across the three metrics considered for the full dataset, likely due to overfitting to the training data. For all dropout values, it can be seen that the accuracy of the models improves significantly as the number of remaining operating cycles approaches 0. This is an important observation which indicates that the models become more accurate as the engine approaches failure. All models achieve an RMSE below 5 when considering monitoring points of 25 remaining cycles, in contrast to a significantly higher RMSE of approximately 18 when considering monitoring points of 75 remaining cycles. Table 6. Impact of dropout rate on prediction accuracyDropoutFull datasetMonitoring point with 75 cycles leftMonitoring point with 50 cycles leftMonitoring point with 25 cycles leftRMSESCACRMSEACRMSEACRMSEAC0.213.10310.2468.0020.1453.496.1287.893.46100.000.311.71246.1576.0018.2158.147.0090.913.85100.000.411.56278.0769.0018.7653.497.2790.913.46100.000.511.74254.5372.0018.4753.496.7087.874.23100.00
MCD is utilized in this work to estimate the uncertainty of RUL predictions. By performing multiple stochastic forward passes through the model during inference, MCD generates a distribution of predictions. Figure 4 displays the mean of the MCD predictions (blue line) and 95% confidence interval (shaded region) for test engine 24, and for varying dropout rates. As one may observe, a dropout rate of 0.2 produces narrower confidence intervals, indicating reduced uncertainty, whereas a dropout rate of 0.5 results in broader intervals. This trade-off highlights the impact of the dropout rate on uncertainty quantification, with higher dropout rates offering more robust confidence estimates. Figure 5 further emphasizes the impact of the dropout rate on the width of the predicted RUL distribution. This figure displays the kernel distribution for test engine 90 considering multiple monitoring points for varying dropout values. Since MCD is used to compute the probability of successfully completing the upcoming mission, higher dropout rates may lead to unnecessary maintenance tasks due to the wider predicted RUL distribution. In contrast, lower dropout rates may increase the risk of component failure as the predicted RUL distribution becomes narrow. Figure 4RUL interval estimate for test engine 24 for varying dropout ratesFigure 5RUL distribution plots for test engine 90 for varying dropout rates
To clearly demonstrate the impact of the dropout rate on maintenance decisions, Fig. 6 displays the number of early replacements and system failures for the engines in the CMAPSS FD001 test set. These metrics are computed as follows:
- If the predicted engine reliability is lower than the target reliability, but the engine survives the upcoming mission of duration U (i.e., the true RUL is greater than U), this is counted as an early replacement.
- If the predicted engine reliability is higher than the target reliability, but the engine fails during the upcoming mission of duration U (i.e., the true RUL is less than U), this is counted as a failure of the engine. Figure 6. Impact of reliability threshold and dropout rate on early replacements and system failures for different mission lengths
The above metrics are computed for all cycles completed across all 100 test engines and the results obtained are plotted in Fig. 6. These results highlight the trade-off between early replacements and system failures, as well as the improved prediction performance for shorter mission durations. Generally, higher dropout values result in fewer system failures, but an increase in early replacements. In the case of exceptionally high reliability targets (99%), dropout values above 0.2 completely eliminate system failures. As expected, increasing the reliability requirement leads to fewer system failures but also more early replacements. Therefore, decision-makers have to choose an appropriate balance based on risk tolerance and cost constraints. Selecting high dropout values and high reliability requirements will result in an aggressive plan that likely leads to very few failures with high maintenance costs. In contrast, riskier maintenance strategies (i.e., low dropout rate and/or low reliability thresholds) will likely result in reduced maintenance costs but increased mission failure probability. For the remaining numerical experiments, a dropout rate of 0.3 is selected as it provides the fewest early replacements while ensuring no system failures.
Impact of stochastic parameters
This set of experiments aims to demonstrate the importance of considering the stochastic nature of maintenance and break durations. In these experiments, the break duration is modeled as a truncated normal distribution with lower and upper bounds of 50 and 350 hours, respectively, a standard deviation of 50 hours, and a mean of 200 hours. There are \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}Q=4\end{document} available repairpersons to carry out the selected maintenance levels, with the respective fixed and variable costs of \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}c^{f}=$2500\end{document} and \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}c^{v}=$50\end{document} . Finally, the required probability of completing the selected maintenance actions is set to \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}1-\alpha =90%\end{document} . The proposed optimization model is implemented in Python and solved using Gurobi 11.0. A time limit of 600 seconds is set for each instance solved.
To illustrate the impact of the mean duration of the break on maintenance and assignment decisions, three mean break durations are considered: \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mu = 150\end{document} , \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mu =200\end{document} , and \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\mu = 250\end{document} hours. The probability density functions (pdf) of the three break durations are shown in Fig. 7. The number of realizations of the random maintenance and break durations generated is set to \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}N=500\end{document} , and the optimization model is solved 10 times for each instance to account for variability in the random variable realizations. For each value of the break mean duration, Fig. 8 displays the mean and standard deviation of the penalty cost, variable cost, and fixed cost. The results obtained show that increasing the mean break duration leads to a reduction in penalty cost, as more missions can be initiated. Indeed, a longer break duration allows for additional maintenance tasks while ensuring that the constraint satisfaction probability is met. The observed increase in average variable cost results from additional maintenance required to ensure the readiness of more aircraft, enabling the initiation of more missions. Figure 9 displays the true constraint satisfaction probability for the four available repairpersons. This probability is calculated by generating a large number of realizations for the durations of both selected maintenance actions and the break. The constraint satisfaction probability is then computed as the ratio of the number of scenarios with no constraint violations to the total number of realizations generated. It can be seen that for all mean break durations, no repairperson violates the required constraint satisfaction probability of \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}1-\alpha =0.9\end{document} . Figure 7. Probability density functions of the three break durations consideredFigure 8Mean and standard deviation of penalty cost, variable cost, and fixed cost for varying values of mean break durationFigure 9Constraint satisfaction probability for varying values of mean break duration
To highlight the importance of accounting for the stochastic nature of maintenance and break durations, the solutions obtained using only the average values for these durations are reported in Table 7 for different mean break durations. This table gives the penalty, variable cost, fixed cost, the number of missions initiated \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}(M^{\ast})\end{document} , the number of repairpersons hired and utilized \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}(Q^{\ast})\end{document} , the probability of true constraint satisfaction for multiple repairpersons, the average overtime and the computational time. The average overtime represents the expected additional time required to complete the selected maintenance tasks. Considering only average values results in overly optimistic solutions that have low probabilities of being completed within the stochastic break duration. In some cases, the probability of completing the assigned maintenance tasks is around or even below 50%. It is also important to highlight the significant increase in average overtime when considering only the mean values of maintenance and break durations. In the context of a military aircraft fleet during wartime, requiring substantial additional time to complete maintenance tasks could delay critical operations and put lives at risk. Table 7. Comparison of Deterministic and Stochastic Solutions. Mean and standard deviation (in brackets) reported for CVaR approachPenalty ( × 10^3^)Var. Cost ( × 10^3^)Fixed Cost ( × 10^3^) \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\end{document}\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\end{document}$ Constraint Satisfaction Probability (%)Avg. Overtime (hr)CPU Time (s)q = 1q = 2q = 3q = 4μ = 150Determ.022.57.53.03.050.753.349.6–19.790.1CVaR48(16)13.5(1.3)10.0(0.0)2.0(0.0)4.0(0.0)96.9(1.1)96.2(1.7)96.3(1.0)96.7(1.2)0.55(0.16)19.7(34.7)μ = 200Determ.022.57.53.03.060.079.096.5–15.170.2CVaR36(12)14.9(2.5)7.8(0.8)2.1(0.3)3.1(0.3)97.8(0.9)97.7(1.4)97.5(1.0)99.5(1.5)0.62(0.23)107.4(129.6)μ = 250Determ.022.57.53.02.056.376.7––17.680.1CVaR0(0)22.5(0)7.8(0.8)3.0(0.0)3.0(0.0)97.0(1.0)97.0(0.6)97.1(0.8)–0.76(0.14)13.9(2.3)
Finally, the impact of the standard deviation of the break duration on maintenance plan, system-to-mission assignment, and the objective function value is studied using a truncated normal distribution with a mean of 150 hours. The standard deviation is varied from 10 to 70 hours and the results are displayed in Fig. 10. This figure illustrates how the probability of selecting each mission type changes over the 10 optimization runs as the standard deviation of the break increases. The results are reported for two values of \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\rho _{1}\end{document} , the penalty assigned to the combat mission. The bar chart represents the probability of initiating combat, reconnaissance, and logistics missions, while the line plot shows the corresponding objective function value. Generally, a decreasing trend in the objective function value can be seen as the break duration standard deviation increases. A higher standard deviation of the break duration limits the number of maintenance actions each repairperson can perform while ensuring the desired constraint satisfaction probability. Consequently, more repairpersons must be hired, increasing fixed costs, or fewer mission types can be selected. Another interesting observation is the shift in mission type selection as the standard deviation increases. For \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\rho _{1} = $80{,}000\end{document} , the probability of selecting the combat mission decreases as the standard deviation increases. Although the combat mission carries the highest penalty, it requires two aircraft for successful completion and also requires the functionality of the weapons subsystem. As uncertainty increases, the model favors selecting the reconnaissance and logistics support missions, whose combined penalty exceeds that of the combat mission alone while requiring the same number of operational systems. However, when \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}\rho _{1} = $120{,}000\end{document} , the model tends to select the combat mission, as its penalty surpasses the combined penalty of the other two mission types. Figure 10. Impact of standard deviation of break duration on mission selection probability and objective function value
Impact of constraint satisfaction probability
This final experiment aims to explore the impact of the constraint satisfaction probability \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}1-\alpha \end{document} . To do so, a truncated normal distribution with mean 200 hours, standard deviation of 50 hours, and lower and upper bounds of 50 and 350 hours is once again considered. In this set of experiments, \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}Q=8\end{document} repairpersons are available to carry out the selected maintenance actions, while all other input data remain unchanged. The problem is solved for varying values of α and the results are displayed in Fig. 11. For all values of α, all mission types are selected; however, more repairpersons are required to perform the necessary maintenance tasks for smaller values of α. This is because smaller values of α imply a higher required probability of constraint satisfaction, meaning fewer maintenance tasks can be assigned to each repairperson. Additionally, as the constraint satisfaction probability is relaxed (i.e., α increases), expected overtime increases. This represents an important trade-off that decision-makers must consider. To further illustrate the impact of α on maintenance assignment, Fig. 12 shows the average maintenance time per repairperson, along with the minimum and maximum values, for varying α. It is evident that smaller values of α lead to lower average maintenance times per repairperson. Figure 11. Average variable cost, fixed cost, and overtime for varying values of αFigure 12. Average maintenance durations for varying values of α
Conclusions and future research directions
This paper presented a novel mathematical model to jointly optimize fleet maintenance planning, repairperson scheduling, and system-to-mission assignment to minimize the total expected cost incurred. The fleet consists of identical multi-component systems, which undergo maintenance during the break duration to ensure readiness for a set of unique upcoming missions. The resulting decision problem involves: (i) selecting the components within each system to maintain and their corresponding maintenance levels, ensuring reliability requirements are met, (ii) assigning maintenance tasks to repairpersons, and (iii) allocating systems to mission types. The systems include both standard and sensor-monitored components. Standard components follow known lifetime distributions, allowing reliability values to be computed analytically. Sensor-monitored components are continuously tracked by sensors, and a data-driven approach leveraging a deep neural network and Monte Carlo Dropout was used for accurate reliability prediction. To address the complex optimization problem while accounting for uncertainties in maintenance and break durations, a chance-constrained optimization model was proposed. The problem was then reformulated as a large-scale mixed-integer linear program (MILP) using the conditional value-at-risk (CVaR) approximation. Extensive numerical experiments validated the proposed joint model and highlighted the importance of accounting for the inherent uncertainties associated with maintenance and break durations.
This research opens numerous promising avenues for future investigation. The proposed chance-constrained optimization model tends to result in conservative maintenance plans, where repairpersons are likely to complete their assigned maintenance actions well within the break duration. This is particularly true when a high constraint satisfaction probability is required. While this ensures feasibility, it may lead to the hiring of more repairpersons than necessary. To address this, it would be valuable to explore two-stage stochastic optimization models, or other sequential decision methods. However, developing a two-stage optimization model would require the development of efficient solution methods. For extremely difficult and large instances, well-known operations research (OR) techniques such as column generation, branch-and-price schemes, and Benders Decomposition can be used [20, 33]. Finally, the application of various data-driven methods for remaining useful life (RUL) prediction and uncertainty quantification is of great interest. The authors are also exploring domain adaptability, where an RUL predictive model trained in one domain is applied to a system in a different domain using techniques such as transfer learning. This is a crucial research area, as it is not common in many organizations to have a large amount of labeled run-to-failure data.
