Skip to main content

An easy-to-use reinforcement learning library for research and education

Project description

A Reinforcement Learning Library for Research and Education

pytest Documentation Status contributors Codacy codecov

Try it on Google Colab! Open In Colab


What is rlberry?

Writing reinforcement learning algorithms is fun! But after the fun, we have lots of boring things to implement: run our agents in parallel, average and plot results, optimize hyperparameters, compare to baselines, create tricky environments etc etc!

rlberry is a Python library that makes your life easier by doing all these things with a few lines of code, so that you can spend most of your time developing agents. rlberry also provides implementations of several RL agents, benchmark environments and many other useful tools.

Installation

Install the latest version for a stable release.

pip install -U git+https://github.com/rlberry-py/rlberry.git@v0.3.0#egg=rlberry[default]

The documentation includes more installation instructions in particular for users that work with Jax.

Getting started

In our documentation, you will find quick starts to the library and a user guide with a few tutorials on using rlberry.

Also, we provide a handful of notebooks on Google colab as examples to show you how to use rlberry:

Content Description Link
Introduction to rlberry How to create an agent, optimize its hyperparameters and compare to a baseline. Open In Colab
Evaluating and optimizing agents Train a REINFORCE agent and optimize its hyperparameters Open In Colab

Changelog

See the changelog for a history of the chages made to rlberry.

Citing rlberry

If you use rlberry in scientific publications, we would appreciate citations using the following Bibtex entry:

@misc{rlberry,
    author = {Domingues, Omar Darwiche and Flet-Berliac, Yannis and Leurent, Edouard and M{\'e}nard, Pierre and Shang, Xuedong and Valko, Michal},
    doi = {10.5281/zenodo.5544540},
    month = {10},
    title = {{rlberry - A Reinforcement Learning Library for Research and Education}},
    url = {https://github.com/rlberry-py/rlberry},
    year = {2021}
}

Development notes

The modules listed below are experimental at the moment, that is, they are not thoroughly tested and are susceptible to evolve.

  • rlberry.network: Allows communication between a server and client via sockets, and can be used to run agents remotely.

  • rlberry.agents.torch, rlberry.agents.jax, rlberry.exploration_tools.torch: Deep RL agents are currently not stable, and their main purpose now is to illustrate how to implement and run those algorithms with the rlberry interface (e.g., run several agents in parallel, optimize hyperparameters etc.). Other libraries, such as Stable Baselines provide reliable implementations of deep RL algorithms, and can be used with rlberry, as shown by this example.

Contributing

Want to contribute to rlberry? Please check our contribution guidelines. If you want to add any new agents or environments, do not hesitate to open an issue!

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

rlberry-0.3.0.tar.gz (193.1 kB view details)

Uploaded Source

Built Distribution

rlberry-0.3.0-py3-none-any.whl (277.0 kB view details)

Uploaded Python 3

File details

Details for the file rlberry-0.3.0.tar.gz.

File metadata

  • Download URL: rlberry-0.3.0.tar.gz
  • Upload date:
  • Size: 193.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.4

File hashes

Hashes for rlberry-0.3.0.tar.gz
Algorithm Hash digest
SHA256 a34ed8aaf7a72c9ab502860eae132f3d2bd47f46ad303752320863dbe70dfb67
MD5 0ad12c3c9a8765afced51a8929179938
BLAKE2b-256 4bdad3546f6e356bf267f2e3c63ee9808a9fcb7bfd41dbc2da02d867c1226b7d

See more details on using hashes here.

Provenance

File details

Details for the file rlberry-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: rlberry-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 277.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.4

File hashes

Hashes for rlberry-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8e7321a1c68dcdd5900cb2952355aec4150dd727f4f3ab48066e60b3650eead8
MD5 36181a5d61730770c1190f6f8eb239b8
BLAKE2b-256 1028d39ed1996198b2b1c75c0c8f1ddb5380a21f27807da094afbb7827a23f2c

See more details on using hashes here.

Provenance

Supported by

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