rlmeta - a flexible lightweight research framework for Distributed
Reinforcement Learning based on PyTorch
and
moolib
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 .
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.
rlmeta is licensed under the MIT License. See LICENSE
for details.