A Modified Sparrow Search Algorithm with Application in 3d Route Planning for UAV

The unmanned aerial vehicle (UAV) route planning problem mainly centralizes on the process of calculating the best route between the departure point and target point as well as avoiding obstructions on route to avoid collisions within a given flight area. A highly efficient route planning approach is required for this complex high dimensional optimization problem. However, many algorithms are infeasible or have low efficiency, particularly in the complex three-dimensional (3d) flight environment. In this paper, a modified sparrow search algorithm named CASSA has been presented to deal with this problem. Firstly, the 3d task space model and the UAV route planning cost functions are established, and the problem of route planning is transformed into a multi-dimensional function optimization problem. Secondly, the chaotic strategy is introduced to enhance the diversity of the population of the algorithm, and an adaptive inertia weight is used to balance the convergence rate and exploration capabilities of the algorithm. Finally, the Cauchy–Gaussian mutation strategy is adopted to enhance the capability of the algorithm to get rid of stagnation. The results of simulation demonstrate that the routes generated by CASSA are preferable to the sparrow search algorithm (SSA), particle swarm optimization (PSO), artificial bee colony (ABC), and whale optimization algorithm (WOA) under the identical environment, which means that CASSA is more efficient for solving UAV route planning problem when taking all kinds of constraints into consideration.


Research Background
The three-dimensional (3d) route planning for unmanned aerial vehicle (UAV) can be considered as a multi-constraint global optimization problem [1], and the main purpose of this problem is to search for the optimal route from the departure point to the target point autonomously according to the task requirements and the flight constraints. In recent years, with the broad use of different kinds of UAV, this problem has drawn widespread attention from researchers.
In recent years, various approaches have been put forward for solving this complex optimization problem, such as A* algorithm [2], rapidly exploring random trees [3], potential field based method (PFM) [4], genetic algorithm (GA) [5], linear programming [6], and artificial intelligence guidance [7]. These methods can be classified as deterministic algorithms and non-deterministic algorithms. Obviously, most of the practical engineering problems have many local optimal solutions [8,9]. Although deterministic algorithms are quite mature in mathematical theory, there also exists the problem that they are less effective in dealing with discontinuous and non-derivative functions, and they are easily trapped into local optimal solutions when solving the UAV route planning problem with multiple constraints [10]. Due to those problems that deterministic algorithms have, researchers have begun to pay more attention to heuristic algorithms. The most important feature of the heuristic algorithm is that it introduces a stochastic approach, which provides the opportunity to get rid of the local optimal solutions. Compared with classical methods, the heuristic algorithms require less computation due to their independence of initial conditions. In general, it is significant to use heuristic algorithms to obtain the optimal solution for global optimization problems.

Related Work
With the development of computer science, some heuristic algorithms have been widely applied to deal with UAV route planning problems. In Table 1, the recent relevant studies are shown as below. Table 1. Heuristic algorithms for UAV route planning.

Authors Algorithms Modified Strategy
Shin, J. et al. [11] Improved particle swarm optimization (PSO) algorithm Proposed the multiple balance strategy Cekmez, U. et al. [12] Multi ant colony optimization (MACO) algorithm Proposed the new information exchange strategy Li, B. et al. [13] Improved artificial bee colony (ABC) Algorithm Proposed the balanced evolution strategy Pan, J. et al. [14] Chaotic cuckoo search (CCS) algorithm Integrated the chaotic strategy into CS Pandey, P. et al. [15] Improved glowworm swarm optimization (GSO) algorithm Introduced the genetic operators of mutation and crossover into GSO YongBo, C. et al. [16] Modified wolf pack search (WPS) algorithm Introduced the mutation operators into WPS GaiGe, W. et al. [17] Improved bat algorithm (IBA) Combined the BA with Differential Evolution (DE) Wu, J. et al. [18] Improved whale optimization algorithm (IWOA) Proposed an adaptive chaos-Gaussian switching strategy ChenZhi, Q. et al. [19] Hybrid grey wolf optimizer (GWO) (HSGWO-MSOS) Combined the simplified GWO and modified symbiotic organisms search (MSOS) Jize, L. et al. [20] Modified PSO algorithm Introduced the genetic algorithm and chaos theory into PSO Inspired by the predatory behavior of sparrows, the sparrow search algorithm (SSA) is firstly proposed in Ref. [27]. As a heuristic algorithm, the SSA imitates the predatory activity and the escape activity of a sparrow group, which has better convergence performance than some other swarm-intelligence algorithms. Because of its few controlling parameters as well as easy implementation, SSA has been successfully used in various practical engineering applications. For example, Ref. [28] proposed a power flow management of a hybrid renewable energy source (HRES) with SSA. Ref. [29] used an improved SSA to solve the renewable energy system optimization problem. In Ref. [30], the authors combined the neural networks with the SSA for the obstacle avoidance. In Ref. [31], the authors proposed an adaptive SSA to identify the optimal parameter of proton exchange membrane fuel cell stacks.

Contributions
In this paper, a novel modified sparrow search algorithm called CASSA is proposed for solving this complex optimization problem. The modified method includes the following steps: (1) The chaotic strategy is used to enhance the randomness of the positions of the initial population; (2) an adaptive inertia weight is applied to balance the convergence rate and exploration capabilities of the algorithm; (3) the Cauchy-Gaussian mutation strategy is adopted to improve the capability to get rid of stagnation. The effectiveness of the proposed modified algorithm is verified through the comparison among it and other algorithms, including original SSA, PSO, ABC, and WOA. Finally, the modified SSA is successfully applied to search the best route in the complicated 3d environment for UAV. The final experimental results evidenced that CASSA has the most excellent capability among all the algorithms tested in this paper.
The structure of this paper is shown as below. In Section 2, the original sparrow search algorithm is described in detail; Section 3 shows the motivation of improving CASSA and its details, including the chaotic strategy, the adaptive weight parameters, and the Cauchy-Gaussian mutation; Section 4 conducts comparison experiments on some classical benchmark functions and evaluates the effectiveness of each part of the proposed CASSA; Section 5 introduces the mathematical model of UAV route planning in detail and shows the experimental results of this problem; finally, Section 6 concludes with an integrated summary of this paper.

Overview of Sparrow Search Algorithm
The original SSA is a heuristic algorithm motivated by the foraging and anti-predation behaviors of sparrow colony. This algorithm was put forward by Ref. [27] in 2020 and has drawn great attention recently. During the foraging process of sparrows, the colony is divided into finders and entrants. The finders have better fitness values and provide foraging areas and directions for the entire sparrow colony, while the entrants use the position of finders to get food. When the sparrow colony detects the danger and the alarm value exceeds the safety value, the sparrows will act against predation. The framework of original SSA is composed of the following three main parts.

Updating Finder Location
In the search process, the finders with better fitness values are given priority for getting food. As the finders have the responsibility to search for food and direct the movement of the whole population, they can find food in a broader range compared with other sparrows. During each iteration, the location of the finder is updated as below: where t represents the current iteration; n is the number of sparrows; d denotes the dimension of the variables; T max is the largest number of the iteration; X t i represents the position of the ith individual at iteration t; α ∈ (0, 1] denotes a random number; R 2 ∈ (0, 1] represents the alarm value and ST ∈ [0.5, 1) represents the safety threshold; L is a 1 × d matrix that each factor inside is 1; Q is a random number that obeys the normal distribution with mean 0 and variance 1; if R 2 < ST, it denotes that the foraging environment is safe, while R 2 ≥ ST signifies that some individuals have already encountered predators and therefore all sparrows need to fly quickly to other safe areas.
According to Equation (1), it can be seen that when R 2 < ST, the next generation of finder will move around the current position. Equation (2) reveals the variation in the range of values of the finder's position.
where x represents the iteration times, and y represents the range of value variation for finder's position. Figure 1 shows the distribution of a random value between 0 and y, which represents the change of the updated range of the finder's position when the foraging environment is safe. As x becomes larger, y gradually narrows slowly from (0,1) to approximately (0,0.3). When x is smaller, the probability of y taking on a value close to 1 is higher, and as x increases, the distribution of the values of y becomes more even. Therefore, when R 2 < ST, the range of value variation of each dimension of the sparrow is getting smaller. This search strategy makes the SSA extremely capable of local search, but it also leads to a tendency to fall into the local optimal solutions in the late iterations.

Updating Entrant Location
The rest of the sparrow colony are entrants, which monitor the finders frequently. As soon as they notice that the finder has found better food, they will quit their current position and fly to better foraging areas. The location of the entrants is updated as below: where X best denotes the elite individual position, i.e., the current best position; X worst is the current global worst position; A denotes a d × d matrix for which each factor inside is assigned 1 or −1 in random. When i ≤ n/2, it suggests that the ith entrant is foraging near the best location, if i > n/2, it means that the ith entrant with the worse fitness is needed to fly to another place for food.

Detection and Early Warning Behavior
In the colony, all sparrows have a scouting and early warning mechanism. Generally, the sparrows that are aware of the predator account for 15% to 30% of the colony. The mathematical model can be described as below: where β represents the random step length control coefficient, which obeys the normal distribution with variance of 1 and mean value of 0; K ∈ [−1, 1] is a random number; f i denotes the fitness value of the ith individual; f b denotes the current global best fitness; f w denotes the current global worst fitness; ε represents a smallest parameter to avoid the zero-division-error. When f i > f b , it means that the individual is at the edge of the colony.
If f i = f b , this indicates that the sparrows in the middle of the colony are aware of the danger and need to fly closer to the safe place.

Proposed Modified Sparrow Search Algorithm (CASSA)
According to the results of previous research, the original SSA has better robustness and rapid convergence speed [27][28][29][30][31]. However, some shortcomings still exist in SSA, such as being easily trapped into local optimal solutions and lower solution precision. The initialization strategy of SSA is a simple random method, which makes the performance of the algorithm largely depend on the diversity of the initialized populations. Additionally, in the late iterations of the algorithm, the sparrow group gradually clusters around the found optimal position, making it easily get trapped into local optimal solutions. Therefore, in order to further enhance the SSA's capability, some specialized strategies are adopted. The detailed definitions of CASSA are shown as the followings.

Chaotic Strategy
In solving complex optimization problems, SSA has the disadvantage of poor population diversity in the late iterations. Recently, chaotic sequences [32] have been applied to the intelligence algorithms in many optimization applications. For instance, in Ref. [33], chaotic sequences are applied to dynamically improve population size to avoid immature convergence; in Ref. [34], chaotic sequences are used in the generation of the initial population and the performance of the mutation operators. In this paper, chaotic sequences are used to improve the population diversity of SSA. Chaotic sequences can map by different chaotic models such as the Tent map, Logistic map, Kent map, and Cubic map. Ref. [35] demonstrates that the Cubic map has better uniformity than others. Therefore, the cubic mapping chaos sequences are adopted for the generation of CASSA population. The diversity of the CASSA's population is improved by the ergodicity and the initial sensitivity of the chaotic maps. The mathematical formula is described as below: where X i represents the individual variable values of sparrows; X lb and X ub correspond to the upper and lower bounds in the solution space, respectively; N represents the population size. Firstly, let D denote the dimension, and a D-dimensional vector with values of [−1,1] in each dimension is randomly generated as the first operator. Then Equation (5) is used to iterate over each dimension of the first operator to obtain the remaining (N−1) operators. Finally, Equation (6) is used to map the values of the operators generated by the cubic mapping onto individual of sparrows.

Adaptive Inertia Weight Strategy
Whether the SSA can find the optimal solution is largely determined by the search ability of the finder. The locations of individuals in the searching range are distributed at random. When there are no adjacent sparrows near the current finder, a random search strategy will be conducted. It should be noticed that this mode not only slows down the convergence speed, but also decreases the convergence accuracy under the limited number of iterations. For further improvement of the finder's performance, an adaptive inertia weight is introduced to Equation (7). The mathematical formula is described as below: where t is the current iteration times; T max represents the maximum iteration times; w is an inertia weight that adaptively decreases as the number of iterations increases. By introducing this inertia weight, the range of values taken by α is adaptively controlled. As is shown in Figure 2, at the beginning of the iterations, a larger value of w gives the algorithm a larger range of optimization. At the end of the iterations, a smaller value of w is conducive to enhancing the convergence accuracy of the algorithm.

Cauchy-Gaussian Mutation Strategy
In the late iterations of SSA, sparrows gradually move closer to the optimal individuals, which leads to a lack of population diversity and a tendency for the algorithm to converge prematurely. For solving this problem, the Cauchy-Gaussian mutation strategy [36] is introduced in this paper. The individual with the best current fitness is selected for mutation. Then, its positions before and after mutation are compared, after which the better position is chosen to enter the next iteration. The mathematical definition of the Cauchy-Gaussian mutation strategy is described as below: where X best is the elite individual position, U t+1 i represents the position of the elite individual after mutation, σ 2 represents the standard deviation of the Cauchy-Gaussian mutation strategy. cauchy(0, σ 2 ) is a random variate satisfying Cauchy distribution, and Gauss(0, σ 2 ) is a random variate satisfying Gaussian distribution. λ 1 = 1 − t 2 /T 2 max and λ 2 = t 2 /T 2 max are the dynamic parameters that are adaptively adjusted with the times of iteration. In Equation (9), λ 1 is larger at the initial stage so that the algorithm can explore the optimal solution in a larger range with a larger mutation step. λ 2 has a small mutation step, which facilitates the algorithm to search near the optimal solution. During the search process, λ 1 decreases gradually, while λ 2 keeps increasing. The flowchart is shown in Figure 3, and the detailed implementation procedure of CASSA is illustrated in Algorithm 1. Update the finder's position using Equation (7); 12. end for 13. for i = (F d + 1) : n 14.
Update the threatened sparrow's position using Equation (4)

Experiment for Benchmark Functions
In this section, there are four tested functions shown in Table 2, and the trajectories of individuals of CASSA in these test functions are presented in Figure 4. It shows that most individuals move towards the global optimum in unimodal functions. However, in the more complex multi-modal functions, although many individuals stagnate at the local minimums, some individuals can still avoid them and aggregate towards the global optimum. To verify whether it is feasible and highly efficient, the proposed CASSA is compared with four algorithms in the experiments, including original SSA, PSO, ABC, and WOA. There are twelve classical benchmark functions [37] shown in Table 3, which consists of the information of their formula, initialization range, and global optimum. Among these benchmark functions, f1∼f6 are unimodal functions, and f7∼f12 are multi-modal functions. In all cases, we conducted the independent trials 30 times on each benchmark function. The maximum number of iterations is 500, and the population size is 50 in each experiment. Finally, we obtained the best value, mean value, and the standard deviation (Std.) of the objective function values. With the same benchmark function, the best value and average value denote the exploration ability and convergence accuracy, respectively, and the standard deviation denotes the stability of the algorithm. The experimental results are shown in Figure 5 and Table 4.
As is shown in Figure 5, in the experiments on unimodal functions, CASSA can quickly find the optimal values of f1, f2, f5, and f6. Although the optimal values of f3 and f4 are not found, CASSA still has the fastest convergence speed and accuracy among all the tested algorithms. In the experiments on the multi-modal functions, only CASSA and SSA can find the optimal values of f7. For f8, f9, f10, and f12, CASSA, SSA, and WOA can find the optimal values, but CASSA requires the smallest iteration times. For f11, all algorithms fail to find the optimal value, but CASSA still finds the near-optimal solution with the highest accuracy.

Name Definition Domain Optimum/Minimum
Ackley

Name Definition Domain Optimum/Minimum
Sphere      In terms of convergence value and convergence speed, CASSA is better than the other four test algorithms. As is shown in Table 4, the test results of unimodal functions and multi-modal functions show that the mean and variance of CASSA are much smaller than those of the other four algorithms, which shows that the optimal values obtained by the algorithm are highly stable and robust and can be effectively implemented to avoid premature convergence.
With the purpose of further assessing the performance of these heuristic algorithms and proving a significant improvement of CASSA compared with the other four algorithms, a non-parametric statistical test is performed with the Wilcoxon [38] rank sum test set at a significance level of α = 5%. It is generally considered that when p < 5%, it is significantly different, while when p ≥ 5%, it is not significantly different. As is shown in Table 5, p of CASSA are all less than 5%, which means that compared with the search ability of SSA, that of CASSA has been greatly improved. Additionally, the optimization accuracy and robustness of CASSA are better than other popular intelligent algorithms.

UAV Route Planning Strategy
In this section, the application of CASSA to 3d UAV route planning will be discussed in detail. The UAV route planning aims to minimize the cost function in the task space, which can be defined as an optimization problem with multi-constraint. Generally, the UAV route generated by meta-heuristic algorithms is composed of the line segments, which is unsuitable for exact flight. To solve this problem, some methods are used to further optimize the route generated, such as the B-spline curve [39], the Bezier curve [40], and the simple circular arcs [41]. The B-spline curve has the unique superiority in many ways, such as locality, geometrical invariability, symmetry, recursion, continuity, convex hull characters, and convexity-preservation. It is highly appropriate to use the B-Spline curves in the process of optimization, because merely a few variables are required to define the complex curved routes. Therefore, in this paper, the B-Spline curves smoothing strategy is used to smooth the generated route. With the given departure point and target point, some control points in the map space are set and applied to generate the B-Spline curve. The points on the B-Spline curve serve as the waypoints, of which the coordinates can evaluate the cost of the UAV route.

B-Spline Curve
The construction of B-Spline curve is made up of blending functions, which denotes that B-Spline curve is a parametrized curve. In a whole route, the number of waypoints is n, the number of control points of the corresponding curve is n + 1, with the coordinates (x 0 , y 0 , z 0 ), . . . , (x p , y p , z p ), . . . , (x n , y n , z n ); then, the coordinates (x e , y e , z e ) of the B-Spline curve can be defined as follows: where p represents the order of the curve, which influences the smoothness of the B-Spline curve; the free parameter e varies from 0 to n − p + 1, which generates a series of discrete points. The blending functions are designed by a knot vector E = {e 0 , . . . , e m } recursively as follows: The B-Spline curve is used to determine the flight route, and it has the advantage of illustrating a complex non-monotonic 3d curve with controlled smoothness through a few designed parameters. Figure 6 shows a 3d cubic B-Spline curve (k = 3) with its control points and the corresponding control polygon (the green line). After this procedure, the original route (the blue line) could be replaced by the new smooth route (the red curve).

Cost Function
The problem of UAV route planning is defined by a series of optimization criteria and constraints, which consist of the minimization of the threats of damage of the UAV, the constraints imposed by the UAV's dynamic property and the flight environment. The cost function is described as the total of three functions, given as follows: where J cos t represents the total cost function; J path denotes the length cost of the route of UAV; J height denotes the height cost of UAV; J turn denotes the smoothness cost of the planning route; w i is the weights of the above functions, which are given as follows: In the process of UAV route planning, it is obvious that the shorter route needs less time and less fuel consumption for flight. In the meanwhile, it is less likely to encounter an unknown danger. The route length is calculated with the following expressions: where (x i , y i , z i ) denotes the i th waypoint within the whole UAV route. If the line segment between every two waypoints passes the obstacles, the cost of the route needs to be processed by the penalty function. However, it is hard to express the infinite function in the practical experiment. Therefore, a large value, like 10 7 , can be added to solve this problem in the simulation.
In the meantime, the suitable flying height also has an important impact on the UAV route planning process. For most kinds of UAV, the flying height should not be changed too frequently and drastically. The stable flying height can save more fuel and ensure more security. Additionally, when UAV flies at a low height, it can benefit from the terrain mask effect, which can help to avoid unknown threats [42]. Therefore, the cost function of height is described as below: The stability and maneuverability of UAV are constrained by the maximum turning angle at each waypoint. In the process of UAV route planning, the maximum turning angle should not be bigger than the maximum preset angle. Furthermore, when the UAV flight efficiency is considered, it is obvious that the UAV work condition will be inefficient when UAV does the turning maneuvers. The cost function of the turning angle can be defined as below: where ϕ denotes the maximum angle; θ denotes the current angle; and a i represents a vector of the ith part of the whole route.

CASSA for 3d UAV Route Planning
After the above discussion, the detailed implementation procedure of CASSA for UAV three-dimensional route planning is illustrated in Algorithm 2, and the flowchart is shown in Figure 7. Algorithm 2 CASSA for 3d UAV route planning /*Initialization*/ 1. Set the parameters of CASSA same as Algorithm 1; 2. Set the start point (x S , y S ), target point (x T , y T ), the boundaries of the map space, and the number of control points n; 3. Set the position(x threat , y threat ) and the range of threats; /*Iterative search*/ 4. while (t < T max ) 5. Each sparrow represents a route; sort the population of sparrows from best to worst by order of cost function Equation (10) for each sparrow 6. G = rand(1); 7. for i = 1 : F d 8.
Update the threatened sparrow's position using Equation (4); 15. end for 16. Evaluate the cost for each route by Equation (13), then select the top S elite sparrows with the best fitness value and implement adaptive mutation for them by Equation (9)

Simulation Experiment
In this section, the capability of CASSA in solving the 3d UAV route planning problem will be assessed by a series of computational simulations. To conduct a fair comparison, all the experiments are performed on the PC with Intel (R) Core (TM) i5-9400 @2.40 GHz CPU and 16 GB RAM, and the simulations are compiled using Matlab-2016b under Win-10 platform.

Experimental Parameters
The UAV mission region is [0, 150] km long, [0, 100] km wide, and [0, 8] km high, and UAV knows the terrain and threat's position. The terrain is modeled by a processing elevation map of real terrain, while the threats are modeled as black columns. The coordinates value of the start point is (10.0,90.0,2.3 km), the coordinates value of the target point is (140.0,10.0,2.9 km). The 3d UAV route planning environment is shown in Figure 8. There are five algorithms in the experiments, including CASSA, SSA, PSO, ABC, and WOA. In all experiments, the parameters of those algorithms are set according to their references respectively. To make a fair comparison, the maximum iterations of those algorithms is set as 200, while the population size is set as 50. For CASSA and SSA, using the same parameters setting is necessary, which are the number of the finders (Fd = 0.2), the number of the threatened sparrows (Sd = 0.15), and the alarm value (G = 0.8). In consideration of the randomness nature of heuristic algorithms, each tested algorithm is executed 30 times independently, and the experimental results are used for the evaluation and comparison of their performance.

Analysis of Experimental Results
For the objective of comparison, the best UAV routes generated by CASSA, SSA, PSO, ABC, and WOA during 30 independent runs are displayed in Figure 9, and the statistic results are showed in Figure 10. To show the difference between the tested algorithms intuitively, the best cost curves for each algorithm are displayed in Figure 11.   As the test results reveal, all the five tested algorithms found the safe flight route for UAV, but they have different performance on route length, flight altitude, and route smoothness. As experimental results display in Figure 9, it is apparent that among all the five algorithms, CASSA can find the best route for the UAV. The route generated by CASSA has a more suitable altitude, which can help UAV to benefit more from the terrain mask, and its length and smooth criteria are also better than other four algorithms. In Figure 10, it can be seen that CASSA has the best performance on the best cost value, mean cost value, and worst cost value, which shows that CASSA is superior to other four algorithms with regard to searching ability and stability. Among all the five algorithms, PSO takes the shortest running time and WOA takes the longest running time. The running time of CASSA is a little longer than SSA, mainly due to the variation operations added during the iteration of the algorithm. For offline route planning problems, the accuracy of the algorithm is more important than the running time, so the time taken to run CASSA is acceptable. In Figure 11, it should be noticed that CASSA not only has the best convergence value, but also has a good initial solution and the fastest convergence speed.
The 3d UAV route planning problem has many local solutions, making it challenging to solve by classical optimization algorithms. The reason why CASSA performed excellently on this complex optimization problem is due to the integration of the adaptive inertia weight and the Cauchy-Gaussian mutation operator. In the searching process, the adaptive inertial weight can control the search ability and convergence speed of CASSA, and the integration of the Cauchy-Gaussian mutation operator can avoid the local optimal solutions by suddenly changing the location of the elite sparrows in the search space. Therefore, the excellent exploration ability and local minimums avoidance of the proposed CASSA helps it to improve the drawbacks and surpass the original SSA.

Conclusion and Future Work
This paper proposed a modified sparrow search algorithm called CASSA and successfully applied it for solving the 3d UAV route planning problem in complex task space. In the proposed CASSA, the chaotic strategy is used to enhance the stability of the algorithm, and an adaptive inertia weight is used to balance the convergence speed and exploration ability. The original SSA usually suffers from local optimal stagnation, but the Cauchy-Gaussian mutation operator integrated is able to help CASSA avoid this drawback by suddenly changing the position of the elite sparrows in the search space. Those modified strategies lead to the better performance of CASSA on the 3d UAV route planning problem. In order to make the route more viable for practical UAV flight mission, the B-Spline curve is used for smoothing the route generated by CASSA. The experimental results demonstrate that CASSA is an efficient and viable method in the field of UAV route planning.
There are many challenges for future work. For example, more constraints can be introduced, such as flight speed constraint, different types of obstacles, and dynamic threats. Moreover, it would be meaningful to apply CASSA for solving other optimization problems in the field of UAV, such as task assignment and formation control.