4.无回放随机选择(也叫期望值选择):根据每个个体在下一代的生存期望进行随机选择操作 。该方法如下
(1)计算下一代种群中每个个体的生存期望数n 。
(2)如果选择一个个体参与交叉操作,其在下一代的生存期望数减少0.5;如果一个个体没有被选择参与交叉操作,那么它在下一代的生存期望数减少1.0 。
(3)随着选择过程的进行,如果个体的生存期望数小于0,那么该个体将不再有机会被选择 。
5.确定性选择:以某种方式选择 。具体操作流程如下:
(1)计算下一代种群中每个个体的期望存活数n 。
(2)用n的整数部分确定下一代种群中每个对应个体的存活数 。
(3)个体按n的小数部分降序排列,取前m个个体,以便加入下一代种群 。至此,可以完全确定下一代种群中的m个个体 。
6.无回放余数的随机选择:可以保证一部分适应度大于平均适应度的个体能够遗传到下一代种群中,因此选择误差相对较小 。
7.平均排名:按期对群体中所有个体的适应度进行排名,并根据这个排名分配每个个体被选中的概率 。
8.更优保存策略:当前种群中适应度更高的个体不参与交叉和变异操作,而是用它来替换当前种群中交叉和变异操作后适应度更低的个体 。
9.随机联盟选择:一次在几个个体中选择适应度更高的个体,传给下一代 。
10.排斥选择:新产生的后代会取代或排挤相似的老父母,从而提高种群的多样性 。
第三,穿越
遗传算法的交叉操作是指两个配对染色体之间以某种方式交换某些基因,从而形成两个新个体 。
用于二进制编码个体或浮点编码个体的交叉算子;
1.一点交叉(One-point ):是指在个体编码串中随机设置一个交叉点,然后在该点交换两个配对个体的部分染色体 。
2.两点相交和多点相交:
(1)两点交叉:在个体编码串中随机设置两个交叉点,然后交换部分基因 。
(2)多点交叉
3.均匀交叉(也叫均匀交叉):两个配对个体的每个基因座的基因以相同的交叉概率交换,从而形成两个新个体 。
4.算术交叉:两个个体线性组合产生两个新个体 。操作对象一般是用浮点代码表示的个体 。
第四,变异
遗传算法中的变异操作是指将个体染色体编码串中某个位点的基因值替换为该位点的其他等位基因,从而形成一个新的个体 。
以下变异运算符适用于二进制编码和浮点编码的个体:
1.简单变异:变异操作是在单个代码串中随机指定的一位或多位上执行的,变异概率仅取决于该位上的值 。
2.均匀突变:用在一定范围内以一定小概率均匀分布的随机数替换个体编码串中各个基因位点的原始基因值 。(特别适合算法的初级运算阶段)
3.边界突变:在基因位点上随机取两个对应的边界基因值中的一个,替换原来的基因值 。特别适用于更优点位于或接近可行解边界的一类问题 。
4.非均匀变异:随机扰动原基因值,将扰动结果作为变异后的新基因值 。以相同的概率对每个基因座进行变异操作后,相当于对解空中的整个解向量做了微小的改变 。
5.高斯近似变异:在进行变异操作时,用一个符号均值为p的平均值、方差为P2的正态分布的随机数代替原基因值 。
三、遗传算法的基本原理
自然界是一个自适应的大系统[53,56 ~ 60] 。自然系统中的大多数生物都是通过自然选择和有性繁殖这两个基本过程来进行自身的进化,从而逐渐达到完美以适应自然 。受生物进化和遗传的启发,遗传算法形成了一种独特的优化方法 。遗传算法的运算原理往往与生物进化和遗传理论一致,其术语往往仿照生物术语 。遗传算法的运算基础是字符串 。首先,将搜索对象编码成字符串形式 。字符串相当于生物学上的染色体,由一系列字符组成;每个字符都有特定的含义,反映所解决问题的某种特征,相当于一个基因,即染色体DNA的一个片段 。每个字符串结构称为一个个体,每个个体可以通过问题本身的适应度值度量计算出反映其适应性的适应度值,然后循环一组字符串结构(称为一个组) 。每一次循环操作称为一代,操作包括:将弦组中那些适应性好的弦保存到下一代(对应于遗传学中的复制),使上一代中的优秀个体得以存活,类似于生物进化论中的自然选择 。通过串与串之间有组织但随机的信息交换,将那些适应良好的串重新组合(对应于遗传学中的交叉),在每一代中,利用上一代串结构中适应良好的位和段生成新的串种群;作为额外的添加,偶尔尝试在串结构中用新的位和段替换原来的部分(对应遗传变异),等等 。在遗传算法中,这些操作只涉及一个字符串的一些片段,这类似于只涉及一些基因而不是整个染色体的遗传过程 。遗传算法是一种随机算法,但不是简单的随机游走 。它可以有效地使用现有信息来搜索那些期望提高解决方案质量的字符串 。类似于自然进化,遗传算法作用于染色体上的基因,寻找好的染色体来解决问题 。类似于自然界,遗传算法对解决问题本身一无所知 。它所需要的只是对算法产生的每条染色体进行评估,并根据适应度值选择染色体,让适应性好的染色体有更多的繁殖机会 。
- 算法分析与设计是什么
- 七星灯续命原理活人 七星灯续命原理
- 小磁人加热器原理
- 游戏社交app排行榜,APP 排名算法?
- 气垫船原理示意图图 气垫船原理
- 空调是怎么制冷的,空调制冷原理有几种
- 什么是空气开关,动画直观演示其原理,解开我多年的疑惑
- 见微知著是什么意思,见微知著的原理和方法
- 感应水龙头工作原理感应水龙头选购方法
- 汽车油泵的工作原理是什么