当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python SciPy optimize.golden用法及代码示例


本文简要介绍 python 语言中 scipy.optimize.golden 的用法。

用法:

scipy.optimize.golden(func, args=(), brack=None, tol=1.4901161193847656e-08, full_output=0, maxiter=5000)#

使用黄金分割法返回一个变量的函数的最小值。

给定一个由一个变量组成的函数和一个可能的括号区间,返回该函数的最小化值,该函数的小数精度为 tol。

参数

func 可调用函数(x,*args)

最小化的目标函数。

args 元组,可选

附加参数(如果存在),传递给 func。

brack 元组,可选

三元组 (xa, xb, xc) 其中 xa < xb < xcfunc(xb) < func(xa) and  func(xb) < func(xc) ,或一对 (xa, xb) 用作下坡括号搜索的初始点(请参阅 scipy.optimize.bracket )。最小化器 x 不一定满足 xa <= x <= xb

tol 浮点数,可选

x 公差停止标准

full_output 布尔型,可选

如果为真,则返回可选输出。

maxiter int

要执行的最大迭代次数。

返回

xmin ndarray

最佳点。

fval 浮点数

(可选输出)最优函数值。

funcalls int

(可选输出)进行的目标函数评估次数。

注意

使用二等分法的模拟来减少括号内的间隔。

例子

我们说明函数的行为布拉克大小分别为 2 和 3。在这种情况下布拉克的形式为 (xa,xb),我们可以看到对于给定的值,输出不一定位于范围内(xa, xb).

>>> def f(x):
...     return (x-1)**2
>>> from scipy import optimize
>>> minimizer = optimize.golden(f, brack=(1, 2))
>>> minimizer
1
>>> res = optimize.golden(f, brack=(-1, 0.5, 2), full_output=True)
>>> xmin, fval, funcalls = res
>>> f(xmin), fval
(9.925165290385052e-18, 9.925165290385052e-18)

相关用法


注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.optimize.golden。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。