Computer VisionMulti-robotNewsPerceptionRobotics

3DMR – 3D Multi-Robot Exploration with a Two-Level Coordination Strategy and Prioritization

Check out the new 3DMR project on 3D multi-robot exploration in collaboration with Prof. Rui Rocha, David Portugal, and Tiago Novo from the University of Coimbra. It started during the TRADR EU project. I’ve been working on it during my free time when possible overnights and weekends, and when my family was in relaxing/sleeping mode. Many thanks to Tiago: during his Master’s Thesis, he ported the project on a Team of pioneer 3-DX robots and added improvements. I supported him together with Prof. Rocha and David. It was a privilege to work with them. Thank you very much!

We release the code in the 3DMR repository: this framework provides ROS tools for 3D multi-robot exploration, patrolling, and navigation tasks with different robots (tracked UGV, jackal UGV, pioneer 3-DX, and AscTec Firefly) under different simulators (V-REP and gazebo).

Paper: 3D Multi-Robot Exploration with a Two-Level Coordination Strategy and Prioritization
Luigi Freda, Tiago Novo, David Portugal, Rui P. Rocha

Code: https://github.com/luigifreda/3dmr
Videos:
 

Abstract: This work presents a 3D multi-robot exploration framework for a team of UGVs moving on uneven terrains. The framework was designed by casting the two-level coordination strategy we presented for patrolling into the context of multi-robot exploration. The resulting distributed exploration technique minimizes and explicitly manages the occurrence of conflicts and interferences in the robot team. Each robot selects where to scan next by using a receding horizon next-best-view approach. A sampling-based tree is directly expanded on segmented traversable regions of the terrain 3D map to generate the candidate next viewpoints. During the exploration, users can assign locations with higher priorities on-demand to steer the robot exploration toward areas of interest. The proposed framework can be also used to perform coverage tasks in the case a map of the environment is a priori provided as input. An open-source implementation is available online.

Check also my related tweet