Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
初级会员
注册日期: 2009-02-26
年龄: 43
帖子: 6
声望力: 0 ![]() |
![]()
这些天一直在关注多目标优化的研究,我编了一个程序,调用matlab的优化工具箱的fminimax函数,结果只要程序一运行matlab就自动关闭了,这是为什么?
下面把程序代码贴出来,请帮忙分析一下。 执行主文件如下: x=zeros(1,2); x0=x; C1=[0.8,-0.74,0.5,-0.2;-1,0.1,0.3,-0.5]; C2=[-0.5,0.2,-0.35,0.4;0.1,0.45,-0.7,-0.61]; X=[-1,-1;-1,1;1,-1;1,1]; Bound_up=[1,1]; Bound_down=[-1,-1]; save C1 C1; save C2 C2; save X X; solver=fminimax(@fun_obj,x0,[],[],[],[],Bound_down,Bound_up,@fun_nonlcon) 下面是目标函数和约束函数的代码: 目标函数: function y=fun_obj(x) load X; load C1; n=length(C1(:,1)); m=length(x); m1=length(X); m2=length(C1(1, ![]() if(m~=m1 || m~=m2 || m1~=m2) exit; end cc=1; y=zeros(2,1); for jj=1:m for ii=1:n y(jj)=y(jj)+C1(1,ii)*sqrt(abs(x-X(ii, ![]() end end 约束函数: function y=fun_nonlcon(x) load X; load C2; n=length(C2(:,1)); m=length(x); m1=length(X); m2=length(C2(1, ![]() if(m~=m1 || m~m2 || m1~m2) exit; end cc=1; y=zeros(2,1); for jj=1:m for ii=1:n y(jj)=y(jj)+C2(1,ii)*sqrt(abs(x-X(ii, ![]() end end 注,我的机器的cpu是intel的,不是AMD的! MATLAB自动关闭问题 我已经试过这里的方法,不行! 请大虾们给点建议吧,我都快疯了! |
![]() |
![]() |
主题工具 | |
显示模式 | |
|
|
![]() |
||||
主题 | 主题作者 | 版面 | 回复 | 最后发表 |
Automating the Implementation of Software Defined Radios at Northrop Grumman | TechnicalArticles | MATLAB技术文章 | 0 | 2008-12-19 05:51 |
[求助]如何只打开Help | lyzhan | MATLAB论坛 | 0 | 2008-11-23 11:10 |
??? Undefined function or variable 'imhistc'.是怎么回事啊。 | hfutqianwei | MATLAB论坛 | 2 | 2008-09-26 09:19 |
[求助]在SIMULINK里,如何将inegrator上方的箭头移到下面去 | yijianmei | MATLAB论坛 | 1 | 2008-07-24 10:15 |
仪表信息图像采集处理研究 | liuna2008 | MATLAB论坛 | 0 | 2008-04-12 18:53 |