A modern implementation of PILCO based on GPflow. This package focuses on model-based reinforcement learning with Gaussian processes. Alongside GPflowSampling, this code is intended as a companion for the paper Pathwise Conditioning of Gaussian Processes.
Module | Description |
---|---|
components |
Miscellania such as objective functions and state encoders |
dynamics |
Generic classes for working with dynamical systems |
envs |
Various enviroments based on Gym |
loops |
High-level algorithm suites, such as variants of PILCO |
models |
Gaussian processes and associated methods |
moment_matching |
Compute the moments of, e.g., nonlinear functions of Gaussian rvs |
utils |
Assorted utility methods |
git clone git@github.com:j-wilson/GPflowPILCO.git
cd GPflowPILCO
pip install .
Note that this package relies on GPflowSampling, which should be installed first.
Code for experiments discussed in Section 7.4 of Pathwise Conditioning of Gaussian Processes is provided in examples/cartpole_swingup
.
If our work helps you in a way that you feel warrants reference, please cite the following paper:
@article{wilson2021pathwise,
title={Pathwise Conditioning of Gaussian Processes},
author={James T. Wilson
and Viacheslav Borovitskiy
and Alexander Terenin
and Peter Mostowsky
and Marc Peter Deisenroth},
booktitle={Journal of Machine Learning Research},
year={2021},
url={https://arxiv.org/abs/2002.09309}
}