Skip to content

sigmundhh/hybrid_diffusion

Repository files navigation

Long-horizon Planning with Hybrid Diffusion

Hybrid Diffusion Planning Overview

Implementation of planning with hybrid diffusion. Includes code for training and evaluation of the method.

Reproducing experiments

To reproduce the experiments, do the following:

  1. Collect demonstrations using the scripted expert
  2. Train and evaluate policies

Collecting demonstrations using scripted expert

The demo-collection scripts are provided in hybrid_diffusion_planning/dataset/, with the following table listing which script corresponds to which task.

Task Demo Collection Script
Tool-use collect_hook_demos.py
Arrange collect_xarm_arrange_demos.py
Xarm Sorting collect_xarm_sorting_demos.py
2D Sorting collect_sorting_demos.py

Single-seed Training

For running training and evaluation, run the associated config file. For HDP for the Hook-task, run

python train.py --config-name=train_hybrid_xarm_hook

Multi-seed training

We use the evaluation functionality from Diffusion Policy to obtain metrics averaged across 10 epochs and 3 seeds. The multi-seed training is initiated by:

export CUDA_VISIBLE_DEVICES=0,1,2
ray start --head --num-gpus=3  
python ray_train_multirun.py --config-dir=diffusion_policy/config --config-name=$config --seeds=42,43,44 --monitor_key=test/mean_score

Metrics are logged continually during training, and we report the k_min_train_loss metric in the paper.

See the Diffusion Policy repo for more information.

Acknowledgements

This codebase is based on Diffusion Policy.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages