Skip to main content

A Python package for modular implementation of classical and deep Reinforcement Learning algorithms.

Project description

modrl

RL Course Language: Python License: MIT

The motivation behind modrl

Modular Reinforcement Learning Framework — Unlike many RL libraries that run monolithic end-to-end experiments, modrl emphasizes modularity. Its components—such as modrl.agents, modrl.bandits, and modrl.policies—are designed to be interchangeable, enabling users to mix, match, and customize elements for their own research or teaching use cases.

Seamless gymnasium Integrationmodrl is fully compatible with the OpenAI gymnasium API, making it straightforward to test algorithms across a wide range of established environments.

Educational Alignment — Every algorithm implementation in modrl is directly tied to specific chapters in the Reinforcement Learning Quarto book, making it a hands-on learning tool for students and instructors alike.

Designed for Research and Experimentation — The library’s modular design facilitates rapid prototyping and experimentation, supporting both academic research and practical exploration of new algorithmic ideas.

Open Source and Community-Drivenmodrl welcomes open source contributions, encouraging collaboration to expand functionality, improve documentation, and advance the broader reinforcement learning ecosystem.

How to install modrl?

Run the following pip command:

pip install modrl

modrl repository structure

Version 0.0.1 (Demo):

.
├── __init__.py
├── bandits
│   ├── classical
│      └── egreedy.py
│   └── contextual
└── evaluation
    └── regret.py

Version 0.0.2:

.
├── __init__.py
├── agents
│   ├── classical
│      ├── onp-monte-carlo.py # available but not implemented yet      ├── offp-monte-carlo.py # available but not implemented yet      ├── td-sarsa.py # available but not implemented yet      ├── td-q.py # available but not implemented yet      ├── td-doubleq.py # available but not implemented yet      ├── n-offp-sarsa.py # available but not implemented yet      └── n-tree.py # available but not implemented yet   └── deep
│       ├── semi-gradient-sarsa.py # available but not implemented yet       ├── dqn.py # available but not implemented yet       ├── vpg.py # available but not implemented yet       └── ppo.py # available but not implemented yet
├── bandits
│   ├── classical
│      ├── epsilon-greedy.py       ├── ucb.py # available but not implemented yet      ├── thompson-sampling.py # available but not implemented yet      ├── gradient-bandit.py # available but not implemented yet      └── exp3.py # available but not implemented yet   └── contextual
│       └── linucb.py # available but not implemented yet
├── evaluation
│   ├── regret.py
│   └── cum-rew.py # available but not implemented yet
├── nn
│   ├── mlp.py # available but not implemented yet   └── cnn.py # available but not implemented yet
├── policies
│   ├── softmax.py # available but not implemented yet   └── e-soft.py # available but not implemented yet
└── utils
    ├── replay-buffer.py # available but not implemented yet
    └── epsilon-scheduler.py # available but not implemented yet

Requirements

pip install requirements.txt

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

modrl-0.0.2.tar.gz (7.8 kB view details)

Uploaded Source

Built Distribution

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

modrl-0.0.2-py3-none-any.whl (9.0 kB view details)

Uploaded Python 3

File details

Details for the file modrl-0.0.2.tar.gz.

File metadata

  • Download URL: modrl-0.0.2.tar.gz
  • Upload date:
  • Size: 7.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for modrl-0.0.2.tar.gz
Algorithm Hash digest
SHA256 dc56250c6609572537885048694ae05a42115ce264f43815add55c26fecdd3e3
MD5 cda13b5c414e34909f215d80d5a78974
BLAKE2b-256 b59f4fe43dc1327d6f38e8f625871d07ed37ca5d839e6bf93231104dd278a699

See more details on using hashes here.

File details

Details for the file modrl-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: modrl-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 9.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for modrl-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 b45b0068571694b6a5daa94626a7946dc28f40c58782ea8380aef87e5c326bf1
MD5 a98b13138c79b93c12d94269b3e84171
BLAKE2b-256 9b00b1b47f890066b102e22dfbc8375a8e1e4d2111a7296cb349ebdbfa6425c4

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