Skip to content

[RAS 2024] Code for the paper "A decoupled solution to heterogeneous multi-formation planning and coordination for object transportation"

Notifications You must be signed in to change notification settings

HyPAIR/Heterogeneous-formation-controller

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RAS 2024: A Decoupled Solution to Heterogeneous Multi-Formation Planning and Coordination for Object Transportation

Weijian Zhang, Charlie Street, Masoumeh Mansouri

University of Birmingham

Paper Video

Overview

A cooperative formation object transportation system for heterogeneous multi-robot systems that captures robot dynamics and avoids inter-formation collisions. Our paper has been selected as the Best Poster Award at The 7th IEEE UK & Ireland RAS Conference.

A Decoupled Solution to Heterogeneous Multi-Formation Planning and Coordination for Object Transportation

Image 1 Image 2 Image 3
Image 4 Image 5 Image 6

Features

system_overview

  • A comprehensive H-MFPC framework which integrates formation generation, planning, and coordination techniques for heterogeneous formations.

  • An efficient formation generation approach for heterogeneous multi-robot systems which synthesizes collision-free and kinematically feasible trajectories in unstructured environments.

  • A cost-optimal formation planning method that maintains rigidity for heterogeneous formations.

  • A loosely-coupled multi-formation coordination algorithm for ensuring deadlock-free and collision-free navigation among formations.

Requirements

  • ROS Noetic or later
  • Ubuntu 20.04 or later
  • yaml-cpp 0.8.0 or later
  • You'll also need a license for the Mosek optimization toolbox https://www.mosek.com/ (this package includes a downloader for the Mosek code, but you have to get your own license). Mosek has free licenses available for academic use.

Installation

  1. Create a new workspace:
$ mkdir -p ~/hmfpc_ws/src
$ cd ~/hmfpc_ws/src
$ catkin_init_workspace
  1. Clone the package into the workspace:
$ git clone https://github.com/HyPAIR/Heterogeneous-formation-controller.git
  1. Install dependencies:
$ cd ~/hmfpc_ws
$ rosdep install --from-paths src --ignore-src -r -y --skip-keys=ecbs
  1. Build the workspace:
$ catkin_make

Test in Rviz

  1. Launch the simulation to visualize the task allocation result (24 robots with 12 car-like and 12 diff drive in 10 random obstacle environments):

    $ roslaunch heterogeneous_formation_controller demo_ta_test.launch

task_allocation

  1. Launch the simulation to visualize the formation generation result (24 robots with 12 car-like and 12 diff-drive in 10 random obstacle environments):

    $ roslaunch heterogeneous_formation_controller demo_fg_test.launch

formation_generation

  1. Launch the simulation to visualize the formation planning result (an irregular formation with 3 car-like and 4 diff-drive in 10 random obstacle environments)):

    $ roslaunch heterogeneous_formation_controller demo_fp_test.launch

formation_planning

  1. Launch the simulation to visualize the formation coordination result (2 triangular formations and 3 rectangular formations, wtih 10 car-like and 8 diff-drive in 10 random obstacle environments):

    $ roslaunch heterogeneous_formation_controller fcoord_test.launch

formation_coordination

Test in Gazebo

  1. Launch formation generation simulation, with 10 robots (6 car-like and 4 diff-drive) in 7 random obstacle environments.

    roslaunch heterogeneous_formation_controller formation_generation.launch

    Launch the control node:

    roslaunch heterogeneous_formation_controller fg_test.launch

fg_10_real

  1. Launch formation planning simulation, with an irregular formation (3 car-like and 4 diff-drive) in a narrow corridor scene.

    roslaunch heterogeneous_formation_controller heterogeneous_triangle.launch

    Launch the control node:

    roslaunch heterogeneous_formation_controller control_triangular_formation.launch

fp_irregular

  1. Launch formation coordination simulation, with 2 triangular formations (4 car-like and 2 diff-drive) in a "H" environment.

    roslaunch heterogeneous_formation_controller formation_coordination.launch

    Launch the control node:

    roslaunch heterogeneous_formation_controller formation_coordination_demo.launch

formation_coordination_demo

Video

A simulation video demonstrating our proposed framework can be found at bilibili/youtube.

Citation

If you find this work useful, please cite A decoupled solution to heterogeneous multi-formation planning and coordination for object transportation (pdf):

@article{zhang2024decoupled,
  title={A decoupled solution to heterogeneous multi-formation planning and coordination for object transportation},
  author={Zhang, Weijian and Street, Charlie and Mansouri, Masoumeh},
  journal={Robotics and Autonomous Systems},
  pages={104773},
  year={2024},
  publisher={Elsevier}
}

About

[RAS 2024] Code for the paper "A decoupled solution to heterogeneous multi-formation planning and coordination for object transportation"

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published