This repository contains the benchmarked algorithms for environments in SoftGym (paper). The benchmarked algorithms include
- Cross Entropy Method(CEM) [source]
- CURL/SAC [source] [paper]
- We use the original implementation
- DrQ [source] [paper]
- We use the original implementation
- PlaNet [source] [paper]
- We use this customized pytorch version
- MVP [source] [paper]
- We build on top of the original implementation
-
Install SoftGym by following the instructions in SoftGym repository. Then, copy the softgym code to the SoftAgent root directory so we have the following file structure:
softagent ├── cem ├── ... ├── softgym -
Update conda env with additional packages required by SoftAgent:
conda env update --file environment.yml --prune -
Activate the conda environment by running
. ./prepare_1.0.sh. -
For running MVP, please refer to the original implementation for dependencies.
-
Generating initial states for different SoftGym environments:
python experiments/generate_cached_states.py -
Running CEM experiments:
python experiments/run_cem.py. Refer torun_cem.pyfor different arguments. -
Running CURL/SAC experiments:
python experiments/run_curl.py. Refer torun_curl.pyfor different arguments. -
Running PlaNet experiments:
python experiments/run_planet.py. Refer torun_planet.pyfor different arguments. -
Running DrQ experiments:
python experiments/run_drq.py. Refer torun_drq.pyfor different arguments. -
Train an MVP policy:
python experiments/run_mvp.py. Refer torun_mvp.pyfor different arguments. Once the model is trained, userlpyt_cloth/max_q_eval_policyto evaluate the policy that selects the pick location with the maximum Q value.
Note: Default number of environment variations are set to 1. Set them to 1000 to reproduce the original experiments.
If you find this codebase useful in your research, please consider citing:
@inproceedings{corl2020softgym,
title={SoftGym: Benchmarking Deep Reinforcement Learning for Deformable Object Manipulation},
author={Lin, Xingyu and Wang, Yufei and Olkin, Jake and Held, David},
booktitle={Conference on Robot Learning},
year={2020}
}
- CURL implementation is from the official release: https://github.com/MishaLaskin/curl
- PlaNet implementation is modified from this repository: https://github.com/Kaixhin/PlaNet
- DrQ implementation is from the official repository: https://github.com/denisyarats/drq
- MVP implementation is from the official repository: https://github.com/wilson1yan/rlpyt
- Softgym repository: https://github.com/Xingyu-Lin/softgym