| 查看: 602 | 回复: 0 | ||
[求助]
协同粒子群算法(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, ; |
» 猜你喜欢
垃圾破二本职称评审标准
已经有19人回复
职称评审没过,求安慰
已经有53人回复
毕业后当辅导员了,天天各种学生超烦
已经有5人回复
26申博自荐
已经有3人回复
A期刊撤稿
已经有4人回复













; %子群的最优位置,初始位置随便定
回复此楼