1. Introduction
Swarm robots are composed of simple single agents, which have certain autonomous, local communication, and perception abilities. By imposing some simple rules, the entire system exhibits complex group behavior characteristics, such as self-organization and cooperation [
1]. Swarm robots are inspired by many biological species in nature that exhibit collective behaviors [
2,
3]. Technological advances and cost reductions in communication, computing, control, and sensing devices for intelligence, as well as the advantages of multi-intelligent body systems over single intelligence, collaborative control of multi-agent systems, and mobile sensor networks, have attracted considerable attention in recent years. Particularly, a group of agents is deployed to desired locations according to different task scenarios and requirements. The execution of different tasks in the same environment is the principal application scenario in collaborative multi-agent systems. However, based on different scenarios, these distributed tasks may vary. Some examples of distributed tasks include forest fire monitoring and detection [
4,
5,
6], environmental monitoring [
7,
8], pollution source monitoring and control [
9,
10], and environmental coverage [
11,
12]. However, multi-robot systems are also robust and scalable for area coverage.
Ref. [
13] proposed an overlay control law that moves each mobile sensor to the centroid of its Voronoi cell. Ref. [
14] solved the problem of distribution neutralization during the two-dimensional diffusion of toxic substances by a distributed agent control method, where the location of the agent is optimized by centroidal Voronoi tessellation (CVT). Cortes et al. [
15] introduced distributed control laws using non-smooth analysis and computational geometry, which have applications in network robot coordination problems. Thomas Chevet [
16] drove a multi-intelligent system into a static Chebyshev structure by proposing a new chance-constrained model predictive control algorithm-based on-state estimation, where each agent is located at the Chebyshev center of its Voronoi cell, and the noise problem in the system model is effectively solved. Ref. [
17] proposed a distributed control scheme for the coverage of Voronoi-based discrete-time multi-agent dynamic systems in a multi-dimensional static convex polyhedron environment. By using a local control law to steer each robot toward the Chebyshev center of its associated time-varying Voronoi neighborhood, the mechanism by which subsets of robots agree on intra-neighbor distances was revealed. Distributed coordination algorithms for increasing the coverage sensing range of non-identical mobile sensor networks are provided in Refs. [
18,
19]. In [
20], an algorithm was developed to maximize the contribution of each mobile robot to the overall coverage by adding several mobile sensors to a static sensor network and positioning them appropriately in the required field.
Although the abovementioned studies and related contributions can enhance the effective application of multi-robots for environmental coverage, they are all based on some hypothetical premises. These include the assumption that the robots can communicate mutually, they operate in an obstacle-free environment, and factors such as localization errors and robots’ sizes in real systems are negligible. For covering problems in non-convex environments, Carlos [
21] and Xiaotian [
22] mapped a class of connected regions in non-convex environments to convex regions via a diffeomorphism. By combining with the Lloyd algorithm, the coverage problem in a simple non-convex environment can effectively be solved. However, this method has limitations in covering problems with multiple obstacles or complex non-convex environments. Nair [
23] replaced the traditional Euclidean distance with the geodesic distance. However, the collision avoidance performance of this method in complex environments is not reflected. Moreover, obstacles have significant implications on the robot’s trajectory. Thus, the algorithm convergence is slow. Finally, because the calculation of the geodesic distance is expensive, the robot can fall to extreme points because of obstacles. To address robot collision problems that may occur within the geodesic distance, Andreas [
24] combined the classical Lloyd algorithm with the local path planning TangentBug to calculate robotic motion near obstacles and corners based on the definition of geodesic distance. In addition, the concept of a virtual generator is proposed to address centroid unreachability problems to map the centroids of accessible regions. The convergence and optimality of the algorithm are validated. Lu [
25] and Mahboubi [
26] proposed a visibility-based definition of a Voronoi diagram based on the decay of sensor capabilities due to boundaries or obstacles. This definition extends the continuous-time Lloyd method for convex domains and modifies the conditions related to the visibility of Voronoi boundaries. Lu used the projection of a centroid to solve problems wherein centroids are not located in Voronoi cells and introduced smoothness constraints during deployment of robots to avoid accidents at sharp turns. As can be observed in the aforementioned contributions on non-convexity, algorithms with simple CVTs, CVTs and the combination of a differential homogeneous embryo, geodesic lines, and artificial potential fields cannot be easily adapted to complex environments but can only adapt to the cluster controls in simpler environments with poor stabilities. Moreover, a greater computational effort is required to adapt algorithms containing geodesic lines and differential homogeneous embryos to non-convex regions.
Robots with different capabilities are applied in search and rescue, patrol, surveillance, and other fields. The control problem of multi-robots with different capabilities has been an important topic in robot research. In addition, the uncertainty of the sensors used in robot positioning also increases the concern about the problem of imprecise positioning. Alyssa [
27] aimed to adapt a group of robots to study the performance changes among different robots while enabling them to complete collaborative tasks online. He proposed a distributed approach to the online learning of the relative performance changes among robots and automatically compensated the learning approach by assigning smaller environment shares to weaker robots and larger environment shares to stronger robots. Based on this, the algorithm proposed by Mert [
28] uses an energy-saving coverage optimal control scheme and a Hopfield neural network to create a power Voronoi diagram. The weights of each agent are calculated according to the different driver performances to independently achieve the optimal coverage configuration. Sotitis [
29,
30] aimed at the area coverage problem of mobile robot networks with inaccurate agent positioning. The convex space was divided according to the guaranteed Voronoi (GV) principle, and the responsibility area of each robot corresponded to its GV cell, bounded by hyperbolic arcs. The scheme based on gradient rise was used for area coverage and guarantees the Voronoi tessellation of the monitored area.
In this study, an effective multi-robot coverage control method is developed to coordinate a group of mobile robots to effectively cover the region of interest in the environment at a minimum cost. Primarily aiming at solving the inherent positioning error problem in a positioning system and the inability of a robot to be mass-pointed, this study introduces the positioning uncertainty factor and robot radius. This can buffer uncertainty Voronoi cells for robot construction and create larger cells for robots with large positioning uncertainties, while the introduction of buffer strips ensures that robots close to Voronoi boundaries do not collide. Subsequently, for a non-convex environment, both discrete and constrained Voronoi partitions are used to solve the non-convex limitations of CVTs. Therefore, considering that the communication ranges of the robots are generally limited [
31], the communication distance constraint is used to solve the problem of inaccurate Voronoi partitioning and robot collision due to limited communication distance. By using multi-robot formations in a MATLAB simulation, we demonstrate that the proposed method can effectively solve the non-convex environment limited communication distance of robot localization in the uncertainty of a division, ensuring that each robot is in a safe area, even when the robot’s center is located at the edge of an adjacent BUVC. Thus, the collision avoidance performance and the robustness of a BUVC method in the process of multi-robot coverage are further improved.
The structure of the remainder of this article is as follows. In
Section 2, the principle of a CVT and some problems occurring in practical applications are described. In
Section 3, a BUVC partition with localization uncertainty and robot radius parameters is proposed to solve these problems. Thereafter, a constrained Voronoi partition and a communication distance constraint are proposed for a non-convex environment and the communication distance constraint, respectively. In
Section 4, corresponding simulation results are presented to verify the effectiveness of the proposed algorithm.
Section 5 and
Section 6 present the distributed control strategy and numerical simulations employed in this study, respectively.
Section 7 discusses the BUVC experiments using TurtleBot3 robots. Conclusions and future prospects are presented in
Section 8.
2. Problem Statement
We suppose that
n ground mobile robots
with limited communication ranges are randomly distributed in a 2D convex region
Q containing fixed obstacles.
represents the robots’ positions, and each robot has the same dynamic model and size with radius
r. If the region
Q is divided into convex polygon regions
, each polygon contains only a single robot whose position is referred to as the generating point of the polygon, and the distance from any point in the polygon to the generating point is less than that to any other point in
Q. If
,
and
, the Voronoi partition of the region is generated, where the generating point
corresponds to the Voronoi cell
, and the partition structure is called the Voronoi diagram. The Voronoi partition
generated by the robot
can be described by the equation:
where
q is any observation point in
Q, and
is the Euclidean distance between two points in
Q. If the Voronoi cells of two robots share one edge, they are called neighbors, and the neighbors of robot
are represented by
.
Suppose that the coverage priority of different points in the region is specified by the region density function , and the function value in this function is non-negative. For the region point q that can be directly observed by the robot, the cost of monitoring the point by the robot is expressed in. For different robots, the function may be different. However, for any points with an equal distance to the same robot, the function is the same, that is .
Let a group of robots divide the task area into n areas, then place each agent in the appropriate position in the area, so that each point in the area is monitored by one robot. The cost function (the objective function to be optimized) for multiple robots to form the optimal configuration in the task area can be expressed as:
The CVT is a special case of a Voronoi partition. Suppose that in a given region, the density function in the environment region is
; the centroid of the Voronoi cell of the
i-th robot can be obtained as
Where the density function
refers to a distribution of interesting attributes in the environment. As the function value increases, the density value of an attribute increases. When the generating point of a Voronoi cell is the same as the centroid of the cell, it is called a centroid Voronoi tessellation. According to relevant convergence and stability proofs, when the robot moves to the centroid position, the cost function can be minimized, thus rendering the algorithm convergent and stable [
32].
Figure 1a,b show the Voronoi tessellation and CVT, respectively. The “+” sign in
Figure 1a represents the centroid
of the Voronoi cells, and the “.” sign and irregular multilaterals in
Figure 1a,b represent the generating points and corresponding Voronoi cells, respectively.
When the position errors of the robots are zero, the robots’ sizes are negligible, no obstacles are found in the task area, and the robots can communicate mutually. If for the same point in a region, all the robots have the same detection cost, then the traditional CVT can provide the best division for the robots. However, when considering the abovementioned problems, the traditional CVT is no longer the best solution.
3. Buffer Uncertain Voronoi Cell (BUVC)
For a distributed multi-robot system operating in a task environment, a collision avoidance control strategy should be designed, especially for robots that cannot be presented as points. Although a CVT provides an obstacle avoidance attribute for robots, in practicality, they have real sizes. When the robots are simultaneously located at the edge of a Voronoi cell, a collision may occur, even if the robots’ centers are located in the cell. To solve the abovementioned problems, this study introduces the concept of a buffer zone and appropriately shrinks the edge of the original Voronoi cell so that the robots’ centers are located at the edge of the Voronoi cell and the robots do not collide with each other.
The traditional Voronoi cell boundary renders the robots i and j equidistant from their shared Voronoi edges. The buffer zone in this study adds weights based on the original equation, as follows:
In Equation (
5),
is the cell weight value between robot
i and its neighbor
j, and
r is the radius of the robot. Equations (4) and (5) create a gap between the boundaries of the Voronoi cells as a safe buffer zone to ensure that robots that are close to the edge of the cell do not collide.
Notably, each robot can measure its position through a positioning technology or communicate with its neighboring robots. However, owing to errors in the positioning system, the position of each robot cannot be accurately obtained. Therefore, in general, under laboratory conditions, each robot has different positioning uncertainties. Assuming that the upper bound of the positioning uncertainty of each robot
is known, to describe the positioning uncertainty, the positioning uncertainty factor
is introduced to measure the positioning uncertainty (positioning error) of the robot. If
is close to 1, the radius of the robot’s positioning uncertainty is closer to the upper bound (that is, the positioning error is significant). On the contrary, the lower the robot’s positioning uncertainty, the smaller the positioning error.
When Equation (
6) is changed to (5), both robots are located at the edge of their respective cells, and the distance between the two robots is
. In Equation (
6), when
increases, the Voronoi cell of the robot also increases.
According to hyperbolic theories, Equation (
8) represents a single branch equation of a hyperbolic equation. The positions of the two robots are located at the focus points of the long axis. The parameter
may either be convex or non-convex because
may either be positive or negative.
(a) When a buffer zone of a Voronoi cell and the positioning uncertainty of a robot are not considered,
r = 0,
= 0, and
. The distribution of the robots is governed by CVT, as shown in
Figure 2a. The cell edge between the robots is located on the vertical line of the robot and is symmetrically distributed.
(b) When the buffer zone of the Voronoi cell is introduced,
,
=0, and
. The distribution of the robots is shown in
Figure 2b, wherein the black discs represent the actual robot sizes, and the buffer zone between the robots is located on the vertical bisector between the robots and is symmetrically distributed.
(c) When the buffer zone and the robots’ positioning uncertainties are introduced,
and
, Equation (
7) is obtained. The distribution of the BUVCs of multiple robots is shown in
Figure 2c. The red circles represent the positioning uncertainties of the robots. The buffer zone between the robots tends to move toward the small side, demonstrating an asymmetric distribution.
6. Numerical Simulation
The simulation experiment performed in this study is conducted on MATLAB on the Windows operating system. In MATLAB, the size of the specified area is 1000 × 1000. Nine robots can be controlled in this area to complete the coverage under different density functions and environments. The density function of the BUVC can be manually specified in advance to control the robots to form the desired coverage formation.
The novelty of this study is highlighted by considering the multi-robot motion control based on a CVT and BUVC under a constant density function and comparing it with the traditional CVT. Subsequently, in Scenarios 3 and 4, the communication range is added to the algorithm, and the density function of the robot task area is changed in Scenario 4. While the effectiveness of the algorithm is verified, the robustness under different density functions is reflected. Finally, by considering multi-robot motion control under different obstacle environments in Scenarios 5 and 6, the proposed method can effectively classify different non-convex environments. Thus, robots with actual sizes, positioning errors, and limited communication ranges can effectively cover different task environments.
Scenario 1. Multi-robot motion control based on CVT under constant density function.
The simulation utilizes nine robots to verify the CVTs of multiple robots under the constant density function shown in
Figure 8d.
Figure 8a represents the initial positions of the robots. Herein, the black points represent the current position of the robot, the red crosses represent the centroid positions of the Voronoi cell, and the colored regions where the robots are located represent the Voronoi cell of the robots.
Figure 8b illustrates the CVT in the robot task environment when the number of iterations
k = 35. The colored curve represents the trajectory of the robot. Notably, each robot tracks its centroid in its Voronoi cell.
Figure 8c shows the final configuration of all the robots under the constant density function, which is symmetrical; that is, the edge of the Voronoi cell between every two robots is located on the vertical bisector of the robots.
Figure 8g,c reveal that the areas of the nine robots are equal. Moreover, the distribution conforms to the CVT characteristics, that is, the edges of the Voronoi cells are all located on the vertical bisector between the robots, and the areas of the cells are approximately equal. When measuring the workloads of the robots using the size of the work area, the workload of each robot is considered to be approximately equal.
Figure 8e shows that the cost function of the multi-robots finally reaches the minimum value, that is, the optimal solution.
Figure 8f depicts the error of the current position of each robot relative to the position of the centroid in each iteration. Notably, the position error of each robot is zero when the iteration reaches 140, and the cost function of the system is also minimized. When the optimal distribution of multi-robots in the task environment is obtained, the experiment is stopped. According to the distance between each pair of consecutive robots during the process of the multi-robot movement, the robots can be observed to be at safe distances from each other, as shown in
Figure 8h.
All the subsequent simulations in this study use nine robots. Their initial positions and corresponding parameters are listed in
Table 1.
Scenario 2. Multi-robot motion control based on BUVC under constant density function.
In this scenario, the initial positions of the robots are the same as those in Scenario 1, and the coverage motion control of multiple robots under the density function shown in
Figure 9d is verified.
Figure 9a shows the distribution of the Voronoi cells corresponding to the robot position when the number of iterations
k = 0. The black discs represent the current positions and dimensions of the robots. As the sizes of the red circles increase, both the positioning uncertainties and positioning accuracies of the robot increase. The regions represent the Voronoi cells of the robots, and the dark blue areas between the Voronoi cells represent the buffer zones between the cells.
Figure 9b shows the position distribution and trajectory diagram of the robot task environment when the number of iterations
k = 33.
Figure 9c represents the final configuration of multi-robot coverage under the constant density function.
Figure 9c,g reveal that the buffer area of the Voronoi cell of a robot increases as the robot’s positioning uncertainty increases. This is consistent with the characteristics of the BUVC. This means that the boundary between the Voronoi cells is biased toward the side with less positioning uncertainty and divides the cells asymmetrically. The buffer zones of the cells represent robots that cannot be treated as single points.
Figure 9e indicates that the cost function of the multi-robots finally reaches the minimum value, that is, the optimal solution.
Figure 9f shows that the position error of each robot tends to zero after 123 iterations. At this time, the optimal distribution of the robots in the task environment is obtained, and the iteration is stopped.
Figure 9h shows that during the multi-robot movement, all the robots are at safe distances from each other.
Scenario 3. Multi-robot motion control of BUVC based on communication distance constraint under constant density function.
In this scenario, the initial positions of the robots are the same as those in Scenarios 1 and 2. Herein, we verify the coverage motion control of multiple robots under the density function shown in
Figure 10d.
Figure 10a represents the initial position of the robot. Herein, the Voronoi cells corresponding to the robots are all constrained to 0.5 times the communication range.
Figure 10b shows the BUVC division in the robot task environment when the number of iterations
k = 80.
Figure 10c shows the final configuration of 10 robots under a constant density function, demonstrating an asymmetric distribution.
Figure 10c,g indicate that the area of the Voronoi cell of a robot increases as the robot’s positioning uncertainty increases. Moreover, the Voronoi buffer between the robots is biased toward the side containing robots with low positioning uncertainties, and the distribution is asymmetric. This is consistent with the BUVC characteristics and in stark contrast with the final configuration of the BUVC without the communication range constraints, as shown in
Figure 9c.
Figure 10e,f show that both the cost function and position error in the multi-robot operation tend to zero.
Figure 10h shows that in the process of multi-robot motion, the robots are all at safe distances from each other.
Scenario 4. Multi-robot motion control of BUVC based on communication distance constraint under Gaussian density function.
In this scenario, the initial positions of the robots are the same as those in Scenarios 1, 2, and 3. The coverage motion control of the multiple robots under the Gaussian density function, shown in
Figure 11d, is verified. The density function is obtained using Equation (
24).
Figure 11a shows the initial positions of the robots.
Figure 11c shows the final configuration of the nine robots under the Gaussian density function, demonstrating an asymmetric distribution.
Figure 11c,g reveal that the area of the Voronoi cell of a robot increases as the robot’s positioning uncertainty increases. Moreover, the Voronoi buffer between the robots is biased toward the side containing robots with low positioning uncertainties, and the distribution is asymmetric, which is consistent with the BUVC characteristics.
Figure 11e,f show that the cost function and position error of the multi-robot operation tend to zero.
Figure 11h indicates that during the multi-robot motion, the robots are all at safe distances from each other.
Scenario 5. Multi-robot motion control of BUVC based on communication distance constraint under Gaussian density function.
In this scenario, the initial positions of the robots are the same as those in Scenarios 1, 2, 3, and 4. However, the presence of an obstacle in the upper right corner of the area under consideration transforms the area into a non-convex environment. The coverage motion control of the multi-robots under the Gaussian density function shown in
Figure 12d is verified. The density function is obtained using Equation (
24).
Figure 12a shows the initial position of the robots.
Figure 12c shows the final configuration of the nine robots under the Gaussian density function, showing an asymmetric distribution.
Figure 12c,g show that the area of the Voronoi cell of a robot increases as the robot’s positioning uncertainty increases. Moreover, the Voronoi buffer between the robots is also biased toward the side containing robots with low positioning uncertainties, that is, the distribution is asymmetric. This is consistent with the BUVC characteristics.
Figure 12e,f show that both the cost function and position error in the multi-robot operation tend to zero.
Figure 12h shows that the robots are all at safe distances from each other during the multi-robot movement.
Scenario 6. Multi-robot motion control of BUVC based on communication distance constraint under Gaussian density function.
In this scenario, the initial positions of the robots are the same as those in Scenarios 1, 2, 3, 4, and 5. However, the presence of a circular obstacle in the middle of the area under consideration transforms the area into a non-convex environment. The coverage motion control of multi-robots under the Gaussian density function shown in
Figure 13d is verified. The density function is obtained using Equation (
24).
Figure 13a shows the initial position of the robots.
Figure 13c shows the final configuration of the nine robots under the Gaussian density function, which shows an asymmetric distribution.
Figure 13c,g show that the area of the Voronoi cell of a robot increases as the robot’s positioning uncertainty increases. Moreover, the Voronoi buffer between the robots is also biased toward the side containing robots with low positioning uncertainties, that is, the distribution is asymmetric. This is consistent with the BUVC characteristics.
Figure 13e,f reveal that both the cost function and position error in the multi-robot operation tend to zero.
Figure 13h shows that during the multi-robot movement, all the robots are at safe distances from each other.
The results of the multi-robot coverage simulations in the six scenarios are compared and analyzed. The comparison results are presented in
Table 2. Notably, the number of iterations in Scenario 2 is less than that in Scenario 1, under stable conditions. This is because the existence of the buffer zone between the robots under the BUVC relatively reduces the area under consideration. This means that the area where the robots should operate is reduced, so the convergence speed is accelerated, which also reflects the advantages of the BUVC. However, the number of iterations and average position errors when the system is stable in both scenarios are the same. This shows that the method proposed in this study does not reduce the position accuracies of the robots when the positioning errors and actual sizes of the robots are considered.
By introducing communication distance constraints, the number of iterations in Scenario 3 is more than that in Scenario 2. This is because following the introduction of the communication distance constraint, the Voronoi regions of the robots are constantly reduced. Thus, the positions of the robots’ centroids are constrained, and the final number of iterations is increased.
One of the reasons for the reduction in the number of iterations in Scenarios 5 and 6 relative to that in Scenario 4 is that the introduction of obstacle areas in the task environment reduces the workspace. As the working area of the robots is reduced, the convergence speed of the robot-covering system is increased. Another reason is that the final to-be-covered area is partially occluded by obstacles. Therefore, the robot coverage system needs to adjust less frequently when it is almost stable.