SLM Lab
Modular Deep Reinforcement Learning framework in PyTorch.
Last updated
Modular Deep Reinforcement Learning framework in PyTorch.
Last updated
SLM Lab is a software framework for reproducible reinforcement learning (RL) research. It enables easy development of RL algorithms using modular components and file-based configuration. It also enables flexible experimentation completed with hyperparameter search, result analysis and benchmark results.
SLM Lab is also the companion library of the book Foundations of Deep Reinforcement Learning. The book's website and errata is here.
Modular design for building deep RL algorithms
Reproducibility using spec file and git SHA
Well-tuned algorithm implementations
Multiple RL environment offerings
SLM Lab implements most of the canonical RL algorithms:
SARSA
DQN (Deep Q-Network)
Double-DQN, Dueling-DQN, PER (Prioritized Experience Replay)
REINFORCE
A2C (Advantage Actor-Critic) with GAE & n-step
PPO (Proximal Policy Optimization)
SAC (Soft Actor-Critic)
SIL (Self Imitation Learning)
Asynchronous version of all the above
They are implemented in a modular way such that differences in algorithm performance can be confidently ascribed to differences between algorithms, not between implementations.
SLM Lab currently includes the following environment offerings:
VizDoom (credit: joelouismarino)
Unity environments with prebuilt binaries
If you use SLM Lab in your publication, please cite below:
This project is licensed under the MIT License.