24小时热门版块排行榜    

查看: 425  |  回复: 1

liyangfan

新虫 (初入文坛)

[求助] matlab多目标优化问题程序出错,本人新手,求各位大神帮助,万分感谢,在线等

CODE:
function f=objfun11_12(x)
f(1)=x(1)+x(2)+x(3)+x(4)+x(5)+x(6);
f(2)=(1292*sin(0.91+asin((x(1)*0.97+x(2)*0.78-x(4))/x(3)) -1782*(x(1)*0.97+x(2)*0.78-x(4))/x(3)-1500*cos(asin((x(1)*0.97+x(2)*0.78-x(4))/x(3))))/(sin(asin(x(1)*0.97+x(2)*0.78-x(4))/x(3))-1.32));

CODE:
function li_11_12
%给出约束条件系数
A=[0.9,0,-1,0,0,0;-1.2,0,1,0,0,0;-sin(1.326),0,0,0,0,-sin(1.08)];
B=[0;0;-3800];
Aeq=[];
Beq=[];
lb=[0 0 0 0 0 0];
ub=[2000 600 736 800 770 3000];
%给定目标,权重按目标比例确定,给出初值
goal=[5800,3000];
weight=[0.6 0.4];
x0=[1518,551,1518,611,761,2504];
[x,fval,exitflag]=fgoalattain(@objfun11_12,x0,goal,weight,A,B,Aeq,Beq,lb,ub)

结果:
CODE:
fgoalattain stopped because it exceeded the function evaluation limit,
options.MaxFunEvals = 700 (the default value).


x =

   1.0e+03 *

    1.0169    0.5510    0.8124    0.6110    0.7610    3.0764


fval =

   1.0e+03 *

   6.8287            -0.1739 + 0.0012i


exitflag =

   1.6117e+03

结果出现复数,exitflag不等于1.请各位帮忙解决,送出全部金币,万分感谢
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liyangfan

新虫 (初入文坛)

2楼2014-08-13 11:18:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 liyangfan 的主题更新
信息提示
请填处理意见