selection.m

来自「用遗传算法及佳点集算法测试同一标准函数,普通的遗传算法和佳点集遗传算法的基本思想」· M 代码 · 共 56 行

M
56
字号
% The select oprator function   selection.m

ada_sum=0;
for i=1:40
    ada_sum=ada_sum+adapt(i);
    e_adapt(i)=0;
end
for i=1:40
    e_adapt(i)=40*adapt(i)/ada_sum;
end
r=1;     i=1;
while(r<=40)
   if e_adapt(r)>=1.0
      while(e_adapt(r)>=1.0)
        for t=1:2
           for k=1:10       
               new_pop(i,t,k)=pop(r,t,k);
           end
        end
        e_adapt(r)=e_adapt(r)-1;
        i=i+1;
      end 
   end
     r=r+1;
 end
while(i<=40)
     q=1;
     for j=2:40
         if e_adapt(q)<e_adapt(j)
             q=j;
         end
     end   
     for t=1:2
        for k=1:10       
            new_pop(i,t,k)=pop(q,t,k);
        end
     end  
      e_adapt(q)=0;
      i=i+1;
  end    
%将选择产生的新群体复制给pop种群
for i=1:40
   for t=1:2
     for j=1:10
        pop(i,t,j)=new_pop(i,t,j);
     end
  end
end
 
clear i;
clear j;
clear k;
clear t;
clear r;
clear q;

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?