A Dynamic Scheduling Method for Carrier Aircraft Support Operation under Uncertain Conditions Based on Rolling Horizon Strategy

Featured Application: The dynamic scheduling research of carrier aircraft support operations in different missions involves multiple support resources (renewable resources include support operational crews and support equipment, non-renewable resources include oil, oxygen, nitrogen, hydraulic, power), complex scheduling process such as the operational activities that should satisfy serial and parallel constraint relationships, multiple constraints (renewable resources constraints, non-renewable resources constraints, operational space constraints). The efﬁcient coordination of these resources can be described as a multi-resource constrained multi-project scheduling problem (MRCMPSP) under an uncertain environment. In this work, an integer programming mathematical model is established for carrier aircraft dynamic support scheduling to solve the non-deterministic polynomial-time hard (NP-hard) problem. A periodic and event-driven rolling horizon (RH) scheduling strategy that was inspired by the RH optimization method from predictive control technology is presented for the uncertain and dynamic environment. The RH strategy not only reduces the problem size, it also effectively adjusts the baseline scheduling in a reasonable computational time and avoids the unnecessary scheduling with effective resource allocation in the dynamic ﬂight deck environment. The dual population genetic algorithm (DPGA) is designed to solve the large-scale scheduling problem. The computational results show that our approach can provide convenient guidance to carrier aircraft support and scheduling applications in the dynamic ﬂight deck environment, and make better decisions regarding disruption on a real-time basis. Abstract: The efﬁcient scheduling of carrier aircraft support operations in the ﬂight deck is important for battle performances. The supporting operations and maintenance processes involve multiple support resources, complex scheduling process, and multiple constraints; the efﬁcient coordination of these processes can be considered a multi-resource constrained multi-project scheduling problem (MRCMPSP), which is a complex non-deterministic polynomial-time hard (NP-hard) problem. The renewable resources include the operational crews, resource stations, and operational spaces, and the non-renewable resources include oil, gas, weapons, and electric power. An integer programming mathematical model is established to solve this problem. A periodic and event-driven rolling horizon (RH) scheduling strategy inspired by the RH optimization method from predictive control technology is presented for the dynamic scheduling environment. The periodic horizon scheduling strategy can track the changes of the carrier aircraft supporting system, and the improved event-driven mechanism can avoid unnecessary scheduling with effective resource allocation under uncertain conditions. The dual population genetic algorithm (DPGA) is designed to solve the large-scale scheduling problem. The activity list encoding method is proposed, and a new adaptive crossover and mutation strategy is designed to improve the global exploration ability. The double schedule for leftward and rightward populations is integrated into the genetic process of alternating iterations to improve the convergence speed and decrease the computation amount. The computational results show that our approach is effective at solving the scheduling problem in the dynamic environment, as well as making better decisions regarding disruption on a real-time basis.


Introduction
The carrier aircraft is the main weapon used in large aircraft carriers. Before taking off, each carrier aircraft requires a series of certain supporting operations, such as inspection, oiling, gas supply, weapon mount, inertial alignment, etc.; several types of carrier aircrafts have to take off synergistically. The support operations involve multiple support resources (renewable resources include support operational crews and support equipment, non-renewable resources include oiling, oxygen, nitrogen, hydraulic, power), complex scheduling processes, as the operational activities should satisfy with serial and parallel constraint relationships-for instance, no oxygenation operation can be done at the time of refueling operation due to security considerations, and multiple constraints (renewable resources constraints, non-renewable resources constraints, operational space constraints, etc.). The main purpose of the synthetically complicated scheduling problem (it has been non-deterministic polynomial-time hard (NP-hard)) is about allocating the limited resources through optimization methods, and the research contents include multiple objects, multiple resource allocation, mission order management, an uncertain dynamic environment, etc. The research regarding aircraft carrier deck scheduling has considered resource-constrained project scheduling problems (RCPSP). Some uncertainties and dynamic disruptions exist in carrier aircraft scheduling, such as resource disruptions (resource station breakdown, the operators reduce) and time disruptions (the operational time for the equipment maintenance, which may become longer). The keys to achieving the carrier aircrafts' scheduling include different facilities, operational crews, and positions with set limitations in time, space, and resources. RCPSP (which is from 1963) was firstly introduced by Kelley [1]. The objective of RCPSP is to minimize the makespan while satisfying the resource constraints and precedence relationships among the activities [2]. Blazewicz [3] showed that RCPSP is an NP-hard problem in 1983. The majority of the early research (Zhu. 2006 [4], Herroelen. 2005 [5]) aimed at developing better methods to minimize the makespan of the project and simultaneously set the starting times of the multi-project scheduling problem, in order to make all of the resource constraints meet the project scheduling [6]. Kyriakidis [7] went further by enlarging the search capacity for multi-resources and multi-projects. In recent years, RCPSP has gained widespread attention due to its practical importance and computational challenges [8]. Moreover, RCPSPs have current applications in some aspects regarding their time-based, cost-based, and resource-based objectives [9,10]. Less research has been done about carrier aircraft support scheduling, which is considered a RCPSP after incorporating some practical restrictions, especially regarding the dynamic scheduling.
A series of previous research studies about carrier aircraft scheduling problems were conducted, and some research papers have been published. In the early years, Ouija Board [11], an aircraft carrier deck simulation platform, was employed by the US Navy to monitor the arrangement and dispatch of the carrier aircraft; it sought an optimized scheduling strategy by artificial expertise. Johnston [12] provided a brief introduction of flight-deck operations for the carrier aircraft. Ryan [13,14] developed a deck operations course of action planner (DCAP) that was based on a human-computer interaction concept and utilized a conventional integer linear program-based planning algorithm. An agent-based model [15] for an aircraft carrier flight deck was also developed, which was compared with that of the expert user heuristics over a set of experimental scenarios. Michini [16] applied the reverse reinforcement learning method and Dastidar [17] presented the queuing network optimizing strategy for aircraft scheduling problems. Zhi Zhang [18] designed a human-computer cooperation decision planning system (aircraft carrier deck operation planner (ACDOP) system). Feng Qiang [19] proposed a multi-agent based fleet maintenance personnel configuration method to solve the mission-oriented aircraft fleet maintenance personnel configuration problem. Lianfei Yu [20] viewed the flight deck scheduling problem as an extension of the flexible job shop scheduling problem (FJSP), and designed an improved differential evolution algorithm (IDE) to improve the computational efficiency. Our research team has also published some relevant papers for the carrier aircraft scheduling problem including the constraints in the scheduling [21], the multi-objective integrated supporting scheduling model, and the intelligence algorithm to solve this problem [22,23]. Compared with other land-based aircraft [24,25], the flight deck in an aircraft carrier presents a complex and uncertain environment in which time-critical scheduling and planning must be done to fulfill mission requirements and ensure the safety of operational crews and equipment [26]. However, most previous research has been aimed at developing better solution methods or scheduling strategies based on a static scheduling environment, and most research is oversimplified. The related literatures regarding managing and guiding the carrier aircraft operations and scheduling are very limited. The strong constraints in the operations usually result in a lot of dynamic scheduling disruptions. The research about the dynamic scheduling method of carrier aircraft support and operation is more important and complicated, but there has not been enough.
The carrier aircraft dynamic scheduling, which is a special RCPSP and considered as multi-resource constrained multi-project scheduling problem (MRCMPSP) under uncertain environments, may face a lot of significant disruptions due to resource unavailability, duration deviation, machine breakdowns, operator variation, and uncertain tasks. The traditional deterministic scheduling strategy must be revised and resolved in order to increase the resource utilization and respond to the changing flight deck environment. In order to find optimal solutions under uncertainty, some primary types of existing rescheduling strategies have been researched, such as the reactive scheduling strategy [27], the proactive scheduling strategy [28], and robust execution strategies [29]. In flight deck carrier aircraft scheduling research, Chao Qi [30] has researched aircraft carrier flight deck dynamic planning based on a dynamic hierarchical task network (HTN) planning process for a set of activities with resource constraints. However, the twofold network structure is simple, and still has some limitations. Gürkan [31] integrated the robust schedule design with fleet assignment and aircraft routing problems in a dynamic environment. This made it possible to improve the solution, since a routing decision could eliminate the necessity of inserting idle time or compressing cruise time, but it could not make a real-time decision when unpredictable disruptions occurred and the robust schedule needed to be rescheduled. Jürgen Kuster [32] described how the RCPSP can be used as a basis for real-time decision support in the disruption management of the aircraft turnaround, and argued that the RCPSP dynamic scheduling research for carrier aircraft is significant; however, it is only partial research that did not sufficiently deal with the uncertain random interferences. In other dynamic scheduling research, copious algorithms and methods can be found in the literature such as the branch and bound algorithm [33], the linear programming-based algorithm [34], and other exact algorithms [35], and many heuristic algorithms and metaheuristic algorithms have been also presented in the literature such as the genetic algorithm [36] (GA), hybrid GA [37], and differential evolution (DE) [38].
A review of the relevant literature has shown that although the existing literature has obtained some results and provided theoretical support to improve the dynamic scheduling strategy for carrier aircraft support operations, there are still some limitations. Most carrier aircraft scheduling methods are based on a static flight deck environment, and need to have a number of parameters defined before a scheduling plan is started. The impact of each activity's scheduling time on the available equipment and operational crews were not considered, including the operating time of all of the activities, the allocation of operation resources (renewable resources and non-renewable resources), and the number of aircraft that need to be supported. The time urgency may affect the selection of scheduling strategies, and the resource limitations can lead to dispatching conflict. The current research cannot meet the demand of real-time dynamic scheduling well for the carrier aircraft support operation. The proactive scheduling strategy can create a schedule that is robust with respect to dynamic disruptions, and make a plan regarding a temporal schedule and resource allocation, but it cannot generate rescheduling simultaneously when the dynamic disruption occurs. Some disruptions may cause a robust scheduling failure, which calls for a new schedule. The reactive strategy can repair a schedule that has been disrupted in terms of reducing disturbance from uncertainties, but it is difficult for these proposed algorithms to generate rescheduling in a short time, and they make little changes to the rescheduling sequence compared with the baseline scheduling. The relevant research studies have also shown that it is difficult to make static scheduling meet the needs of a dynamic deck scheduling environment, and these methods do not meet the requirements of real-life situations. In this paper, we consider actual dynamic deck environment factors, establish an integer programming mathematical model, and propose a dynamic rolling horizon (RH) scheduling strategy for carrier aircraft support operations under uncertain conditions. It is a very interesting work.
The structure of the paper is as follows. In the next section, the dynamic scheduling problem of carrier aircraft support operations is described in detail. Some definitions are proposed; then, the new integer programming model for the carrier aircraft support is established. In Section 3, the periodic and event-driven RH scheduling strategies are proposed to deal with the dynamic deck environment factors and different disruptions, and the associative recovery strategies are discussed in the creation of new support schedules. In Section 4, the improved genetic algorithm for the dynamic deck environment is illustrated in detail. The computational results and analysis are provided in Section 5. Finally, we provide the overall conclusions in Section 6.

Problem Description
The scheduling problem of carrier aircraft support operations is about allocating the supporting resource (renewable resources and non-renewable resources) to complete the operations for preparing the aircraft well as soon as possible. It can be consider a MRCMPSP. Three kinds of constrained resource (renewable resources constraint, non-renewable resources constraint, operational space constraint) exist in the scheduling project. The renewable resources include support equipment resources (oiling station, oxygen and nitrogen station, hydraulic station, power station), the support resources of operational crews (machinery major, ordnance major, avionics major, and special equipment major), and the support space resources (cockpit and landing gear station). The resource station cannot support all of the aircraft in the deck because of the distribution position; a single station only can cover some of the settled carrier aircraft in the flight deck, but the different major operational crews can support all of the aircraft in the flight deck. The non-renewable resources, which are also called consuming resources, include oil, gas, weapons, etc. The support space resources such as the aircraft cockpit make up the support activity existing space constraints, so that the cockpit inspection of each major cannot proceed simultaneously.
There are some rules restricting the operational activities with serial and parallel constraint relationships. (i) No oxygenation operation can be done at the time of refueling operation due to security considerations; (ii) The operational crews for a single major operation can finish different activities with different priorities; for example, the carrier aircraft inspection of ordnance appearance is preferable to the inspection of ordnance cockpit; (iii) The sequence of some activities can be processed simultaneously; for example, the operations of different majors can be exchanged with parallel constraint relationships; (iv) A stationary resource station can only support some settled carrier aircraft; (v) The alignment operation of inertial navigation is generally carried out after all of the activities. In the scheduling problem, the supporting activities of each carrier aircraft include about 14 activities.
Besides, a virtual start activity and a virtual finish activity are set to combine the operational activities of each carrier aircraft to a multi-aircraft network flow. Figure 1 shows the support activities flow chart of a single-aircraft. The solid arrow indicates the serial and parallel constraint relationships of the operational activities. The dotted line indicates that the cockpit space constraint, which cannot proceed simultaneously in the four aircraft cockpit activities. The single-aircraft support process can be considered as a single project in the RCPSP. the activities. In the scheduling problem, the supporting activities of each carrier aircraft include about 14 activities. Besides, a virtual start activity and a virtual finish activity are set to combine the operational activities of each carrier aircraft to a multi-aircraft network flow. Figure 1 shows the support activities flow chart of a single-aircraft. The solid arrow indicates the serial and parallel constraint relationships of the operational activities. The dotted line indicates that the cockpit space constraint, which cannot proceed simultaneously in the four aircraft cockpit activities. The singleaircraft support process can be considered as a single project in the RCPSP.  In the flight deck environment, some uncertainties and dynamic disruptions exist in the carrier aircraft scheduling, such as resource disruptions (resource station breakdown, the operators reduce), time disruptions (the operational time for the support equipment maintenance, which may become longer), and support tasks that are added, changed, or removed. Therefore, a proposal of a scheduling strategy for a dynamic port environment is required. The objective is to find a dynamic scheduling strategy that minimizes the makespan, improves the resource utilization, and reduces the influence of disruption. The mixed integer linear programming models are discussed next in this section.

Notation
• Sets  In the flight deck environment, some uncertainties and dynamic disruptions exist in the carrier aircraft scheduling, such as resource disruptions (resource station breakdown, the operators reduce), time disruptions (the operational time for the support equipment maintenance, which may become longer), and support tasks that are added, changed, or removed. Therefore, a proposal of a scheduling strategy for a dynamic port environment is required. The objective is to find a dynamic scheduling strategy that minimizes the makespan, improves the resource utilization, and reduces the influence of disruption. The mixed integer linear programming models are discussed next in this section.

Notation
• Sets I set of carrier aircrafts, i = 1, . . . , I J i set of activities for the ith carrier aircrafts, j = 0, 1, . . . , J i J i * set of the incomplete activities, including the affected activities in the same time window and activities that start after a disruption ends Kp set of different kinds of supporting major Ks set of different kinds of supporting space Kr set of different types of resource station Kw set of non-renewable resources upper limit Lr k set of kth(k Kr) supporting resource station Lp k set of kth(k Kp) supporting operational crew P ij set of pre-constraint activities for the ith carrier aircraft jth activity R pkl set of the carrier aircraft support range by the kth(k Kp) major lth(l Lp k ) operational crew Rekl set of the carrier aircraft support range by the kth(k Kr) type lth(l Lr k ) station

• Parameters
Appl. Sci. 2018, 8, 1546 6 of 23 d ij duration of activity j for the ith carrier aircraft SX i start time for supporting the ith carrier aircraft S ij start time of activity j for the ith carrier aircraft T total planning horizon/upper bound of the project duration rp ijk demand number of kth operational crew for the ith carrier aircraft jth activity rs ijk demand number of kth space for the ith carrier aircraft jth activity re ijk demand number of kth equipment for the ith carrier aircraft jth activity rw ijk demand number of non-renewable resources for the ith carrier aircraft jth activity

• Decision variables
Cmax the maximum completion time of the activities Xp ijkl 1 if the kth station lth equipment is allocated to activity j for the ith carrier aircraft; 0 otherwise Xe ijkl 1 if the kth station lth equipment is allocated to activity j for the ith carrier aircraft; 0 otherwise x ijk 1 if the activity j for the ith carrier aircraft has been finished at the t moment; 0 otherwise

Basic Formulations about Objective Functions and Constraints
The objective is to minimize the completion time of the last support activity.
Constraint (2) ensures that the first support activity must start before the carrier aircraft is transported up to the flight deck and parked in a permanent position. Constraint (3) defines the relationship between the finish time of each activity with the start time. Constraints (4) ensures the precedence relationship, which means that any activity cannot be started before the completion of its preceding activity. Constraint (5) ensures that each activity is executed only once from one exact period, t. Constraints (6), (7) and (8) represent the capacity constraints for renewable resources (operational space, operational crews, resource stations), respectively. Constraint (9) represents the capacity constraints for the non-renewable resources in each time period. Constraints (10) and (11) represent the allocation of the operational crews and resource stations, which need to be equal to the demand. Constraint (12) represents the support coverage of the operational crews and resource stations.

Dynamic Disruption Rescheduling Model
Some disruptions may occur in the uncertain scheduling environment after some activities have been completed as planned, which may cause a scheduling delay or prescheduling failure. Then, the dynamic rescheduling model is established. The objective function of Equation (13) is to minimize the sum of the earliness and tardiness values of all of the activities' completion time cost, comparing the recovery schedule with the baseline schedule.
ij represents the start time of the incomplete activity j of carrier aircraft i after disruption, and D ij represents the start time of the incomplete activity j of carrier aircraft i before disruption.
This rescheduling model with disruptions differs from static scheduling. The dynamic scheduling problem is incorporated into the formulation in Equation (13) through optimizing the makespan objective function firstly, and then minimizing the sum of the earliness and tardiness values of all of the activities' completion time cost. The additional objective function is added to optimize the stability of the rescheduling activities, and obtain a more optimal new scheduling for the disruptions.

Rolling Horizon Dynamic Scheduling Strategy
The rolling horizon (RH) dynamic scheduling strategy is a specific manifestation principle of RH optimization in predictive control. Unlike the traditional optimization methods (proactive scheduling strategy [28], robust execution strategy [29]), the basic method of RH dynamic strategy involves dividing the support activities into multiple scheduling windows based on the arrival baseline scheduling sequence. The RH window can be continuously updated along with the scheduling time. A number of activities are selected and scheduled from activities waiting for processing in an activities window. The relevant operational information for carrier aircraft rescheduling is updated. Then, the other activities in the next RH window are selected. Then, activities in the RH window are scheduled again, and a new decision is made. The procedure is repeated until all of the support operations have been finished. In the RH dynamic scheduling strategy, the global scheduling optimization requirement is relaxed, and the local optimal scheduling can be implemented. The RH dynamic scheduling strategy has been researched in some problems, including a job shop scheduling problem [39], an Earth observing satellites scheduling problem [40], and a yard crane scheduling problem [41,42]. By comparing the results with the traditional method, these papers verified that the dynamic rolling horizon (RH) strategy can provide a positive contribution to improve the efficiency of dynamic scheduling and effectively adjust to the baseline schedule. However, there has not yet been any research on RCPSP, especially the carrier aircraft dynamic scheduling problem by the RH dynamic scheduling strategy.
The key to the RH dynamic scheduling strategy is selecting an appropriate rolling strategy. In the carrier aircraft dynamic scheduling problem, the periodic and event-driven RH scheduling strategies are designed to reschedule the update supporting activities window in a fixed period or whenever the activity that is about to occur gets disrupted. Machine breakdown, operators downsizing in operational crews, and support tasks that are added, changed, or removed are considered disruption events. The time deviation of each incomplete activity after disruptions occur is checked, and whether to perform a rolling rescheduling is decided. The traditional event-driven dynamic scheduling strategy makes it easy to ignore the condition that the schedule can buffer partial disturbance and produce unnecessary rescheduling. The event-driven strategy is improved by building a profit and loss model as seen in Equation (13) to get the optimum rescheduling.
The optimization procedure of the RH dynamic scheduling modeling is described as follows.
Step 1. The proactive scheduling strategy is used to create a static schedule using the heuristic algorithm without considering the dynamic scheduling environment. The starting time and ending time can be predetermined in the proactive schedule.
Step 2. The time window is set to choose the activities. The RH strategy is applied. Multiple simple static schedules are generated by periodic RH scheduling strategy. The detail of the dynamic periodic RH scheduling strategy is shown in Figure 2a. In this step, if all of the activities in the current planning horizon are completed, it should be rolled to the next planning horizon. If several existing or new activities are generated simultaneously by different resource stations and operational crews, they should only be rolled into one period.
Step 3. The event-driven RH scheduling strategy is applied from the disruption start time. The new RH window will be set if the disruption occurs (e.g., machine breakdown) and rescheduling should be performed. In contrast, the latest plan completion time of all of the incomplete activities is set as the ending time. The details of the event-driven RH scheduling strategy are shown in Figure 2b.
Step 4. The rolling stoppage rule is set. If the latest completion time in the rescheduling of all of the activities occurs, the rolling process needs to be terminated. schedule. However, there has not yet been any research on RCPSP, especially the carrier aircraft dynamic scheduling problem by the RH dynamic scheduling strategy.
The key to the RH dynamic scheduling strategy is selecting an appropriate rolling strategy. In the carrier aircraft dynamic scheduling problem, the periodic and event-driven RH scheduling strategies are designed to reschedule the update supporting activities window in a fixed period or whenever the activity that is about to occur gets disrupted. Machine breakdown, operators downsizing in operational crews, and support tasks that are added, changed, or removed are considered disruption events. The time deviation of each incomplete activity after disruptions occur is checked, and whether to perform a rolling rescheduling is decided. The traditional event-driven dynamic scheduling strategy makes it easy to ignore the condition that the schedule can buffer partial disturbance and produce unnecessary rescheduling. The event-driven strategy is improved by building a profit and loss model as seen in Equation (13) to get the optimum rescheduling.
The optimization procedure of the RH dynamic scheduling modeling is described as follows.
Step 1. The proactive scheduling strategy is used to create a static schedule using the heuristic algorithm without considering the dynamic scheduling environment. The starting time and ending time can be predetermined in the proactive schedule.
Step 2. The time window is set to choose the activities. The RH strategy is applied. Multiple simple static schedules are generated by periodic RH scheduling strategy. The detail of the dynamic periodic RH scheduling strategy is shown in Figure 2a. In this step, if all of the activities in the current planning horizon are completed, it should be rolled to the next planning horizon. If several existing or new activities are generated simultaneously by different resource stations and operational crews, they should only be rolled into one period.
Step 3. The event-driven RH scheduling strategy is applied from the disruption start time. The new RH window will be set if the disruption occurs (e.g., machine breakdown) and rescheduling should be performed. In contrast, the latest plan completion time of all of the incomplete activities is set as the ending time. The details of the event-driven RH scheduling strategy are shown in Figure  2b.
Step 4. The rolling stoppage rule is set. If the latest completion time in the rescheduling of all of the activities occurs, the rolling process needs to be terminated.  In an RH window, the scheduling procedure will go through four states based on the current scheduling time: (i) a new task; (ii) waiting tasks; (iii) running tasks; and (iv) finished tasks. In detail, a new task will be generated in the current RH window from the waiting tasks; it should be run and become the finished tasks. Then, another new task is scheduled again through the same procedure. The detail of the dynamic RH scheduling strategy is shown in Figure 3. In an RH window, the scheduling procedure will go through four states based on the current scheduling time: (i) a new task; (ii) waiting tasks; (iii) running tasks; and (iv) finished tasks. In detail, a new task will be generated in the current RH window from the waiting tasks; it should be run and become the finished tasks. Then, another new task is scheduled again through the same procedure. The detail of the dynamic RH scheduling strategy is shown in Figure 3.
In the periodic RH scheduling strategy, the number of RH scheduling and the system adaptability to dynamic factors are determined by the size of time window ∆T. If the ∆T is too small, the amount of computation is reduced, but it considers less global information, and can lead to a decline in global performance. If ∆T is too large, the computation time may increase by the heuristic algorithm, but the final performance may enhance the global solution. No fixed standard for the setting of ∆T existed. In this paper, the ∆T is specified according to the general characteristics of the scheduling problem and the scheduling algorithm efficiency. We will make an intensive discussion in the Section 5 to get an appropriate value in the RH scheduling strategy.  The pseudo-code of the RH dynamic scheduling strategy algorithm is described in Algorithm 1 Algorithm 1. Pseudo-code of rolling horizon dynamic scheduling strategy algorithm for carrier aircraft dynamic support scheduling under uncertain conditions. Input: The object network data, priority of support operations, resource restraint, time window Tn, and disruption type.

Algorithm for Carrier Aircraft Dynamic Scheduling
In the RCPSP, when the resource constraints and number of projects are small, some exact algorithms (e.g., branch and bound algorithm, linear programming-based algorithm) can be employed to get the scheduling. However, the carrier aircraft support operation problem, which is considered a multi-resource constraint multi-project scheduling problem, involves plenty of carrier aircraft and activities. For this case, a heuristic algorithm has been developed. In this paper, we use the dual population genetic algorithm (DPGA), which has been used for adaptive diversity control [43], and combine the heuristic algorithm with the RH strategy to solve the carrier aircraft dynamic scheduling problem.
The DPGA is a parallel genetic algorithm that is designed to improve the quality and diversity of the population. Firstly, encoding and decoding processes are set to get population and matching scheduling. The left and right populations proceed simultaneously with crossover, mutation, and local search processes. For the left population, right scheduling is made in the encoding and decoding processes. For the right population, left scheduling is made in the encoding and decoding processes. The original coding is corrected by decoding the end time of the scheduling solution, and the elite population is reserved. The pseudo-code of the DPGA with a local search strategy is described in Algorithm 2 The details are clearly expressed in the next section.

Encoding and Decoding
In the RCPSP research, the task list encoding method is more efficient to get the scheduling results, and the chromosome with a two-dimensional matrix is designed. X = [x 1 , x 2 , x 3 , ..., x k ]; here, x k is (i, j), i represents the number of different carrier aircrafts (n), j represents the activities (m) satisfied to the procedure constraints, and m × n represents the total activities (see Figure 4).

Encoding and Decoding
In the RCPSP research, the task list encoding method is more efficient to get the scheduling results, and the chromosome with a two-dimensional matrix is designed. X = [x1, x2, x3, ..., xk]; here, xk is (i, j), i represents the number of different carrier aircrafts (n), j represents the activities (m) satisfied to the procedure constraints, and m × n represents the total activities (see Figure 4).
(1,1) (2,1) (4,1) (2,3) (1,4) (3,1) (  The chromosome coding example in Figure 4 shows the process of carrier aircraft scheduling. The decoding can make the chromosome into a corresponding scheduling solution in the algorithm. The start time, finish time, and resource allocation of different activities can be achieved through the decoding process. Two kinds of schedule generation schemes-the serial schedule generation scheme (SSGS) and the parallel schedule generation scheme (PSGS)-are used in the decoding process. Two allocation rules are set in this paper regarding the minimum accumulated processing time first (MAPTF) for the operational crews, and the minimum total processing time remaining (MTPTR) for the covering resource stations. In the first step, we use the SSGS method to allocate the resource; two allocation rules (MAPTF and MTPTR) are used for the operational crews and resource stations. The start time and finish time of each activity can be scheduled by the designed strategies. In the second step, the PSGS is used to minimize δ after the disruption occurs by considering the start time and finish time of each activity. In each RH window, the parallel process can modify the reschedule close to the baseline schedule without disruption. Finally, the new schedule is generated for the resource allocation after the disruption occurs.

Fitness Evaluation and Parent Selection
The fitness evaluation strategy is adopted to get smaller values of the objective functions corresponding to smaller values of the fitness function. The robustness of the solution is reduced by avoiding the improper selection of the fitness function. The fitness function in the optimization procedure is defined as follows: (14) Here, N represents the population size, si represents the location of chromosomes i in the population, and ∆P represents the selective pressure which is linear ranking from one to two.
The parent selection strategy is aimed at creating the offspring for the next generation population to ensure the population diversity. A roulette approach is used in this paper through choosing different chromosomes among the current population.
Here, P(xj) represents the selection probability of each individual, and f(xj) represents the fitness of each individual. A series of random numbers (e.g., i) between 0 and 1 are generated. If the number i is located in the cumulative probabilities between two individuals, the individual with a larger fitness will be selected in the new population with higher cumulative probability. The chromosome coding example in Figure 4 shows the process of carrier aircraft scheduling. The decoding can make the chromosome into a corresponding scheduling solution in the algorithm. The start time, finish time, and resource allocation of different activities can be achieved through the decoding process. Two kinds of schedule generation schemes-the serial schedule generation scheme (SSGS) and the parallel schedule generation scheme (PSGS)-are used in the decoding process. Two allocation rules are set in this paper regarding the minimum accumulated processing time first (MAPTF) for the operational crews, and the minimum total processing time remaining (MTPTR) for the covering resource stations. In the first step, we use the SSGS method to allocate the resource; two allocation rules (MAPTF and MTPTR) are used for the operational crews and resource stations. The start time and finish time of each activity can be scheduled by the designed strategies. In the second step, the PSGS is used to minimize δ after the disruption occurs by considering the start time and finish time of each activity. In each RH window, the parallel process can modify the reschedule close to the baseline schedule without disruption. Finally, the new schedule is generated for the resource allocation after the disruption occurs.

Fitness Evaluation and Parent Selection
The fitness evaluation strategy is adopted to get smaller values of the objective functions corresponding to smaller values of the fitness function. The robustness of the solution is reduced by avoiding the improper selection of the fitness function. The fitness function in the optimization procedure is defined as follows: Here, N represents the population size, s i represents the location of chromosomes i in the population, and ∆P represents the selective pressure which is linear ranking from one to two.
The parent selection strategy is aimed at creating the offspring for the next generation population to ensure the population diversity. A roulette approach is used in this paper through choosing different chromosomes among the current population.
Here, P(x j ) represents the selection probability of each individual, and f (x j ) represents the fitness of each individual. A series of random numbers (e.g., i) between 0 and 1 are generated. If the number i is located in the cumulative probabilities between two individuals, the individual with a larger fitness will be selected in the new population with higher cumulative probability.

Crossover and Mutation
In order to avoid illegal results with procedure constraint, the one-point crossover strategy with a modification strategy is adopted. The crossover steps are described as follows.
Step 1. Generate the crossover position (a) and select the parent chromosomes x 1 i and x 1 j through the crossover probability.
Step 2. Interchange the supporting sequence of the parent chromosomes x 1 i and x 1 j before the position (a), and obtain the new x 2 i and x 2 j chromosomes.
Step 3. Choose the sequence gen of the x 1 j chromosomes after position (a), and rearrange them according to the x 1 i order to get the new chromosome x 3 i . The x 3 j chromosome can be also obtained through the same method. The process of crossover is shown in Figure 5.
Step 1. Generate the crossover position (a) and select the parent chromosomes 1 i x and 1 j x through the crossover probability.
Step 2. Interchange the supporting sequence of the parent chromosomes 1 x chromosome can be also obtained through the same method. The process of crossover is shown in Figure 5.
Step 1. Select the carrier aircraft i through the selective probability P in the chromosomes (X), and then get the activity sequence (A) of the selected carrier aircraft in the chromosomes.
Step 2. Select a series support sequence (S) in A and record the mutation location.
Step 3. Reschedule the selected support activities by the serial and parallel constraint, and get the new activity sequence (S').
Step 4. Insert the rescheduling sequence (S') into the original chromosome (X). The inserted location is randomly in the mutation location.

Local Search Strategy and Dual Population Genetic Algorithm
In order to enhance the global optimization speed of d, a local search strategy is introduced to improve the search efficiency and avoid premature optimization results. The local search strategy is added to get the local search results and select the local optimal individual by a simulated annealing strategy in the population after a global search for the crossover and mutation. The pseudo-code of the local search algorithm is described in Algorithm 3. The mutation strategy is used to maintain the diversity of the population; the traditional strategies based on the insertion or interchange mutation strategy can only generate a smaller neighborhood mutation range. In this paper, a new neighborhood structure is designed to get a new adaptive mutation strategy, which is adapted for the mutation probability (P i ).
Here, P m i and P n i represent the maximum and minimum value of P i , while G i represents the diversity of population, G max = max{G 1 , G 2 , ..., G n }.
The mutation steps are described as follows.
Step 1. Select the carrier aircraft i through the selective probability P in the chromosomes (X), and then get the activity sequence (A) of the selected carrier aircraft in the chromosomes.
Step 2. Select a series support sequence (S) in A and record the mutation location.
Step 3. Reschedule the selected support activities by the serial and parallel constraint, and get the new activity sequence (S').
Step 4. Insert the rescheduling sequence (S') into the original chromosome (X). The inserted location is randomly in the mutation location.

Local Search Strategy and Dual Population Genetic Algorithm
In order to enhance the global optimization speed of d, a local search strategy is introduced to improve the search efficiency and avoid premature optimization results. The local search strategy is added to get the local search results and select the local optimal individual by a simulated annealing strategy in the population after a global search for the crossover and mutation. The pseudo-code of the local search algorithm is described in Algorithm 3.

Experimental Results and Analysis
In this section, experiments of the RH scheduling strategy using the DPGA (Dwyer Instruments, Inc., Michigan, IN, USA) with a local search strategy for the aircraft carrier operations are described in detail. The experiments were performed using a PC with two Intel(R) Core(TM) i5-4258U CPU @ 2.4 GHz processors and 4 GB RAM (Intel cooperation, Santa Clara, CA, USA). The algorithm has been coded in MATLAB 2017(a) software (The MathWorks, Inc., Natick, MA, USA). All of the instances were solved by the general genetic algorithm (GA), improved genetic algorithm with local search named Memetic algorithm [22], different evaluation algorithm (DE) [23], and DPGA. The computational results were compared and analyzed to test the algorithms' performance. Finally, a comparison was conducted between the proposed approach RH scheduling strategy in this paper and the static reactive rescheduling strategy after distributions occurred in the support operations.

Problem Classification and Initial Data Set
During the daily operations, an aircraft has a fixed order of tasks. We take the experimental case study of the first wave attack of the typical mission for the carrier aircraft operation scheduling on the flight deck with a series of supporting activities. Five types of carrier aircraft, including the warning aircraft, antisubmarine aircraft, attack aircraft, electronic warfare aircraft, and refueling aircraft, are researched to be supported before takeoff in the flight deck. In order to describe the problems from the current carrier aircraft support operations, and define the scope of the study as well as clearly define the scheduling problem, the support operations were considered as MRCMPSP, and some assumptions were made in this section as follows: (i) All of the support operational crews and resource stations can be available at the beginning of all of the activities; (ii) The non-renewable resources (e.g., oil, gas, weapon, etc.) supplied by the resource station are sustainable supplies; (iii) The support activities of each carrier aircraft cannot be changed in the static scheduling; (iv) When disruptions occur in the operational process, the support time of the disruption activities becomes longer for the maintained process or operator; (v) The setup time of each activity and transferring time between adjacent activities are negligible.

Parameter Setting for the Heuristics Algorithm
A series of parameters for the heuristics algorithms were determined experimentally through several tests. The population size and iterations had been tested in the previous literature [18]. In this paper, the population size was set as 50. The maximum evolution and mutation generation was set as 100 generations. Based on the computation results of several tests, the crossover probability of the population was set as 0.8. The mutation probability of the population was set as 0.2. The local search mutation probability was 0.1. The general GA and DE algorithms were designed based on the above algorithm without a local search strategy and double schedule strategy. The Memetic algorithm is designed by improved genetic algorithm with a local search strategy.

Experimental Results Analysis for the Heuristics Algorithms
Due to the randomness of the results, each heuristics algorithm proposed in the experimental is run 30 times. Three instances are proposed in the research. Instance 1: Five carrier aircrafts (Nos. 2, 3, 9, 10, 12), n = 5. Instance 2: Nine carrier aircrafts (Nos. 2,3,4,5,8,9,10,11,12), n = 9. Instance 3: 13 carrier aircrafts (Nos. 1-13), n = 13. The objects are the makespan (M), average results (A), and variance, which are calculated with different wave carrier aircrafts. The final convergence gen (CG) can be also obtained. The results of the three instances are shown in Table 3. In the case of the smaller scale for the aircraft first wave attack (Instance 1), the four algorithms can achieve the same optimal results. When the scale increases, the difference among the four algorithms' performance increases. The advantages of DPGA are highlighted. The evolutionary convergence curves of the four algorithms for 13 carrier aircrafts and nine carrier aircrafts can be achieved in Figure 6.
From a comparative analysis of the results from Table 2 and Figure 6, it can be seen that the proposed DPGA algorithm not only has strong global searching ability, it also has a more stable and faster convergence speed to global optimal solutions. The local search strategies integrated in the Memetic algorithm can improve the diversity of the population and increase the search performance of the optimal results. When the number of carrier aircrafts increases, the results showed that the global optimal scheduling can be obtained faster and better by adopting the bidirectional schedule strategy in the DPGA algorithm by adaptively adjusting the crossover and mutation parameters.

Scheduling and Resource Allocation without RH Strategy
In the flight deck, the commanders most concerned with the operability and optimality of the schedule. The static schedules are calculated by the DPGA algorithm to obtain the support resource allocation without an RH strategy. The static scheduling Gantt charts of the operational crews and resource stations in Instance 3 are shown in Figures 7 and 8. The vertical axis represents the number of the supporting operational crew and resource station.

Scheduling and Resource Allocation without RH Strategy
In the flight deck, the commanders most concerned with the operability and optimality of the schedule. The static schedules are calculated by the DPGA algorithm to obtain the support resource allocation without an RH strategy. The static scheduling Gantt charts of the operational crews and resource stations in Instance 3 are shown in Figures 7 and 8. The vertical axis represents the number of the supporting operational crew and resource station. L p l k represents the lth operational crew of the kth major, L r l k represents the lth support equipment of the kth resource station, and I i − j represents the ith carrier aircraft number for the jth activity.

Dynamic Scheduling Parameters Analysis of Periodic RH Strategy
In Section 3, the size of the RH window was discussed, which was closely related to the carrier aircraft scheduling problems, and had a great influence on the RH scheduling results. It was necessary to select the appropriate size of the RH window before the rolling mechanism was triggered. In order to get a better window size, we selected a different size of the time window for Instance 3. Each size of the time window in the periodic RH scheduling strategy was calculated 10 times in each experiment. We then recorded the window size (WS), roll times (R), makespan (M), each window's computational time (WT), the total computational time (TT), the average computational time (AT), and finally, each window's convergence gen (CG). Table 4 shows the optimum computational results.  Table 4 shows the relationships between the window size and the computational results. When the time of the WS is too little, R increases. In each RH window, only a small portion of the activities are considered to get the local optimal scheduling. When the WS was set as 15 min, the convergence results can be obtained in the first gen because of its small computation scales. The final results considered less global optimal scheduling. When the WS increases, the number of activities involved in the waiting scheduling window increases, and the computational scale and time increased. A large rolling WS can reduce the number of rolling windows. An excessive number of activities in a window could increase the computation time of a single window schedule, and the final convergence gen also appeared later, but there was not an obvious variation in the total computational time. In order to

Dynamic Scheduling Parameters Analysis of Periodic RH Strategy
In Section 3, the size of the RH window was discussed, which was closely related to the carrier aircraft scheduling problems, and had a great influence on the RH scheduling results. It was necessary to select the appropriate size of the RH window before the rolling mechanism was triggered. In order to get a better window size, we selected a different size of the time window for Instance 3. Each size of the time window in the periodic RH scheduling strategy was calculated 10 times in each experiment. We then recorded the window size (WS), roll times (R), makespan (M), each window's computational time (WT), the total computational time (TT), the average computational time (AT), and finally, each window's convergence gen (CG). Table 4 shows the optimum computational results.  Table 4 shows the relationships between the window size and the computational results. When the time of the WS is too little, R increases. In each RH window, only a small portion of the activities are considered to get the local optimal scheduling. When the WS was set as 15 min, the convergence results can be obtained in the first gen because of its small computation scales. The final results considered less global optimal scheduling. When the WS increases, the number of activities involved in the waiting scheduling window increases, and the computational scale and time increased. A large rolling WS can reduce the number of rolling windows. An excessive number of activities in a window could increase the computation time of a single window schedule, and the final convergence gen also appeared later, but there was not an obvious variation in the total computational time. In order to achieve a more efficient dynamic schedule, the WS as 25 min was selected to balance the rolling times (R) and each window's computational time (WT). Figure 9 shows the convergence curves in the different RH windows. achieve a more efficient dynamic schedule, the WS as 25 min was selected to balance the rolling times (R) and each window's computational time (WT). Figure 9 shows the convergence curves in the different RH windows. Figure 9. The convergence curves of the dual population genetic algorithm (DPGA) in different RH windows. Figure 9 shows that the periodic RH strategy can make the calculation easier to converge, because the number of waiting scheduling activities in a single RH window is reduced, which is less than the static scheduling. Different numbers of carrier aircraft were set to make a comparison and obtain the support operational results under the same conditions by the DPGA algorithm. Table 5 shows the comparison results with and without periodic RH scheduling for different waves of carrier aircraft. The experimental results in Table 5 show that the total computational time (TT) of the periodic RH dynamic scheduling is a little shorter than the static scheduling results. However, the computational time of each RH window (WT) decreased greatly. The reduced computational time makes the scheduling easier and more able to cope with the dynamic environment. It was found that the total computational time (TT), each window's computational time (WT), and finally the convergence gen (CG) of the three experiments obtained from the proposed approach were better than those obtained from the static rolling horizon approach. The global optimal scheduling may be lost by the RH dynamic scheduling strategy. Moreover, the makespan and computational time of the proposed approach was acceptable. The results show that the periodic RH dynamic scheduling strategy is superior for solving large-scale carrier aircraft support scheduling problems, and the RH dynamic scheduling strategy, which closely approached an actual situation, was proven to be suitable for carrier aircraft scheduling.

Results for the Disruptions by Event-Driven RH Scheduling Strategy
In this section, the event-driven RH scheduling strategy was selected to generate a recovery scheduling for the disruptions. The size of the recovery time window was also set as 25 min. The DPGA algorithm was used to reoptimize the recovery schedule in each RH window. Every time a disruption occurred, the RH window was selected again, and generated a recovery scheduling by the DPGA algorithm with the same computer configuration and similar parameters. If another disruption occurred in the recovery time window, the recovery scheduling should be revised again.  Figure 9 shows that the periodic RH strategy can make the calculation easier to converge, because the number of waiting scheduling activities in a single RH window is reduced, which is less than the static scheduling. Different numbers of carrier aircraft were set to make a comparison and obtain the support operational results under the same conditions by the DPGA algorithm. Table 5 shows the comparison results with and without periodic RH scheduling for different waves of carrier aircraft. The experimental results in Table 5 show that the total computational time (TT) of the periodic RH dynamic scheduling is a little shorter than the static scheduling results. However, the computational time of each RH window (WT) decreased greatly. The reduced computational time makes the scheduling easier and more able to cope with the dynamic environment. It was found that the total computational time (TT), each window's computational time (WT), and finally the convergence gen (CG) of the three experiments obtained from the proposed approach were better than those obtained from the static rolling horizon approach. The global optimal scheduling may be lost by the RH dynamic scheduling strategy. Moreover, the makespan and computational time of the proposed approach was acceptable. The results show that the periodic RH dynamic scheduling strategy is superior for solving large-scale carrier aircraft support scheduling problems, and the RH dynamic scheduling strategy, which closely approached an actual situation, was proven to be suitable for carrier aircraft scheduling.

Results for the Disruptions by Event-Driven RH Scheduling Strategy
In this section, the event-driven RH scheduling strategy was selected to generate a recovery scheduling for the disruptions. The size of the recovery time window was also set as 25 min. The DPGA algorithm was used to reoptimize the recovery schedule in each RH window. Every time a disruption occurred, the RH window was selected again, and generated a recovery scheduling by the DPGA algorithm with the same computer configuration and similar parameters. If another disruption occurred in the recovery time window, the recovery scheduling should be revised again.
For a single disruption of the second carrier aircraft, the eighth activity was chosen randomly to analyze the possible impacts of the disruption. The disruption made the resource unavailable due to resource breakdown or the operators reducing in one operational crew, and prolonged the support time of the disruption activity to 19 min. The event-driven RH scheduling strategy was triggered. The DPGA algorithm was used to calculate the recovery makespan and obtain the new resource allocation. The Gantt chart of the operational crews by periodic RH scheduling strategy without disruption was shown in Figure 10. The recovery scheduling of the operational crews for the disruption by event-driven RH scheduling strategy is shown in Figure 11. For a single disruption of the second carrier aircraft, the eighth activity was chosen randomly to analyze the possible impacts of the disruption. The disruption made the resource unavailable due to resource breakdown or the operators reducing in one operational crew, and prolonged the support time of the disruption activity to 19 min. The event-driven RH scheduling strategy was triggered. The DPGA algorithm was used to calculate the recovery makespan and obtain the new resource allocation. The Gantt chart of the operational crews by periodic RH scheduling strategy without disruption was shown in Figure 10. The recovery scheduling of the operational crews for the disruption by event-driven RH scheduling strategy is shown in Figure 11. Figure 10. Gantt chart of optimal support personnel allocation by periodic RH scheduling strategy. Figure 11. Gantt chart of optimal support personnel allocation by event-driven RH scheduling strategy. Figure 10. Gantt chart of optimal support personnel allocation by periodic RH scheduling strategy.
A comparison between Figures 10 and 11 show that the priorities of all of the activities are satisfied. The event-driven RH scheduling strategy can generate a recovery scheduling by the DPGA algorithm. When a disruption occurred, another method can be selected to obtain a complete rescheduling result by the reactive rescheduling strategy. In order to analyze the performance of the event-driven RH scheduling strategy, a comparison between the event-driven RH scheduling strategy and the reactive rescheduling strategy was made. Three kinds of disruptions instances were set. Instance 1: A single disruption (the support time of the eighth activity of the second carrier aircraft is prolonged to 19 min). Instance 2: Two disruptions (the support time of the eighth activity of the second carrier aircraft is prolonged to 19 min, and the support time of the 14th activity of the ninth carrier aircraft is prolonged to 15 min with the increase of weapon number). Instance 3: A series of disruptions make the inertial alignment support time of all of the aircraft increase 3 min because of the flight deck environment. Table 6 shows the comparison of makespan (M), total computation time (TT), and completion time cost (δ) calculated by different scheduling strategies.
In Table 6, the reactive rescheduling strategy can also get rescheduled. It considered more regarding the global optimization, but also increased the computation time and obtained more complexity in the activity variation. The event-driven RH rescheduling result could obtain a smaller rescheduling makespan, and the new strategy gave more consideration to the earliness and lateness penalty of the supporting activities. Comparative analysis proved that the event-driven RH rescheduling strategy could obtain a better balance between the computation and the scheduling objectives. It could also obtain a better response to different disruption conditions (e.g., machine breakdown, operator change, dynamic deck environment) and reduce the computation time for recovering the schedules in the event of disruptions illustrated by numerical experiments. The Gantt chart of the scheduling activities by RH recovery scheduling strategy can provide a convenient guidance to the carrier aircraft support operations, and make the rescheduling more suitable for the dynamic operational environment of the carrier flight deck. Figure 10. Gantt chart of optimal support personnel allocation by periodic RH scheduling strategy. Figure 11. Gantt chart of optimal support personnel allocation by event-driven RH scheduling strategy. Figure 11. Gantt chart of optimal support personnel allocation by event-driven RH scheduling strategy. activity. A periodic and event-driven RH scheduling strategy combined with multiple heuristic algorithms (GA, DE, Memetic, DPGA) was presented to solve the MRCMPSP. The approach developed in this paper can enable better decisions for real-time disruption recovery scheduling.
The RH scheduling strategy inspired by RH predictive control technology for a continuous manufacture system was presented to adapt the dynamic flight deck environment. The appropriate size of the RH window could balance the rolling times and computational time. The RH dynamic scheduling method, which was better than the reactive rescheduling, not only reduced the problem size, it could also effectively adjust the baseline scheduling in a reasonable computational time and avoid the unnecessary scheduling with effective resource allocation.
A DPGA algorithm was proposed. The activity list encoding method was set in the chromosome with a two-dimensional matrix. A new adaptive crossover and mutation strategy based on the subtopology structure was designed to improve the global search ability. A double schedule for the leftward and rightward populations was integrated with alternating iterations to improve the convergence speed and obtain a more efficient solution in the search space. The computational results have shown that our approach was effective in solving the scheduling problem. The method in this paper can also be extended to other RCPSP such as aircraft, ship, and job shops. In the future, we can make an important extension regarding more developed dynamic scheduling methods for large projects and multimodal research. Studies may further consider more multi-objective optimization methods when different disruptions occur within carrier aircraft scheduling problems.
Author Contributions: P.Y. contributed significantly to establish an integer programming mathematical model and design a periodic and event-driven rolling horizon scheduling strategy for the carrier aircraft dynamic scheduling. W.H. contributed to determine the topic of this paper and analyze the results of the experiments; X.S. contributed to propose the solution for the carrier aircraft scheduling problems and design the dual population genetic algorithm. J.L. contributed to collect the data and improve the writing of paper. J.S. contributed to provide the background of this study and search the literature.