Skip to content
master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
gif
 
 
rl
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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 team@for.ai for potential collaborations and joining FOR.ai.