reproduction.m
来自「在matlab环境下用人工智能算法--遗传算法求函数极植的matlab程序」· M 代码 · 共 23 行
M
23 行
function population=reproduction(population,pr,M,fitness)% 用轮盘选择法进行复制操作%顺序累计群体内各个体的适应度,得相应的累计值s(i),最后一个累计值为s(M)s(1)=fitness(1);for i=2:M s(i)=s(i-1)+fitness(i);endfor j=1:M*pr r=rand*s(M); %在[0,s(M)]区间内产生均匀分布的随机数 r for i=1:M if s(i)>=r [g,index]=min(fitness); population(index,:)=population(i,:); break; end end %依次用s(i)与r比较,第一个出现s(i)大于或等于r的个体i被选为复制对象, %代替适应度最差的个体end% return population
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?