| 查看: 3454 | 回复: 2 | ||
[求助]
MATLAB用fmincon函数求最小优化问题,提示输入参数不足,求解答
|
|
如下是自己编写的一段程序,目的是想通过fmincon函数求优化求参数k;但是运行就出现问题,Sample Text function f=fop(k) S=[39.2486,18.6974,5.5453,12.0719,6.8712;21.3467,30.485,4.1298,15.0155,7.1906;53.3333,31.0388,6.4493,16.407,7.4912;55.3806,24.7649,3.9371,25.6651,7.0956;45.4191,16.4854,6.0034,23.342,7.5939;42.5722,20.3236,3.7494,21.9155,6.8254;31.3707,21.8137,4.3522,13.5309,6.9808;49.7532,28.9058,5.7443,24.999,6.6091;32.6931,14.9153,6.8971,17.3615,7.0777;26.6678,15.8494,3.4524,13.1626,7.4408;48.5182,18.8443,7.3267,28.9634,7.3066;36.088,26.5438,6.7461,26.9071,7.7217;28.8349,27.7746,5.2497,18.8,7.343;38.182,25.7221,4.8418,21.2241,6.72;23.5811,23.0133,4.9581,19.5143,7.6823]; %S样本数据(15*5) Y=[0.132;0.155;0.636;0.963;0.648;0.534;0.123;0.854;0.225;0.015;0.948;0.734;0.345;0.504;0.268];%Y响应(15*1) %k=[k(1),k(2),k(3),k(4),k(5)];%给定的系数,目前还未解决如何确定这个系数 F=ones(15,1);%采用x的0阶多项式 result = zeros(15*15,5); for i = 1:15 for j = 1:15 result((i-1)*15+j,: ) = abs(S(i,: )-S(j,: ));%所有的S行元素两两相减,得到225*5 end end result_=(result').^2;%平方,得到5*225矩阵 R=exp(reshape(-[k(1),k(2),k(3),k(4),k(5)]*result_,15,15));%得到R(k;S)15*15,对角元素为1的对称矩阵 jeta=inv(F'*inv(R)*F)*F'*inv(R)*Y;%一个数 thetaz2=1/15*(Y-F*jeta)'*inv(R)*(Y-F*jeta);%一个数 f=(abs(det(R)))^(1/15)*thetaz2;%函数表达式 option=optimset;option.LargeScale='off';option.Display='off'; k0=[1;1;1;1;1];lb=[0;0;0;0;0];%初值,下界 [k,f]=fmincon('fop',k0,[],[],[],[],lb,[],[],option) |
» 猜你喜欢
所感
已经有3人回复
要不要辞职读博?
已经有7人回复
不自信的我
已经有11人回复
北核录用
已经有3人回复
实验室接单子
已经有3人回复
磺酰氟产物,毕不了业了!
已经有8人回复
求助:我三月中下旬出站,青基依托单位怎么办?
已经有10人回复
26申博(荧光探针方向,有机合成)
已经有4人回复
论文终于录用啦!满足毕业条件了
已经有26人回复
2026年机械制造与材料应用国际会议 (ICMMMA 2026)
已经有4人回复
2楼2018-01-13 16:35:11
chenglei2
银虫 (小有名气)
- 应助: 2 (幼儿园)
- 金币: 190
- 散金: 366
- 帖子: 80
- 在线: 84小时
- 虫号: 1363197
- 注册: 2011-08-08
- 性别: GG
- 专业: 金属材料的合金相、相变及

3楼2019-09-16 21:02:41












回复此楼