Skip to content

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

License

Notifications You must be signed in to change notification settings

riccardodv/rlberry

 
 

Repository files navigation

A Reinforcement Learning Library for Research and Education

Python Version pytest Documentation Status contributors 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 rlberry

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.experimental: Experimental agents that are not thoroughly tested.

About us

This project was initiated and is actively maintained by INRIA SCOOL team. More information here.

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!

About

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

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 99.7%
  • Shell 0.3%