Keywords

1 Introduction

The unified business process for aircraft maintenance has been proposed as an AMSS (Aircraft Maintenance Service System) model [1], which is capable of providing a platform where all the relevant information can be collected and a decision can be made from the global point of view. This architecture of the AMSS explains the aircraft maintenance from the business point of view [2]. Seven components, including Customer Requirement Component (CRC), Service Strategy Component (SSC), Service Task Component (STC), Workshop Component (WC), Supply Chain Component (SCC), Quality Control Component (QCC) and Service Decision Component (SDS), have been involved. The CRC determines maintenance requirements. The SSC is to provide strategies for maintenance issues. How to carry out maintenance work and keep aircraft serviceable are illustrated in the STC, WC, SCC. Moreover, the improvement of maintenance is implemented with the help of the QCC and SDC.

In this paper, we focus on the performance evaluation of the AMSS with a consideration of real-world maintenance processes. The AMSS model emphasizes the individuality of stakeholders and the cooperation between them. Performance evaluation is a tedious task since it is almost impossible to quantitatively estimate it a priori (i.e. before the implementation). Simulation is known as a powerful approach to meet this objective in other contexts [3].

More precisely, an agent-based modeling can be defined simply as essentially decentralized, individual-centric approach to model design [4]. The real-world maintenance process and decentralized stakeholders provide this method with the possibility of detecting unknown (or unexpected) behaviors of complex system [5]. The agent is autonomous [6], which is just sensible to present stakeholders. For example, the agent may refuse the request from another agent. Because inside agents, they own their own internal states. Specific states receive specific signals. If the signal is sent at an inappropriate time, it will be neglected. Therefore, the agent-based modeling simulation method is a good choice for modeling the AMSS and evaluating a priori its performance.

In this paper, Sect. 2 discusses the application of simulation methods in aircraft maintenance domain and information system performance evaluation approaches. Section 3 provides an approach to realize the agent-based simulation modeling. The experiments are conducted to analyze the impacts of key factors on airline’s maintenance cost and service level in the Sect. 4. Finally, Sect. 5 concludes the paper with future perspectives.

2 Literature Review

2.1 Aircraft Maintenance Simulation

Simulation approaches have been widely used in the both civil and military aircraft maintenance. In the military domain, some earlier works [7, 8] involve the military logistic application analysis, but these do not consider the whole maintenance process. Although Mattila’s work [9] tends to describe the whole maintenance process, his work lacks the consideration for the importance of impacts of individuality on the performance of the model. Recently, MacKenzie et al. proposes an agent-based simulation for application to the sortie generation process, focusing on a single fighter aircraft unit [10], and Datta et al. develop a discrete-event simulation model representing an end-to-end repair line for jet aircraft to evaluate different manpower resource utilization decisions [11]. However, the evaluation of manpower utilization decisions is just based on the utilization rate of manpower and neglects other factors like maintenance cost, service level, etc.

In the civil aircraft domain, the simulation method for aircraft maintenance tends to be prevailing. Most of the works [12,13,14] attempt to combine simulation methods with optimization objectives. Simulation methods are principally used for estimating the performance of optimal model. However, these works either only underline some specific phases of maintenance like spare parts allocation, personal scheduling, etc., or are inadequate to the stress of behaviors of individual objects. Therefore, the evaluation indicators for proposed models appear to be insufficient. In addition, the combination of multi-agent system modeling and interdisciplinary approach is proposed to model the safety culture, in order to evaluate workers’ commitment to safety [15]. The agent-based model was implemented in Java instead of any agent modeling tools, because they thought that conceptual models of agents and specification languages limited their purposes. Thus, that work is contributed more to the theory development of safety culture.

To conclude, on the one hand, most works are dedicated to the solving of formulated problems rather than to the methodological details; on the other hand, little description of the complexity of the aircraft maintenance such as cooperation between stakeholders is addressed.

2.2 Information System Evaluation

The evaluation of information systems is utterly difficult, as its multidimensionality, quantitative and qualitative aspects, and conflicts among evaluator viewpoints [16]. Most of works [17,18,19] contribute to providing more complete indicators for evaluating the existing information systems, in order to investigate their performances. From our point of view, the evaluation is principally relied on developed information systems. They are evaluated either intrinsically with informatics indicators or a posteriori observations once they are deployed inside the organization. Nevertheless, very few works try to evaluate a priori impacts of their deployment and the performance of the new organization.

Maintenance systems for aircraft are kinds of complex systems, which concentrate on individuality of stakeholders, distributed and ephemeral cooperation between stakeholders. Jennings [6] points out the flexible, high-level interactions of agents make the engineering of complex system easier. The author recalls that complex systems are always distributed and agent decomposition is very important to manage complexity. Agent-based systems are essentially decentralized and individual-centric. Moyaux et al. [20] explains that the system complexity makes it difficult to know every possible interaction in the system, because the system only has partial control and observability over its environment, and thus, this environment is highly unpredictable. Agent-based decentralization takes this into account by letting each agent continuously coordinate its actions with other agents, instead of making this agent apply a behavior prescribed at design-time.

As for our simulation model, the distributed and ephemeral characteristics are captured by agents. For example, the flight agent schedules the plane agent to service, while the service task agent maybe is requesting a specific part. Two agents accomplish their tasks independently. If the signal from the flight agent reaches the plane agent at an inappropriate moment, this signal will be neglected by the plane agent. Because agents are autonomous. Thus, in this case, the cooperation between agents is ephemeral. Thanks to the simulation tool Anylogic, we can build our agent-based simulation model easily dealing with distributed and ephemeral issues. Additionally, since agents own high level of individuality, the cooperation of them may make the system produce some unknown behaviors.

The major contributions of our work are: (1) effectively describing the behaviors of the AMSS; (2) enabling maintenance designers to fully investigate the system performance. Therefore, the simulation analysis allows maintenance designers to have enough flexibility in the phrase of model design. Additionally, this analysis is automatic and has improved the traditionally manual analysis process to be more accurate, more rapid and less error-prone.

3 The Agent-Based Simulation Framework

Aiming at investigating the performance of the AMSS, an agent-based simulation model is developed, which is shown in Fig. 1. This model is capable of dealing with four kinds of maintenance scenarios: scheduled/unscheduled maintenance and with/without uncertain events. The unscheduled maintenance and uncertain events are determined by fault events and uncertain events respectively. In this model, we have created nine agents: Flight Agent (FA), Plane Agent (PA), Equipment Agent (EA), Customer Requirement Agent (CRA), Service Strategy Agent (SSA), Service Task Agent (STA), Supply Chain Agent (SCA), Quality Control Agent (QCA) and Service Decision Agent (SDA). The maintenance logic is completely from the AMSS model. Therefore, we derive agents from components of the model. In addition, we add the FA, PA and EA to run the simulation more smoothly. FA is dedicated to scheduling plane. PA is created to just simulate a plane. EA allows us to get a better insight of repairing issues. In the following, the development of PA, EA and STA is discussed in details.

Fig. 1.
figure 1

Agent-based simulation model for AMSS

3.1 Plane and Equipment Agent

The plane agent is a kind of composite agents, which contains the equipment agents. The data for this agent consist of aircraft data (aircraftNumber, aircraftType, aircraftState), the flight data (flightNumber, flightHours, city), scheduled maintenance data (ACheckTime, BCheckTime, CCheckTime, DCheckTime) and parts data (type, changeoverTime, repairTime, repairingTime, serialNumber, price, equipmentState).

When all the aircraft are loaded from the database, they are in the state “Ready”. They are scheduled by departure and arrival events, which are defined in the FA. In the state “SidedTransitCheck”, we assume that fault events occur with a specific probability. This state is the only place where the CRA may be triggered. When one aircraft needs to do the scheduled maintenance like “TransitCheck”, “ACheck”, “BCheck”, “CCheck” or “DCheck”, the EA will be called to check states of relevant parts.

In terms of the EA, the major objectives of this agent are to check the states of parts and determine the repairing strategies for faulty parts. As for the unscheduled maintenance, one faulty parts list will be delivered to the EA. The repairing strategies for them are determined by decision rules shown in Table 1. When receiving the scheduled maintenance, the parts will be checked just to see whether it needs to be replaced. It should be noted that the repairTime refers to the overhaul time of parts. The repairingTime implies the repairing time of part is short.

Table 1. The decision rules for repairing strategies
Fig. 2.
figure 2

The state chart of the STA

3.2 Service Task Agent

The data of the STA are the aircraftNumber, aircraftType, interval, state, faultDesc, detailedFaultDesc, parts, partsChecking and aircraftTechnicians. The state chart of the STA is shown in Fig. 2. This agent is capable of dealing with issues like fault identification, maintenance planning (resource request and labor assignment) and uncertain events. When receiving signals from CRA, it will trigger fault identification process. When receiving signals from SSA, it means the set of possible faulty components has been determined by SSA. Thus, it starts to make maintenance plans. During the process of repairing (“WorkPackages” state), uncertain events maybe happen. Then, it will trigger agents like SSA, QCA and SDA, in order to find better solutions. The logic of dealing uncertain events is shown as blue arrows in Fig. 1.

It should be noted that we recognize unknown events occurring during the process of repairing of dysfunctional components as uncertain events.

4 Case Study

4.1 Experiment Design and Data

The performance evaluation of the AMSS is conducted via examining the impacts of the number of aircraft (experiment 1) and technicians (experiment 2) on service level (sl) and maintenance cost. In this model, the key factors are: the probabilities of the occurrence of fault events and uncertain events, and the numbers of aircraft and technicians. We expect to create a severe simulation environment to see the responses of the system. Thus, the probabilities of the occurrence of fault events and uncertain events are amplified, which are assigned as 0.5 and 1 respectively.

In terms of cost analysis, the downtime cost, labor cost, stock cost and parts purchase cost are taken into consideration. The definitions of costs are shown below in equation (1)–(4), where the totalRepairTime (shown in Table 2) and interval are counted by seconds, the salary (i) and time (i) represent the ith aircraft technician’s salary counted by hours and the corresponding working time, the number (i) implies the number of the ith kind of parts and the days means the number of storing days, and the cost (j) means the cost of the jth kind of parts. In addition, all the costs are counted by dollars. It should be noted that the scheduledTime in Table 2 means the total repair time of scheduled maintenance.

$$\begin{aligned}&DowntimeCost=(totalRepairTime-interval)*2.8; \end{aligned}$$
(1)
$$\begin{aligned}&LaborCosts=\sum _{(i=1)}^{n}salary(i)*time(i); \end{aligned}$$
(2)
$$\begin{aligned}&StockCosts=\sum _{(i=1)}^{n}number(i)*10*days; \end{aligned}$$
(3)
$$\begin{aligned}&PartsPurchaseCosts=\sum _{(j=1)}^{n}cost(j); \end{aligned}$$
(4)

The industrial relevance of values for data is explained in the following. The data interval(around 1 h), inventoryPrepare(1–3 h), repairingTime(20–120 mins) (the faulty parts that can be repaired on site) and repairTime(5–30 h) (the faulty parts that have to be repaired at workshops) are of a certain level of industrial relevance. The value for data inventoryPrepare is given by the random distribution \(uniform\_discr(min,max)\). The rest are determined by the data stored in the database. However, in terms of the data informationDelivery and maintenancePlanning, the values for them are assumed as 2 s and 10 min respectively, which are of less of industrial relevance. The data of the faultIdentification, exceptionalEventSSA and exceptionalEventSTA are determined depending on knowledge stored in the database. If the solution has been stored in the database, they will take 0 min. If not, they will take either 30 min or one hour.

Table 2. The definitions of total repair time on maintenance scenarios

The definition of service level is shown as follow:

$$\begin{aligned} service level=totalRepairTime-interval. \end{aligned}$$
(5)

The relation between the delayed time and service level is shown in Table 3. When analyzing the service level for aircraft maintenance, the first two important indicators are the “sl = 10” and “sl = 0”. The indicators of “sl = 9 to 6” are the second most important indicators.

Table 3. The relation between delayed time(minute) and service level

4.2 Experiment Hypothesis

The major experiment hypotheses consist of:

  • all the aircraft fly from London to the other cities around the world. Then, they will fly back to London;

  • fault events can happen only when aircraft reach the “SidedTransitCheck” state in the PA. Uncertain events always take place in the STA;

  • each faulty part only occupies one technician who is randomly distributed and has matched skills;

  • all maintenance business processes are included in the combination of scheduled/unscheduled maintenance and with/without uncertain events;

  • for the departure event, if there is no available aircraft for the departure of one flight, this flight will be canceled. For the arrival event, if the downtime for departure is over 4 h, this flight will be canceled neither;

  • fixed parts are as good as news after maintenance actions.

4.3 Experiment Results and Analysis

This simulation experiment is implemented in Anylogic PLE 8.2.3. The configurations of running laptop are 8G memory and 4 processors (i7-6500U CPU). The simulation is set as two weeks, which takes around 4.5 h. The experiment results are divided into two parts: impacts of the number of aircraft (Fig. 3) and the number of technicians (Fig. 4) on airline’s service level and maintenance cost.

Fig. 3.
figure 3

The impacts of the number of aircraft on airline’s service level and maintenance cost

The result of the first experiment is very interesting. With the increase of the number of aircraft, the number of on-time flights (sl = 10) goes up steadily. But the number of the canceled flight represents variability. For instance, when the number of aircraft rises from 14 to 34, the canceled flight increases regularly. While when the number of aircraft equals to 44, the number of canceled flights just shows a slight increase. Thus, based on the result of the service level, we have found 44 is the most appropriate sum for the number of aircraft for airlines. For the maintenance cost, the downtime costs increase regularly and the part purchase costs rise slowly, with the increase of the number of aircraft. However, the stock cost and labor cost are less significant.

Fig. 4.
figure 4

The impacts of the number of technicians on airline’s service level and maintenance cost

The second experiment is very significant as well. The major trend for all the indicators remain stable. Comparing with the impacts of the number of technicians on the number of flights, we find that 49 is the most suitable sum for the number of technicians. If the number of technicians equals to or less than 49, the number of flights increases gradually despite a slight fluctuation when the number of technicians ranges from 19 to 39. When comparing the cases of the number of technician equaling to 49 and 59, they almost share the same level of the number of flights, but the former shows better in the indicators of “sl = 0” and canceled flight. As for “sl = 7 and 6”, they are much less important than the indicators of “sl = 0” and canceled flight. At the same time, they almost share the same changing trend. As a result, we suggest that 49 is better for the number of technicians. As for the maintenance cost, the downtime cost firstly increases then decreases, with the increase of the number of technicians. When the number of technicians equals to 39, the values of the downtime cost and part purchase cost both reach the peak. Above all, the maintenance cost does not experience any remarkable change with the increase of the number of technicians.

Even though we just conduct two experiments on the evaluation of the system, this agent-based model simulation allows us to evaluate almost all the aspects of the system. In fact, the impacts of each significant factor and maintenance strategies on system performance can be explored via changing their values and strategies respectively. As a result, in this paper, we provide the basic simulation model for aircraft maintenance, which enables maintenance designers to fully examine the system.

5 Conclusion

In this paper, the agent-based simulation model describes the AMSS behavior via combining flight scheduling, cooperation between stakeholders, and failure repairs as a whole maintenance process, concentrating on scenarios of the combination of scheduled/unscheduled maintenance and with/without uncertain events. The experiment results show this method not only has the strong capability of describing complex information systems but enables us to investigate the system performance from the global point of view. When maintenance designers need to investigate the impacts of some environment variables and maintenance strategies on maintenance efficiency and cost, our approach can provide a qualitative and quantitative analysis on this problem. The authenticity of initial data is a big issue in our work. In order to realize this experiment, some key data is still based on our hypothesis. Thus, one of our perspectives is to apply more realistic data to the proposed simulation model for better evaluation and improvement. Moreover, the theoretical verification of this model is still missing. In the future, the formal method will be employed to verify the feasibility of the AMSS model.