Tensorforce: a TensorFlow library for applied reinforcement learning¶
Tensorforce is an open-source deep reinforcement learning framework, with an emphasis on modularized flexible library design and straightforward usability for applications in research and practice. Tensorforce is built on top of Google’s TensorFlow framework and requires Python 3.
Tensorforce follows a set of high-level design choices which differentiate it from other similar libraries:
- Modular component-based design: Feature implementations, above all, strive to be as generally applicable and configurable as possible, potentially at some cost of faithfully resembling details of the introducing paper.
- Separation of RL algorithm and application: Algorithms are agnostic to the type and structure of inputs (states/observations) and outputs (actions/decisions), as well as the interaction with the application environment.
- Full-on TensorFlow models: The entire reinforcement learning logic, including control flow, is implemented in TensorFlow, to enable portable computation graphs independent of application programming language, and to facilitate the deployment of models.
- Getting started
- Agent specification
- run.py – Runner
- tune.py – Hyperparameter tuner
- General agent interface
- Constant Agent
- Random Agent
- Tensorforce Agent
- Vanilla Policy Gradient
- Proximal Policy Optimization
- Trust-Region Policy Optimization
- Deterministic Policy Gradient
- Deep Q-Network
- Double DQN
- Dueling DQN
- Advantage Actor-Critic