电子产业一站式赋能平台

PCB联盟网

搜索
查看: 1630|回复: 8
收起左侧

matlab遗传算法三目标优化,出来的pareto前沿图只是二维图啊?

[复制链接]

578

主题

936

帖子

4943

积分

四级会员

Rank: 4

积分
4943
发表于 2023-3-20 10:58:09 | 显示全部楼层 |阅读模式
三目标不是三维图么?怎么修改啊/、
function f=multidisk(x)
global I1 I2 F
r=350;u=0.5;fai=1;W=3400;v=44.4444;m=4; tc=6.5; Dh=75;Wa=W*m;g=9.8;
Dmax=300;Tmax=260;Ti=35; Pmax=3;P0max=7;
J=4180;c=0.113;rou=7.8*10^(-6);E=Wa*v*v/(2*m*g);
n0=500*v/(pi*r);
F=pi/4*x(4)*x(4)*x(6);
I1=0; I11=0; I12=0; I13=0;
I2=0; I21=0; I22=0; I23=0;
n=100;delt=x(2)/n;t=x(1)-x(2)/2;
for k=1:(n+1)
l(k)=2*t*acos((x(1)*x(1)+t*t-(x(2)/2)*(x(2)/2))/(2*x(1)*t));
yI1(k)=l(k)/t;
if (k-1)==0||(k-1)==n
    I11=I11+1/3*yI1(k);
elseif rem(k-1,2)~=0
    I12=I12+4/3*yI1(k);
else
    I13=I13+2/3*yI1(k);
end
t=t+delt;
end
I1=(I11+I12+I13)*delt;
I1=real(I1);
t=x(1)-x(2)/2;
for k=1:(n+1)
    l(k)= 2*t*acos((x(1)*x(1)+t*t-(x(2)/2)*(x(2)/2))/(2*x(1)*t));
    yI2(k)=l(k)/I1;
if (k-1)==0||(k-1)==n
    I21=I21+1/3*yI2(k);
elseif rem(k-1,2)~=0
    I22=I22+4/3*yI2(k);
else
    I23=I23+2/3*yI2(k);
end
t=t+delt;
end
I2=(I21+I22+I23)*delt;
I2=real(I2);
f(1)=W*v*v*1000/(4*pi*F*u*I2*n0*g);
f(2)=x(5);
f(3)=4*3.4265e+005/(4180*pi*0.113*7.8e-6*x(3)*x(3)*x(5));




clear
clc
fitnessfcn=@multidisk;
nvars=6;
A=[];b=[];
Aeq=[];beq=[];
x0=[105;40;256;48;12;3];
lb=[80;30;250;40;10;1];
ub=[120;60;280;70;13;7];
options=gaoptimset( 'ParetoFraction',0.3,'PopulationSize',300,'generations',200,'StallGenLimit',200,'TolFun',1e-100,'PlotFcns',@gaplotpareto);
[x,fval]=gamultiobj(fitnessfcn,nvars,A,b,Aeq,beq,lb,ub,options);
回复

使用道具 举报

35

主题

892

帖子

1091

积分

三级会员

Rank: 3Rank: 3

积分
1091
发表于 2023-3-20 10:58:37 | 显示全部楼层
d
回复 支持 反对

使用道具 举报

35

主题

892

帖子

1091

积分

三级会员

Rank: 3Rank: 3

积分
1091
发表于 2023-3-20 10:59:16 | 显示全部楼层
楼主怎么乱弄出来的,学习学习,谢谢
matlab遗传算法三目标优化,出来的pareto前沿图只是二维图啊?-1.jpg
回复 支持 反对

使用道具 举报

633

主题

1927

帖子

8108

积分

联盟顾问

Rank: 3Rank: 3

积分
8108
发表于 2023-3-20 10:59:53 | 显示全部楼层
请问楼主解决了吗,求分享
回复 支持 反对

使用道具 举报

0

主题

825

帖子

683

积分

二级会员

Rank: 2

积分
683
发表于 2023-3-20 10:59:59 | 显示全部楼层
楼主你好,能否分享一下二维图的代码?新手刚上路
回复 支持 反对

使用道具 举报

0

主题

804

帖子

517

积分

二级会员

Rank: 2

积分
517
发表于 2023-3-20 11:00:26 | 显示全部楼层
楼主能不能分享下代码。。
回复 支持 反对

使用道具 举报

633

主题

1927

帖子

8108

积分

联盟顾问

Rank: 3Rank: 3

积分
8108
发表于 2023-3-20 11:00:53 | 显示全部楼层
楼主,请问三维pareto前沿最后是曲面吗?一般寻优结果矩阵是多大呢,我现在只用了15个结果,画不出曲面呀
回复 支持 反对

使用道具 举报

35

主题

892

帖子

1091

积分

三级会员

Rank: 3Rank: 3

积分
1091
发表于 2023-3-20 11:00:58 | 显示全部楼层
很简单,调整的角度就行了
回复 支持 反对

使用道具 举报

35

主题

892

帖子

1091

积分

三级会员

Rank: 3Rank: 3

积分
1091
发表于 2023-3-20 11:01:07 | 显示全部楼层
我一般都是改画图函数改了,就不会出现三位画成二位的情况了
回复 支持 反对

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


联系客服 关注微信 下载APP 返回顶部 返回列表