这使得复制、交叉、变具有了选择性和适应性,由于复制操作的这种选择性,使在局部极值点附近的体被复制的概率下降,相应的新产生的远离fav 的个体被复制的概率增加,减少了复制操作造成有效基因缺失的情况,使群体多样性得到了保证。环境试验设备发展前景更加宽广,而交叉和变异概率的增加使产生新个体的概率上升,交叉概率的提高增强了算法的搜索能力。本节为提高上述自适应遗传算法的搜索效率,做了几点改进:
一 采用浮点数编码
遗传算法一般采用二进制编码,其优点是操作清晰。但较长的二进制串一直占用计算机内存,而其中很少一部分进行遗传操作使得计算机内存运行效率过低。这个问题在多参数优化和高精度需求时显得尤为突出,如模糊神经网络控制器参数的优化。此外。二进制编码的遗传算法的变异方式和编码形式,即使算法搜索到了离理想解很接近的次理想解时,找到理想解仍然可能很困难,如编码01111 是次理想解,而编码10000 是理想解的情况。从精度及其使用方便的角度来看,在涉及参数优化的问题中,如控制领域。更偏爱浮点数编码。可以避免数制转换带来的误差,提高了算法的精度和效率。

二 引入概率接受操作数
传统的遗传算法用交叉操作产生的子个体完全代替交叉前的父个体,改进方法是用新产生的个体以一定的概率代替父个体。具体方法是:一对父代个体经过交叉产生一对子代个体。将子代个体的适合度与父代个体的适合度相比较,如果子代个体的适合度高于父代个体的适合度则接受子代个体,淘汰父代个体;反之以概率接受子代个体,既产生一个0—1 之间的随机数,如果该随机数大于某一预定的接受概率则接受子代个体,反之保留父代个体。通过模式定理可知,上述方法能够减少好的模式被破坏的概率,从而提高算法性能。
三 引入混沌插入操作数
前面提到通过自适应改变变异概率可以预防算法未成熟收敛现象的发生,但使用较大的变异概率会使算法更加接近纯随机搜索,从而使算法丧失模拟进化的仿生实质,且过大的变异概率会破坏已经获得的理想性信息。为解决该问题,运用混沌变换更新群体。这就是混沌插入操作数的思想。利用Logistic 映像产生混沌变换序列混沌变量具有随机性、规律性、遍历性和对初值的敏感性。即使初值微小的变化也将导致远期行为的巨大差异。设待优化参数取值范围.则产生新个体的步骤如下:其中ci 和di 为参数,通过恰当的选取参数可以将混沌变量映像到整个参数搜索范围或范围内的某一部分。混沌运动能遍历空间内的所有状态,因而由其产生的小群体具有多样性,能够补充进化过程中缺失的有效基因。
四 理想个体保留策略
理想解一直保持下去。因此,理想个体保留策略全局收敛的充分条件是:在搜索过程中理想个体保留GA 能发现全局理想解或经历包含理想解的状态E。这样就可以保证算法以概率一收敛到全局理想解 。
五 引入微变异操作数
遗传算法的初期为了能搜索到全局解,要在整个过程中搜索空间内大范围搜索。但往往只能得到次理想解,而非真正的全局理想解。一旦算法接近全局理想解时,由于采用全局搜索策略使得收缩速度迅速下降,很难快速搜索到比目前适应度更高的个体,因而表现为当前理想个体长时间的不发生变化,造成收敛速度缓慢甚至停滞的现象。如果能在进化后期加大对次理想解的周围空间的搜索力度,就能尽快的得到全局理想解,提高算法的收敛速度。微变异操作数就是基于这种思想提出的。微变异操作数的实现方法:首先计算群体中适合度较好的前50%个个体的平均适合度fav 和当前理想个体的适合度比较,若其偏差小于一个很小的正数ε 则认为算法已进入后期。然后对种群x 的每一个染色体的参数基因逐一访问,当随机数rand<Plm 时(微变异概率)就对选中的参数基因进行微变异操作,但微变异量的大小和正负是随机确定的。并将其设为 xij=xij*{[rand-0.5]*0.1+1}。其中,(rand-0.5)是一个可正可负的数,而且没有固定大小,而0.1 控制了微调的数量级。为防止微调量过大,微调量采用相对量。当希望获得更高精度时可将上式变为:
通过引入了理想个体保留策略以及混沌插入操作数、概率接受交叉操作数、微变异操作数技术对自适应遗传算法进行改进,不仅加快了算法的收敛速度,有效避免了为成熟收敛现象的发生,而且是提高了进化后期的搜索效率。
http://www.zhenghangyq.com