/multi-armed-bandits-testbed

Multi amred bandits testbed

Primary LanguagePythonMIT LicenseMIT

CircleCI Black

Output sample

Multi armed bandit

An implementation of a range of epsilon-greedy algorithms to solve the multi-armed bandits problem.

Install

  • Clone the repo locally:
git clone git@github.com:SebastianoF/multi-armed-bandits-testbed.git
cd multi-armed-bandits-testbed
virtualenv -p python3.9 venv
source venv/bin/activate

The library is tested with python 3.9, 3.10, 3.11. Could work with previous version downgrading manually numpy to a compatible version.

pip install -e .
  • To install the development third party requirement packages along with the basic ones:
pip install -e .["dev"]

Where to start

Check out the examples in the folder /examples/start_here.py.

Development

  • Dependent libraries are managed with pip-compile-multi
  • Continuous integration is integrated with CircleCI
  • Code formatting happens via makefile command make reformat, after installing the dev packages.

Resources

  • R. Sutton, A. Barto, "Reinforcement Learning, an introduction", Chapter 1.

  • Further introduction can be found in the folder /docs/

Licence

Repository open-sourced under MIT licence.