24小时热门版块排行榜    

查看: 602  |  回复: 0

ACKang

新虫 (初入文坛)

[求助] 协同粒子群算法(COPSO)Matlab代码(部分)

小弟第一次接触算法,请问以下newgen、pop、A、optimy、subpop1、newgen1、pop1、min1、optimy1、optt1都代表什么?
function [opy,optimy]=copsoflowshop(pt,gennum,psize,e)
[m,n]=size(pt);
current_gen=1;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%初始化
newgen=zeros(psize,n+1);
pop=zeros(psize,n);
A=zeros(psize,n/5);
vel=zeros(psize,n/5);
optimy=ones(1,gennum);
newgen(1:psize,1:n)=rand(psize,n);%主种群初始化
subpop1=zeros(psize,n/5);  %子群初始化
subpop2=zeros(psize,n/5);
subpop3=zeros(psize,n/5);
subpop4=zeros(psize,n/5);
subpop5=zeros(psize,n/5);
newgen1=zeros(psize,n+1);
newgen2=zeros(psize,n+1);
newgen3=zeros(psize,n+1);
newgen4=zeros(psize,n+1);
newgen5=zeros(psize,n+1);
pop1=zeros(psize,n);
pop2=zeros(psize,n);
pop3=zeros(psize,n);
pop4=zeros(psize,n);
pop5=zeros(psize,n);
min1=zeros(psize,n/5); %子群最优粒子初始化
min2=zeros(psize,n/5);
min3=zeros(psize,n/5);
min4=zeros(psize,n/5);
min5=zeros(psize,n/5);
optimy1=ones(1,gennum);
optimy2=ones(1,gennum);
optimy3=ones(1,gennum);
optimy4=ones(1,gennum);
optimy5=ones(1,gennum);
optt1=ones(psize,1);
optt2=ones(psize,1);
optt3=ones(psize,1);
optt4=ones(psize,1);
optt5=ones(psize,1);
vel1=vel;                %子群速度初始化
vel2=vel;
vel3=vel;
vel4=vel;
vel5=vel;
subpop1=newgen(:,1:n/5);               %将主群newgen分成5个子群,想分成几个就几个,可以有更好的方法!
subpop2=newgen(:,n/5+1:2*n/5);
subpop3=newgen(:,2*n/5+1:3*n/5);
subpop4=newgen(:,3*n/5+1:4*n/5);
subpop5=newgen(:,4*n/5+1:n);
xmin1=subpop1(1,;         %子群的最优位置,初始位置随便定
xmin2=subpop2(1,;
xmin3=subpop3(1,;
xmin4=subpop4(1,;
xmin5=subpop5(1,;
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 ACKang 的主题更新
信息提示
请填处理意见