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

Demo:

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

Version 0.0.1:

.
├── __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.1.tar.gz (2.9 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.1-py3-none-any.whl (2.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: modrl-0.0.1.tar.gz
  • Upload date:
  • Size: 2.9 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.1.tar.gz
Algorithm Hash digest
SHA256 312a59f6f61e7145cae948fa965fb54a2ca9fcbbd3dc6085528649db49fa99d7
MD5 b9bb94ea60b1de9aa9c10971ab0974cc
BLAKE2b-256 72b227426921fd83397ab068d8efd356fd3dd8717e6a1e4b96aa189b62a22c11

See more details on using hashes here.

File details

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

File metadata

  • Download URL: modrl-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 2.8 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8f90baee2a53b07557ba45d2741cf2137b5a392caf70c9c0c4ae2a511da28070
MD5 1c1781965c70fffe7df0a062c72d355e
BLAKE2b-256 500875c9312c1ff7b69d1330401265b671c4dc2f4e37d000e0ad9d6b7e641c98

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