A Python package for modular implementation of classical and deep Reinforcement Learning algorithms.
Project description
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 Integration — modrl 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-Driven — modrl 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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
312a59f6f61e7145cae948fa965fb54a2ca9fcbbd3dc6085528649db49fa99d7
|
|
| MD5 |
b9bb94ea60b1de9aa9c10971ab0974cc
|
|
| BLAKE2b-256 |
72b227426921fd83397ab068d8efd356fd3dd8717e6a1e4b96aa189b62a22c11
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8f90baee2a53b07557ba45d2741cf2137b5a392caf70c9c0c4ae2a511da28070
|
|
| MD5 |
1c1781965c70fffe7df0a062c72d355e
|
|
| BLAKE2b-256 |
500875c9312c1ff7b69d1330401265b671c4dc2f4e37d000e0ad9d6b7e641c98
|