Skip to content

RLMeta is a light-weight flexible framework for Distributed Reinforcement Learning Research.

License

Notifications You must be signed in to change notification settings

cuijiaxun/rlmeta

 
 

Repository files navigation

RLMeta

rlmeta - a flexible lightweight research framework for Distributed Reinforcement Learning based on PyTorch and moolib

Installation

To build from source, please install PyTorch first, and then run the commands below.

$ git clone https://github.com/cuijiaxun/rlmeta
$ cd rlmeta
$ git checkout marl
$ git submodule sync && git submodule update --init --recursive
$ pip install -e .

Run an Example

To run the example for Atari Pong game with PPO algorithm:

$ cd examples/atari/ppo
$ python atari_ppo.py env="PongNoFrameskip-v4" num_epochs=20

We are using hydra to define configs for trainining jobs. The configs are defined in

./conf/conf_ppo.yaml

The logs and checkpoints will be automatically saved to

./outputs/{YYYY-mm-dd}/{HH:MM:SS}/

After training, we can draw the training curve by run

$ python ../../plot.py --log_file=./outputs/{YYYY-mm-dd}/{HH:MM:SS}/atari_ppo.log --fig_file=./atari_ppo.png --xkey=time

One example of the training curve is shown below.

atari_ppo

License

rlmeta is licensed under the MIT License. See LICENSE for details.

About

RLMeta is a light-weight flexible framework for Distributed Reinforcement Learning Research.

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 63.0%
  • C++ 36.3%
  • CMake 0.7%