YuchuanLu / visual_wholebody

Train a loco-manipulation dog with RL

Home Page:https://wholebody-b1.github.io/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Visual Whole-Body for Loco-Manipulation

https://wholebody-b1.github.io/

Related to paper <Visual Whole-Body Control for Legged Loco-Manipulation>

Set up the environment

conda create -n b1z1 python=3.8 # isaacgym requires python <=3.8
conda activate b1z1

git clone git@github.com:Ericonaldo/visual_whole_body.git

cd visual_whole_body

pip install torch torchvision torchaudio

cd third_party/isaacgym/python && pip install -e .

cd ../..
cd rsl_rl && pip install -e .

cd ..
cd skrl && pip install -e .

cd ../..
cd low-level && pip install -e .

pip install numpy pydelatin tqdm imageio-ffmpeg opencv-python wandb

Structure

  • high-level: codes and environments related to the visuomotor high-level policy, task-relevant

  • low-level: codes and environments related to the general low-level controller for the quadruped and the arm, the only task is to learn to walk while tracking the target ee pose and the robot velocities.

Detailed code structures can be found in these directories.

How to work (roughly)

  • Train a low-level policy using codes and follow the descriptions in low-level

  • Put the low-level policy checkpoint into somewhere.

  • Train the high-level policy using codes and follow the descriptions in high-level, while assigning the low-level model in the config yaml file.

Acknowledgements (third-party dependencies)

Codebase Contributions

  • Minghuan Liu made efforts on improving the training efficiency, reward engineering, filling sim2real gaps, and reach expected behaviors, while cleaning and integrating the whole codebase for simplicity.
  • Zixuan Chen initialized the code base and made early progress on reward design, training, testing, and sim2real transferring, along with some baselines.
  • Xuxin Cheng shared a lot of domain knowledge and reward experience on locomotion and low-level policy training, and helped debug the code.
  • Yandong Ji provided several suggestions and helped debug the code.

Citation

If you find the code base helpful, consider to cite

@article{liu2024visual,
    title={Visual Whole-Body Control for Legged Loco-Manipulation},
    author={Liu, Minghuan and Chen, Zixuan and Cheng, Xuxin and Ji, Yandong and Yang, Ruihan and Wang, Xiaolong},
    journal={arXiv preprint arXiv:2403.16967},
    year={2024}
}

About

Train a loco-manipulation dog with RL

https://wholebody-b1.github.io/

License:Other


Languages

Language:Python 100.0%