scipy.optimize.fminbound¶
-
scipy.optimize.
fminbound
(func, x1, x2, args=(), xtol=1e-05, maxfun=500, full_output=0, disp=1)[source]¶ Bounded minimization for scalar functions.
Parameters: func : callable f(x,*args)
Objective function to be minimized (must accept and return scalars).
x1, x2 : float or array scalar
The optimization bounds.
args : tuple, optional
Extra arguments passed to function.
xtol : float, optional
The convergence tolerance.
maxfun : int, optional
Maximum number of function evaluations allowed.
full_output : bool, optional
If True, return optional outputs.
disp : int, optional
- If non-zero, print messages.
0 : no message printing. 1 : non-convergence notification messages only. 2 : print a message on convergence too. 3 : print iteration results.
Returns: xopt : ndarray
Parameters (over given interval) which minimize the objective function.
fval : number
The function value at the minimum point.
ierr : int
An error flag (0 if converged, 1 if maximum number of function calls reached).
numfunc : int
The number of function calls made.
See also
minimize_scalar
- Interface to minimization algorithms for scalar univariate functions. See the ‘Bounded’ method in particular.
Notes
Finds a local minimizer of the scalar function func in the interval x1 < xopt < x2 using Brent’s method. (See
brent
for auto-bracketing).Examples
fminbound
finds the minimum of the function in the given range. The following examples illustrate the same>>> def f(x): ... return x**2
>>> from scipy import optimize
>>> minimum = optimize.fminbound(f, -1, 2) >>> minimum 0.0 >>> minimum = optimize.fminbound(f, 1, 2) >>> minimum 1.0000059608609866