1. 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.
2. Problem Description and Modeling
2.1. 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.
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.
2.2. Notation
• Sets
I set of carrier aircrafts, i = 1, …, I
Ji set of activities for the ith carrier aircrafts, j = 0, 1, …, Ji
Ji* 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
Lrk set of kth(k є Kr) supporting resource station
Lpk set of kth(k є Kp) supporting operational crew
Pij set of pre-constraint activities for the ith carrier aircraft jth activity
Rpkl set of the carrier aircraft support range by the kth(k є Kp) major lth(l є Lpk) operational crew
Rekl set of the carrier aircraft support range by the kth(k є Kr) type lth(l є Lrk) station
• Parameters
dij duration of activity j for the ith carrier aircraft
SXi start time for supporting the ith carrier aircraft
Sij start time of activity j for the ith carrier aircraft
T total planning horizon/upper bound of the project duration
rpijk demand number of kth operational crew for the ith carrier aircraft jth activity
rsijk demand number of kth space for the ith carrier aircraft jth activity
reijk demand number of kth equipment for the ith carrier aircraft jth activity
rwijk demand number of non-renewable resources for the ith carrier aircraft jth activity
• Decision variables
Cmax the maximum completion time of the activities
Xpijkl 1 if the kth station lth equipment is allocated to activity j for the ith carrier aircraft; 0 otherwise
Xeijkl 1 if the kth station lth equipment is allocated to activity j for the ith carrier aircraft; 0 otherwise
xijk 1 if the activity j for the ith carrier aircraft has been finished at the t moment; 0 otherwise
2.3. 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.
2.4. 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.
represents the start time of the incomplete activity j of carrier aircraft i after disruption, and Dij 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.
3. 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.
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.
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. Output: A dynamic scheduling project. 01: Generate a baseline static schedule by optimization algorithm. /*The pseudo-code of the optimization algorithm is given in the following Algorithm 2*/ 02: For each activity of carrier aircraft I waiting for operation in set Ji 03: RH←NULL; Finished Sn←NULL;/*Initialization*/ 04: For time window Tn = 1 to n, do 05: Select the timing of activities (An) in time window Tn; /*Tn is the nth time window*/ 06: For Ai ϵ An. Each activity that arrives before Tn does 07: If no disruption occurs 08: Add Ai to set RH; /*RH is the rolling horizon*/ 09: Sort all of the activities in set RH, and schedule each activity by optimization algorithm; /Algorithm 2*/ 10: Else if dynamic disruption occurs 11: Select the timing of activities (An) in a new time window for the set of the incomplete activities Ji*; 12: Add Ai to set RH; 13: Sort all of the unprocessed activities in set RH, and reschedule each activity by optimization algorithm; /*The pseudo-code of the optimization algorithm is given in the following Algorithm 2*/ 14: End if 15: Add activity Ai to set of finished Sn; 16: End for 17: Call Algorithm 2 in order to reschedule in RH; 18: End for 19: Update the scheduling decisions; 20: End for |
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.
4. 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.
Algorithm 2. The pseudo-code of the dual population genetic algorithm for carrier aircraft dynamic support scheduling under uncertain conditions. |
Input: The object network data Output: A project scheduling 01: Initialize [pop_left, pop_right]; 02: Decoding_left(chromosome[pop_left]), schedule_left([pop_left]); 03: Fitness[pop_left], evaluate(schedule_left[pop_left]); 04: For generation = 1 to GEN do 05: Select_parents(chromosome[pop_left], parents[pop_left]); 06: Crossover(parents[pop_left], children[pop_left]); 07: Mutation (children[pop_left]); 08: Decoding_left(chromosome[pop_left]), schedule_left([pop_left]); 09: Fitness[pop_left], evaluate(schedule_left[pop_left]); 10: Select local optimal individual[pop_left]; 11: Local search for the left schedule; 12: Update chromosome[pop_right]. Save elite[pop_left] 13: Select_parents(chromosome[pop_right], parents[pop_right]); 14: Crossover(parents[pop_right],children[pop_right]); 15: Mutation (children[pop_right]); 16: Decoding_right(chromosome[pop_right]), schedule_right([pop_right]); 17: Fitness[pop_right], evaluate(schedule_right[pop_right]); 18: Select local optimal individual[pop_right]; 19: Local search for the right schedule; 20: Update chromosome[pop_left] Save elite[pop_right]; 21: End for 22: Decoding_left(chromosome[pop_left]), schedule_left([pop_left]); 23: Return a best schedule; |
4.1. 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).
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.
4.2. 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, 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.
4.3. 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 and through the crossover probability.
Step 2. Interchange the supporting sequence of the parent chromosomes and before the position (a), and obtain the new and chromosomes.
Step 3. Choose the sequence gen of the
chromosomes after position (
a), and rearrange them according to the
order to get the new chromosome
. The
chromosome can be also obtained through the same method. The process of crossover is shown in
Figure 5.
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 (Pi).
Here, and represent the maximum and minimum value of Pi, while Gi represents the diversity of population, Gmax = max{G1, G2, ..., Gn}.
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.
4.4. 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.
Algorithm 3. The pseudo code of local search algorithm in the dual population genetic algorithm (DPGA). |
Input: The object network data, Output: Project scheduling 01: s←Generate initialized solution [pop]; 02: T←T0; 03: While termination conditions not met do; 04:s’←Pick random(pop(s)) 05: if f(s’) < f(s) then 06: s←s’;/*s’ replace s*/ 07: else 08: Accept s’ as a new solution with probability p; 09: end if 10: Update (T); 11: end while |