Skip to main content

A reinforcement learning module

Project description

Build Status Coverage Status PyPI version

Reinforcement

The Reinforcement module aims to provide simple implementations for various reinforcement learning algorithms. The module tries to be agnostic about its use cases but implements different solutions for policy selection, value- and q-function approximations as well as different agents for reinforcement learning algorithms.

The project is in its early stage and currently only provides an n-step temporal difference learning agent. The main purpose of the project is to facilitate my own understanding of reinforcement learning, with no particular application in mind.

Installation

The library can simply be installed using pip:

pip install reinforcement

Module structure

The module is organised into 3 main parts. Policies, reward functions and agents, each providing necessary components to construct a reinforcement learning agent. Components should have a low dependency amongst each other and share a simple common interface to facilitate modular construction of agents.

Agents

This module contains the actual agents implementing the reinforcement learning algorithm using a policy component and a reward function component. Currently, only an n-step temporal difference agent is implemented.

Policies

This module contains action selection policies used by reinforcement learning agents. Available policies: epsilon-greedy; normalized epsilon-greedy.

Reward Functions

This module contains implementations of reward functions, which are used by reinforcement learning agents. Available reward functions: value table, q table, q neural network

Models

Reinforcement also contains neural network implementation which can be used as non-linear reward function approximations. Currently, there are 2 regression models implemented, one using Keras and one using pure Tensorflow.

Architecture

This software is crafted using Test Driven Development and tries to adhere to the SOLID principle as far as it lies in the abilities of the author.

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

reinforcement-1.1.2.tar.gz (7.8 kB view hashes)

Uploaded Source

Built Distribution

reinforcement-1.1.2-py3-none-any.whl (11.8 kB view hashes)

Uploaded Python 3

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