Abstract

Path planning for uninhabited combat air vehicle (UCAV) is a complicated high dimension optimization problem, which mainly centralizes on optimizing the flight route considering the different kinds of constrains under complicated battle field environments. Original bat algorithm (BA) is used to solve the UCAV path planning problem. Furthermore, a new bat algorithm with mutation (BAM) is proposed to solve the UCAV path planning problem, and a modification is applied to mutate between bats during the process of the new solutions updating. Then, the UCAV can find the safe path by connecting the chosen nodes of the coordinates while avoiding the threat areas and costing minimum fuel. This new approach can accelerate the global convergence speed while preserving the strong robustness of the basic BA. The realization procedure for original BA and this improved metaheuristic approach BAM is also presented. To prove the performance of this proposed metaheuristic method, BAM is compared with BA and other population-based optimization methods, such as ACO, BBO, DE, ES, GA, PBIL, PSO, and SGA. The experiment shows that the proposed approach is more effective and feasible in UCAV path planning than the other models.

1. Introduction

Uninhabited combat aerial vehicle (UCAV) is one of inevitable trends of the modern aerial weapon equipment which develop in the direction of unmanned attendance and intelligence. Research on UCAV directly affects battle effectiveness of the air force and is fatal and fundamental research related to safeness of a nation. Path planning and trajectory generation is one of the key technologies in coordinated UCAV combatting. The flight path planning in a large mission area is a typical large scale optimization problem; a series of algorithms have been proposed to solve this complicated multiconstrained optimization problem, such as differential evolution [1], biogeography-based optimization [2, 3], genetic algorithm [4], ant colony algorithm [5] and its variant [6, 7], cuckoo search [8, 9], chaotic artificial bee colony [10], firefly algorithm [11, 12], and intelligent water drops optimization [13]. However, those methods can hardly solve the contradiction between the global optimization and excessive information.

In 1995, Storn and Price firstly proposed a novel evolutionary algorithm (EA): differential evolution (DE) [14], which is a new heuristic approach for minimizing possibly nonlinear and nondifferentiable continuous space functions. It converges faster and with more certainty than many other acclaimed global population-based optimization methods. This new method requires few control variables, which makes DE more robust and easy to use and lend itself very well to parallel computation.

First presented in [15], the bat-inspired algorithm or bat algorithm (BA) is a metaheuristic search algorithm, inspired by the echolocation behavior of bats with varying pulse rates of emission and loudness. The primary purpose of a bat’s echolocation is to act as a signal system to sense distance.

However, in the field of path planning for UCAV, no application of BA algorithm exists yet. In this paper, we use an original BA and an improved modified BA algorithm to solve UCAV path planning problem. Here, we add mutation operation in DE between bats to propose a new metaheuristic algorithm according to the principle of BA, and then an improved BA algorithm is used to search the optimal or suboptimal route with complicated multiconstraints. To investigate the feasibility and effectiveness of our proposed approach, it is compared with BA and other population-based optimization methods, such as ACO, BBO, DE, ES, GA, PBIL, PSO, and SGA under complicated combating environments. The simulation experiments indicate that our hybrid metaheuristic method can generate a feasible optimal route for UCAV more effectively than other population-based optimization methods.

The remainder of this paper is structured as follows. Section 2 describes the mathematical model in UCAV path planning problem. Subsequently, the principle of the basic BA is explained in Section 3, and then an improved BA with mutation for UCAV path planning is presented in Section 4 and the detailed implementation procedure is also described in this section. The simulation experiment is conducted in Section 5. Finally, Section 6 concludes the paper and discusses the future path of our work.

2. Mathematical Model in UCAV Path Planning

Path planning for UCAV is a new low altitude penetration technology to achieve the purpose of terrain following and terrain avoidance and flight with evading threat, which is a key component of mission planning system [16]. The goal for path planning is to calculate the optimal or suboptimal flight route for UCAV within the appropriate time, which enables the UCAV to break through the enemy threat environments, and self-survive with the perfect completion of mission. In our work, we use the mathematical model in UCAV path planning in [1], which is described as follows.

2.1. Problem Description

Path planning for UCAV is the design of optimal flight route to meet certain performance requirements according to the special mission objective and is modeled by the constraints of the terrain, data, threat information, fuel, and time. In this paper, firstly the route planning problem is transformed into a D-dimensional function optimization problem (Figure 1).

In Figure 1, we transform the original coordinate system into new coordinate whose horizontal axis is the connection line from starting point to target point according to transform expressions shown as (1), where the point is coordinate in the original ground coordinate system ; the point is coordinate in the new rotating coordinate system ; is the rotation angle of the coordinate system. One has

Then, we divide the horizontal axis into equal partitions and then optimize vertical coordinate on the vertical line for each node to get a group of points composed by vertical coordinate of points. Obviously, it is easy to get the horizontal abscissas of these points. We can get a path from start point to end point through connecting these points together, so that the route planning problem is transformed into a -dimensional function optimization problem.

2.2. Performance Indicator

A performance indicator of path planning for UCAV mainly contains the completion of the mandate of the safety performance indicator and fuel performance indicator, that is, indicators with the least threat and the least fuel.

Minimum of performance indicator for threat

Minimum of performance indicator for fuel Then the total performance indicators for UCAV route where is the threat cost for each point on the route; is fuel cost for each point on the path which depends on path length (in this paper, ); is balanced coefficient between safety performance and fuel performance, whose value is determined by the special task UCAV performing; that is, if flight safety is of highly vital importance to the task, then we choose a larger , while if the speed is critical to the aircraft task, then we select a smaller .

2.3. Threat Cost

When the UCAV is flying along the path , the total threat cost generated by threats is calculated as follows: To simplify the calculations (as shown in Figure 2), each path segment is discretized into five subsegments and the threat cost is calculated on the end of each subsegment. If the distance from the threat point to the end of each subsegment is within threat radius, we can calculate the responding threat cost according to where is the length of the subsegment connecting node and node; is the distance from the point on the subsegment to the th threat; is threat level of the th threat.

As fuel cost related to flight length, we can consider, for simplicity, and fuel cost of each edge can be expressed by .

3. Bat Algorithm (BA)

The bat algorithm is a new swarm intelligence optimization method, in which the search algorithm is inspired by social behavior of bats and the phenomenon of echolocation to sense distance.

3.1. Mainframe of BA

In [17], for simplicity, bat algorithm is based on idealizing some of the echolocation characteristics of bats, which are following approximate or idealized rules.(1) All bats apply echolocation to sense distance, and they always “know” the surroundings in some magical way. (2) Bats fly randomly with velocity and a fixed frequency at position , varying wavelength , and loudness to hunt for prey. They can spontaneously accommodate the wavelength (or frequency) of their emitted pulses and adjust the rate of pulse emission , depending on the proximity of their target. (3) Although the loudness can change in different ways, it is supposed that the loudness varies from a minimum constant (positive) to a large .

Based on these approximations and idealization, the basic steps of the bat algorithm (BA) can be described as shown in Algorithm 1. In BA, each bat is defined by its position , velocity , frequency , loudness , and the emission pulse rate in a -dimensional search space. The new solutions and velocities at time step are given by where is a random vector drawn from a uniform distribution. Here is the current global best location (solution) which is located after comparing all the solutions among all the bats. Generally speaking, depending on the domain size of the problem of interest, the frequency is assigned to and in practical implementation. Initially, each bat is randomly given a frequency which is drawn uniformly from [, ].

Begin
 Step 1: Initialization. Set the generation counter ; Initialize the population of NP bats
    randomly and each bat corresponding to a potential solution to the given problem;
    define loudness , pulse frequency and the initial velocities ; set
    pulse rate .
Step 2: While the termination criteria is not satisfied or  t MaxGeneration do
      Generate new solutions by adjusting frequency, and updating velocities
      and locations/solutions [(7)]
      if (rand ) then
       Select a solution among the best solutions;
       Generate a local solution around the selected best solution
      end if
      Generate a new solution by flying randomly
      Generate a new solution by flying randomly
      if (rand and ) then
       Accept the new solutions
       Increase and reduce
      end if
      Rank the bats and find the current best
       ;
 Step 3: end while
 Step 4: Post-processing the results and visualization.
End.

For the local search part, once a solution is selected among the current best solutions, a new solution for each bat is generated locally using random walk where is a scaling factor which is a random number, while is the average loudness of all the bats at time step .

The updates of the velocities and positions of bats have some similarity to the procedure in the standard particle swarm optimization [18] as in essence controls the pace and range of the movement of the swarming particles. To some degree, BA can be considered as a balanced combination of the standard particle swarm optimization and the intensive local search controlled by the loudness and pulse rate.

Furthermore, the loudness and the rate of pulse emission update accordingly as the iterations proceed as shown in where and are constants. In essence, is similar to the cooling factor of a cooling schedule in the simulated annealing [19]. For simplicity, we set in this work.

3.2. Algorithm BA for UCAV Path Planning

In BA, the standard ordinates are inconvenient to solve UCAV path planning directly. In order to apply BA to UCAV path planning, one of the key issues is to transform the original ordinate into rotation ordinate by (1).

Fitness of bat at position is determined by the threat cost by (4), and the smaller the threat cost, the smaller the fitness of bat at position . Each bat is encoded by -dimensional deciding variables. And then, we use BA to optimize the path planning to get the best solution that is optimal flight route for UCAV. At last, the best solution is inversely converted to the original ordinates and output. The algorithm BA for UCAV path planning is shown as Algorithm 2.

Begin
 Step 1: Initialization. Set the generation counter ; Initialize the population of NP bats
    randomly and each bat corresponding to a potential solution to the given
   problem; define loudness , pulse rate , pulse frequency and the initial
   velocities .
 Step 2: Generating rotation coordinate system. Transform the original coordinate system
   into new rotation coordinate whose horizontal axis is the connection line from
   starting point to target point according to (1); convert
   battlefield threat information to the rotation coordinate system and divide the axis
    into equal partitions. Each feasible solution, denoted by
   P , is an array indicated by the composition of coordinates
   which are the floating-point numbers
Step 3: Evaluate the threat cost J for each bat in by (4)
Step 4: while The halting criteria is not satisfied or MaxGeneration do
      Generate new solutions by adjusting frequency, and updating velocities
      and locations/solutions [(7)]
      if (rand ) then
       Select a solution among the best solutions;
       Generate a local solution around the selected best solution
      end if
      Generate a new solution by flying randomly
      if (rand < and ) then
       Accept the new solutions
       Increase and reduce
      end if
      Rank the bats and find the current best
      
Step 5: end while
Step 6: Inversely transform the coordinates in final optimal path into the original
   coordinate, and output
End.

4. Bat Algorithm with Mutation (BAM)

The differential evolution (DE) algorithm, proposed by Storn and Price [14], is a simple evolutionary algorithm (EA) which generates new candidate solutions by combining the parent individual and a few other individuals of the same population. A candidate substitutes the parent only if it has better fitness. This is a rather greedy selection scheme which often overtakes traditional EAs. Advantages of DE are easy implementation, simple structure, speed, and robustness.

In general, the standard DE algorithm is adept at exploring the search space and locating the region of global optimal value, but it is not relatively good at exploiting solution. On the other hand, standard BA algorithm is usually quick at the exploitation of the solution though its exploration ability is relatively poor. Therefore, in this paper, a hybrid metaheuristic algorithm by inducing mutation in differential evolution into bat algorithm, so-called bat algorithm with mutation (BAM), is used to solve the path planning for UCAV. The difference between BAM and DE is that the mutation operator is used to improve the original BA generating new solution for each bat with a probability originally using random walk. In this way, this method can explore the new search space by the mutation of the DE algorithm and exploit the population information with BA and therefore can overcome the lack of the exploitation of the DE algorithm. In the following, we will show the algorithm BAM which is a variety of DE and BA. Firstly, we describe a mainframe of BAM, and then an algorithm BAM for UCAV path planning is shown.

4.1. Mainframe of BAM

The critical operator of BAM is the hybrid differential evolution mutation operator, which composes the mutation operation in differential evolution with the BA. The core idea of the proposed hybrid mutation operator is based on two considerations. First, poor solutions can take in many new used features from good solutions. Second, the mutation operator of DE can improve the exploration of the new search space. In this way, we composed mutation operation into BAM which modifies the solutions with poor fitness in order to add diversity of the population to improve the search efficiency.

For bat algorithm, as the search relies entirely on random walks, a fast convergence cannot be guaranteed. Described here for the first time, a main modification of adding mutation operator is made to the BA, including two minor modifications, which are made with the aim of speeding up convergence, thus making the method more practical for a wider range of applications but without losing the attractive features of the original method.

The first modification is that we use fixed frequency and loudness instead of various frequency and . Similar to BA, in BAM, each bat is defined by its position, velocity , the emission pulse rate , the fixed frequency , and loudness in a -dimensional search space. The new solutions and velocities at time step are given by where is the current global best location (solution) which is located after comparing all the solutions among all the bats. In our experiments, we make . Through a series of simulation experiments on path planning for UCAV in Section 5.2, it was found that setting the parameter of pulse rate to 0.6 and the loudness to 0.95 produced the best results.

The second modification is to add mutation operator in an attempt to increase diversity of the population to improve the search efficiency and speed up the convergence to optima. For the local search part, once a solution is selected among the current best solutions, a new solution for each bat is generated locally using random walk by (8) when is larger than pulse rate , that is, , where is a random real number drawn from a uniform distribution; while when , we use mutation operator in DE updating the new solution to increase diversity of the population to improve the search efficiency by where is the mutation weighting factor, while , , and are uniformly distributed random integer numbers between 1 and NP. Through testing on path planning for UCAV in Section 5.2, it was found that setting the parameter of mutation weighting factor to 0.5 in (11) and scaling factor to 0.1 in (4) produced the best results.

Based on above-mentioned analyses, the mainframe of the bat algorithm with mutation (BAM) can be described as shown in Algorithm 3.

Begin
 Step 1: Initialization. Set the generation counter ; Initialize the population of NP
   bats P randomly and each bat corresponding to a potential solution to the
   given problem; define loudness ; set frequency and the initial velocities ;
   set pulse rate and weighting factor .
 Step 2: Evaluate the quality for each bat in determined by .
 Step 3: While the termination criteria is not satisfied or MaxGeneration do
      Sort the population of bats P from best to worst by order of quality f for each bat;
      for    : NP (all bats) do
        Select uniform randomly
        
        
        
        if (rand ) then
          
        else
          
        end if
        Evaluate the fitness for the offspring , ,
        Select the offspring with the best fitness among the offsprings
          , ,
        if (rand ) then
          ;
        end if
      end for  
       ;
 Step 4: end while
 Step 5: Post-processing the results and visualization;
End.

4.2. Algorithm BAM for UCAV Path Planning

BAM can adapt to the needs of UCAV path planning, while optimization algorithms can improve the BA fast search capabilities and increase the search to the global possible optimum solution. Fitness for bat at position is represented by the objective function shown as (4) in UCAV path planning model, the smaller the threat value, the lower the fitness for bat at position .

Based on the above analysis, the pseudo code of improved BA-BAM for UCAV path planning is described as shown in Algorithm 4.

Begin
 Step 1: Initialization. Set the generation counter ; Initialize the population of NP bats
    randomly and each bat corresponding to a potential solution to the given
   problem; define pulse frequency ; set loudness , the initial velocities and
   pulse rate ; set weighting factor .
 Step 2: Generating rotation coordinate system. Transform the original coordinate
   system into new rotation coordinate whose horizontal axis is the connection
   line from starting point to target point according to (1);
   convert battlefield threat information to the rotation coordinate system and
   divide the axis into equal partitions. Each feasible solution, denoted
   by P , is an array indicated by the composition of
   coordinates which are the floating-point numbers
Step 3: Evaluate the threat cost J for each bat in P by (4)
Step 4: while The halting criteria is not satisfied or MaxGeneration do
      Sort the population of bats P from best to worst by order of threat cost
      for each bat;
      for    : NP (all bats) do
          Select uniform randomly
          
          
          
          if (rand ) then
            
          else
            
          end if
          Evaluate the fitness for the offsprings , ,
          Select the offspring with the best fitness among the offsprings
             , ,
          if (rand ) then
             ;
          end if
        end for  
     Evaluate the threat cost for each bat in by (4).
     Sort the population of bats from best to worst by order of threat cost
     for each bat;
      ;
Step 5: end while
Step 6: Inversely transform the coordinates in final optimal path into the original
   coordinate, and output
End.

5. Simulation Experiments

In this section, we look at the performance of BAM as compared with other population-based optimization methods, such as ACO, BBO, DE, ES, GA, PBIL, PSO, and SGA. Firstly, we compare performances between BAM and other population-based optimization methods on the different parameters the maximum generation Maxgen and the dimension of converted optimization function , and then we compare performances between BAM and BA on the different parameters loudness , pulse rate , weighting factor , and scaling factor (where and only for BAM).

To allow a fair comparison of running times, all the experiments were performed on a PC with an AMD Athlon(tm) 64 X2 Dual Core Processor 4200+ running at 2.20 GHz, 1024 MB of RAM, and a hard drive of 160 GB. Our implementation was compiled using MATLAB R2011b (7.13) running under Windows XP SP3. No commercial BBO tools or other population-based optimization tools were used in the following experiments.

5.1. General Performance of BAM

In this subsection, firstly we will present the supposed problem we use to test the performance of BAM. We use the parameters of battle field environments described as [1]. Supposed that there exists the following map information, UCAV flight from start point (10, 10) to end point (55, 100). In the flight course, there exist five threat areas. Their coordinates and corresponding threat radii are shown as in Table 1. Also, we set balanced coefficient between safety performance and fuel performance .

In order to explore the benefits of BAM, in this subsection we compared its performance on UCAV path planning problem with BA and eight other population-based optimization methods, which are ACO, BBO, DE, ES, GA, PBIL, PSO, and SGA. ACO (ant colony optimization) [20] is a swarm intelligence algorithm for solving computational problems which is based on the pheromone deposition of ants. Biogeography-based optimization (BBO) [2123] is a new evolutionary algorithm (EA) developed for global optimization which is a generalization of biogeography to EA. DE (differential evolution) [14] is a simple but excellent optimization method that uses the difference between two solutions to probabilistically adapt a third solution. An ES (evolutionary strategy) [24] is an algorithm that generally distributes equal importance to mutation and recombination, and that allows two or more parents to reproduce an offspring. A GA (genetic algorithm) [25] is a search heuristic that mimics the process of natural evolution. PBIL (probability-based incremental learning) [26] is a type of genetic algorithm where the genotype of an entire population (probability vector) is evolved rather than individual members. PSO (particle swarm optimization) [18, 27] is also a swarm intelligence algorithm which is based on the swarm behavior of fish, and bird schooling in nature. A stud genetic algorithm (SGA) [28] is a GA that uses the best individual at each generation for crossover.

Except an ad hoc explain, in the following experiments, we use the same MATLAB code and parameters settings for other population-based optimization methods in [21, 29].

To compare the different effects among the parameters Maxgen and , we ran 100 Monte Carlo simulations of each algorithm on the above UCAV path planning problem to get representative performances. For simplicity, we subtract 50 from the actual value; that is, if a value is 0.4419 in the following table, then its corresponding value 50.4419 is its true value. We must point out that we mark the best value with italic and bold font for each algorithm in Tables 25.

5.1.1. Effect of Maximum Generation: Maxgen

The choice of the best maximum generation of metaheuristic algorithm is always critical for specific problems. Increasing the maximum generation will increase the possibility of reaching optimal solution, promoting the exploitation of the search space. Moreover, the probability to find the correct search direction increases considerably. The influence of maximum generation is investigated in this sub-subsection. For all the population-based optimization methods, all the parameter settings are the same as above mentioned, only except for maximum generation Maxgen = 50, Maxgen = 100, Maxgen = 150, Maxgen = 200, and Maxgen = 250. The results are recorded in Tables 2, 3, 4, and 5 after 100 Monte Carlo runs. Table 2 shows the best minima found by each algorithm over 100 Monte Carlo runs. Table 3 shows the worst minima found by each algorithm over 100 Monte Carlo runs. Table 4 shows the average minima found by each algorithm, averaged over 100 Monte Carlo runs. Table 5 shows the average CPU time consumed by each algorithm, averaged over 100 Monte Carlo runs. In other words, Tables 2, 3, and 4 show the best, worst, and average performance of each algorithm, respectively, while Table 5 shows the average CPU time consumed by each algorithm.

From Table 2, we see that BAM performed the best on all the groups, while DE performed the second best on the 5 groups especially when Maxgen = 150, 200, and 250. Table 3 shows that PBIL was the worst at finding objective function minima on all the five groups when multiple runs are made, while the BAM was the best on all the groups in the worst values. Table 4 shows that BAM was the most effective at finding objective function minima when multiple runs are made, while DE and SGA performed the second best on the 5 groups, and GA and SGA similarly performed the third best on the 5 groups. Table 5 shows that PBIL was the most effective at finding objective function minima when multiple runs are made, performing the best on all the 5 groups. By carefully looking at the results in Tables 2, 3, and 4, we can recognize that the values for each algorithm are obviously decreasing with the increasing Maxgen, while the performance of BAM increases little with the Maxgen increasing from 200 to 250, so we set Maxgen = 200 in other experiments. In sum, from Tables 2, 3, 4, and 5 we can draw the conclusion that the more the generations are, the smaller the objective function value we can reach, while the CPU time consumes more. Moreover, BAM performs better than other population-based optimization methods for the UCAV path planning problem with different maximum generation.

5.1.2. Effect of Dimensionality:

In order to investigate the influence of the dimension on the performance of BAM, we carry out a scalability study comparing with other population-based optimization methods for the UCAV path planning problem with the dimensionality , , , , , , , and . The results are recorded in Tables 6, 7, 8, and 9 after 100 Monte Carlo runs. Table 6 shows the best minima found by each algorithm over 100 Monte Carlo runs. Table 7 shows the worst minima found by each algorithm over 100 Monte Carlo runs. Table 8 shows the average minima found by each algorithm, averaged over 100 Monte Carlo runs. Table 9 shows the average CPU time consumed by each algorithm, averaged over 100 Monte Carlo runs. In other words, Tables 6, 7, and 8 show the best, worst, and average performance of each algorithm, respectively, while Table 9 shows the average CPU time consumed by each algorithm.

From Table 6, we see that DE performed the best when , while BAM performed the best on the other groups when multiple runs are made. Table 7 shows that BA and ES were the worst when and , respectively, and PBIL was the worst at finding objective function minima on all the other groups when multiple runs are made, while the DE, SGA, and GA were the best when , 10, and 15, respectively, and BAM was the best on the other groups in the worst values. Table 8 shows that DE and SGA were the most effective when and 10, respectively, and BAM was the best on the other groups at finding objective function minima when multiple runs are made. Table 9 shows that PBIL was the most effective at finding objective function minima on all the groups. So, from the experimental results of this sub-subsection, we can conclude that the mutation operation between bats with a probability during the process of generating new solutions has the ability to accelerate BA in general; especially the improvements are more significant at higher dimensionality. With the higher dimension, we are not always getting the better results with consuming more time; furthermore, the result is good enough when . In sum, in other experiments we should make under the comprehensive consideration.

5.2. Influence of Control Parameter

In [15], Yang concluded that if we adjust the parameters properly so that BA can outperform GA, HS (harmony search), and PSO. The choice of the control parameters is of vital importance for different problems. To compare the different effects among the parameters , , , and ( and only for BAM), we ran 100 Monte Carlo simulations of BA and BAM algorithm on the above problem to get representative performances.

5.2.1. Loudness:

To investigate the influence of the loudness on the performance of BAM, we carry out this experiment comparing BA for the UCAV path planning problem with the loudness and fixed pulse rate . All other parameter settings are kept unchanged. The results are recorded in Tables 10, 11, 12, and 13 after 100 Monte Carlo runs. Table 10 shows the best minima found by BA and BAM algorithms over 100 Monte Carlo runs. Table 11 shows the worst minima found by BA and BAM algorithms over 100 Monte Carlo runs. Table 12 shows the average minima found by BA and BAM algorithms averaged over 100 Monte Carlo runs. Table 13 shows the average CPU time consumed by BA and BAM algorithms, averaged over 100 Monte Carlo runs. In other words, Tables 10, 11, and 12 show the best, worst, and average performance of BA and BAM algorithm, respectively, while Table 13 shows the average CPU time consumed by BA and BAM algorithms.

From Table 10, we obviously see that BAM performed better (on average) than BA on all the groups, and BA and BAM reach the worst values 9.6473 and 11.9280 when , respectively, while BA and BAM reach the best values 4.0888 and 0.7774 when , respectively, among the optima when multiple runs are made. Table 11 shows evidently that BAM performed better (on average) than BA on all the groups (except ), and BA as well as BAM reach the worst values 39.0584 and 38.6449 when and , respectively, while BA and BAM reach the best values 24.4673 and 8.8555 when and , respectively, among the worst values when multiple runs are made. Table 12 shows that BAM performed better (on average) than BA on all the groups, and BA and BAM reach the worst values 20.3072 and 20.2230 when , respectively, while BA and BAM reach the best values 11.1174 and 2.7086 when , respectively, among the mean values when multiple runs are made. Table 13 shows that BA was more effective at finding objective function minima when multiple runs are made, performing the best on all the groups. By carefully looking at the results in Tables 10, 11, and 12, we can recognize that the threat value for BA and BAM is decreasing with the increasing , and BA and BAM reach optima/minimum when is equal or very close to 1.0, while BA and BAM reach maximum when is equal or very close to 0. So, we set which is very close to 1.0 in other experiments. In sum, from Tables 10, 11, 12, and 13, we can conclude that the mutation operation between bats during the process of the new solutions updating has the ability to accelerate BA in general.

5.2.2. Pulse Rate:

To investigate the influence of the pulse rate on the performance of BAM, we carry out this experiment comparing with BA for the UCAV path planning problem with the pulse rate and fixed loudness . All other parameter settings are kept unchanged. The results are recorded in Tables 14, 15, 16, and 17 after 100 Monte Carlo runs. Table 14 shows the best minima found by BA and BAM algorithms over 100 Monte Carlo runs. Table 15 shows the worst minima found by BA and BAM algorithms over 100 Monte Carlo runs. Table 16 shows the average minima found by BA and BAM algorithms, averaged over 100 Monte Carlo runs. Table 17 shows the average CPU time consumed by BA and BAM algorithm, averaged over 100 Monte Carlo runs. In other words, Tables 14, 15, and 16 shows the best, worst, and average performance of BA and BAM algorithm respectively, while Table 17 shows the average CPU time consumed by BA and BAM algorithms.

From Table 14, we obviously see that BAM performed better (on average) than BA on all the groups, and BA and BAM reach the worst values 5.1353 and 0.8536 when , respectively, while BA and BAM reach the best values 1.3626 and 0.4591 when and , respectively, among the optima when multiple runs are made. Table 15 shows evidently that BAM performed better (on average) than BA on all the groups, and BA and BAM reach the worst value 30.9979 and 12.3230 when and , respectively, while BA and BAM reach the best values 17.8310 and 6.4524 when and , respectively, among the worst values when multiple runs are made. Table 16 shows that BAM performed better (on average) than BA on all the groups, and BA and BAM reach the worst mean values 11.1155 and 2.9290 when , respectively, while BA and BAM reach the best mean values 6.8803 and 0.7729 when , respectively, among the mean values when multiple runs are made. Table 13 shows that BA was more effective at finding objective function minima when multiple runs are made, performing the best on all the groups. By carefully looking at the results in Tables 14, 15, and 16, we can recognize that the threat value for BA and BAM varies little with the increasing , and BA and BAM reach mean optima/minima when is equal or very close to 0.6, while BA and BAM reach maximum when is equal or very close to 1.0. So, we set in other experiments. In sum, from Tables 14, 15, 16, and 17 we can conclude that the mutation operation between bats during the process of generating new solutions has the ability to accelerate BA in general.

5.2.3. Weighting Factor:

For the sake of investigating the influence of the weighting factor on the performance of BAM, we carry out this experiment for the UCAV path planning problem with the weighting factor and fixed scaling factor . All other parameter settings are kept unchanged. The results are recorded in Table 18 after 100 Monte Carlo runs. Columns 1, 2, and 3 in Table 18 show the best, worst, and average performances of BAM algorithm, respectively, while Column 4 in Table 18 shows the average CPU time consumed by BAM algorithm.

From Table 18, we can recognize that the threat values for BAM varies little with the increasing , and BAM reaches optimum/minimum on . So, we set in other experiments. From Table 18 we can draw the conclusion that BAM is insensitive to the weighting factor , so we do not have to fine-tune the parameter to get the best performance for different problems.

5.2.4. Scaling Factor:

For the sake of investigating the influence of the scaling factor on the performance of BAM, we carry out this experiment for the UCAV path planning problem with the factor scaling factor and fixed weighting factor . All other parameter settings are kept unchanged. The results are recorded in Table 19 after 100 Monte Carlo runs. Columns 1, 2, and 3 in Table 19 shows the best, worst, and average performances of BAM algorithms respectively, while Column 4 in Table 19 shows the average CPU time consumed by BAM algorithm.

From Table 19, we can recognize that the values for BAM vary little with the increasing , and BAM reaches optimum/minimum and the worst/maximum on and , respectively. So, we set in other experiments. From Table 19 we can draw the conclusion that BAM is insensitive to the scaling factor , so we do not have to fine-tune the parameter to get the best performance for different problems.

The simulation experiment performed in Sections 5.1 and 5.2 shows that the algorithm BAM we proposed performed the best but worst effectively when solving the UCAV path planning problem. From deep investigation, we can see that BAM cam reach minima when maximum generation Maxgen = 50 and population size , while other population-based optimization methods cannot achieve satisfactory result under this condition; that is, BAM needs fewer maximum generation, less population size, and less time than other population-based optimization methods when arriving to the same performance. In sum, the simulation implemented in Section 6 shows that the algorithm BAM we proposed performed the best and most absolutely effectively, and it can solve the UCAV path planning problem perfectly. Furthermore, comparing to other population-based optimization methods, the algorithm BAM is insensitive to the parameter loudness, pulse rate , weighting factor , and scaling factor , so we do not have to fine-tune the parameters , , , and to get the best performance for different problems.

5.3. Discussions

The BA algorithm is a simple, fast, and robust global optimization algorithm developed by X. S. Yang in 2010. However, it may lack the diversity of population between bats. Therefore, in this work, we add mutation operation between bats to the BA during the process of new solutions updating. And then, the BAM algorithm is proposed to solve the UCAV path planning. From the experimental results we can sum up the following:(i)Our proposed BAM approach is effective and efficient. It can solve the UCAV path planning problem effectively.(ii)The overall performance of BAM is superior to or highly competitive with BA and other compared state-of-the-art population-based optimization methods.(iii)BAM and other population-based optimization methods were compared for different maximum generations and the dimension. Under majority conditions, BAM is significantly substantial better than other population-based optimization methods.(iv)BAM and BA were compared for different loudness and pulse rate , weighting factor , and scaling factor . Under almost all the conditions, BAM is far better than BA.(v)The algorithm BAM is insensitive to the parameter loudness and discovery rate , weighting factor , and scaling factor , so we do not have to fine-tune the parameters , , , and to get the best performance for different problems.

6. Conclusion and Future Work

This paper presented a bat algorithm with mutation for UCAV path planning in complicated combat field environments. A novel type of BA model has been described for single UCAV path planning, and a modification is applied to mutate between bats during the process of the new generation generating. Then, the UCAV can find the safe path by connecting the chosen nodes while avoiding the threat areas and costing minimum fuel. This new approach can accelerate the global convergence speed while maintaining the strong robustness of the basic BA. The detailed implementation procedure for this improved metaheuristic approach is also described. Compared with other population-based optimization methods, the simulation experiments show that this improved method is a feasible and effective way in UCAV path planning. It is also flexible, in complicated dynamic battle field environments and pop-up threats are easily incorporated.

In the algorithm of UCAV path planning, there are many issues worthy of further study, and efficient route planning method should be developed depending on the analysis of specific combat field environments. Currently, the hot issue contains self-adaptive route planning for a single UCAV and collaborative route planning for a fleet of UCAVs. As the important ways of improving aircraft survivability, adaptive route planning should analyze real-time data under the uncertain and dynamic threat condition; even it can re-modify preplanned flight path to improve the success rate of completing mission. The difficulty of the collaborative route planning for a fleet of UCAVs exists in coordination between the various UCAVs, including the fleet formation, target distribution, arrival time constraint, and avoidance conflict, each of which is a complicated question worthy of further study. Our future work will focus on the two hot issues and develop new methods to solve problem in UCAV path planning and replanning.

Acknowledgments

This work was supported by State Key Laboratory of Laser Interaction with Material Research Fund under Grant no. SKLLIM0902-01 and Key Research Technology of Electric-Discharge Nonchain Pulsed DF Laser under Grant no. LXJJ-11-Q80.