# A Novel UAV Path Planning Algorithm Based on Double-Dynamic Biogeography-Based Learning Particle Swarm Optimization

Authors: Yisheng Ji; Xinchao Zhao; Junling Hao
Journal: Mobile Information Systems
 (2022)

---

## Abstract

Particle swarm optimization (PSO), one of the classical path planning algorithms, has been considered for unmanned aerial vehicle (UAV) path planning more frequently in recent years. A large amount of studies on UAV path planning based on modified PSO have been reported. However, most UAV path planning algorithms still optimize only one kind terrain problem which is mountain terrain. At the same time, many modified PSO algorithms also have some problems, such as insufficient convergence and unsatisfactory efficiency. In this paper, six kinds of terrain functions of UAV path planning are proposed to simulate real-world application. The terrain functions contain city, village without houses, village with houses, mountainous area without houses, mountainous area with houses, and mountainous area with a huge building. Inspired by CLPSO and BLPSO, we proposed a new double-dynamic biogeography-based learning particle swarm optimization (DDBLPSO) algorithm to solve these problems. The double-dynamic biogeography-based learning strategy replacing the traditional learning mechanism from the personal and global best particles is used to select the learning particles. In this strategy, each particle will learn from the better one of two selected particles which are not worse than itself. However, one random component of particle will replaced by corresponding component of other particle if all components of the particle only learn from itself. In this way, particles sufficiently learn from better objects and maintain the ability of jumping out of local optimality. The superiority of our algorithm is verified with four relevant algorithms, a PSO variant, and a BBO variant on the benchmark suite of CEC2015. Real-world application demonstrates that the algorithm we proposed outperforms four relevant algorithms, a PSO variant, and a BBO variant both in small-scale problems and large-scale problems. This paper shows a good application of our novel algorithm.


---

## Body

## 1. Introduction

UAV path planning is designed in a space which represents environment experienced by UAV during its flight. The path is a link formed by the combination of all the points and the lines connecting them, and each path is a solution. Let populationX=X1,X2,…,XN, where N is population size and Xi is the ith solution. Every path has m points, and it does not include the starting and the end points. Xi=xi1,yi1,zi1;…;xiy,yiy,ziy;…;xim,yim,zim, where xiy,yiy,ziy is the coordinate of the jth point of the ith path. Solution is an m×3 matrix, and population is an m×3×N tensor. The space is divided into m+1 equal parts along X axis which ensures that the flight path goes from the starting point to the end point without forming a circle during halfway.UAV path planning is a multiobjective constraint problem, which is described as follows:(1)minfiX,i=1,2,…,m,cjX≤0,j=1,2,…,p,where fiX,i=1,2,…,m, are objective functions and cjX≤0,j=1,2,…,p, are constraints. We transformed the multiobjective constrained optimization into single-objective unconstrained optimization in order to simplify the problem. All objectives and constraints are multiplied by a weight coefficient and then added. Finally, the objective cost function is defined as equation (2) aiming to minimize the total cost.(2)F=∑i=1mWi×fi+∑j=1pWj+m×cj,where Wii=1,2,…,m+p are weight coefficients. In this paper, UAV aims to fly as short distance as possible, fly as low as possible, try not to cross danger zones as possible, and try not to cross the ground and buildings as possible. So, three objectives and one constraint are selected which are described as follows:(3)F=W1×flength+W2×faltitude+W3×fdanger+W4×ccollision,where W1,W2,W3,W4∈0,1 are weight coefficients, flength is a path function penalizing the longer paths, faltitude is an altitude function penalizing higher average altitudes, fdanger is a danger function penalizing the paths going through danger zones, and ccollision is a collision function penalizing the paths colliding with ground or buildings. flength, faltitude, fdanger are objective functions, and ccollision is a constraint function.Path function is used to penalize longer paths which are modelled as equation (4) in this paper.(4)flength=1−LP1P2Ltraj,where LP1P2 is the length of the line segment which connects the starting point P1 and the end point P2 and Ltraj is the actual length of the trajectory. This means that Ltraj is the length of a broken line connecting all points from the starting point to the end point. It is easy to get that flength∈0,1.Altitude function is used to penalize higher average altitudes which is modelled as equation (5) in this paper.(5)faltitude=Atraj−ZminZmax−Zmin,where Atraj is the average altitude and Zmin and Zmax are the upper and lower limits of the elevation in the search space. However, we usually choose a very low height rather than zero as the optimal choice which means that Zmin is a small positive number. It is easy to get faltitude∈0,1.Danger function is used to penalize the paths going through danger zones which is modelled as equation (6) in this paper.(6)fdanger=Ldanger∑i=1ndi,where Ldanger is the sum of the length of the subsections of the trajectory which go through danger zones, di is the diameter of the ith danger zone, and n is the number of danger zones. In this paper, danger zone usually means that radar can detect and is described as a hemispheric region. If fdanger>1, fdanger is set to be 1 to ensure fdanger∈0,1.Collision function is used to penalize the paths colliding with ground or buildings which is modelled as follows:(7)ccollision=0,Linfeasible=0,P+LinfeasibleLtraj,Linfeasible≠0,where Linfeasible is the total length of the subsections of the trajectory which travels below the ground or buildings, P is the penalty constant, and Ltraj is the length of the trajectory. It is easy to say that ccollision∈0∪​P,P+1. If cost function FXi is greater than P, it means that FXi is an infeasible solution.There are many modified PSO algorithms, and some of them have been applied to UAV path planning [1–10]. However, many PSO variants still have some problems like insufficient convergence and accuracy and unsatisfactory efficiency. In this paper, we proposed a novel double-dynamic biogeography-based learning particle swarm optimization (DDBLPSO) algorithm to solve these problems. The algorithm not only considers the problem of insufficient convergence and accuracy and unsatisfactory efficiency for global optimization but also can be applied to UAV path planning. The main contributions of our paper are summarized as follows.(i)
A novel double-dynamic biogeography-based learning strategy replacing the traditional learning mechanism is proposed. This strategy makes the utmost of the advantages of particles which only learn from particles that are not worse than themselves.(ii)
Six kinds of terrain functions are designed in UAV path planning.(iii)
The experiment results show that DDBLPSO demonstrates the best performance on UAV path planning with four other representative algorithms, a PSO variant, and a BBO variant in CEC2015 benchmark functions and UAV path planning.The remainder of the paper is organized as follows. Section2 gives the literature review. Section 3 introduces several existing algorithms such as PSO, BBO, CLPSO, and BLPSO. Section 4 shows the details of the proposed algorithm DDBLPSO. Section 5 presents simulation results for global optimization. Application in UAV path planning is elaborated in Section 6. Section 7 draws the conclusions.


## 2. Literature Review

Unmanned aerial vehicle (UAV) has been applied to many areas with the rapid progress of science and technology. Evolutionary algorithm-based methods solving the UAV path planning problem are always a hot topic. In [1], the authors proposed an evolutionary algorithm based on offline/online path planning for UAV navigation. Phase angle-encoded and quantum-behaved particle swarm optimization was proposed and applied to three-dimensional route planning for UAV [2]. Pehlivanoglu [3] introduced a new vibrational genetic algorithm which was enhanced by Voronoi diagram for path planning of autonomous UAV. An improved constrained differential evolution algorithm was introduced for UAV global route planning [4]. The algorithm demonstrates a good performance in terms of the solution quality, robustness, and the constraint-handling ability. A method was proposed to compare the planner performance by jointly employing several general and problem-specific quality indexes, which takes into account the complexity and particularities of the problem [5]. In [6], a novel predator-prey pigeon-inspired optimization (PPPIO) was proposed to solve the three-dimension path planning problem for unmanned combat air vehicle (UCAV) in dynamic environment. This algorithm mainly focuses on optimizing the flight route considering different types of constraints under complex combating environment. The modified wolf pack search (WPS) was applied to compute the quasi-optimal trajectories for the rotor wing UAVs in the complex three-dimensional (3D) spaces including the real and fake 3D spaces [7]. In [8], the authors proposed a constrained adaptive multiobjective differential evolution algorithm for bistatic SAR path planning. It generates multiple feasible paths for the UAV receiver with different trade-offs between navigation for UAV and bistatic SAR imaging performance. The authors compared genetic algorithm and particle swarm optimization for real-time UAV path planning in [9].Particle swarm optimization (PSO) [10] is one of the most commonly used algorithms to solve the problems of UAV path planning. In recent years, many improved PSO variants have emerged one after another. In [11], the authors put forward an adaptive particle swarm optimization (APSO) algorithm, in which two main steps are conducted to adaptively adjust the parameters when the swarm lies in a different evolutionary state (exploration, exploitation, convergence, and jumping out) in each generation. Then, an elitist learning strategy was used when the evolutionary state was classified as convergence state. Nickabadi et al.[12] studied on adaptive inertia weight and introduced a novel particle swarm optimization algorithm. Numerical experiments show that this algorithm is quite effective in adapting the value of w in the dynamic and static environments. Li and Yao [13] presented a new cooperative coevolving particle swarm optimization (CCPSO) algorithm to scale up particle swarm optimization algorithms in solving large-scale optimization problems (up to 2000 real-valued variables). Comprehensive learning particle swarm optimization (CLPSO) uses a learning strategy whereby all other particles' historical best information is used to update a particle's velocity [14]. In [15], the authors proposed a novel biogeography-based optimization algorithm with momentum migration and taxonomic mutation to deal with problems whose function values change dramatically or barely. In [16], the authors proposed an enhanced particle swarm optimization algorithm (pkPSO) by combining k-nearest neighbours (k-NN) with pattern search (PS). At the same time, the cooperative effect of k-NN and PS strategies was verified. A novel particle swarm optimization algorithm was proposed for parameter determination and feature selection of support vector machines [17]. A novel PSO-GA-based hybrid training algorithm with Adam optimization which performs well in training artificial neural networks was introduced by Yadav and Anubhav [18]. In [19], the authors presented a cellular learning automata-based bare bones PSO algorithm with maximum likelihood rotated mutations. The PSO technique was used to identify the uncertain physical parameters of a real vehicle ETC system [20]. In [21], the authors proposed a new particle swarm optimization algorithm with simple PID-based strategy, which has good global optimization ability. Biogeography-based optimization (BBO) is an algorithm that simulates biological migration to search optimal solution [22]. Biogeography-based learning strategy is a nice method for optimization. In [23], biogeography-based learning particle swarm optimization (BLPSO) uses a learning strategy based on migration of biogeography-based optimization and outperforms other representative algorithms. In [24], the authors introduced a hybrid differential evolution with biogeography-based optimization for global numerical optimization.


## 3. Relevant Algorithms

### 3.1. Particle Swarm Optimization (PSO)

Particle swarm optimization is a classical evolutionary computing technique which was firstly proposed by Eberhart and Kennedy [10]. Inspired from the study of the predation behaviour of birds, the main idea of PSO algorithm is sharing cooperation and information among individuals to find the optimal solution. PSO simulates birds in a flock by designing a massless particle, which only has velocity and position. Velocity represents how fast and which direction the particle moves along. Position represents where the particle is. For each particle, only the personal best experience and the global best experience of the entire swarm can be learned. Let xi=xi1,xi2,…,xiDT and vi=vi1,vi2,…,viDT denote the position and velocity of particle ii=1,2,…,N, respectively, where D is dimension of the initial space and N is population size. Let pbesti=pbesti1,pbesti2,…,pbestiDT and gbest=gbest1,gbest2,…,gbestDT be the personal best position of particle i and the global best position of the whole swarm. The update of velocity and position of the particle is indicated as follows:(8)vid=w∗vid+c1∗rand10,1∗pbestid−xid+c2∗rand20,1∗gbestd−xid,xid=xid+vid,where i=1,2,…,N;d=1,2,…,D; w is the inertia weight; c1 and c2 are the acceleration coefficients; and rand10,1 and rand20,1∈0,1 are uniform random numbers. The algorithm sets the maximum velocity to prevent the velocity from getting too large. The particle will be set as the border of initial region if it flies out of initial region.


### 3.2. Biogeography-Based Optimization (BBO)

In [22], the author proposed a new algorithm named biogeography-based optimization which solves optimization problems by simulating biological migration. In BBO, solution is also called as habitat, fitness of solution is called as habitat suitability index (HSI), and component of solution is called as suitable index variable (SIV). The main body of BBO is migration operation and mutation operation.Each habitatxii=1,2,…,N has two parameters to describe the migration, which are an immigration rate λi and an emigration rate μi. Both parameters are closely related to HSI. For high HSI habitat, there will be a high trend of outward migration. At this time, the emigration rate is high and the immigration rate is low due to the pressure of species competition. However, for low HSI habitat, the opposite is true. Assuming habitat xi currently accommodates Si species, Smax is the maximum number of species. Immigration rate λi and emigration rate μi are usually described as follows:(9)λi=I∗1−SiSmax,μi=E∗SiSmax,where I is the maximum immigration rate and E is maximum emigration rate. The component xidd=1,2,…,D of habitat xi will immigrate depend on immigration rate λi. The habitat xj is selected depending on emigration rate μj.The properties of the habitat such as HSI and the number of species may changes due to unexpected events. At the same time, mutation rate depends on species probability. According to biogeography, when the number of species in habitat is too large or too small, species probability is low. When the number of species in habitat is moderate, species probability is high. Mutation ratemi is described as follows:(10)mi=mmax∗1−PiPmax,where Pi is the species probability of xi decided by the number of species Si, Pmax is the maximum species probability, and mmax is the maximum mutation rate.


### 3.3. Comprehensive Learning Particle Swarm Optimization (CLPSO)

Comprehensive learning particle swarm optimization [14] adopts the strategy of comprehensive learning to select the objects to learn instead of learning from itself and the global optimal individual. The velocity updating equation in CLPSO is defined as follows:(11)vid=w∗vid+c∗rand0,1∗pbestfid,d−xid,where fi defines which particles' pbests that the particle i should follow and rand0,1∈0,1 is a uniform random number. The inertia weight w in CLPSO is a linear attenuation coefficient. CLPSO assigns a learning probability Pci for each particle i using the following equation:(12)Pci=0.05+0.45∗exp10i−1/N−1−1exp10−1.For each solutionxi, it will learn from many particles instead of only two particles. Each component of particle i learn from itself or other particle depending on learning probability Pci. A random component of particle i will learn from other particle if all its components learn from itself. The higher fitness value a solution has, the greater possibility that particle will be learned.


### 3.4. Biogeography-Based Learning Particle Swarm Optimization (BLPSO)

Biogeography-based learning particle swarm optimization [23] adopts the strategy of migration operation of BBO to select the objects to learn. Each component of particle i learns from itself or a selected particle j depending on immigration rate λi. The selected particle j depends on emigration rate μj. A random component of particle i will learn from other particle if all components of particle i learn from itself. The higher the fitness value of a solution is, the smaller the immigration rate and the greater the migration rate of the particle are. It means that the better particle has larger probability to be learned and the worse particle has the larger probability to learn from others. The velocity updating equation in BLPSO is the same as equation (11). The learning probability Pci for particle i and the selected probability Psj for particle j can be expressed as follows:(13)Pci=λi,(14)Psj=μj∑k=1Nμk,It should be noted that learning probabilityPc is different from selected probability Ps. Particle i has a probability of learning probability Pci to learn from other particles. At the same time, particle j has a selected probability Psij to be selected as an object which particle i learn from. The relationship between learning probability and selected probability is shown in Figure 1.Figure 1
Relationship between learning probability and selected probability.It is worth mentioning that it uses the quadratic migration model instead of the linear migration model. The quadratic migration model is as follows:(15)λi=I∗1−SiSmax2,μi=E∗SiSmax2.The differences of CLPSO and BLPSO are learning probability and the selection strategy of the learning particle.


## 3.1. Particle Swarm Optimization (PSO)

Particle swarm optimization is a classical evolutionary computing technique which was firstly proposed by Eberhart and Kennedy [10]. Inspired from the study of the predation behaviour of birds, the main idea of PSO algorithm is sharing cooperation and information among individuals to find the optimal solution. PSO simulates birds in a flock by designing a massless particle, which only has velocity and position. Velocity represents how fast and which direction the particle moves along. Position represents where the particle is. For each particle, only the personal best experience and the global best experience of the entire swarm can be learned. Let xi=xi1,xi2,…,xiDT and vi=vi1,vi2,…,viDT denote the position and velocity of particle ii=1,2,…,N, respectively, where D is dimension of the initial space and N is population size. Let pbesti=pbesti1,pbesti2,…,pbestiDT and gbest=gbest1,gbest2,…,gbestDT be the personal best position of particle i and the global best position of the whole swarm. The update of velocity and position of the particle is indicated as follows:(8)vid=w∗vid+c1∗rand10,1∗pbestid−xid+c2∗rand20,1∗gbestd−xid,xid=xid+vid,where i=1,2,…,N;d=1,2,…,D; w is the inertia weight; c1 and c2 are the acceleration coefficients; and rand10,1 and rand20,1∈0,1 are uniform random numbers. The algorithm sets the maximum velocity to prevent the velocity from getting too large. The particle will be set as the border of initial region if it flies out of initial region.


## 3.2. Biogeography-Based Optimization (BBO)

In [22], the author proposed a new algorithm named biogeography-based optimization which solves optimization problems by simulating biological migration. In BBO, solution is also called as habitat, fitness of solution is called as habitat suitability index (HSI), and component of solution is called as suitable index variable (SIV). The main body of BBO is migration operation and mutation operation.Each habitatxii=1,2,…,N has two parameters to describe the migration, which are an immigration rate λi and an emigration rate μi. Both parameters are closely related to HSI. For high HSI habitat, there will be a high trend of outward migration. At this time, the emigration rate is high and the immigration rate is low due to the pressure of species competition. However, for low HSI habitat, the opposite is true. Assuming habitat xi currently accommodates Si species, Smax is the maximum number of species. Immigration rate λi and emigration rate μi are usually described as follows:(9)λi=I∗1−SiSmax,μi=E∗SiSmax,where I is the maximum immigration rate and E is maximum emigration rate. The component xidd=1,2,…,D of habitat xi will immigrate depend on immigration rate λi. The habitat xj is selected depending on emigration rate μj.The properties of the habitat such as HSI and the number of species may changes due to unexpected events. At the same time, mutation rate depends on species probability. According to biogeography, when the number of species in habitat is too large or too small, species probability is low. When the number of species in habitat is moderate, species probability is high. Mutation ratemi is described as follows:(10)mi=mmax∗1−PiPmax,where Pi is the species probability of xi decided by the number of species Si, Pmax is the maximum species probability, and mmax is the maximum mutation rate.


## 3.3. Comprehensive Learning Particle Swarm Optimization (CLPSO)

Comprehensive learning particle swarm optimization [14] adopts the strategy of comprehensive learning to select the objects to learn instead of learning from itself and the global optimal individual. The velocity updating equation in CLPSO is defined as follows:(11)vid=w∗vid+c∗rand0,1∗pbestfid,d−xid,where fi defines which particles' pbests that the particle i should follow and rand0,1∈0,1 is a uniform random number. The inertia weight w in CLPSO is a linear attenuation coefficient. CLPSO assigns a learning probability Pci for each particle i using the following equation:(12)Pci=0.05+0.45∗exp10i−1/N−1−1exp10−1.For each solutionxi, it will learn from many particles instead of only two particles. Each component of particle i learn from itself or other particle depending on learning probability Pci. A random component of particle i will learn from other particle if all its components learn from itself. The higher fitness value a solution has, the greater possibility that particle will be learned.


## 3.4. Biogeography-Based Learning Particle Swarm Optimization (BLPSO)

Biogeography-based learning particle swarm optimization [23] adopts the strategy of migration operation of BBO to select the objects to learn. Each component of particle i learns from itself or a selected particle j depending on immigration rate λi. The selected particle j depends on emigration rate μj. A random component of particle i will learn from other particle if all components of particle i learn from itself. The higher the fitness value of a solution is, the smaller the immigration rate and the greater the migration rate of the particle are. It means that the better particle has larger probability to be learned and the worse particle has the larger probability to learn from others. The velocity updating equation in BLPSO is the same as equation (11). The learning probability Pci for particle i and the selected probability Psj for particle j can be expressed as follows:(13)Pci=λi,(14)Psj=μj∑k=1Nμk,It should be noted that learning probabilityPc is different from selected probability Ps. Particle i has a probability of learning probability Pci to learn from other particles. At the same time, particle j has a selected probability Psij to be selected as an object which particle i learn from. The relationship between learning probability and selected probability is shown in Figure 1.Figure 1
Relationship between learning probability and selected probability.It is worth mentioning that it uses the quadratic migration model instead of the linear migration model. The quadratic migration model is as follows:(15)λi=I∗1−SiSmax2,μi=E∗SiSmax2.The differences of CLPSO and BLPSO are learning probability and the selection strategy of the learning particle.


## 4. Double-Dynamic Biogeography-Based Learning Particle Swarm Optimization (DDBLPSO)

Although many promising PSO variants have emerged, they still have some problems like insufficient convergence and accuracy and unsatisfactory efficiency. These cause them to perform poorly on some complicated functions such as multimodal functions, hybrid functions, composition functions, and real-world problems. Regardless of CLPSO or BLPSO, there is a probability that particle learns from those particles with smaller fitness than itself. These strategies lead some superior particles are not taken full advantage of their superiority and result a low convergence. A double-dynamic selection strategy based on biogeography-based learning is proposed in this paper, in which particles learn from the better one of two dynamic roulette winners. This strategy guides the particle to learn from others that are not worse than itself. In this way, the advantages of the superior particles will be greatly exploited.


### 4.1. Dynamic Biogeography-Based Learning

Original biogeography-based learning strategy guides particles to learn from the promising particles. However, most particles still have a certain probabilities of learning from worse particles. For each particle, dynamic biogeography-based learning strategy only guides it to learn from other particles not worse than itself. All the particles are sorted in ascending order based on fitness. Particlei will learn from a selected particle if a uniform random number generated in [0,1] is smaller than predefined λi. The selected probability Psij of particle j being selected by particle i is defined as follows:(16)Psij=μj∑k=iNμk,where j≥i. The greater the index number is, the higher fitness the particle has. The learning object particle j is selected with a dynamic roulette which constitutes even more competitive individuals μi,μi+1,…,μN. In this way, particle will not learn from the worse particles which can reduce the possibility for the particles getting worse and worse. Generally speaking, on the one hand, dynamic biogeography-based learning strategy keeps the worse particles larger exploration abilities to learn from others. On the other hand, the strategy gives the better particles fewer objectives to learn from. It should be pointed out that the best solution only can learn from itself.


### 4.2. Double-Dynamic Biogeography-Based Learning

Original biogeography-based learning strategy only has one selected particle to learn while original comprehensive learning strategy has two selected particles and then chooses the better one. The strategy has two selected particles, which has a greater possibility to have a high fitness offspring than other strategy only has one selected particle. Inspired by comprehensive learning strategy, double-dynamic biogeography-based learning also has two selected particles and leaves the better one to ensure the high rate of convergence. This strategy allows particles to adequately learn from better particles. For each componentxid, the learning objective xLi,d is selected by using the following equation:(17)xLi,d=xad,if fitness ofxais greater than fitness ofxb,xbd,if fitness ofxais smaller than fitness ofxb,where xa and xb are two particles which are selected by dynamic roulette and xad and xbd represent the dth component of xa and xb, respectively.


### 4.3. Mutation

According to above strategies, although the particles will fly to a better area, particles are easy to fall into local optimum. One random component of particle will be replaced by other particle's component if the particle only learns from itself. Only high fitness particles have large probability to learn from themselves. There are two reasons for this phenomenon. One is that a high fitness particle has a larger immigration rate. The other is that a high fitness particle only has few particles better than itself. This strategy helps particles to jump out of local optimum. If all components ofxi only learn from themselves, the learning objective xLi is set as follows:(18)xLi,j=xl,j,ifxLi==xi,where j and l are random numbers and l∈1,2,…,i−1,i+1,…,N,j∈1,2,…,D.In the early stage of DDBLPSO, the algorithmic search area is large because initial particles evenly distribute in the search area. In the last stage of DDBLPSO, the algorithmic search area becomes smaller and smaller because most particles tend to be very close together. However, the better particle will have the greater probability to learn from other particle's past optimal position because of the mutation mechanism. It prevents the algorithm from falling into local optimum.


### 4.4. Algorithm Process

Double-dynamic biogeography-based learning particle swarm optimization is proposed based on above strategies. The process of DDBLPSO is described in Algorithm1.Algorithm1: Double-dynamic biogeography-based learning particle swarm optimization (DDBLPSO).
(1)
Initial maximum velocityvmax, upper bound xmax and lower bound xmin of the initial region, population x, velocity v, inertia weight w, acceleration coefficient c, the maximal number of function evaluations maxFES;(2)
Record personal best positionpbest and global best position gbest;(3)
whileFES<maxFES do(4)
Sort solutions in ascending order based on fitness;(5)
Calculate immigration rateλi and emigration rate μii=1,2,…,N, update inertia weight w, and let learning population xL=zerossizex;(6)
fori=1 to N(7)
ford=1 to D(8)
Ifrand<λi(9)
Selectpbesta and pbestba,b∈1,2,…,N with a dynamic roulette;(10)
if fitness ofxa is greater than fitness of xb(11)
xLid=pbestad;(12)
else(13)
xLid=pbestbd;(14)
end if(15)
else(16)
xLid=pbestid(17)
end if(18)
end for(19)
ifallxLi==pbesti(20)
Randomly selectj≠ij∈1,2,…,N and ll∈1,2,…,D;(21)
xLid=pbestid;(22)
end if(23)
end for(24)
v=w∗v+c∗randsizex.∗xL−x.;(25)
vv>vmax=vmax;vv<−vmax=−vmax;(26)
x=x+v;(27)
xx>xmax=xmax;xx<xmin=xmin;(28)
Update personal best positionpbest and global best position gbest;(29)
end while(30)
Output the final result.DDBLPSO, CLPSO, and BLPSO have some commonalities and differences. It is necessary to illustrate the differences among them. Two main differences are summarized as follows.(i)
In CLPSO, learning objective is selected uniformly and randomly. In BLPSO, learning objective is selected by roulette based on equation (14). In DDBLPSO, learning objective is selected by the dynamic roulette based on equation (16).(ii)
In BLPSO, each component of a particle only has one learning objective. However, in CLPSO and DDBLPSO, each component of a particle has two learning objectives and then selects the better one.


## 4.1. Dynamic Biogeography-Based Learning

Original biogeography-based learning strategy guides particles to learn from the promising particles. However, most particles still have a certain probabilities of learning from worse particles. For each particle, dynamic biogeography-based learning strategy only guides it to learn from other particles not worse than itself. All the particles are sorted in ascending order based on fitness. Particlei will learn from a selected particle if a uniform random number generated in [0,1] is smaller than predefined λi. The selected probability Psij of particle j being selected by particle i is defined as follows:(16)Psij=μj∑k=iNμk,where j≥i. The greater the index number is, the higher fitness the particle has. The learning object particle j is selected with a dynamic roulette which constitutes even more competitive individuals μi,μi+1,…,μN. In this way, particle will not learn from the worse particles which can reduce the possibility for the particles getting worse and worse. Generally speaking, on the one hand, dynamic biogeography-based learning strategy keeps the worse particles larger exploration abilities to learn from others. On the other hand, the strategy gives the better particles fewer objectives to learn from. It should be pointed out that the best solution only can learn from itself.


## 4.2. Double-Dynamic Biogeography-Based Learning

Original biogeography-based learning strategy only has one selected particle to learn while original comprehensive learning strategy has two selected particles and then chooses the better one. The strategy has two selected particles, which has a greater possibility to have a high fitness offspring than other strategy only has one selected particle. Inspired by comprehensive learning strategy, double-dynamic biogeography-based learning also has two selected particles and leaves the better one to ensure the high rate of convergence. This strategy allows particles to adequately learn from better particles. For each componentxid, the learning objective xLi,d is selected by using the following equation:(17)xLi,d=xad,if fitness ofxais greater than fitness ofxb,xbd,if fitness ofxais smaller than fitness ofxb,where xa and xb are two particles which are selected by dynamic roulette and xad and xbd represent the dth component of xa and xb, respectively.


## 4.3. Mutation

According to above strategies, although the particles will fly to a better area, particles are easy to fall into local optimum. One random component of particle will be replaced by other particle's component if the particle only learns from itself. Only high fitness particles have large probability to learn from themselves. There are two reasons for this phenomenon. One is that a high fitness particle has a larger immigration rate. The other is that a high fitness particle only has few particles better than itself. This strategy helps particles to jump out of local optimum. If all components ofxi only learn from themselves, the learning objective xLi is set as follows:(18)xLi,j=xl,j,ifxLi==xi,where j and l are random numbers and l∈1,2,…,i−1,i+1,…,N,j∈1,2,…,D.In the early stage of DDBLPSO, the algorithmic search area is large because initial particles evenly distribute in the search area. In the last stage of DDBLPSO, the algorithmic search area becomes smaller and smaller because most particles tend to be very close together. However, the better particle will have the greater probability to learn from other particle's past optimal position because of the mutation mechanism. It prevents the algorithm from falling into local optimum.


## 4.4. Algorithm Process

Double-dynamic biogeography-based learning particle swarm optimization is proposed based on above strategies. The process of DDBLPSO is described in Algorithm1.Algorithm1: Double-dynamic biogeography-based learning particle swarm optimization (DDBLPSO).
(1)
Initial maximum velocityvmax, upper bound xmax and lower bound xmin of the initial region, population x, velocity v, inertia weight w, acceleration coefficient c, the maximal number of function evaluations maxFES;(2)
Record personal best positionpbest and global best position gbest;(3)
whileFES<maxFES do(4)
Sort solutions in ascending order based on fitness;(5)
Calculate immigration rateλi and emigration rate μii=1,2,…,N, update inertia weight w, and let learning population xL=zerossizex;(6)
fori=1 to N(7)
ford=1 to D(8)
Ifrand<λi(9)
Selectpbesta and pbestba,b∈1,2,…,N with a dynamic roulette;(10)
if fitness ofxa is greater than fitness of xb(11)
xLid=pbestad;(12)
else(13)
xLid=pbestbd;(14)
end if(15)
else(16)
xLid=pbestid(17)
end if(18)
end for(19)
ifallxLi==pbesti(20)
Randomly selectj≠ij∈1,2,…,N and ll∈1,2,…,D;(21)
xLid=pbestid;(22)
end if(23)
end for(24)
v=w∗v+c∗randsizex.∗xL−x.;(25)
vv>vmax=vmax;vv<−vmax=−vmax;(26)
x=x+v;(27)
xx>xmax=xmax;xx<xmin=xmin;(28)
Update personal best positionpbest and global best position gbest;(29)
end while(30)
Output the final result.DDBLPSO, CLPSO, and BLPSO have some commonalities and differences. It is necessary to illustrate the differences among them. Two main differences are summarized as follows.(i)
In CLPSO, learning objective is selected uniformly and randomly. In BLPSO, learning objective is selected by roulette based on equation (14). In DDBLPSO, learning objective is selected by the dynamic roulette based on equation (16).(ii)
In BLPSO, each component of a particle only has one learning objective. However, in CLPSO and DDBLPSO, each component of a particle has two learning objectives and then selects the better one.


## 5. Numerical Simulations for Global Optimization

### 5.1. Test Functions and Parameter Settings

CEC2015 [25] benchmark functions are used to verify the performance of DDBLPSO. CEC2015 benchmark suite is simply introduced as follows. f1 and f2 are unimodal functions, f3−5 are multimodal functions, f6−8 are hybrid functions and f9−15 are composition functions.CLPSO [14] is a classical algorithm proposed based on PSO [10], and BLPSO [23] is an algorithm proposed based on BBO [22] and PSO. Inspired by CLPSO and BLPSO, we proposed DDBLPSO. DDBLPSO has an obvious relationship with BBO, PSO, CLPSO, and BLPSO, so we selected these four algorithms for comparison experiments. At the same time, we also selected two other representative algorithms which are PBSPSO [21] and DEBBO [24] for comparison experiments. We conducted four sets of numerical experiments which are labelled as experiment one, experiment two, experiment three, and experiment four. DDBLPSO is compared with four relevant algorithms (PSO, BBO, CLPSO, and BLSPSO), a PSO variant (PBSPSO), and a BBO variant (DEBBO). Design of the four experiments is shown in Table 1. The maximal number of function evaluations maxFES is set as 10000∗D. Search range is −100,100D, and 30 independent runs are conducted in MATLAB 2017b. Other parameters are shown in Table 2.Table 1
Design of experiment one, experiment two, experiment three, and experiment four.
ExperimentPopulation sizeNPoints numbermpComparison algorithmExperiment one3030PSO, BBO, CLPSO, BLSPSOExperiment two100100PSO, BBO, CLPSO, BLSPSOExperiment three3030PBSPSO, DEBBOExperiment four100100PBSPSO, DEBBOTable 2
Parameters of seven comparison algorithms.
AlgorithmParametersPSOInertia weightw=0.55, acceleration coefficient c1=c2=2.0, maximum velocity vmax=5.0BBOMaximum immigration rateI=1, maximum emigration rate E=1, maximum mutation rate mmax=0.005CLPSOInertia weightw is linearly decrease from 0.9 to 0.2, acceleration coefficient c=2.0, maximum velocity vmax=5.0BLPSOInertia weightw is linearly decrease from 0.9 to 0.2, acceleration coefficient c=2.0, maximum velocity vmax=5.0, maximum immigration rate I=1, maximum emigration rate E=1PBSPSOInertia weightw=0.55, acceleration coefficient c=2.0, maximum velocity vmax=5.0, decay term α=0.9, the weight of the derivative term Kd=0.03DEPSOMaximum immigration rateI=1, maximum emigration rate E=1, maximum mutation rate mmax=0.005, crossover rate CR=0.5, difference coefficient FX=0.7DDBLPSOInertia weightw is linearly decrease from 0.9 to 0.2, acceleration coefficient c=2.0, maximum velocity vmax=5.0, maximum immigration rate $I = 1$, maximum emigration rate E=1


### 5.2. Experimental Results and Discussion

Results of experiment one, experiment two, experiment three, and experiment four are statistically shown in Tables3–6, respectively. Tables 7–10 show the ranks of five algorithms according to the Friedman test of experiment one, experiment two, experiment three, and experiment four, respectively. Min, Mean, Median, and Std indicate the minimum function error value, the mean function error value, the median function error value, and the standard deviation of error values, respectively. In order to exhibit the evolution trend of five algorithms more vividly, converging curves of the average best fitness of functions in experiment one and experiment three are shown in Figures 2 and 3. The converging curves of functions in experiment two and experiment four are not shown due to their similarities with experiment one and experiment three, respectively. The boldface in Tables 3–6 indicates the best experimental results in experiment one to four, respectively.Table 3
Performance comparison of five algorithms in experiment one.
BBOPSOCLPSOBLPSODDBLPSOf1xMin1.6583 E+061.7321 E+067.7577 E+055.6816 E+052.0171 E+059Mean4.1619 E+061.1235 E+071.5641 E+061.3061 E+06.9974 E+058Median4.2666 E+069.4901 E+061.5160 E+061.0850 E+060404E+05Std1.2125 E+068.1069 E+063.9988 E+056.4276 E+057.7346 E+05f2xMin5.9570 E+072.1247 E+068.6937 E+041.0573 E+032.0057 E+02Mean1.0746 E+086.4067 E+064.1390 E+057.6477 E+033.0520 E+03Median1.0441 E+085.5692 E+063.5350 E+056.7947 E+031.3179 E+03Std2.2645 E+073.1246 E+062.9045 E+055.3207 E+034.2472 E+03f3xMin3.2033E+023.2014E+023.2118 E+023.2109 E+023.2104 E+02Mean3.2093E+023.2026E+023.2134 E+023.2131 E+023.2128 E+02Median3.2092E+023.2026E+023.2135 E+023.2131 E+023.2129 E+02Std3.1412E−016.9821E-027.9537E-029.3207E-021.1575E-01f4xMin5.5276 E+024.3839 E+024.1498 E+024.1592 E+024.0995 E+02Mean5.8999 E+024.5826 E+024.2232 E+024.2498 E+024.1878 E+02Median5.8819 E+024.5863 E+024.2201 E+024.2388 E+024.1840 E+02Std2.3338 E+011.1451 E+014.1135 E+006.1503 E+005.2623 E+00f5xMin2.7940 E+031.8947 E+031.2380 E+031.2387 E+031.3481 E+03Mean4.2481 E+032.6178 E+031.9363 E+031.6544 E+031.7612 E+03Median4.1462 E+032.5958 E+031.9451 E+031.5976 E+031.7362 E+03Std7.4098 E+024.0091 E+023.1450 E+022.9163 E+022.5296 E+02f6xMin8.5892 E+044.7158 E+051.3661 E+053.4194 E+042.7682 E+04Mean3.3191 E+055.7133 E+063.0127 E+051.5594 E+051.1685 E+05Median2.8357 E+055.4783 E+062.7053 E+051.5365 E+059.0779 E+04Std1.8363 E+053.7012 E+061.1982E+058.9082 E+048.6045 E+04f7xMin7.0813 E+027.0836 E+027.0626 E+027.0570 E+027.0517 E+02Mean7.1215 E+027.1799 E+027.1138 E+027.0934 E+027.0754 E+02Median7.1023 E+027.1372 E+027.1242 E+027.0795 E+027.0586 E+02Std4.0321 E+001.7801 E+012.8718 E+003.1576 E+002.8994 E+00f8xMin2.9403 E+043.7955 E+042.1194 E+041.1270 E+041.1820 E+04Mean1.1430 E+051.5521 E+066.0038 E+044.7864 E+044.5841 E+04Median9.0699 E+041.1775 E+065.8822 E+044.5294 E+043.1882 E+04Std9.6038 E+041.4589 E+062.6934 E+042.8916 E+043.5138 E+04f9xMin1.0045 E+031.0046 E+031.0033 E+031.0032 E+031.0024 E+03Mean1.0740 E+031.0059 E+031.0040 E+031.0076 E+031.0037 E+03Median1.0064 E+031.0058 E+031.0040 E+031.0038 E+031.0037 E+03Std1.3863 E+027.2713E−012.7210E−012.0779 E+015.1535E−01f10xMin2.0119 E+044.0609 E+057.5343 E+042.9240 E+042.1702 E+04Mean5.0981 E+052.5287 E+062.0769 E+052.0526 E+051.0437 E+05Median7.9737 E+041.7787 E+062.1072 E+051.1130 E+057.1822 E+04Std9.4063 E+052.2614 E+067.6381 E+044.0970 E+051.0132 E+05f11xMin1.4042 E+031.8057 E+031.4035 E+031.4015 E+031.4013 E+03Mean1.6772 E+031.9459 E+031.4617 E+031.5100 E+031.4753 E+03Median1.4285 E+031.9471 E+031.4056 E+031.4031 E+031.4021 E+03Std3.1792 E+026.2006E+011.1830 E+021.5473 E+021.1947E+02f12xMin1.3100 E+031.3084 E+031.3040 E+031.3049 E+031.3040 E+03Mean1.3214 E+031.3111 E+031.3058 E+031.3066 E+031.3071 E+03Median1.3139 E+031.3110 E+031.3055 E+031.3064 E+031.3075 E+03Std2.1131 E+011.5834 E+009.8335E-011.1492 E+001.4291 E+00f13xMin1.4175 E+031.3933 E+031.4352 E+031.4144 E+031.3995 E+03Mean1.4252 E+031.4078 E+031.4420 E+031.4259 E+031.4173 E+03Median1.4244 E+031.4086 E+031.4416 E+031.4254 E+031.4164 E+03Std4.8717 E+006.6629 E+003.4109 E+006.0813 E+007.2068E+00f14xMin3.7298 E+033.2799 E+043.2503 E+043.2503 E+041.5000 E+03Mean3.7381 E+043.4675 E+043.3058 E+043.3235 E+043.2591 E+04Median3.8788 E+043.4793 E+043.2651 E+043.2651 E+043.3648 E+04Std1.0738 E+049.1682 E+027.4020 E+021.0085 E+035.9283 E+03f15xMin1.6042 E+031.6007 E+031.6000 E+031.6000 E+031.6000 E+03Mean1.6105 E+031.6012 E+031.6001 E+031.6000 E+031.6004 E+03Median1.6127 E+031.6011 E+031.6001 E+031.6000 E+031.6000 E+03Std5.5047 E+001.9659E-013.2672E-024.7803E-032.3806 E+00Table 4
Performance comparison of five algorithms in experiment two.
BBOPSOCLPSOBLPSODDBLPSOf1xMin1.6872 E+071.2995 E+071.2592 E+079.6047 E+068.8196 E+06Mean3.3932 E+072.4028 E+072.0317 E+071.2281 E+071.1151 E+07Median3.3742 E+072.3245 E+072.0301 E+071.2062E+071.1181 E+07Std5.2575 E+066.4139 E+062.7277 E+061.4734 E+061.0671 E+06f2xMin5.5282 E+081.3908 E + 062.1847 E+089.6042 E+072.3631 E+07Mean6.4517 E+082.2934 E + 062.5524 E+081.2074E+083.2844 E+07Median6.3717 E+082.1154 E + 062.5419 E+081.2030E+083.2473 E+07Std5.2834 E+075.7400 E + 051.7095 E+071.3223 E+074.2897 E+06f3xMin3.2133 E+023.2079E + 023.2134 E+023.2139 E+023.2136 E+02Mean3.2145 E+023.2085E + 023.2148 E+023.2146 E+023.2145 E+02Median3.2147 E+023.2086E + 023.2148 E+023.2145 E+023.2145 E+02Std5.8776E-023.7493 E - 023.9590E-024.0692E-023.9328E-02f4xMin9.1048 E+025.0448 E+025.9808 E+025.2056E+024.8020 E+02Mean1.0131 E+037.5271 E+026.2837 E+025.4878 E+025.0111 E+02Median1.0112 E+038.3702 E+026.2944 E+025.4789 E+024.9888 E+02Std4.6330 E+011.5583 E+021.3892 E+011.3776 E+011.0271 E+01f5xMin1.2581 E+041.7639 E+048.4258 E+035.5564 E+034.7234 E+03Mean1.4282 E+041.9160 E+049.5008 E+037.1715 E+035.5794 E+03Median1.4090 E+041.9176 E+049.3825 E+037.2019E+035.3980 E+03Std9.6948 E+028.2684 E+026.2791 E+026.5159 E+026.1390 E+02f6xMin1.8440 E+067.3864 E+062.3964 E+061.6318 E+061.3833 E+06Mean3.7058 E+061.3158 E+073.3193 E+062.1834 E+061.9272 E +06Median3.6446 E+061.2457 E+073.2200 E+062.2014E+061.9522 E+06Std9.8093 E+054.1777 E+065.9871 E+053.0671 E+052.6129 E+05f7xMin7.3969 E+028.1342 E+027.9195 E+027.3534 E+027.3350 E+02Mean7.8438 E+028.4624 E+028.2456 E+027.9700 E+028.0765 E+02Median7.7023 E+028.5004 E+028.2193 E+028.0104 E+028.0020 E+02Std4.1385 E+012.0194 E+011.8298 E+013.2732 E+012.8476 E+01f8xMin1.2878 E+064.1243 E+061.1840 E+065.0520 E+055.1323 E+05Mean1.9175 E+061.0590 E+071.9332 E+068.9139 E+056.9234 E+05Median1.8616 E+061.0212 E+071.9618 E+068.9816 E+056.8432 E+05Std3.7847 E+053.8045 E+063.2658 E+052.2895 E+051.3364 E+05f9xMin1.0125 E+031.0110 E+031.0072 E+031.0069 E+031.0068 E+03Mean1.1742 E+031.0138 E+031.0079 E+031.0079 E+031.0077 E+03Median1.0414 E+031.0138 E+031.0078 E+031.0079 E+031.0076 E+03Std2.8267 E+021.2870 E+005.2094E-015.5162E-015.2679E-01f10xMin2.0038 E+062.1053 E+062.7821 E+054.7205 E+041.4355 E+04Mean3.8010 E+063.7765 E+064.9280 E+055.5835 E+041.6831 E+04Median3.5081 E+063.3635 E+064.9422 E+055.6250 E+041.6362 E+04Std1.5857 E+061.2352 E+069.5961 E+045.1752 E+032.1156 E+03f11xMin1.4231 E+032.5629 E+031.4173 E+031.4100 E+031.4102 E+03Mean2.1106 E+032.8176 E+031.7756 E+031.4136 E+031.6127 E+03Median1.4395 E+032.8267 E+031.4220 E+031.4139 E+031.4126 E+03Std7.9489 E+021.1589 E+026.5399 E+021.5746 E+004.5786 E+02f12xMin1.3561 E+031.3177 E+031.3137 E+031.3126 E+031.3111 E+03Mean1.3821 E+031.3202 E+031.3154 E+031.3153 E+031.3147 E+03Median1.3811 E+031.3202 E+031.3155 E+031.3154 E+031.3149 E+03Std1.3010 E+011.1930E+008.0780E-011.1071 E+001.3710 E+00f13xMin1.7453 E+031.6946 E+031.7725 E+031.7411 E+031.7344 E+03Mean1.7600 E+031.7135 E+031.7825 E+031.7534 E+031.7481 E+03Median1.7602 E+031.7137 E+031.7833 E+031.7540 E+031.7487 E+03Std7.6554 E+007.6113 E+005.0447 E+005.9510 E+006.3159 E+00f14xMin1.5092 E+041.1046 E+051.1030 E+055.0142 E+033.1265 E+03Mean1.5690 E+051.1051 E+051.1094 E+053.2405 E+041.1036 E+05Median1.5755 E+051.1051 E+051.1032 E+055.5990 E+031.1770 E+05Std4.4260 E+044.0365 E+011.8805 E+034.7720 E+042.9479 E+04f15xMin1.6086 E+031.6010 E+031.6063 E+031.6048 E+031.6031 E+03Mean1.6159 E+031.6041 E+031.6066 E+031.6052 E+031.6037 E+03Median1.6157 E+031.6042 E+031.6066 E+031.6052 E+031.6038 E+03Std3.5097 E+001.6093 E+001.4693E−011.9835E−013.1219E−01Table 5
Performance comparison of three algorithms in experiment three.
PBSPSODEBBODDBLPSOf1xMin1.8592 E+064.6232 E+052.0171 E+05Mean4.0977 E+062.0454 E+069.9974 E+05Median3.8062 E+061.6998 E+068.0404 E+05Std1.4323 E+061.3320 E+067.7346 E+05f2xMin8.0625 E+072.0358 E+022.0057 E+02Mean1.2518 E+084.0561 E+033.0520 E+03Median1.3096 E+081.1378 E+031.3179 E+03Std2.6223 E+074.5224 E+034.2472 E+03f3xMin3.2058E+023.2026E+023.2104 E+02Mean3.2103 E+023.2034E+023.2128 E+02Median3.2106 E+023.2035E+023.2129 E+02Std2.5954E−014.7224E-021.1575E−01f4xMin5.3829 E+024.2006E+024.0995 E+02Mean5.9001 E+024.3346 E+024.1878 E+02Median5.9107 E+024.3369 E+024.1840 E+02Std2.6829 E+017.5401 E+005.2623 E+00f5xMin3.2276 E+032.4576 E+031.3481 E+03Mean4.1617 E+033.1351 E+031.7612 E+03Median4.1973E+033.1853 E+031.7362 E+03Std5.1598 E+023.1687 E+022.5296 E+02f6xMin9.2791 E+041.1225 E+052.7682 E+04Mean3.3549 E+053.7463 E+051.1685 E+05Median3.1758 E+052.9917 E+059.0779 E+04Std1.8022 E+052.4642 E+058.6045 E+04f7xMin7.0838 E+027.0717 E+027.0517 E+02Mean7.1403 E+027.1034 E+027.0754 E+02Median7.1384 E+027.1015 E+027.0586 E+02Std4.4317 E+001.6748 E+002.8994 E+00f8xMin3.1112 E+045.3259 E+031.1820 E+04Mean1.4377 E+057.7449 E+044.5841 E+04Median1.1602 E+054.8418 E+043.1882 E+04Std1.0130 E+051.0253 E+053.5138 E+04f9xMin1.0043 E+031.0022 E+031.0024 E+03Mean1.0677 E+031.0031 E+031.0037 E+03Median1.0061 E+031.0025 E+031.0037 E+03Std1.2610 E+022.0847 E+005.1535E-01f10xMin2.0553 E+041.1722 E+042.1702 E+04Mean1.6465 E+051.2081E+051.0437 E+05Median1.1912E+058.6437 E+047.1822 E+04Std1.3543 E+051.0541 E+051.0132 E+05f11xMin1.4049 E+031.5319 E+031.4013 E+03Mean1.6647 E+031.6533 E+031.4753 E+03Median1.4082 E+031.6380 E+031.4021 E+03Std3.0497 E+026.1809 E+011.1947E+02f12xMin1.3108 E+031.3052 E+031.3040 E+03Mean1.3152 E+031.3061 E+031.3071 E+03Median1.3139 E+031.3058 E+031.3075 E+03Std4.6593 E+001.1863 E+001.4291 E+00f13xMin1.4153 E+031.3928 E+031.3995 E+03Mean1.4281 E+031.3999 E +031.4173 E+03Median1.4289 E+031.3996 E+031.4164 E+03Std5.1713 E+004.3428 E+007.2068E+00f14xMin3.2641 E+043.2795 E+041.5000 E+03Mean3.6568 E+043.5561 E+043.2591 E+04Median3.7333 E+043.5346 E+043.3648 E+04Std2.0662 E+039.2865 E+025.9283 E+03f15xMin1.6034 E+031.6000 E+031.6000 E+03Mean1.6076 E+031.6000 E+031.6004 E+03Median1.6048 E+031.6000 E+031.6000 E+03Std4.8441 E+001.0394E-022.3806 E+00Table 6
Performance comparison of three algorithms in experiment four.
PBSPSODEBBODDBLPSOf1xMin2.8403 E+071.2931 E+088.8196 E+06Mean3.5153 E+071.7284 E+081.1151 E+07Median3.4872 E+071.7385 E+081.1181 E+07Std4.0420 E+062.4193 E+071.0671 E+06f2xMin5.3463 E+082.0005 E+022.3631 E+07Mean1.2518 E+081.6110 E+033.2844 E+07Median1.3096 E+081.0518 E+033.2473 E+07Std2.6223 E+071.6068 E+034.2897 E+06f3xMin3.2131 E+023.2073E+023.2136 E+0Mean3.2144 E+023.2080E+023.2145 E+02Median3.2144 E+023.2083E+023.2145 E+02Std6.3151E−024.2976E−023.9328 E−02f4xMin9.1895 E+027.2243 E+024.8020 E+02Mean1.0124 E+037.6390 E+025.0111 E+02Median1.0051 E+037.5774 E+024.9888 E+02Std4.9600 E+012.5379 E+011.0271 E+01f5xMin1.2411 E+041.6916 E+044.7234 E+03Mean1.4988 E+041.7798 E+045.5794 E+03Median1.4942 E+041.7938 E+045.3980 E+03Std1.2888 E+037.2976 E+026.1390 E+02f6xMin2.1414 E+062.3652 E+071.3833 E+06Mean3.6713 E+063.3346 E+071.9272 E+06Median3.5486 E+063.4022 E+071.9522 E+06Std9.3569 E+055.1752 E+062.6129 E+05f7xMin7.4025 E+028.4813 E+027.3350 E+02Mean7.8440 E+028.4978 E+028.0765 E+02Median7.7255 E+028.4967 E+028.0020 E+02Std3.6466 E+018.3256E−012.8476 E+01f8xMin1.2536 E+061.0239 E+075.1323 E+05Mean1.9625 E+061.7527 E+076.9234 E+05Median1.9220 E+061.7616 E+076.8432 E+05Std3.8544 E+054.3476 E+061.3364 E+05f9xMin1.0124 E+031.0073 E+031.0068 E+03Mean1.2043E+031.0176 E+031.0077 E+03Median1.0155 E+031.0175 E+031.0076 E+03Std3.1718 E+022.2394E−015.2679E−01f10xMin1.6908 E+065.3905 E+031.4355 E+04Mean3.7009 E+066.7693 E+031.6831 E+04Median3.3489 E+066.4983 E+031.6362 E+04Std1.7822 E+061.0052 E+032.1156 E+03f11xMin1.4281 E+031.7210 E+031.4102 E+03Mean2.1024 E+032.8620 E+031.6127 E+03Median1.4369 E+033.1818 E+031.4126 E+03Std8.3776 E+027.4285 E+024.5786 E+02f12xMin1.3512 E+031.3172 E+031.3111 E+03Mean1.3720 E+031.3176 E+031.3147 E+03Median1.3688 E+031.3176 E+031.3149 E+03Std1.6991 E+012.6835E−011.3710 E+00f13xMin1.7474 E+031.6929 E+031.7344 E+03Mean1.7625 E+031.7138 E+031.7481 E+03Median1.7631 E+031.7158 E+031.7487 E+03Std7.3313 E+007.9928 E+006.3159 E+00f14xMin1.5392 E+041.1024 E+053.1265 E+03Mean1.4095 E+051.1027 E+051.1036 E+05Median1.4401 E+051.1027 E+051.1770 E+05Std2.7916 E+041.9162 E+012.9479 E+04f15xMin1.6084 E+031.6000 E+031.6031 E+03Mean1.6140 E+031.6000 E+031.6037 E+03Median1.6138 E+031.6000 E+031.6038 E+03Std3.8763 E+002.3967E−023.1219E−01Table 7
Ranks of five algorithms according to Friedman test in experiment one.
PSOBBOCLPSOBLPSODDBLPSOFriedman rank4.153.932.632.441.85Final rank54321Table 8
Ranks of five algorithms according to Friedman test in experiment two.
PSOBBOCLPSOBLPSODDBLPSOFriedman rank4.293.483.212.371.65Final rank54321Table 9
Ranks of three algorithms according to Friedman test in experiment three.
PBSPSODEBBODDBLPSOFriedman rank2.781.731.48Final rank321Table 10
Ranks of three algorithms according to Friedman test in experiment four.
PBSPSODEBBODDBLPSOFriedman rank2.521.951.53Final rank321Figure 2
Converging curves of the average best fitness in experiment one.
(a)(b)Figure 3
Converging curves of the average best fitness in experiment three.
(a)(b)Unimodal functions are used to explore the convergence rate of the optimization problem. Multimodal functions are used to explore the ability to jump out of local optimum. Hybrid functions consider that in the real-world optimization problems, different subcomponents of the variables may have different properties. Composition functions consider that in the real-world optimization problems, different simple problems composite a more complex problem. This is a challenge for algorithmic convergence rate. Most of the multimodal functions contain a number of local optima, which may lead to premature convergence of traditional algorithms. It is difficult for traditional algorithms to locate the global optimum for these functions.It is easy to observe that DDBLPSO shows its dominance over other competitors on unimodal functions and hybrid functions from Table3. However, DDBLPSO performs less on multimodal functions and composition functions. This means that DDBLPSO has much greater convergence rate than its competitors and performs slightly better than its competitors in jumping out of local optimum. The double-dynamic biogeography-based learning strategy is the main reason for this phenomenon. This strategy guides particle to learn from other particles not worse than itself, which leads a greater convergence rate of DDBLPSO. At the same time, DDBLPSO has a slightly better ability of jumping out of local optimum than other competitors because of simple mutation and complexity of functions. One the other hand, learning from the better particles means that the exploration ability of algorithm will be reduced slightly. For this reason, DDBLPSO does not have such eye-catching performance on multimodal functions and composition functions. Table 7 shows that DDBLPSO attains the best rank, BLPSO attains the second, and CLPSO attains the third, followed by BBO and PSO. It is obvious that DDBLPSO is the most competitive algorithm in this group of experimental comparison.Table4 reveals that DDBLPSO performs much better than other four algorithms on f1,f4,f5,f6,f8,f9,f10, and f12. DDBLPSO cannot achieve obvious dominance on each kind of functions due to the problems of being different types and large scale. On the whole, DDBLPSO still performs best. Table 8 presents the same ranking result as Table 7. Figure 2 shows that DDBLPSO has the strongest evolving trend on f1,f2,f4,f6,f7,f8,f10, and f14. DDBLPSO is also the most competitive algorithm in this group of experimental comparison with relatively large-scale problems.Generally speaking, it is observed from Tables3, 4, 7 and 9 and Figure 2 that DDBLPSO achieves the best performance compared with its competitors.Table5 shows that DDBLPSO beats PBSPSO and DEBBO on most functions, and Table 9 shows that DDBLPSO attains the best rank, DEBBO attains the second, and PBSPSO attains the third. Table 6 reveals that DDBLPSO performs much better than other two algorithms on f1,f4,f5,f6,f8,f11,andf12. Table 10 presents the same ranking result as Table 9. Figure 3 shows that DDBLPSO has the strongest evolving trend on f1,f2,f4,f5,f6,f7,f8,f10,f11, and f14. Generally speaking, it is observed from Tables 5, 6, 9 and 10 and Figure 3 that DDBLPSO beats a PSO variant and a BBO variant.


## 5.1. Test Functions and Parameter Settings

CEC2015 [25] benchmark functions are used to verify the performance of DDBLPSO. CEC2015 benchmark suite is simply introduced as follows. f1 and f2 are unimodal functions, f3−5 are multimodal functions, f6−8 are hybrid functions and f9−15 are composition functions.CLPSO [14] is a classical algorithm proposed based on PSO [10], and BLPSO [23] is an algorithm proposed based on BBO [22] and PSO. Inspired by CLPSO and BLPSO, we proposed DDBLPSO. DDBLPSO has an obvious relationship with BBO, PSO, CLPSO, and BLPSO, so we selected these four algorithms for comparison experiments. At the same time, we also selected two other representative algorithms which are PBSPSO [21] and DEBBO [24] for comparison experiments. We conducted four sets of numerical experiments which are labelled as experiment one, experiment two, experiment three, and experiment four. DDBLPSO is compared with four relevant algorithms (PSO, BBO, CLPSO, and BLSPSO), a PSO variant (PBSPSO), and a BBO variant (DEBBO). Design of the four experiments is shown in Table 1. The maximal number of function evaluations maxFES is set as 10000∗D. Search range is −100,100D, and 30 independent runs are conducted in MATLAB 2017b. Other parameters are shown in Table 2.Table 1
Design of experiment one, experiment two, experiment three, and experiment four.
ExperimentPopulation sizeNPoints numbermpComparison algorithmExperiment one3030PSO, BBO, CLPSO, BLSPSOExperiment two100100PSO, BBO, CLPSO, BLSPSOExperiment three3030PBSPSO, DEBBOExperiment four100100PBSPSO, DEBBOTable 2
Parameters of seven comparison algorithms.
AlgorithmParametersPSOInertia weightw=0.55, acceleration coefficient c1=c2=2.0, maximum velocity vmax=5.0BBOMaximum immigration rateI=1, maximum emigration rate E=1, maximum mutation rate mmax=0.005CLPSOInertia weightw is linearly decrease from 0.9 to 0.2, acceleration coefficient c=2.0, maximum velocity vmax=5.0BLPSOInertia weightw is linearly decrease from 0.9 to 0.2, acceleration coefficient c=2.0, maximum velocity vmax=5.0, maximum immigration rate I=1, maximum emigration rate E=1PBSPSOInertia weightw=0.55, acceleration coefficient c=2.0, maximum velocity vmax=5.0, decay term α=0.9, the weight of the derivative term Kd=0.03DEPSOMaximum immigration rateI=1, maximum emigration rate E=1, maximum mutation rate mmax=0.005, crossover rate CR=0.5, difference coefficient FX=0.7DDBLPSOInertia weightw is linearly decrease from 0.9 to 0.2, acceleration coefficient c=2.0, maximum velocity vmax=5.0, maximum immigration rate $I = 1$, maximum emigration rate E=1


## 5.2. Experimental Results and Discussion

Results of experiment one, experiment two, experiment three, and experiment four are statistically shown in Tables3–6, respectively. Tables 7–10 show the ranks of five algorithms according to the Friedman test of experiment one, experiment two, experiment three, and experiment four, respectively. Min, Mean, Median, and Std indicate the minimum function error value, the mean function error value, the median function error value, and the standard deviation of error values, respectively. In order to exhibit the evolution trend of five algorithms more vividly, converging curves of the average best fitness of functions in experiment one and experiment three are shown in Figures 2 and 3. The converging curves of functions in experiment two and experiment four are not shown due to their similarities with experiment one and experiment three, respectively. The boldface in Tables 3–6 indicates the best experimental results in experiment one to four, respectively.Table 3
Performance comparison of five algorithms in experiment one.
BBOPSOCLPSOBLPSODDBLPSOf1xMin1.6583 E+061.7321 E+067.7577 E+055.6816 E+052.0171 E+059Mean4.1619 E+061.1235 E+071.5641 E+061.3061 E+06.9974 E+058Median4.2666 E+069.4901 E+061.5160 E+061.0850 E+060404E+05Std1.2125 E+068.1069 E+063.9988 E+056.4276 E+057.7346 E+05f2xMin5.9570 E+072.1247 E+068.6937 E+041.0573 E+032.0057 E+02Mean1.0746 E+086.4067 E+064.1390 E+057.6477 E+033.0520 E+03Median1.0441 E+085.5692 E+063.5350 E+056.7947 E+031.3179 E+03Std2.2645 E+073.1246 E+062.9045 E+055.3207 E+034.2472 E+03f3xMin3.2033E+023.2014E+023.2118 E+023.2109 E+023.2104 E+02Mean3.2093E+023.2026E+023.2134 E+023.2131 E+023.2128 E+02Median3.2092E+023.2026E+023.2135 E+023.2131 E+023.2129 E+02Std3.1412E−016.9821E-027.9537E-029.3207E-021.1575E-01f4xMin5.5276 E+024.3839 E+024.1498 E+024.1592 E+024.0995 E+02Mean5.8999 E+024.5826 E+024.2232 E+024.2498 E+024.1878 E+02Median5.8819 E+024.5863 E+024.2201 E+024.2388 E+024.1840 E+02Std2.3338 E+011.1451 E+014.1135 E+006.1503 E+005.2623 E+00f5xMin2.7940 E+031.8947 E+031.2380 E+031.2387 E+031.3481 E+03Mean4.2481 E+032.6178 E+031.9363 E+031.6544 E+031.7612 E+03Median4.1462 E+032.5958 E+031.9451 E+031.5976 E+031.7362 E+03Std7.4098 E+024.0091 E+023.1450 E+022.9163 E+022.5296 E+02f6xMin8.5892 E+044.7158 E+051.3661 E+053.4194 E+042.7682 E+04Mean3.3191 E+055.7133 E+063.0127 E+051.5594 E+051.1685 E+05Median2.8357 E+055.4783 E+062.7053 E+051.5365 E+059.0779 E+04Std1.8363 E+053.7012 E+061.1982E+058.9082 E+048.6045 E+04f7xMin7.0813 E+027.0836 E+027.0626 E+027.0570 E+027.0517 E+02Mean7.1215 E+027.1799 E+027.1138 E+027.0934 E+027.0754 E+02Median7.1023 E+027.1372 E+027.1242 E+027.0795 E+027.0586 E+02Std4.0321 E+001.7801 E+012.8718 E+003.1576 E+002.8994 E+00f8xMin2.9403 E+043.7955 E+042.1194 E+041.1270 E+041.1820 E+04Mean1.1430 E+051.5521 E+066.0038 E+044.7864 E+044.5841 E+04Median9.0699 E+041.1775 E+065.8822 E+044.5294 E+043.1882 E+04Std9.6038 E+041.4589 E+062.6934 E+042.8916 E+043.5138 E+04f9xMin1.0045 E+031.0046 E+031.0033 E+031.0032 E+031.0024 E+03Mean1.0740 E+031.0059 E+031.0040 E+031.0076 E+031.0037 E+03Median1.0064 E+031.0058 E+031.0040 E+031.0038 E+031.0037 E+03Std1.3863 E+027.2713E−012.7210E−012.0779 E+015.1535E−01f10xMin2.0119 E+044.0609 E+057.5343 E+042.9240 E+042.1702 E+04Mean5.0981 E+052.5287 E+062.0769 E+052.0526 E+051.0437 E+05Median7.9737 E+041.7787 E+062.1072 E+051.1130 E+057.1822 E+04Std9.4063 E+052.2614 E+067.6381 E+044.0970 E+051.0132 E+05f11xMin1.4042 E+031.8057 E+031.4035 E+031.4015 E+031.4013 E+03Mean1.6772 E+031.9459 E+031.4617 E+031.5100 E+031.4753 E+03Median1.4285 E+031.9471 E+031.4056 E+031.4031 E+031.4021 E+03Std3.1792 E+026.2006E+011.1830 E+021.5473 E+021.1947E+02f12xMin1.3100 E+031.3084 E+031.3040 E+031.3049 E+031.3040 E+03Mean1.3214 E+031.3111 E+031.3058 E+031.3066 E+031.3071 E+03Median1.3139 E+031.3110 E+031.3055 E+031.3064 E+031.3075 E+03Std2.1131 E+011.5834 E+009.8335E-011.1492 E+001.4291 E+00f13xMin1.4175 E+031.3933 E+031.4352 E+031.4144 E+031.3995 E+03Mean1.4252 E+031.4078 E+031.4420 E+031.4259 E+031.4173 E+03Median1.4244 E+031.4086 E+031.4416 E+031.4254 E+031.4164 E+03Std4.8717 E+006.6629 E+003.4109 E+006.0813 E+007.2068E+00f14xMin3.7298 E+033.2799 E+043.2503 E+043.2503 E+041.5000 E+03Mean3.7381 E+043.4675 E+043.3058 E+043.3235 E+043.2591 E+04Median3.8788 E+043.4793 E+043.2651 E+043.2651 E+043.3648 E+04Std1.0738 E+049.1682 E+027.4020 E+021.0085 E+035.9283 E+03f15xMin1.6042 E+031.6007 E+031.6000 E+031.6000 E+031.6000 E+03Mean1.6105 E+031.6012 E+031.6001 E+031.6000 E+031.6004 E+03Median1.6127 E+031.6011 E+031.6001 E+031.6000 E+031.6000 E+03Std5.5047 E+001.9659E-013.2672E-024.7803E-032.3806 E+00Table 4
Performance comparison of five algorithms in experiment two.
BBOPSOCLPSOBLPSODDBLPSOf1xMin1.6872 E+071.2995 E+071.2592 E+079.6047 E+068.8196 E+06Mean3.3932 E+072.4028 E+072.0317 E+071.2281 E+071.1151 E+07Median3.3742 E+072.3245 E+072.0301 E+071.2062E+071.1181 E+07Std5.2575 E+066.4139 E+062.7277 E+061.4734 E+061.0671 E+06f2xMin5.5282 E+081.3908 E + 062.1847 E+089.6042 E+072.3631 E+07Mean6.4517 E+082.2934 E + 062.5524 E+081.2074E+083.2844 E+07Median6.3717 E+082.1154 E + 062.5419 E+081.2030E+083.2473 E+07Std5.2834 E+075.7400 E + 051.7095 E+071.3223 E+074.2897 E+06f3xMin3.2133 E+023.2079E + 023.2134 E+023.2139 E+023.2136 E+02Mean3.2145 E+023.2085E + 023.2148 E+023.2146 E+023.2145 E+02Median3.2147 E+023.2086E + 023.2148 E+023.2145 E+023.2145 E+02Std5.8776E-023.7493 E - 023.9590E-024.0692E-023.9328E-02f4xMin9.1048 E+025.0448 E+025.9808 E+025.2056E+024.8020 E+02Mean1.0131 E+037.5271 E+026.2837 E+025.4878 E+025.0111 E+02Median1.0112 E+038.3702 E+026.2944 E+025.4789 E+024.9888 E+02Std4.6330 E+011.5583 E+021.3892 E+011.3776 E+011.0271 E+01f5xMin1.2581 E+041.7639 E+048.4258 E+035.5564 E+034.7234 E+03Mean1.4282 E+041.9160 E+049.5008 E+037.1715 E+035.5794 E+03Median1.4090 E+041.9176 E+049.3825 E+037.2019E+035.3980 E+03Std9.6948 E+028.2684 E+026.2791 E+026.5159 E+026.1390 E+02f6xMin1.8440 E+067.3864 E+062.3964 E+061.6318 E+061.3833 E+06Mean3.7058 E+061.3158 E+073.3193 E+062.1834 E+061.9272 E +06Median3.6446 E+061.2457 E+073.2200 E+062.2014E+061.9522 E+06Std9.8093 E+054.1777 E+065.9871 E+053.0671 E+052.6129 E+05f7xMin7.3969 E+028.1342 E+027.9195 E+027.3534 E+027.3350 E+02Mean7.8438 E+028.4624 E+028.2456 E+027.9700 E+028.0765 E+02Median7.7023 E+028.5004 E+028.2193 E+028.0104 E+028.0020 E+02Std4.1385 E+012.0194 E+011.8298 E+013.2732 E+012.8476 E+01f8xMin1.2878 E+064.1243 E+061.1840 E+065.0520 E+055.1323 E+05Mean1.9175 E+061.0590 E+071.9332 E+068.9139 E+056.9234 E+05Median1.8616 E+061.0212 E+071.9618 E+068.9816 E+056.8432 E+05Std3.7847 E+053.8045 E+063.2658 E+052.2895 E+051.3364 E+05f9xMin1.0125 E+031.0110 E+031.0072 E+031.0069 E+031.0068 E+03Mean1.1742 E+031.0138 E+031.0079 E+031.0079 E+031.0077 E+03Median1.0414 E+031.0138 E+031.0078 E+031.0079 E+031.0076 E+03Std2.8267 E+021.2870 E+005.2094E-015.5162E-015.2679E-01f10xMin2.0038 E+062.1053 E+062.7821 E+054.7205 E+041.4355 E+04Mean3.8010 E+063.7765 E+064.9280 E+055.5835 E+041.6831 E+04Median3.5081 E+063.3635 E+064.9422 E+055.6250 E+041.6362 E+04Std1.5857 E+061.2352 E+069.5961 E+045.1752 E+032.1156 E+03f11xMin1.4231 E+032.5629 E+031.4173 E+031.4100 E+031.4102 E+03Mean2.1106 E+032.8176 E+031.7756 E+031.4136 E+031.6127 E+03Median1.4395 E+032.8267 E+031.4220 E+031.4139 E+031.4126 E+03Std7.9489 E+021.1589 E+026.5399 E+021.5746 E+004.5786 E+02f12xMin1.3561 E+031.3177 E+031.3137 E+031.3126 E+031.3111 E+03Mean1.3821 E+031.3202 E+031.3154 E+031.3153 E+031.3147 E+03Median1.3811 E+031.3202 E+031.3155 E+031.3154 E+031.3149 E+03Std1.3010 E+011.1930E+008.0780E-011.1071 E+001.3710 E+00f13xMin1.7453 E+031.6946 E+031.7725 E+031.7411 E+031.7344 E+03Mean1.7600 E+031.7135 E+031.7825 E+031.7534 E+031.7481 E+03Median1.7602 E+031.7137 E+031.7833 E+031.7540 E+031.7487 E+03Std7.6554 E+007.6113 E+005.0447 E+005.9510 E+006.3159 E+00f14xMin1.5092 E+041.1046 E+051.1030 E+055.0142 E+033.1265 E+03Mean1.5690 E+051.1051 E+051.1094 E+053.2405 E+041.1036 E+05Median1.5755 E+051.1051 E+051.1032 E+055.5990 E+031.1770 E+05Std4.4260 E+044.0365 E+011.8805 E+034.7720 E+042.9479 E+04f15xMin1.6086 E+031.6010 E+031.6063 E+031.6048 E+031.6031 E+03Mean1.6159 E+031.6041 E+031.6066 E+031.6052 E+031.6037 E+03Median1.6157 E+031.6042 E+031.6066 E+031.6052 E+031.6038 E+03Std3.5097 E+001.6093 E+001.4693E−011.9835E−013.1219E−01Table 5
Performance comparison of three algorithms in experiment three.
PBSPSODEBBODDBLPSOf1xMin1.8592 E+064.6232 E+052.0171 E+05Mean4.0977 E+062.0454 E+069.9974 E+05Median3.8062 E+061.6998 E+068.0404 E+05Std1.4323 E+061.3320 E+067.7346 E+05f2xMin8.0625 E+072.0358 E+022.0057 E+02Mean1.2518 E+084.0561 E+033.0520 E+03Median1.3096 E+081.1378 E+031.3179 E+03Std2.6223 E+074.5224 E+034.2472 E+03f3xMin3.2058E+023.2026E+023.2104 E+02Mean3.2103 E+023.2034E+023.2128 E+02Median3.2106 E+023.2035E+023.2129 E+02Std2.5954E−014.7224E-021.1575E−01f4xMin5.3829 E+024.2006E+024.0995 E+02Mean5.9001 E+024.3346 E+024.1878 E+02Median5.9107 E+024.3369 E+024.1840 E+02Std2.6829 E+017.5401 E+005.2623 E+00f5xMin3.2276 E+032.4576 E+031.3481 E+03Mean4.1617 E+033.1351 E+031.7612 E+03Median4.1973E+033.1853 E+031.7362 E+03Std5.1598 E+023.1687 E+022.5296 E+02f6xMin9.2791 E+041.1225 E+052.7682 E+04Mean3.3549 E+053.7463 E+051.1685 E+05Median3.1758 E+052.9917 E+059.0779 E+04Std1.8022 E+052.4642 E+058.6045 E+04f7xMin7.0838 E+027.0717 E+027.0517 E+02Mean7.1403 E+027.1034 E+027.0754 E+02Median7.1384 E+027.1015 E+027.0586 E+02Std4.4317 E+001.6748 E+002.8994 E+00f8xMin3.1112 E+045.3259 E+031.1820 E+04Mean1.4377 E+057.7449 E+044.5841 E+04Median1.1602 E+054.8418 E+043.1882 E+04Std1.0130 E+051.0253 E+053.5138 E+04f9xMin1.0043 E+031.0022 E+031.0024 E+03Mean1.0677 E+031.0031 E+031.0037 E+03Median1.0061 E+031.0025 E+031.0037 E+03Std1.2610 E+022.0847 E+005.1535E-01f10xMin2.0553 E+041.1722 E+042.1702 E+04Mean1.6465 E+051.2081E+051.0437 E+05Median1.1912E+058.6437 E+047.1822 E+04Std1.3543 E+051.0541 E+051.0132 E+05f11xMin1.4049 E+031.5319 E+031.4013 E+03Mean1.6647 E+031.6533 E+031.4753 E+03Median1.4082 E+031.6380 E+031.4021 E+03Std3.0497 E+026.1809 E+011.1947E+02f12xMin1.3108 E+031.3052 E+031.3040 E+03Mean1.3152 E+031.3061 E+031.3071 E+03Median1.3139 E+031.3058 E+031.3075 E+03Std4.6593 E+001.1863 E+001.4291 E+00f13xMin1.4153 E+031.3928 E+031.3995 E+03Mean1.4281 E+031.3999 E +031.4173 E+03Median1.4289 E+031.3996 E+031.4164 E+03Std5.1713 E+004.3428 E+007.2068E+00f14xMin3.2641 E+043.2795 E+041.5000 E+03Mean3.6568 E+043.5561 E+043.2591 E+04Median3.7333 E+043.5346 E+043.3648 E+04Std2.0662 E+039.2865 E+025.9283 E+03f15xMin1.6034 E+031.6000 E+031.6000 E+03Mean1.6076 E+031.6000 E+031.6004 E+03Median1.6048 E+031.6000 E+031.6000 E+03Std4.8441 E+001.0394E-022.3806 E+00Table 6
Performance comparison of three algorithms in experiment four.
PBSPSODEBBODDBLPSOf1xMin2.8403 E+071.2931 E+088.8196 E+06Mean3.5153 E+071.7284 E+081.1151 E+07Median3.4872 E+071.7385 E+081.1181 E+07Std4.0420 E+062.4193 E+071.0671 E+06f2xMin5.3463 E+082.0005 E+022.3631 E+07Mean1.2518 E+081.6110 E+033.2844 E+07Median1.3096 E+081.0518 E+033.2473 E+07Std2.6223 E+071.6068 E+034.2897 E+06f3xMin3.2131 E+023.2073E+023.2136 E+0Mean3.2144 E+023.2080E+023.2145 E+02Median3.2144 E+023.2083E+023.2145 E+02Std6.3151E−024.2976E−023.9328 E−02f4xMin9.1895 E+027.2243 E+024.8020 E+02Mean1.0124 E+037.6390 E+025.0111 E+02Median1.0051 E+037.5774 E+024.9888 E+02Std4.9600 E+012.5379 E+011.0271 E+01f5xMin1.2411 E+041.6916 E+044.7234 E+03Mean1.4988 E+041.7798 E+045.5794 E+03Median1.4942 E+041.7938 E+045.3980 E+03Std1.2888 E+037.2976 E+026.1390 E+02f6xMin2.1414 E+062.3652 E+071.3833 E+06Mean3.6713 E+063.3346 E+071.9272 E+06Median3.5486 E+063.4022 E+071.9522 E+06Std9.3569 E+055.1752 E+062.6129 E+05f7xMin7.4025 E+028.4813 E+027.3350 E+02Mean7.8440 E+028.4978 E+028.0765 E+02Median7.7255 E+028.4967 E+028.0020 E+02Std3.6466 E+018.3256E−012.8476 E+01f8xMin1.2536 E+061.0239 E+075.1323 E+05Mean1.9625 E+061.7527 E+076.9234 E+05Median1.9220 E+061.7616 E+076.8432 E+05Std3.8544 E+054.3476 E+061.3364 E+05f9xMin1.0124 E+031.0073 E+031.0068 E+03Mean1.2043E+031.0176 E+031.0077 E+03Median1.0155 E+031.0175 E+031.0076 E+03Std3.1718 E+022.2394E−015.2679E−01f10xMin1.6908 E+065.3905 E+031.4355 E+04Mean3.7009 E+066.7693 E+031.6831 E+04Median3.3489 E+066.4983 E+031.6362 E+04Std1.7822 E+061.0052 E+032.1156 E+03f11xMin1.4281 E+031.7210 E+031.4102 E+03Mean2.1024 E+032.8620 E+031.6127 E+03Median1.4369 E+033.1818 E+031.4126 E+03Std8.3776 E+027.4285 E+024.5786 E+02f12xMin1.3512 E+031.3172 E+031.3111 E+03Mean1.3720 E+031.3176 E+031.3147 E+03Median1.3688 E+031.3176 E+031.3149 E+03Std1.6991 E+012.6835E−011.3710 E+00f13xMin1.7474 E+031.6929 E+031.7344 E+03Mean1.7625 E+031.7138 E+031.7481 E+03Median1.7631 E+031.7158 E+031.7487 E+03Std7.3313 E+007.9928 E+006.3159 E+00f14xMin1.5392 E+041.1024 E+053.1265 E+03Mean1.4095 E+051.1027 E+051.1036 E+05Median1.4401 E+051.1027 E+051.1770 E+05Std2.7916 E+041.9162 E+012.9479 E+04f15xMin1.6084 E+031.6000 E+031.6031 E+03Mean1.6140 E+031.6000 E+031.6037 E+03Median1.6138 E+031.6000 E+031.6038 E+03Std3.8763 E+002.3967E−023.1219E−01Table 7
Ranks of five algorithms according to Friedman test in experiment one.
PSOBBOCLPSOBLPSODDBLPSOFriedman rank4.153.932.632.441.85Final rank54321Table 8
Ranks of five algorithms according to Friedman test in experiment two.
PSOBBOCLPSOBLPSODDBLPSOFriedman rank4.293.483.212.371.65Final rank54321Table 9
Ranks of three algorithms according to Friedman test in experiment three.
PBSPSODEBBODDBLPSOFriedman rank2.781.731.48Final rank321Table 10
Ranks of three algorithms according to Friedman test in experiment four.
PBSPSODEBBODDBLPSOFriedman rank2.521.951.53Final rank321Figure 2
Converging curves of the average best fitness in experiment one.
(a)(b)Figure 3
Converging curves of the average best fitness in experiment three.
(a)(b)Unimodal functions are used to explore the convergence rate of the optimization problem. Multimodal functions are used to explore the ability to jump out of local optimum. Hybrid functions consider that in the real-world optimization problems, different subcomponents of the variables may have different properties. Composition functions consider that in the real-world optimization problems, different simple problems composite a more complex problem. This is a challenge for algorithmic convergence rate. Most of the multimodal functions contain a number of local optima, which may lead to premature convergence of traditional algorithms. It is difficult for traditional algorithms to locate the global optimum for these functions.It is easy to observe that DDBLPSO shows its dominance over other competitors on unimodal functions and hybrid functions from Table3. However, DDBLPSO performs less on multimodal functions and composition functions. This means that DDBLPSO has much greater convergence rate than its competitors and performs slightly better than its competitors in jumping out of local optimum. The double-dynamic biogeography-based learning strategy is the main reason for this phenomenon. This strategy guides particle to learn from other particles not worse than itself, which leads a greater convergence rate of DDBLPSO. At the same time, DDBLPSO has a slightly better ability of jumping out of local optimum than other competitors because of simple mutation and complexity of functions. One the other hand, learning from the better particles means that the exploration ability of algorithm will be reduced slightly. For this reason, DDBLPSO does not have such eye-catching performance on multimodal functions and composition functions. Table 7 shows that DDBLPSO attains the best rank, BLPSO attains the second, and CLPSO attains the third, followed by BBO and PSO. It is obvious that DDBLPSO is the most competitive algorithm in this group of experimental comparison.Table4 reveals that DDBLPSO performs much better than other four algorithms on f1,f4,f5,f6,f8,f9,f10, and f12. DDBLPSO cannot achieve obvious dominance on each kind of functions due to the problems of being different types and large scale. On the whole, DDBLPSO still performs best. Table 8 presents the same ranking result as Table 7. Figure 2 shows that DDBLPSO has the strongest evolving trend on f1,f2,f4,f6,f7,f8,f10, and f14. DDBLPSO is also the most competitive algorithm in this group of experimental comparison with relatively large-scale problems.Generally speaking, it is observed from Tables3, 4, 7 and 9 and Figure 2 that DDBLPSO achieves the best performance compared with its competitors.Table5 shows that DDBLPSO beats PBSPSO and DEBBO on most functions, and Table 9 shows that DDBLPSO attains the best rank, DEBBO attains the second, and PBSPSO attains the third. Table 6 reveals that DDBLPSO performs much better than other two algorithms on f1,f4,f5,f6,f8,f11,andf12. Table 10 presents the same ranking result as Table 9. Figure 3 shows that DDBLPSO has the strongest evolving trend on f1,f2,f4,f5,f6,f7,f8,f10,f11, and f14. Generally speaking, it is observed from Tables 5, 6, 9 and 10 and Figure 3 that DDBLPSO beats a PSO variant and a BBO variant.


## 6. Applications in UAV Path Planning

### 6.1. Six Kinds of Terrain Functions

City, village without houses, village with houses, mountainous area without houses, mountainous area with houses, and mountainous area with a huge building are the most common terrains in UAV path planning. Six kinds of terrain functions are designed depending on these conditions. City has flat ground and tall buildings. Village without houses means uneven ground. Village with houses means uneven ground and low buildings. Mountainous area without houses means uneven ground and mountains. Mountainous area with houses has uneven ground, mountains, and low buildings. Mountainous area with a huge building has uneven ground, mountains, and a huge building.x′,y′ is the coordinate of any point on the plane. The details of six terrain functions are as follows.The terrain function of cityfterrain1 is defined as follows:(19)fterrain1=Ti,ifx′,y′∈Ωi,i=1,2,…,T,0,ifx′,y′∈Ωi,i=1,2,…,T,where Ti is the height of the tall building i, Ωi is the area occupied by the tall building i, and T is the number of tall buildings.The terrain function of village without housesfterrain2 is defined as follows:(20)fterrain2=sinx′+a1+a2∗siny′+cosy′+a3+a4∗cosx′+sinx′2+y′2+a5+a6∗cosa6∗x′2+y′2,where a1,a2,a3,a4,a5, and a6 are terrain parameters, which decide the uneven degree of the terrain.The terrain function of village with housesfterrain3 is defined as follows:(21)fterrain3=maxSi,fterrain2,ifx′,y′∈Γi,i=1,2,…,S,fterrain2,ifx′,y′∉Γi,i=1,2,…,S,where Si is the height of the low building i, Γi is the area occupied by the low building i, and S is the number of low buildings.The terrain function of mountainous area without housesfterrain4 is defined as follows:(22)Mi=Ri∗exp−x′−PiKi2−y′−QiKi2,i=1,2,…,M,fterrain4=maxMi,fterrain2,where Mi is the mountain function, Ri, Ri, Qi, and Ki describe the position and the shape of mountain i, and M is the number of mountains.The terrain function of mountainous area with housesfterrain5 is defined as follows:(23)fterrain5=maxSi,fterrain4,ifx′,y′∈Γi,i=1,2,…,S,fterrain4,ifx′,y′∉Γi,i=1,2,…,S,where Si is the height of the low building i, Γi is the area occupied by the low building i, and S is the number of low buildings.The terrain function of mountainous area with a huge buildingfterrain6 is defined as follows:(24)fterrain6=maxHuge,fterrain4,ifx′,y′∈Ω′,fterrain4,ifx′,y′∉Ω′,where Huge is the height of the huge building and Ω′ is the area occupied by the huge building.


### 6.2. Parameter Settings

Cost functions with city, village without houses, village with houses, mountainous area without houses, mountainous area with houses, and mountainous area with a huge building are labelled ascostfun1−costfun6. Four sets of UAV path planning experiments are conducted which are labelled as experiment five, experiment six, experiment seven, and experiment eight. Design of the four experiments are shown in Table 11. The boldface in Tables 12–15 indicates the best experimental results in experiment five to eight, respectively. Points number means the number of points in each path without starting point and end point. Dimension is equal to twice the point number. The path is divided into mp+1 small lines by mp points from the starting point to the end point. To simplify the calculation, if a point is in the danger zone, it is assumed that the halves of both small lines before and after and adjacent to the point are also in the danger zone. It is the same for a point under the ground or under a building. UAV search space is [−50, 50]∗[−50, 50]∗[0, 25], terrain parameters a1=10,a2=1,a3=20,a4=0.8,a5=30,a6=0.9, weight coefficients W1=W2=W3=W4=1, penalty constant P=3, and a small positive number Zmin=0.1. Starting point and end point coordinates are (−50,−50, 0.1) and (50, 50, 0.1), respectively. The maximum velocity along Y axis and Z axis is 2.5 and 0.625, respectively. The details of tall, low, and huge buildings are given in Table 16. The detailed parameter settings of mountains are given in Table 17. Danger areas are designed as equation (25). Other parameter settings of algorithms are the same as in Section 5.(25)x′+252+y′+252+z′2=102,x′−252+y′−252+z′2=102.Table 11
Design of experiment five, experiment six, experiment seven, and experiment eight.
ExperimentPopulation size NPoints numbermpComparison algorithmExperiment five3014PSO, BBO, CLPSO, BLSPSOExperiment six10049PSO, BBO, CLPSO, BLSPSOExperiment seven3014PBSPSO, DEBBOExperiment eight10049PBSPSO, DEBBOTable 12
Performance comparison of five algorithms in experiment five.
BBOPSOCLPSOBLPSODDBLPSOcostfun1Min0.3337860.3616110.3330330.3330380.332735Mean0.3548930.4080340.3487550.3478500.338909Median0.3481190.4018550.3464450.3407430.335515Std0.0202090.0359110.0197650.0201090.005750costfun2Min0.3335140.3582980.3326790.3326620.332363Mean0.3380820.4002070.3330740.3333870.332846Median0.3362490.3928370.3330440.3330430.332717Std0.0054530.0305240.0003340.0006800.000376costfun3Min0.3334340.3631590.3326620.3326620.332470Mean0.3384070.3961830.3332210.3331860.332957Median0.3369430.3852520.3330440.3330430.332687Std0.0046690.0284170.0005250.0004180.001214costfun4Min0.3335790.3547680.3326790.3326790.332454Mean0.3363640.4007450.3332370.3335810.333045Median0.3351410.3960600.3330430.3330430.332773Std0.0036540.0327820.0011820.0016670.001155costfun5Min0.3331590.3582980.3326790.3326620.332422Mean0.3378720.3993600.3331080.3331390.332759Median0.3362490.3917140.3330430.3330430.332678Std0.0057340.0307700.0004420.0005580.000374costfun6Min0.3343770.3625320.3324450.3326920.332414Mean0.3406390.3954830.3338080.3336230.333442Median0.3378520.3861250.3340800.3337380.333598Std0.0085960.0264400.0006250.0004840.000673Table 13
Performance comparison of five algorithms in experiment six.
BBOPSOCLPSOBLPSODDBLPSOcostfun1Min0.4095220.4525630.4078230.3902250.384962Mean0.4858570.5392110.4238500.4178250.417211Median0.4783690.5457260.4142870.4070630.394661Std0.0478920.0378610.0200930.0268660.037308costfun2Min0.3808570.4645340.3752540.3664520.363554Mean0.3885810.5297620.3801450.3713760.368538Median0.3888560.5313480.3802590.3711620.368096Std0.0034260.0355970.0020970.0024280.002839costfun3Min0.3805790.4645610.3761830.3668380.363259Mean0.3904650.5302200.3804780.3708350.369487Median0.3893780.5267180.3811160.3705120.368922Std0.0048440.0422320.0030740.0018310.003726costfun4Min0.3824320.4724340.3741500.3671050.362359Mean0.3904430.5236420.3801300.3706140.368372Median0.3901810.5224550.3802350.3705680.368463Std0.0039900.0301730.0026000.0019430.002333costfun5Min0.3819210.4365420.3753580.3676930.364425Mean0.3890060.5246260.3809410.3717970.368500Median0.3898570.5316510.3807430.3716050.367672Std0.0038580.0318820.0021980.0031420.003034costfun6Min0.3825860.4595590.3777880.3682910.363963Mean0.3925470.5178710.3832030.3722130.369134Median0.3919840.5234370.3835970.3713270.369174Std0.0066110.0331320.0037010.0028660.002664


### 6.3. Results and Discussion of UAV Path Planning

Tables12–15 show the UAV path planning results of six kinds of terrains in experiment five, experiment six, experiment seven, and experiment eight, respectively. The ranks of five algorithms according to Friedman test of experiment three and experiment four are shown in Tables 18–21, respectively. Min, Mean, Median, and Std indicate the minimum function error value, the mean function error value, the median function error value, and the standard deviation of error values, respectively. In order to exhibit the evolution trend of five algorithms more vividly, the converging curves of the average best fitness in experiment five and experiment seven are shown in Figures 4 and 5, respectively. The converging curves of six kinds of terrain functions in experiment six and experiment eight are not shown due to the similar converging behaviours with experiment five and experiment seven, respectively.Table 14
Performance comparison of three algorithms in experiment seven.
PBSPSODEBBODDBLPSOcostfun1Min0.3339170.3328590.332735Mean0.3516850.3414140.338909Median0.3406600.3355950.335515Std0.0251570.0103530.005750costfun2Min0.3338010.3323100.332363Mean0.3385380.3396930.332846Median0.3372440.3393610.332717Std0.0047490.0076400.000376costfun3Min0.3336310.3323550.332470Mean0.3356850.3403120.332957Median0.3348000.3388830.332687Std0.0021720.0068690.001214costfun4Min0.3334430.3326110.332454Mean0.3367720.3395820.333045Median0.3349110.3363380.332773Std0.0056490.0104880.001155Costfun5Min0.3338520.3323100.332422Mean0.3386360.3396870.332759Median0.3372440.3391960.332678Std0.0048920.0074730.000374costfun6Min0.3340830.3330780.332414Mean0.3371380.3422820.333442Median0.3363960.3391180.333598Std0.0027390.0120530.000673Table 15
Performance comparison of three algorithms in experiment eight.
PBSPSODEBBODDBLPSOcostfun1Min0.4086380.7401780.384962Mean0.5070990.8551350.417211Median0.5000300.8579940.394661Std0.0575980.0319870.037308costfun2Min0.3839740.3736910.363554Mean0.3924060.4009780.368538Median0.3920860.3980950.368096Std0.0051320.0163300.002839costfun3Min0.3833510.3621850.363259Mean0.3942800.4026380.369487Median0.3936060.4026760.368922Std0.0047800.0207250.003726costfun4Min0.3848650.3682130.362359Mean0.3931530.4070620.368372Median0.3925430.4069020.368463Std0.0052160.0204240.002333costfun5Min0.3854250.3630510.364425Mean0.3929560.4096710.368500Median0.3933300.4143760.367672Std0.0040380.0199700.003034costfun6Min0.3868780.3790410.363963Mean0.3937600.4075830.369134Median0.3946910.4082770.369174Std0.0036570.0161360.002664Table 16
Parameter settings of tall, short, and huge buildings.
Tall buildings[−20,−10]∗[5,15]∗[0,16][10,20]∗[5,15]∗[0,15][−15,−6]∗[−8,3]∗[0,15][6,15]∗[−8,3]∗[0,14][−14,-3]∗[−20,-10]∗[0,14][3,14]∗[−2,−10]∗[0,16]Short buildings[−20,−10]∗[5,15]∗[0,6][10,20]∗[5,15]∗[0,5][−15,−6]∗[−8,3]∗[0,5][6,15]∗[−8,3]∗[0,4][−14,−3]∗[−20,−10]∗[0,4][3,14]∗[−20,−10]∗[0,6]Huge building[−45,45]∗[−45,45]∗[0,20]Table 17
Parameter settings of tall, short, and huge buildings.
MountainsR1=20,P1=0,Q1=30,K1=5R2=18,P2=0,Q2=−30,K2=2R3=21,P3=30,Q3=0,K3=3R4=19,P4=−30,Q4=0,K4=4Table 18
Ranks of five algorithms according to Friedman test in experiment five.
PSOBBOCLPSOBLPSODDBLPSOFriedman rank4.005.002.422.381.21Final rank45321Table 19
Ranks of five algorithms according to Friedman test in experiment six.
PSOBBOCLPSOBLPSODDBLPSOFriedman rank4.044.962.711.961.33Final rank45321Table 20
Ranks of three algorithms according to Friedman test in experiment seven.
PBSPSODEBBODDBLPSOFriedman rank2.382.501.13Final rank231Table 21
Ranks of three algorithms according to Friedman test in experiment eight.
PBSPSODEBBODDBLPSOFriedman rank2.252.631.13Final rank231Figure 4
Converging curves of different terrain functions in experiment five.Figure 5
Converging curves of different terrain functions in experiment seven.Table12 shows that DDBLPSO is the most competitive algorithm for the relatively small-scale problems with 14 points. It is easy to see that DDBLPSO attains the best rank and BLPSO is the second, followed by CLPSO, PSO, and BBO in Table 18. For the relatively large-scale problems with 49 points, Tables 13 and 19 reveal that DDBLPSO achieves the best results in experiment six. Table 19 shows that DDBLPSO attains the best rank, BLPSO is the second, and CLPSO is the third, followed by PSO and BBO. Furthermore, the experimental results indicate that it is much better than other competitors. However, Tables 12 and 13 show that DDBLPSO has relatively larger Std, which indicates a possible enhancement on the convergence capability of DDBLPSO. Figure 4 shows that DDBLPSO has the strongest evolving trend on all the terrain functions for the relatively large-scale problem in experiment five. Generally speaking, it can be observed from Tables 12, 13, 18, 19 and Figure 4 that DDBLPSO performs very encouraging in UAV path planning, but there is still room for improvement in terms of Std.It is easy to see that DDBLPSO beats DEBBO and PBSPSO for the relatively small-scale problems with 14 points in Table14. Table 15 shows that DDBLPSO attains the best rank, DEBBO is the second, and PBSPSO is the third in small-scale problems of UAV path planning. Figure 5 shows that DDBLPSO has the stronger evolving trend on all the terrain functions than DEBBO and PBSPSO in experiment seven. Tables 17 and 21 reveal the same results in large-scale problems.


## 6.1. Six Kinds of Terrain Functions

City, village without houses, village with houses, mountainous area without houses, mountainous area with houses, and mountainous area with a huge building are the most common terrains in UAV path planning. Six kinds of terrain functions are designed depending on these conditions. City has flat ground and tall buildings. Village without houses means uneven ground. Village with houses means uneven ground and low buildings. Mountainous area without houses means uneven ground and mountains. Mountainous area with houses has uneven ground, mountains, and low buildings. Mountainous area with a huge building has uneven ground, mountains, and a huge building.x′,y′ is the coordinate of any point on the plane. The details of six terrain functions are as follows.The terrain function of cityfterrain1 is defined as follows:(19)fterrain1=Ti,ifx′,y′∈Ωi,i=1,2,…,T,0,ifx′,y′∈Ωi,i=1,2,…,T,where Ti is the height of the tall building i, Ωi is the area occupied by the tall building i, and T is the number of tall buildings.The terrain function of village without housesfterrain2 is defined as follows:(20)fterrain2=sinx′+a1+a2∗siny′+cosy′+a3+a4∗cosx′+sinx′2+y′2+a5+a6∗cosa6∗x′2+y′2,where a1,a2,a3,a4,a5, and a6 are terrain parameters, which decide the uneven degree of the terrain.The terrain function of village with housesfterrain3 is defined as follows:(21)fterrain3=maxSi,fterrain2,ifx′,y′∈Γi,i=1,2,…,S,fterrain2,ifx′,y′∉Γi,i=1,2,…,S,where Si is the height of the low building i, Γi is the area occupied by the low building i, and S is the number of low buildings.The terrain function of mountainous area without housesfterrain4 is defined as follows:(22)Mi=Ri∗exp−x′−PiKi2−y′−QiKi2,i=1,2,…,M,fterrain4=maxMi,fterrain2,where Mi is the mountain function, Ri, Ri, Qi, and Ki describe the position and the shape of mountain i, and M is the number of mountains.The terrain function of mountainous area with housesfterrain5 is defined as follows:(23)fterrain5=maxSi,fterrain4,ifx′,y′∈Γi,i=1,2,…,S,fterrain4,ifx′,y′∉Γi,i=1,2,…,S,where Si is the height of the low building i, Γi is the area occupied by the low building i, and S is the number of low buildings.The terrain function of mountainous area with a huge buildingfterrain6 is defined as follows:(24)fterrain6=maxHuge,fterrain4,ifx′,y′∈Ω′,fterrain4,ifx′,y′∉Ω′,where Huge is the height of the huge building and Ω′ is the area occupied by the huge building.


## 6.2. Parameter Settings

Cost functions with city, village without houses, village with houses, mountainous area without houses, mountainous area with houses, and mountainous area with a huge building are labelled ascostfun1−costfun6. Four sets of UAV path planning experiments are conducted which are labelled as experiment five, experiment six, experiment seven, and experiment eight. Design of the four experiments are shown in Table 11. The boldface in Tables 12–15 indicates the best experimental results in experiment five to eight, respectively. Points number means the number of points in each path without starting point and end point. Dimension is equal to twice the point number. The path is divided into mp+1 small lines by mp points from the starting point to the end point. To simplify the calculation, if a point is in the danger zone, it is assumed that the halves of both small lines before and after and adjacent to the point are also in the danger zone. It is the same for a point under the ground or under a building. UAV search space is [−50, 50]∗[−50, 50]∗[0, 25], terrain parameters a1=10,a2=1,a3=20,a4=0.8,a5=30,a6=0.9, weight coefficients W1=W2=W3=W4=1, penalty constant P=3, and a small positive number Zmin=0.1. Starting point and end point coordinates are (−50,−50, 0.1) and (50, 50, 0.1), respectively. The maximum velocity along Y axis and Z axis is 2.5 and 0.625, respectively. The details of tall, low, and huge buildings are given in Table 16. The detailed parameter settings of mountains are given in Table 17. Danger areas are designed as equation (25). Other parameter settings of algorithms are the same as in Section 5.(25)x′+252+y′+252+z′2=102,x′−252+y′−252+z′2=102.Table 11
Design of experiment five, experiment six, experiment seven, and experiment eight.
ExperimentPopulation size NPoints numbermpComparison algorithmExperiment five3014PSO, BBO, CLPSO, BLSPSOExperiment six10049PSO, BBO, CLPSO, BLSPSOExperiment seven3014PBSPSO, DEBBOExperiment eight10049PBSPSO, DEBBOTable 12
Performance comparison of five algorithms in experiment five.
BBOPSOCLPSOBLPSODDBLPSOcostfun1Min0.3337860.3616110.3330330.3330380.332735Mean0.3548930.4080340.3487550.3478500.338909Median0.3481190.4018550.3464450.3407430.335515Std0.0202090.0359110.0197650.0201090.005750costfun2Min0.3335140.3582980.3326790.3326620.332363Mean0.3380820.4002070.3330740.3333870.332846Median0.3362490.3928370.3330440.3330430.332717Std0.0054530.0305240.0003340.0006800.000376costfun3Min0.3334340.3631590.3326620.3326620.332470Mean0.3384070.3961830.3332210.3331860.332957Median0.3369430.3852520.3330440.3330430.332687Std0.0046690.0284170.0005250.0004180.001214costfun4Min0.3335790.3547680.3326790.3326790.332454Mean0.3363640.4007450.3332370.3335810.333045Median0.3351410.3960600.3330430.3330430.332773Std0.0036540.0327820.0011820.0016670.001155costfun5Min0.3331590.3582980.3326790.3326620.332422Mean0.3378720.3993600.3331080.3331390.332759Median0.3362490.3917140.3330430.3330430.332678Std0.0057340.0307700.0004420.0005580.000374costfun6Min0.3343770.3625320.3324450.3326920.332414Mean0.3406390.3954830.3338080.3336230.333442Median0.3378520.3861250.3340800.3337380.333598Std0.0085960.0264400.0006250.0004840.000673Table 13
Performance comparison of five algorithms in experiment six.
BBOPSOCLPSOBLPSODDBLPSOcostfun1Min0.4095220.4525630.4078230.3902250.384962Mean0.4858570.5392110.4238500.4178250.417211Median0.4783690.5457260.4142870.4070630.394661Std0.0478920.0378610.0200930.0268660.037308costfun2Min0.3808570.4645340.3752540.3664520.363554Mean0.3885810.5297620.3801450.3713760.368538Median0.3888560.5313480.3802590.3711620.368096Std0.0034260.0355970.0020970.0024280.002839costfun3Min0.3805790.4645610.3761830.3668380.363259Mean0.3904650.5302200.3804780.3708350.369487Median0.3893780.5267180.3811160.3705120.368922Std0.0048440.0422320.0030740.0018310.003726costfun4Min0.3824320.4724340.3741500.3671050.362359Mean0.3904430.5236420.3801300.3706140.368372Median0.3901810.5224550.3802350.3705680.368463Std0.0039900.0301730.0026000.0019430.002333costfun5Min0.3819210.4365420.3753580.3676930.364425Mean0.3890060.5246260.3809410.3717970.368500Median0.3898570.5316510.3807430.3716050.367672Std0.0038580.0318820.0021980.0031420.003034costfun6Min0.3825860.4595590.3777880.3682910.363963Mean0.3925470.5178710.3832030.3722130.369134Median0.3919840.5234370.3835970.3713270.369174Std0.0066110.0331320.0037010.0028660.002664


## 6.3. Results and Discussion of UAV Path Planning

Tables12–15 show the UAV path planning results of six kinds of terrains in experiment five, experiment six, experiment seven, and experiment eight, respectively. The ranks of five algorithms according to Friedman test of experiment three and experiment four are shown in Tables 18–21, respectively. Min, Mean, Median, and Std indicate the minimum function error value, the mean function error value, the median function error value, and the standard deviation of error values, respectively. In order to exhibit the evolution trend of five algorithms more vividly, the converging curves of the average best fitness in experiment five and experiment seven are shown in Figures 4 and 5, respectively. The converging curves of six kinds of terrain functions in experiment six and experiment eight are not shown due to the similar converging behaviours with experiment five and experiment seven, respectively.Table 14
Performance comparison of three algorithms in experiment seven.
PBSPSODEBBODDBLPSOcostfun1Min0.3339170.3328590.332735Mean0.3516850.3414140.338909Median0.3406600.3355950.335515Std0.0251570.0103530.005750costfun2Min0.3338010.3323100.332363Mean0.3385380.3396930.332846Median0.3372440.3393610.332717Std0.0047490.0076400.000376costfun3Min0.3336310.3323550.332470Mean0.3356850.3403120.332957Median0.3348000.3388830.332687Std0.0021720.0068690.001214costfun4Min0.3334430.3326110.332454Mean0.3367720.3395820.333045Median0.3349110.3363380.332773Std0.0056490.0104880.001155Costfun5Min0.3338520.3323100.332422Mean0.3386360.3396870.332759Median0.3372440.3391960.332678Std0.0048920.0074730.000374costfun6Min0.3340830.3330780.332414Mean0.3371380.3422820.333442Median0.3363960.3391180.333598Std0.0027390.0120530.000673Table 15
Performance comparison of three algorithms in experiment eight.
PBSPSODEBBODDBLPSOcostfun1Min0.4086380.7401780.384962Mean0.5070990.8551350.417211Median0.5000300.8579940.394661Std0.0575980.0319870.037308costfun2Min0.3839740.3736910.363554Mean0.3924060.4009780.368538Median0.3920860.3980950.368096Std0.0051320.0163300.002839costfun3Min0.3833510.3621850.363259Mean0.3942800.4026380.369487Median0.3936060.4026760.368922Std0.0047800.0207250.003726costfun4Min0.3848650.3682130.362359Mean0.3931530.4070620.368372Median0.3925430.4069020.368463Std0.0052160.0204240.002333costfun5Min0.3854250.3630510.364425Mean0.3929560.4096710.368500Median0.3933300.4143760.367672Std0.0040380.0199700.003034costfun6Min0.3868780.3790410.363963Mean0.3937600.4075830.369134Median0.3946910.4082770.369174Std0.0036570.0161360.002664Table 16
Parameter settings of tall, short, and huge buildings.
Tall buildings[−20,−10]∗[5,15]∗[0,16][10,20]∗[5,15]∗[0,15][−15,−6]∗[−8,3]∗[0,15][6,15]∗[−8,3]∗[0,14][−14,-3]∗[−20,-10]∗[0,14][3,14]∗[−2,−10]∗[0,16]Short buildings[−20,−10]∗[5,15]∗[0,6][10,20]∗[5,15]∗[0,5][−15,−6]∗[−8,3]∗[0,5][6,15]∗[−8,3]∗[0,4][−14,−3]∗[−20,−10]∗[0,4][3,14]∗[−20,−10]∗[0,6]Huge building[−45,45]∗[−45,45]∗[0,20]Table 17
Parameter settings of tall, short, and huge buildings.
MountainsR1=20,P1=0,Q1=30,K1=5R2=18,P2=0,Q2=−30,K2=2R3=21,P3=30,Q3=0,K3=3R4=19,P4=−30,Q4=0,K4=4Table 18
Ranks of five algorithms according to Friedman test in experiment five.
PSOBBOCLPSOBLPSODDBLPSOFriedman rank4.005.002.422.381.21Final rank45321Table 19
Ranks of five algorithms according to Friedman test in experiment six.
PSOBBOCLPSOBLPSODDBLPSOFriedman rank4.044.962.711.961.33Final rank45321Table 20
Ranks of three algorithms according to Friedman test in experiment seven.
PBSPSODEBBODDBLPSOFriedman rank2.382.501.13Final rank231Table 21
Ranks of three algorithms according to Friedman test in experiment eight.
PBSPSODEBBODDBLPSOFriedman rank2.252.631.13Final rank231Figure 4
Converging curves of different terrain functions in experiment five.Figure 5
Converging curves of different terrain functions in experiment seven.Table12 shows that DDBLPSO is the most competitive algorithm for the relatively small-scale problems with 14 points. It is easy to see that DDBLPSO attains the best rank and BLPSO is the second, followed by CLPSO, PSO, and BBO in Table 18. For the relatively large-scale problems with 49 points, Tables 13 and 19 reveal that DDBLPSO achieves the best results in experiment six. Table 19 shows that DDBLPSO attains the best rank, BLPSO is the second, and CLPSO is the third, followed by PSO and BBO. Furthermore, the experimental results indicate that it is much better than other competitors. However, Tables 12 and 13 show that DDBLPSO has relatively larger Std, which indicates a possible enhancement on the convergence capability of DDBLPSO. Figure 4 shows that DDBLPSO has the strongest evolving trend on all the terrain functions for the relatively large-scale problem in experiment five. Generally speaking, it can be observed from Tables 12, 13, 18, 19 and Figure 4 that DDBLPSO performs very encouraging in UAV path planning, but there is still room for improvement in terms of Std.It is easy to see that DDBLPSO beats DEBBO and PBSPSO for the relatively small-scale problems with 14 points in Table14. Table 15 shows that DDBLPSO attains the best rank, DEBBO is the second, and PBSPSO is the third in small-scale problems of UAV path planning. Figure 5 shows that DDBLPSO has the stronger evolving trend on all the terrain functions than DEBBO and PBSPSO in experiment seven. Tables 17 and 21 reveal the same results in large-scale problems.


## 7. Conclusions

This paper presents a novel UAV path planning algorithm based on double-dynamic biogeography-based learning particle swarm optimization. DDBLPSO adopts double-dynamic biogeography-based learning strategy. Under this strategy, particle only learns from itself or other even better individuals. Six terrain functions are presented to simulate the most six common terrains in UAV path planning. Computational experiments and simulations demonstrate the performance advantages of the algorithm both in global optimization and UAV path planning. Especially for the relatively large-scale problems, it performs even more competitive.Our algorithm has the potential to be applied to other problems such as oil exploration, scheduling, and deep learning. The UAV path planning problem also can be extended to multiobjective or constrained optimization problems to be suitable for more complex situations.



---

*Source: 8519708-2022-01-29.xml*