Skip to content

marmotlab/Multi-Robot-Exploration-Development-Environment

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Multi-Robot Exploration Development Environment

This repository is an extension of the CMU Autonomous Exploration Development Environment.
Our main contribution is expanding the original single-robot exploration framework into a multi-robot exploration system.

Note: This project is implemented and tested on ROS 2 Humble.

Overview

The original Autonomous Exploration Development Environment was designed for single-robot exploration and development.
Based on that foundation, this project extends the system to support multiple robots operating in the same environment, enabling collaborative exploration and more scalable experiments in simulation.

Key Changes

Compared with the original single-robot version, this repository includes:

  • Extension from single robot to multiple robots
  • Support for multi-robot exploration scenarios
  • Added a warehouse environment to support multi-robot cooperative navigation tasks

Project Background

This work is built upon the CMU Autonomous Exploration Development Environment and aims to provide a more practical development and experimentation platform for multi-robot path planning research.

Build Instructions

For the compilation and environment setup process, please refer to the following document:

Usage

After completing the environment setup and compilation, you can launch the corresponding simulation and exploration modules based on your experiment configuration.

1. Environment Categories

This repository supports two categories of environments:

Exploration Environments

The original five environments are preserved for exploration task testing and evaluation:

  • campus
  • indoor
  • garage
  • tunnel
  • forest

Warehouse Environment

In addition to the original exploration environments, this repository introduces a warehouse environment for multi-robot cooperative navigation tasks.

The warehouse setup includes:

  • a prior environment with relatively simple obstacle distribution
  • a ground truth environment with local changes

2. Launch Instructions

To launch the system with a particular environment, replace environment with the desired environment name, such as campus, indoor, garage, tunnel, forest, or warehouse.

ros2 launch vehicle_simulator system_environment.launch.py

In system_environment.launch.py, you can enable vehicle visualization in Gazebo by modifying the value of gazebo_gui.

You can adjust the number of robots by changing the value of n_robots.

You can also modify vehicleX_list and vehicleY_list to specify the initial positions of the robots, where vehicleX_list defines the x-coordinates and vehicleY_list defines the y-coordinates.

For additional parameter settings and further modifications, please refer to the CMU Autonomous Exploration Development Environment

3. Visualization Examples

The following figures show example interfaces after launching the simulation in Gazebo and RViz.

Waypoint Tool Properties in RViz

As shown below, different robots can be assigned waypoints by setting the corresponding namespace in the waypoint tool properties in RViz.

Waypoint tool properties in RViz

RViz View

An example RViz interface for multi-robot visualization is shown below.

RViz visualization example

Gazebo View

An example Gazebo interface after launching the multi-robot simulation is shown below.

Gazebo visualization example

Repository Structure

A typical repository structure may include:

  • src/ — source code for the exploration system and simulation modules
  • vehicle_simulator/ — robot and simulation-related components
  • local_planner/ — local planning modules
  • terrain_analysis/ — terrain perception and analysis components
  • visualization_tools/ — visualization utilities
  • other supporting packages for multi-robot exploration

Notes

  • This repository is an extended version of the CMU single-robot exploration development environment.
  • The main focus of this project is the multi-robot extension.
  • Please ensure all dependencies are correctly installed before building.

Credit

If you find this work helpful, please consider citing:

@article{shizhe2026orion,
  title={ORION: Option-Regularized Deep Reinforcement Learning for Cooperative Multi-Agent Online Navigation},
  author={Shizhe, Zhang and Jingsong, Liang and Zhitao, Zhou and Shuhan, Ye and Yizhuo, Wang and Derek, Tan Ming Siang and Jimmy, Chiun and Yuhong, Cao and Guillaume, Sartoretti},
  journal={arXiv preprint arXiv:2601.01155},
  year={2026}
}

Contributors

This project is developed and maintained by:

Shizhe Zhang*, Jingsong Liang*, Zhitao Zhou, Shuhan Ye,

Acknowledgement

This project is based on the CMU Autonomous Exploration Development Environment, with modifications and extensions for multi-robot exploration.

About

A multi-robot exploration simulator extended from CMU's single robot exploration development environment

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors