README.md 2.51 KB
Newer Older
1
limbo [![Build Status]https://travis-ci.org/resibots/limbo.svg?branch=master)](https://travis-ci.org/resibots/limbo)
JB Mouret's avatar
JB Mouret committed
2
3
=====

Jean-Baptiste Mouret's avatar
Jean-Baptiste Mouret committed
4
5
A lightweight framework for Bayesian and model-based optimisation of black-box functions (C++11).

JB Mouret's avatar
JB Mouret committed
6
7
Documentation
-------------
JB Mouret's avatar
JB Mouret committed
8
Documentation is available here: http://www.resibots.eu/limbo
JB Mouret's avatar
JB Mouret committed
9
10


Jean-Baptiste Mouret's avatar
Jean-Baptiste Mouret committed
11
12
Authors
------
JB Mouret's avatar
JB Mouret committed
13
14
15
- Antoine Cully (Imperial College): http://www.isir.upmc.fr/?op=view_profil&lang=fr&id=278
- Jean-Baptiste Mouret (Inria): http://pages.isir.upmc.fr/~mouret/website/
- Konstantinos Chatzilygeroudis (Inria)
JB Mouret's avatar
JB Mouret committed
16
- Federico Allocati (Inria)
JB Mouret's avatar
JB Mouret committed
17

Jean-Baptiste Mouret's avatar
Jean-Baptiste Mouret committed
18
19
20
21
22
Main features
-------------
- Bayesian optimisation based on Gaussian processes
- Generic framework (template-based), which allows easy customization for testing original ideas
- Can exploit multicore computers
JB Mouret's avatar
JB Mouret committed
23
- Experimental support for some multi-objective algorithms
Jean-Baptiste Mouret's avatar
Jean-Baptiste Mouret committed
24
25
26
27

Main references
---------------

Jean-Baptiste Mouret's avatar
Jean-Baptiste Mouret committed
28
- **General introduction:** Brochu, E., Cora, V. M., & De Freitas, N. (2010). A tutorial on Bayesian optimization of expensive cost functions, with application to active user modeling and hierarchical reinforcement learning. *arXiv preprint arXiv:1012.2599*.
Jean-Baptiste Mouret's avatar
Jean-Baptiste Mouret committed
29

30
- **Gaussian Processes (GP)**: Rasmussen, C. A, Williams C. K. I. (2006). /Gaussian Processes for Machine Learning./ MIT Press.
Jean-Baptiste Mouret's avatar
Jean-Baptiste Mouret committed
31

Jean-Baptiste Mouret's avatar
Jean-Baptiste Mouret committed
32
- **Optimizing hyperparameters:** Blum, M., & Riedmiller, M. (2013). Optimization of Gaussian Process Hyperparameters using Rprop. In *European Symposium on Artificial Neural Networks, Computational Intelligence and Machine Learning*.
Jean-Baptiste Mouret's avatar
Jean-Baptiste Mouret committed
33

Jean-Baptiste Mouret's avatar
Jean-Baptiste Mouret committed
34
- **Parego (Multi-objective optimization):** Knowles, J. (2006). ParEGO: A hybrid algorithm with on-line landscape approximation for expensive multiobjective optimization problems. *Evolutionary Computation, IEEE Transactions on*, 10(1), 50-66.
Jean-Baptiste Mouret's avatar
Jean-Baptiste Mouret committed
35

Jean-Baptiste Mouret's avatar
Jean-Baptiste Mouret committed
36
37
38
39
- **CMA-ES (inner optimization):** Auger, A., & Hansen, N. (2005). A restart CMA evolution strategy with increasing population size. In *Evolutionary Computation, 2005. The 2005 IEEE Congress on* (Vol. 2, pp. 1769-1776). IEEE.

- **Expected hypervolume improvement (multi-objective optimization):** Hupkens, I., Emmerich, M. T. M., Deutz A. H. (2014). Faster Computation of Expected Hypervolume Improvement. arXiv: http://arxiv.org/abs/1408.7114

Jean-Baptiste Mouret's avatar
Jean-Baptiste Mouret committed
40

Jean-Baptiste Mouret's avatar
Jean-Baptiste Mouret committed
41
42
43
44
45
46
Other libraries
---------------
Limbo is a framework for our research that is voluntarily kept small. It is designed to be very fast and flexible, but it does not aim at covering every possible use case for Bayesian optimization.

If you need a more full-featured library, check:
- BayesOpt: http://rmcantin.bitbucket.org/html/
47
- libGP (no optimization): https://github.com/mblum/libgp