Installation
If you already have Python installed on your computer, you can install RLForge with:
pip install rlforge
This will download and install the latest stable release of rlforge available in the
Python Package Index.
Requirements
RLForge works with Python 3.10 or later and depends on:
NumPy (numerical computations)
tqdm (progress bars)
Gymnasium (environments)
Matplotlib (plotting)
Installing with pip will automatically download these dependencies if they are not
already present in your workspace.
Optional Dependencies
RLForge also provides optional support for PyTorch. If you want to run agents that
use deep neural networks implemented in PyTorch, install RLForge with the torch extra:
pip install rlforge[torch]
or install all optional dependencies with:
pip install rlforge[all]
This will install:
torch (>=2.9.0)
PyTorch is required for the following agents:
DQNTorchAgent — Deep Q-Networks implemented in PyTorch.
DDPGAgent — Deep Deterministic Policy Gradient.
TD3Agent — Twin Delayed Deep Deterministic Policy Gradient.
SACAgent — Soft Actor-Critic.
PPODiscrete — Proximal Policy Optimization for discrete action spaces.
PPOContinuous — Proximal Policy Optimization for continuous action spaces.
If you only plan to use tabular or NumPy-based agents, you can install RLForge without
the torch extra.
Package Metadata
For reference, RLForge’s pyproject.toml specifies:
[build-system]
requires = ["setuptools>=80.9"]
build-backend = "setuptools.build_meta"
[project]
name = "rlforge"
version = "1.0.2"
authors = [
{ name="Alejandro Toro-Ossaba", email="alejotoro.o@gmail.com" },
]
description = "Reinforcement Learning for Everyone."
readme = "README.md"
requires-python = ">=3.10"
classifiers = [
"Programming Language :: Python :: 3",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
]
keywords = ["reinforcement learning", "machine learning"]
license = {file = "LICENSE"}
dependencies = [
"numpy>=2.3.4",
"tqdm>=4.67.1",
"gymnasium>=1.2.2",
"matplotlib>=3.10.7",
]
[project.optional-dependencies]
torch = [
"torch>=2.9.0",
]
all = [
"torch>=2.9.0",
]
[project.urls]
"Homepage" = "https://github.com/alejotoro-o/rlforge"
"Documentation" = "https://rlforge.readthedocs.io/"
"Repository" = "https://github.com/alejotoro-o/rlforge"
"Bug Tracker" = "https://github.com/alejotoro-o/rlforge/issues"