主要内容

fminbnd

描述

例子

全部崩溃

输入参数

全部崩溃

要最小化的函数,指定为函数句柄或函数名。享乐是一个接受实数标量的函数x并返回一个实标量F(目标函数在x).

具体说明享乐作为文件的函数句柄:

x=fminbnd(@myfun,x1,x2)

哪里我的乐趣是一个MATLAB®等功能

函数f=myfun(x)f=…%计算x处的函数值

您还可以指定享乐作为匿名函数的函数句柄:

x=fminbnd(@(x)范数(x)^2,x1,x2);

例子:乐趣=@(x)-x*exp(-3*x)

数据类型:字符|功能手柄|一串

下限,指定为有限实标量。

例子:x1=-3

数据类型:双重的

上界,指定为有限实标量。

例子:x2=5

数据类型:双重的

优化选项,指定为结构,例如优化集返回。你可以用优化集设置或更改选项结构中这些字段的值。请参阅设置优化选项有关详细信息。

陈列

显示水平(见优化求解器迭代显示):

  • “通知”(默认)仅在函数不收敛时显示输出。

  • “关”“没有”显示没有输出。

  • “国际热核实验堆”显示每次迭代的输出。

  • “决赛”仅显示最终输出。

欢乐支票

检查目标函数值是否有效。默认值为“关”允许fminbnd当目标函数返回值为复杂的.这个“开”当目标函数返回的值为复杂的

MaxFunEvals

允许的最大函数求值数,为正整数。默认值为500.看到公差和停止标准.

麦克斯特

允许的最大迭代次数,为正整数。默认值是500.看到公差和停止标准.

输出FCN

指定优化函数在每次迭代时调用的一个或多个用户定义函数,作为函数句柄或函数句柄的单元格数组。默认为none ([]).看优化解算器输出函数.

绘图仪

在算法执行时绘制各种进度度量,从预定义的绘图中选择或编写自己的绘图。传递函数句柄或函数句柄的单元格数组。默认值为“无”([]).

  • @optimplotx绘制当前点

  • @optimplotfunccount绘制函数计数

  • @最佳双翼绘制函数值

有关编写自定义打印函数的信息,请参见优化求解器Plot函数.

收费

端接公差x,一个正标量。默认值为1e-4.看到公差和停止标准.

例子:options=optimset('Display','iter'))

数据类型:结构

问题结构,指定为具有以下字段的结构。

字段名 进入

客观的

目标函数

x1

左端点

x2

右端点

解算器

“fminbnd”

选择权

选项结构,如返回的优化集

数据类型:结构

输出参数

全部崩溃

解的目标函数值,以实数返回。通常,未来值=乐趣(x)

原因fminbnd已停止,作为整数返回。

1.

函数收敛到一个解x

0

超过迭代次数选项.MaxIter或超出功能评估的数量options.MaxFunEvals

-1

被输出函数或绘图函数停止。

-2

界限不一致,意思是x1 > x2

有关优化过程的信息,作为带字段的结构返回:

迭代

迭代次数

功能计数

功能评估的数量

算法

“黄金分割搜索,抛物线插值”

消息

退出消息

局限性

  • 要最小化的函数必须是连续的。

  • fminbnd可能只提供本地解决方案。金宝搏官方网站

  • fminbnd当解在区间的边界上时,可以表现出缓慢的收敛。

算法

fminbnd是一个函数文件。该算法基于黄金分割搜索和抛物线插值。除非左端点x1.非常接近正确的终点吗x2.,fminbnd从不评估享乐在端点,所以享乐只需要为x中间x1.<x<x2.

如果最小值实际上发生在x1.x2.,fminbnd返回一个点x在区间的内部(x1.,x2.)这接近于最小值,在这种情况下x从最小值来看,不超过2*(通行费+3*abs(x)*平方米(eps)).看到[1]或[2]具体算法说明。

参考文献

[1] 福赛斯,G.E.,M.A.马尔科姆和C.B.莫勒。数学计算的计算机方法恩格尔伍德悬崖,新泽西州:普伦蒂斯大厅,1976年。

[2] 布伦特,理查德。无导数极小化算法恩格尔伍德悬崖,新泽西州:普伦蒂斯大厅,1973年。

扩展能力

在R2006a之前引入