# Distributed Weighted Coverage for Multi-Robot Systems in Non-Convex Environment
## 5 Multi-Robot Control Strategy with BUVC  
### Multi-Robot Control Strategy  
In this section, we describe the coverage control of a group of mobile agents in an obstacle-free environment. Each mobile agent is modeled as follows:  
\[\bar{p}_{i}=u_{i}. \tag{12}\]  
where \(u_{i}\) is the control input of the robot \(k\). It is assumed that each robot can communicate with other robots in the neighboring Voronoi cell and calculate its BUVC area in a  
Figure 6: BUVC before and after the introduction of invisible area.  
Figure 7: Schematic diagram of obstacle avoidance strategy.  
distributed manner. Therefore, we developed a multi-robot position control law using the BUVC method to better coordinate the motion of multiple robots. The robot position control method is proposed as follows:  
\[u_{i}=-K_{p}(p_{i}-c_{v_{i}})-K_{d}\dot{p}_{i}. \tag{13}\]  
The Lyapunov function is defined as follows  
\[Vp_{i}=\frac{1}{2}K_{p}\|p_{i}-c_{v_{i}}\|+\frac{1}{2}\dot{p}. \tag{14}\]  
Subsequently, the derivative of the Lyapunov function is obtained as follows  
\[\dot{V}(p_{i})=K_{p}(p_{i}-c_{v_{i}})\dot{p}_{i}+\dot{p}_{i}\ddot{p}_{i}. \tag{15}\]  
By replacing the parameter \(\ddot{p_{i}}\) with \(\dot{p_{i}}\) in Equation (15), we obtain  
\[\dot{V}(p_{i})=\dot{p_{i}}\big{[}K_{p}(p_{i}-c_{v_{i}})-K_{p}(p_{i}-c_{v_{i}})- K_{d}\dot{p}_{i}\big{]}. \tag{16}\]  
The further simplification of Equation (16) yields  
\[\dot{V}(p_{i})=-K_{d}\dot{p_{i}}^{2}. \tag{17}\]  
These equations reveal that the Lyapunov function is semi-negative. As time tends to infinity, the system is asymptotically stable in a large range if and only if the input is zero, \(\dot{V}(p_{i})=0\). According to [PERSON]'s principle, if the surface fine diversity is limited, the robot gradually converges to the centroid of the specified Voronoi cell.  
\[p_{i}=c_{v_{i}}. \tag{18}\]  
The specific algorithm of coverage control in the limited communication distance and non-convex environment is presented in Algorithm 1.  
```
1 Require: Initial position \(P:\left\{p_{i}\right\}_{i=1}^{n}\) of a group of robots, the \(r_{i}\),\(\lambda_{i}\) and \(r_{c}\) of each robot;
2 boundary information \(\partial Q\) of task area \(Q\), area density function \(\rho(q)\) ;
3 Procedure:
4 Calculate the BUVC \(V_{o}=\left\{v_{o,i}^{b,u}\right\}_{i=1}^{n}\) of the set of robot positions \(P\) within the communication distance \(r_{c}\) in a non-convex environment and the corresponding centroid \(\left\{c_{v_{i}}\right\}_{i=1}^{n}\);
5 While:\(\left(\left(err(p_{i})=p_{i}-c_{v_{i}}\right)\geq e\right)\&\&\min(F(p))\)
6 if:\(\left(p_{i}\in O+r_{i}\right)\&\&\left(c_{v_{i}}\in S_{i,q}\cup U\right)\)
7 if:\(\overline{p_{i,k-1}p_{i,k}}\perp\partial O\)then
8 Virtual centroid \(\overline{c_{v_{i}}}=p_{i,k}+\delta\) ( The direction is \(\overline{p_{i,k}p_{i,k}}\))
9 else: Virtual centroid \(\overline{c}_{v_{i}}=p_{i,k}+\delta\) (The direction is the projection direction of \(\overline{p_{i,k-1}p_{i,k}^{\prime}}\) on \(\partial O\))
10 endif:
11 Drive the robot to the center of mass position such that \(p_{i}=c_{v_{i}}\), \(\left(i=1,\ldots,n\right)\) ;
12 Generate a new set of robot positions\(P:\left\{p_{i}=c_{v_{i}}\right\}_{i=1}^{n}\)
13 Calculate the centroid \(\left\{c_{v_{i}}\right\}_{i=1}^{n}\) of the new Voronoi cell and the BUVC \(V_{o}=\left\{v_{o,i}^{b,u}\right\}_{i=1}^{n}\) of the robot position set\(P\)
14 endwhile
```  
**Algorithm 1** The pseudocode of the coverage control for limited communication distance and non-convex environment