This repository contains the code and simulations for the project on coverage control for a fleet of mobile robots operating in both one-dimensional (1D) and two-dimensional (2D) spaces.
The complete report is available here.
In the 1D scenario, the robots are constrained to move along a circular path. The goal is to minimize the coverage cost function, which is the maximum time it takes for any sensor to reach any point on the circle. Control laws are designed to optimize the sensor positions while accounting for real-world conditions such as measurement errors and intermittent distance readings. Simulations are conducted to test the robustness of the control law under these conditions, and to test the capability of the controller in maintaining such optimal formation while moving in the space.
The 2D problem extends the coverage control to a bounded convex region. The robots aim to cover areas of high sensory interest using local measurements. The sensory function, which represents the importance of different areas, is unknown to the robots. An adaptive control law is introduced to learn this function, and a consensus-based control law is used to propagate sensory information across the network, improving the overall coverage.
In the 1D problem, the robots are tasked with optimizing their positions along a circular path to minimize the time it takes for any robot to reach any point on the circle. The control law adapts the robot positions based on local sensor measurements while accounting for real-world constraints such as position measurement errors.
The problem is described by the following coverage cost function:
Where:
-
$S$ is the set of all points on the circle. -
$d(q_i, q)$ is the shortest distance between sensor$i$ and point$q$ . -
$\lambda_i$ is the maximum velocity of sensor$i$ .
The control law used in this work was introduced by Song et al., and aims to drive the sensor network to an optimal configuration while accounting for measurement errors. The control input is defined as:
Where:
The estimated distance between sensors
Where:
-
$\hat{d}_{i,j}(k)$ is the upper bound of the distance estimate. -
$\check{d}_{i,j}(k)$ is the lower bound of the distance estimate.
These bounds are updated at each time step using the following equations:
Where:
-
$\bar{d}_{i,j}(k)$ is the average measured distance between sensors$i$ and$j$ . -
$\bar{\delta}_{i,j}$ is the average measurement error.
The simulations demonstrate the effectiveness of the control law in achieving near-optimal coverage. Various scenarios are tested, including the impact of measurement errors and the use of pinning control to maintain sensor formation during movement.
The sensors are able to maintain formation while in motion, albeit with an increase in steady-state error as the pinner velocity increased.
1D Simulation Results with measurement errors, different sensors maximum velocities, and pinning control
In the 2D problem, the robots are tasked with adaptively positioning themselves in a bounded convex environment. The goal is to minimize a cost function based on the distance from each robot to points of interest, weighted by a sensory function
The cost function for the 2D problem is defined as:
Where:
-
$V_i$ is the Voronoi region of robot$i$ . -
$\varphi(q)$ is the sensory function.
The control law used to move each robot towards the estimated centroid of its Voronoi region is:
Where
The robots learn the sensory function
Where
The pre-adaptation law for the parameter vector
Where
To avoid singularities, the final adaptation law uses a projection mechanism that ensures that the parameters remain above a minimum threshold.
The 2D simulations show that the robots can adaptively position themselves in areas of high sensory interest. However, without any communication between the agents, the approximations of the sensory function are only locally true. While the estimated error is brought to zero, the true error converges to a steady state value.
The use of a skew symmetric component can only slightly increase the gathered information by making the trajectories of the robots more complex. On the other hand, the introduction of a consensus control law can reliably achieve a globally true approximation of the sensory function, thus a zero estimated and true position error. The control law is modified as it follows:
where
To run the simulations, execute the two scripts Coverage1Dmain and Coverage2Dmain in their respective subfolder. The output of the simulation will be shown on the screen and saved as an eps in the /img/ subfolder To change the parameters, modify the scripts coverage1D_parameters.m and coverage2D_parameters.m.
For detailed analysis, refer to the complete report by clicking the button below.
- Song, C., Qin, J., Wang, L., & Li, H. (2020). Coverage control for heterogeneous mobile sensor networks with bounded position measurement errors. Automatica, 120, 109118. https://doi.org/10.1016/j.automatica.2020.109118
- Song, C., Qin, J., Wang, L., & Li, H. (2016). Coverage control for heterogeneous mobile sensor networks on a circle. Automatica, 63, 349–358. https://doi.org/10.1016/j.automatica.2015.10.044
- Schwager, M., Rus, D., & Slotine, J.-J. (2009). Decentralized, adaptive coverage control for networked robots. The International Journal of Robotics Research, 28(3), 357–375. https://doi.org/10.1177/0278364908099465
- Drezner, Z. (1996). Facility location: A survey of applications and methods. Journal of the Operational Research Society, 47(11), 1421–1421. https://doi.org/10.1057/palgrave.jors.0470070
- Schwager, M., Slotine, J.-J., & Rus, D. (2008). A ladybug exploration strategy for distributed adaptive coverage control. In Proceedings of the 2008 IEEE International Conference on Robotics and Automation (pp. 2346–2353). IEEE. https://doi.org/10.1109/ROBOT.2008.4543535