The exploration planner builds on top of the gbplanner2 to enable merging global planning graphs among multiple robots and increases the planning speed by employing grid based local exploration planning.
Local exploration planning
Global graph built during exploration planning
These instructions assume that ROS desktop-full of the appropriate ROS distro is installed.
Install necessary libraries:
For Ubuntu 20.04 and ROS Noetic:
sudo apt install python3-catkin-tools \
libgoogle-glog-dev \
ros-noetic-joy \
ros-noetic-twist-mux \
ros-noetic-interactive-marker-twist-server \
ros-noetic-octomap-ros
Create the workspace:
mkdir -p mggplanner_ws/src/exploration
cd mggplanner_ws/src/exploration
Clone the planner
git clone https://github.com/MISTLab/MGGPlanner.git
Clone and update the required packages:
cd <path/to/mggplanner_ws>
wstool init
wstool merge ./src/exploration/mggplanner/packages_https.rosinstall
wstool update
Note: ./src/exploration/mggplanner_ros/packages_https.rosinstall can be used for https based urls.
Build:
catkin config -DCMAKE_BUILD_TYPE=Release
catkin build
Launching simulation in the pittsburgh mine environment
roslaunch mggplanner mgg_sim_flat.launch
Launching simulation in the darpa cave
roslaunch mggplanner mgg_sim_darpa_cave.launch
To launch three robot simulations:
roslaunch mggplanner 3smb_sim_mgg.launch
In Ubuntu 18.04 with ROS Melodic, the gazebo node might crash when running the ground robot simulation. In this case set the gpu
parameter to false here.
Software Architecture Used During the Deployments
Three robots were deployed in a Mars-analog environment, using the MGG planner to coordinate with one another and distribute across the environment without any predefined exploration preferences.
If you use this work in your research, please cite the following publications:
MGG planner tests in a Mars analogs environment
@article{vvaradharajan2025,
title={A Multi-Robot Exploration Planner for Space
Applications},
author={Varadharajan and Vivek Shankar, Beltrame and Giovanni},
journal={IEEE Robotics and Automation letters},
volume = {},
number = {},
pages = {},
year={2025}
}
You can contact us for any question:
We acknowledge the contributions of the authors of gbplanner2, and our planner (MGGplanner) has been built on top of gbplanner2's codebase.