Yet Another Reinforcement Learning Library.
Status: development.
I had the need for a RL library/framework that:
- was clearly and simply implemented, with good enough performances;
- highly focused on modularity, customizability and extendability;
- wasn't merely Deep Reinforcement Learning oriented.
I couldn't find an existing library that satisfied my needs; hence I decided to implement yet another RL library.
For me it is also an opportunity to have a better understanding of the RL algorithms and to appreciate the nuances that you can't find on a book.
If you find this repo useful for your research or your project, I'd be very glad :-) don't hesitate to reach me out!
The package is both:
- a library, because it provides off-the-shelf functionalities to set up an RL experiment;
- a framework, because you can compose your custom model by implementing the interfaces, override the default behaviours, or use the existing components as-is.
You can find more details in the documentation.
To run tests: tox
To run only the code tests: tox -e py3.7
To run only the linters:
tox -e flake8
tox -e mypy
tox -e black-check
tox -e isort-check
Please look at the tox.ini
file for the full list of supported commands.
To build the docs: mkdocs build
To view documentation in a browser: mkdocs serve
and then go to http://localhost:8000
yarllib is released under the GNU Lesser General Public License v3.0 or later (LGPLv3+).
Copyright 2020 Marco Favorito
If you use this library for your research, please consider citing this repository:
@misc{favorito2020,
Author = {Marco Favorito},
Title = {yarllib: Yet Another Reinforcement Learning Library},
Year = {2020},
}
An e-print will come soon :-)