您的位置:首页 > 编程语言 > MATLAB

matlab fminbnd 寻找区域极值

2011-06-21 22:13 246 查看
fminbnd

进行有约束的一元函数最小值求解。它的求解命令是:

X = FMINBND(FUN,x1,x2),FUN
是目标函数,可以为表达式字符串或MATLAB自定义函数的函数柄,要求解在约束 x1 <= X
<= x2下的最优解X*。

还有其他一些求解命令是:

x = fminbnd(fun,x1,x2,options) %
options为指定优化参数选项,由OPTIMSET设定

[x,fval] = fminbnd(…) % fval为目标函数的最小值

[x,fval,exitflag] = fminbnd(…) %exitflag为终止迭代的原因

[x,fval,exitflag,output] = fminbnd(…) %
output为优化信息

说明:若参数exitflag>0,表示函数收敛于x,若exitflag=0,表示达到了最大迭代次数,exitflag<0表示函数不收
敛于x;若参数output=iterations表示迭代次数,output=funccount表示函数赋值次数,output=algorithm
表示所使用的算法。

例子:要求解f(x)=x3-2x-5在(0,2)之间最优解,求解命令如下:

f = @(x)x.^3-2*x-5;

x = fminbnd(f, 0, 2);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: