matlab中options,[转载]Matlab优化函数中options选项的修改

通常在使用Matlab优化工具箱中的函数时,需要根据不同要求修改优化选项,例如最大迭代次数、x处的终止容限等等。可通过 optimset 语句来修改优化选项参数:

options=optimset(‘optionName’,’optionValue’);如:

options=optimset('tolx',1e-100);

options=optimset(options,'tolfun',1e-100);

后面还可以依此法添加很多选项信息。

下面举一个完整例子:求取f=4*x(1)^2+5*x(1)*x(2)+2*x(2)^2的最小值

---------------------------------------------------------------------------------------------function

[f,g]=ff3(x)

f=4*x(1)^2+5*x(1)*x(2)+2*x(2)^2;

if nargut >1

g(1)=8*x(1)+5*x(2);

g(2)=5*x(1)+4*x(2);

end

通过下面将优化选项结构options.GradObj设置为’on’来得到梯度值。

options=optimset(‘Gradobj’,’on’);

x0=[1,1];

[x,fval,exitflag]=fminunc(@ff3,x0,options)

---------------------------------------------------------------------------------

你可能感兴趣的:(matlab中options)