Parallel Cooperative Coevolutionary Grey Wolf Optimizer for Path Planning Problem of Unmanned Aerial Vehicles

The path planning of Unmanned Aerial Vehicles (UAVs) is a complex and hard task that can be formulated as a Large-Scale Global Optimization (LSGO) problem. A higher partition of the flight environment leads to an increase in route’s accuracy but at the expense of greater planning complexity. In this paper, a new Parallel Cooperative Coevolutionary Grey Wolf Optimizer (PCCGWO) is proposed to solve such a planning problem. The proposed PCCGWO metaheuristic applies cooperative coevolutionary concepts to ensure an efficient partition of the original search space into multiple sub-spaces with reduced dimensions. The decomposition of the decision variables vector into several sub-components is achieved and multi-swarms are created from the initial population. Each sub-swarm is then assigned to optimize a part of the LSGO problem. To form the complete solution, the representatives from each sub-swarm are combined. To reduce the computation time, an efficient parallel master-slave model is introduced in the proposed parameters-free PCCGWO. The master will be responsible for decomposing the original problem and constructing the context vector which contains the complete solution. Each slave is designed to evolve a sub-component and will send the best individual as its representative to the master after each evolutionary cycle. Demonstrative results show the effectiveness and superiority of the proposed PCCGWO-based planning technique in terms of several metrics of performance and nonparametric statistical analyses. These results show that the increase in the number of slaves leads to a more efficient result as well as a further improved computational time.


Introduction
Unmanned Aerial Vehicles (UAVs) have recently become an interesting research topic, due to their strong survivability in many activities such as agricultural, commercial, military, and civilian [1][2][3][4]. To achieve repetitive and hard missions in dangerous environments, path planning is a key task in the UAVs' control system [5][6][7][8]. The purpose of drones' path planning is not only to find a collision-free path to reach the target but also to select an optimal flyable path that minimizes some critical goals.
The complexity and hardness of UAVs' path planning problems are increased due to the increase in optimization factors such as UAV restrictions and environmental restrictions. 2 of 29 To deal with this complexity, researchers have gradually moved from using the conventional to non-conventional planning approaches considered more effective. In study [9], the authors proposed an improved Particle Swarm Optimization (PSO) algorithm, by introducing the competition strategy formalism, to solve the 3D path planning for fixed-wing UAVs. In study [10], Jamshidi et al. described a CAN bus-based implementation of an asynchronous distributed multi-master parallel Genetic Algorithm (GA) and PSO metaheuristics to improve the performance and computational time of the UAV path planning task. A path planning approach based on the Water Cycle Algorithm (WCA) to find the optimal or near-optimal path avoiding all obstacles in 2D environments is proposed in [11]. The authors in [12] proposed a comprehensively improved particle swarm optimization to enhance the optimality and rapidity of automatic path planners for autonomous UAV formation systems. In studies [13,14], the authors proposed a new methodology to discover the UAV optimal path planning based on a Multiobjective Multi-Verse Algorithm (MOMVA). The authors in [15] proposed a novel approach to solve the UAV path planning based on a Grey Wolf Optimizer (GWO) by proper choice of optimization models such as the objective function for targets and constraints for obstacles' avoidance. In study [16], another GWO-based method is proposed to solve the UAV path planning problem formulated as a hard optimization problem under operational constraints in terms of path shortness and smoothness as well as avoidance of obstacles. In the same work, the performance of the proposed parameters-free GWO algorithm is compared to other homologous metaheuristics such as the Crow Search Algorithm (CSA), Differential Evolution (DE), Salp Swarm Algorithm (SSA), and others. In study [17], the researchers proposed an improved Adaptive Grey Wolf Optimization (AGWO) algorithm to solve the 3D path planning of UAVs in a complex environment of material delivery in earthquake-stricken areas. Such an algorithm runs with an adaptive convergence factor and updated positions of the search agents. In study [18], a multi-population Chaotic Grey Wolf Optimizer (CGWO)-based method is investigated to solve the 3D UAVs' cooperative path planning problem. A chaotic search strategy is introduced in this algorithm to improve the exploration/exploitation capabilities of the search behavior. In study [19], Kumar et al. described a modified version of the conventional GWO algorithm (MGWO) to design and optimize suitable paths for autonomous robots.
Such an above study was carried out to arouse the interest in the GWO algorithm widely applied in the field of UAVs' path planning. The advantages in terms of simplicity of software implementation, reduced number of the algorithm's control parameters, and convergence fastness make the GWO one of the most extensively used algorithms in the past three years [20][21][22][23]. The increased number of scientific publications on this topic explains the effectiveness of such a stochastic and parameters-free algorithm for solving various optimization problems. However, it should be pointed out that the GWO algorithm is often unable to escape trapping in local minima and presents a premature convergence, especially for the Large-Scale Global Optimization (LSGO) problems. Like most metaheuristics algorithms, the GWO suffers from the "dimensionality curse" and often fails to solve these hard optimization problems [17]. Thus, a practical implementation of such a metaheuristic algorithm presents a challenge in real-world applications due to its prohibitive computational time and weakness concerning an increased number of decision variables of optimization. Although the cited works [15][16][17][18][19] have been developed to solve the UAVs' path planning problem based on a GWO algorithm, most of them formulated the planning problem with a small number of decision variables. Since the real-world planning tasks are considered LSGO problems, the quantity of computation increases strongly with the increase of the search space dimension, which implies a high probability of converging towards the local optimum [24]. These limits present a serious challenge for the real-time implementation of such an algorithm to design flyable and collision-free UAV paths.
To overcome these difficulties, the cooperative co-evolutionary concept of optimization seems an interesting idea to further improve the use of GWO algorithms for LSGO problems, particularly in UAVs' path planning formalism. Such a design approach presents an effective tools' panoply for solving hard problems thanks to its decomposition of optimization problems into smaller-dimension sub-components. It is a "divide and conquer" strategy initially proposed by Potter and De Jong in [25]. In the literature, the cooperative coevolutionary approach has been successfully applied for various optimization algorithms such as GA [26], PSO [27], DE [28], Simulated Annealing (SA) [29], Ant Colony Optimization (ACO) [30,31], Firefly algorithm [32], and many others. On the other hand, a large quantity of evaluation, due to the large number of problem decision variables, also implies an increased prohibitive computation time. However, online implementation of the standard GWO algorithm for a real-time path planning problem can be failed or at least become ineffective to achieve the desired performance of planning. To overcome this computation constraint, the parallelization concept can be introduced to reduce the complexity of the planning tasks and further increase the computational time of the investigated GWO algorithm.
Over the past decades, there has been a growing interest in the parallelization of metaheuristics algorithms [33][34][35][36][37][38][39][40]. Such advanced mechanisms for computation accelerating and enhancement greatly contribute to the success of metaheuristics for solving hard and large-scale optimization problems. In the literature, many types of metaheuristics algorithms have been recently parallelized based on different architectures and hardware resources. The Graphics Processing Units (GPUs) and multi-core Central Processing Units (CPUs)-based techniques are the most extensively proposed approaches. In study [33], a model of a vector parallel's Ant Colony Optimization (ACO) algorithm is proposed using a multi-core SIMD CPU architecture. Each ant is mapped with a CPU core and the tour construction is accelerated by vector instructions. In study [34], a parallel heterogeneous ensemble feature selection method based on the three genetic (GA), particle swarm (PSO), and grey wolf (GWO) metaheuristics is proposed to enhance the performance of machine learning formalism. The hardware implementation is achieved on a multi-core CPU with GPU. In study [35], a parallel GA algorithm on GPU is investigated and compared to a sequential execution on CPU for wireless sensor data acquisition using a team of unmanned aerial vehicles. In study [36], an island model-based parallel GA is proposed and implemented on a GPU for solving the unequal area facility layout problem. In study [37], a comprehensive survey on parallel PSO algorithms is presented along with their strategies and applications. Several platforms and models, mainly the CPU-and GPU-based parallelization strategies, have been described and discussed. Another comprehensive survey on the parallel implementation of metaheuristics but within a multi-objective evolutionary framework is presented in [38]. An up-to-date review of methods and key contributions to such a research field are described. Other various techniques and strategies of metaheuristics parallelization are described and discussed in [39,40].
Based on these observations, the idea of using the parameters-free GWO algorithm, improved with the two concepts of cooperative coevolutionary and parallel computing, remains a promising and encouraging solution to solve the UAVs' path planning problems. Indeed, in real-world UAVs' planning applications, the most suited planners are those with fewer tuning of the effective parameters and a high fastness of the computation processing concerning the dynamics of navigation and software/hardware specifications of embedded control units. High performances in terms of computation speediness, shorter and collisionfree flyable paths are always requested and recommended. In this work, a new Parallel Cooperative Coevolutionary Grey Wolf Optimizer (PCCGWO) is proposed and successfully applied in solving the UAVs' path planning problem over large benchmarks and instances of navigation. Such an improved GWO algorithm combines the cooperative coevolutionary and parallelization mechanisms to ensure an efficient partition of the original large-scale search space into multiple sub-spaces with reduced dimensions. The decomposition of the decision variables vector into several sub-components is achieved and multi-swarms are created from the initial population to be later assigned to optimize a part of the path planning procedure formulated as an LSGO problem. The main contributions of this paper are summarized as follows: (1) an intelligent and efficient path planning strategy is elaborated to guide UAV drones to reach the destination position while avoiding a high number of obstacles and threats. (2) A novel parameters-free PCCGWO algorithm based on an efficient parallelization master-slave mechanism is proposed and successfully applied to solve the UAVs' path planning problem over several flight scenarios. (3) A nonparametric statistical analysis in the sense of Friedman and post hoc tests is carried out to show the effectiveness and superiority of the proposed PCCGWO-based path planning approach.
The remainder of this paper is organized as follows. In Section 2, the path planning problem for unmanned aerial vehicles is formulated as a constrained large-scale optimization problem. Section 3 presents the proposed parallel cooperative coevolutionary grey wolf optimizer as well as its designed master-slave architecture. A pseudo-code of the proposed PCCGWO algorithm is given to solve the formulated UAVs' path planning problem. In Section 4, demonstrative results over 20 different flight scenarios are carried out and discussed to assess the effectiveness of the proposed planning approach. Section 5 concludes this paper.

Path Planning Problem Formulation
The planning of a flyable and feasible path is a key task in the formalism of drones' control and navigation. The general definition of such a problem is the generation of a path that guides the drone from a starting point A : (x 1 , y 1 , z 1 ) to a predefined destination B : (x n , y n , z n ). To ensure this, an environmental modeling is required [13,14,16,41]. The x-axis range (x 1 , x n ) is divided into n − 1 equal segments delimited by geometric perpendicular hyper-planes passing through the corresponding points {x 1 , x 2 , . . . , x n }. A waypoint w i = (x i , y i , z i ) will be taken at each perpendicular plane and a sequence of these generated points Ω AB = {A, (x 2 , y 2 , z 2 ), . . . , (x n−1 , y n−1 , z n−1 ), B} can be formed. The connection of the different waypoints forming such a flight sequence leads to generating the complete flyable path. In this manner, the path planning problem can be reformulated as an optimization problem that consists in determining the optimal flight waypoints' sequences minimizing a previously defined performance criterion, i.e., shorter, collision-free and smoother flyable paths [14,41]. In this formulation, the decision variables of such a constrained optimization problem are defined as the vector of coordinates of the waypoints X = (y 2 , y 3 , . . . , y n−1 , z 2 , z 3 , . . . , z n−1 ) ∈ R 2n−4 .
For the drones' navigation, the length of the flyable path is an essential objective. The shorter path can reduce the flight time and extend the battery life which ensures more safety. Therefore, a shorter path remains desirable in all planning problems. To well formulate such a design goal, the corresponding objective function to be minimized is chosen as follows [14,41]: For any path planning problem, the obstacles' collision avoidance constraint is a key task. Indeed, to ensure that the planned path is safe, the UAV drone must avoid all obstacles. On the other hand, to avoid the risk of being detected by the radars or missiles, a UAV cannot pass through the dangerous regions and/or fly over them [13,14,16,41]. Thus, such an obstacles' avoidance constraint is modeled by the following expression: where r i obs and x i obs , y i obs are the radius and position of the ith obstacle, respectively; (x uav , y uav , z uav ) means the coordinate of the UAV drone, and ∆ presents the predefined safety distance between the drone and a detected obstacle.
When a UAV performs angle management, it can influence its dynamic characteristics and make its flight operation inefficient. Therefore, the angle between two adjacent seg-Sensors 2022, 22, 1826 5 of 29 ments is introduced to limit the straightness of the path. This performance constraint can be formulated as follows [42]: where ϕ q,q+1 is the angle between the two adjacent qth and (q+1)th segments connecting the waypoints, and ϕ max is the maximum value of the steering angle. Finally, the formulated constrained optimization problem for the UAVs' path planning procedure is defined as follows: where f (.) is the cost function of Equation (1), g 1 (.) and g 2 (.) are the constraints given by Equations (2) and (3), respectively, X ∈ R 2n−4 is the vector of decision variables, and D = X ∈ R d X min ≤ X ≤ X max is the bounded d-dimensional search space.
To handle the operational constraints (2) and (3) of the optimization problem (4), a static penalty function-based technique is used as follows [41]: where κ i are the scaling penalty coefficients and n con means the number of constraints.

Grey Wolf Metaheuristic
The Grey Wolf Optimizer (GWO) is a swarm intelligence-based algorithm that is inspired by the leadership hierarchy and hunting strategy of grey wolves in nature [43]. Three leader wolves named α, β, and δ are considered in the hierarchy of the GWO formalism. The most dominating member among the group is called alpha (α), followed by beta (β) and delta (δ) ones which help to lead the rest of the wolves, considered as omega (ω) members, toward promising areas. The ith wolf is characterized by its position For hunting a prey, the grey wolves follow the following three main steps, i.e., encircling, hunting, and attacking [43]: − Encircling: To mathematically model the strategy of encircling prey by wolves, the following equations have been proposed: where λ k are random numbers between 2 and 0, υ k are linearly decreased from 2 to 0 over the iterations course, and U (0, 1) is a uniformly random number in [0, 1]. − Hunting: The best candidate solutions α, β, and δ guide the other ω wolves to find the global solution of the prey by updating their positions as follows: where x best,1 In Equation (9), the coefficient vectors ϑ 1,k , ϑ 2,k , and ϑ 3,k as well as ∆ α k , ∆ β k , and ∆ δ k are computed as follows: where υ j,k , j ∈ {1, 2, 3}, are linearly decreased from 2 to 0 over the iterations course and λ j,k are random numbers distributed uniformly between 2 and 0. − Attacking: To mathematically model the prey attack approach, the value υ k is linearly decreased from 2 to 0 during iterations and involves the reduction of the fluctuation range ϑ k which is a random value in the interval [−2υ k , 2υ k ]. When the value |ϑ k | < 1, the next positions of wolves will be between their current positions and the prey one that may force them to attack. After the attack and at the next iteration, this process is repeated until the termination criterion is verified.
Finally, a pseudo-code of the basic GWO algorithm is presented by Algorithm 1 as given in [16,20,43]. Algorithm 1: GWO pseudo-code.

3.
Calculate the objective values for each search agent and select x α 0 , x β 0 , and x δ 0 .

4.
Update the position of the current search agent.

6.
Calculate the objective values of all search agents by applying Equation (10). 7.
Update the positions x α k , x β k , and x δ k . 8.
Check the termination criterion and make iterations repeated.

Cooperative Coevolutionary Concept
In cooperative coevolutionary algorithms, the optimization problem to be solved is divided into sub-components in the search space and each of them is solved independently by a species or a sub-swarm which is managed by a processor. In mono-objective optimization formalism, Potter and De Jong were the first to propose such a model [25]. The decision variables are split into sub-components and each sub-swarm seeks to optimize its component by applying a standard evolutionary algorithm. These sub-swarms share information among themselves during evolution. To assess the quality of its optimization, a species builds a complete solution with the representative of all other species and its dedicated decision subcomponent. This is how they cooperate in evolution. The representative of the sub-swarm can be defined by their current best individual or by a random choice. For a given sub-swarm, the solutions consist of a fixed part and a variable part to be optimized. The cooperative coevolutionary approach consists of three main steps [25]: i.
Decomposing the problem: The vector of decision variables is decomposed into smaller sub-components which can be handled by certain evolutionary algorithms. ii. Optimizing sub-components: Each sub-component will be evolved separately using an evolutionary algorithm until the stopping criteria are met. This means that each sub-component will be optimized by a sub-swarm. iii. Co-adapting sub-components: Since sub-components can be interdependent, coadaptation is necessary to take these interdependencies into account. They share information among themselves during the evolution process.

Parallel Master-Slave Model
The master-slave model is one of the most popular approaches for parallel computing due to the simple exploitation of the parallelization capabilities of modern computer systems and its simplicity of implementation. In study [44], Bethke is the first to describe a parallel implementation of an evolutionary algorithm. Subsequently, Grefenstette proposed [45] several prototypes of the parallel evolutionary algorithms representing several variations of the master-slave models. A master-slave model implementation generally requires essential knowledge of the corresponding computer system and minor programming effort. In the master-slave model, one of the processors or cores is selected as the master and the others as slaves of such a master core as shown in Figure 1. The master assigns the slaves hard work or heavy computing tasks and then receives the results from them. The different slaves perform their tasks simultaneously and there is no communication requirement between them. The parallel master-slave model allows a significant reduction in the total computing time required by the algorithm. In such a model of m ∈ N slaves, the simultaneous evaluation of m individuals is possible, which leads to a significant reduction in the total evaluation time of the population. The parallel software implementation will be more meaningful in large-scale optimization problems [33][34][35][36][37][38][39][40].
ble part to be optimized. The cooperative coevolutionary approach consists of three main steps [25]: i.
Decomposing the problem: The vector of decision variables is decomposed into smaller sub-components which can be handled by certain evolutionary algorithms. ii. Optimizing sub-components: Each sub-component will be evolved separately using an evolutionary algorithm until the stopping criteria are met. This means that each sub-component will be optimized by a sub-swarm. iii. Co-adapting sub-components: Since sub-components can be interdependent, co-adaptation is necessary to take these interdependencies into account. They share information among themselves during the evolution process.

Parallel Master-Slave Model
The master-slave model is one of the most popular approaches for parallel computing due to the simple exploitation of the parallelization capabilities of modern computer systems and its simplicity of implementation. In study [44], Bethke is the first to describe a parallel implementation of an evolutionary algorithm. Subsequently, Grefenstette proposed [45] several prototypes of the parallel evolutionary algorithms representing several variations of the master-slave models. A master-slave model implementation generally requires essential knowledge of the corresponding computer system and minor programming effort. In the master-slave model, one of the processors or cores is selected as the master and the others as slaves of such a master core as shown in Figure 1. The master assigns the slaves hard work or heavy computing tasks and then receives the results from them. The different slaves perform their tasks simultaneously and there is no communication requirement between them. The parallel master-slave model allows a significant reduction in the total computing time required by the algorithm. In such a model of m ∈  slaves, the simultaneous evaluation of m individuals is possible, which leads to a significant reduction in the total evaluation time of the population. The parallel software implementation will be more meaningful in large-scale optimization problems [33][34][35][36][37][38][39][40].

Proposed Parallel Cooperative Coevolutionary Grey Wolf Optimizer
The standard GWO algorithm, initially proposed by Mirjalili in 2014, is prone to convergence prematurity. It is also unable to escape local minima in complex multidimensional optimization problems due to its suffering from the "dimensionality curse". To overcome these challenges, a Cooperative Coevolutionary Grey Wolf Optimizer (CCGWO) is proposed and used to solve the UAVs' path planning problem formulated as a large-scale optimization one. The original d-dimensional search space is decomposed into m ∈  smaller-dimension subspaces j  denoted as follows:

Proposed Parallel Cooperative Coevolutionary Grey Wolf Optimizer
The standard GWO algorithm, initially proposed by Mirjalili in 2014, is prone to convergence prematurity. It is also unable to escape local minima in complex multidimensional optimization problems due to its suffering from the "dimensionality curse". To overcome these challenges, a Cooperative Coevolutionary Grey Wolf Optimizer (CCGWO) is proposed and used to solve the UAVs' path planning problem formulated as a large-scale optimization one. The original d-dimensional search space is decomposed into m ∈ N smaller-dimension subspaces D j denoted as follows: Each sub-space should be evaluated by a corresponding sub-swarm. Their dimensions are denoted by d 1 , d 2 , . . . , d m which should verify the following condition: where d is the dimension of the original optimization problem. The standard GWO algorithm employs a single d-dimensional swarm, but the CCGWO one uses m sub-swarms denoted as S 1 , S 2 , . . . , S m . Each of them ensures the optimization in the corresponding subspace D j of dimension d j < d. The size of a given sub-swarm S j is denoted as n S j = S j . The research agents' evaluation in each sub-swarm of the CCGWO algorithm is identical to that in the standard GWO one as described in Section 3.1. However, this can pose a significant problem. The agents cannot be updated with the objective function due to the missing components. To overcome this problem, a shared buffer vector, also called a context vector, is defined and contains the complete solution by combining all representatives of sub-swarms [27]. This vector provides the missing information required for each particle or research agent to update with the objective function. Let us consider c [j] the representative of d j -dimensional for sub-swarm S j : The d-dimensional buffer vector C is then obtained by concatenating all different representatives as follows: The ith research agent of the jth sub-swarm of CCGWO, as given by Equation (15), is evaluated by completing the missing components from the buffer vector C: To achieve this, the components x [j] i are replaced in the buffer's components that correspond to the representative of the jth sub-swarm by keeping the rest unchanged.
Hence, the cost value attributed to x [j] i is defined as: The representative of each sub-swarm is defined as its best current individual. To parallelize this described cooperative coevolutionary GWO algorithm without changing its co-evolutionary characteristics, a parallel master-slave model is established, resulting in the proposed PCCGWO algorithm as depicted in Figure 2.
With more details, the master processor will be responsible for initializing the population of research agents, then breaking it down into a set of sub-swarms. Each of them will evolve on part of the problem as a sub-component. The master processor also initializes the buffer vector C using randomly selected individuals from each sub-swarm. After that, it sends to each slave a sub-swarm as well as the buffer vector C. Each slave is designed to evolve a sub-swarm that seeks to optimize its component by applying a standard GWO algorithm for a finite number of times. Such a slave sends the best individuals as representatives to the master after the evolution cycle. The master will build a buffer vector C by concatenating the different representatives and sending it to the different slaves for a new cycle. The master always checks the stop condition, if it is reached, this process will stop. Otherwise, it sends the buffer vector C to all the slaves and asks them to continue the evolutionary process. Finally, Algorithm 2 provides the pseudo-code of the proposed PCCGWO algorithm. With more details, the master processor will be responsible for initializing the population of research agents, then breaking it down into a set of sub-swarms. Each of them will evolve on part of the problem as a sub-component. The master processor also initializes the buffer vector C using randomly selected individuals from each sub-swarm. After that, it sends to each slave a sub-swarm as well as the buffer vector C . Each slave is designed to evolve a sub-swarm that seeks to optimize its component by applying a standard GWO algorithm for a finite number of times. Such a slave sends the best individuals as representatives to the master after the evolution cycle. The master will build a buffer vector C by concatenating the different representatives and sending it to the different slaves for a new cycle. The master always checks the stop condition, if it is reached, this process will stop. Otherwise, it sends the buffer vector C to all the slaves and asks them to continue the evolutionary process. Finally, Algorithm 2 provides the pseudo-code of the proposed PCCGWO algorithm. Send to slaves the buffer vector C defined in Equation (14). 9.
Waiting for slaves. Master process 1.
Randomly initialize the grey wolf population.
Initialize the buffer C using randomly selected individuals from each sub-swarm.
While termination criteria = false do 7.
Send to slaves the buffer vector C defined in Equation (14). 9.
Receive all representatives of sub-swarms from slaves.
Update the buffer vector C.
While true do 16.
Receive the buffer vector C from Master process. 17.
Send the representative of sub-swarm S j to Master process.

PCCGWO for the UAVs' Path Planning Problem
In the decision variables vector X = (y 2 , y 3 , . . . , y n−1 , z 2 , z 3 , . . . , z n−1 ), the partition rate n ∈ N is shown as an important design parameter. Such an effective parameter can significantly affect the performance of the optimization algorithm PCCGWO. The more the n number increases, the dimension of the optimization problem increases, thus leading to an increase in the search complexity. Indeed, a higher partition rate will lead to greater route accuracy and greater planning problem complexity. The original d-dimensional search space is decomposed into equal m smaller-dimension sub-spaces. In this problem, the global path is divided into m sub-paths and each sub-component represents a part of the path. Each sub-population is associated to generate the corresponding sub-path as shown in Figure 3.

PCCGWO for the UAVs' Path Planning Problem
In the decision variables vector ( ) , the partition rate n∈ is shown as an important design parameter. Such an effective parameter can significantly affect the performance of the optimization algorithm PCCGWO. The more the n number increases, the dimension of the optimization problem increases, thus leading to an increase in the search complexity. Indeed, a higher partition rate will lead to greater route accuracy and greater planning problem complexity. The original d-dimensional search space is decomposed into equal m smaller-dimension sub-spaces. In this problem, the global path is divided into m sub-paths and each sub-component represents a part of the path. Each sub-population is associated to generate the corresponding subpath as shown in Figure 3. To start optimization with the PCCGWO algorithm, the initial population with the size pop n is generated as follows: To start optimization with the PCCGWO algorithm, the initial population with the size n pop is generated as follows: y n pop ,2 y n pop ,3 . . . y n pop ,n−1 Such an initial population is decomposed into m sub-swarms S j . Each of them is associated to evaluate the corresponding sub-component as follows:

Parallel Computing Environment
To pass from a sequential program to a parallel one, the parallelization process is the most efficient attempt. Parallel computing is a powerful way to speed up conception time and the prototyping process. The implementation of a parallel algorithm is highly dependent on the hardware architecture on which the program will be run, but it is also influenced by the software environment. In this work, the MIMD (Multiple Instruction, Multiple Data) systems are used as shared memory architectures commonly known as the multiprocessor. Such hardware/software architecture corresponds to sets of interconnected processors that share the same memory space. Today, most computers have multiple processors, i.e., containing one or more cores, and therefore fall into the family of multiprocessor systems. In a shared memory system, different cores can run in parallel within a process. Threads have access to the common global memory but have their execution stack. The "Parallel Computing Toolbox" software of MATLAB environment allows doing multithreaded programming [46]. In this work, the simplest "Parfor" structure in the MATLAB tool is used to illustrate this functionality. The workers' number is equal to the iterations number of the parallel loop. MATLAB workers perform iterations independently of each other. They evolve in parallel in the proposed PCCGWO algorithm (one per subpopulation). By using Parfor, workers are anonymous, have their execution stack, and share common global memory.

Numerical Experimentations
To illustrate the performance of the proposed PCCGWO algorithm to solve the formulated UAVs' path planning problem, numerical experimentations with six versions of PCCGWO are carried out and discussed. These proposed PCCGWO versions implement algorithms with different sub-populations equal to 2, 4, 6, 8, 10, and 12. These parallel coop-erative coevolutionary algorithms with different sub-swarms are denoted as PCCGWO-2, PCCGWO-4, PCCGWO-6, PCCGWO-8, PCCGWO-10, and PCCGWO-12. In this work, the performances of the proposed PCCGWO algorithms in terms of solution quality and computational speedup are compared to those of the standard GWO one. The effectiveness of the proposed versions of PCCGWO in solving the path planning problem is presented and analyzed under 20 different flight scenarios as described in Table 1. To assess the effectiveness of the proposed planning approach, these 20 scenarios are different from each other in terms of the number and position of the obstacles as well as the dimension of the planning problem. The problem dimension and obstacles' number are increased over the scenarios to increase the complexity and hardness of the flight mission.
To have equitable and reliable comparisons, the common parameters of the proposed PCCGWO algorithms such as the population size and the maximum number of iterations are set as n pop = 1200 and n iter = 1500, respectively. The proposed parallel cooperative coevolutionary algorithms are coded under the MATLAB 2016a environment, and executed on a computer with a Core i5 processor, having 12 cores at 2.90 GHz and 8.00 GB of RAM.

Solution Quality's Analysis
The proposed parallel cooperative coevolutionary algorithms are performed on the formulated path planning problem given by Equation (4). The six versions of PCCGWO are, however, compared with the standard version of the GWO metaheuristic for the considered different flight scenarios. Three performance criteria such as the value of standardized costs, the path length, and the threats' avoidance capability are used in each scenario to assess the solution quality. All the proposed GWO and PCCGWO algorithms are executed 20 times independently in each scenario in Table 1. The statistical results of the numerical experimentations under 20 independent runs are summarized in Table 2. All the proposed algorithms are compared based on the objective function value obtained in the best, worst, and mean optimization cases. A smaller standard deviation (STD) value indicates better reproducibility of the optimization algorithm across independent optimization tests. On the other hand, the threats' avoidance capability of the reported algorithms is quantified by the computation of the PF (Path's Feasibility) metric. Such a performance index means the percentage of the feasible paths satisfying the operational constraints of the planning problem, i.e., non-collision flight.  While considering the length of the flyable path as an optimization criterion of the problem (4), the investigated Straight-Line Rate (SLR) index is defined as follows: SLR = path length/|AB| (19) where |AB| is the straight line's length between starting point A and destination B.
A smaller value of the SLR index indicates a better efficiency of the used planning algorithm. The statistical results of numerical experiments over the considered 20 flight instances and under 20 independent runs are summarized in Table 3. All versions of the proposed PCCGWO algorithm are compared to the standard GWO.
From the statistical results of Tables 2 and 3, one can observe that the best mean cost values and SLR performance indexes are often obtained with the variants of the algorithm with the highest number of slaves, i.e., PCCGWO-10 and PCCGWO-12 ones. Indeed, for this large planning benchmark with 20 instances, as the dimension of the planning problem and the number of obstacles increase, the PF metric decreases for most variants of the PCCGWO algorithms, except those having more increased slaves in their parallel computation mechanisms. Finding a feasible path becomes more difficult when the number of slaves is reduced for instances with high numbers of obstacles and problem dimensions. The proposed PCCGWO-12 algorithm with 12 slaves becomes, on average, the best performing algorithm with tighter forms of the SLR data distribution over the different instances, followed by the PCCGWO-10 and PCCGWO-8 ones.  On the other hand, Figure 4 shows the Box-and-Whisker plots for the proposed parallel cooperative coevolutionary algorithms over the 20 flight scenarios. In Figure 4, the x-axes of different curves denote the reported algorithms' names, i.e., 1: GWO, 2: PCCGWO-2, 3: PCCGWO-4, and so on, as shown in the figure's legend. From these demonstrative results, one can observe that the algorithms with an increased number of slaves, i.e., PCCGWO-10 and PCCGWO-12 variants, often give tighter forms of the SLR data distribution.
On the other hand, and for the threats' avoidance criterion, some illustrations of the planned paths corresponding to the average case of performance are shown in Figures 5-8 for the flight scenarios 5,9,17, and 20 of Table 1, respectively. As shown in Figures 5-8, all versions of the proposed PCCGWO algorithm are more efficient than the standard GWO in terms of the solution's quality and fastness convergence. The exploration and exploitation capacities of PCCGWO algorithms are further improved. In scenarios 5 and 9, with problem dimensions equal to 200 and 300, respectively, all versions of the PCCGWO algorithms as well as the standard GWO one give feasible paths and can avoid all obstacles. In scenario 17, with problem dimensions equal to 500, only the PCCGWO-6, PCCGWO-8, PCCGWO-10, and PCCGWO-12 optimizers avoid the danger zones. In scenario 20, with a problem dimension equal to 600 and a high number of obstacles, only the proposed PCCGWO-10 and PCCGWO-12 algorithms give feasible paths. It is obvious that for an increase in the problem dimension, some PCCGWO algorithms become inefficient, due to the fewer number of slaves which become insufficient to provide efficient parallel computing and good research cooperation. In this case, variants of PCCGWO with a higher number of slaves are needed and more sophisticated processors with more than 12 cores are then necessary for these treatments. Additionally, one can observe that the standard GWO never moves between obstacles in the considered flight scenarios. On the contrary, all versions of PCCGWO pass between obstacles to reach the target point. The PCCGWO algorithm remains the more suited solver for performing flight missions with high efficiency compared to the GWO one.
Let us now analyze the effect of slaves' number, for a given problem dimension, on the performance of the proposed PCCGWO-based planning process. For this purpose, another 10 flight scenarios, for the same dimension equal to 600 and various numbers and positions of obstacles, are investigated as shown in Table 4. From this result, one can observe that the increase in the number of slaves leads to a decrease in the SLR values. For the threats' avoidance, the planned paths are shown in Figure 9. In scenarios 1, 2, and 3 of Table 4, with fewer numbers of obstacles, the algorithms PCCGWO-6, PCCGWO-8, PCCGWO-10, and PCCGWO-12 avoid the danger zones. In scenario 4, only the algorithms PCCGWO-8, PCCGWO-10, and PCCGWO-12 give feasible paths. For more complex scenarios, i.e., flight environment with several obstacles, only the PCCGWO-10 and PCCGWO-12 variants give feasible collision-free paths. Thus, for a concrete number of problem dimensions, as the number of obstacles increases, more slaves in the PCCGWO algorithm are needed to find feasible paths. The shorter and collision-free obtained paths confirm the superiority and effectiveness of the proposed PCCGWO optimizers with an increased number of slaves, i.e., PCCGWO-10 and PCCGWO-12 variants. Obviously, with each increase in the dimension of the planning problem, algorithms with more slaves are needed to best handle the complexity of the resulting optimization problem.  On the other hand, and for the threats' avoidance criterion, some illustrations of the planned paths corresponding to the average case of performance are shown in Figures 5-8 for the flight scenarios 5, 9, 17, and 20 of Table 1, respectively. As shown in Figures 5-8, all versions of the proposed PCCGWO algorithm are more efficient than the standard GWO in terms of the solution's quality and fastness convergence. The exploration and exploitation capacities of PCCGWO algorithms are further improved. In scenarios 5 and 9, with problem dimensions equal to 200 and 300, respectively, all versions of the PCCGWO algorithms as well as the standard GWO one give feasible paths and can avoid all obstacles. In scenario 17, with problem dimensions equal to 500, only the PCCGWO-6, PCCGWO-8, PCCGWO-10, and PCCGWO-12 optimizers avoid the danger zones. In scenario 20, with a problem dimension equal to 600 and a high number of obstacles, only the  proposed PCCGWO-10 and PCCGWO-12 algorithms give feasible paths. It is obvious that for an increase in the problem dimension, some PCCGWO algorithms become inefficient, due to the fewer number of slaves which become insufficient to provide efficient parallel computing and good research cooperation. In this case, variants of PCCGWO with a higher number of slaves are needed and more sophisticated processors with more than 12 cores are then necessary for these treatments. Additionally, one can observe that the standard GWO never moves between obstacles in the considered flight scenarios. On the contrary, all versions of PCCGWO pass between obstacles to reach the target point. The PCCGWO algorithm remains the more suited solver for performing flight missions with high efficiency compared to the GWO one.       Let us now analyze the effect of slaves' number, for a given problem dimension, on the performance of the proposed PCCGWO-based planning process. For this purpose, another 10 flight scenarios, for the same dimension equal to 600 and various numbers and positions of obstacles, are investigated as shown in Table 4. From this result, one can observe that the increase in the number of slaves leads to a decrease in the SLR values. For the threats' avoidance, the planned paths are shown in Figure 9. In scenarios 1, 2, and 3 of Table 4, with fewer numbers of obstacles, the algorithms PCCGWO-6, PCCGWO-8, PCCGWO-10, and PCCGWO-12 avoid the danger zones. In scenario 4, only the algorithms PCCGWO-8, PCCGWO-10, and PCCGWO-12 give feasible paths. For more complex scenarios, i.e., flight environment with several obstacles, only the PCCGWO-10 and PCCGWO-12 variants give feasible collision-free paths. Thus, for a concrete number of problem dimensions, as the number of obstacles increases, more slaves in the PCCGWO algorithm are needed to find feasible paths. The shorter and collision-free obtained paths confirm the superiority and effectiveness of the proposed PCCGWO optimizers with an increased number of slaves, i.e., PCCGWO-10 and PCCGWO-12 variants. Obviously, with each increase in the dimension of the planning problem, algorithms with more slaves are needed to best handle the complexity of the resulting optimization problem. Considering the two performance criteria, i.e., standardized cost and SLR, a statistical comparison based on the nonparametric Friedman test is implemented and discussed according to the mean values of performance over 20 different instances. The aim is to statistically study significant differences between the considered PCCGWO variants and standard GWO. For the seven reported algorithms (ζ = 7) and the twenty scenarios (η = 20), the Iman-Davenport extension of the classical Friedman test [47] leads to the computed value F F 1 = 52.7465 for the objective value criterion and F F 2 = 71.2460 for the SLR criterion. Based on the F distribution table, the critical value with ζ − 1 and (ζ − 1)(η − 1) degree-of-freedom is equal to F 6,114,0.05 = 2.1750 < F F 1 < F F 2 at a confidence level of α = 0.05. The null hypothesis is therefore rejected and there are significant differences between the performances of the proposed algorithms in solving the path planning problem. Fisher's LSD post hoc test [48] is applied to find out which algorithms differ from others. The ranks' sums for all proposed algorithms are summarized in Tables 5 and 6. When the absolute difference of the ranks' sum of two algorithms is greater than a critical value, they are declared to be different. Based on the statistical calculation formula given in [48], the critical value is equal to 11.9624 for the standardized cost criterion and 10.6661 for the SLR criterion. Paired comparisons are summarized in Tables 7 and 8. The underlined values indicate the difference in the performance of the proposed algorithms. From the conducted statistical study, one can see that the standard GWO is the worst performing algorithm according to the standardized cost and SLR criteria of the UAVs' path planning problem. The six PCCGWO versions surpass the standard GWO in all scenarios with statistical confidence. Indeed, the proposed algorithm PCCGWO-12 becomes the best, followed by PCCGWO-10 and PCCGWO-8 ones. The total number of subpopulations has a big impact on the performance of the PCCGWO algorithms. These demonstrative results show that the proposed PCCGWO algorithm improves the quality of the standard GWO-based solutions.  Table 5. Friedman's ranking of the algorithms for mean performance: standardized cost criterion. Considering the two performance criteria, i.e., standardized cost and SLR, a statistical comparison based on the nonparametric Friedman test is implemented and discussed according to the mean values of performance over 20 different instances. The aim is to statistically study significant differences between the considered PCCGWO variants and standard GWO. For the seven reported algorithms ( 7 ζ = ) and the twenty scenarios ( 20 η = ), the Iman-Davenport extension of the classical Friedman test [47] leads to the computed value

Computational Time
The performance of the proposed PCCGWO algorithms can be analyzed and compared in terms of the runtime of all reported algorithms over 20 different flight scenarios. The statistical results obtained for the Computational (CT) metric are summarized in Table 9. The obtained runtime measures for the mean case of optimization are also graphically shown in Figure 10. From these demonstrative results, one can notice that the increase in the number of slaves in the parallel master-slave model leads to lower runtimes of the reported PCCGWO algorithms. The PCCGWO-10 and PCCGWO-12 with the highest number of slaves are often the best variants with a remarkable superiority regarding the other reported PCCGWO algorithms. The reason for these fast processing computations is that the population and the decision variables are divided by the number of slaves that are evolved in parallel, i.e., one per subpopulation. It is also noticed that as the size of the problem increases, the runtime increases for all PCCGWO versions. As expected, a heavier computational and communication burden in parallel algorithms may be imposed by the manipulation and transmission of higher dimensional vectors.

Algorithms' Sensitivity Analysis
In this subsection, a study on the impact of the main control parameters' settings of the PCCGWO versions, i.e., population size n pop and maximum number of iterations n iter , is carried out while considering the path length and the execution time as performance metrics. For this sensitivity analysis of the proposed PCCGWO algorithms, several simulations with different settings of control parameters, as n pop ∈ {1200, 1600, 2000}, and n iter ∈ {1500, 2000, 2500}, are performed and summarized in Tables 10 and 11 for the considered two performance metrics. For a given numerical experimentation, the impact of a single parameter is examined while keeping the other parameter constant. All the performance comparisons are conducted under Scenario 20 of Table 1   From these demonstrative results, one can notice that the increase in the population size leads to a decrease in the path length and, subsequently, an increase in the execution time for all reported algorithms. It is also obvious that the elapsed time increases linearly with the increase in the number of iterations, on the contrary, the path length decreases. In Scenario 20 of Table 1, the PCCGWO-6, PCCGWO-8, PCCGWO-10, and PCCGWO-12 algorithms give achievable paths while avoiding all the obstacles. With parameters' setting n pop = 1200 and n iter = 1500, only the PCCGWO-10 and PCCGWO-12 algorithms give feasible paths while respecting the collision avoidance constraint. Therefore, as the size population and number of iterations increase, the efficiency of the proposed PCCGWO metaheuristics algorithms improves.    Tables 10 and 11 for the considered two performance metrics. For a given numerical experimentation, the impact of a single parameter is examined while keeping the other parameter constant. All the performance comparisons are conducted under Scenario 20 of Table 1 which represents the hardest and most complicated path planning instance.   Swarm Algorithm (SSA), and Multi-Verse Optimizer (MVO) are considered for the comparison. For these algorithms, the common parameters such as the population size and the maximum number of iterations are set as n pop = 1200 and n iter = 1500, respectively. All the performance comparisons are conducted under Scenario 20 of Table 1. All the compared algorithms are independently executed 20 times. The specific control parameters of each reported metaheuristic are summarized as follows: − WCA [49]: number of rivers: 4, maximum distance: 1 × 10 −16 . − SSA [50]: no control parameters. − CSA [51]: awareness probability: 0.2, flight length: 1. − MVO [52]: min and max of wormhole existence probabilities: 0.2 and 1. Table 12 presents the optimization results of the compared algorithms in terms of SRL and CT performance criteria. Based on these results, one can observe the superiority of the proposed PCCGWO-12 algorithm in terms of solutions' quality, results' reproducibility, and computational speedup, i.e., lower values for the mean SLR criterion, STD indices, and computational time.  Figure 11 shows the planned paths of the proposed and compared algorithms. Shorter and collision-free paths are obtained by the PCCGWO-12 planner that also better performs the fastest computation processing. On the contrary, all other reported algorithms are not efficient enough for the considered planning problem with increased numbers of obstacles and dimensions. Some of these planners lead to not flyable paths that traverse the threat zones with a lot of fluctuations. This weakness of WCA, SSA, CSA, and MVO algorithms in the planning process is due to their "dimensionality curse" that often makes failure to solve such large-scale optimization problems. In addition, the exploration and exploitation capacities of the proposed PCCGWO-12 algorithm are superior compared to those of the reported WCA, SSA, CSA, and MVO algorithms. Based on these established comparisons and observations, the superiority and effectiveness of the proposed PCCGWO-based path planning approach are further improved in terms of collision avoidance, shorter planned paths, and fastness of the computation processing. The novelty and originality of our work are well clarified compared to approaches using similar techniques.
Sensors 2022, 22, x FOR PEER REVIEW 28 of 31 Figure 11 shows the planned paths of the proposed and compared algorithms. Shorter and collision-free paths are obtained by the PCCGWO-12 planner that also better performs the fastest computation processing. On the contrary, all other reported algorithms are not efficient enough for the considered planning problem with increased numbers of obstacles and dimensions. Some of these planners lead to not flyable paths that traverse the threat zones with a lot of fluctuations. This weakness of WCA, SSA, CSA, and MVO algorithms in the planning process is due to their "dimensionality curse" that often makes failure to solve such large-scale optimization problems. In addition, the exploration and exploitation capacities of the proposed PCCGWO-12 algorithm are superior compared to those of the reported WCA, SSA, CSA, and MVO algorithms. Based on these established comparisons and observations, the superiority and effectiveness of the proposed PCCGWO-based path planning approach are further improved in terms of collision avoidance, shorter planned paths, and fastness of the computation processing. The novelty and originality of our work are well clarified compared to approaches using similar techniques.

Conclusions
In this paper, a new Parallel Cooperative Coevolutionary variant of the Grey Wolf Optimizer (PCCGWO) based on a parallelization master-slave model has been proposed and

Conclusions
In this paper, a new Parallel Cooperative Coevolutionary variant of the Grey Wolf Optimizer (PCCGWO) based on a parallelization master-slave model has been proposed and successfully applied to solve the UAVs' path planning problem over large benchmarks and instances of navigation. To overcome the limits and drawbacks of the standard GWO for solving large-scale and complex path planning problems, particularly in terms of dimensionality curse and prohibitive time consuming, two improvement mechanisms in terms of parallelization and cooperative co-evolutionary search are introduced in the proposed PCCGWO algorithm. The UAVs' path planning problem is formulated as an LSGO problem under operational constraints mainly in terms of obstacles' collision avoidance and path's straightness. A cooperative coevolutionary mechanism is applied to make an efficient partition of the original search space into smaller dimensional sub-spaces. The decision variables' vector is decomposed into several subcomponents with reduced dimensions. An efficient parallelization master-slave technique is then proposed to further reduce the computation time faced with the large-scale and hardness of the planning problem. Six PCCGWO variants with an increased number of slaves, i.e., PCCGWO-2, PCCGWO-4, PCCGWO-6, PCCGWO-8, PCCGWO-10, and PCCGWO-12, are proposed according to the number of the partitioned sub-populations and the available cores of the computer CPU's processor. Each slave of such a parallel architecture is designed to evolve a sub-swarm that seeks to optimize its component by applying a standard GWO algorithm. The master builds a buffer vector by concatenating the different representatives from slaves, shown as best search agents, and sending it again for a new cycle. The performance analysis of the proposed PCCGWO planners is carried out based on several experiments over different flight instances as well as a comparative study with the standard GWO algorithm, and other recent and extensively used metaheuristics, i.e., Water Cycle Algorithm (WCA), Crow Search Algorithm (CSA), Salp Swarm Algorithm (SSA), and Multi-Verse Optimizer (MVO). The demonstrative results, as well as the nonparametric statistical analyses in the sense of Friedman and post hoc tests, show the effectiveness and superiority of the proposed PC-CGWO algorithms with the highest number of slaves, i.e., PCCGWO-10 and PCCGWO-12 variants. The performance metrics in terms of shorter and collision-free planned paths and computational speedup are significantly improved. Obviously, with each increase in the planning problem dimension and number of obstacles, i.e., a more intensive partition of the flight environment, PCCGWO variants with more slaves are needed to best handle the complexity of the resulting optimization problem. As the most suitable drone planners are the ones that have the least parameters' tuning with an increased computation speediness regarding the software/hardware specifications of the onboard control units, the proposed PCCGWO algorithm can be considered as a promising method for providing shorter and collision-free flight paths in real-world environments.
Future works deal with the implementation of the proposed PCCGWO-based path planning method using the real-world Parrot AR. Drone 2.0 prototype of UAVs and the associated MATLAB/Simulink software. The real-world implementation and prototyping of such a planning algorithm will be investigated regarding all engineering details and managerial implications.