Complete coverage path planning for aerial vehicle flocks deployed in outdoor environments

Complete coverage path planning for aerial vehicle flocks deployed in outdoor environments

Computers and Electrical Engineering 75 (2019) 189–201 Contents lists available at ScienceDirect Computers and Electrical Engineering journal homepa...

6MB Sizes 0 Downloads 17 Views

Computers and Electrical Engineering 75 (2019) 189–201

Contents lists available at ScienceDirect

Computers and Electrical Engineering journal homepage: www.elsevier.com/locate/compeleceng

Complete coverage path planning for aerial vehicle flocks deployed in outdoor environments ✩ Dario Calogero Guastella∗, Luciano Cantelli, Giuseppe Giammello, Carmelo Donato Melita, Gianluca Spatino, Giovanni Muscato Dipartimento di Ingegneria Elettrica, Elettronica e Informatica (DIEEI), University of Catania, Italy

a r t i c l e

i n f o

Article history: Received 6 August 2018 Revised 28 February 2019 Accepted 28 February 2019

Keywords: Coverage path planning UAV Flock management Geographic information system Task negotiation Environment 3D model

a b s t r a c t This paper presents a system for Complete Coverage Path Planning to survey an outdoor area with a flock of Unmanned Aerial Vehicles (UAVs). The proposed system is able to manage the presence of no-fly zones, by decomposing the area into smaller subregions via a Morse-based decomposition approach. Furthermore, negotiation for UAV-subregion assignment is managed, taking into account environment geometry and both starting and desired final positions for the UAVs, once the coverage mission is completed. The backand-forth motion is chosen as coverage pattern inside each subregion. All these features have been implemented with an integrated software framework, capable of working with georeferenced maps and data structures, thus obtaining a software tool compatible with commonly used geographic information systems. © 2019 Elsevier Ltd. All rights reserved.

1. Introduction The problem of completely exploring or surveying large areas is present in several applications, such as urban or environmental monitoring, ‘search and rescue’ (e.g. landslides, avalanches, flooded areas), and industrial automation, to name a few. Robotics proved to be very helpful in addressing such a problem. A specific path planning approach has to be used in this case, namely Complete Coverage Path Planning (CCPP). In CCPP a trajectory that fully explores a Region Of Interest (ROI) is defined while still guaranteeing obstacle avoidance [1]. This kind of path planning has been equally applied to ground, aerial, and underwater robotic vehicles. According to the application, the ROI is a portion of an open surface, such as, for instance, in floor cleaning [2,3], land mine detection and clearance [4,5], lawn mowing [6], photogrammetry [7,8], and automatic harvesting [9,10]. In more complex applications, the ROI is a fully three-dimensional surface (i.e. a closed surface), as occurs in autonomous spray-painting [11] or underwater inspections [12]. As reported in [13], the CCPP algorithms can be divided into offline algorithms, when the information about the environment is known and constant throughout the task time and paths are planned before the mission is actually executed; and online algorithms, when the robot builds and updates a map exploiting real-time acquisitions of the environment, while exploring it, and takes decisions in order to sweep the whole area to cover. In the case of offline algorithms, the presence of some obstacles inside the ROI is usually managed via area decomposition. Galceran and Carreras [6] divide these algorithms according to the type of decomposition used, ranging from approximate to exact cellular decomposition. Therefore, ✩ ∗

This paper is for CAEE special section SI-umv. Reviews processed and recommended for publication to the Editor-in-Chief by Guest Editor Dr. F. Messina. Corresponding author. E-mail address: [email protected] (D.C. Guastella).

https://doi.org/10.1016/j.compeleceng.2019.02.024 0045-7906/© 2019 Elsevier Ltd. All rights reserved.

190

D.C. Guastella, L. Cantelli and G. Giammello et al. / Computers and Electrical Engineering 75 (2019) 189–201

an offline CCPP algorithm is characterized by three features [13]: 1) the decomposition technique; 2) the optimality factors, to be considered in the motion generation; 3) the backtracking mechanism, to establish an optimal path among the several subregions. The aim of the present work is the offline complete coverage path planning for a flock of Unmanned Aerial Vehicles (UAVs) in outdoor environments including no-fly zones. To this end, a georeferenced Digital Elevation Model (DEM) of the environment is used. The first step is to define the Region Of Interest as a 2D top-view over the DEM. The ROI can also include no-fly zones with any arbitrary shape, and, in this case, the ROI is divided into many free-to-fly subregions by means of a Morse-based decomposition [14]. After that, back-and-forth paths are computed along different directions for each subregion, and the shortest path among the ones with minimum-number of turns is chosen. Such subregional coverage paths are then assigned to the UAVs of the flock, via a competition routine which aims to equally distribute among all UAVs the total length to be covered. Both the total number of the aerial vehicles and their starting positions are taken into account. Furthermore, the final target positions to be reached by the flock once the coverage mission is accomplished can be assigned. Our solution can manage the more general case of a number of UAVs which can be either greater or lower than the number of subregions to be covered. The same holds for the number of final target positions. This allows the simulation of different conditions, in order to find a tradeoff between path lengths and number of UAVs to be used, for the ROI at hand with its no-fly zones and the possible targets. The proposed solution has been implemented as an integrated GIS software framework (Geographic Information Systems), thanks to the DEM georeferencing. This means that we can refer to a point on the map with either local coordinates, geodetic coordinates (latitude and longitude) or UTM (Universal Transversal Mercator) coordinates. The software tool allows the user to interact with the map and easily test the performances of the flock management in different environments. The computed trajectories are formatted as a waypoint list which can eventually be delivered to the multi-copters’ autopilots in a straightforward manner. The structure of this paper is organized as follows. Section 2 provides an overview of the literature available on the employment of UAV and flocks of UAVs for CCPP. Section 3 includes the theoretical background of Morse decomposition and a sketch of the implemented algorithm. Section 4 explains the path generation inside each subregion, while Section 5 reports the flock management approach. In Section 6 some illustrative experiments are presented, in order to quantify the performances of the algorithms described in Section 5. The paper ends with final comments and observations on the entire work reported in Section 7. 2. Related work In this section some relevant solutions proposed in the literature for Complete Coverage Path Planning and the adoption of UAV swarms will be presented. The recent interest in using UAVs, especially multi-copters, for these kinds of applications has been increasing, thanks to the improved performance and the continuous decrease in cost, size and weight of such robotic platforms. In the context of CCPP, aerial robots are able to quickly cover large areas and to provide a top view of them. Furthermore, a UAV flock can be more efficient, robust, flexible and faster than a single aerial vehicle. In the work conducted by Di Franco and Buttazzo [7], the authors developed a coverage path planning strategy by taking into account a power consumption model of their UAV based on real measurements. Their solution allows the planning of missions fulfilling some energy constraints. A relevant point underlined in the article is the high cost, both in terms of power consumption and time spent, of performing turns during the back-and-forth motion (as denoted also in [6], [8], and [15]). This is mainly due to the many “phases” involved in such a maneuver, namely to decelerate, stop, move to the following row, and then to accelerate again. Hence the need to prefer the trajectory minimizing the number of turns. What has not been faced in [7] is the ROI decomposition with complex shapes and the employment of multiple UAVs. Another CCPP solution limited to a single UAV is described in [8]. Also in this paper particular attention is paid to establishing coverage paths with the lowest number of turns, by defining an optimal line sweep direction. The total distance traveled by the UAV is considered, meaning that the coverage paths directions of each subregion are chosen in such a way as to minimize the distance to reach the subregion itself. Both [7,8] define planar coverage paths (i.e. at a fixed height with respect to the ground), thus ignoring environment morphology and geometry. An early work suggesting the use of a UAV flock for coverage path planning is reported in [16]. The authors propose a formation-based strategy, whereby the area to be covered is swept by the line-arranged vehicles. Therefore, most of the work has been carried out on managing the flock movements, while the problem of the presence of possible no-fly zones is not faced. This considerably simplifies the planning of the entire flock. A notable work on CCPP with a multi-UAV approach is reported in [17]. Authors describe their integrated system for aerial imaging with a team of UAVs, including a task assignment manager with georeferenced maps, an optimal path planning algorithm, and a customized flight control. They propose an approximate cellular decomposition, while the environment geometry is not considered at all in trajectory generation, i.e. again planar paths are considered. A multi-UAV methodology for 3D coverage paths is described in [18]. It represents one of the few works available in the literature taking into account environment morphology by superimposing the coverage path to the DEM of the area of interest. An approximate cell decomposition algorithm, using regular hexagons, is proposed. Routes inside those hexagonal cells are optimized to minimize the coverage time. The back-and-forth pattern is considered as basic motion. An interesting flocking strategy for UAVs performing aerial survey missions is described in [19]. Such a solution is based on a decentralized fault tolerant approach, allowing UAVs to self-organize into flock formations (in accordance with the specific monitoring application) and to dynamically find a coverage path. The included path planning

D.C. Guastella, L. Cantelli and G. Giammello et al. / Computers and Electrical Engineering 75 (2019) 189–201

191

algorithm exploits the information on the area parts already scanned to determine the best coverage path for the remaining terrain zones. However, an aspect not faced in [19] is the presence of possible no-fly zones within the area to be surveyed. It can be observed that the employment of UAV flocks has not been sufficiently investigated in current robotics literature as the CCPP has been mainly faced for ground vehicles rather than for aerial ones [8]. Our proposed approach of UAVs flock deployment for CCPP collects the main advantages of the solutions described above. Individual paths for each vehicle are planned including the management of no-fly zones within the region of interest, via a Morse-based decomposition. It is an exact decomposition technique, which can lead to a wide variety of decompositions depending on the Morse functions chosen. The optimal path within each subregion is searched for, by taking into account the geometry of the environment to survey and the minimization of number of turns in the back-and-forth pattern. A suboptimal task assignment is performed, including the management of different numbers of subregions and targets with respect to UAVs. All data structures and maps data are handled using GIS. The main limit of our solution is that it is conceived to work with a static model of the environment and to compute trajectories offline. In fact, the paths are first planned offline by a central ground station, and then loaded on the UAVs, which can autonomously execute them on user demand. Furthermore, another issue not faced in the current state of the work is the mutual avoidance between two vehicles of the flock, due to path intersections. Finally, since the use of GPS is considered for UAVs localization, our strategy has been conceived to work in outdoor environments only. To sum up, the main contributions of our work are: -

Deployment of UAVs flock for CCPP as independent vehicles; Management of no-fly zones with generalizable Morse decomposition; Optimal path choice within each subregion; Suboptimal task assignment among the UAVs; Management of different numbers of subregions with respect to UAVs; GIS management.

3. Morse decomposition In this section, the Morse decomposition method is summarized [14]. It consists in an exact cellular decomposition based on the analysis of Morse functions’ singular points. To help reader’s comprehension, some mathematical definitions are recalled in the following. ∂h ∂h Given an arbitrary real-valued function h: Rm → R, its differentiable function at p ∈ Rm is dh( p) = [ ( p ), . . . , ( p )] . ∂ x1 ∂ xm The Hessian matrix H(h) of a scalar-valued multi-variable function h(x1 , x2 , . . . , xm ) organizes all second partial derivatives into a matrix:



∂ 2h ⎢ ∂ x21 ⎢ 2 ⎢ ∂ h ⎢ ∂ x2 ∂ x1 H (h ) = ⎢ ⎢ . ⎢ . ⎢ . ⎣ ∂ 2h

∂ xm ∂ x1

∂ 2h ∂ x1 ∂ x2 ∂ 2h ∂ x22 .. .

∂ 2h ∂ xm ∂ x2

...

...

...

...

.. .

..

...

...

.

⎤ ∂ 2h ∂ x1 ∂ xm ⎥ ⎥ ∂ 2h ⎥ ⎥ ∂ x2 ∂ xm ⎥ ⎥ .. ⎥ . ⎥ 2 ∂ h ⎦

(1)

∂ x2m

A singular point is a value p ∈ Rm where either the function is not differentiable or all its partial derivatives are null, i.e. ∂h ∂h ( p) = . . . = ( p) = 0, and its Hessian is non-singular. Finally a Morse function is a multi-variable function whose sin∂ x1 ∂ xm gular points are isolated from one another (i.e. non-degenerate singular points). To determine the cell decomposition, a slice is swept through the whole target space. Formally, the slice is a co-dimension one manifold defined in terms of the preimage of a real-valued Morse function, h: W → R, where W is the 2D space to be covered. This slice changes its connectivity at singular points of the Morse function. The slice shape depends on the chosen Morse function and produces different cell decomposition patterns. In this work, the Morse-based boustrophedon decomposition was used, which is a planar decomposition. In particular, both horizontal and vertical planar decompositions have been implemented. A vertical (horizontal) linear slice, is defined in terms of the Morse function as

h(x, y ) = x

(vertical)

h(x, y ) = y

(horizontal)

(2)

and is swept from left (bottom) to right (top) in the workspace, i.e. along the x-axis (y-axis). Thus, the vertical slice is determined by the pre-image of this Morse function, Wλ = h−1 (λ ). The slice is parameterized by λ ∈ R which fixes its location in the target space. Increasing the value of the slice parameter λ, the slice is swept from left to right through the workspace. As the slice sweeps the space, it could intersect obstacles, which divide it into smaller pieces (the connectivity of the slice in the free space increases). Moreover, immediately after the slice leaves an obstacle, the smaller slice pieces are merged into larger pieces and the connectivity of the slice decreases. The points where these connectivity changes occur are the singular points of the obstacles.

192

D.C. Guastella, L. Cantelli and G. Giammello et al. / Computers and Electrical Engineering 75 (2019) 189–201

Fig. 1. Morse decomposition steps.

Fig. 1 shows a graphical example of the steps performed in the Morse decomposition (with a vertical linear slice), described below in detail. Our implementation leverages some geometric aspects stemming from the specificity of the planar decompositions considered. The first step is to find the so-called singular points of the no-fly zones (Fig. 1b). Then for each singular point, an associated line is defined, which is the line parallel to the slice and passing through the singular point considered. These lines span all the width of the area to be decomposed. If a line intersects with a border of any no-fly zone (including the one which the singular point belongs to), it stops at the closest intersection to the singular point itself. Once those lines are defined, they are divided into smaller segments at the singular points. The perimeter of the area to be decomposed and the perimeter of inner no-fly zones are divided into segments as well, at either singular points or corners (Fig. 1c). Eventually, the linking of adjacent segments (i.e. those sharing a common vertex) is performed, thus identifying the subregions to be covered (Fig. 1d). 4. Trajectory planning In this section, the method used to generate the coverage trajectories for each subregion is described. In a problem involving the complete coverage of an area, trajectories follow basic motions: the two most used in literature are the spiral motion, and the back-and-forth (also known as lawnmower or boustrophedon) motion. These kinds of trajectories are preferred to other more complex motions because they can guarantee a complete coverage for any kind of shape. In this work,

D.C. Guastella, L. Cantelli and G. Giammello et al. / Computers and Electrical Engineering 75 (2019) 189–201

193

Fig. 2. Examples of generated trajectories for a trapezoidal area.

the generation of back-and-forth 3D trajectories is considered, since these paths end close to the boundaries of the subregion, rather than in the center (as in the spiral case). This is preferable whenever the same UAV has to cover several regions as explained in Section 5. The strategy to define the 3D trajectory is straightforward: first, 2D trajectories with a back-and-forth motion are derived for each subregion identified by the decomposition. After that, the altitude value is assigned by adding a safety distance for the UAV from the ground to the DEM values (i.e. altitude values). To derive a smooth path, the DEM is processed as a raster image and dilated. Our approach generates 2(n + 1 ) planar trajectories for each subregion, where n is the number of edges of the subregion. Both parallel and perpendicular trajectories with respect to every edge of a subregion are considered, thus obtaining 2n trajectories. In addition, the two trajectories parallel to the map frame, namely the x and y axes (i.e. the west-east and south-north directions respectively) are computed. Some illustrative examples of trajectories generated for a trapezoidal area are depicted in Fig. 2. When all the 2(n + 1 ) trajectories are generated, the optimal one must be identified. Many works in the literature consider as a choice criterion, in the case of UAV trajectories, the minimization of the number of turns [6–8,15]. In fact, a turn represents one of the main losses of time and energy during a back-andforth coverage path, as mentioned in Section 2. The number of U-shaped turns, Uturns , can be easily evaluated, from simple N +1 geometrical considerations, as Uturns = lines , where Nlines is the number of “rows” composing the trajectory. A novelty in 2 our solution consists in the following further optimization criterion: in case of trajectories with the same Uturns , we choose the one with the shortest 3D length, which is evaluated only after the height addition. We are aware that when deploying on real vehicles, it is extremely difficult to define exact energy-optimal trajectories even under simplifying assumptions [20] and many other factors may be included to reduce power consumption, such as

194

D.C. Guastella, L. Cantelli and G. Giammello et al. / Computers and Electrical Engineering 75 (2019) 189–201

Algorithm 1 First last waypoint Function.

the wind direction and flight altitude changes. However, as in this work we are dealing with offline mission planning for a generic aerial vehicle, only the path length and Uturns have been considered as energy-aware path choice criteria.

5. Flock management Another important feature of the proposed solution is the flock management. It allows the setting of starting and final positions for the UAVs and the dividing of the coverage tasks among the vehicles with a suboptimal strategy, trying to balance the length of assigned paths. Focusing on the number of UAVs, we can have two different scenarios: 1) the UAVs are more than the coverage subregions; 2) the UAVs are less than or equal to the coverage subregions. In the first case, the longest coverage path (among the ones defined at each iteration step) is split into two parts, until the number of UAVs becomes equal to the number of subregions. In this way, the first case is redirected to the second. In the second case, the total path length for each UAV of the flock is computed. First, the distance to each subregion is evaluated as explained below. The A∗ algorithm is used to plan the path to reach every subregion, enhanced with a Line-of-Sight approach, as described in [21]. As reported in [8], a coverage trajectory does not have an inherent “running direction”, which means that neither the starting nor the final point of said trajectory are a priori defined. Therefore, the path is planned between each UAV and both ends of each coverage trajectory. The two path lengths are compared and the shortest is chosen, thus establishing the running direction for the coverage path (implemented as reported in Algorithm 1). By indicating such distance plus the related coverage trajectory as trajectory length, initial total path length is assumed to be equal to trajectory length. At this point, the following competition routine is executed, to assign the different coverage zones to the UAVs of the flock. The routine is executed a number of times equal to the number of UAVs: 1. find the UAV with minimum total path length; 2. assign the trajectory to the related UAV; 3. eliminate both the trajectory and the UAV from the competition. If there are still not assigned coverage trajectories (this occurs when the UAVs are fewer than the subregions), the previous routine will be iterated again. However, before re-launching the routine, each UAV position is updated at the final position of each coverage path and the A∗ algorithm is reapplied from these points to the coverage trajectories left. The new total path length for each UAV is computed as total path length = traveled distance+trajectory length, where traveled distance takes into account the assigned paths until then. This procedure ends when all the coverage regions are assigned, as reported in Algorithm 2. After the coverage mission, it is possible to require the flock to go to some target positions on the map and assign them again with the competition routine. If the placed targets are less than the UAVs, some UAVs will not reach any target; while if the targets are more than the UAVs, some vehicles will reach more targets consecutively. Clearly, the competition solution is suboptimal, since there is no guarantee that the mission with minimum length covered by the whole flock is chosen. However, such a solution has been already adopted in the literature [22], providing a simple as well as acceptable solution in terms of achieved results and computational burden. In fact, the number of combinations among UAVs, coverage trajectories, and, potentially, target positions “explodes” as the number of subregions or vehicles increases, thus leading to a nearly intractable problem. An example of coverage mission with a fleet of 3 UAVs and 12 subregions is shown in Fig. 3. The computed paths of each UAV are shown separately in Fig. 4, with the detail of the 3D trajectory and the linking paths between the different

D.C. Guastella, L. Cantelli and G. Giammello et al. / Computers and Electrical Engineering 75 (2019) 189–201

Algorithm 2 Flock Competition Algorithm.

Fig. 3. Example of planned paths with a flock of 3 UAVs and 12 subregions to be covered.

195

196

D.C. Guastella, L. Cantelli and G. Giammello et al. / Computers and Electrical Engineering 75 (2019) 189–201

Fig. 4. Example of final coverage trajectories for a flock of 3 UAVs.

D.C. Guastella, L. Cantelli and G. Giammello et al. / Computers and Electrical Engineering 75 (2019) 189–201

197

Fig. 5. An external area of the engineering department’s campus.

subregions. The computed trajectories are formatted as a waypoint list which can eventually be provided to multi-copters’ autopilots in a straightforward manner. In our work we considered the format supported by the Ardupilot firmware1 . 6. Results In this section, the offline planned paths provided by the proposed flock management system described in Section 5 are reported. As testing environment, an external area of the engineering department’s campus has been considered. Its 3D reconstruction is depicted in Fig. 5, while the no-fly zones and the decomposed region of interest are the ones shown in Fig. 3a. Assigned path lengths and their balanced distribution among the UAVs are considered as measures of the performance of the flock management. No final target positions are considered in these experiments since their assignment strategy is equal to the one adopted for the coverage paths assignment. Paths have been planned for flocks with a number of UAVs ranging from 3 to 8. For the initial positions of the vehicles, a set of 10 different starting formations have been considered (e.g. gridded, linear, chessboard-like, etc.). In this way, it was possible to compare the results achieved for the same starting formation as the number of UAVs increases. Fig. 6 depicts some illustrative starting formations for the flock with 5 UAVs. To sum up, for each of the 6 flocks considered, with 3 to 8 UAVs, 10 different experiments have been performed, thus leading to 60 experiments overall. As the number of UAVs increases, we expect the average length to decrease, while the difference between minimum and maximum lengths is expected to increase (thus decreasing the path length balance over the flock). This is mainly related to the number of UAVs that is not, in general, an integer multiplier of the number of subregions to be covered. Therefore, some UAVs will cover more zones than others, thus increasing their covered path lengths that, in this case, will also include the additional paths to move between the subregions. For each different flock and for each experiment, the following values have been assessed as reported below

min length = min{path length UAVi , i = 1, . . . , n}

(3)

max length = max{path length UAVi , i = 1, . . . , n}

(4)

n 

mean length =

path length UAVi

i=1

n

(5)

where n is the number of UAVs in the considered experiment. In Fig. 7, the obtained results are depicted. In particular, the minimum path length (Eq. (3)) assigned for each experiment is shown and the difference between the maximum and the minimum path lengths (to evaluate how balanced the lengths among the UAVs are) is stacked on top of the minimum length. Therefore, the overall stacked bar height is the maximum path length assigned for each experiment (Eq. (4)). In addition, in order to analyze the overall behavior of the flock, the average length over all the UAVs composing the team (Eq. (5)) is shown. From these charts, we can observe that, in the considered environment with the specified no-fly zones, the addition of a single UAV to the flock results in a decrease, as expected, of the mean length of 100 m. Furthermore, such an average 1

The ArduPilot project, URL: http://ardupilot.org/.

198

D.C. Guastella, L. Cantelli and G. Giammello et al. / Computers and Electrical Engineering 75 (2019) 189–201

Fig. 6. Starting positions of some experiments for the flock with 5 UAVs.

D.C. Guastella, L. Cantelli and G. Giammello et al. / Computers and Electrical Engineering 75 (2019) 189–201

Fig. 7. Bar charts of the path lengths obtained for the 6 flocks in the 10 experiments.

199

200

D.C. Guastella, L. Cantelli and G. Giammello et al. / Computers and Electrical Engineering 75 (2019) 189–201

Fig. 8. Results of the standard deviation analysis over the 10 experiments for each flock.

length changes with the initial positions of the UAVs. However, by comparing the results achieved for the same experiment (i.e. the same starting formation) by the different flocks (i.e. with a different number of UAVs), it is not possible to identify an initial formation ensuring us the minimum average length (shown in yellow in Fig. 7). A similar consideration can be given to the minimum difference (shown in red in Fig. 7) between the maximum and the minimum lengths assigned for each experiment. In fact, this minimum difference represents the optimal case in terms of balanced distribution of path to cover among all the UAVs. In one case only (exp. 3 with 6 UAVs) the best behavior, both in terms of minimum path covered by the flock and maximum balance in path assigned to each UAV of the flock, was obtained. This observation suggests the need to simulate different initial positions or numbers of UAVs to reach the most satisfying flock performance, which was made possible thanks to the flexibility of our solution. In order to evaluate the behavior of the algorithm with respect to the change of starting positions, a statistical analysis has been performed. In particular, the standard deviations from the arrays of the average lengths, across the different experiments, for each flock has been computed, as reported below



σn =

nexp  1 |mean lengthi − μ|2 nexp − 1

(6)

i=1

where n indicates the number of UAVs of the flock considered, nexp is the number of experiments (i.e. 10 in our case) and μ 1 nexp is the average value of the mean lengths, evaluated as μ = nexp mean lengthi . The results are shown in Fig. 8. The best i=1 outcome is obtained when a flock with 7 UAVs is considered as in this case the inner variability of the mean length is 3.8 m only. Similarly, to perform a quantitative assessment on the number of UAVs that guarantees the best balance regardless of their initial positions, the standard deviations from the arrays of the differences between maximum and minimum path lengths, over the different experiments, have been evaluated (similarly to Eq. (6)) and presented again in Fig. 8. In this case, the best result is achieved with 5 UAVs, since a minimum standard deviation of 13.41 m is obtained. We think that such behavior is tightly coupled to the relationship between the number of UAVs and the number of regions to be covered. In fact, keeping in mind that the number of regions to be surveyed is fixed (12), as said above a more balanced behavior is achieved with 5 UAVs, while shorter distances covered by the whole flock are obtained with 7 UAVs. However, focusing on single experiments, the best result is achieved with 6 UAVs, which is exactly the mid-value between 7 and 5 UAVs for which the two suboptimal behaviors were observed. We expect that increasing the number of vehicles would lead to a further worsening in the balance distribution, thus not justifying the need to deploy a flock with a larger number of UAVs (although the mean length would further decrease). 7. Conclusions The integrated software framework implementing the method described provides the user with a number of features such as no-fly zones treatment via Morse decomposition, GIS data handling, and negotiation among different numbers of vehicles and subregions to cover. From the experiments performed, we observed that a general relationship between minimum average path lengths (i.e. the minimum flock covered lengths) and max-min path lengths differences (i.e. the balance index in path assignment to UAVs) is not trivial to be established. However, trying to pursue an analytically optimal solution

D.C. Guastella, L. Cantelli and G. Giammello et al. / Computers and Electrical Engineering 75 (2019) 189–201

201

might imply a computational burden (and then a computing time) which would make it useless. Although being suboptimal, our framework allows us to test many different situations, in terms of number of UAVs and decompositions, and to decide, eventually, on a satisfactory solution, even by fine-tuning the starting positions of the UAVs in the environment. As future work we plan to apply the results achieved on a real flock of UAVs. First trials for testing the behavior of individual UAVs have already been carried out, thanks to the ready-to-use waypoint list provided by the framework. These initial experimental results make us confident about the extension to the whole flock. Acknowledgments The presented work is in the framework of the CLARA (CLoud plAtform and smart underground imaging for natural Risk Assessment) PON project, supported by MIUR under the program PON R&C SCN_00451. References [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22]

Cao ZL, Huang Y, Hall EL. Region filling operations with random obstacle avoidance for mobile robots. J Robot Syst 1988;5(2):87–102. Viet HH, Dang V-H, Laskar MNU, Chung T. BA∗ : an online complete coverage algorithm for cleaning robots. Appl Intell 2013;39(2):217–35. Waanders M. Coverage path planning for mobile cleaning robots. In: Proc. of 15th Twente Student Conf. on IT; 2011. Hameed IA. Motion planning for autonomous landmine detection and clearance robots. In: Proc. of the Int. Workshop on Recent Advances in Robotics and Sensor Technology for Humanitarian Demining and Counter-IEDs; 2016. p. 1–5. Prado J, Marques L. Energy efficient area coverage for an autonomous demining robot. In: Proc. of the 1st Iberian Robotics Conf.; 2014. p. 459–71. Galceran E, Carreras M. A survey on coverage path planning for robotics. Rob Auton Syst 2013. Di Franco C, Buttazzo G. Coverage path planning for UAVs photogrammetry with energy and resolution constraints. J Intell Robot Syst 2016. Torres M, Pelta DA, Verdegay JL, Torres JC. Coverage path planning with unmanned aerial vehicles for 3d terrain reconstruction. Expert Syst Appl 2016;55:441–51. Jensen MAF, Bochtis D, Sørensen CG, Blas MR, Lykkegaard KL. In-field and inter-field path planning for agricultural transport units. Comput Ind Eng 2012;63(4):1054–61. Jin J, Tang L. Optimal coverage path planning for arable farming on 2d surfaces. Trans ASABE 2010;53(1):283–95. Atkar PN, Greenfield A, Conner DC, Choset H, Rizzi AA. Uniform coverage of automotive surface patches. Int J Robot Res 2005;24(11):883–98. Englot B, Hover FS. Three-dimensional coverage planning for an underwater inspection robot. Int J Robot Res 2013;32(9–10):1048–73. Khan A, Noreen I, Habib Z. On complete coverage path planning algorithms for non-holonomic mobile robots: survey and challenges. J Inf Sci Eng 2017. Acar EU, Choset H, Rizzi AA, Atkar PN, Hull D. Morse decompositions for coverage tasks. Int J Robot Res 2002. Li Y, Chen H, Er MJ, Wang X. Coverage path planning for UAVs based on enhanced exact cellular decomposition method. Mechatronics 2011;21(5):876–85. Vincent P, Rubin I. A framework and analysis for cooperative search using UAV swarms. In: Proc. of the ACM symposium on Applied computing. ACM; 2004. p. 79–86. Barrientos A, Colorado J, Cerro Jd, Martinez A, Rossi C, Sanz D, et al. Aerial remote sensing in agriculture: a practical approach to area coverage and path planning for fleets of mini aerial robots. J Field Rob 2011;28(5):667–89. Perez-Imaz HI, Rezeck PA, Macharet DG, Campos MF. Multi-robot 3D coverage path planning for first responders teams. In: IEEE Int. Conf. on automation science and engineering; 2016. p. 1374–9. De Benedetti M, D’Urso F, Fortino G, Messina F, Pappalardo G, Santoro C. A fault-tolerant self-organizing flocking approach for UAV aerial survey. J Netw Comput Appl 2017;96:14–30. Morbidi F, Cano R, Lara D. Minimum-energy path generation for a quadrotor UAV. In: IEEE Int. Conf. on robotics and automation; 2016. p. 1492–8. Guastella DC, Cavallaro ND, Melita CD, Savasta M, Muscato G. 3D path planning for UAV swarm missions. In: Proc. of the 2nd Int. Conf. on mechatronics systems and control engineering; 2018. p. 33–7. Moon S, Oh E, Shim DH. An integral framework of task assignment and path planning for multiple unmanned aerial vehicles in dynamic environments. J Intell Robot Syst 2013;70(1–4):303–13.

Dario Calogero Guastella received his M.Sc. and Ph.D. in Automation Engineering and Control of Complex Systems in 2015 and 2019, respectively, from University of Catania, Italy, where he is currently a Research Fellow with the Department of Electrical, Electronics, and Computer Engineering (DIEEI). His research activity includes terrain traversability analysis, AI-based robot navigation, and cooperative robotics systems. Luciano Cantelli is currently Researcher in Robotics with the Department of Electrical, Electronics, and Computer Engineering (DIEEI), University of Catania, Italy. From 2003 he was involved in several national and European projects, such as ROBOVOLC, RAPOLAC and TIRAMISU. His research interests include industrial and service robotics. He is CEO and cofounder of Etnamatica S.r.l., a Robotic Spin-Off company. Giuseppe Giammello received his B.Sc. in Computer Engineering and his M.Sc. in Automation Engineering and Control of Complex Systems in 2015 and 2018, respectively, from the Department of Electronics, Electronics and Computer Engineering, University of Catania, Italy. His research interests include decomposition algorithms and path planning. Carmelo Donato Melita received his Ph.D. in Electronics, Automation and Complex Systems Control Engineering in 2009. Since then he has been a Research Fellow at the University of Catania, involved in National and European projects. His research activities are focused on control and navigation of autonomous mobile robots. He founded Etnamatica s.r.l. where he is technical director. Gianluca Spatino received his B.Sc. in Computer Engineering in 2016 and his M.Sc. in Automation Engineering and Control of Complex Systems in 2018, both from University of Catania. His research interests cover mobile robotics, optimization algorithms, system modeling and data processing. Giovanni Muscato is Full-Professor of robotics and automatic control and since 2018, Director of the Department. His research interests include service robotics and the cooperation between ground and flying robots. He is the local coordinator of several national and European projects in robotics and the author of more than 300 papers and three books.