Abstract

The aircraft landing problem (ALP) is an NP-hard problem; the aim of ALP is to minimize the total cost of landing deviation from predefined target time under the condition of safe landing. In this paper, the multiple runways case of the static ALP is considered and a hybrid metaheuristic based on bat algorithm is presented to solve it. Moreover, four types of landing time assignment strategies are applied to allocate the scheduling time, and a constructed initialization is used to speed up the convergence rate. The computational results show that the proposed algorithm can obtain the high-quality and comparable solutions for instances up to 500 aircrafts, and also it is capable of finding the optimal solutions for many instances in a short time.

1. Introduction

Airport runway scheduling optimization is an ongoing challenge for air traffic controllers. The increasing demand is a challenge, which leads to many airports and routes are congested. Although investment in infrastructure may increase capacity at airports, it is an effective solution to improve planning and scheduling on current infrastructure. The aircraft landing Problem (ALP) is a kind of typical NP-hard problem in airport runway scheduling optimization [1]. The ALP consists of determining an optimal schedule of landing aircrafts on runways and assigning the landing time of each arriving aircraft. The objective is to minimize the total cost of landing deviation from predefined target time under the condition of safe landing. A predefined time window and separation time requirements with other aircraft must meet.

The first-come first-served (FCFS) is one of the most common solving methods for ALP, especially, in the single runway situation. A detailed review of published work addressing the ALP can be found in [13]. Generally speaking, for ALP, those methods can be broadly classified into three categories: exact methods (e.g., dynamic programming [4], branch-and-bound [1], and branch-and-price [5]), queueing theory [6], and heuristic or metaheuristic. Metaheuristic includes genetic algorithms [7], ant colony optimization [8], simulated annealing [9], scatter search and bionomic algorithms [2], cellular automata optimization [10], and other hybrid metaheuristics [9, 11]. Briskorn and Stolletz resent integer programming models an aircraft landing problems with aircraft classes [12].

Recently, more and more metaheuristics inspired by nature or social phenomenon are proposed and these algorithms are increasingly applied to different fields. The bat algorithm (BA) is one of the most popular algorithms, which is inspired by the intelligent echolocation behavior of microbats when they are foraging [13]. Many researchers applied BA to solve various optimization problems. For example, Gandomi et al. focus on solving constrained optimization tasks [14]. Yang and Gandomi apply BA to solve many global engineering optimizations [15]. Mishra at al. use BA to update the weights of a functional link artificial neural network classifier, a model proposed for classification [16]. Meanwhile, some researchers have improved BA and applied it to various optimization problems. Xie et al. proposed a bat algorithm based on differential operator and the Lévy flights trajectory (DLBA) to solve function optimization and nonlinear equations [17]. Wang et al. proposed a new bat algorithm with mutation (BAM) to solve the uninhabited combat air vehicle (UCAV) path planning problem [18]. In this paper, the multiple runways case of the static ALP is considered; a hybrid metaheuristic based on bat algorithm (HBA, for short) is presented to solve it.

The rest of this paper is organized as follows. Section 2 presents the mathematical model of ALP and original bat algorithm. Hybrid metaheuristic based on bat algorithm is proposed in detail to solve multiple runways aircraft landing problem in Section 3. The experimental results of the HBA and comparisons with other previous algorithms are shown in Section 4. In the last section, we conclude this paper and point out some future work.

2. Problem Definitions and Bat Algorithm

2.1. The Mathematical Formulation of ALP

The ALP aims at finding the best arrangement of sequences, runway, and corresponding landing time for a given set of landing aircraft to minimize total cost by following separation requirements. To illustrate the mathematical formulation, some notations and decision variables are defined as follows.

Notations: = the number of planes; = the number of runways; = the separation time (0) between plane landing and plane landing, (where the planes and land on the same runways), ; = the separation time () between plane landing and plane landing, (where the planes and land on the different runways), ; = the target landing time (target time) of plane , ; = the earliest landing time of plane , ; = the latest landing time of plane , ; = the cost of late landing of plane , ; = the cost of early landing of plane , .

Decision variables:

The mathematical formulation of a mixed-integer programming for this problem is as follows [1, 2, 9]: Objective function (2) minimizes the total cost of landing deviation from target time. The constraints (3) ensure that the scheduled landing time of each aircraft lies within its time window; constraints (4) consider the landing order; either aircraft or must land first; separation constraints must be ensured by constraints (5), where the role of is to ensure that the equation is redundant if lands before ; the constraints (6) ensure that each aircraft should land on only one runway; when aircrafts and are assigned to land on the same runway, constraints (7) ensure that the runways assigned to aircrafts and are identical; additional constraints (8) are introduced in order to link and to the decision variable ; constraints (9) ensure that the decision variables , and are binary and the decision variables , and are nonnegative, respectively.

2.2. Bat Algorithm

The basic bat algorithm (BA) is a metaheuristic proposed by Yang in 2010 [13]. Under several ideal rules, the BA has the following steps.

Step 1. Initialize the bat population and other parameters, and these initial individuals are evaluated.

Step 2. Each bat individual randomly selects a certain frequency of sonic pulse, and the position of bat individual is updated according to their selected frequency. The formulas are as follows: where and represent the positions and velocities of individual in a D-dimensional search space at generation , is a random vector drawn from a uniform distribution, and is the current global best location (solution) which is located after comparing all the solutions among all the bats. Meanwhile, these new individuals are evaluated.

Step 3. If a random number is greater than its pulse emission rate , then a new position is generated around the current global best position for each individual, which is the equal to local search. The updating formula of local search adopts , where is a random number and is the average loudness of all the bats at current generation .

Step 4. If the local search is effective and its loudness is greater than a random number, then the new position is accepted and its pulse emission rate and loudness are updated, where pulse emission rate is increased and loudness is decreased. and are updated by , where , are constants.

Step 5. If the termination criterion is met, then the algorithm stops; otherwise repeat algorithm (go to Step 2).

In general, the bat algorithm has three procedures, position updating, local search, and decreasing the probability of local search. For the details of BA refer to [13].

3. Hybrid Metaheuristic Based on Bat Algorithm for ALP

Basic bat algorithm is a continuous optimization algorithm, which is successfully applied to solve real optimization problem [15, 17]. However, the standard continuous encoding scheme of BA cannot be used to solve ALP directly. Therefore, in order to solve aircraft landing problem effectively, HBA is proposed.

3.1. Solution Representation in HBA

In order to apply BA to ALP, the first step is to devise a suitable representation of the candidate solutions for this particular problem. Each individual is a sequence () with integer number (), where the integer number represents the runway and the length of this sequence is the number of aircrafts. For example, if we have three runways and ten aircrafts, the coded individual with integer is 1→3→2→2→3→2→1→2→1→3 Figure 1 shows that the aircrafts 1, 7, and 9 land on runway number 1, the aircrafts 3, 4, 6 and 8 land on runway number 2, the aircrafts 2, 5, and 10 land on runway number 3.

3.2. Landing Time Assignment

The assigned landing time (ALT) of each aircraft is the very important step in the ALP; the purpose is to reduce the total cost of penalty caused by all aircrafts. In this paper, the landing time is assigned based on the target landing time assigned to each aircraft. There are four types of assignment strategies carried out in the proposed algorithm: forward assignment strategy (FAS), backward assignment strategy (BAS), random forward assignment strategy (RFAS), and random backward assignment strategy (RBAS). For each kind of assignment strategy, firstly, all aircrafts are found out on each runway, and the target landing time of these aircrafts is sorted in ascending order, namely, , where is the number of aircrafts on this runway.(i)FAS: for each two sorted aircrafts and on a runway, the ALT is and , separately. If ; then , otherwise .(ii)BAS: for each two sorted aircrafts and on a runway, the ALT is and , separately. If ; then , otherwise .(iii)RFAS: for each two sorted aircrafts and on a runway, the ALT is and , separately. is rounded down to the nearest integer between and . If , then .(iv)BFAS: for each two sorted aircrafts and on a runway, the ALT is and , separately. is rounded down to the nearest integer between and . If , then .

The assigned landing time is effective just while the all constraints (3)–(9) are satisfied, and the four kinds of total cost are compared; the best total cost is used as the objective function value.

3.3. Initialization Construction

The initialization of a population is usually performed by randomly selecting a runway from the available runways for each aircraft. However, the target landing time of aircraft is ordered, and the time window must ensure considering the safety. So, a preprocessing is performed to improve the performance of HBA in the initialization construction.

In initialization, individuals are generated, where is population size. For each individual, all target landing time is sorted in an ascending order; namely, . The first aircraft lands on a runway randomly, for each two sorted aircrafts and , if , and then aircraft is allocated to other runway, namely, aircrafts and on different runways. Otherwise, the aircraft is allocated to the runway that aircraft lands on. The initialization repeats until the individuals are generated.

According to the experiments performed, this initialization construction can develop an initial schedule of landing aircrafts which has a very good quality. However, to derive near-optimal solutions, this initial schedule should be improved using the bat algorithm provided in Section 3.4.

3.4. Hybrid Bat Algorithm

In original bat algorithm framework, the idea is that, firstly, the bat individual randomly selects a certain frequency of sonic pulse, and the position of bat individual is updated according to its selected frequency; secondly, if a random number is greater than its pulse emission rate , then a new position is generated around the current global best position for each individual, which is equal to local search; at last, if the local search is effective and its loudness is greater than a random number, then the new position is accepted, and its pulse emission rate and loudness are updated, where pulse emission rate is increased and loudness is decreased. In general, the bat algorithm has three procedures: position updating, local search, and decreasing the probability of local search.

In this paper, the frequency is a runway, . The position updating is different from continuous bat algorithm. The position updating is used to assign the landing sequence, which is performed as follows: (i)select a frequency randomly, namely; select a runway randomly; (ii)select an aircraft randomly on selected runway; then assign this aircraft to other runway.

There is an example used to illustrate the procedure in Figure 2. If the frequency and the second aircraft is selected, then, this aircraft is assigned to runway number 3.

For the local search part, this procedure is controlled by pulse emission rate . The is equivalent to the probability of performing local search, and the is updated by where denotes the th generation is the maximal generation. The rate is similar to sigmoid function. The purpose of the local search is to enhance the solution generated, and the operation is performed on the current global best individual in bat algorithm. In this paper, two types of local search are presented: the swap and loop sub-sequence inserting (LSI).

The purpose of swap is mildly mutating the current global best individual, so that an improved solution can be found out around the current optimal solution. The swap is illustrated in Figure 3, where the third and tenth components are randomly chosen to be exchanged; note that the two selected aircrafts land on different runways. Thus, the value of the third component is changed from 2 to 3, while the value of the tenth component is switched from 3 to 2.

The LSI is a variant of inserting operation; the purpose is to mutate the current global best individual in a large extent, so that the diversity of population can be ensured. It can effectively avoid prematurity and greatly improve efficiency of global search. The LSI is illustrated in Figure 4; a start point is randomly chosen (ninth component) and a random length of subsequence is determined (5), so the sub-sequence can be determined (1→3→1→3). A random insert point is chosen in remainder sub-sequence (third, fifth components); then the selected sub-sequence is inserted into remainder sub-sequence before insert point.

The local search systematically explores different neighborhood structures. The swap and LSI are preformed according to the pulse emission rate . In other words, if a random number is greater than the , the swap is performed; otherwise, the LSI is performed.

The loudness of bat individual determines the accepted probability a solution generated by local search in original bat algorithm. Meanwhile, it also dominates the updating of pulse emission rate and loudness in continuous bat algorithm. However, in this paper, a runway balance (RB) operation is performed according to the value of loudness for each individual.

The intention of RB operation is to balance the load of each runway. Firstly, the aircrafts are counted on each runway; an aircraft selected randomly on runway with maximum aircrafts is assigned to a runway with minimum aircrafts. If the amount of aircrafts on runway (maximum aircrafts or minimum aircrafts) is equal, then a runway is selected randomly. This process is stopped until the difference of aircrafts amount on each runway is not more than one.

The loudness is updated by (12) where is a constant and initial value of . If a random number is less than its loudness , then the RB operation is performed; otherwise, each aircraft is assigned to a random runway.

The iterative process is repeated until the termination criterion is met; Algorithm 1 shows the pseudo-code of HBA based on the framework of bat algorithm for ALP. The lines 1–3, the bat population and other parameters are initialized (the initialization of population uses a method described in Section 3.3), and these initial individuals are evaluated (Section 3.2 detailedly described this procedure). In lines 5–9, the individuals are updated by selecting frequency (this part corresponds to the position updating of BA; this method is described in Section 3.4), and these new individuals are evaluated. Lines 10–15 show the local search and these solutions generated by local search are evaluated. In lines 16–24, the runway balance operation is carried out. Lines 25-26 are the judgment of termination criterion and the output of results.

(1) Initialize the ps, , bat population and other parameters;
(2) Construct initial bat population;  // (3.3 Initialization construction)
(3) Assign landing time and evaluate each individual; // (3.2 Landing time assignment)
(4) repeat
(5)  for   :ps do
(6)    Determine frequency ;
(7)    Update each bat individual;
(8)  end
(9)  Assign landing time and evaluate each individual; // (3.2 Landing time assignment)
(10) if     then
(11)  Carry out swap local search operation;
(12) else
(13)  Carry out LSI local search operation;
(14) end
(15) Assign landing time and evaluate each individual; // (3.2 Landing time assignment)
(16) Compute loudness of each individual by (12);
(17) for   :ps do
(18)   if     then
(19)   Carry out RB operation; // Runway balance operation
(20)   else
(21)   Assign each aircraft to a random runway;
(22)   end
(23) end
(24) Assign landing time and evaluate each individual; // (3.2 Landing time assignment)
(25) until  
(26) Output result and plot

4. Simulation Results and Comparisons

The simulation experiment is extensively investigated by a large number of benchmark instances; these well-studied problems are taken from the web OR-Library (last update: June 2012, http://people.brunel.ac.uk/~mastjjb/jeb/info.html), a reference site which contains detailed information regarding a large number of benchmark instances. In this paper, the whole 13 instances from OR-Library are selected; these instances have been widely used as benchmarks to certify the performance of algorithms by many researchers [2, 9].

All computational experiments are conducted with MATLAB 2012a on a 3.0 GHz Athlon PC with 2.0 GB memory. There are two kinds of termination criterion for different instances. For instances where the value of optimal (exact) solution () is known, the algorithm is repeated until the objective function value is equal to the ; if the objective function value is greater than the when the maximum generation is met, then the algorithm also is terminated. For instances where the value of is not known, the termination criterion is set as maximum generation .

4.1. Sensitivity Analysis

Since performance is affected by the settings of the parameter values used in metaheuristics, a sensitivity analysis is conducted to examine the effect of different parameter values on the proposed HBA. Two parameters, that is, population size and parameter , are used to investigate the performance with respect to different values, which are based on the average results obtained from instances involving from 10 to 50 aircrafts, and each instance run ten times. The principal figures of merit for comparison of different parameter values are the average percentage gap (%) associated with the best solution found and the average computational time CTavg in seconds for exact solution is reached. The percentage gap (%) is measurement criteria referenced [2]. Figures 5 and 6 show the statistical result, where is shown on the left -axis and CTavg is shown on the right -axis and different parameter values ( and ) are listed in on the horizontal -axis.

The performance of the HBA in terms of different population numbers is shown in Figure 5. It shows that better results can be obtained with a larger population. However, it does not improve significantly when the value of is equal to or greater than 10. On the other hand, the computational time increases steadily when the population rises.

Figure 6 illustrates the performance effect of the HBA with a decreasing value. It indicates that the average solution quality deteriorates when the value of decreases gradually. In some cases, increasing the value above 0.9 may actually worsen the average objective value. This is probably because the search is extremely random and RB operation is carried out rarely.

4.2. Comparisons of Results

Based on the results of the sensitivity analysis, the parameter values are set in the proposed HBA (i.e., = 10, = 0.9) for comparison with other algorithms for solving the ALP with multiple runways that were proposed and tested to be valid in previous studies. The computational results obtained are shown in Tables 1 and 2. In Tables 1 and 2, for each problem, the instance (Ins); the number of aircrafts (); the number of runways (); the value of optimal solution (); the value of the best-known solution () if the optimal solution is not known; the objective function value () obtained and the percentage gap (%) associated with the best solution found over the 15 replications and the average execution time () in seconds for 15 replications. Note that in order to compare the results, the is set zero in accordance with the previous literature, where is calculated on the basis of or ; . One complication is that for some problem where or is zero, the percentage gap is defined as zero if and only if the best solution found as zero is also zero, otherwise it is undefined (nd).

Table 1 presents results for a set of instances involving from 10 to 50 aircrafts. SS is scatter search, the bionomic algorithm is marked as BA1 [2], and IACA is improved ant colony algorithm [8]; heuristic is an effective heuristic algorithm in [1], FCFS is first-come first-served, and the result is reference [2]. According to Table 1, the percentage gap of SS and BA1 is better than HBA; however, the average execution time of SS and BA1 is longer than the of HBA and the average execution time of HBA only expends 0.43 seconds; by contrast, the SS and BA1 expend 6.4 and 7.7 seconds, respectively. The comparison of results between HBA and heuristic shows the solutions obtained by HBA are superior to the solutions obtained by heuristic. Meanwhile, the average execution time is approximate between HBA and heuristic. Comparing with IACA and FCFS, it is evidently shown that the HBA is effective.

Table 2 presents results for a set of instances involving from 100 to 500 aircrafts. The termination criterion is set as maximum generation . The IACA and heuristic did not select these instances for testing. From Table 2, even for the larger instances, the HBA found that optimal solutions in several cases are prominent. We can clearly find that the percentage deviation from the best-known solutions is negative, which indicates the solutions found by HBA are better than the best-known solutions. The average percentage gap of HBA is for this group of instances; however, the average percentage gap of SS, BA1, and FCFS is positive and is much greater than the of HBA. On the other hand, the average execution time expended by HBA is much lesser than the average execution time of SS and BA1 expended.

Figure 7 illustrates the performance of the HBA, the SS, the BA1, the IACA, and the heuristic with respect to the computational time. HBA and heuristic perform almost the same on instances up to 50 aircrafts. For the larger instances up to 500 aircrafts, the computational time of HBA is shortened observably, which also demonstrates that the HBA has a faster convergence rate.

5. Conclusions

In this paper, we considered the multiple runways aircraft landing problem with the objective of minimizing the total deviation of landing time from the target time. In order to solve the larger instances involving up to 500 aircraft and multiple runways, a hybrid metaheuristic based on bat algorithm (HBA, for short) has been implemented. The HBA includes a problem-dependent initialization construction, and several local search operations are integrated into the framework of bat algorithm. The computational results of the HBA show that the proposed algorithm is very effective and competitive and can obtain solutions with high quality for instances up to 500 aircrafts in a short time. Moreover, the landing time assignment of each aircraft is a key for solving ALP; several excellent assignment strategies need to be presented in our further work; meanwhile, the aircraft take-off problem (ATP) in airport runway scheduling problem also is our future work.

Acknowledgment

This work is supported by National Science Foundation of China under Grant no. 61165015, Key Project of Guangxi Science Foundation under Grant no. 2012GXNSFDA053028, Key Project of Guangxi High School Science Foundation under Grant no. 20121ZD008, the Funded by Open Research Fund Program of Key Lab of Intelligent Perception and Image Understanding of Ministry of Education of China under Grant no. IPIU01201100, and the Innovation Project of Guangxi Graduate Education under Grant no. YCSZ2012063.