Skip to main content

Modular Single-file Reinfocement Learning Algorithms Library

Project description

abcdRL (Implement a RL algorithm in four simple steps)

English | 简体中文

license pytest pre-commit pypi docker autobuild docs Gitpod ready-to-code benchmark mirror repo Checked with mypy Code style: black Imports: isort python versions

abcdRL is a Modular Single-file Reinforcement Learning Algorithms Library that provides modular design without strict and clean single-file implementation.

When reading the code, understand the full implementation details of the algorithm in the single file quickly; When modifying the algorithm, benefiting from a lightweight modular design, only need to focus on a small number of modules.

abcdRL mainly references the single-file design philosophy of vwxyzjn/cleanrl and the module design of PaddlePaddle/PARL.

Documentation ➡️ docs.abcdrl.xyz

Roadmap🗺️ #57

🚀 Quickstart

Open the project in Gitpod🌐 and start coding immediately.

Open in Gitpod

Using Docker📦:

# 0. Prerequisites: Docker & Nvidia Drive & NVIDIA Container Toolkit
# 1. Run DQN algorithm
docker run --rm --gpus all sdpkjc/abcdrl python abcdrl/dqn.py

For detailed installation instructions 👀

🐼 Features

  • 👨‍👩‍👧‍👦 Unified code structure
  • 📄 Single-file implementation
  • 🐷 Low code reuse
  • 📐 Minimizing code differences
  • 📈 Tensorboard & Wandb support
  • 🛤 PEP8(code style) & PEP526(type hint) compliant

🗽 Design Philosophy

  • "Copy📋", not "Inheritance🧬"
  • "Single-file📜", not "Multi-file📚"
  • "Features reuse🛠", not "Algorithms reuse🖨"
  • "Unified logic🤖", not "Unified interface🔌"

✅ Implemented Algorithms

Weights & Biases Benchmark Report ➡️ report.abcdrl.xyz


Citing abcdRL

@misc{zhao_abcdrl_2022,
    author = {Yanxiao, Zhao},
    month = {12},
    title = {{abcdRL: Modular Single-file Reinforcement Learning Algorithms Library}},
    url = {https://github.com/sdpkjc/abcdrl},
    year = {2022}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

abcdrl-0.2.0a4.tar.gz (24.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

abcdrl-0.2.0a4-py3-none-any.whl (45.5 kB view details)

Uploaded Python 3

File details

Details for the file abcdrl-0.2.0a4.tar.gz.

File metadata

  • Download URL: abcdrl-0.2.0a4.tar.gz
  • Upload date:
  • Size: 24.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.1 CPython/3.9.15 Linux/5.15.0-1024-azure

File hashes

Hashes for abcdrl-0.2.0a4.tar.gz
Algorithm Hash digest
SHA256 4c52cbfc2cd0a294278fbcbfaf6faaa26d10c375f5471f4e36c5e0e6fa059878
MD5 05c6ea7b48c7a3fc65d23d60f5473d22
BLAKE2b-256 a3237c2dd2dd33e5a9c14c657f461db7b2cfaa81e633bccfe90571575fd276e9

See more details on using hashes here.

File details

Details for the file abcdrl-0.2.0a4-py3-none-any.whl.

File metadata

  • Download URL: abcdrl-0.2.0a4-py3-none-any.whl
  • Upload date:
  • Size: 45.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.1 CPython/3.9.15 Linux/5.15.0-1024-azure

File hashes

Hashes for abcdrl-0.2.0a4-py3-none-any.whl
Algorithm Hash digest
SHA256 ed0274b4ac92c20fc85c81258fe1a69afcf085f55917f2063cb5349de1762968
MD5 4e04a5d22f547f59157132897181498c
BLAKE2b-256 1094b819c3d72a88e8a12f57a97982eef0b308a91c0fcedd5580aed5435099a6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page