SurRoL
Features
- dVRK compatible robots.
- Gym style API for reinforcement learning.
- Ten surgical-related tasks.
- Various object assets.
- Based on PyBullet for physics simulation.
Installation
The project is built on Ubuntu with Python 3.7, PyBullet, Gym 0.15.6, and evaluated with Baselines, TensorFlow 1.14.
Prepare environment
-
Create a conda virtual environment and activate it.
conda create -n surrol python=3.7 -y conda activate surrol
-
Install gym (slightly modified), tensorflow-gpu==1.14, baselines (modified).
Install SurRoL
git clone https://github.com/jiaqixuac/surrol.git
cd surrol
pip install -e .
Get started
The robot control API follows dVRK (before "crtk"), which is compatible with the real-world dVRK robots.
You may have a look at the jupyter notebooks in tests. There are some test files for PSM and ECM, that contains the basic procedures to start the environment, load the robot, and test the kinematics.
We also provide some run files to evaluate the environments using baselines.
License
SurRoL is released under the MIT license.
Citation
If you find the paper or the code helpful to your research, please cite the project.
@inproceedings{xu2021surrol,
title={SurRoL: An Open-source Reinforcement Learning Centered and dVRK Compatible Platform for Surgical Robot Learning},
author={Xu, Jiaqi and Li, Bin and Lu, Bo and Liu, Yun-Hui and Dou, Qi and Heng, Pheng-Ann},
booktitle={2021 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)},
year={2021},
organization={IEEE}
}
Acknowledgement
The code is built with the reference of dVRK, AMBF, dVRL, RLBench, Decentralized-MultiArm, Ravens, etc.