Hello WoRLd!!:hand: Join Our Reinforcement Learning framework for Developing Yours (JORLDY) is an open-source Reinforcement Learning (RL) framework provided by KakaoEnterprise. It is named after Jordy, one of the Kakao Niniz character. It provides various RL algorithms and environment and they can be easily used using single code. This repository is opened for helping RL researchers and students who study RL.
- 20+ RL Algorithms and various RL environment are provided
- Algorithms and environment are customizable
- New algorithms and environment can be added
- Distributed RL algorithms are provided using ray
- Benchmark of the algorithms is conducted in many RL environment
Python | Windows | Mac | Linux |
---|---|---|---|
3.8 3.7 |
Windows Server 2022 | macOS Big Sur 11 macOS Catalina 10.15 |
Ubuntu 20.04 Ubuntu 18.04 |
git clone https://github.com/kakaoenterprise/JORLDY.git
cd JORLDY
pip install -r requirements.txt
# linux
apt-get update
apt-get -y install libgl1-mesa-glx # for opencv
apt-get -y install libglib2.0-0 # for opencv
apt-get -y install gifsicle # for gif optimize
(customize if necessary)
cd JORLDY
docker pull jorldy/jorldy
# mac, linux
docker run -it --rm --name jorldy -v `pwd`:/JORLDY jorldy/jorldy /bin/bash
# windows
docker run -it --rm --name jorldy -v %cd%:/JORLDY jorldy/jorldy /bin/bash
- Atari and Super Mario Bros
atari and super-mario-bros need to be installed manually due to licensing issues
# To use atari(bash)
pip install --upgrade gym[atari,accept-rom-license]==0.23.0
# To use atari(zsh)
pip install --upgrade 'gym[atari,accept-rom-license]'==0.23.0
# To use super-mario-bros
pip install gym-super-mario-bros
- Mujoco (Mac and Linux only)
Mujoco is supported in docker. However, if you don't use docker, several subprocesses should be done. Please refer to the mujoco-py github installation
cd jorldy
# Examples: python main.py [run mode] --config [config path]
python main.py --config config.dqn.cartpole
python main.py --async --config config.ape_x.cartpole
# Examples: python main.py [run mode] --config [config path] --[optional parameter key] [parameter value]
python main.py --config config.rainbow.atari --env.name breakout
python main.py --sync --config config.ppo.cartpole --train.num_workers 8
Version | Release Date | Source | Release Note |
---|---|---|---|
0.5.0 | April 18, 2022 | Source | Release Note |
0.4.0 | April 01, 2022 | Source | Release Note |
0.3.0 | March 10, 2022 | Source | Release Note |
0.2.0 | January 23, 2022 | Source | Release Note |
0.1.0 | December 23, 2021 | Source | Release Note |
- How to use
- How to customize config
- How to customize agent
- How to customize environment
- How to customize network
- How to customize buffer
- Algorithm Descriptions
- Benchmark
- Distributed Architecture
- List of Contents
- Naming Convention
- Reference
- Role of Managers
📫 Contact: jorldy@kakaoenterprise.com
leonard.q (Kyushik Min) |
ramanuzan.lee (Hyunho Lee) |
kan.s (Kwansu Shin) |
erinn.lee (Taehak Lee) |
link.lee (Hojoon Lee) |
royce.choi (Jinwon Choi) |
crest.son (Sungho Son) |
lisa.ekkim (Eunkyeong Kim) |
@article{min2022jorldy,
title={JORLDY: a fully customizable open source framework for reinforcement learning},
author={Min, Kyushik and Lee, Hyunho and Shin, Kwansu and Lee, Taehak and Lee, Hojoon and Choi, Jinwon and Son, Sungho},
journal={arXiv preprint arXiv:2204.04892},
year={2022}
}
Installing in JORLDY and/or utilizing algorithms or environments not provided KEP may involve a use of third party’s intellectual property. It is advisable that a user obtain licenses or permissions from the right holder(s), if necessary, or take any other necessary measures to avoid infringement or misappropriation of third party’s intellectual property rights.