• 大小: 1KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-01-09
  • 语言: Matlab
  • 标签: MATLAB  

资源简介

用matlab语言实现的算法,用于解决背包问题,带完整的中文注释

资源截图

代码片段和文件信息

function newpop = ga( poppcpmchromsomefit )
%遗传算法

pop_size = size(pop1);
%赌轮选择
ps = zeros(pop_size1); %选择概率
   for i=1:pop_size
    ps(i) = fit(i)/sum(fit);
   end
pssum = zeros(pop_size1); %选择概率累加
pssum(1)=ps(1);
   for j=2:pop_size
       pssum(j) = pssum(j-1)+ps(j);
   end
newpop = zeros(pop_sizechromsome);
   for k=1:pop_size
       r = rand();
       if r           newpop(k:)=pop(1:);
       else
           for m=2:pop_size
               if pssum(m-1)                   newpop(k:)=pop(m:);
               end
           end
       en

评论

共有 条评论