A modern & clean implementation of the PILCO Algorithm in TensorFlow
.
Unlike PILCO's original implementation which was written as a self-contained package of MATLAB
, this repository aims to provide a clean implementation by heavy use of modern machine learning libraries.
In particular, we use TensorFlow
to avoid the need for hardcoded gradients and scale to GPU architectures. Moreover, we use GPflow
for Gaussian Process Regression.
The core functionality is tested against the original MATLAB
implementation.
First install the package by running:
python setup.py develop
Then you can run the example of using PILCO in OpenAI gym
by running
python examples/inverted_pendulum.py
The following people have been involved in the development of this package:
- Nikitas Rontsis
- Kyriakos Polymenakos
See the following publications for a description of the algorithm: 1, 2, 3