What is deep reinforcement learning?

Deep reinforcement learning is the combination of two fields:

  • Reinforcement learning (RL) is a theory that allows an agent to learn a startegy so as to maximize a sum of cumulated (delayed) rewards from any given environment. If you are not familiar with RL, you can get up to speed easily with the book by Sutton and Barto.
  • Deep learning is a branch of machine learning for regression and classification. It is particularly well suited to model high-level abstractions in data by using multiple processing layers composed of multiple non-linear transformations.

This combination allows to learn complex tasks such as playing ATARI games from high-dimensional sensory inputs. For more information, you can refer to this introduction to deep reinforcement learning.

How can I get started?

First, make sure you have installed the package properly by following the steps described in Installation.

The general idea of this framework is that you need to instantiate an agent (along with a learning algorithm) and an environment. In order to perform an experiment, you also need to attach to the agent some controllers for controlling the training and the various parameters of your agent.

The environment should be built specifically for any specific task while learning algorithms (such as q-networks) and many controllers are provided within this package.

The best to get started is to have a look at the Examples and in particular the two first environments that are simple to understand:

If you find something that is not yet implemented and if you wish to contribute, you can check the section Development.

Any Question?

You can raise questions about the DeeR project on github : https://github.com/VinF/deer/issues