【求助】matlab中求多元非线性求极值,出现increase OPTIONS.MaxFunEvals.
【求助】在matlab7.0求一非线性方程极值的问题。题目是1997全国数学建模A题的选择零件标定值那部分。
寻找合适的x1 x2 x3 x4 x5 x6 x7 使得d=f(x1,x2,x3,x4,x5,x6,x7)最小
代码是
clc
clear
xi=;
Lbnd=;
Ubnd=;
options=optimset;option.=10e1000000000;option.display='off';
= fmincon(@fbmin,xi,[],[],[],[],Lbnd,Ubnd,[],options)
调用的函数是:
function d=fbmin(v)
x1=v(1);x2=v(2);x3=v(3);x4=v(4);
x5=v(5);x6=v(6);x7=v(7);
t= (1-2.62*(1-0.36*(x4./x2).^(-0.56)).^(1.5).*(x4./x2).^(1.16))./x6./x7;
y=(x1./x5).*(x3./(x2-x1)).^0.85;
y=174.42*y.*t.^(0.5) ;
d=abs(y-1.5);
结果为:
Maximum number of function evaluations exceeded;
increase OPTIONS.MaxFunEvals.
x =
0.1070 0.3649 0.1199 0.1234 1.8130 12.0863 0.9039
fx =
4.6185e-014
out =
0
increase OPTIONS.MaxFunEvals.
修改了语句使得option.MaxFunEvals=10e1000000000
但是还是不对~~~
有没有高手能指点一下~~谢谢! 好东西谢谢 试试:1e-10,options=optimset;option(是不是应该加s).=10e1000000000;option(是不是应该加s).display='off'; 改成options=optimset;options.MaxFunEvals=1e-10;options.display='off';么?
结果是:
Maximum number of function evaluations exceeded;
increase OPTIONS.MaxFunEvals.
x =
0.0750 0.2250 0.0750 0.0750 1.1250 12.0000 0.5625
fx =
0.8008
out =
0
还是不对哎~~
页:
[1]