<紧急求助>一段fmincon优化函数,出现初值等于输出
工作窗口输入命令为:x0=;
A=[-1 0 0 0 0 0 0 0 0 0 0 0 0; 0 -1 0 0 0 0 0 0 0 0 0 0 0; 0 0 -1 0 0 0 0 0 0 0 0 0 0;
0 0 0 -1 0 0 0 0 0 0 0 0 0; 0 0 0 0 -1 0 0 0 0 0 0 0 0; 0 0 0 0 0 -1 0 0 0 0 0 0 0;
0 0 0 0 0 0 -1 0 0 0 0 0 0; 0 0 0 0 0 0 0 -1 0 0 0 0 0; 0 0 0 0 0 0 0 0 -1 0 0 0 0;
0 0 0 0 0 0 0 0 0 -1 0 0 0; 0 0 0 0 0 0 0 0 0 0 -1 0 0; 0 0 0 0 0 0 0 0 0 0 0 -1 0;
0 0 0 0 0 0 0 0 0 0 0 0 -1];b=;
options=optimset('Display','iter','MaxFunEvals',1e18);
=fmincon(@lym2,x0,A,b,[],[],[],[],@lym1)
输出为:
Warning: Large-scale (trust region) method does not currently solve this type of problem,
using medium-scale (line search) instead.
> In fmincon at 317
Maximum number of function evaluations exceeded;
increase OPTIONS.MaxFunEvals.
x =
1.0e+003 *
1.1435
0.0048
0.0138
0.0042
0.0041
0.8930
0.7430
0.4050
0.8930
1.2530
0.7650
0.6920
0.5080
fval =
3.4660e+005
...
麻烦各位大侠帮我看看,我都不知道错在哪里了,我是求目标函数的最小值的。再次感谢给位了。
附件是编写的M文件。
[ 本帖最后由 ChaChing 于 2009-5-25 21:03 编辑 ]
求助:fmincon函数矩阵不能更新
输入:x0=;
options=optimset('largescale','off','display','iter','MaxFunEvals',1e3,'maxiter',1e3);
=fmincon(@lym2,x0,A,b,[],[],[],[],@lym1,options)
输出:
...
76 1002 -0.952948 5.827e+005 2 -0.0914 InfHessian not updated; dependent
Maximum number of function evaluations exceeded;
increase OPTIONS.MaxFunEvals.
x =
1.0e+003 *
1.1435
0.0047
0.0145
0.0040
0.0036
0.8930
0.7430
0.4050
0.8930
1.2530
1.0000
0.9000
0.5080
fval =
-0.9529
...
[ 本帖最后由 ChaChing 于 2009-5-25 21:05 编辑 ] 那说明初值就是最优了或者程序有错 楼主到底要问什麽!?
还有个人水平专业有限, 建议楼主说清楚些, 并看下本版规则及加强发问题方式!
求助完整格式:出错代码和出错提示 哦,初值肯定不是最优,那我试试修改程序,多谢指导。。
[ 本帖最后由 ChaChing 于 2009-5-25 21:08 编辑 ]
回复 5楼 ChaChing 的帖子
网速太慢了,就多发了次。。我的意思是矩阵没有更新,导致初值等于输出。应该怎么修改,麻烦指教。我是刚用MATLAB,主要是为了毕业设计的。。 首先lym1是什麽, 花4个楼层好像也交代! 几个楼层间重覆性又高! 请学习一下编辑使用个人水平专业有限, 亦是来学习了! 对LZ或许帮助不大, 但LZ的帖真正需要加强些!
还有相同或相近内容的话题,请勿开新贴,一帖发完! 哇! 竟花了近一个小时, 修饰LZ的帖! 还接受吧!
真想扣分, 新人先警告
另一帖参照如此, 请自行修改下!
页:
[1]