TF-Agents: A Reinforcement Learning Library for TensorFlow
Project description
TF-Agents: A library for Reinforcement Learning in TensorFlow
NOTE: Current TF-Agents pre-release is under active development and interfaces may change at any time. Feel free to provide feedback and comments.
To get started, we recommend checking out one of our Colab tutorials. If you need an intro to RL (or a quick recap), start here. Otherwise, check out our DQN tutorial to get an agent up and running in the Cartpole environment.
Table of contents
Agents
Tutorials
Multi-Armed Bandits
Examples
Installation
Contributing
Principles
Citation
Disclaimer
Agents
In TF-Agents, the core elements of RL algorithms are implemented as Agents
.
An agent encompasses two main responsibilities: defining a Policy to interact
with the Environment, and how to learn/train that Policy from collected
experience.
Currently the following algorithms are available under TF-Agents:
- DQN: Human level control through deep reinforcement learning Mnih et al., 2015
- DDQN: Deep Reinforcement Learning with Double Q-learning Hasselt et al., 2015
- DDPG: Continuous control with deep reinforcement learning Lillicrap et al., 2015
- TD3: Addressing Function Approximation Error in Actor-Critic Methods Fujimoto et al., 2018
- REINFORCE: Simple Statistical Gradient-Following Algorithms for Connectionist Reinforcement Learning Williams, 1992
- PPO: Proximal Policy Optimization Algorithms Schulman et al., 2017
- SAC: Soft Actor Critic Haarnoja et al., 2018
Tutorials
See tf_agents/colabs/
for tutorials on the major
components provided.
Multi-Armed Bandits
The TF-Agents library contains also a Multi-Armed Bandits suite with a few
environments and agents. RL agents can also be used on Bandit environments. For
a tutorial, see
tf_agents/bandits/colabs/bandits_tutorial.ipynb
.
For examples ready to run, see
tf_agents/bandits/agents/examples/
.
Examples
End-to-end examples training agents can be found under each agent directory. e.g.:
Installation
To install the latest version, use nightly builds of TF-Agents under the pip package
tf-agents-nightly
, which requires you install on one of tf-nightly
and
tf-nightly-gpu
and also tfp-nightly
.
Nightly builds include newer features, but may be less stable than the versioned releases.
To install the nightly build version, run the following:
# Installing with the `--upgrade` flag ensures you'll get the latest version.
pip install --user --upgrade tf-agents-nightly # depends on tf-nightly
If you clone the repository you will still need a tf-nightly
installation. You can then run pip install -e .[tests]
from the agents directory to get dependencies to run tests.
Contributing
We're eager to collaborate with you! See CONTRIBUTING.md
for a guide on how to contribute. This project adheres to TensorFlow's
code of conduct. By participating, you are expected to
uphold this code.
Principles
This project adheres to Google's AI principles. By participating, using or contributing to this project you are expected to adhere to these principles.
Citation
If you use this code please cite it as:
@misc{TFAgents,
title = {{TF-Agents}: A library for Reinforcement Learning in TensorFlow},
author = "{Sergio Guadarrama, Anoop Korattikara, Oscar Ramirez,
Pablo Castro, Ethan Holly, Sam Fishman, Ke Wang, Ekaterina Gonina, Neal Wu,
Efi Kokiopoulou, Luciano Sbaiz, Jamie Smith, Gábor Bartók, Jesse Berent,
Chris Harris, Vincent Vanhoucke, Eugene Brevdo}",
howpublished = {\url{https://github.com/tensorflow/agents}},
url = "https://github.com/tensorflow/agents",
year = 2018,
note = "[Online; accessed 25-June-2019]"
}
Disclaimer
This is not an official Google product.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Hashes for tf_agents_nightly-0.2.0.dev20191209-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6ecf25863945883d5845c9b9a1dcf2076e98d129c2abc842ec8f15aeb98b6144 |
|
MD5 | e841aa2f89e0ed81f664450c2412f029 |
|
BLAKE2b-256 | d3eb1c3dbef5f5ccf9c2b23acacd973787bcf7b0aaa2ff243916a656be1ca2c8 |