# A Two-Stage Co-Evolution Multi-Objective Evolutionary Algorithm for UAV Trajectory Planning
## 3 General Framework of MOUTP Based on TSCEA
### Tscea  
The AT-CMOEA cannot directly solve the MOUTP problem because it adopts a two-stage constraint-handling technique with two populations, which promotes the diversity and convergence of the solution but also increases the algorithm's response time and computational complexity. In this research, a multi-objective evolutionary algorithm with two-stage co-evolution for UAV trajectory planning (TSCEA) is proposed. In the TSCEA algorithm, constraints are effectively handled, and multi-objectives are optimized through a combination of exploration and exploitation phases. The selection and optimization of critical trajectory points is the core of the algorithm, which ensures that the UAV's trajectory planning in complex environments can both avoid obstacles and achieve optimized objectives. Obtaining better key trajectory points through the exploration and exploitation phases of the TSCEA algorithm not only improves the efficiency and accuracy of trajectory planning but also enhances the adaptability of UAVs in dynamic and complex environments. The main operational diagram of the algorithm is given in Figure 4.  
(1) Exploration stage of the TSCEA  
The exploration stage aims to increase the searchability of the population across the search space. The main population ignores the UAV constraints in order to find as many feasible domains as possible. The assistant population uses the constraints as additional objective functions to find more promising solutions. At this point, the constrained bi-objective MOUTP optimization problem is converted to an unconstrained multi-objective MOUTP optimization problem. The main and assistant populations generate the offspring populations through the crossover operator and the variation operator of the differential evolutionary algorithm, respectively. The main population was updated by NSGA-II [24], and the assistant population was updated using SPEA2 [25]. The exploratory stage of the TSCEA is shown in Algorithm 1. Input: Terrain (Terrain dataset), Radar (Radar dataset), UAV (The location of the UAV), Mission (The location of the mission), \(f_{1}\) (Objective function 1), \(f_{2}\) (Objective function 2), \(C_{aux}\) (UAV constraint set), \(Pop\) (The size of population), \(Gen\) (The number of iterations). \(Pm\) (Mutation probability); Output: \(update\_Mx_{1}\) (Updated parent population1), \(update\_Mx_{2}\) (Updated parent population2);  
1 Define terrain datasets and radar datasets and unify the simulation environment;  
_Terrain_ = Terrain3D; \(Radar\) = CRadar; \(E\) = [_Terrain_, \(Radar\)];  
2 Initialize the population to obtain two random parent populations \(Mx_{1}\),\(Mx_{2}\);  
\(Mx_{1}\) = initial 0; \(Mx_{2}\) = initial (0);  
Figure 4: Runtime diagram of the TSCEA. 3 Obtaining new offspring populations using the classical DE algorithm mutation operator \(offMx_{1}\);  
_for i = 1: Pop_  
\([r1,r2,r3]=\) Gainthreenumber(i);/* Get three random numbers */  
_if_ rand() < _Pm_  
\(offMx_{1}=Mx_{1}\{r3\}+\)_Pm_*(\(Mx_{1}\{r2\}-Mx_{1}[r1])\);/* Mutation operator for differential evolutionary algorithm */  
_end_  
_end_  
_update_Mx_1 \(\leftarrow\) Update_NSGAII(\(Mx_{1},offMx_{1}\));/* Update \(Mx_{1}\) through NSGA-II */  
5 Converting \(Mx_{2}\) constrained MOUTP (\(M\)-objects) to unconstrained MOUTP (\(M\) + 1-objects);  
_for i = 1: Pop_  
\(offMx_{2}(i)=\) DEFitness(UAV,Mission,\(f_{1},f_{2},C_{new},Mx_{2}(i)\));  
_end_  
_6 update_Mx_2 \(\leftarrow\) Update_SPEA2(\(Mx_{2},offMx_{2}\));/* Update \(Mx_{2}\) through SPEA2 */  
_7 Archive_1 = \(\{update\_Mx_{1},update\_Mx_{2}\}\);  
**Algorithm 2** Exploitation Stage of the TSCEA. The purpose of the exploitation stage is to converge to the CPF by utilizing the high-quality populations from the archive in the exploration stage. The main population consists of the populations from Archive 1. At this point, both the main and assistant populations need to take into account all the constraints in order to obtain a set of well-distributed feasible solutions.