数学建模社区-数学中国
标题:
【求助】matlab中求多元非线性求极值,出现increase OPTIONS.MaxFunEvals.
[打印本页]
作者:
yunpiao129259
时间:
2009-7-11 20:23
标题:
【求助】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=[0.075 0.225 0.075 0.075 1.125 12 0.5625];
Lbnd=[0.075 0.225 0.075 0.075 1.125 12 0.5625];
Ubnd=[0.125 0.375 0.125 0.125 1.875 20 0.935];
options=optimset;option.=10e1000000000;option.display='off';
[x,fx,out] = 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
但是还是不对~~~
有没有高手能指点一下~~谢谢!
作者:
ywt
时间:
2009-7-11 20:46
好东西谢谢
作者:
fc013
时间:
2009-7-11 20:53
试试:1e-10,options=optimset;option(是不是应该加s).=10e1000000000;option(是不是应该加s).display='off';
作者:
yunpiao129259
时间:
2009-7-11 21:06
改成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
还是不对哎~~
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5