Package linear_operators :: Package iterative :: Module optimize :: Class FminBFGS
[hide private]
[frames] | no frames]

Class FminBFGS

source code

 object --+    
          |    
FminWrapper --+
              |
             FminBFGS


Abstract class to generate wrappers around scipy.optimize fmin_*
functions.

Parameters
-----------

criterion : Criterion
    A criterion function with __call__ and gradient methods.
x0 : ndarray (None)
    First guess
args=() : tuple
    Extra arguments for the criterion function
kwargs : dict
    Parameters of the fmin_function

fmin function docstring
------------------------
Minimize a function using the BFGS algorithm.

Parameters
----------
f : callable f(x,*args)
    Objective function to be minimized.
x0 : ndarray
    Initial guess.
fprime : callable f'(x,*args)
    Gradient of f.
args : tuple
    Extra arguments passed to f and fprime.
gtol : float
    Gradient norm must be less than gtol before succesful termination.
norm : float
    Order of norm (Inf is max, -Inf is min)
epsilon : int or ndarray
    If fprime is approximated, use this value for the step size.
callback : callable
    An optional user-supplied function to call after each
    iteration.  Called as callback(xk), where xk is the
    current parameter vector.

Returns
-------
xopt : ndarray
    Parameters which minimize f, i.e. f(xopt) == fopt.
fopt : float
    Minimum value.
gopt : ndarray
    Value of gradient at minimum, f'(xopt), which should be near 0.
Bopt : ndarray
    Value of 1/f''(xopt), i.e. the inverse hessian matrix.
func_calls : int
    Number of function_calls made.
grad_calls : int
    Number of gradient calls made.
warnflag : integer
    1 : Maximum number of iterations exceeded.
    2 : Gradient and/or function calls not changing.
allvecs  :  list
    Results at each iteration.  Only returned if retall is True.

Other Parameters
----------------
maxiter : int
    Maximum number of iterations to perform.
full_output : bool
    If True,return fopt, func_calls, grad_calls, and warnflag
    in addition to xopt.
disp : bool
    Print convergence message if True.
retall : bool
    Return a list of results at each iteration if True.

Notes
-----
Optimize the function, f, whose gradient is given by fprime
using the quasi-Newton method of Broyden, Fletcher, Goldfarb,
and Shanno (BFGS) See Wright, and Nocedal 'Numerical
Optimization', 1999, pg. 198.

Instance Methods [hide private]
 
__call__(self) source code

Inherited from FminWrapper: __init__, first_guess

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __sizeof__, __str__, __subclasshook__

Class Variables [hide private]
  __doc__ = FminWrapper.__doc__+ opt.fmin_bfgs.__doc__
Properties [hide private]

Inherited from object: __class__