Skip to content
/ rl Public

Generic reinforcement learning codebase in TensorFlow

License

Notifications You must be signed in to change notification settings

for-ai/rl

Folders and files

NameName
Last commit message
Last commit date
Dec 11, 2019
Dec 20, 2019
Dec 20, 2019
Dec 11, 2019
Dec 11, 2019
Aug 5, 2019
Apr 3, 2019
Dec 16, 2019
Apr 3, 2019
Dec 20, 2019
Aug 1, 2019
Oct 4, 2019
Dec 11, 2019
Dec 20, 2019
Dec 20, 2019
Dec 11, 2019

Repository files navigation

FOR.ai Reinforcement Learning Codebase status DOI Build Status

Modular codebase for reinforcement learning models training, testing and visualization.

Contributors: Bryan M. Li, Alexander Cowen-Rivers, Piotr Kozakowski, David Tao, Siddhartha Rao Kamalakara, Nitarshan Rajkumar, Hariharan Sezhiyan, Sicong Huang, Aidan N. Gomez

Features

Example for recorded envrionment on various RL agents.

MountainCar-v0 Pendulum-v0 VideoPinball-v0 procgen-coinrun-v0
MountainCar-v0 Pendulum-v0 VideoPinball-v0 Tennis-v0

Requirements

It is recommended to install the codebase in a virtual environment (virtualenv or conda).

Quick install

Configure use_gpu and (if on OSX) mac_package_manager (either macports or homebrew) params in setup.sh, then run it as

sh setup.sh

Manual setup

You need to install the following for your system:

Quick Start

# start training
python train.py --sys ... --hparams ... --output_dir ...
# run tensorboard
tensorboard --logdir ...
# test agnet
python train.py --sys ... --hparams ... --output_dir ... --test_only --render

Hyper-parameters

Check available flags with --help, defaults.py for default hyper-parameters, and check hparams/dqn.py agent specific hyper-parameters examples.

  • hparams: Which hparams to use, defined under rl/hparams
  • sys: Which system environment to use.
  • env: Which RL environment to use.
  • output_dir: The directory for model checkpoints and TensorBoard summary.
  • train_steps:, Number of steps to train the agent.
  • test_episodes: Number of episodes to test the agent.
  • eval_episodes: Number of episodes to evaluate the agent.
  • test_only: Test agent without training.
  • copies: Number of independent training/testing runs to do.
  • render: Render game play.
  • record_video: Record game play.
  • num_workers, number of workers.

Documentation

More detailed documentation can be found here.

Contributing

We'd love to accept your contributions to this project. Please feel free to open an issue, or submit a pull request as necessary. Contact us [email protected] for potential collaborations and joining FOR.ai.