# Multi-agent system for the reactive fleet maintenance support planning of a fleet of mobile cyber-physical systems

John William Mbuli, Tarik Chargui, Damien Trentesaux, Abdelghani Bekrar, Thierry Dailly

<figure><img src="image_1.png" /></figure>

## ► To cite this version:

John William Mbuli, Tarik Chargui, Damien Trentesaux, Abdelghani Bekrar, Thierry Dailly. Multi-agent system for the reactive fleet maintenance support planning of a fleet of mobile cyber-physical systems. IET Cyber-Physical Systems: Theory & Applications, 2020, 5 (4), pp.376-387. 10.1049/iet-cps.2019.0063. hal-03425038

HAL Id: hal-03425038

https://uphf.hal.science/hal-03425038

Submitted on 21 Apr 2022

HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d'enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

<figure><img src="image_2.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
Research Article

# Multi-agent system for the reactive fleet maintenance support planning of a fleet of mobile cyber-physical systems

John Mbuli<fnref n="1" />,<fnref n="2" />✉, Tarik Chargui<fnref n="1" />, Damien Trentesaux<fnref n="1" />, Abdelghani Bekrar<fnref n="1" />, Thierry Dailly<fnref n="2" />

ISSN 2398-3396
Received on 3rd October 2019
Revised 29th August 2020
Accepted on 21st September 2020
E-First on 21st October 2020
doi: 10.1049/iet-cps.2019.0063
www.ietdl.org

**Abstract:** Improving the availability and reliability of a fleet of mobile cyber-physical systems as well as the ability to adapt the maintenance planning decisions when facing unexpected events at the fleet level is a major stake faced by the manufacturers and the operators. In the context of this study, the authors propose a reactive multi-agent system model for the fleet maintenance planning of mobile cyber-physical systems. For that purpose, the ANEMONA multi-agent design methodology is used. In this methodology, the agents are modelled and then their organisational and interaction views are described. Numerical experiments are carried out in static and dynamic contexts. In a static context, the proposed multi-agent system is compared with a mathematical programming model to validate the effectiveness of the former in satisfying the fleet's availability and reliability expectations. In a dynamic context, simulated perturbations are used to illustrate the reactivity of the proposed multi-agent system. Lastly, an application to rail transport for the maintenance of a fleet of trains at Bombardier Transportation France is proposed. For that purpose, the proposed multi-agent system is integrated in the model layer of a decision support system named 'MainFleet' which is currently under development.

## 1 Introduction

The transportation sector, including logistics, translates to important societal, economic and environmental stakes [1]. Several aspects that complicate the managing of these stakes characterise this sector. The most important of these aspects is related to the complexity of the transportation systems themselves, being trains, cars, planes, ships etc. These complex systems compose the fleets of systems and they must be managed throughout their lifecycles. These transportation systems can therefore be characterised as mobile cyber-physical systems (CPSs) [2, 3].

Mobile CPSs focus on the mobility of the cyber and physical components by relying on the awareness of the state and position of the devices in the physical world [4]. This is achieved by a continuous and distributed sensing of data in the physical world [4, 5]. Therefore, unlike stationary CPSs which focus on large machines and sensors and whose objective is often to use cyber elements to control the physical systems, mobile CPSs have much more data resources which allows the physical systems to be interconnected with more data [6]. A detailed explanation of the characteristics of traditional CPSs and mobile CPSs are well described in [4].

In this paper, we present transportation systems as mobile CPSs in their use phase with a specific focus on their maintenance at the fleet level. A reactive multi-agent system (MAS) model for the fleet maintenance planning of these systems is proposed to improve the fleet's availability and reliability as well as to provide the ability to adapt the maintenance planning decisions when facing unexpected events or perturbations. For that purpose, the ANEMONA MAS design methodology is used. Numerical experiments are carried out in static and dynamic contexts. In a static context, the proposed MAS model is compared with a mixed-integer linear programming (MILP) model to validate the effectiveness of the former in satisfying the fleet's availability and reliability expectations. In a dynamic context, simulated perturbations are used to illustrate the reactivity of the proposed MAS model. Finally, an application to train transportation for the maintenance of a fleet of trains at Bombardier transportation France is presented whereby the proposed MAS is integrated in the

model layer of a decision support system (DSS) named 'MainFleet'.

The remaining part of this work is therefore organised as follows: Section 2 will explore the literature review on the fleet maintenance planning. Section 3 will specify the proposed reactive fleet maintenance support planning (FMSP). In Section 4, the numerical implementations and the simulations of the proposed model will be carried out in addition to the implementation of the proposed reactive FMSP system in the rail transport industry. Lastly, Section 5 will conclude the work and give future perspectives.

## 2 Literature review

Fleet maintenance is not a new concept [7] and it has recently regained a lot of attention. From the existing literature works, fleet maintenance has been treated as a specific function of the 'more global' fleet management function [8]. The global maintenance process of a fleet is composed of the following phases according to [9] maintenance management, maintenance support planning, maintenance preparation, maintenance execution, maintenance assessment and maintenance improvement.

This research work deals with the FMSP phase [9]. This phase seeks to establish the maintenance planning of the fleet, to optimise fleet's availability and reliability, to manage the maintenance resources as well as to establish decision support. A literature review on the FMSP was carried out based on two complementary points of views: a functional view dealing with different aspects that authors deal with when addressing the FMSP on the one side and, using a transversal view, the different modelling approaches used when solving the FMSP decision-making problems on the other side. First, from the literature review, FMSP is functionally characterised by the following main elements:

* The different objectives contributing to the global optimisation of FMSP decision-making: This is relevant to the establishment of sustainable decisions (c.f. sustainable fleet [10]).

* The different resource-oriented constraints to be handled.

* The different maintenance policy decisions to adopt.

<footnote n="1">¹LAMIH UMR CNRS 8201 and SurferLab, Université Polytechnique Hauts-de-France, 59313 Valenciennes CEDEX 9, France</footnote>

<footnote n="2">²Bombardier Transport, 1 Place des Ateliers, 59154 Crespin, France</footnote>

<footnote>✉ E-mail: john.mbuli1@rail.bombardier.com</footnote>
<table><caption>**Table 1** Characterisation of the selected literature works on fleet maintenance planning: functional view</caption><thead><tr><th rowspan="2"></th><th colspan="5">Sustainability</th><th colspan="3">Environment</th><th colspan="3">Resources</th></tr><tr><th>Economic Availability</th><th>Reliability</th><th>Reactivity</th><th>Connectivity</th><th>Security</th><th>E-maintenance</th><th>Energy</th><th>Carbon footprint costs</th><th>Time, Manpower/Replacement parts</th><th>Skills availability</th><th>Decision-maker interactivity</th></tr></thead><tbody><tr><td>Kozanidis et al. [11]</td><td>*</td><td>*</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>*</td><td>*</td><td>—</td></tr><tr><td>Joo et al. [12]</td><td>—</td><td>*</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>*</td><td>*</td><td>*</td></tr><tr><td>Papakostas et al. [13]</td><td>—</td><td>*</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>*</td><td>*</td><td>—</td></tr><tr><td>Feng et al. [14]</td><td>—</td><td>*</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>*</td><td>—</td><td>*</td></tr><tr><td>Feng et al. [15]</td><td>*</td><td>*</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>*</td><td>—</td><td>*</td></tr><tr><td>Lin et al. [16]</td><td>*</td><td>*</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>*</td><td>—</td><td>*</td></tr><tr><td>Sheng et al. [17]</td><td>*</td><td>*</td><td>—</td><td>*</td><td>—</td><td>—</td><td>—</td><td>—</td><td>*</td><td>—</td><td>—</td></tr><tr><td>Yang et al. [18]</td><td>*</td><td>*</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>*</td><td>*</td><td>—</td></tr><tr><td>Verhagen et al. [19]</td><td>*</td><td>*</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>*</td><td>*</td><td>—</td></tr><tr><td>Wijk et al. [20]</td><td>*</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>*</td><td>—</td><td>—</td></tr><tr><td>Mehar et al. [21]</td><td>*</td><td>*</td><td>—</td><td>—</td><td>—</td><td>—</td><td>*</td><td>—</td><td>*</td><td>—</td><td>—</td></tr><tr><td>Vujanović et al. [22]</td><td>*</td><td>*</td><td>—</td><td>—</td><td>—</td><td>—</td><td>*</td><td>—</td><td>*</td><td>—</td><td>—</td></tr><tr><td>Kumar et al. [23]</td><td>—</td><td>*</td><td>*</td><td>—</td><td>—</td><td>—</td><td>*</td><td>—</td><td>*</td><td>—</td><td>—</td></tr><tr><td>Cai et al. [24]</td><td>—</td><td>*</td><td>*</td><td>—</td><td>—</td><td>—</td><td>*</td><td>—</td><td>*</td><td>—</td><td>*</td></tr><tr><td>Sénéchal et al. [25]</td><td>*</td><td>*</td><td>—</td><td>—</td><td>—</td><td>—</td><td>*</td><td>—</td><td>*</td><td>—</td><td>*</td></tr><tr><td>Sriram et al. [26]</td><td>*</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>*</td><td>—</td><td>—</td></tr><tr><td>our contribution</td><td>*</td><td>*</td><td>*</td><td>*</td><td>—</td><td>*</td><td>—</td><td>—</td><td>*</td><td>*</td><td>*</td></tr></tbody></table>

* Also, when discussed, the possible ways to address decision support to the human decision-maker.

A review table positioning the literature has been established using these different functional elements as an analysis framework, see Table 1 (this table also contains the positioning of our contribution, described later in this paper).

Secondly, from a decision-making point of view, one can identify several approaches to solve the decision-making process in FMSP. In [14], the authors identified four main methods as follows: Mathematical programming as approaches which ensure the search in a whole space and solve an optimisation problem to optimality with an exception of $P=NP$. Heuristic algorithms as approaches that are used to find solutions more quickly when classical methods are too slow or fail to find any optimal solution. System simulation in which the behaviour of the system is reproduced by using computer systems to simulate the outcomes of the mathematical model of the respective system. Finally, knowledge-based approach in which the knowledge on the maintenance planning activities is stored in the databases and the solutions to different maintenance scenarios can be provided based on the rules associated with the stored knowledge.

From their analysis of the literature, the authors have deduced that, even though most of the existing works focus on the fleet availability and reliability aspects, they do not consider the reactivity aspects of the FMSP, i.e. Is the system able to adapt maintenance planning decisions after it is subjected to perturbations? This limitation has fostered the authors to propose a reactive MAS model for the fleet maintenance planning of mobile CPSs. This model is specified in the following section.

# 3 Reactive CPSs FMSP system specifications

## 3.1 CPSs FMSP system modelling assumptions

A fleet with $f$ CPSs is considered. Maintenance operations are carried out in the maintenance depots. The number of maintenance depots is considered to be $d$ whereby usually $d \le f$, a condition which is quite common as discussed in [15]. The modelling assumptions are presented hereinafter.

* The fleet's CPSs have sensors embedded to their subsystems for raw data acquisition [27].

* The fleet's CPSs have embedded diagnostic and prognostic functions, models and algorithms enabling the establishment of the health status indicators (including time-stamped fault-detection events), and CBM (condition-based maintenance) indicators. Each CPS has a CBM gravity indicator: $g_{i\_CBM}$.

* The mean maintenance time to repair (MTTR) of a CPS in need of a maintenance intervention can be established.

* The list of fleet operations within a horizon is known and provided by the fleet operator. This creates a critical key performance indicator: the required fleet availability ($\epsilon$) which is the minimum number of CPSs required to accomplish planned fleet operations within a specified horizon.

* The maintenance depots have the knowledge of the availabilities of maintenance resources that are reduced here to the availability of the Maintenance teams (with the required maintenance skills), replacement parts and the maintenance infrastructure.

* Each CPS in the fleet is attached primarily to a specific maintenance depot (similar to the context of integrated support
stations in the military sector, see [28]) in which its maintenance needs will be taken care of.

* The CPSs in the fleet are organised into three groups depending on their health status similar to the model developed by Yang *et al.* in Table 1. The first group (group 1) contains the CPSs which do not require any maintenance interventions. The CPSs in group 2, require preventive measures from the information provided by the CBM indicators. The third group of CPSs (group 3), contains the CPSs which require corrective maintenance interventions. These CPSs cannot be deployed to fleet operations without undergoing the concerned corrective measures.

* The fleet availability level through another variable referred to as the fleet availability threshold, μ can be tracked. This availability threshold can help to verify whether the fleet's availability is low or high.

## 3.2 FMSP system objectives

Following the limits of the literature and assumptions posed in the previous subsection, the objectives of the reactive CPSs FMSP system proposed in this research work are expressed in terms of reactivity and effectiveness, as detailed in Table 2.

## 3.3 Parameters, notations and indexes

* *i*: Index of CPSs ($i = 1, ..., f$), with *f* number of CPSs in the fleet.

* *j*: Index of maintenance depots ($j = 1, ..., d$), with *d* number of maintenance depots.

* *k*: Index of manpower ($k = 1, ..., K$), with *K* number of maintenance teams based on manpower per depot.

* *t*: Index of time periods ($t = 1, ..., T$), with *T* being the time horizon.

* *h*: Index of depot hangars ($h = 1, ..., H$), with *H* number of maintenance hangars (tracks) per maintenance depot.

* *ε*: Minimum number of CPSs in a fleet required to complete the fleet operations (availability level imposed by the fleet operator).

* *μ*: Fleet availability threshold.

* MMTRi: Estimated mean maintenance time to recover of a CPS.

* $g_{i\_CBM}$: CBM gravity indicator of a subsystem in a CPS.

* *M*: A positive number.

Moreover, $\alpha_i$, $\beta_i$ and $\gamma_i$ are the initial states of the CPSs in the fleet such that:

$$ \alpha_i = \begin{cases} 1: & \text{if CPS} i \text{ does not require a maintenance} \\ & \text{(group 1)} \\ 0: & \text{otherwise} \end{cases} \qquad (1) $$

$$ \beta_i = \begin{cases} 1: & \text{if CPS } i \text{ requires CBM (group2)} \\ 0: & \text{otherwise} \end{cases} \qquad (2) $$

$$ \gamma_i = \begin{cases} 1: & \text{if CPS } i \text{ requires a corrective maintenance} \\ & \text{(group 3)} \\ 0: & \text{otherwise} \end{cases} \qquad (3) $$

<table><caption>**Table 2** Objectives of the FMSP system</caption><tr><td>effectiveness</td><td>fleet availability</td><td>it can be defined and measured in a number of ways. Sarma et al. [29], defined fleet availability as the average fraction of fleet entities fit for use at a given instance. According to Feng et al. [30], it is the minimum number of fleet's CPSs required to accomplish the planned fleet operations within a specified horizon. This work will consider the Feng et al. [30] definition.</td></tr><tr><td>reactivity</td><td>FMSP system reactivity</td><td>it is defined as the probability of no failure at all for a given number of entities in the respective fleet [31]. Efforts in finding ways to improving assets' reliability has been the focus of PHM community for the past few decades [32] by focusing on the practices such as the CBM [14]. In the context of this work, in order to fix the specifications for the fleet's reliability, increasing the fleet's reliability is equated to increasing CBM interventions on the fleet's CPSs because evidence from the literature works suggests that, CBM not only reduces the assets' operating costs but also increases their reliability [33].<br/>this is defined as the ability of the CPSs FMSP system to adapt or modify the CPSs' maintenance planning decisions according to the occurrences of unexpected events in real-time (e.g. delayed maintenance operation and/or unanticipated breakdown of an equipment of a CPS currently in use.) [34].</td></tr></table>

Initially from (1), $\alpha_i$ is a CPS which does not require any maintenance intervention. This CPS belongs to the group 1. From the (2), $\beta_i$ is a CPS which requires preventive actions due to the indications by the CBM indicators. This CPS belongs to the group 2. Equation (3) has $\gamma_i$, which is a CPS which requires corrective maintenance interventions. This CPS cannot carry out the planned fleet operations before these corrective measures. This CPS belongs to the group 3.

## 3.4 Proposed FMSP model

In this section, the authors propose a reactive multi-agent FMSP model based on the specifications from the previous section.

There are several design methodologies associated with MAS as discussed in [35]. Among them, ANEMONA [36] is one of the most complete methodologies as far as the MAS design in manufacturing is concerned [37]. ANEMONA design methodology uses views to describe MASs. Such views are agents' view, task view, organisation view and the interaction view. Using this approach, the proposed MAS is presented in the subsections that follow.

### 3.4.1 Agent and task/goal views: The proposed MAS has the following types of agents with their multiplicity:

* Cyber-physical fleet agents (CPA): Number (CPA) = *f*

* Supervision agent (SA): Single.

* Fleet supervisor agent (FSA): Single.

* Maintenance depot agents (MA): Number (MA) = *d*.

* Mission coordination agent (MCA): Single.

* Temporary information handling agent (TIA): Single.

In the following subsections, a detailed description of these agents and their roles is provided. The global workflow of these agents is illustrated in Fig. 1. This workflow is activated repeatedly at the beginning of each time horizon *T*, which corresponds to: $T_1, T_2, ..., T_N$. As presented in Fig. 1, the CPA's health evaluation is periodic, the proposed MAS model evaluates the CPA's health at the beginning of each horizon. Under the experimentation section, such horizon is considered to be 1 week.

*Cyber-physical fleet agents (CPAs):*

These are the only agents that mirror the individual CPSs in the fleet. These agents have sensing and processing capabilities. These agents:

* Send the variables acquired from the embedded sensors and/or computed from their previous missions to the SA, these include stamped fault detection events.

* Process these raw variables to establish systems' health indicators and send this information to the SA.

* Send CBM systems' indicators to the SA.

The behavior of these agents is such that, all the CPAs presenting abnormalities will want to be repaired as soon as possible.

*Maintenance depots agents (MA)*
<figure><img src="image_3.png" /><figcaption>**Fig. 1** Workflow of the MAS's agents within each time horizons</figcaption></figure>

<figure><img src="image_4.png" /><figcaption>**Fig. 2** Three phases of the proposed MAS model</figcaption></figure>

These agents mirror the maintenance depots in which the CPAs in the fleet are to be repaired. They send their availability to the SA. The availability of maintenance depots here is defined in terms of:

* Availability of the replacement parts.

* Availability of the maintenance teams.

* Availability of the maintenance hangars inside depots.

Moreover, these agents also have the capability of roughly estimating the introduced MMTR of each CPA. These agents want to repair as many CPAs in the fleet needing maintenance as possible within the horizon, depending on their availabilities.

### Mission coordination agent (MCA)

This agent defines the missions and operations of the fleet's CPAs. It determines the minimum number of CPAs required to complete fleet operations in the horizon (T). The behaviour of this agent is such that, it will want to maximise the number of mission-ready CPAs.

### Supervision agent (SA)

The SA oversees the computation and suggests maintenance decisions to the FSA. At the start of the horizon (T), the SA receives from the CPAs information on their states from the previous operations and the current states (through raw variables, health indicators and CBM indicators). Through this information, the SA is able to categorise whether a CPA requires no maintenance action, corrective action or CBM action. Using the information from the CPAs and from the MCA about the operations, the SA determines the maintenance priorities at the local depots and suggests the maintenance planning to the FSA whom in turn must validate these decisions.

### Fleet supervisor agent (FSA)

The FSA mirrors the human fleet supervisor in the simulation but is to be removed and replaced by him when connecting to a real fleet in the future using MainFleet. The role of the FSA is to validate the decisions suggested by the SA. If the FSA does not confirm these decisions, a reason to justify this action must be provided and the respective CPA will be handled by the TIA to be considered in the next horizon planning.

### Temporary information handling agent (TIA)

The TIA handles information for the next horizon planning (when the new workflow is activated, see Fig. 1). Such information is, for example, the decisions which have not been validated by the FSA and emergencies emitted by the CPAs.

### 3.4.2 Organisation view: The MAS model has three iterative phases, namely, categorising phase, selection phase and coordination and supervision phase. In each phase, one can identify different operations to be done as illustrated in Fig. 2.

#### Categorising phase

The objective of this phase is to assign each CPA to one among three groups, namely ‘no maintenance action’, ‘CBM action’ and ‘corrective maintenance action’ (Fig. 3 contains a graphical representation of this phase). For that purpose, the SA first sends a
<figure><img src="image_5.png" /><figcaption>**Fig. 3** Categorising phase by SA</figcaption></figure>

bid to CPAs requesting their health status and CPAs counter the bid by sending their states based on the previous operations. SA then uses rules in its knowledge base to group the CPAs into three main categories in accordance with their maintenance needs:

*   **No maintenance action needed group (group 1):** This is a group of CPAs in which no necessary maintenance is required. These CPAs are mission ready: the number of CPAs in this group is $f_1$.

*   **CBM actions group (group 2):** This is a group in which the CPAs do not require immediate actions but due to CBM indicators, they could profit from preventive maintenance actions before breakdowns occur in the future. These CPAs are available for the fleet operations: the number of CPAs in this group is $f_2$.

*   **Corrective maintenance actions group (group 3):** These are the CPAs which are not mission ready due to malfunctions in their systems. These CPAs cannot perform operations before a corrective maintenance is done: the number of CPAs in this group is $f_3$.

### Selection phase

The objective of this phase is to assign the maintenance operations priorities to CPAs. For that purpose, firstly, a fleet availability threshold ($\mu$) fixed by the FSA is defined. This threshold is used to evaluate if the fleet availability level is high or low as follows: $\mu$ is compared to the difference between the total number of mission ready CPAs and the number of CPAs needed to accomplish missions (($f_1 + f_2$) - $\epsilon$). If (($f_1 + f_2$) - $\epsilon$) > $\mu$, then the fleet availability is said to be high, else the fleet availability is said to be low.

This phase is divided in two steps, namely, selection process for corrective maintenance and the selection for CBM as follows:

#### Selection process for corrective maintenance

The SA considers the CPAs belonging to group 3. The SA verifies the fleet availability level using the fleet availability threshold ($\mu$) as illustrated in Fig. 4.

As previously introduced, the availability can be high or low:

*   **If the fleet availability is low (($f_1 + f_2$) - $\epsilon$) ≤ $\mu$:** The SA orders the CPAs according to their estimated MMTR. The CPAs with lower MMTR will have higher priorities than the CPAs with higher MMTR. Once the priority lists are established for each depot, the SA uses the table shown in Fig. 5 to perform a verification and planning operation (OP 3) for each maintenance depot. This table can be extended or adapted according to the application cases. Its role is to find placement for the maintenance of CPAs in the depots within the horizon whereby the resources such as the maintenance teams, the maintenance hangars and the replacement parts are available. If there is a possibility to schedule a maintenance for a CPA, SA suggests this planning to the FSA. If the maintenance of a particular CPA cannot be scheduled due to resource unavailability, then a CPA is handled by TIA as indicated in Fig. 1. These CPAs will have the highest priorities in the next horizon planning. The repaired CPAs are then put in group 1.

<figure><img src="image_6.png" /><figcaption>**Fig. 4** Selection process for corrective maintenance</figcaption></figure>

*   **If the availability is high (($f_1 + f_2$) - $\epsilon$) > $\mu$:** The SA orders the CPAs requiring maintenance according to their MMTR such that, the CPAs with heavy maintenance tasks (with high MMTR) have high priorities. Once the priority lists are established for each depot, the SA performs in the same manner as when the availability was low.

### Selection process for CBM

This process is depicted in Fig. 6. In this process, the SA takes the CPAs in group 2 and establishes a list of priorities based on the gravity of the CBM indicators ($g_{i\_CBM}$). This means, the longer the estimated time to the next breakdown, the less the gravity. Once the priority list is established, the SA uses the table shown in Fig. 5 to perform verification and planning operation (OP 3). In our approach, the planning (assignment of CBM tasks for the CPAs) is done in an optimised way, as such to avoid idleness of the maintenance team within the horizon. For example, a $CPA_i$ needing $x$ hours for maintenance will not necessarily be scheduled
<figure><img src="image_7.png" /><figcaption>**Fig. 5** Verification and scheduling</figcaption></figure>

<figure><img src="image_8.png" /><figcaption>**Fig. 6** Selection process for CBM</figcaption></figure>

as soon as possible but rather on the convenient time within the horizon where the resources are available for *x* hours.

### Coordination and supervision phase

This phase aims to ensure enough CPAs for the planned fleet operations while allocating maintenance tasks in an optimised way. For that purpose, and from the MCA, the SA gets the information on the planned fleet operations as well as the number of CPAs to carry out those operations (e) as shown in Fig. 7. Using the minimum number of CPAs needed for the fleet operations (e), as well as the number of CPAs in the categories created in categorising phase, the SA does the comparisons to find the best compromise between increasing the fleet availability and allocating maintenance tasks for CPAs in the fleet. The comparisons result in three heuristic rules as described in Table 3.

#### 3.4.3 Interaction view
The agents' communications and negotiations are modelled using the contract net protocol [38]. In this work, agents exhibit two types of interactions, namely, conflictual and cooperative interactions.

##### Conflicting interaction

This refers to the interaction between two agents which have conflicting goals. The conflicting situation is when the SA wants to repair the maximum number of CPAs in CBM group while the MCA wants to ensure that enough CPAs are available to carry out the planned fleet operations within a specified horizon. These goals are conflicting because repairing many CPAs in CBM group might leave insufficient CPAs for the fleet operations. Hence the SA will try to find the best counter bid to fulfil the missions and at the same time to repair the remaining CPAs in CBM group.

##### Cooperative interactions

Four cooperative interactions are identified in our case as follows:

* *Between the SA and CPAs:* With the objective of calculating the groups of CPAs as well as the maintenance priorities in the maintenance depots.

* *Between the SA and MCA:* To verify the number of CPAs needed to accomplish the missions planned within the given horizon (T).

* *Between the SA and MA:* To verify the depots availability. Between the SA and FSA: For confirmation of the proposed maintenance decisions.

## 4 Numerical implementations and simulations

In this section, the authors simulate the MAS model in static and dynamic environments as presented in the subsections that follow.

### 4.1 MAS in a static environment

In the context of this research work, a static environment signifies the absence of unplanned events as far as the FMSP is concerned (i.e. absence of perturbations) [39]. In order to validate the effectiveness of the MAS model as defined in this research work, an MILP model will be formulated, and its solutions will be compared to the MAS's solutions. This MILP model is formulated in the subsection that follows.

Four cooperative interactions are identified in our case as follows:
<figure><img src="image_9.png" /><figcaption>Fig. 7 Coordination and supervision phase</figcaption></figure>

<caption>**Table 3** Comparisons result in the three heuristic rules</caption>

* if the minimum number of CPAs needed to complete planned fleet operations is less than or equal to the number of CPAs that require no maintenance actions ($\epsilon \le f_1$) then:

* the CPAs in group 1 are deployed to carry out the fleet operations. Then the CPAs in group 3 are repaired with priorities depending on the fleet availability level (OP 2). When this is done, the CPAs in group 2 are repaired with priorities depending on the fleet availability level (OP 2)

* if the number of CPAs needed to complete the planned fleet operations ($\epsilon$) is greater than the number of CPAs requiring no actions but less than or equal to the sum of CPAs needing no maintenance action and the CPAs needing CBM actions ($f_1 < \epsilon \le f_1 + f_2$) then:

* all the CPAs in group 1 are deployed to carry out fleet operations. A part of CPAs in group 2 with low maintenance priorities is also deployed to complement the fleet operations. The CPAs in group 3 are repaired according to OP 2. Then the remaining part of the CPAs in group 2 (with high maintenance priorities are repaired) according to OP 2

* if the number of CPAs needed to complete planned fleet operations ($\epsilon$) is greater than the sum of the CPAs needing no actions and the CPAs needing CBM actions, but is less than or equal to the sum of the CPAs needing no action, the CPAs needing CBM actions and the repaired CPAs ($f_1 + f_2 < \epsilon \le f_1 + f_2 + \text{Repaired}$) then:

* the CPAs in groups 1 and 2 are deployed for fleet operations. In this case, the CPAs in group 1 will include the repaired CPAs. Then the CPAs in group 3 are repaired according to OP 2

* if the number of CPAs needed to complete planned fleet operations ($\epsilon$) is greater than the sum of the CPAs needing no action, the CPAs needing CBM actions and the repaired CPAs ($f_1 + f_2 + \text{Repaired} < \epsilon$) then:

* there is no solution. In such a situation, SA proposes alternative solutions such as delaying some scheduled operations while prioritising the maintenance of the CPAs in group 3 with low MTTR

**4.1.1 MILP model:** The aim of this model will be not only to get a formal reference of the problem, but also and mainly to validate the solutions reached by the MAS model in a static environment. The formulated MILP does not calculate the groups of CPSs in terms of their health status but rather supposes that these groups are given as an input to this model. These groups were calculated in the categorising phase (the first phase) of the MAS model. Thus, the MILP model validates the results obtained from the two last phases of the MAS model. Obviously, the objective of the MAS and the MILP is the same: Maximising the number of fleet CPS entities repaired in CBM (reliability) while ensuring that there are enough fleet entities to satisfy the missions defined within the horizon (availability). The details of the MILP are provided hereinafter, where decision variables are first presented, followed by the presentation of the objective function and the constraints to be respected.

### Decision variables

The following equations represent the decision variables in the MILP model:

$$x_{it} = \begin{cases} 1 & : \text{if CPS } i \text{ requires no maintenance at time } t \\ 0 & : \text{otherwise} \end{cases} \quad (4)$$

$$y_{it} = \begin{cases} 1 & : \text{if CPS } i \text{ is undergoing CBM at time } t \\ 0 & : \text{otherwise} \end{cases} \quad (5)$$

$$z_{it} = \begin{cases} 1 & : \text{if CPS } i \text{ is in corrective maintenance at time } t \\ 0 & : \text{otherwise} \end{cases} \quad (6)$$
$$v_{ijt} = \begin{cases} 1 & : \text{if CPS } i \text{ is in depot } j \text{ at time } t \text{ for CBM} \\ 0 & : \text{otherwise} \end{cases} \quad (7)$$

$$w_i = \begin{cases} 1 & : \text{if train } i \text{ is scheduled to undergo CBM} \\ 0 & : \text{otherwise} \end{cases}. \quad (8)$$

Equation (4) represents a Boolean variable in which a CPS in a fleet belongs to the group 1 (no maintenance required group). Equations (5) and (6) indicate CPSs undergoing CBM and corrective maintenance interventions, respectively. Equation (7) describes a CPS being in a certain maintenance depot for CBM or corrective maintenance action. Lastly, (8) describes a CPS scheduled to undergo CBM intervention in a certain time interval.

### Objective function

The objective function of the proposed MILP model is to maximise the CPSs undergoing CBM as follows:

$$\text{Maximise: } \sum_{i=1}^{f} w_i g_{i\_CBM} \quad (9)$$

### Constraints

The MILP model has the following set of constraints:

$$w_i \le \sum_{t=1}^{T} y_{it} \quad (\forall i = 1, \dots, f) \quad (10)$$

$$\sum_{i=1}^{f} w_i \le f_2 - \epsilon + f_1 \quad (\forall t = 1, \dots, T) \quad (11)$$

$$\sum_{i=1}^{f} x_{it} \ge \epsilon \quad (\forall t = 1, \dots, T) \quad (12)$$

$$x_{it} + y_{it} + z_{it} \le 1 \quad (\forall i = 1, \dots, f, \forall t = 1, \dots, T) \quad (13)$$

$$\sum_{t=1}^{T} x_{it} \le M(1 - \gamma_i) \quad (\forall i = 1, \dots, f) \quad (14)$$

$$\sum_{t=1}^{T} z_{it} \ge \text{MMTR}_i - M(1 - \gamma_i) \quad (\forall i = 1, \dots, f) \quad (15)$$

$$u - t + 1 \le \text{MMTR}_i + M(2 - (z_{it} + z_{iut})) \quad (\forall i = 1, \dots, f, \forall t, u = 1, \dots, T, u > t) \quad (16)$$

$$\sum_{t=1}^{T} y_{it} = \text{MMTR}_i w_i \quad (\forall i = 1, \dots, f) \quad (17)$$

$$\sum_{t=1}^{T} y_{it} \le M(1 - \alpha_i) \quad (\forall i = 1, \dots, f) \quad (18)$$

$$\sum_{t=1}^{T} y_{it} \le M(1 - \gamma_i) \quad (\forall i = 1, \dots, f) \quad (19)$$

$$u - t + 1 \le \text{MMTR}_i + M(2 - (y_{it} + y_{iut})) \quad (\forall i = 1, \dots, f, \forall t, u = 1, \dots, T, u > t) \quad (20)$$

$$y_{it} \beta_i S_{ik} \le F_{kt} Q_{kt} \quad (\forall i = 1, \dots, f, \forall k = 1, \dots, K, \forall t = 1, \dots, T) \quad (21)$$

$$z_{it} \gamma_i S_{ik} \le F_{kt} Q_{kt} \quad (\forall i = 1, \dots, f, \forall k = 1, \dots, K, \forall t = 1, \dots, T) \quad (22)$$

$$\sum_{t=1}^{f} v_{ijt} \le H \quad (\forall j = 1, \dots, d, \forall t = 1, \dots, T) \quad (23)$$

$$D_{ij} y_{it} = \beta_i v_{ijt} \quad (\forall i = 1, \dots, f, \forall j = 1, \dots, d, \forall t = 1, \dots, T) \quad (24)$$

$$D_{ij} z_{it} = \gamma_i v_{ijt} \quad (\forall i = 1, \dots, f, \forall j = 1, \dots, d, \forall t = 1, \dots, T) \quad (25)$$

$$u - t + 1 \le \text{MMTR}_i + M(2 - (v_{ijt} + v_{iut})) \quad (\forall i = 1, \dots, f, \forall j = 1, \dots, d, \forall t, u = 1, \dots, T, u > t) \quad (26)$$

$$x_{it}, y_{it}, z_{it}, v_{ijt} \in \{0, 1\} \quad (\forall i = 1, \dots, f, \forall t = 1, \dots, T, \forall j = 1, \dots, d). \quad (27)$$

### Description of the constraints

Constraint (10) sets the Boolean variable $w_i$ to zero if the CPS$_i$ is not undergoing CBM maintenance. Constraint (11) ensures that the CPSs undergoing CBM does not affect the total requested availability $\epsilon$. Constraint (12) ensures that there is at least a minimum number of mission-ready CPSs ($\epsilon$) available, and it includes both the CPSs that do not need maintenance actions (group 1) and the CPSs in CBM group (group 2). In constraint (13), a CPS must be only in one group at a time, either no maintenance action, CBM or corrective maintenance group. Constraint (14) ensures that the available CPSs do not include the ones that need corrective maintenance. Constraints (15) and (17) calculate the MMTR of the CBM and the corrective maintenance interventions, respectively. Constraint (16) ensures that the corrective maintenance is performed without pre-emption. Constraints (18) and (19) exclude the available CPSs and corrective maintenance CPSs from preventive maintenance. Constraint (20) ensures that the CBM maintenance is performed without pre-emption. Constraints (21) and (22) check the availability of the replacement parts and the maintenance skills for CBM and corrective maintenance, respectively. Constraint (23) ensures that the number of CPSs assigned to a maintenance depot at a time $t$ does not exceed the number of available hangars in that depot. Constraints (24) and (25) assign the CBM and corrective maintenance to their corresponding depots, respectively. Constraint (26) ensures that there is no interruption while a CPS is in CBM and corrective maintenance. Constraint (27) ensures that the variables $x_{it}$, $y_{it}$, $z_{it}$, $v_{ijt}$ and $w_i$ are binary.

#### 4.1.2 Results in static environment
Table 4 contains the results reached by the proposed MAS model in a static environment. The formulated MILP model is used to validate these results. This was done by comparing the number of CPAs available for missions (fleet operations) and the number of CPAs put in the maintenance depots for CBM interventions for both models. The table indicates that results reached by the proposed MAS are coherent with those by the MILP model. In some instances where the number of available CPAs was lower than $\epsilon$, the MILP model reached no results because it is mathematically impossible to resolve such situations since the MILP model is the mathematical representation of the problem. However, the MAS model is much more dynamic, in such situations, it deployed the available CPAs for the planned operations while delaying some planned operations in waiting for the maintenance of unavailable CPAs.

#### 4.2 MAS in a dynamic environment

Under this subsection, the proposed MAS is simulated in a dynamic environment. In the context of this work, the dynamic environment signifies the presence of uncertainties as far as the FMSP is concerned. The MILP model is not used in this environment as it is firstly, not easy to represent the randomness of the dynamic processes with complete accuracy. Secondly, for large instances, if the MILP model were applied to adapt the FMSP solutions in cases of perturbations, it would take a lot of computational time which is not very practical in real-life contexts. In this environment, the MAS model will be tested for its reactivity vis-à-vis the simulated perturbations as defined in this research work. In order to test the MAS's reactivity, an unanticipated breakdown scenario is considered because this is by far the most common uncertainty as far as the FMSP is concerned [34]. In this scenario, the CPAs breakdowns occur after the FMSP decisions have been made in such a way that, the fleet's availability is no
<table><caption>**Table 4** Results of the MILP and MAS models in a static environment</caption><thead><tr><th colspan="4">Instances</th><th colspan="2">Number CPAs sent to fleet operations</th><th colspan="2">Number of CPAs set to undergo CBM interventions</th></tr><tr><th>f</th><th>ε</th><th>f<sub>1</sub></th><th>f<sub>2</sub></th><th>f<sub>3</sub></th><th>MAS</th><th>MILP</th><th>MAS</th><th>MILP</th></tr></thead><tbody><tr><td>7</td><td>3</td><td>3</td><td>3</td><td>1</td><td>3</td><td>3</td><td>3</td><td>3</td></tr><tr><td>10</td><td>5</td><td>2</td><td>6</td><td>2</td><td>5</td><td>5</td><td>3</td><td>3</td></tr><tr><td>15</td><td>7</td><td>3</td><td>10</td><td>2</td><td>7</td><td>7</td><td>6</td><td>6</td></tr><tr><td>20</td><td>16</td><td>5</td><td>14</td><td>1</td><td>16</td><td>16</td><td>3</td><td>3</td></tr><tr><td>25</td><td>11</td><td>8</td><td>12</td><td>5</td><td>11</td><td>11</td><td>9</td><td>9</td></tr><tr><td>30</td><td>15</td><td>12</td><td>14</td><td>4</td><td>15</td><td>15</td><td>11</td><td>11</td></tr><tr><td>35</td><td>18</td><td>15</td><td>17</td><td>3</td><td>18</td><td>18</td><td>14</td><td>14</td></tr><tr><td>40</td><td>20</td><td>16</td><td>19</td><td>5</td><td>20</td><td>20</td><td>15</td><td>15</td></tr><tr><td>45</td><td>23</td><td>18</td><td>22</td><td>5</td><td>23</td><td>23</td><td>17</td><td>17</td></tr><tr><td>50</td><td>35</td><td>10</td><td>30</td><td>10</td><td>35</td><td>35</td><td>5</td><td>5</td></tr><tr><td>55</td><td>23</td><td>12</td><td>36</td><td>7</td><td>23</td><td>23</td><td>25</td><td>25</td></tr><tr><td>60</td><td>19</td><td>15</td><td>40</td><td>5</td><td>19</td><td>19</td><td>36</td><td>36</td></tr><tr><td>65</td><td>21</td><td>10</td><td>45</td><td>10</td><td>21</td><td>21</td><td>34</td><td>34</td></tr><tr><td>70</td><td>50</td><td>5</td><td>19</td><td>46</td><td>24</td><td>no solution</td><td>0</td><td>0</td></tr><tr><td>75</td><td>50</td><td>15</td><td>20</td><td>40</td><td>35</td><td>no solution</td><td>0</td><td>0</td></tr><tr><td>80</td><td>50</td><td>10</td><td>60</td><td>10</td><td>50</td><td>50</td><td>20</td><td>20</td></tr><tr><td>85</td><td>45</td><td>20</td><td>50</td><td>15</td><td>45</td><td>45</td><td>25</td><td>25</td></tr><tr><td>90</td><td>70</td><td>10</td><td>58</td><td>22</td><td>68</td><td>no solution</td><td>0</td><td>0</td></tr><tr><td>100</td><td>70</td><td>20</td><td>60</td><td>20</td><td>70</td><td>70</td><td>10</td><td>10</td></tr><tr><td>150</td><td>100</td><td>50</td><td>80</td><td>20</td><td>100</td><td>100</td><td>30</td><td>30</td></tr><tr><td>200</td><td>150</td><td>60</td><td>80</td><td>60</td><td>140</td><td>no solution</td><td>0</td><td>0</td></tr></tbody></table>

<table><caption>**Fig. 8** Health status groups and maintenance actions needed</caption><thead><tr><th>Agent</th><th>Groups</th><th>CPAs</th><th>Maintenance actions</th></tr></thead><tbody><tr><td rowspan="10">SF</td><td rowspan="3">Group 1</td><td>CPA 1</td><td>No fault</td></tr><tr><td>CPA 2</td><td>No fault</td></tr><tr><td>CPA 3</td><td>No fault</td></tr><tr><td rowspan="3">Group 2</td><td>CPA 4</td><td>CBM actions {1, 2}</td></tr><tr><td>CPA 5</td><td>CBM actions {1, 2, 3}</td></tr><tr><td>CPA 6</td><td>CBM actions {2, 3}</td></tr><tr><td rowspan="3">Group 3</td><td>CPA 7</td><td>Corrective action {1}</td></tr><tr><td></td><td></td></tr><tr><td></td><td></td></tr></tbody></table>

<table><caption>**Fig. 9** Identification of the maintenance resources</caption><tbody><tr><td rowspan="10">Resources</td><td rowspan="4">Maintenance Teams</td><td>Teams with skills for corrective action 1 - TC1</td></tr><tr><td>Teams with skills for CBM action 1 - TCBM1</td></tr><tr><td>Teams with skills for CBM action 2 - TCBM2</td></tr><tr><td>Teams with skills for CBM action 3 - TCBM3</td></tr><tr><td rowspan="4">Replacement parts</td><td>Parts for corrective action 1 - PC1</td></tr><tr><td>Parts for CBM action 1 - PCBM1</td></tr><tr><td>Parts for CBM action 2 - PCBM2</td></tr><tr><td>Parts for CBM action 3 - PCBM3</td></tr><tr><td rowspan="4">Infrastructre</td><td>Maintenance hangar (corrective action 1)</td></tr><tr><td>Maintenance hangar (preventive action 1)</td></tr><tr><td>Maintenance hangar (preventive action 2)</td></tr><tr><td>Maintenance hangar (preventive action 3)</td></tr></tbody></table>

longer satisfied. Using an illustrated example, the reactivity of the MAS model is simulated in the subsections that follow.

**4.2.1 Simulation scenario:** For the purpose of this simulation, the following instance is considered: let a fleet of seven CPAs where three CPAs require no particular maintenance actions, three CPAs require CBM measures and one CPA requires corrective measures. Moreover, the MCA requires 3 CPAs for the planned fleet operations (i.e. $\epsilon = 3$). Furthermore, in this instance the CPAs depend on two maintenance depots, namely, the CPAs 1, 3, 5 and 7 depend on depot 1 and the CPAs 2, 4 and 6 depend on depot 2.

First of all, the SA receives the raw acquisition variables, health status indicators and the CBM indicators from the CPAs. This information will not only permit the SA to group the CPAs in the health status groups but also will enable the SA to identify the needed maintenance actions associated with the CPAs in the fleet as shown in the health status table in Fig. 8. This figure shows the groups of CPAs as well as the maintenance actions needed.

Secondly, from the list of the maintenance actions needed (i.e. both corrective and CBM interventions), the SA is able to identify the maintenance resources required to carry out these interventions. These resources are identified in terms of the replacement parts needed, maintenance teams (with the needed skills) and the maintenance infrastructure as shown in the maintenance resource table in Fig. 9.

Thirdly, the SA receives the information from the two MAs (maintenance of depots 1 and 2) on the maintenance resources available in these depots. Using this information, the SA verifies if the needed resources for the maintenance of the CPAs in groups 2 and 3, respectively, are available and when are they available. This verification is illustrated in the Gantt diagram presented in Fig. 10.

Lastly, the SA suggests optimised CPAs allocation for the fleet operations as well as optimised maintenance planning for the CPAs in groups 3 and 2, respectively, (corrective maintenance and CBM) by considering the fleet's availability and the availability of the maintenance resources. This is illustrated in the Gantt diagram
<figure><img src="image_10.png" /><figcaption>Fig. 13 Reactive CPSs FMSP system at Bombardier Transportation France - MainFleet DSS structure</figcaption></figure>

## 4.3 Application to rail transport

Our proposal is being applied to rail transport with our industrial partner, Bombardier Transportation France. The proposed reactive CPSs FMSP system is intended to be used for the reactive maintenance planning of a specific fleet of trains at Bombardier transportation France where suggestions of the introduced maintenance decisions elaborated by the MAS are proposed to a fleet supervisor through a DSS, named 'MainFleet', see Fig. 13.

The correspondence between the agents in the designed MAS and the real systems at Bombardier Transportation France is as follows:

* **CPAs:** These are CPSs and they represent the trains in a fleet called Regio 2N (R2N).

* **MA:** These are maintenance agents and they represent the individual maintenance depots.

* **SA:** This is a virtual agent and in the context of the designed MainFleet, it is referred to as Superflo.

* **FSA:** This agent is replaced by the human fleet supervisor.

* **MCA:** This agent represents the fleet operators.

* **TIA:** This is a virtual agent that handles the decisions which have not been validated by the fleet supervisor.

## 5 Conclusion

In this work, the authors proposed a multi-agent FMSP system for a fleet of mobile CPSs elaborated using the ANEMONA MAS design methodology. Even though the experiments carried out in static and dynamic environments have illustrated the effectiveness and the reactivity of the multi-agent model, additional experiments should be carried out to validate the proposed approach. An application to rail transport has been introduced, using a decision-support approach.

The authors anticipate addressing the following short-term aspects in future projects: Firstly, the ability of the MAS model to deal with missing data. During the experimentation, this scenario manifested itself in the cases of sensor malfunctions. Secondly, the cybersecurity aspects vis-à-vis the data in the presented system should be addressed. This issue is important as the presented DSS

involves numerous data movements between its layers and the agents in its model layer.

Long-term prospects have also been identified. The most important one is relevant to the reliability of the used data. More precisely, this issue is relevant to the need of developing more precise and accurate models and tools capable of getting the correct picture of health-status of the CPSs which will help in giving the correct estimations of their remaining useful life. Moreover, developing other solving methods such as heuristics and meta-heuristics could be useful to assess the performance of the MAS model. The meta-heuristics can be used as proactive solving methods to generate robust solutions that can handle perturbations.

## 6 Acknowledgment

Surferlab was funded by ERDF (European Regional Development Fund) and Hauts-de-France region. The authors thank the European Union and the region for their support.

## 7 References

[1] Emadi, A.: 'Transportation 2.0', *IEEE Power Energy Mag.*, 2011, **9**, (4), pp. 18–29, Available at https://doi.org/10.1109/MPE.2011.941320

[2] Sahoo, J., Cherkaoui, S., Hafid, A.: 'Optimal selection of aggregation locations for participatory sensing by mobile cyber-physical systems', *Comput. Commun.*, 2016, **74**, pp. 26–37, Available at https://doi.org/10.1016/j.comcom.2014.05.007

[3] Deka, L., Khan, S.M., Chowdhury, M., et al.: 'Transportation cyber-physical system and its importance for future mobility', *Transp. Cyber-Phys. Syst.*, 2018, **2018**, pp. 1–20, Available at https://doi.org/10.1016/B978-0-12-814295-0.00001-0

[4] Guo, Y., Hu, X., Hu, B., et al.: 'Mobile cyber physical systems: current challenges and future networking applications', *IEEE Access*, 2017, **6**, pp. 12360–12368, Available at https://doi.org/10.1109/ACCESS.2017.2782881

[5] Hu, X., Cheng, J., Li, X., et al.: 'Mobile cyber-physical system', *Mobile Inf. Syst.*, 2017, **2017**, pp. 1–2, Available at https://doi.org/10.1155/2017/4970290

[6] Hanz, T., Guirguis, M.: 'An abstraction layer for controlling heterogeneous mobile cyber-physical systems'. 2013 IEEE Int. Conf. on Automation Science and Engineering (CASE), Madison, Wisconsin, USA., 2013, pp. 117–121, Available at https://doi.org/10.1109/CoASE.2013.6653960

[7] Cassady, C.R., Murdock, W.P., Nachlas, J.A., et al.: 'Comprehensive fleet maintenance management'. SMC'98 Conf. Proc. 1998 IEEE Int. Conf. on Systems, Man, and Cybernetics, San Diego, CA, USA, 1998, vol. 5, pp. 4665–4669, Available at https://doi.org/10.1109/ICSMC.1998.727588