当前位置:首页 > 基于改进遗传算法的BP神经网络自适应优化设计概要
承是由下式确定的[1] n i=(f i t/f i tλ ,(4 式中,n i 为a i
在(t+1代时的繁殖个数,f i 为a i 的适 应度函数值,f i
为p的适应度函数值的和.但在研究中
发现经典的选择继承的淘汰率过低,特别是当解集中 的成员数比较小时,容易发生震荡.因此为获得较好的 继承个体,在这里引入淘汰率rd,即每遗传一代,则适 应度函数最差的几个成员都被淘汰掉,通过这一竞争 机制能够比较好的解决这个问题,选择继承的过程表
示如下:
n t i=(f i t/f i tλ ,(5 式中f i
t=6λ(1-r di=1f i t.
29重庆大学学报(自然科学版 2007年
6交叉算子和变异算子
交叉就是按较大的概率从群体中,随机选择2个个体,交换这2个个体的某些位,交换的目的在于产生新的基因组合,以限制遗传材料的丢失.变异是以较小的概率对群体中的某些个体的位进行改变,在二进制编码中,即“1”变“0”,“0”变“1”;在实数编码中是对某些个体的位在(0,9产生一个随机数代替原来个体的位.变异的目的在于保护一些适应度低的个体中的优良基因,防止寻优过程中过早收敛于不成熟区.
(1对开关系数编码的交叉和变异操作
对开关系数编码的交叉和变异采用经典遗传算法中的单点交叉、均匀变异的方法方法,在交叉和变异运算时,当某个神经元删除时,相应的有关权重系数编码和阀值系数编码被置为0,也就是说这个网络连接被删除;而运算增加某个神经元时,则随机初始化有关权重系数编码和神经元阀值编码.由于权重系数编码和神经元阀值编码采用浮点数编码,需要设计新的交叉算子和变异算子.
以p c
的概率对选择后的个体进行交叉.设在第i 个体和第i+1个体之间进行交叉,交叉算子如下:
X t+1i=c i?X t i+(1-c i?X t i+1 X t+1i+1=(1-c i?X t i+c i?X t i+1 ,(6 式中X t i
,X t i+1是一对交叉前的个体,X t+1i,X t+1i+1是交叉后 的个体,c i
是区间[0,1]的均匀分布的随机数. 以p m
的概率对交叉后的个体进行变异,设对第i 个体进行变异,变异算子如下: X t+1i=X t i+c i ,(7 式中X t
i 是变异前的个体,X t+1 i
是变异后的个体,如变 异点在权重系数编码上则c i 是区间[u m in -δ1-X t i,
u max+δ2+X t i]上的均匀分布随机数;这样可以保证变异后的个体仍在搜索区间内.
(2对权重系数编码和神经元阀值编码的交叉和变异操作
对权重系数编码和神经元阀值编码的交叉操作采用多点交叉遗传操作,而不是常规的单点交叉,这样可以进一步增加遗传搜索的分散性,使其可以更快地收敛于所需的精度.多点交叉的交叉点数根据所给定的概率随机生成,交叉点的位置也是随机生成.
对权重系数编码和神经元阀值编码的变异操作采用多点自适应变异.就是使适应度大的个体在较小范围变异,而使适应度小的个体在较大的范围内变异[526].基于这种考虑,引入变异温度的概念,这一概念类似于模拟退火算法中温度的概念,解的变异温度定义如下:
T=1-f(s f max ,(8
其中f(s表示个体s的适应度,f max
共分享92篇相关文档