GPyOpt

GPyOpt does this and that…

For details please refer to http://sheffieldml.github.io/GPyOpt/

Not sure why it is not showing the docstring and Args here below…?

class olympus.planners.Gpyopt(*args, **kwargs)[source]

Gaussian Process optimization as implemented in GPyOpt.

Parameters
  • goal (str) – The optimization goal, either ‘minimize’ or ‘maximize’. Default is ‘minimize’.

  • batch_size (int) – size of the batch in which the objective is evaluated.

  • exact_eval (bool) – whether the outputs are exact.

  • model_type (str) – type of model to use as surrogate. ‘GP’: standard Gaussian process. ‘GP_MCMC’: Gaussian process with prior in the hyper-parameters. ‘sparseGP’: sparse Gaussian process. ‘warperdGP’: warped Gaussian process. ‘InputWarpedGP’: input warped Gaussian process. ‘RF’: random forest (scikit-learn).

  • acquisition_type (str) – type of acquisition function to use. ‘EI’: expected improvement. ‘EI_MCMC’: integrated expected improvement (requires GP_MCMC model). ‘MPI’: maximum probability of improvement. ‘MPI_MCMC’: maximum probability of improvement (requires GP_MCMC model). ‘LCB’: GP-Lower confidence bound. ‘LCB_MCMC’: integrated GP-Lower confidence bound (requires GP_MCMC model).

Methods

tell([observations])

Provide the planner with all previous observations.

ask([return_as])

suggest new set of parameters

recommend([observations, return_as])

Consecutively executes tell and ask: tell the planner about all previous observations, and ask about the next query point.

optimize(emulator[, num_iter, verbose])

Optimizes a surface for a fixed number of iterations.

set_param_space(param_space)

Defines the parameter space over which the planner will search.