ampgo¶
-
SeparableModelResult.
ampgo
(params=None, **kws) Find the global minimum of a multivariate function using AMPGO.
AMPGO stands for ‘Adaptive Memory Programming for Global Optimization’ and is an efficient algorithm to find the global minimum.
Parameters: - params (
Parameters
, optional) – Contains the Parameters for the model. If None, then the Parameters used to initialize the Minimizer object are used. - **kws (dict, optional) –
Minimizer options to pass to the ampgo algorithm, the options are listed below:
local: str (default is 'L-BFGS-B') Name of the local minimization method. Valid options are: - 'L-BFGS-B' - 'Nelder-Mead' - 'Powell' - 'TNC' - 'SLSQP' local_opts: dict (default is None) Options to pass to the local minimizer. maxfunevals: int (default is None) Maximum number of function evaluations. If None, the optimization will stop after `totaliter` number of iterations. totaliter: int (default is 20) Maximum number of global iterations. maxiter: int (default is 5) Maximum number of `Tabu Tunneling` iterations during each global iteration. glbtol: float (default is 1e-5) Tolerance whether or not to accept a solution after a tunneling phase. eps1: float (default is 0.02) Constant used to define an aspiration value for the objective function during the Tunneling phase. eps2: float (default is 0.1) Perturbation factor used to move away from the latest local minimum at the start of a Tunneling phase. tabulistsize: int (default is 5) Size of the (circular) tabu search list. tabustrategy: str (default is 'farthest') Strategy to use when the size of the tabu list exceeds `tabulistsize`. It can be 'oldest' to drop the oldest point from the tabu list or 'farthest' to drop the element farthest from the last local minimum found. disp: bool (default is False) Set to True to print convergence messages.
Returns: Object containing the parameters from the ampgo method, with fit parameters, statistics and such. The return values (x0, fval, eval, msg, tunnel) are stored as ampgo_<parname> attributes.
Return type: MinimizerResult
New in version 0.9.10.
Notes
The Python implementation was written by Andrea Gavana in 2014 (http://infinity77.net/global_optimization/index.html).
The details of the AMPGO algorithm are described in the paper “Adaptive Memory Programming for Constrained Global Optimization” located here:
- params (