当前位置:首页 > 基于遗传算法的BP网络
基于遗传算法的BP网络在梅雨量预测
中的应用
孙承 刘全金
(安庆市气象台 246001)(安庆师范学院物理系 246001)
摘 要: 讨论基于遗传算法的BP网络在安徽省安庆市区梅雨量预测中的应用,对优化BP网络结构和连接权的遗传算法做了阐述。 关键词: 遗传算法 BP网络 MATLAB 1 遗传算法
遗传算法简称GA(Genetic Algorithm),是美国Michigan大学的John H.Holland教授创建,由生物进化思想启发而得出的一种具有全局搜索能力的算法。它模拟自然界物竞天择、适者生存,通过选择(selection)、交叉(crossover)和变异(mutation)等操作,产生新一代适应力更强的群体(如图1所示)。 群体初始化将一组待优化的量值(基因)放在向量中作为一个
色体(个体),在优化对象的取值范围内随机地生成一组染染色体(第一代群体)。 根据实际问题设定染色体适应度(fitness)函数,适应值越高,表示
该染色体的适应能力越强。
为了防止遗传算法后期染色体适应值差别变小,优秀染色体优势减弱, 导致群体进化停滞,在适应度函数中引入模拟退火思想对适应值进行拉伸, 如令
( (为第i个染色体适应值,T为温度,T0为初始温
度,gen为遗传代数),这样有利于优秀的染色体凸显出来。
选择操作是根据染色体适应值占群体适应值比重决定其选择概率,适 应值越高的染色体,下一代群体中存在的数量就越多。选择策略有适应度 比例法、排序选择法、最佳个体保存法和期望值方法等。
交叉操作从群体中随机的选取两个双亲染色体,按照某种规则进行部 分交换,生成两个新染色体。新染色体的数量由交叉概率Pc决定。
变异操作是按概率Pm随机地对群体中的染色体按照某种规则做“基因突变”。重复以上操作,如果群体适应值趋于稳定
(即连续几代染色体平均适应值的方差小于某极小值),或者遗传代数达到预定的数值N就中止遗传操作。 2 BP网络
BP网络(Back-ProPagation Network)又称反向传播神经网络, 通过样本数据的训练,不断修正网络权值和阈值使误差函数沿负梯度方向下降,逼近期望输出。它是一种应用较为广泛的神经网络模型,多用于函数逼近、模型识别分类、数据压缩和时间序列预测等。
BP网络由输入层、隐层和输出层组成,隐层可以有一层或多层,图2是
m×k×n的三层BP网络模型,网络选用S型传递函数, 通过反传
误差函数 ( (Ti为期望输出、Oi为网络的计算输出),不断
调节网络权值和阈值使误 差函数E达到极小。
BP网络具有高度非线性和较强的泛化能力,但也存在收敛速度慢、迭代步数多、易于陷入局部极小和全局搜索能力差等缺点。可以先用遗传算法对“BP网络”进行优化,在解析空间找出较好的搜索空间,再用BP网络在较小的搜索空间内搜索最优解。 3 BP网络的样本模型
用灰色理论中建立等维新息模型的思想建立样本模型,按(1)式选取已知样本P和期望输出T作为训练模型。
BP网络的传递函数为S型,在训练前按(2)式对梅雨量做归一化处理,使样
本数据在(0.1,0.9)之间。
(2)
1951-2002年梅雨量为样本数据,从1951年开始,每连续m年梅雨量为一组输入样本,对应第m+1年的梅雨量为本组期望输出,共生成52-m组样本数据,后5组样本为测试样本,其余样本为BP网络学习样本。
共分享92篇相关文档