⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 myselection.m

📁 用遗传算法求解二维函数的最大值问题
💻 M
字号:
% The select oprator function myselection.m 

eval_sum=0; 
eval_temp=0; 
r=0; 
i=0;j=0; 
for i=1:nind 
    eval_sum=eval_sum+eval(i); %群体的适应度值总和
end 
for i=1:nind
     p(i)=eval(i)/eval_sum;%计算对应于每个染色体的选择概率p
end
  
for i=1:nind-1      %选择39次,最后一个个体留给历代最优解 
    p_temp=0;      %初始化累加概率为0 
    j=0; 
    while(p_temp<rand) 
        j=j+1; 
        p_temp=p_temp+p(j);        
    end 
    for k=1:2*bits
        new_pop(i,k)=pop(j,k); %将选中的染色体每个基因赋给新的种群
    end 
  
end 
  
% 最优解复制 
for i=1:2*bits 
    new_pop(nind,i)=best_individual(i);  %将本代最优解赋给最后一个个体
end 
  
%将选择产生的新群体复制给pop种群 
for i=1:nind
    for j=1:2*bits
        pop(i,j)=new_pop(i,j); 
    end 
end 
  
clear i; 
clear j; 
clear k; 
clear r; 
clear p_temp; 

⌨️ 快捷键说明

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