ICRA 2025: Multi-Nonholonomic Robot Object Transportation with Obstacle Crossing using a Deformable Sheet
Weijian Zhang, Charlie Street, Masoumeh Mansouri
University of Birmingham
We address multi-robot formation planning where nonholonomic robots collaboratively transport objects using a deformable sheet in unstructured, cluttered environments. Our paper has been selected as the Best Conference Paper Award Finalist & Best Paper Award Finalist on Multi-Robot Systems at ICRA 2025!
-
A heuristic path exploration method that efficiently evaluates a set of homotopically distinct solution spaces for the formation.
-
A two-stage iterative motion planning framework for finding locally time-optimal collision-free formation trajectories using a deformable sheet.
- 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.
- Create a new workspace:
$ mkdir -p ~/CPDOT/src
$ cd ~/CPDOT/src
$ catkin_init_workspace- Clone the package into the workspace:
$ git clone git@github.com:HyPAIR/CPDOT.git- Install dependencies:
$ cd ~/CPDOT
$ rosdep install --from-paths src --ignore-src -r -y- Build the workspace (Set MOSEK_DIR to the root path of your MOSEK license (e.g., /home/yourname/mosek/7):
$ catkin_make --cmake-args -DMOSEK_DIR=/home/yourname/mosek/7| Parameter | Value | Description |
|---|---|---|
| Car-like robot wheelbase | ||
| Linear velocity limit | ||
| Linear acceleration limit | ||
| Steering angle limit | ||
| Angular velocity limit | ||
| Angular acceleration limit | ||
| IRIS grid size | ||
| Time between control inputs | ||
| Weights for cost function | ||
| Original sheet's side length | ||
| Height of each contact point | ||
| Default inter-robot distance | ||
| Delta value on inter-robot distance | ||
| Weight parameter | ||
| Weight parameter | ||
| Weight parameter | ||
| Weight parameter |
Launch the simulation to the trajectory optimisation result (4 robots in a simple scenario):
$ roslaunch formation_planner topological_test.launchCreate a world file with 5 car-like robots in 100 random obstacle environments.
$ roslaunch formation_planner write_obs_to_world.launchLaunch a multi-robot transportation simulation, with 5 car-like robots in 100 random obstacle environments.
$ roslaunch formation_planner heterogeneous_triangle.launchLaunch the control node:
$ roslaunch formation_planner control_triangular_formation.launchA simulation and real-world experiments video demonstrating our proposed framework can be found at bilibili/youtube.
If you find this work useful, please cite (paper):
@INPROCEEDINGS{11128313,
author={Zhang, Weijian and Street, Charlie and Mansouri, Masoumeh},
booktitle={2025 IEEE International Conference on Robotics and Automation (ICRA)},
title={Multi-Nonholonomic Robot Object Transportation with Obstacle Crossing Using a Deformable Sheet},
year={2025},
volume={},
number={},
pages={7349-7355},
keywords={Limiting;Navigation;Transportation;Probabilistic logic;Hardware;Planning;Iterative methods;Robots;Trajectory optimization;Contracts},
doi={10.1109/ICRA55743.2025.11128313}}



