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);

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐