Yuhao Zhang1, Keisuke Okumura1,2, Heedo Woo1, Ajay Shankar1, Amanda Prorok1
1Prorok Lab, University of Cambridge 2AIST Japan
This repository includes code for D4orm, based on the model-based diffusion.
D4orm is an optimization framework for generating kinodynamically feasible and collision-free multi-robot trajectories that exploits an incremental denoising scheme in diffusion models.
To install the required packages, run the following command:
pip install -e .
To run multi-robot trajectory planning with D4orm, use the following command:
python d4orm/planners/multi_planner.py
Argument | Default | Description |
---|---|---|
--env_name |
multi2dholo |
Specifies the environment, including multi2d (Differential Drive), multi2dholo (2D Holonomic), multi3dholo (3D Holonomic). |
--Nagent |
8 |
Number of agents. |
--Ndiffuse |
100 |
Number of diffusion/denoising steps in one single denoising optimization process. |
--Niteration |
30 |
Number of maximum iterations. |
--Nsample |
2048 |
Number of samples used in each denoising step. |
--Hsample |
100 |
Time horizon (number of timesteps) for the planned trajectories. |
--dt_factor |
1 |
Time step scaling factor applied to dt=0.1 . |
--print_info |
(flag) | Flag to print detailed runtime information. |
--save_images |
(flag) | Flag to save visualization images of planned trajectories. |
Modify the arguments to choose a different configuration. Some results will look like this:
![]() |
![]() |
---|---|
Differential Drive | 2D Holonomic |
To run baseline methods, use the following command:
python d4orm/planners/path_integral.py
Argument | Default | Description |
---|---|---|
--env_name |
multi2dholo |
Specifies the environment, including multi2d (Differential Drive), multi2dholo (2D Holonomic), multi3dholo (3D Holonomic). |
--method |
mppi |
Specifies the method, including mppi and cem . |
--Nagent |
8 |
Number of agents. |
--Nsample |
2048 |
Number of samples used in each step. |
--Hsample |
100 |
Time horizon (number of timesteps) for the planned trajectories. |
--save_images |
(flag) | Flag to save visualization images of planned trajectories. |
If you find this work to be useful in your research, please consider citing:
@article{zhang2025d4orm,
title={D4orm: Multi-Robot Trajectories with Dynamics-aware Diffusion Denoised Deformations},
author={Zhang, Yuhao and Okumura, Keisuke and Woo, Heedo and Shankar, Ajay and Prorok, Amanda},
journal={arXiv preprint arXiv:2503.12204},
year={2025}
}