Next Article in Journal
A Dynamic Surface Gateway Placement Scheme for Mobile Underwater Networks
Previous Article in Journal
A Novel Method for Classifying Liver and Brain Tumors Using Convolutional Neural Networks, Discrete Wavelet Transform and Long Short-Term Memory Networks
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Novel Cooperative Path Planning for Multi-robot Persistent Coverage with Obstacles and Coverage Period Constraints

1
School of Automation Science and Electrical Engineering, Beihang University, Beijing 100083, China
2
National Innovation Institute of Defense Technology, Academy of Military Sciences PLA China, Beijing 100071, China
*
Author to whom correspondence should be addressed.
Sensors 2019, 19(9), 1994; https://doi.org/10.3390/s19091994
Submission received: 23 February 2019 / Revised: 22 April 2019 / Accepted: 25 April 2019 / Published: 28 April 2019
(This article belongs to the Section Sensor Networks)

Abstract

:
In this paper, a multi-robot persistent coverage of the region of interest is considered, where persistent coverage and cooperative coverage are addressed simultaneously. Previous works have mainly concentrated on the paths that allow for repeated coverage, but ignored the coverage period requirements of each sub-region. In contrast, this paper presents a combinatorial approach for path planning, which aims to cover mission domains with different task periods while guaranteeing both obstacle avoidance and minimizing the number of robots used. The algorithm first deploys the sensors in the region to satisfy coverage requirements with minimum cost. Then it solves the travelling salesman problem to obtain the frame of the closed path. Finally, the approach partitions the closed path into the fewest segments under the coverage period constraints, and it generates the closed route for each robot on the basis of portioned segments of the closed path. Therefore, each robot can circumnavigate one closed route to cover the different task areas completely and persistently. The numerical simulations show that the proposed approach is feasible to implement the cooperative coverage in consideration of obstacles and coverage period constraints, and the number of robots used is also minimized.

1. Introduction

Research interest for the coverage and coordination of multi-agent has shown an increase in the field of artificial intelligence (AI) and control [1,2,3,4,5,6]. In particular, coverage control using multiple robots with limited sensing capabilities has received significant attention recently due to its versatility in many applications, such as mapping, patrolling, surveillance, and complete coverage [3,4,5,6,7,8,9,10,11]. However, it is more difficult to achieve persistent coverage for a group of multiple robots considering obstacle avoidance and coverage period, because mission domains may have differently shaped obstacles, as well as more complicated constraints.
In the current literature, many advanced methods, such as grid-based coverage, cellular decomposition and topological coverage, have been proposed for coverage problems [12,13]. The literature [13] develops two efficient coverage strategies for multiple robots based on boustrophedon cellular decomposition to achieve complete coverage of a known environment. Traditional AI search algorithms, such as A-Star and its variants, have also been applied [14], but cannot adapt to multiple robots. Votion and Cao first develop three improved A-star algorithms to obtain the optimal path, and then they present a new spatially diverse path planning algorithm based on the A-star variants to address the need for path diversity in multi-agent path planning [15]. Spanning tree coverage [16] is developed for multi-robot area patrolling [17] and surveillance [18], but ignores the sub-regions with different importance. Market-based mechanisms have also been used to assign work to robots, but their applications have been limited [8]. At the other end of the spectrum is the coordination of multi-agent, which includes potential-function based approaches, digital pheromone mechanisms, and particle swarm optimization (PSO) [19,20,21,22]. They are effective in dealing with the problem, but often suffer from troubles of local optimum. Another coverage approach includes artificial neural networks (ANNs) to represent control politics [23]. Multi-robot persistent coverage of the convex polygonal region is investigated in [24], where the path consists of the vertices of the scaled barycentric polygons. In [25], an adaptive path planning algorithm is proposed for multiple AUVs cooperative environmental sampling and sensing over an interest region. Atınç, Stipanović, and Voulgaris study a dynamic coverage for multi-agent systems, where the main objective of a group of mobile agents is to explore a given compact region [26]. Franco et al. present a new bounded potential repulsion law to achieve persistent coverage for a team of agents with collision avoidance [19]. The speed controller along the path is further developed in [27] for persistent awareness coverage using mobile sensors. The robots are supposed to be placed on the path uniformly to increase the frequency of revisits in [17]. It is also assumed that the coverage periods of the areas in the region are equal in the literature [27]. Persistent monitoring of given discrete sites under different frequency constraints is considered in [28,29], where the travelling salesman problem (TSP) [28] or the vehicle routing problem with time windows [29] is solved for the routing of the robots.
Most of these methods for multi-robot persistent coverage can be classified into two categories. One class is focussed on the paths to cover the task areas completely and persistently [10,30,31]. They present some new path planning algorithms and implementation for the efficient complete coverage of a known area. However, these methods are only suitable for simple task environments. In addition, they also ignore the sub-regions in the mission domain, which may be more important and need to be re-covered more frequently. The other class is characterized by approaches which are simple and highly scalable to address the problem of multi-robot persistent coverage [32,33]. These approaches can have better performance than a single robot for persistent coverage, but they do not consider using the least number of the robots to cover the areas.
Although the aforementioned methods have promoted the development of coordination algorithm for multi-robot persistent coverage, the number of robots used and coverage period are not taken into account in these cooperative persistent coverage methods. Therefore, this paper presents a new combinatorial approach for cooperative multi-robot path planning, which focuses on the persistent coverage problem with obstacles and different coverage period constraints using the minimum number of robots. The robots are supposed to re-cover the region of interest within every unit of time periodically. The contribution of the combinatorial method with respect to previous works is summarized as three-fold. The first contribution is the development of the proposed path planning based on sensor deployment for cooperative persistent coverage in complex task environments with obstacles. Compared with the traditional coverage planning, the new approach divides path planning issues into sensor deployment problem (SDP) and TSP in order to effectively cope with the planning puzzle caused by environmental obstacles. More precisely, the proposed algorithm introduces the idea of sensor deployment to implement coverage planning in more complex environments, thereby improving the adaptability and robustness of the algorithm to the environment. The second contribution is to consider the coverage period constraints of different sub-regions in the mission domains. The coverage period is utilized to indicate how frequently the region should be re-covered. In the mission area, there may be some sub-regions of different importance depending on the target probability density. Some sub-regions of greater importance are required to be re-covered with smaller periods. In addition, the sensors are deployed to cover the sub-region with the smallest coverage period first, then the sub-region with larger coverage period next, and so on. The third contribution is to optimize the number of robots performing the task for purpose of using a minimum number of robots to achieve persistent coverage for the mission area. Additionally, the approach can adaptively adjust the number of robots used according to the coverage period constraints of different sub-regions.
The rest of this paper is organized as follows. Section 2 presents the preliminaries to the improved cooperatively coevolving particle swarm optimization (CCPSO2) and modified genetic algorithm (GA). Section 3 describes the problem formulation of multi-robot persistent coverage. In Section 4, a new combinatorial approach for cooperative path planning is developed to achieve the multi-robot persistent coverage. The numerical results of proposed approach are discussed in Section 5. Finally, the discussion and conclusions are made in Section 6 and Section 7, respectively.

2. Preliminaries

In this paper, we use the CCPSO2 because it is fast enough to find the optimal solution of SDP. In addition, modified GA is utilized to solve TSP because of its inherent parallelism and global search capability.

2.1. Improved Cooperatively Coevolving Particle Swarm Optimization

PSO is one of popular swarm intelligence methods. However, the performance of the PSO algorithm deteriorates rapidly as the particle dimension increases. In contrast, the CCPSO2 algorithm decomposes the solution vector into different parts and each part is optimized with a single particle swarm. It reduces the dimension of the solution vector in a single particle swarm and has advantages in solving large-scale optimization problems. Therefore, in consideration of SDP characteristics, CCPSO2 with multiple heuristic rules is introduced to enhance particle diversity and algorithm performance.
In the PSO algorithm, each particle represents a potential solution to the optimization problem. Particles move through the search space to seek the best position. Assume that x i and y i are the current position and local optimal position of i th particle respectively. Let y ^ be the global optimal position of particles in the swarm. The update of y i and y ^ are determined by:
{ y i = x i ,   if   f ( x i ) < f ( y i ) y ^ = arg min ( f ( y i ) )
where f ( x i ) refers to the fitness value of the particle.
The update of velocity and position are formulated as [34]:
{ v i , d ( t + 1 ) = ω ( t ) v i , d ( t ) + c 1 r 1 ( t ) ( y i , d ( t ) x i , d ( t ) ) + c 2 r 2 ( t ) ( y ^ i , d ( t ) x i , d ( t ) ) x i , d ( t + 1 ) = x i , d ( t ) + v i , d ( t + 1 )
where v i , d ( t ) and x i , d ( t ) are the velocity and position of the i th particle in the d th dimension respectively; ω ( t ) is the inertial weight; c 1 and c 2 are acceleration constants; r 1 ( t ) and r 2 ( t ) are random numbers and satisfy r 1 ( t ) [ 0 , 1 ] , r 2 ( t ) [ 0 , 1 ] .
In order to improve the particle diversity and prevent premature convergence to local optimum, a new update model that uses both Gaussian and Cauchy distributions, as well as ring topology, is proposed in [35].
x i , d ( t + 1 ) = { y i , d ( t ) + C ( 1 ) | y i , d ( t ) y i , d ( t ) | ,   if   r a n d < p y i , d ( t ) + N ( 0 , 1 ) | y i , d ( t ) y i , d ( t ) | ,   otherwise
where C ( 1 ) and N ( 0 , 1 ) are the random numbers generated following the Cauchy and Gaussian distributions respectively; r a n d is a random number generated uniformly in the range of [ 0 , 1 ] ; p is a custom parameter for Cauchy sampling to occur; y i denotes a local neighborhood best for the i th particle.
In this paper, the ring topology is utilized to describe the particles’ neighborhood. Each particle is supposed to have an immediate left and right neighbor. Therefore, y i can be defined as:
y i = arg min y i ( f ( y i m ) , , f ( y i ) , , f ( y i + m ) )
where m is the neighborhood range. It increases with the number of iterations in this paper. A small m can improve the particle diversity at the beginning of the optimization process and a larger m could benefit the convergence at the latter stage of the optimization.
The n -dimensional solution vectors are decomposed into K components in the CCPSO2 algorithm. Each component corresponds to a swarm with s dimensions, where s = n / K . Suppose that P j . x i and P j . y i are the current position and the local optimal position of the i th particle of the j th swarm. Let P j . y ^ be the global optimal position of the j th swarm. The current best context vector can be given by y ^ = ( P 1 . y ^ , P 2 . y ^ , , P s . y ^ ) .
In order to evaluate the i th particle of the j th swarm, substitute P j . x i for P j . y ^ in y ^ . Hence, define the following combination of particles:
b ( j , P j . x i ) = ( P 1 . y ^ , P 2 . y ^ , , P j 1 . y ^ , P j . x i , P j + 1 . y ^ , , P s . y ^ )
The P j . y i can be updated as follows:
{ P j . y i = P j . x i ,   if   f ( b ( j , P j . x i ) ) < f ( b ( j , P j . y i ) ) P j . y ^   = P j . y i ,   if   f ( b ( j , P j . y i ) ) < f ( b ( j , P j . y ^ ) )
Considering the properties of SDP, several heuristic operators for the update of the particles’ positions are introduced to improve the convergence speed of the CCPSO2 algorithm.
  • Addition. If there are uncovered cells and sensors that have not been deployed in the particle, a sensor is randomly chosen to place near one uncovered cell.
    if   c i = 0 ,   then   add   s n + 1   at   point   c i
    where c i is a binary vector representing the i th discretized cell (for details, refer to Section 4.2); s n + 1 indicates the new sensor added to the existing n sensors.
  • Movement. If there are uncovered cells in the region and all sensors in the particle have been deployed, a sensor is chosen to move a short distance towards one uncovered cell.
    if   c i = 0 ,   then   move   s   to   point   c i
    where s denotes a certain sensor around the cell c i .
  • Deletion. If the distance between any deployed sensor and other sensors in the global best is less than the sensing radius of the sensors, the deployed sensor in the particle is deleted.
    if   p ( s i ) p ( s j , j i ) < r s ,   then   delete   s i
    where p ( s i ) is the position of the i th sensor and · refers to the Euclidean distance between p ( s i ) and p ( s j ) .
  • Fusion. After all the cells of region have been covered, the fusion operation can be performed. If the distance between any two deployed sensors is less than a certain constant, the two sensors are fused into one sensor with its position at the middle of the two sensors.
    if   p ( s i ) p ( s j , j i ) < τ ,   fusion   s i   and   s j
    where τ represent a certain constant.

2.2. Modified Genetic Algorithm

GA is a kind of random search method that has evolved from the evolutionary laws of the biosphere. It could use the probabilistic optimization method to adjust search direction adaptively in the process of solving combinatorial optimization problem. GA is one of the most ideal approaches in solving the TSP because of its inherent parallelism and global search capability. Therefore, the TSP is solved by GA to obtain the closed path in this paper.
Assume that there are n cities and each city is represented by an integer from 1 to n . In this way, chromosome R k can be described as R k = { g 1 , g 2 , g 3 , , g n } ,   g i [ 1 , n ] , where g i is the i th gene and also represents a city. R k is a chromosome and refers to the k th feasible path as well. It is a gene sequence consisting of n genes and each gene of the chromosome is different from each other. For example, there are 5 cities in the TSP, then { 1 , 3 , 4 , 2 , 5 } is a legitimate chromosome and a possible optimal solution. It means that the salesman visits cities 1, 3, 4, 2, and 5 in order. Suppose that X ( j ) represents the j th population. It can be expressed as X ( j ) = { x 1 j , x 2 j , x 3 j , , x m j } , where m is the size of the population; x i j refers to the i th individual of the j th population. In this paper, a random function is used to generate an initialization population X ( 0 ) = { x 1 0 , x 2 0 , x 3 0 , , x m 0 } .
There are three basic operations in the standard GA, that is, selection operation, crossover operation, and mutation operation. Considering the characteristics of the TSP, this paper uses following four operations: selection operation, mutation operation, evolutionary reversal operation, and slide operation.
The selection operation is to generate a new population with higher fitness value. It is selected by the selection probability from the current population. The main objective of selection operation is to inherit the high-quality genes to the next generation while ensuring fast global convergence. In this paper, the individual with the maximum fitness value f ( x i j ) is utilized to generate a new population as the elite individual.
Mutation operation is a very important operator of the GA. In this paper, the mutation operation adopts a strategy of randomly exchanging two genes of one chromosome. As depicted in Figure 1a, there is a chromosome R consisting of 7 genes and randomly generate two gene positions z 1 = 2 and z 2 = 6 . Then exchange the genes at these two positions to obtain the new chromosome R .
In order to improve the local search ability of the GA, the evolutionary reversal operation is introduced after the selection operation and mutation operation. The evolution refers to the unidirectionality of reversal operator, that is, after the reversal operation, the individual will perform the operation if it becomes better, otherwise the reversal is invalid. The method is to randomly generate two random numbers z 1 and z 2 , and then the genes between z 1 and z 2 are re-sorted in reverse order. The process of the evolutionary reversal operation is depicted in Figure 1b. Assume that there are 7 genes in one chromosome and randomly generate two gene positions z 1 = 3 and z 2 = 6 . Then re-sort the genes between z 1 and z 2 in reverse order.
Slide operation can greatly inherit the advantages of the parent individual and it can also prevent the algorithm from falling into local optimum. Figure 1c shows the process of slide operation. Firstly, two gene positions z 1 = 2 and z 2 = 5 are randomly generated. Then rotate one gene position left between z 1 and z 2 .

3. Problem Formulation

3.1. Basic Assumptions

In this paper, a new combinatorial approach is proposed for multi-robot persistent coverage. The following conditions are assumed to describe the cooperative persistent coverage.
  • Each robot is supposed to be homogeneous.
  • The detection zone of a sensor is simplified to a circle, and the influence of robot motion on sensing range is not considered.
  • The center of the sensor detection zone, namely the center of detection circle, is considered as the position of the sensor.
  • The position of a sensor is regarded as the robot observation point, that is, the robot waypoint. When the robot is at the observation point, the area within the coverage of the sensor can be detected.
  • The probability density of target in each sub-region is known by the priori information, and there are different coverage period requirements for each sub-region.
  • The total velocity of each robot is set to the constant value.

3.2. Problem Statement

Suppose that there is a group of robots performing persistent coverage task over the given region. The sensing radius of each robot is denoted as r s . The region of interest R O I consists of the feasible region R f and the obstacle region R o , which satisfy R f R o = R O I and R f R o = . The obstacles cannot be reached and would also block the sight of the sensors.
The robots are tasked to re-cover the feasible region within every T units of time in order to update their observations continually. The coverage period T is adopted to indicate how frequently the region should be re-covered. Some sub-regions of more importance in the feasible region may be required to be re-covered with smaller periods. It is assumed that the coverage periods of the feasible region and the sub-regions are known according to the prior information. As depicted in Figure 2, there are three sub-regions (sub-regions 1, 2, and 3) and two obstacles (obstacles 1 and 2) in the given region. Sub-regions 1 and 2 are more important and required to be re-covered with smaller coverage periods T 1 and T 2 , respectively. The rest of the feasible region is denoted as the sub-region 3 with coverage period T 3 .
Given the capabilities of the robots and the coverage period of each sub-region, the persistent coverage problem is translated into how to plan the robots’ paths with the coverage periods satisfied, using a minimum number of robots. There are two correlative questions in the persistent coverage problem: (1) How to plan a closed path that can effectively avoid geometrical obstacles; (2) How many robots are required at least to satisfy the coverage period constraints?
In this paper, we first consider the path planning for complete coverage in the region. Due to the complexity caused by the obstacles, the path planning problem is decomposed into SDP and TSP. Then, partition the path into several segments considering the sub-regions with different task importance and the robots with optimum quantity. In order to solve the problem efficiently, we divide the solution strategy into three steps. Firstly, the feasible region R f is covered completely using the virtual sensors with sensing radius r v . The purpose of SDP research is to deploy the sensors in the region to satisfy coverage requirements and ensure minimum cost [36,37,38,39,40,41,42]. Sensor deployment in the feasible region can be performed in several stages, according to the coverage periods of sub-regions from small to large. The sub-region with the smallest coverage period is preferentially deployed. Then the sub-region with the larger coverage period is deployed until all the sub-regions are completely covered. Secondly, taking the positions of the deployed sensors as the waypoints, the TSP is solved to obtain the closed path which connects all the sensors. The feasible region can be covered completely if a robot circumnavigates the closed path once. Thus, we call the closed path ‘the frame’. At last, in consideration of the coverage period constraints and the optimum quantity of robots, the frame is partitioned into several segments with the aim of minimizing the number of the segments. On the basis of each partitioned segment, the closed route is generated for each robot. Furthermore, each robot is assigned one closed route to circumnavigate in order to achieve persistent coverage of the feasible region.
The purpose of this paper is to develop a new combinatorial approach for multi-robot persistent coverage, which aims to cover mission domains with different task periods while guaranteeing both the obstacle avoidance and the optimum number of robots. In this paper, the improved CCPSO2, modified GA, and PSO are applied to design the combinatorial algorithm.

4. Combinatorial Approach for Multi-Robot Persistent Coverage

4.1. Traditional Cooperative Persistent Coverage

Multi-robot cooperative coverage can effectively improve mission efficiency in the task of persistent coverage. In a relatively simple environment, in order to ensure complete coverage of the area, the geometry-based approach is often used to search the area. Figure 3a illustrates an example of the parallel scanning coverage. After determining the number of robots, the routes of each robot are generated according to the geometric rules, in consideration of sensor’s detection width, turning radius, and entering direction. Under this scan strategy, the increase in the number of robots widens the overall scan radius, which reduces the search period and improves coverage efficiency. Sequential scanning coverage is shown in Figure 3b. The method first obtains the path of a single robot persistent coverage. Then each robot moves on the planned path sequentially. Robots are evenly distributed on the route at a certain interval, which reduces the coverage period and achieves a better coverage. The geometry-based approach is a common strategy for multi-robot coverage. However, this approach is only suitable for the regular task area with no obstacles. It cannot effectively address persistent coverage issues in complex task environments with target probabilities and obstacles.
Area decomposition technique is another strategy for multi-robot persistent coverage. The approach first divides the mission area into several sub-regions, and then the robots are tasked to re-cover the respective sub-regions. The literature [43] shows a cooperative search using multiple unmanned air vehicles (UAV). The algorithm divides mission area into several sub-regions in terms of the UAVs’ initial positions and the percent of search area of each UAV. Then each UAV searches respective sub-region and selects the appropriate direction to reduce the number of turns. The planning result of Ref. [43] is illustrated in Figure 3c. The advantage of area decomposition is that the straight part of the coverage route is longer, which can reduce the number of turns and boost the coverage efficiency. However, it is necessary to consider the influence of obstacles on the area division when the mission environment becomes more complicated. At this time, it is extremely difficult to divide the region according to geometric rules. In addition, methods based on area decomposition neglect the sub-regions in the mission area, which may have different importance and need to be re-covered with different coverage periods.
In summary, current methods for multi-robot persistent coverage mainly have the following defects:
Problem 1. They have failed to address cooperative persistent coverage effectively in complex mission environments with obstacles.
Problem 2. Previous works neglect the coverage period of each sub-region in the mission area. Some sub-regions of more importance may be re-covered with different coverage periods.
Problem 3. Current methods do not consider how to divide the task region and assign the robots, in order to improve coverage efficiency.
Based on the above facts, the combinatorial method proposed in this paper focuses on the multi-robot persistent coverage with obstacles and different coverage period constraints, using a minimum number of robots. Cooperative persistent coverage can be divided into the following three steps to deal with: (1) sensor deployment in the task area; (2) path planning based on the TSP; (3) partition of closed path considering coverage period.

4.2. Sensor Deployment in The Task Area

The coverage region is a bordered area. Once the mission area is given, it can be divided into many rectangular cells whose side length l c is much smaller than the sensing radius r s . Let C f = { c 1 , c 1 , , c m } be the set of cells in the feasible region R f . As shown in Figure 4a, the task region is divided into rectangular cells of 50 × 50 and the side length of each cell satisfies l c r s .
The feasible region is covered completely using the virtual sensors with sensing radius r v , where r v = 2 r s . Suppose that S = { s 1 , s 2 , , s n } is the set of the sensors. Figure 5 illustrates an example of sensor deployment. The task area is covered by the virtual sensors. The blue line is a segment of the frame, namely the closed path connecting all the waypoints in the mission domains. The red closed route is generated on the basis of portioned segment and robot’s sensing range. The robot carrying detection sensor, with sensing radius r s , is tasked to track the red route. As depicted in Figure 9, one sensor covers two-part routes of the red closed route. Therefore, the radius of virtual sensor is twice the sensing radius of robot, that is r v = 2 r s .
The cell c i can be covered by the sensor s j if all the four vertices of the cell c i are within the sensing range of the sensor s j and are not blocked by any obstacle. The coverage situation of the sensors is shown in Figure 4b. Let e i = ( p ( s i ) , g i ) denote the element which embodies the basic deployment information of the sensor s i , where p ( s i ) is the position of the sensor s i , and g i is the validity flag. Assume that g i = 1 if the sensor s i is deployed, otherwise g i = 0 . Thus, the deployment vector [ e 1 , e 2 , e 3 , , e k ] could represent a deployment situation of the sensors, namely a feasible solution to SDP, where k is the maximum number of the available sensors.
Every point in the feasible region is supposed to be revisited periodically. Therefore, the feasible region should be covered completely in SDP. Fewer sensors and less overlap of cells could cause a shorter path, and hence improve the efficiency of persistent coverage task. Taking the objectives of the sensor deployment into account, the fitness function of the sensor deployment is defined as:
f s ( S ) = λ 1 × n b + λ 2 × n u + λ 3 × n s + λ 4 × n o
where S indicates a feasible solution to SDP; n b , n u , n s , and n o are the number of the sensors deployed in the obstacles, the number of the uncovered cells, the number of sensors deployed, and the number of the overlapped cells, respectively; λ 1 , λ 2 , λ 3 , and λ 4 represent the corresponding weighted factors, which satisfy λ 1 λ 2 λ 3 > λ 4 > 0 .
The fitness function is minimized based on the improved CCPSO2 algorithm to obtain the optimal deployment vector. The CCPSO2 is adopted due to its ability for solving large-scale optimization problems. Considering the properties of SDP, several heuristic operators are introduced to promote the performance of the normal CCPSO2. As depicted in Figure 6, Figure 6a shows the sensor deployment using improved CCPSO2 with several heuristic rules and Figure 6b illustrated the deployment situation using standard CCPSO2 with no heuristic rules. There are 99 sensors used in Figure 6a while a total of 103 sensors are used in Figure 6b. According to the cost curves for two cases in Figure 6c, it can be found that the introduction of heuristic rules can effectively improve the convergence speed of the CCPSO2. In addition, the heuristic operators can also improve the diversity of the particles, and hence improve the performance of the algorithm in solving SDP. Submitting (3) to (6), the pseudo-code for sensor deployment is listed in Algorithm 1.
Algorithm 1. Pseudo-code of improved cooperatively coevolving particle swarm optimization (CCPSO2) for sensor deployment.
Algorithm 1: Improved CCPSO2 for sensor deployment.
01:// Initialization: 26:  // Update particle by heuristic rules
02:Set task parameters.27:  if r a n d < p
03:Set parameters of improved CCPSO2.28:  Remove the sensor with closer distance via Deletion operator.
04:Randomly initialize K swarms, each with s sensors.29:  if the task area is covered completely
05:// Main loop:30:   Fuse and move sensor by Fusion and Movement operators.
06:Repeat each iteration31:  end
07: if f s ( y ^ ) has not been improved,32:  else
08: Choose value s from a predefined set randomly, contrast K ( K = n / s ).33:   Add and move sensor by Addition and Movement operators
09: end34:  end
10: // Update optimal position35:  end
11: for each swarm j 36:  // Update particle by CCPSO2 rules
12:for each particle i 37:  else
13:   P j . y i and P j . y ^ i are updated as (6).38:  if r a n d < q
14:end39:   The i th particle is updated as (2).
15:for each particle i 40:  end
16:   P j . y i is updated as (5).41:  else
17:end42:   The i th particle is updated as (3).
18: Compute fitness value of b ( j , P j . x i )
 and y i .
43:  end
19:if f s ( b ( j , P j . x i ) ) < f s ( y ^ i ) 44:  end
20:   b ( j , P j . x i ) = P j . y ^ i 45:end
21:end46: end
22: end47:end
23: // Update particles in each swarm48:// Results:
24: for each swarm j 49:Find the optimal solution as the sensor deployment situation.
25:for each particle i
In this paper, the sensors are deployed to cover the sub-region with the smallest coverage period first, then the sub-region with larger coverage period, and so on. As shown in Figure 2, there are three sub-regions in the task area. The task coverage period satisfies T 1 > T 2 > T 3 . This means that sub-region 1 is more important than sub-region 2, and sub-region 2 is more important than sub-region 3. Therefore, the order of sub-regions to be covered by the sensors is [sub-region 1, sub-region 2, and sub-region 3]. After determining the coverage order, each sub-region is sequentially covered according to Algorithm 1. The sub-regions that have been covered by the sensors in the former phases are seen as obstacles when deploying sensors over other sub-regions in the latter phase. It should be noted that the sensor deployment of each sub-region is optimized independently. In this way, it can reduce the complexity of the algorithm and speed up the convergence process, as well as facilitate partition of closed path in subsequent work.

4.3. Path Planning Based on Travelling Salesman Problem

Taking positions of deployed sensors as the waypoints, TSP is solved to obtain the frame of the path for persistent coverage. The feasible region can be covered completely if a robot circumnavigates the closed path once.
Let r n be the neighboring range and p ( s i ) be the position of the sensor s i . Taking waypoints as vertices, we define the proximity graph G = ( V , E ) , where V and E denote the vertices and edges. E is defined as E = { ( s i , s j ) V × V : p ( s i ) p ( s j ) r n , s i s j } , where p ( s i ) p ( s j ) is the Euclidean distance between the vertices s i and s j . A path that connects the vertices s 1 and s n is defined as a sequence of the distinct vertices s q i ( s 1 , s n ) = [ s 1 , s 2 , , s i , , s n ] , which satisfies ( s i , s i + 1 ) E , 1 i n 1 . The graph G is connected if there is a path between any two distinct vertices. If the feasible region is covered by the deployed sensors completely and the neighboring range r n is no smaller than twice the virtual sensor radius r v , that is r n 2 r v , the proximity graph G is connected [44]. A path that connects the sensors s i and s j is illustrated in Figure 7, where the neighboring range r n = 2 r s .
Let s r ( s i ) denote the sub-region in which the sensor s i is deployed. The length of the path s q i ( s 1 , s n ) is defined as:
l ( s q i ( s 1 , s n ) ) = i = 1 n 1 ( p ( s i ) p ( s i + 1 ) ) + i = 1 n 1 α I ( s r ( s i ) s r ( s i + 1 ) )
where p ( s i ) p ( s i + 1 ) is the Euclidean distance between the vertices s i and s i + 1 ; α > 0 is a weighted constant; Ι ( ) denotes the indicator function, which satisfies:
I ( s r ( s i ) s r ( s i + 1 ) ) = { 1 , s r ( s i ) s r ( s i + 1 ) 0 , s r ( s i ) = s r ( s i + 1 )
In order to reduce the connections between different sub-regions in the frame of the path, instead of the Euclidean distance, the distance between two sensors s 1 and s n is defined as:
d ( s 1 , s n ) = min s q i ( s 1 , s n ) ( l ( s q i ( s 1 , s n ) ) ) , s q i ( s 1 , s n ) S Q ( s 1 , s n )
where S Q ( s 1 , s n ) is the set of the paths that connect the sensors s 1 and s n .
In the task of cooperative persistent coverage, the path frame needs to be divided into several segments. What is more, fewer connections among different sub-regions would be beneficial to reduce the number of segments, i.e., the number of the robots. Therefore, in order to facilitate path segmentation in subsequent work, it is necessary to reduce connections among different sub-regions as much as possible. The frames obtained based on different distance definitions are presented in Figure 8. The Euclidean distance is used for path planning in Case 1. It can be seen that the frame spanned eight times between sub-region 1 and sub-region 2. In addition, the path frame is divided into eight segments by the boundaries. Among them, there are four segments in sub-region 1, and four segments in sub-region 2. While in Case 2, the distance between two sensors is defined by (14) for path planning. It is clear that the frame only crosses twice between sub-region 1 and sub-region 2. In the same time, the path is divided into two sections, each sub-region with a section. Obviously, the frame in Case 2, effectively reduces the connections in different sub-regions, and the planning result is more suitable for the path segmentation.
The shortest path that connects any two waypoints as well as its length is obtained based on the A-star algorithm. The evaluation function is in the form of:
f a ( M ) = g ( M ) + h ( M )
where g ( M ) refers to the actual cost function of the path that has passed, from the start point to the current point M ; h ( M ) indicates the heuristic function of the remaining path, from the current point M to the target point. g ( M ) can be formulated as:
g ( M ) = τ 1 f ( M 1 ) + τ 2 D c u r + τ 3 P o b s
where f ( M 1 ) is the cost value from the start point to the M 1 th point; D c u r denotes the distance between previous point M 1 and current point M ; τ 1 , τ 2 , and τ 3 are the weighting coefficients of each item. The heuristic function can be estimated by the following expression:
h ( M ) = τ 4 D r e s
where D r e s represents the distance from current point M to the target point; τ 4 is the weighting coefficient.
In this paper, modified GA is used to solve TSP on account of its inherent parallelism and global search capability. The fitness function can be defined by:
f t ( s q i ( s 1 , s n ) ) = 1 l ( s q i ( s 1 , s n ) ) + D ( s n , s 1 )
where s q i ( s 1 , s n ) refers to the i th feasible path; D ( s n , s 1 ) indicates the distance between the city s n and s 1 , which satisfies:
D ( s n , s 1 ) = p ( s n ) p ( s 1 ) + α I ( s r ( s n ) s r ( s 1 ) )
where p ( s n ) p ( s 1 ) is the Euclidean distance between the city s n and s 1 ; α > 0 is a weighted constant; Ι ( ) denotes the indicator function. Then, the TSP can be formulated by the modified GA as follows.
Algorithm 2. Pseudo-code of modified genetic algorithm (GA) to solve the travelling salesman problem (TSP).
Algorithm 2: Modified GA to solve TSP.
01:// Initialization: 13:switch k
02:Obtain sensor locations from the result of Algorithm 1.14:  case 1 No operation on t e m _ p o p ( 1 )
03:Set parameters of modified genetic algorithm.15:  case 2 Perform Mutation operation on
t e m _ p o p ( 2 )
04:Randomly initialize 4 × K populations.16:  case 3 Perform Evolutionary reversal
operation on t e m _ p o p ( 3 )
05:// Main loop:17:  case 4 Perform Slide operation on
t e m _ p o p ( 4 )
06:Repeat each generation18:end
07: Calculate individual fitness values for each population.19: end
08:Selection operation: Search the individual with the highest fitness value.20: Use t e m _ p o p to generate 4 × K new
populations.
09: Update optimal individual o p t _ p o p .21:end
10: // Generate new populations22:// Results:
11:for k = 1 : 4 23:Get the best path found by the algorithm.
12:   t e m _ p o p ( k ) = o p t _ p o p

4.4. Partition of Closed Path Considering Coverage Period

Given the frame obtained by solving the travelling salesman problem, the path for complete coverage can be obtained by circumnavigating the frame, as depicted in Figure 9a. The blue line is the frame of the closed path, which connects all the waypoints in the mission area. The red closed route is generated on the basis of the blue frame and robot’s sensing range. The robot carrying detection sensor with sensing radius r s circumnavigates the red route to achieve full coverage of the current region.
In order to satisfy the coverage period constraints, multiple robots may be required. Taking the coverage periods of the sub-regions into account, the frame is partitioned into several segments with the aim of minimizing the number of the segments. On the basis of each partitioned segment, the closed route is generated for each robot. Afterwards, each robot is assigned one closed route to circumnavigate in order to achieve persistent coverage of the feasible region. Assume that γ i refers to the normalized length between the sensor s i and sensor s i + 1 . It can be determined by the following expression:
γ i = d ( s i , s i + 1 ) D s u m , γ i [ 0 , 1 ]
where d ( s i , s i + 1 ) is the actual length of the i th segment; D s u m represents the length of the frame of the closed path. Total path length D s u m can be given by:
D s u m = i = 1 n d ( s i , s i + 1 )
where n is the number of sensors deployed; the sensor s n + 1 refers to the sensor s 1 , which satisfies d ( s n , s n + 1 ) = d ( s n , s 1 ) .
Let the frame of the closed path be denoted as a closed curve. The curve equation can be expressed as r ( ϑ ) : [ 0 , 1 ] 2 ,   r ( 0 ) = r ( 1 ) , where ϑ is the normalized length of the curve. r ( 0 ) denotes the initial point of the curve, which is the location of sensor s 1 . Simultaneously, r ( 0 ) is also the initial point of curve segmentation. Similarly, r ( 1 ) is the end point of the curve. Since the curve is closed, there is r ( 0 ) = r ( 1 ) . It should be noted that the curve equation r ( ϑ ) is a function of the normalized length ϑ .
Suppose that the curve is partitioned into m segments by [ θ 1 , θ 2 , , θ m ] , where θ 1 < < θ m . Param θ i represents the normalized length between the initial point r ( 0 ) and the termination point r ( θ i ) of the i th segment, which is defined as:
θ i = k = 1 K γ k   ,   1 k K ,   1 < K n
where γ k is the normalized length between the sensor s k and sensor s k + 1 ; K refers to the serial number of the last sensor contained in the i th segment; n is the number of sensors.
Let r i ( ϑ ) be the i th segment, which can be described as r i ( ϑ ) : ( θ i 1 , θ i ] 2 ,   1 i m , where θ i is the normalized length between the r ( 0 ) and the termination point r ( θ i ) of the current segment; r ( θ m ) refers to the end point r ( 1 ) of the curve; r ( θ 0 ) represents the initial point r ( 0 ) of the curve. It should be noted that the following formula is established r ( θ m ) = r ( 1 ) = r ( 0 ) = r ( θ 0 ) . Additionally, r ( θ i ) and r i ( θ i ) are the same point, which satisfies r i ( θ i ) = r ( θ i ) = p ( s K ) , where p ( s K ) denotes the position of the last sensor in the i th segment.
Therefore, the problem of frame partition is turned into finding the optimal termination point r ( θ i ) for each segment according to the coverage period constrains. The point r ( θ i ) also represents the best location p ( s K ) of the last sensor s K contained in each segment. Figure 9b illustrates an example of path partition. The closed path is divided into four segments: r 1 ( ϑ ) , r 2 ( ϑ ) , r 3 ( ϑ ) , and r 4 ( ϑ ) . There are eighteen sensors in the closed path. Among them, segment 1 contains four sensors from s 2 to s 5 ; segment 2 involves four sensors from s 6 to s 9 ; segment 3 contains five sensors from s 10 to s 14 ; segment 4 includes five sensors from s 15 to s 18 .
Let T c ( s j ) be the coverage period of the sub-region where the sensor s j is deployed. Let S i be the set of the sensors which are deployed on the segment r i ( ϑ ) , where ϑ satisfies ϑ ( θ i , θ i + 1 ] . The coverage period of the i th segment r i ( ϑ ) can be written in the equivalent form as follows:
T i c = min s j S i ( T c ( s j ) )
Assume R c ( r i ( ϑ ) ) is the closed curve generated by the segment r i ( ϑ ) based on computational geometry. R c ( r i ( ϑ ) ) also represents the closed route assigned to each robot. As shown in Figure 10, red line refers to the closed route generated by the blue segment r i ( ϑ ) . The width of the closed route is twice the sensing radius of each robot, that is 2 r s . When the obstacle blocks the closed route, the method will re-adjust the closed route according to the threat range of the obstacle.
The purpose of the frame partition is to minimize the number of robots performing tasks, while meeting coverage period constraints of different sub-regions. Consequently, the objective of the frame partition problem can be described as:
min m
subject to:
T i a < T i c ,   i { 1 , 2 , , m }
where T i a is the time required for a robot to circumnavigate the closed route R c ( r i ( ϑ ) ) once. T i a can be obtained by the length of the closed path and robot’s velocity. It is given in the following expression as:
T i a = L ( R c ( r i ( ϑ ) ) ) V , ϑ ( θ i 1 , θ i ]
where L ( R c ( r i ( ϑ ) ) ) denotes the length of the closed route R c ( r i ( ϑ ) ) ; V is the velocity of robot. It is assumed that the robots move at a constant speed for simplicity.
The frame partition problem is solved based on the PSO due to its flexibility and global optimization capability [45]. The update of velocity and position are determined by:
{ v i ( t + 1 ) = ω ( t ) v i ( t ) + c 1 r 1 ( t ) ( y i ( t ) x i ( t ) ) + c 2 r 2 ( t ) ( y ^ ( t ) x i ( t ) ) x i ( t + 1 ) = x i ( t ) + v i ( t + 1 )
where v i ( t ) and x i ( t ) represent the velocity and position of the i th particle respectively; y i ( t ) is the local best position for the i th particle; y i ( t ) denotes the global optimal position of particles in the swarm; ω ( t ) is the inertial weight; c 1 and c 2 are acceleration constants; r 1 ( t ) and r 2 ( t ) refer to the random numbers, which satisfy r 1 ( t ) [ 0 , 1 ] , r 2 ( t ) [ 0 , 1 ] .
In the path partition algorithm, actual coverage time T i a , coverage period constraint T i c and the number of segments N s e g are the main considerations for the frame partition of closed path. Thus, the fitness function can be defined as:
f p ( χ ) = ξ 1 × T d i f + ξ 2 × N s e g + ξ 3 × T e r r
where χ is a feasible solution to the frame partition; T d i f indicates the time difference between the actual coverage time T i a and coverage period constraint T i c , which satisfies T c o n = T i a T i c + T m ; T e r r refers to the time offset between T i a and T i c , which satisfies T e r r = T i c T i a T m ; ξ 1 , ξ 2 , and ξ 3 are the weighting coefficients of each item. Constant T m represents the time margin, which can adjust the time offset to meet the coverage period requirements. Feasible solution χ can be expressed as χ = { r ( θ 1 ) , r ( θ 2 ) , , r ( θ m ) } , where r ( θ i ) is the termination point of the i th segment; m is the number of segments. In the path partition algorithm, the PSO optimizes a set of locations, which are the positions of the last sensor contained in each segment. In other words, the algorithm uses the feasible solution χ to characterize the position x i ( t ) in the PSO. In summary, the algorithm can be described as follows.
Algorithm 3. Pseudo-code of particle swarm optimization (PSO) for path partition.
Algorithm 3: Modified GA to solve TSP.
01:// Initialization: 15:if f p ( y i ( t ) ) < f p ( y ^ ( t ) )
02:Obtain the closed path from the result of Algorithm 2.16:   y ^ ( t ) = y i ( t )
03:Set parameters of PSO.17:end
04:Randomly initialize K swarms, each with M particles.18:end
05:// Main loop:19:Obtain the optimal solution, as well as determine the number of segments and calculate the starting and ending position of each segment.
06:Repeat each iteration
07: Compute inertial weight ω ( t ) .
08:for each particle i
09:  The i th particle is updated as (24).20:Generate the closed route for each robot on the basis of portioned segment and robot’s sensing range using geometry method.
10:  Calculate fitness value of each particle f p ( x i ( t ) ) .
11:  if f p ( x i ( t ) ) < f p ( y i ( t ) ) 21:// Results:
12:   y i ( t ) = x i ( t ) 22:Get the closed route for each robot’s persistent coverage.
13:  end
14:end

4.5. The Framework of Combinatorial Method

The combinatorial method proposed in this paper, is mainly composed of the above three algorithms, namely Algorithm 1, Algorithm 2, and Algorithm 3. As depicted in Figure 11, the framework of combinatorial approach is proposed for multi-robot persistent coverage.
The main principle is summarized as follows. Initially, set task parameters for persistent coverage, including coverage domains, sub-region size, obstacles’ location, and so on. Then, Algorithm 1 is used to sequentially cover the sub-regions using virtual sensors, in order of mission importance. Extract the locations of each sensor, when the entire task area is completely covered and deployment cost is minimal. Furthermore, taking the positions of the deployed sensors as the waypoints, Algorithm 2 solves the TSP to obtain the frame of the closed path which connects all the sensors. Additionally, in consideration of coverage period constraints and the optimum quantity of robots, the frame is partitioned into several segments using Algorithm 3. Finally, generate the closed route for each robot on the basis of portioned segment and robot’s sensing range using geometry method. Therefore, each robot can circumnavigate one closed route to cover mission domains completely and persistently. Figure 12 further illustrates the solution process of the combinatorial method for multi-robot persistent coverage.

5. Numerical Results

In view of the facts that previous works neglected regarding the coverage period constraints in different sub-regions and the number of robots used for persistent coverage task, this paper proposes the above combined method for cooperative multi-robot persistent coverage. In this section, the numerical results are presented to demonstrate the proposed approach. Simulation is implemented in Matlab. All algorithms are written by ourselves and we do not use any toolbox.

5.1. Multi-robot Persistent Coverage

The mission area is assumed to be a square with side length 120 m . There are two rectangular obstacles and two sub-regions with smaller coverage periods in the region of interest, as depicted in Figure 2. The coverage period constraints for each sub-region are shown in Table 1. Suppose that the velocity of each robot is a constant value of 20 m / s . Table 2, Table 3, and Table 4 list the parameters in the combinatorial scheme for cooperative persistent coverage.
Figure 13 illustrates the results of the path planning for multi-robot persistent coverage, in allusion to the task area situation shown in Figure 2. It can be found that the proposed method can achieve persistent coverage for the mission area using a minimum number of robots, while avoiding obstacles in complex environments. Table 5 lists the coverage periods of each partition and actual time required to circumnavigate the closed route in Figure 13.
As shown in Figure 13a, the mission area is completely covered by 96 virtual sensors, whose sensing radius is 10. Among them, there are 10 sensors in the sub-region 1, 15 sensors in the sub-region 2, and 71 sensors in the sub-region 3. Figure 13b shows the evolution of the fitness function of the sensor deployment. The optimal cost of its initial swarm is 5743. At last, the fitness value stabilized at 3600 after the 139 iterations. The path planning result for 96 waypoints is illustrated in Figure 13c. If a robot circumnavigates the closed path once, the task area can be covered completely. The history of closed path length is presented in Figure 13d. The closed path length tends to be stable after the 1722 generation, reaching the minimum of 61,025.99 by the 7113 generation. The value 61,025.99 is the minimum length calculated by (12), and the actual distance of the closed path is 1027.40. As depicted in Figure 13e, there are five closed routes generated for robots on the basis of portioned segment and robot’s sensing range. Further, each closed route is assigned to one robot. It can be found that each robot can track its respective closed route to cover the task area completely and persistently. Figure 13f illustrates the changing process of cost function defined by (28). The path partition cost reaches a minimum of 5709.23 after the update of 168th iteration.

5.2. Simulation Results Under Different Coverage Periods

To justify the effectiveness of the proposed combinatorial scheme, this part presents some simulation results with different coverage period constraints. As depicted in Figure 14, there are six simulation results of the path planning for multi-robot persistent coverage, under different coverage period constraints. The simulation parameters used in Figure 14 are the same as in Section 5.1. Table 6 lists the coverage period T i c and actual time T i a required for each robot to circumnavigate its own closed route in allusion to different coverage period constraints. It can be found from the simulation results that the actual coverage time used of each robot satisfies the requirements of the coverage period constraints. In addition, the combined method can adaptively adjust the number of closed routes according to the coverage period constraints. Therefore, the approach can achieve optimization of the number of robots used.
There are five closed routes in Figure 14a. It is found from the Case 1 in Table 6 that each generated closed route meets the requirements of the coverage period constraints, namely T i a < T i c . As shown in Figure 13, it takes about 37.50 s for two robots to circumnavigate the closed routes in sub-region 3. Similarly, it takes 18.81 s for one robot to circumnavigate the closed routes in sub-region 2. If coverage period constraints are changed to the Case 2, the simulation result is shown in Figure 14b. In such case, the approach may generate one closed route for sub-region 2 according to the above situation. However, if this is done, the combined method will generate four closed routes for sub-region 3, because coverage period constraints of sub-region 3 in Case 2 do not satisfy the actual coverage time of sub-region 3 in Figure 13. As a result, the total routes will become six. In contrast, the technique increases the number of routes in sub-region 2 to satisfy the coverage period constraints of the task area. In this way, the total routes will become five as in Case 2. Obviously, the number of routes in Figure 14b is one less. It can be found that the combinatorial approach is able to allocate an optimal number of robots to perform persistent coverage. Figure 14c–e show the planning results for persistent coverage under corresponding coverage period constraints. It can be easily found from Figure 14e and Table 6 that the actual coverage time from the 8th route to 11th route in Case 6 is slightly higher than the coverage period constraints. The reason is that the closed routes of other regions cannot compensate for the length of routes in sub-region 3, under the premise of satisfying their own coverage period constraints. In addition, if it is simply to meet the coverage period requirements, the cost of adding a closed route to sub-region 3 is much greater than the cost of Case 6. Therefore, the method sacrifices the coverage periods of some routes for the minimum coverage cost. In other words, the combined approach can tolerate the loss of coverage accuracy to obtain greater coverage gain.

5.3. Cooperative Coverage in More Complex Mission Environments

To demonstrate the versatility of the combined approach, the task area is reset using special or irregular graphics. As depicted in Figure 15, the mission area is a pentagon. There are three sub-regions and two obstacles in the task area. Sub-region 1 is a hexagonal area and sub-region 2 is a circular area. The rest of the feasible region is denoted as the sub-region 3. The coverage periods of each sub-region satisfy T 1 > T 2 > T 3 .
Assume that the velocity of each robot is a constant value of 10 m / s . Table 7 lists the parameters for Algorithm 1 in Figure 15. The parameters used for Algorithm 2 and 3 are the same as in Section 5.1. In allusion to the task situation shown in Figure 15, path planning results for cooperative persistent coverage are presented in Figure 16. Table 8 lists the period requirement and actual time required to circumnavigate the closed route in Figure 16.
As shown in Figure 16a, the feasible region is completely covered by 83 virtual sensors. Among them, there are 7 sensors in sub-region 1, 5 sensors in sub-region 2, and 71 sensors in sub-region 3. Figure 16b describes the evolution of the fitness function of the sensor deployment. The optimal cost of its original swarm is 7613. At last, the fitness value stabilized at 5321. The path planning result for 83 waypoints is shown in Figure 16c. The history of closed path length is presented in Figure 16d. The closed path length tends to be stable after the 5156 generation, reaching the minimum of 61,025.99. As depicted in Figure 16e, there are seven closed routes generated for robots on the basis of portioned segment and robot’s sensing range. Further, each closed route is allocated to one robot. Each robot can track its respective closed route to cover the task area completely and persistently. Figure 16f depicts the changing process of cost function defined by (28). The path partition cost reaches a minimum of 9343.48 after the update of the 102nd iteration. It can be found that the combinatorial method can be adapted to multi-robot persistent coverage in more complex mission environments, while guaranteeing both the obstacle avoidance and coverage period constraints.

6. Discussion

The main idea of the paper is to develop a new path planning strategy for multi-robot persistent coverage. In the meanwhile, the proposed scheme considers the coverage period constraints of different sub-regions in the mission domains, and can achieve the collaborative persistent coverage in more complex mission environments using an optimal number of the robots, while guaranteeing both obstacle avoidance and coverage period constraints.
On the basis of the theoretical analysis and numerical simulation, the solution strategy of proposed method can be divided into three steps. The first step is to cover the task area completely using the virtual sensors with minimum cost. According to the coverage periods of sub-regions from small to large, sensor deployment in the feasible region can be performed in several stages. The sub-region with the smallest coverage period is primarily deployed, and then the sub-region with the larger period is deployed until all the sub-regions are completely covered. After determining the coverage order, the sub-regions are sequentially covered by using Algorithm 1. The sensor deployment of each sub-region is optimized independently to reduce the complexity of the algorithm and speed up the convergence process. When the feasible area is completely covered, the second step is to obtain the frame by using Algorithm 2. Taking the position of the deployed sensor as the waypoint, a closed path connecting all waypoints can be acquired by solving the TSP. Moreover, the shortest path that connects any two waypoints is obtained based on the A-star algorithm. The proposed approach introduces the idea of sensor deployment to divides path planning issues into SDP and TSP in order to effectively cope with the planning puzzle caused by environmental obstacles. Simulation results show that the method can effectively improve the adaptability and robustness of the algorithm to the more complex environment. Given the closed frame, the third step is to generate the closed route for each robot by using Algorithm 3. Before generating the closed routes, it is first necessary to divide the path frame into several segments on the basis of the coverage period constraints. Actually, the purpose of the frame partition is to divide the frame into the least number of segments under the premise of satisfying the coverage period constraints. Afterwards, the computational geometry technique is utilized to generate the closed route for each robot on the basis of each partitioned segment. Finally, each closed route is allocated to one robot to circumnavigate periodically in order to achieve persistent coverage of the feasible region. Numerical results indicate that the combinatorial approach is able to allocate an optimal number of robots to perform persistent coverage and can adaptively adjust the number of robots used according to the coverage period constraints. In conclusion, the persistent coverage achieved in this paper has the following characteristics: (1) cooperative persistent coverage for multiple robots is achieved; (2) the planning puzzle caused by environmental obstacles is solved; (3) the coverage period constraints of different sub-regions are considered; (4) the number of robots used can be adaptively adjust according to the coverage period constraints; (5) the optimal number of robots is utilized to perform the persistent coverage task.
Similar works for multi-robot cooperative coverage can be found in [13,46]. Karapetyan et al. [13] present two approximation heuristics based on boustrophedon cellular decomposition for solving the multi-robot complete coverage. The first algorithm is a direct extension of the work of Xu et al. [10] for multi-robot systems. The solution process can be divided into three steps. The approach first partitions the task area into nonoverlapping cells. Then it solves the Chinese postman problem to find a single optimal route that covers these cells. Finally, the algorithm splits the resulting route between multiple robots using the k-postman approximation algorithm proposed by [47]. Different from the first method, the second scheme first divides the task area into approximately equal partitions between robots by using greedy approach, then it utilizes the coverage algorithm proposed by [10] to plan the coverage route for each sub-region. The algorithms proposed by Karapetyan et al. can commendably solve the problem of area decomposition and route planning for complex environments with obstacles, and provide a new solution for collaborative coverage problems in complex task areas. Compared with the combinatorial approach proposed in this paper, the works of Karapetyan et al. mainly have the following differences: (1) the methods proposed by [13] achieve the complete coverage of the given area, not a periodic persistent coverage; (2) the number of robots performing cooperative coverage is artificially determined and not adaptively adjusted according to task requirements; (3) the sub-regions with different task importance in the mission area are not considered, similarly the coverage period constraints of different sub-regions are neglected. Palacios-Gasόs et al. [46] develop an online algorithm for multi-robot persistent coverage in which each robot locally finds the optima paths and coverage actions to maintain the desired coverage level over the whole area. Firstly, the method divides the task area into several particular regions by using Voronoi diagrams, one for each robot, to avoid long shifts and conflicts with the other robots. Then, each robot creates a list of potential goals that includes the points of its region in which the coverage level can be improved the most. Next, the algorithm calculates the candidate paths to all potential goals from the list using the fast-marching method. Finally, the optimal path is selected to calculate the optimal coverage action and control the movement of the robot. The distributed algorithm proposed by [46] can actively select the coverage goals in a continuous environment and plan the optimal paths to such goals. Furthermore, the dynamic window approach for navigation is introduced to efficiently improve the algorithm competitive in terms of flexibility and robustness in changing environments. The work of Palacios-Gasόs et al. can implement multi-robot cooperative persistent coverage effectively and reach the requirement of the desired coverage level quickly. Similarly, the method proposed by [46] neglects the coverage period constraints of the sub-regions with different task importance in the mission area. Moreover, the number of robots used is also preset and not adaptively adjusted according to task requirements. However, Palacios-Gasόs et al. present a novel path planning for solving multi-robot persistent coverage in complex task environments.
The proposed method in this paper is an offline method for multi-robot persistent coverage and lacks experiment results. Palacios-Gasόs et al. present a new online algorithm for solving multi-robot persistent coverage in complex task areas. The future work will focus on the online path planning for cooperative persistent coverage with reference to the work of Palacios-Gasόs et al. and give the actual experiments for proving the effectiveness of the proposed approach. In addition, future research will be also centered on the planning of dynamic sub-regions, namely, the sub-region and coverage period are not fixed by the prior information. Furthermore, we will promote the proposed algorithm by using the more advanced machine learning algorithms [48,49] for multi-robot persistent coverage.

7. Conclusions

This paper presents a new combinatorial method for multi-robot persistent coverage in complex mission environments using an optimal number of robots.
(1) The proposed method achieves path planning for cooperative persistent coverage, in complex task areas. The path planning problem is decomposed into the sensor deployment problem and the travelling salesman problem. The planning technique, based on sensor deployment, effectively solves the obstacle avoidance in a complex environment.
(2) Sub-regions with different task importance in the mission area are considered in this paper. Moreover, the combined method can adaptively adjust the number of closed routes according to the coverage period constraints of different sub-regions, while also optimizing the number of robots performing the task.
According to the aforementioned description of the combinatorial approach, the planning results of the proposed method are highly effective for solving the cooperative persistent coverage. From the global perspective, the design approach takes the coverage period as the main basis and generates the closed routes for each robot in terms of the mission environment. Furthermore, each robot can circumnavigate one closed route to cover task domains completely and persistently.

Author Contributions

Conceptualization, R.Z. and G.S.; Methodology, G.S. and B.D.; Software, G.S. and B.D.; Validation, R.Z., Z.D. and Y.W.; Formal Analysis, G.S. and Z.D.; Investigation, G.S. and Z.D.; Resources, R.Z. and Y.W.; Data Curation, Z.D.; Writing—Original Draft Preparation, R.Z. and G.S.; Writing—Review and Editing, G.S. and B.D.; Visualization, G.S. and B.D.; Supervision, R.Z. and Z.D.; Project Administration, R.Z. and Z.D.; Funding Acquisition, R.Z. and Z.D.

Funding

This research was funded by the National Natural Science Foundation of China under Grant 61773031 and Grant 61573042.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Chen, S.; Wu, F.; Shen, L.; Chen, J.; Ramchurn, S.D. Decentralized patrolling under constraints in dynamic environments. IEEE Trans. Cybern. 2016, 46, 3364–3376. [Google Scholar] [CrossRef]
  2. Li, P.; Duan, H. A potential game approach to multiple UAV cooperative search and surveillance. Aerosp. Sci. Technol. 2017, 68, 403–415. [Google Scholar] [CrossRef]
  3. Masehian, E.; Jannati, M.; Hekmatfar, T. Cooperative mapping of unknown environments by multiple heterogeneous mobile robots with limited sensing. Robot. Autom. Syst. 2017, 87, 188–218. [Google Scholar] [CrossRef]
  4. Paull, L.; Seto, M.; Leonard, J.J.; Li, H. Probabilistic cooperative mobile robot area coverage and its application to autonomous seabed mapping. Int. J. Robot. Res. 2018, 37, 21–25. [Google Scholar] [CrossRef]
  5. Razi, P.; Sumantyo, J.T.S.; Perissin, D.; Kuze, H.; Chua, M.Y.; Panggabean, G.F. 3D land mapping and land deformation monitoring using persistent scatterer interferometry (PSI) ALOS PALSAR: validated by geodetic GPS and UAV. IEEE Access 2018, 6, 12395–12404. [Google Scholar] [CrossRef]
  6. Huang, L.; Qu, H.; Zou, L. Multi-type UAVs cooperative task allocation under resource constraints. IEEE Access 2018, 6, 17841–17850. [Google Scholar] [CrossRef]
  7. Portugal, D.; Rocha, R.H. Distributed multi-robot patrol: A scalable and fault-tolerant framework. Robot. Autom. Syst. 2013, 61, 1572–1587. [Google Scholar] [CrossRef] [Green Version]
  8. Nigam, N.; Bieniawski, S.; Kroo, I.; Vian, J. Control of multiple UAVs for persistent surveillance: algorithm and flight test results. IEEE Trans. Control Syst. Technol. 2012, 20, 1236–1251. [Google Scholar] [CrossRef]
  9. Peters, J.R.; Wang, S.J.; Surana, A.; Bullo, F. Cloud-supported coverage control for persistent surveillance missions. J. Dyn. Syst. Meas. Contr. 2017, 139, 1–12. [Google Scholar] [CrossRef]
  10. Xu, A.; Viriyasuthee, C.; Rekleitis, I. Efficient complete coverage of a known arbitrary environment with applications to aerial operations. Auton. Robots 2014, 36, 365–381. [Google Scholar] [CrossRef]
  11. Mansouri, S.S.; Kanellakis, C.; Georgoulas, G.; Kominiak, D.; Gustafsson, T.; Nikolakopoulos, G. 2D visual area coverage and path planning coupled with camera footprints. Control Eng. Pract. 2018, 75, 1–16. [Google Scholar] [CrossRef]
  12. Galceran, E.; Carreras, M. A survey on coverage path planning for robotics. Robot. Autom. Syst. 2013, 61, 1258–1276. [Google Scholar] [CrossRef] [Green Version]
  13. Karapetyan, N.; Benson, K.; McKinney, C.; Taslakian, P.; Rekleitis, I. Efficient multi-robot Coverage of a Known Environment. In Proceedings of the 2017 IEEE International Conference on Intelligent Robots and Systems, Vancouver, BC, Canada, 24–28 September 2017. [Google Scholar]
  14. Koenig, S.; Szymanski, B.; Liu, Y. Efficient and inefficient ant coverage methods. Ann. Math. Artif. Intell. 2001, 31, 41–77. [Google Scholar] [CrossRef]
  15. Votion, J.; Cao, Y. Diversity-based cooperative multivehicle path planning for risk management in costmap environments. IEEE Trans. Ind. Electron. 2019, 66, 6117–6127. [Google Scholar] [CrossRef]
  16. Ranjitha, T.D.; Guruprasad, K.R. Pseudo spanning tree-based complete and competitive robot coverage using virtual nodes. IFAC-Pap. Online 2016, 491, 185–200. [Google Scholar] [CrossRef]
  17. Elmaliach, Y.; Agmon, N.; Kaminka, G.A. Multi-robot area patrol under frequency constraints. Ann. Math. Artif. Intell. 2009, 57, 293–320. [Google Scholar] [CrossRef] [Green Version]
  18. Franco, C.; Vachtsevanos, G.; Tang, L. Multi-unmanned aerial vehicle coverage planner for area surveillance missions. In Proceedings of the AIAA Guidance, Navigation and Control Conference and Exhibit, Hilton Head, SC, USA, 20–23 August 2007. [Google Scholar]
  19. Franco, C.; Stipanović, D.M.; López-Nicolás, G.; Sagüés, C.; Llorente, S. Persistent coverage control for a team of agents with collision avoidance. Eur. J. Control 2015, 22, 30–45. [Google Scholar] [CrossRef]
  20. Erignac, C.A. An exhaustive swarming search strategy based on distributed pheromone maps. In Proceedings of the AIAA Infotech@Aerospace 2007 Conference and Exhibit, Rohnert Park, CA, USA, 7–10 May 2007. [Google Scholar]
  21. Lima, D.A.; Oliveira, M.B. A cellular automata ant memory model of foraging in a swarm of robots. Appl. Math. Model. 2017, 47, 551–572. [Google Scholar] [CrossRef]
  22. Liu, R.; Li, J.; Mu, C.; Jiao, L. A coevolutionary technique based on multi-swarm particle swarm optimization for dynamic multi-objective optimization. Eur. J. Oper. Res. 2017, 261, 1028–1051. [Google Scholar] [CrossRef]
  23. Tumer, T.; Agogino, A. Coordinating multi-rover systems: Evaluation functions for dynamic and noisy environments. In Proceedings of the 7th annual conference on Genetic and evolutionary computation, Washington, DC, USA, 25–29 June 2005. [Google Scholar]
  24. Hokayem, P.F.; Stipanovi´c, D.; Spong, M.W. On persistent coverage control. In Proceedings of the 46th IEEE Conference on Decision and Control, New Orleans, LA, USA, 12–14 December 2007. [Google Scholar]
  25. Cui, R.; Li, Y.; Yan, W. Mutual information-based multi-AUV path planning for scalar field sampling using multidimensional RRT*. IEEE Trans. Syst. Man Cybern. 2016, 46, 993–1003. [Google Scholar] [CrossRef]
  26. Atınç, G.M.; Stipanović, D.M.; Voulgaris, P.G. Supervised coverage control of multi-agent systems. Automatica 2014, 50, 2936–2942. [Google Scholar] [CrossRef]
  27. Song, C.; Liu, L.; Feng, G.; Wang, Y.; Gao, Q. Persistent awareness coverage control for mobile sensor networks. Automatica 2013, 49, 1867–1873. [Google Scholar] [CrossRef]
  28. Smith, S.L.; Rus, D. Multi-robot monitoring in dynamic environments with guaranteed currency of observations. In Proceedings of the 49th IEEE Conference on Decision and Control, Atlanta, GA, USA, 15–17 December 2010. [Google Scholar]
  29. Stump, E.; Michael, N. Multi-robot persistent surveillance planning as a vehicle routing problem. In Proceedings of the 2011 IEEE International Conference on Automation Science and Engineering, Trieste, Italy, 24–27 August 2011. [Google Scholar]
  30. Mansouri, S.S.; Kanellakis, C.; Fresk, E.; Kominiak, D.; Nikolakopoulos, G. Cooperative coverage path planning for visual inspection. Control Eng. Pract. 2017, 74, 118–131. [Google Scholar] [CrossRef]
  31. Volos, C.K.; Kyprianidis, I.M.; Stouboulos, I.N. Experimental investigation on coverage performance of a chaotic autonomous mobile robot. Robot. Autom. Syst. 2013, 61, 1314–1322. [Google Scholar] [CrossRef]
  32. Karatas, M. A multi-objective facility location problem in the presence of variable gradual coverage performance and cooperative cover. Eur. J. Oper. Res. 2017, 262, 1040–1051. [Google Scholar] [CrossRef]
  33. Ellefsen, K.O.; Lepikson, H.A.; Albiez, J.C. Multi-objective coverage path planning: Enabling automated inspection of complex, real-world structures. Appl. Soft Comput. 2017, 61, 264–282. [Google Scholar] [CrossRef]
  34. Wang, X.; Wang, S.; Ma, J.J. An improved co-evolutionary particle swarm optimization for wireless sensor networks with dynamic deployment. Sensors 2007, 7, 354–370. [Google Scholar] [CrossRef]
  35. Li, X.D.; Yao, X. Cooperatively coevolving particle swarms for large scale optimization. IEEE Trans. Evol. Comput. 2012, 16, 210–224. [Google Scholar]
  36. Wang, Y.C.; Tseng, Y.C. Distributed deployment schemes for mobile wireless sensor networks to ensure multilevel coverage. IEEE Trans. Parallel Distrib. Syst. 2008, 19, 1280–1294. [Google Scholar] [CrossRef]
  37. Chang, C.Y.; Chang, C.T.; Chen, Y.C.; Chang, H.R. Obstacle-resistant deployment algorithms for wireless sensor networks. IEEE Trans. Veh. Technol. 2009, 58, 2925–2941. [Google Scholar] [CrossRef]
  38. Seok, J.H.; Lee, J.Y.; Kim, W.; Lee, J.J. A bipopulation-based evolutionary algorithm for solving full area coverage problems. IEEE Sens. J. 2013, 13, 4796–4807. [Google Scholar] [CrossRef]
  39. Di, B.; Zhou, R.; Zhang, Y.; Che, J. Path planning for unmanned vehicle searching based on sensor deployment and travelling salesman problem. In Proceedings of the 2014 IEEE Chinese Guidance, Navigation and Control Conference, Yantai, China, 8–10 August 2014. [Google Scholar]
  40. Li, F.; Luo, J.; Xin, S.; He, Y. Autonomous deployment of wireless sensor networks for optimal coverage with directional sensing model. Comput. Netw. 2016, 108, 120–132. [Google Scholar] [CrossRef]
  41. AlKaraki, J.N.; Gawanmeh, A. The optimal deployment, coverage, and connectivity problems in wireless sensor networks: revisited. IEEE Access 2017, 5, 18051–18065. [Google Scholar] [CrossRef]
  42. Fang, W. Novel efficient deployment schemes for sensor coverage in mobile wireless sensor networks. Inf. Fusion 2018, 41, 25–38. [Google Scholar] [CrossRef]
  43. Maza, I.; Ollero, A. Multiple UAV cooperative searching operation using polygon area decomposition and efficient coverage algorithms. In Proceedings of the 7 th International Symposium on Distributed Autonomous Robotic Systems, Toulouse, France, 23–25 June 2007. [Google Scholar]
  44. Ghosh, A.; Das, S.K.; Lee, J.J. Coverage and connectivity issues in wireless sensor networks: A survey. Pervasive Mob. Comput. 2008, 4, 303–334. [Google Scholar] [CrossRef]
  45. Zhan, A.H.; Zhang, J.; Li, Y.; Shi, Y.H. Orthogonal learning particle swarm optimization. IEEE Trans. Evol. Comput. 2011, 15, 832–847. [Google Scholar] [CrossRef]
  46. Palacios-Gasόs, J.M.; Talebpour, Z.; Montijano, E.; Sagüés, C.; Martinoli, A. Optimal path planning and coverage control for multi-robot persistent coverage in environments with obstacles. In Proceedings of the 2017 International Conference on Robotics and Automation, Singapore, 29 May–3 June 2017. [Google Scholar]
  47. Frederickson, G.N.; Hecht, M.S.; Kim, C.E. Approximation algorithms for some routing problems. In Proceedings of the 17th Annual Symposium on Foundations of Computer Science, Houston, TX, USA, 25–27 October 1976. [Google Scholar]
  48. Castaño, F.; Beruvides, C.; Haber, R.E.; Artuñedo, A. Obstacle recognition based on machine learning for on-chip LiDAR sensors in a cyber-physical system. Sensors 2017, 17, 2109. [Google Scholar] [CrossRef] [PubMed]
  49. Castaño, F.; Beruvides, C.; Villalonga, A.; Haber, R.E. Self-tuning method for increased obstacle detection reliability based on internet of things LiDAR sensor models. Sensors 2018, 18, 1508. [Google Scholar] [CrossRef] [PubMed]
Figure 1. Schematic diagrams of three operations. (a) Mutation operation using randomly exchanging two genes of one chromosome; (b) Evolutionary reversal operation through re-sorting genes between two random gene positions; (c) Slide operation via rotating one gene position left between two random gene positions.
Figure 1. Schematic diagrams of three operations. (a) Mutation operation using randomly exchanging two genes of one chromosome; (b) Evolutionary reversal operation through re-sorting genes between two random gene positions; (c) Slide operation via rotating one gene position left between two random gene positions.
Sensors 19 01994 g001
Figure 2. Sub-regions and obstacles in the task area. The cyan area is sub-region 1. The green area is sub-region 2. The white area is sub-region 3. Gray areas refer to obstacles.
Figure 2. Sub-regions and obstacles in the task area. The cyan area is sub-region 1. The green area is sub-region 2. The white area is sub-region 3. Gray areas refer to obstacles.
Sensors 19 01994 g002
Figure 3. Three schematic diagrams of persistent coverage based on different methods. (a) An example of the parallel scanning coverage; (b) An example of the sequential scanning coverage; (c) An example of the area-decomposition based coverage.
Figure 3. Three schematic diagrams of persistent coverage based on different methods. (a) An example of the parallel scanning coverage; (b) An example of the sequential scanning coverage; (c) An example of the area-decomposition based coverage.
Sensors 19 01994 g003
Figure 4. (a) Discretization of coverage area. The task region is divided into rectangular cells of 50 × 50. Grey rectangles refer to the obstacles. (b) The coverage of the sensors in the presence of obstacles. White cells indicate that they have been covered by the virtual sensors. Green cells represent that they are uncovered by any virtual sensor.
Figure 4. (a) Discretization of coverage area. The task region is divided into rectangular cells of 50 × 50. Grey rectangles refer to the obstacles. (b) The coverage of the sensors in the presence of obstacles. White cells indicate that they have been covered by the virtual sensors. Green cells represent that they are uncovered by any virtual sensor.
Sensors 19 01994 g004
Figure 5. An example of sensor deployment. The radius of each robot is rs and the radius of the virtual sensor is rv. The shaded area represents the field that robots have scanned.
Figure 5. An example of sensor deployment. The radius of each robot is rs and the radius of the virtual sensor is rv. The shaded area represents the field that robots have scanned.
Sensors 19 01994 g005
Figure 6. (a) Sensor deployment using improved cooperatively coevolving particle swarm optimization (CCPSO2) with heuristic rules. (b) Sensor deployment using normal CCPSO2 with no heuristic rules. (c) Sensor deployment cost for two situations.
Figure 6. (a) Sensor deployment using improved cooperatively coevolving particle swarm optimization (CCPSO2) with heuristic rules. (b) Sensor deployment using normal CCPSO2 with no heuristic rules. (c) Sensor deployment cost for two situations.
Sensors 19 01994 g006
Figure 7. A path that connects the sensors si and sj. Black circle is the sensing range of virtual sensor. Black asterisk refers to the position of the sensor. Blue circle denotes the neighboring radius of the virtual sensor.
Figure 7. A path that connects the sensors si and sj. Black circle is the sensing range of virtual sensor. Black asterisk refers to the position of the sensor. Blue circle denotes the neighboring radius of the virtual sensor.
Sensors 19 01994 g007
Figure 8. Frame generated based on different distance definitions. Grey rectangles refer to obstacles. Green area indicates sub-region 1. White area is sub-region 2. (a) Using Euclidean distance. (b) Using distance defined by (14).
Figure 8. Frame generated based on different distance definitions. Grey rectangles refer to obstacles. Green area indicates sub-region 1. White area is sub-region 2. (a) Using Euclidean distance. (b) Using distance defined by (14).
Sensors 19 01994 g008
Figure 9. (a) The schematic diagram of the closed route for complete coverage generated by the frame. The radius of each robot is rs and the radius of virtual sensor is rv, which satisfies rv = 2rs. The shaded area is the field that robots have scanned. (b) An example of path partition. Segment 1 is inside the green box. Segment 2 is inside the cyan box. Segment 3 is inside the red box. Segment 4 is inside the black box. Termination point of each segment is inside the purple circle.
Figure 9. (a) The schematic diagram of the closed route for complete coverage generated by the frame. The radius of each robot is rs and the radius of virtual sensor is rv, which satisfies rv = 2rs. The shaded area is the field that robots have scanned. (b) An example of path partition. Segment 1 is inside the green box. Segment 2 is inside the cyan box. Segment 3 is inside the red box. Segment 4 is inside the black box. Termination point of each segment is inside the purple circle.
Sensors 19 01994 g009
Figure 10. An example of the closed route generated by the segment. Green area indicates sub-region. Grey rectangle is obstacle. The shaded area is the field that robots have scanned. The termination point of each segment is inside the purple circle.
Figure 10. An example of the closed route generated by the segment. Green area indicates sub-region. Grey rectangle is obstacle. The shaded area is the field that robots have scanned. The termination point of each segment is inside the purple circle.
Sensors 19 01994 g010
Figure 11. The flow chart of the combinatorial method proposed for cooperative persistent coverage.
Figure 11. The flow chart of the combinatorial method proposed for cooperative persistent coverage.
Sensors 19 01994 g011
Figure 12. The solution process of the combinatorial method for multi-robot persistent coverage. The cyan area is sub-region 1. The green area is sub-region 2. The white area is sub-region 3. Gray areas refer to obstacles. The asterisk denotes the position of the sensor. The blue dotted line is the frame. Solid curve represents the closed route for each robot.
Figure 12. The solution process of the combinatorial method for multi-robot persistent coverage. The cyan area is sub-region 1. The green area is sub-region 2. The white area is sub-region 3. Gray areas refer to obstacles. The asterisk denotes the position of the sensor. The blue dotted line is the frame. Solid curve represents the closed route for each robot.
Sensors 19 01994 g012
Figure 13. Simulation results under parameters in Table 2, Table 3 and Table 4. (a) Sensor deployment for complete coverage; (b) Sensor deployment cost; (c) Path planning result; (d) The changing process of path length; (e) The closed route for each robot; (f) Frame partition cost.
Figure 13. Simulation results under parameters in Table 2, Table 3 and Table 4. (a) Sensor deployment for complete coverage; (b) Sensor deployment cost; (c) Path planning result; (d) The changing process of path length; (e) The closed route for each robot; (f) Frame partition cost.
Sensors 19 01994 g013
Figure 14. Simulation results under different coverage period constraints.
Figure 14. Simulation results under different coverage period constraints.
Sensors 19 01994 g014
Figure 15. The distribution of the task environment.
Figure 15. The distribution of the task environment.
Sensors 19 01994 g015
Figure 16. Simulation results under parameters in Table 7 and Table 8. (a) Sensor deployment for complete coverage; (b) Sensor deployment cost; (c) Path planning result; (d) The changing process of path length; (e) The closed route for each robot; (f) Frame partition cost.
Figure 16. Simulation results under parameters in Table 7 and Table 8. (a) Sensor deployment for complete coverage; (b) Sensor deployment cost; (c) Path planning result; (d) The changing process of path length; (e) The closed route for each robot; (f) Frame partition cost.
Sensors 19 01994 g016
Table 1. Coverage periods for each sub-region.
Table 1. Coverage periods for each sub-region.
Sub-regionCoverage Periods T i c ( s ) Sub-regionCoverage Periods T i c ( s )
18.00340.00
220.00
Table 2. Parameters of Algorithm 1 in Figure 13.
Table 2. Parameters of Algorithm 1 in Figure 13.
ParameterValueParameterValue
The number of iterations N I T E = 150 Min speed of particle update V M I N = 0.1
The number of swarms N S W A = 30 Max inertial weight A M A X = 0.9
Particle number of each swarm N P A R = 50 Min inertial weight A M I N = 0.4
The number of max sensors S M A X = 160 Acceleration constant c 1 c 1 = 2
Max speed of particle update V M A X = 0.1 Acceleration constant c 2 c 2 = 2
Table 3. Parameters of Algorithm 2 in Figure 13.
Table 3. Parameters of Algorithm 2 in Figure 13.
ParameterValueParameterValue
The number of generations N G E N = 10000 Population size N P O P = 600
The number of points N P O I = 96
Table 4. Parameters of Algorithm 3 in Figure 13.
Table 4. Parameters of Algorithm 3 in Figure 13.
ParameterValueParameterValue
The number of iterations N I T E = 50 Max inertial weight A M A X = 0.9
The number of swarms N S W A = 500 Min inertial weight A M I N = 0.4
Particle number of each swarm N P A R = 1000 Acceleration constant c 1 c 1 = 2
Max speed of particle update V M A X = 0.1 Acceleration constant c 2 c 2 = 2
Min speed of particle update V M I N = 0.1
Table 5. Coverage periods and actual coverage time for each route.
Table 5. Coverage periods and actual coverage time for each route.
RouteCoverage Periods T i c ( s ) Actual Coverage Time T i a ( s )
Path 140.0036.37
Path 220.0018.81
Path 340.0037.29
Path 48.006.75
Path 58.007.19
Table 6. Coverage periods and actual coverage time for each route.
Table 6. Coverage periods and actual coverage time for each route.
ResultRouteSub-region T i c ( s ) T i a ( s ) ResultRouteSub-region T i c ( s ) T i a ( s )
Case 1Path 1210.009.33Case 2Path 1220.0019.47
Path 2210.008.68Path 2220.0019.41
Path 3340.0038.39Path 3330.0028.77
Path 4112.0010.95Path 4112.0010.95
Path 5340.0038.22Path 5330.0029.03
Case 3Path 127.006.30Case 4Path 1210.009.33
Path 227.005.74Path 2210.008.74
Path 327.005.91Path 3210.006.35
Path 427.005.57Path 4220.0018.48
Path 5340.0036.22Path 5320.0018.83
Path 6112.0010.95Path 6112.0010.95
Path 7340.0038.22Path 7320.0018.92
Path 8320.0018.65
Case 5Path 1210.006.94Case 6Path 1210.009.53
Path 2210.008.82Path 2210.009.75
Path 3210.009.34Path 3210.008.97
Path 4320.0018.28Path 4310.009.05
Path 5320.0019.27Path 5310.009.41
Path 618.007.24Path 6310.009.05
Path 718.007.40Path 7112.0010.95
Path 8320.0017.20Path 8310.0011.64
Path 9320.0018.52Path 9310.0010.53
Path 10310.0010.90
Path 11310.0010.41
Table 7. Parameters of Algorithm 1 in Figure 16.
Table 7. Parameters of Algorithm 1 in Figure 16.
ParameterValueParameterValue
The number of iterations N I T E = 200 Min speed of particle update V M I N = 0.1
The number of swarms N S W A = 40 Max inertial weight A M A X = 0.9
Particle number of each swarm N P A R = 60 Min inertial weight A M I N = 0.4
The number of max sensors S M A X = 210 Acceleration constant c 1 c 1 = 2
Max speed of particle update V M A X = 0.1 Acceleration constant c 2 c 2 = 2
Table 8. Coverage periods and actual coverage time for each route.
Table 8. Coverage periods and actual coverage time for each route.
Route T i c ( s ) T i a ( s ) Route T i c ( s ) T i a ( s )
Path 145.0044.12Path 510.007.86
Path 245.0037.65Path 610.008.00
Path 312.0010.12Path 745.0039.14
Path 445.0039.17

Share and Cite

MDPI and ACS Style

Sun, G.; Zhou, R.; Di, B.; Dong, Z.; Wang, Y. A Novel Cooperative Path Planning for Multi-robot Persistent Coverage with Obstacles and Coverage Period Constraints. Sensors 2019, 19, 1994. https://doi.org/10.3390/s19091994

AMA Style

Sun G, Zhou R, Di B, Dong Z, Wang Y. A Novel Cooperative Path Planning for Multi-robot Persistent Coverage with Obstacles and Coverage Period Constraints. Sensors. 2019; 19(9):1994. https://doi.org/10.3390/s19091994

Chicago/Turabian Style

Sun, Guibin, Rui Zhou, Bin Di, Zhuoning Dong, and Yingxun Wang. 2019. "A Novel Cooperative Path Planning for Multi-robot Persistent Coverage with Obstacles and Coverage Period Constraints" Sensors 19, no. 9: 1994. https://doi.org/10.3390/s19091994

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop