Deep Reinforcement learning (DRL) has been very successful in recent years but current methods still require vast amounts of data to solve non-trivial environments. Scaling to solve more complex tasks requires frameworks that are flexible enough to allow prototyping and testing of new ideas, yet avoiding the impractically slow experimental turnaround times associated to single-threaded implementations. PyTorchRL is a pytorch-based library for DRL that allows to easily assemble RL agents using a set of core reusable and easily extendable sub-modules as building blocks. To reduce training times, PyTorchRL allows scaling agents with a parameterizable component called Scheme, that permits to define distributed architectures with great flexibility by specifying which operations should be decoupled, which should be parallelized, and how parallel tasks should be synchronized.
conda create -y -n pytorchrl
conda activate pytorchrl
conda install pytorch torchvision cudatoolkit -c pytorch
pip install pytorchrl gym[atari,accept-rom-license]==0.22.0 wandb opencv-python hydra-core
PyTorchRL documentation can be found here.
Here is the paper
@misc{bou2021pytorchrl,
title={Integrating Distributed Architectures in Highly Modular RL Libraries},
author={Albert Bou, Sebastian Dittert and Gianni De Fabritiis},
year={2023},
eprint={2007.02622},
archivePrefix={arXiv},
primaryClass={cs.CV}
}