An improved parallel processing-based strawberry optimization algorithm for drone placement

It is challenging to place drones in the best possible locations to monitor all sensor targets while keeping the number of drones to a minimum. Strawberry optimization (SBA) has been demonstrated to be more effective and superior to current methods in evaluating engineering functions in various engineering problems. Because the SBA is a new method, it has never been used to solve problems involving optimal drone placement. SBA is preferred for optimizing drone placement in this study due to its promising results for nonlinear, mixed, and multimodal problems. Based on the references listed below, no study has investigated the need to develop a parallelized strategy version. Several studies have been conducted on the use of drones for coverage. However, no optimization algorithms have been evaluated regarding time complexity or execution time. Despite what has been said thus far, no study has looked into the significance of a systematic framework for assessing drone coverage techniques using test suits. An optimized drone placement algorithm based on strawberry optimization is presented in the paper. The strawberry optimization algorithm will solve the drone placement problem through parallelization. In addition, the authors deploy test suits that vary in size from small to large. The dataset consists of four categories with three problems each. Results indicate that strawberry optimizers outperform Genetic algorithms (GA) and particle swarm optimization algorithms (PSO) in the number of drones, convergence, and computation time. Furthermore, the proposed approach achieves the best solution in a finite number of steps. In small-scale problems, the performance of all algorithms is convergent. As the size of the data set increases, the superiority of Strawberry optimization algorithms becomes evident. Overall, Strawberry comes out on top for eleven out of twelve comparisons.


Introduction
In recent years, unmanned aerial vehicles (UAVs) have been regarded as one of the most promising research areas due to their critical role in various applications, ranging from military to multiple fields. The use and applications of flexible 3 flying drones have increased as low-energy machines, highperformance processing devices, and light materials have become more common. Drones may be utilized in diverse applications, for example, monitoring and surveillance [1], target tracking [2], traffic control [3], and medical applications [4].
Wireless sensor networks (WSNs) constitute one of the interesting issues in the domain of information technology. They are used in various fields, such as agriculture, medicine, and meteorology. WSNs are sensor nodes with limited processing and low power capacity, static or mobile, often positioned randomly in the region of interest. Moreover, an essential task in the WSN is data collection and transmission to the base station to be processed further [5]. The sensor nodes are spatially scattered in an ad-hoc manner to collect physical information from the surrounding environment and relay collected data to the base stations (sink nodes). The sensor nodes are often placed in areas where ground communication is inefficient. Thus, drones have been employed as aerial base stations in WSNs instead of ground ones [6].
WSN coverage is one of the most fundamental issues. Coverage refers to how effectively a drone can monitor a specific area. Application requirements or environmental conditions can change coverage requirements after utilizing a network. A major challenge of drone coverage is monitoring all targets without deploying too many drones. Each drone has a communication range that specifies the area a drone can observe [7].
Many factors, such as communication ranges, algorithm characteristics, deployment strategy, and sensing model [8], influence the coverage of drones. Drone coverage is categorized into the path, point, or area coverage. The regions where sensors are deployed are known in the area coverage, but the exact position of sensors is unknown. Point coverage, on the other hand, is considered when the goal is to cover only the sensor whose position is known. Since drones can move, they are used as base stations in path coverage, where the main goal is to find the best route for covering every point of a specific sensor area [9]. In the proposed work, point coverage is considered because the primary objective is to cover sensors with known locations with static drones as much as possible.
Deploying drones optimally in WSNs is a hard and Nondeterministic (NP-hard) optimization problem [10]. Drones must be deployed to cover multiple targets (sensors), with at least one drone covering each target [11]. The main goal of drone deployment in WSNs is to cover the maximum number of targets with the minimum number of drones and the least amount of fuel-depending on the drone's height [12].
Deterministic techniques cannot produce acceptable results in a reasonable amount of time to solve such problems [10]. Instead, meta-heuristic algorithms have proven effective optimizers for achieving satisfactory results when solving such difficult optimization problems. The literature demonstrates successful implementations of these algorithms on practical, real-world NP-hard problems. Natureinspired algorithms, especially Genetic Algorithms (GA), a type of evolutionary algorithm, have been successfully used to find a relatively good solution to such problems in a reasonable amount of time. Genetic algorithms are among the oldest meta-heuristic algorithms, whereas currently, there exist more recent algorithms, for instance, the strawberry algorithm [13], bat algorithm [14], firefly algorithm [15], and Particle Swarm Optimization [16].
A random walk (RW), also known as a stochastic or random process, is a mathematical object that describes a path of a series of unexpected steps in a mathematical space. According to the probability distribution, one point can jump to another place at each stage. After a sufficient number of iterations, we may generate a random path that may be used to characterize the network structure [17]. The RW Algorithm is detailed in appendix 05.
The genetic processes of biological organisms inspire a genetic algorithm (GA). Natural populations evolve over many generations according to the principles of natural selection and "survival of the fittest." By modifying a population of individual solutions, GA mimics the process of biological evolution. The algorithm randomly chooses parents from the existing population and uses them to generate offspring for the following generation. Over consecutive generations, the population approaches an optimal solution because good parents produce good offspring. GAs work on a population of chromosomes representing a problem's drone position. Each chromosome is assigned a fitness score based on how well it solves the problem. The highly fit chromosome is given a chance to reproduce with other chromosomes (individuals) of the population by crossover and mutation. If the GA is well-designed, the population will eventually find an optimal solution to the problem [18]. The genetic algorithm is detailed in Appendix 6, 7.
Drone Coverage is a complex problem that falls under challenging NP-Hard optimization problems. Therefore, an attempt was made to apply the previously reported strawberry optimization technique to Drone Coverage optimization for the first time. The basic idea behind a strawberry plant participating in an optimization procedure is that it contains both runners and roots that determine whether convergence is guaranteed, leading to an optimal solution or not. While runners play an important role in global search, roots focus on local searches because they move in small steps around a given domain to find the solution.
Computational processes can be parallelized based on the nature of the problem and the optimization algorithm. The use of parallelism enables the maximum use of computing power on the user's device. By dividing the work among many different devices, the enormous computational power of these combined devices will be available.
In summary, the following are the main contributions of this paper: • A parallel processing-based Strawberry algorithm for optimum drone placement is proposed • Assess performance by developing and implementing appropriate test bench datasets, ranging from small to large problems. • Analyze the results using statistics to ensure they are not just a matter of luck.
The rest of this article is organized as follows. Section 2 discusses the related work. Section 3 presents the mathematical formulation and problem formulation. Next, the proposed algorithms are outlined and presented in the methods section. Section 5 lists the results, simulations, and comparative analysis. Finally, Sect. 6 brings the paper to a close.

Related work
The efficiency of optimal drone deployment has drawn much interest between academicians and researchers. This section presents a review of existing literature related to role-based drone deployment and deployment objectives. In addition, this section intends to review drone deployment strategies synergistically by drawing on existing related literature efforts. Drones can be used to connect data sources and destinations as relay nodes. Such type of Drone deployment may be thought of as access points or base stations. In addition, these drones can help network reliability by presenting alternate data routes in emergencies, as data transmission routes can be lost due to various factors such as increased data congestion or link failure. Drones may be used as data collectors in specific applications, collecting and reporting real-time data. This deployment is typically beneficial in applications subjected to harsh environmental conditions, such as tracking and localization. This application includes structural health observation techniques, disaster management and rescue, and military services. Table 1 categorizes selected drone deployment research efforts based on deployment objectives and role-based drone placements. Minimizing the number of drones in different applications is the main objective of many works focusing on deploying multiple drones. Another aim of deploying multiple drones as flying Base stations is to maximize coverage in different wireless networks.
Research Gap: To conclude and summarize related work, a considerable amount of literature has been published on the applicability of bio-inspired optimization algorithms to the drone coverage problem. A comparison of the references cited above indicates that no study has examined the need to develop a parallelized strategy version. Several studies have been done on drone coverage techniques. However, none have investigated the optimization algorithms' time complexities and execution times. Given all that has been mentioned so far, no study investigates the importance of a systematic framework that includes test suits that can be used to assess the performance of drone coverage techniques. These test suits should better allow the evaluation of the algorithms from small-scale to large-scale problems.

Mathematical formulation
In this paper, the main objective of the proposed algorithm is to maximize the number of covered targets (sensors). The received radio signal strength can be used to estimate the maximum distance between targets (sensors) and drones at which the drone can be regarded to cover the target. The number of drones deployed should be kept to a minimum, but the amount of data acquired from the sensors should be maximized. The following is a mathematical formulation of the problem under consideration.
The flying region of the drones can be represented by two-dimensional rectangular terrain with a width X max and length Y max (see Fig. 1). Each drone d in the set of available drones (D) in the covering domain is determined by three-domination coordinates (x d , y d , z d ) where z d l, which represents the drone's flighting height. We assumed that every drone had the same maximum height in our calculations. However, the set of covered sensors by the available drones can be represented by S. The Drone coverage area on the ground can be defined by the following Eq. (1): where R represents the sensing radius of the drones, l is the drone altitude and r d is the drone's covering radius on the ground. The drone's flight height can be controlled by adjusting the power level of the motors. From this, it is evident that the greater the distance l, the higher the energy consumption. The energy consumption of a drone d at any time t is determined by the Eq. (2): where m d represents the mass of the drone, g is the gravitational acceleration and l t is the drone's flighting height at timet. The movement of the drones is bounded by maximum altitudel max , and a minimum altitude l min . As the only covering model is considered in this paper, it was deemed that the Communication between a drone and a sensor is possible if the received radio signal strength (RS) exceeds a certain threshold. For example, when the distance between sensor and drone is one meter, the received radio signal strength (in dB) is defined by Eq. (3): where RS min is the minimum strength of the received radio signal required to establish communication at a distance of one meter between the sensor and the drone. B is the path loss coefficient, representing the distance (in meters) between the sensor and the drone. ϑ is a zero-mean Gaussian random variable where the standard deviation is statistical variation in RS due to the shadowing. As the only covering model is considered in this paper, it was believed that the drone (d) could cover the sensor (s) if the distance between them (dis) is less than dis max . dis max is the distance necessary for receiving the minimal strength of the radio signal. The distance between drone d at location (x d , y d ,z d ) and sensors s positioned at (x s j , y s j ) is defined as Euclidean distance: Each drone d ∈ D must be located at the position (x d ,y d ,z d ) to cover the targets, mathematically can be represented as The mathematical representation of which sensor s j ∈ S is by a drone d ∈ D can be represented as: The main objective of the mathematical model employed in this work is to cover all the sensors with the possible minimum number of drones. Therefore, this model can be expressed as follows: Subjected to: The constraint in Eq. (5) guarantees that the drone d is located in one location, while the condition in Eq. (6)

Problem setup
Four pseudocode algorithms (see Appendix 1-4) should be run to start solving the drone coverage problem by the selected algorithms: 1. Problem setup: as depicted from the name of the algorithm, it is used to initialize and set up the problem 2. ExploreCoveredSensors: to count up covered sensors 3. GuaranteeCoverage: to get an updated version of the Drones List that guarantees the coverage for each sensor in the Sensors list by at least one drone in the Drones List 4. RemoveRedundantDrones: to return with an updated version of DronesList that does not contain drones that are fully covered by other drones (redundant drones)

Methods
In this research, four methods are used to solve the drone coverage problem: random walk [17], genetic algorithm [18], PSO [16], and strawberry optimization [13]. In this section, PSO and the proposed strawberry optimization implementation are described and discussed in detail. For further information about implementing the other methods, see Appendices 5-7.

Particle swarm optimization
Kennedy and Eberhart suggested particle swarm optimization in 1995. Particle swarm optimization (PSO) is a bioinspired algorithm that seeks to discover the best solution to a problem. For example, sociobiologists believe that a school of fish or a flock of birds moving in a group may profit from the experience of all other members, as stated in the original publication. As a bird is flying around looking for food at random, all of the flock can share what they discover and assist the entire herd in getting the best hunt. The algorithm starts with random points on the plane called particles and lets them look for the minimum point in random directions, just like a flock of birds looking for food. Every particle should seek around the smallest point it has ever found and the smallest point found by the entire swarm of particles at each step. After a specific number of repetitions, we consider the function's minimum point to be the smallest spot ever investigated by this swarm of particles. Each particle in the population is represented by a list, with each element referencing a drone coordinate. The PSO is described in detail in Algorithms 1.

Strawberry optimization algorithm
The Strawberry algorithm (SBA) is a nature-inspired algorithm that works as the plant strawberry. A Strawberry plant gets its resources like water to propagate through runners and roots. The runner is a long branch attached on one side to the parent plant (Mother plant), whereas the other side is free to move. The free side produces another plant (daughter plant) when it touches the ground; otherwise, it dies. The runner has few unwarranted roots which grow when landed on fertile land. When the daughter plant, produced by the runner, has sufficient roots, it can be separated from the parent plant and generate another new daughter. Thus, the Strawberry plant performs global searches through runners and local searches through roots to find resources. Several engineering problems are evaluated more effectively and accurately with SBA than with contemporary methods. SBA is a new method for solving drone placement problems, so it hasn't been applied previously. Due to its promising results for nonlinear, mixed, and multimodal problems, SBA is preferred for optimizing drone placement in this study. The Strawberry algorithm works based on this mathematical model [13]: where D plant denotes that the plant propagation matrix at iteration t is of dimension n × 2 m, indicating both runners and roots in one matrix. Where n signifies the number of variables to be optimized and m denotes the number of mother plants. Both D runner and D root matrices are of size n × m. The scalars S runner and S root provide the weighting factors for the parent plant's runners and roots, respectively, which determine the amount of movement of the parent plant for the following iteration (generation) in search of the intended goal. Usually, s runner controls the exploration and D root controls the exploitation. Finally, r 1 and r 2 are random matrices whose elements are uniformly distributed random numbers in the range [− 0.5, 0.5] [37]. The Strawberry Algorithm is detailed below in Algorithm 2.

An improved parallel processing-based strawberry optimization
One of the main issues that make any optimization algorithm applicable is the consumed time until it finds the optimum solution. In this work, a parallel version of SBA is used. As shown in Fig. 2, the idea behind this version is to perform the preparation and input steps of the algorithm sequentially, as usual, then after creating the initial population, which consists of a number (numSol) of valid solutions for the problem. Thus, each solution will be the start of a parallel process. The solution will evolve (developed) according to SBA to find a better solution during this process. This process is continued for a predefined number of iterations (N). The updated version of the solution is tested after each iteration to determine whether it is the best one created by the algorithm or not. If the answer to this question is yes, this best solution is saved. This process is performed for each initial solution in parallel, and continued N iterations are performed. It is important to state that the results of the consecutive version and the parallel version of SBA are identical.

Results and simulations
This section evaluates the problem setup, the dataset used, and the performance of the proposed SBA versus the RW, PSO, and GA methods using some criteria, including the statistical results, computational time analysis, convergence analysis, generation evolution analysis, and stability analysis.

Performance metrics
In this section, the performance metrics that are used to assess the proposed algorithms will be discussed. The Standard Deviation: In the statistical analysis, the algorithm that succeeded in getting the minimum number of drones has advanced over the other algorithms. The Standard Deviation is calculated using the Eq. (14), where n is the number of the independent runs, x i is the minimum drones number in the i th run, x is the average of the minimum number of drones in the whole independent runs. The algorithm with the lowest Standard Deviation between the results of the separate runs is considered a more stable algorithm than others. In addition, the average execution time of the runs is calculated according to Eq. (13). Therefore, the algorithm with the shortest average execution time is the best.

Standard Deviation
As part of generation evolution analysis, algorithms are evaluated based on their ability to find an optimal solution in an earlier generation than others and maintain their solution in subsequent generations. Furthermore, in the stability analysis for the proposed algorithm, the power of the algorithm to find the optimum solution in each independent run is studied. Finally, in the coverage analysis, the minimum solution generated by the proposed algorithm is graphically checked to ensure that the drones cover all the available sensors.

Dataset preparation
This subsection describes the dataset preparation for the deployment problem in detail. The dataset includes four categories with three problems with different parameters presented to investigate the performances of the proposed algorithms. These sets are Set 1, which includes P11, P12, and P13 denoted as small-dimensional problems. Set 2 includes P21, P22, and P23, marked as medium-dimensional problems. Set 3 to represent the large-dimensional. It has P31, P32, and P33; Set 4 represents the very large-scale and contains P41, P42, and P43. Each problem in the collection differs from the others throughout the startup procedure. The dataset's parameters are listed in Table 2. The dataset suggested in this research is implemented using python 3.8 and tested on a machine with the following specifications: Core i5 Processor 2.5 GHz/16 GB RAM /500 GB SSD, GPU: NVIDIA GeForce GTX1050 4 GB, compute capability 6.1. The authors publish the dataset for public use [38], which contains a complete transcription of the dataset. Figure 3 shows sensors' and drones' distribution for the dataset problems.

Experiment's preparation
To validate the superior performances of the presented algorithms, the parameter settings for the RW, GA, PSO, and SBA algorithms are provided in Tables 3, 4, 5 and 6. All the algorithms have been carried out in 50 independent runs; the population size (N) for GA and SBA is set to 50.

Computational time analysis
During the implementation of the consecutive SBA algorithm, the execution time was very large compared to other algorithms. It is primarily due to the huge amount of calculations performed in each generation. Two approaches are proposed to overcome this problem and improve the algorithm execution time. The first one is to decrease the number of mother plants (N M ) and study its effect on the algorithm performance, which is out of this paper's scope. The second is to take advantage of the independent nature of developing the different solutions found in the initial solutions list to implement the algorithm in a parallel processing method       instead of the default and sequential processing implementation method. Table 7 shows the remarkable improvement in algorithm execution time (between 27.8 and 76.3%) when this approach is used, especially in large-scale problems. In the rest of this paper, the parallel processing approach will be the default for SBA implementation.

Statistical analysis
This section presents a comparative study between four algorithms, GA, RW, PSO, and SBA, and validated on the dataset with small-sized, medium-sized, large-sized, and very large Scales categories. Each set involves four problems, where  Table 8. The results present the best, worst, average number of drones, standard deviation, and average execution time obtained in 50 independent runs of the algorithms. Table 8 shows the comparison results between GA, RW, PSO, and SBA. The comparison demonstrates that SBA gives the best results for most datasets regarding the number of drones, which shows that SBA has superior optimization capabilities. On the other hand, SBA results in the lowest standard deviation than the other comparative algorithm, which offers stable performance during the different optimization runs. Thus, it can conclude that the SBA outperforms other methods on all problems of the studied datasets in terms of average and st. Dev. Based on the obtained results, it is noteworthy that the SBA provides the overall best results. On the other hand, GA exhibits the second-best results among the compared algorithms on the studied data sets.

Convergence analysis
Convergence analysis presents a vital criterion to investigate the optimization methods' efficiency and exploratory/ exploitative powers. In this context, the efficacy and searching behavior of the proposed SBA are validated and presented for specific problems, as illustrated in Fig. 4. Furthermore, the convergence behavior of the SBA is compared with RW and GA. Based on the shown figure, it can be observed that the SBA has a faster convergence than other optimization methods for the studied problems. In dealing with small data set as represented by P13, it is observed that the SBA outperforms the RW and can provide competitive performance with GA. Furthermore, in dealing with medium (P23), large (P33), and very large dimensional (P41), it is observed that the SBA has superior performance compared with the RW and GA. In addition, the effectiveness and goodness of SBA

Generation evolution analysis
The generation evolution is demonstrated by depicting population behavior against the solution number during the best run. In this context, the solution convergence for 50 generations for some particular problems from the studied datasets is shown in Fig. 5. Based on the depicted curves, it is observed that the solutions within the population are evolved from generation 1 to generation 50 with steady behaviors. Therefore, it can be concluded that the proposed SBA has a successful behavior and ongoing performance in reducing the number of drones during the generations' growth.

Stability analysis
The proposed SBA's stability is evaluated by displaying the highest number of drones during overall optimization runs. The best number of drones in each run for 50 runs is illustrated in Fig. 6 for some particular problems. In this context, it is observed that the best number of drones for P13 is steady for overall runs and can provide zero value for the standard deviation. Also, for problems P23, P33, and P41, it can be noted that the best number of drones during the overall runs has a very small perturbation from one run to another and can provide a very small standard deviation. Therefore, based on the depicted, it can be concluded that it can realize a stable performance in different runs.

Coverage analysis
Our coverage analysis aims to exhibit the minimum number of drones that maximize the coverage of targets or sensors. In this context, the minimum number of drones obtained by the proposed SBA for the particular problems is illustrated in Fig. 7. For the P13, 20 sensors are initialized randomly, and the proposed SBA achieves six drones. For the mediumsize problems that P23 represents, 100 sensors are initialized randomly, and the proposed SBA achieves 31 drones. Also, for the large-scale problems P33 represents, 200 sensors are positioned randomly, and the proposed SBA reaches 81 drones. Finally, the very large-scale problems are defined by P41, where 500 sensors are placed randomly, and the proposed SBA achieves 164 drones as the optimal number. Based on the reported results, it can conclude that the SBA outperforms the RW and GA methods.

Conclusion
In this paper, the drone placement problem is presented and investigated. Strawberry Optimization Algorithm is selected to solve this challenging problem because of its surpassing performance in global and local search in each evolution step. to recap the benefits of parallel computing, The strawberry optimization technique will address the drone placement problem in parallel to drastically speed up the optimization process. The authors proposed suitable test suits that simulate real-world problems of deploying sensors ranging from low-sized to large-scale problems. The experimental and simulation were conducted fairly to compare Strawberry Plant's performance to Random walk, Query ID="Q5" Text="Please provide page range for the refs. [30,33,37 ]." Genetic algorithm, and PSO. Considering the accuracy, the minimum number of drones to cover the test suit, time complexity, and reproducibility of the solutions, the strawberry plant proved to be the most suitable solution to this kind of problem. To make sure that everything is going just well as planned and there is no chance of bias, the authors have carried out a statistical analysis.

Conflict of interest
The authors certify that they have No affiliations with or involvement in any organization or entity with any financial or non-financial interest in the subject matter or materials discussed in this manuscript.
Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecomm ons.org/licenses/by/4.0/.