[CoRL 24] Adaptive Diffusion Terrain Generation for Autonomous Uneven Terrain Navigation
Youwei Yu*, Junhong Xu*, Lantao Liu
git clone https://github.com/youwyu/Adaptive-Diffusion-Terrain.git
- Isaac Gym, DDPM, Python3.8-dev (Make sure you have mini/ana conda installed)
. install.sh ## Make sure using . rather than bash or sh install.sh
- Semi-Global Matching on GPU
Make sure the CMake version is at least 3.18, otherwise install by Kitware at https://apt.kitware.com or build from source
wget https://github.com/Kitware/CMake/releases/download/v3.31.0/cmake-3.31.0.tar.gz
tar -xvf cmake-3.31.0.tar.gz
cd cmake-3.31.0
./configure
make
sudo make install
Change the CUDA path in contexts/simsense/setup.py Line#35
pip install -e contexts/simsense
If you wanna use wandb, change Line#119, #120 in auto_train
python3 auto_train.py
Notes:
- Terrain context will auto save as json file.
- Teacher: specify the file to load the checkpoint, o.w. it will train from 0.
- Student: it will auto find the json, or user specify json path. o.w. the program return 1.
- We use a single RTX 4090 with 24GB RAM. For smaller RAM, we suggest lower num_agents_per_terrain and num_agents_per_terrain_distill in cfg/base_config. The number can be estimated roughly as YOUR_RAM * 4.
- If you don't want privileged knowlege and save training time and RAM, set all use_globalmap to False.
- We plan to release the ROS code soon. However, trained checkpoints will be planned right after the submission of our next work.
We understand the code is fully non-optimized as we do not care about simulation training during our bed time. We kindly ask you to cite our work if you leverage the code.
@inproceedings{
yu2024adaptive,
title={\href{https://openreview.net/forum?id=xYleTh2QhS}{Adaptive Diffusion Terrain Generator for Autonomous Uneven Terrain Navigation}},
author={Youwei Yu and Junhong Xu and Lantao Liu},
booktitle={8th Annual Conference on Robot Learning},
year={2024}
}