染色体
由实际问题的解决对象(即解空间中的一个解)映射得到的二进制串。
种群
一群二进制串个体的集合。
选择
模仿自然选择,对种群中的个体实现优胜劣汰操作,个体的适应度值与其被遗传到下一代种群的概率成正比。
用来确定如何从父代种群中按照某种策略选取哪些个体遗传到下一代的种群中。
常用的选择策略有:
- 基于适应值比例的选择(转盘式选择(Roulette wheel Seleetion)、繁殖池(Breeding Pool)选择、Boltzmann选择等)
- 基于排名的选择(线性排名选择,非线性排名选择)
- 基于局部竞争机制的选择(锦标赛选择(Tournament)、选择、选择)
交叉
对两个相互配对的染色体按某种方式相互交换其部分基因,从而形成两个新的个体。
目前常用的配对策略是随机配对,即将群体中的N个个体以随机的方式组成[N/2]对配对个体组,交叉操作是在这些配对个体组中的两个个体之间进行的。
常用的交叉算子有:
- 单点交叉
- 双点交叉
- 多点交叉
- 均匀交叉
- 算术交叉
变异
将个体染色体编码串中的某些基因位(变异点)上的基因值用该基因位的其它等位基因来替换,从而形成一个新的个体。
对于二进制编码,变异操作就是将个体在变异点上的0、1值进行取反操作。
使用变异算子的目的:
- 改善算法的局部搜索能力
- 维持种群多样性
- 防止早熟收敛
适应度
种群中各个个体在优化计算过程中可能达到或者接近于或者有助于找到最优解的优良程度。
个体的适应度值与其被遗传到下一代种群的概率成正比。
评价个体适应度的一般过程是:
- 对个体编码串进行解码处理后,可得到个体的表现型(个体在环境中表现的性状)。
- 由个体的表现型可计算出对应个体的函数值。
- 根据最优化问题的类型,由目标函数值按一定的转换规则求出个体的适应度。
终止准则
用来判断种群已经进化成熟且不再有进化趋势时终止算法的运行,也可通过设定终止进化代数来实现。
常用的判定准则:
- 连续几代个体平均适应度的差异小于某一个极小的阈值;
- 群体中所有个体适应度的方差小于某一个极小的阈值。
早熟收敛现象
在种群中出现了超级个体(其适应度值远远超过了种群的平均适应度值),则在按照适应度值比例进行选择时,该个体会很快地在种群中占有绝对比例,以致于算法过早收敛到局部最优点。
停滞现象
在搜索过程后期,群体的平均适应度值可能会接近群体的最优适应度值,即使种群中仍然存在足够的多样性,但是实际上已经不存在竞争,导致搜索目标难以得到改善。