遗传BP神经网络

2024-08-13

遗传BP神经网络(精选11篇)

遗传BP神经网络 第1篇

实际工业生产过程往往具有非线性、时变不确定性&常规PID控制器很难适应运行工况的变化,不能获得理想的控制效果。神经网络PID控制器包含有常规PID的控制思想,同时具有非线性的映射、自学习和自适应能力,结构简单,而且能适应环境变化,有较强的鲁棒性,可实现自适应的非线性控制[1]。但是,神经网络初始权值的选取影响控制器的性能,采用反复实验随机选取的方法很难得到理想参数的控制器,即使找到了也不能保证是最优的。为了获得理想的控制效果,我们提出用遗传算法优化神经网络控制器参数的方案。遗传算(Genetic Algorithm,GA)是借鉴生物界自然选择和自然遗传机制的搜索算法,由美国J.Holland教授提出,可广泛用于优化、学习、自适应控制规划和人工生命等领域[2],具有良好的全局优化性能[3]。本研究采用遗传算法优化BP神经网络PID控制器的参数,得到了理想的控制效果。

2基于BP神经网络的PID控制系统

2.1控制系统结构

基于BP(Back Propangation)神经网络的PID控制系统结构如图8所示。控制器由两部分构成。㈠经典的PID控制器:直接对被控对象进行闭环控制,并且三个参数Kp、Ki、Kd为在线调整方式。㈡神经网络:根据系统运行状态,调节PID控制器的参数,以期达到某种性能指标的最优化,使输出层神经网络输出状态对应于PID控制器三个可调参数Kp、Ki、Kd。通过神经网络的自学习和加权系数调整PID使神经网络输出对应于某种最优控制律下的PID控制器。

2.2控制算法

PID控制器的传递函数为:

经典增量式数字PID的控制算式为:

所谓PID控制器参数优化&就是寻求一组最佳PID控制参数&使得系统满足响应速度快、超调量小、调节时间短等动态性能指标要求。

神经网络采用三层BP网络,如图2所示,分别有g,q,l个神经元。

网络输入层的输入为:

网络隐含层的输入、输出为:

式中,为隐含层权值;上标1,2,3分别代表输入层、隐含层、和输出层。

隐层神经元的激活函数取sigmoid函数:

网络输出层的输入、输出为:

输出层神经元的活化函数可取非负的Sigmoid函数:

若取性能指标函数为:

则可按式(3)~式(6)进行前向计算后9按照梯度下降法修正网络权值[4]。

3基于实数遗传整定BP神经网络权值算法

3.1编码方式

常见的编码方式有二进制编码和实数值编码。二进制编码方式的缺点是不直观,且用于较大规模神经网络连接权的编码时,不是因为字符串太长而导致寻优时间过长,就是因为字符串太短,使权值表达精度不够。实数编码方式比较直观,且不会出现精度不足的情况,因此遗传整定BP神经网络的权值多采用实数编码方式。

就一g个输入、l个输出、q个隐层神经元BP结构的三层神经网络而言,网络权值数为(g+l)×q。将神经网络所有的权值作为一个行向量,系统有(g+l)×q=m参数需要优化,可将这些参数作为分量构成一个m维行向量,得到个体的编码为p=[p1,p2,…pm]。

3.2适应度函数

为了使控制器获得满意的过渡过程动态特性,最小目标函数项定义为:

式中,e(t)为系统误差,u(t)为控制器输出,tr为上升时间,b1,b2,b3,b4为加权值,且。最小目标函数的控制器性能最优,因此,适应度函数取。为了使控制器获得满意的过渡过程、动态特性,采用误差绝对值时间积分性能指标作为参数选择的最小目标函数项;为了防止控制能量过大,在目标函数中加入控制输入的平方项;为了避免超,采用了惩罚功能,即一旦产生超调,将超调量作为目标函数的一个惩罚项。

3.3最优保存策略与选择算子

最优保存策略是将遗传操作后产生的当前代群体中最高适应度值与上一代群体的最高适应度值作比较9如果当前代最优个体优于上一代9则将其作为当前代的保留个体9否则9就淘汰新一代中的一个个体9并将上一代中具有最高适应度值的个体加入到新一代中。最优保存策略可保证当前的最优个体不会被交叉、变异破坏。本文采用适应度比例法,即每个个体被选中的概率与其适应度成正比。设fi为某个体的适应度值,则该个体被选中的概率ps为:

为防止适应度值高的个体被淘汰,采用适应度比例法与最优保留策略进行选择操作,即每代适应度值最大的个体可以不经过遗传操作,直接进入下一代,以便更快地寻到最优解。

3.4%交叉操作

按一定的交叉概率pc选择参与交叉的父代个体。本文采用随机选用算术交叉。算术交叉可以保证产生的后代位于两个父代染色体之间。

式中,V1、V2为要交叉的两个个体,V1、V2为交叉后产生的新个体,α为(0,1)之间的常数。

3.5变异操作

本文采用自适应变异算子,适应度越小,则变异概率越大。算法如下:

式中,fmax为群体中最大的适应度值,f为每代群体的平均适应度值,f为要变异个体的适应度值,这里只要设定k1、k2取(0,1)区间的值就可以自适应调整了。对于优秀个体(适应度高于种群平均值),pm取小一点可促进遗传算法收敛;对于适应度低于种群平均值的个体,pm取大些可避免遗传算法陷入局部解。对变异率进行动态自适应调整,其目的是自适应调整搜索区域,提高搜索能力,改善收敛性能,提高遗传算法的收敛速度。

根据遗传算法工作原理,利用遗传算法来优化BP网络权值的流程如图3所示。算法收敛的判断条件是进化代超过预先设定值,且最大适应度针对不同随机初始种群在达到一定进化代后趋于稳定,没有明显变化。

4仿真研究

选取被控对象的传递函数为:

神经网络选取三层前向网络,结构为4-5-3,输入向量为[r(i),y(i),u(i-l),e(i)],隐含层节点数目为5,输出为Kp,Ki,Kd。神经网络权值范围为(-1,1),初始种群规模为Size=20,进化代数为G=100,交叉概率Pc=0.8,自适应变异概率Pm按式(12)进行调整,k1、k2取0.5,b1=0.999,b2=0.001,b3=2.0,b4=100。

用遗传算法学习三层BP网络来逼近非线性函数r=1+的曲线如图4所示。其中细实线为理想输出,“+”为神经网络训练之后的实际输出,网络的实际输出与期望输出基本吻合。

图5为被控对象施加遗传算法-BP神经网络参数优化的PID控制器前后的阶跃响应曲线。

5结语

本文研究了遗传算法与神经网络的结合,采用一种优化神经网络权值的实数编码遗传算法,并应用于参数自学习的PID控制器。对算法参数、适应度函数和遗传算子进行了论述,并应用非线性系统的控制。由仿真结果可以看出,优化参数的控制器控制效果较理想,能够对非线性系统实行有效控制。

参考文献

[1]徐丽娜.神经网络控制[M].北京:电子工业出版社,2003

[2]Gam bardella LM,M astroliM,RizzoliAE,etal.An Optim ization M ethod-ology for Interm odal Term ina M anagem ent[J].JournalofIntelligentM anufac-turing,2001,12(5):521~534

[3]周明,孔树栋.遗传算法原理及应用[M].北京:国防工业出版社,1999

[4]陶永华.新型PID控制及其应用[M].北京:机械工业出版社,2002:171~176

[5]欧阳森,王建华.一种新的改进遗传算法及其应用[J].系统仿真报,2003,15(8):1066~1068.

[6]刘威,李小平,毛慧欧,等.基于实数编码遗传算法的神经网络成本预测模型及其应用[J].控制理论与应用,2004,21(3):421~426

[7]刘金琨.先进PID控制M ATLAB仿真[M].北京:电子工业出版社,2003

[8]洪炳熔,金飞虎,高庆吉.基于蚁群算法的多层前馈神经网络[J].哈尔滨工业大学学报,2003,35(7):823~825

[9]吴振顺,肖原.零极点配置智能PID控制器在系统控制中的应用[J].哈尔滨工业大学学报,2008,40(1):54~57

BP神经网络实验报告 第2篇

一、实验目的1、熟悉MATLAB中神经网络工具箱的使用方法;

2、通过在MATLAB下面编程实现BP网络逼近标准正弦函数,来加深对BP网络的了解和认识,理解信号的正向传播和误差的反向传递过程。

二、实验原理

由于传统的感知器和线性神经网络有自身无法克服的缺陷,它们都不能解决线性不可分问题,因此在实际应用过程中受到了限制。而BP网络却拥有良好的繁泛化能力、容错能力以及非线性映射能力。因此成为应用最为广泛的一种神经网络。

BP算法的基本思想是把学习过程分为两个阶段:第一阶段是信号的正向传播过程;输入信息通过输入层、隐层逐层处理并计算每个单元的实际输出值;第二阶段是误差的反向传递过程;若在输入层未能得到期望的输出值,则逐层递归的计算实际输出和期望输出的差值(即误差),以便根据此差值调节权值。这种过程不断迭代,最后使得信号误差达到允许或规定的范围之内。

基于BP算法的多层前馈型网络模型的拓扑结构如上图所示。

BP算法的数学描述:三层BP前馈网络的数学模型如上图所示。三层前馈网中,输入向量为:;隐层输入向量为:;输出层输出向量为:;期望输出向量为:。输入层到隐层之间的权值矩阵用V表示,其中列向量为隐层第j个神经元对应的权向量;隐层到输出层之间的权值矩阵用W表示,其中列向量为输出层第k个神经元对应的权向量。

下面分析各层信号之间的数学关系。

对于输出层,有

对于隐层,有

以上两式中,转移函数f(x)均为单极性Sigmoid函数:

f(x)具有连续、可导的特点,且有

以上共同构成了三层前馈网了的数学模型。

当网络输出和期望输出不相等时,存在输出误差E如下:

将以上误差定义式展开至隐层,有

进一步展开至输入层,有

由上式可以看出,网络输入误差是两层权值W和V的函数,因此调整权值可以改变误差E。

显然,调整权值的原则是使误差不断的减小,因此应使权值的调整量与误差的负梯度成正比,即:

式中负号表示梯度下降,常数表示比例系数,在训练中反映了学习速率。

容易看出,BP学习算法中,各层权值调整公式形式上都是一样的,均有3个因素决定,即:学习速率、本层误差信号和本层输入信号X/Y。其中输出层误差信号同网络的期望输出与实际输出之差有关,直接反映了输出误差,而各隐层的误差信号与前面各层的误差信号都有关,是从输出层开始逐层反传过来的。

三、程序

clc

clear

all

k=1;

n=10;

P=[-1:0.05:1];

T=sin(k*pi*P);

plot(P,T,'-');

title('要逼近的非线性函数');

xlabel('输入向量');

ylabel('非线性函数目标输出向量');

net=newff(minmax(P),[n,1],{'tansig','purelin'},'trainlm');

y1=sim(net,P);

net.trainParam.epochs=50;

net.trainParam.goal=0.01;

net=train(net,P,T);

y2=sim(net,P);

figure;

plot(P,T,'-',P,y1,'--',P,y2,'*');

title('训练前后的网络仿真结果对比');

xlabel('输入向量');

ylabel('输出向量');

legend('目标函数输出向量','未训练BP网络输出','已训练BP网络输出');

仿真结果如下图:

由仿真结果图可以看出,未经训练的BP网络输出与目标函数差距很大,逼近效果不理想,而对BP网络训练之后的输出可以较精确的逼近目标函数,并且BP网络的训练迭代次数仅约1.2次,网络的输出目标误差就达到了精度要求,收敛速度很快。函数逼近效果、网络训练的收敛速度与原始非线性函数的频率、BP网络隐含层单元神经元的数目以及BP网络训练函数有关。

四、实验结论

通过编程实现使用BP网络对函数进行逼近,对BP网络的信号和误差传递的原理以及隐层、输出层权值调整的规则有了充分的理解和认识。

BP网络是一个强大的工具,它是应用最为广泛的网络。用于文字识别、模式分类、文字到声音的转换、图像压缩、决策支持等。

但是,通过实验看出,它还是存在一定的不足。由于本实验中采用的学习率是固定不变的,从而使得在函数逼近的时候在有些地方出现了偏离,如果能自适应的调整学习率,使网络在学习初期具有较大的学习率,以快速逼近函数,当已经逼近理想输出时再使用较小的学习率,来更加精准的去逼近函数,这样会得到更好的逼近效果和更小的错误率。

遗传BP神经网络 第3篇

关键词:神经网络;遗传算法;Matlab;组合式板齿;脱粒装置;参数优化

中图分类号:S226.1;S126 文献标志码:A 文章编号:1002-1302(2014)03-0351-04

组合式板齿脱粒装置是一个多输入、多输出的非线性系统[1]。人工神经网络简称神经网络(ANN),是基于现代生物学研究人脑组织的成果基础上,用大量简单的处理单元广泛连接组成的复杂网络,用于模拟人类大脑神经网络的学习、记忆、推理和归纳等功能。在神经网络模型中,前馈式的BP网络是一种简单而用途广泛的人工神经网络,它适用于非线性的模式识别和分类预测问题[2]。遗传算法是模拟生物在自然环境中的遗传和进化过程而形成的一种自适应全局优化概率搜索算法。遗传算法提供了一种求解复杂系统优化问题的模式,它不依赖于问题的具体领域,对问题的求解种类有很强的鲁棒性,现已几乎渗透到从工程到社会科学的诸多领域,广泛用于函数优化、组合优化、生产调度、机器学习、自动控制、图像处理和人工生命等领域[3]。应用BP神经网络对组合式板齿脱粒装置进行建模与目标优化,并利用遗传算法对已优化目标进行验证。

1 组合式板齿脱粒装置神经网络数学模型的建立

1.1 BP网络的实现

GA-BP神经网络的拓扑结构如图1所示,采用3层BP神经网络:第1层神经元数目为4个,传递函数为tansig,第2层神经元数目为15个,传递函数为tansig,第3层神经元数目为3个,传递函数为purelin,输入函数为P,输出目标是T。其中,x1为喂入量,x2为脱粒轴转速,x3为板齿螺旋角度,x4为排芯口压板压力,y1为果穗脱净率,y2为籽粒含杂率,y3为籽粒破碎率。

1.2 仿真结果及建模

根据BP网络原理,应用Matlab神经网络工具箱实现 BP 网络模型的创建、训练及仿真,其仿真结果如表1所示。

3 基于遗传算法的脱粒装置参数优化验证

应用遗传算法对“2”节中所优化的指标、因素自变量数值进行验证,建立M无约束函数文件与式(6)、(7)、(8)相同[10]。

由图4单目标参数优化结果可以看出,脱净率(fun1)=99.673%,x1、x2、x3、x4所对应的编码值分别为-1、-0.997、-0.14、0.992;应用线性插值法,即此时脱粒物料喂入量为 2.80 kg/s、脱粒轴转速为220.1 r/min、板齿螺旋角为8.58°、变刚度弹力为59.92 N。含杂率(fun2)=4.107%,此时x1、x2、x3、x4所对应的编码值分别为-0.422、-0.926、-0.101、-0.583;应用线性插值法,即此时脱粒物料喂入量为 2.967 8 kg/s、脱粒轴转速为221.85 r/min、板齿螺旋角为8697°、变刚度弹力为44.17 N。破碎率(fun3)=0.440 3%,此时x1、x2、x3、x4所对应的编码值分别为-0.442、-0.843、-0.047、-0.613;应用线性插值法,即此时脱粒物料喂入量为2.967 kg/s、脱粒轴转速为223.92 r/min、板齿螺旋角为886°、变刚度弹力为43.87 N。脱净率(fun1)、含杂率(fun2)、破碎率(fun3)与神经网络优化结果分别相差0023%、0.001%、0.001%。按照式(9)编写约束函数M文件myfun3_c.m求解运行结果(图5)。

函数求解运行结果(图5)显示,起点为[0 0 0 0],最优解为fun3=0.587 344 355 281 084 5,对应的x1、x2、x3、x4的编码值分别为0.282、0.229、1.000、-0.232;应用线性插值法,即此时脱粒物料喂入量为3.184 kg/s、脱粒轴转速为 250.73 r/min、板齿螺旋角为12°、变刚度弹力为47.68 N。此时fun1=99480 005 4,fun2=5.479 301 54,脱净率(fun1)、含杂率(fun2)、破碎率(fun3)与神经网络优化结果分别相差0001%、0.002%、0.001%。应用遗传算法优化验证结果表明,借助神经网络对组合式板齿脱粒装置建模与参数优化的方法可行,仿真结果可靠。

4 结论

以喂入量、脱粒轴转速、板齿螺旋角和排芯口压板压力为自变量,脱净率、籽粒含杂率、籽粒破碎率为响应值建立神经网络数学模型。利用BP神经网络及遗传算法优化的组合式板齿脱粒装置最佳工作参数为喂入量2.80~3.2 kg/s、脱粒轴转225~251 r/min、板齿螺旋角度 8.25~12.00°和排芯口压板压力 40.0~48.2 N。使用该参数较优化前脱净率减小015%~0.38%,含杂率减小0.97%~1.70%,破碎率减小0084%~0.274%,说明神经网络及遗传算法优化方法是可行的、合理的,为脱粒装置参数优化提供了一个新的方法。

参考文献:

[1]赵武云,郭康权. 组合式螺旋板齿种子玉米脱粒机工作参数优化[J]. 农业机械学报,2012,42(12):56-61.

[2]陈翠英,王志华,李青林. 油菜脱出物在气流中的运动分析[J]. 农业机械学报,2004,35(5):90-93.

[3]雷英杰,张善文,李续武,等. MATLAB遗传算法工具箱及其应用[M]. 西安:西安电子科技大学出版社,2005.

[4]赵武云,郭康权. 变径变间距螺旋板齿式玉米脱粒机设计与试验[J]. 干旱地区农业研究,2013,31(1):226-230.

[5]赵武云,王广万,刘国春,等. 低破碎种子玉米脱粒机的研制[J]. 机械研究与应用,2010(1):132-134.

[6]戴 飞,高爱民,孙 伟,等. 纵轴流锥型滚筒脱粒装置设计与试验[J]. 农业机械学报,2011,42(1):74-78.

[7]戴 飞,张锋伟,韩正晟,等. 自动跟踪式小型太阳能集热玉米果穗干燥装置设计[J]. 农业工程学报,2012,28(5):189-193.

[8]戴 飞,张锋伟,韩正晟,等. 玉米果穗机械干燥装置设计与试验研究[J]. 干旱地区农业研究,2011,29(3):260-264.

[9]戴 飞. 纵轴流锥型滚筒小区小麦种子脱粒装置设计与试验研究[D]. 兰州:甘肃农业大学,2012.

遗传BP神经网络 第4篇

BP神经网络是由大量的具有非线性映射能力的神经元组成的前馈分层网络结构,网络信息分布存储在神经元的权重中,使网络具有很高的容错性和鲁棒性。由于BP神经网络能够在隐含层实现一种特殊的非线性变换,完成多维空间对一个有限数据点的超平面重构,所以选用BP神经网络无需知道点扩散函数就可以拟和退化图像和原始图像之间的非线性映射关系。BP网络对受污染或带噪声的训练样本,不仅能进行正确的映射,且与其纯样本仍相似。正是BP网络的泛化能力强,使它在解决图象复原问题时,可能比其他神经网络具有更好的潜在性能。

不过由于BP网络的初始权值及阈值是随机给定的,因而每次训练的次数和最终的权值会略有不同。这就是说,网络的寻优不具有唯一性,会出现局部极小;另一方面,初始权值阈值给定的“盲目性”,也导致了训练次数的较多,收敛速度慢到有时让人难以忍受。因此,考虑用遗传算法改进的BP神经网络来解决图象复原问题。

2 遗传算法

遗传算法(GA)是由进化论和遗传学机理而产生的直接搜索优化方法,具有自组织、自适应、并行计算、稳健性和整体寻优等特点。遗传算法的操作对象是种群(Population),每个种群由若干染色体组成,每一个染色体对应于问题的一个解,由一个初始种群出发,采用基于适应度的选择策略在当前种群中选择个体,使用复制、杂交和变异方法产生下一代种群,如此一代代演化下去,直到满足期望的终止条件。

遗传算法中包含五个基本要素:参数编码;初始群体设定;适应度函数设计;遗传操作设计;控制参数设定(主要指群体大小和使用遗传操作的概率等)。这五个要素构成了遗传算法的核心内容。参数编码就是将优化问题变量通过一定的变换映射到染色体基因上面。初始群体设定应使其具有足够的规模和随机性。遗传算法根据染色体基因值来计算染色体适应度,并根据适应度值决定染色体的交配概率,适应度大的染色体交配概率大。染色体交配之后应对染色体进行变异,这样可以避免算法过早收敛。变异之后的群体就是子代,它将作为下一代群体的父代,进行同样的遗传操作,如此循环。

3 GA-BP算法

GA-BP算法基本思想是:利用遗传算法大致搜索出一定的权值范围,以此时的权值作为BP算法的初始权值,可以解决BP算法的易陷入局部极小、收敛速度慢和引起振荡效应等缺点。

图1显示了基于遗传算法的BP网络改进方法流程。GA-BP算法用遗传算法优化神经网络的连接权和神经元阈值。在初始化阶段产生大量的个体,并根据每个个体的适合度大小选择其中一部分较高的个体作为父代构成初始种群,种群的个体即为待优化BP网络的权值或阈值,种群的维数也就是权值,阈值的总个数。然后,依据轮赌法从两个个体进行交叉运算产生两个子代,或从中选择一个个体进行变异运算产生一个子代。若子代的适应度比父代的适应度高,则将父代中的个体去掉,形成新的父代,保持父代中的个体数不变。当满足精度即GA法误差平方和小于目标误差εGA时,则转入BP网络继续训练。若网络训练结束,误差平方和仍不能满足要求εBP,此时有可能陷入局部极小点,于是再转回GA法,重复上述过程,直到网络误差平方和满足精度要求为止。鉴于GA法具有宏观寻优等特点,以及BP网络的微调特点,二者结合起来,便可相得益彰。GA的一个染色体就是BP网络法的一个连接权值或者阈值,每个染色体用特定方式编码,GA的满意解就是BP神经网络权值和阈值的近似值。

4 用于图像复原的GA-BP算法的设计

本文设计的用于图像复原的BP神经网络的拓扑结构确定为9:20:1,隐含层采用Sigmoid函数作为激励函数,输出层采用线性函数。图像中某一点的灰度值在退化过程中与它周围点的灰度值有密切关系,距离越小,这种影响作用就越大,所以具有相同灰度值的像素点,如果其邻域不同,退化后的灰度值会有较大差异,可以认为,清晰图像的像素点与相应的模糊图像的对应像素点的邻域高度相关。所以把退化图像的某一点及其周围的八个点的灰度值作为一个输入样本,而相应的原始图像的该点的灰度值作为目标输出,会有较好的复原效果。完整的拓扑结构如图2。

本文根据图像复原的特点,设计的GA-BP算法为:

(1)编码方式:把上述BP网络的权值及阈值都序列化为串的形式,选择用实数编码;而不采用二进制编码方式,是为了防止编码的串过长、复杂度过高,导致遗传算法的效率过低。

(2)个体适应度评价函数:遗传算法一般是按与个体适应度成正比的概率来决定当前群体中每个个体遗传到下一代群体中的概率多少;本文把期望输出与实际输出之间的误差平方和的倒数作为适应度函数,即

其中,n为输入样本个数,A为实际的输出,T为期望输出。

(3)遗传算子:基本的遗传算子有选择算子、交叉算子和变异算子。

选择算子采用基于正态分布的序列选择函数normGeomSelect;

交叉算子采用实数编码的算术交叉算子arithXover,算术交叉本质上是一种线性重组的交叉方式,即按照下面的公式产生两个个体

其中α是事先给定的或随机产生的[0,1]之间的一个实数,x,y两个父个体进行杂交产生x'和y'。

变异算子:采用的是基于非均一概率分布进行非均一变异函数nonUnifMutation。

5 算法应用及实验结果

将以上设计的GA-BP神经网络算法应用于图像复原。为了减少计算量首先将图像的原始灰度值进行预处理即将每个原始灰度值除以255,将图像的灰度值区间从[0,255]转换到[0,1]。训练时,把原始和模糊图像都分成3×3的子块,选取模糊图像某个子块中每个像素点及其周围的八个点共9个灰度值,作为该像素点的输入样本,这样该子块就有共9×(3×3)=81个灰度值作为整个网络的输入向量P,而原始图像对应子块的9个灰度值作为网络的期望输出向量T。这样,就可以针对每个3×3大小的子块用上述GA-BP网络进行训练,从而对整幅图像完成网络训练。当图像复原时,就可以用训练好的网络分子块还原出对应的灰度图像,再将每个像素的灰度值乘以255恢复灰度到[0,255]即可。

以某子块图像分别训练BP网络和基于遗传算法的BP网络的结果如图3、图4。

如图3、图4实验结果可以看出,使用GA-BP网络训练的收敛速度要明显快于BP网络,相同时间下可以得到较小的均方误差和。

图5中,(a)为原始的图像,(b)是模糊后的图像,(c)和(d)分别为用BP网络和基于遗传算法的BP网络复原的图像,可以看出使用GA-BP还原的图(d)的效果要明显好于BP网络还原的图(c)。

6 结论

本文提出的由遗传算法优化的BP神经网络混合算法,在反复利用遗传优化BP网络的权值阈值后,解码出更优的BP网络参数用以进一步的训练,动态调整了网络参数,使得网络的训练收敛速度加快且能得到更小的均方误差和。从算法分析及上述实验结果可以看出这种混合GA-BP算法比传统的BP网络有更好的图像复原效果。

参考文献

[1]王小平,曹立明.遗传算法——理论、应用与软件实现.西安:交通大学出版社.2002.

[2]史忠科.神经网络控制理论[M].陕西:西北工业大学出版社.2000.

[3]焦李成.神经网络系统理论[M].西安:西安电子科技大学出版社.1990.

[4]胡守仁.神经网络导论[M].长沙:国防科技大学出版社.1993.

[5]胡宇仁.神经网络应用技术[M].长沙:国防科技大学出版社.1993.

[6]周开利,康耀红.神经网络模型及其matlab仿真程序设计[M].北京:清华大学出版社.2007.

[7]Zhang L.,Zhang Y.,Yang Y.-M.,Color images restoration with multi-layer morphological(MLM) neural network,presented at 2003 International Conference on Machine Learning and Cubermetocs, Xi'an,China,2003.

遗传BP神经网络 第5篇

基于BP神经网络的湘西金矿成矿预测

摘要:从变异函数特征和分形维数特征方面,对在湘西金矿深部新发现的V7和V8矿脉与原有的V1,V2,V3和V4矿脉的成矿特征进行对比研究.采用BP神经网络技术对成矿特征图形进行模糊识别并进行定量化的相似类比研究,最后依据类比的结果对深部盲矿体的成矿富集规律进行预测.研究结果表明:新发现的V7矿脉具有广阔的找矿前景,而V8矿化不稳定. 作者: 邵拥军贺辉张贻舟梁恩云丁宗炜陈星霖刘忠法 Author: SHAO Yong-junHE HuiZHANG Yi-zhouLIANG En-yunDING Zong-weiCHEN Xing-linLIU Zhong-fa 作者单位: 中南大学,地学与环境工程学院,湖南,长沙,410083 期 刊: 中南大学学报(自然科学版) ISTICEIPKU Journal: JOURNAL OF CENTRAL SOUTH UNIVERSITY 年,卷(期): ,38(6) 分类号: B659 关键词: 湘西金矿 变异函数 分形维数 BP神经网络 成矿预测 机标分类号: P61 P57 机标关键词: 神经网络湘西金矿成矿预测BP neural networks成矿特征矿脉成矿富集规律找矿前景网络技术特征图形金矿深部模糊识别类比研究函数特征分形维数对比研究盲矿体定量化矿化变异 基金项目: 国家科技攻关计划,国家科技支撑计划 基于BP神经网络的`湘西金矿成矿预测[期刊论文]中南大学学报(自然科学版) --2007,38(6)邵拥军贺辉张贻舟梁恩云丁宗炜陈星霖刘忠法从变异函数特征和分形维数特征方面,对在湘西金矿深部新发现的V7和V8矿脉与原有的V1,V2,V3和V4矿脉的成矿特征进行对比研究.采用BP神经网络技术对成矿特征图形进行模糊识别并进行定量化的相似类比研究,最后依据类比的结...

教学质量评价的BP神经网络模型 第6篇

摘要:针对教学质量评价的非线性、复杂性等问题,提出了基于BP网络的教学质量评价决策模型,借助其自学习,自适应及最佳逼近性能对评价数据进行量化训练,得到教学质量评价结果。MATLAB仿真结果表明了该评价模型的有效性,获得了较好的评价结果。

关键词:相对属性约简;BP神经网络;教学质量;评价决策

湖北经济学院法商学院教研项目-教师教学质量监控与评价实践问题的研究(2014J24)

在高校中,对教师的教学质量评价一直是国内外研究的热门课题。合理的评价不仅对教师起到良好的激励,而且还起到正确的、满足当前国家与社会需要的引导作用。随着信息技术迅速发展,出现了基于多元线性回归、偏最小二乘等教学质量评价方法[1-2],但这些方法或多或少存在一些不足。由于教学质量各评价指标之间以及与评价结果间是一种复杂非线性关系,而人工神经网络具有非线性、实时优化、智能学习等优点,成为当前教学质量自动评价的主要算法[3-5]。本文首先使用SPSS主成分分析法对数据进行预处理,再利用BP神经网络,采用三层神经元的量化评价方法对教学质量评价数据学习训练,得到最终的评价结果。MATLAB仿真表明,该方法是一个可行的评估方法。

一、评价指标体系

在教学质量评价中,评价指标是评价工作最终真实有效的重要因素之一。为了确保研究工作顺利进行,得到理想的评价模型,借鉴了多所高校的教学评价指标及湖北经济学院法商学院教师课堂教学质量评价标准和相关研究文献,首先使用SPSS主成分分析法对数据进行预处理,简化后的指标见表1所示。

二、BP神经网络MATLAB算法过程

用MATLAB进行BP神经网络模型的建立和反复训练,以达到误差最小,使输出的预侧值能与实际值尽量接近。具体步骤如下:

⑵建立网络

网络名=[newff(PR,SN,TF,BTF,BLF,PF)];PR=[输入取值范围];SN=[每层神经元数]。TF=[每层传递函数],BTF=[网络训练函数],BLF=网络权值阈值函数,PF=网络性能函教,网络输出和目标输出的均方误差,取默认值MSE。

⑶相关参数设定。

⑷训练网络。网络名=train(网络名,输入变量名,目标变量名),此过程反复调整权值和阈值,以减小性能函数的值,直到达到预先设定的误差精度。

⑸模拟输出:sim(网络名,输入变量名)

(6)样本观测值与拟合值的比校。当拟合值与目标直线相交时,就应该考虑将目标直线下移,即提高精度,再进行训练。反复调整该参数,使网络更接近实际值。

三、模型构建与仿真应用

根据表1中的评价指标,收集相关评价数据。用Matlab建立三层BP数神经网络[6],输入层神经元为14个,输出层神经元为1个,隐含层节点个数为8个。从评价数据中选取15个训练样本,归一化处理后,样本分为输入样本P和期望输出样本T,见表2。

使用MATLAB编程进行模拟训练,经过3000步后,误差达到要求,过程如图1所示。网络输出与期望输出的结果拟合如图2所示。

结语

教学评价是一个复杂的、非线性过程,运用本文提出的决策模型,MATALB验证结果表明它是一种有效的可值得借鉴的方法,为教学评价决策提供方便快捷的途径,同时该评价模型也可推广到其他非线性的评价系统中。

参考文献:

[1] 马红.运用灰色趋势关联方法评价教学质量[J].武汉理工大学学报,2010,32(15):181-184.

[2] 刘伟,孙林.基于支持向量机的课堂教学质量评价[J].合肥工业大学学报:自然科学版,2010,33(7):968-971.

[3]孙晓玲,王宁,梁艳.应用 BP 神经网络的教学评价模型及仿真[J].计算机仿真,2010,27(11):314-317.

[4]傅莉.BP神经网络在教学质量评价中的应用[J].智能计算机与应用,2012,(05):70-72.

[5] 唐立力.基于BP神经网络的课堂教学质量评价系统[J].中国西部科技,2014,(04):103-105.

[6] 刘会灯,朱飞. MATLAB编程基础与典型应用[M].北京:人民邮电出版社,2008.

作者简介:

石黎(1980- ),女,湖北人,副教授,博士,研究方向:辅助教学决策;

孙志梅,讲师;

刘毅,本科生;

遗传BP神经网络 第7篇

在非线性的多目标选优算法中,目前,以遗传算法GA(Genetic Algorithm)作为全局优化方法代表,而局部优化方法首推前向神经网络权值学习的反向传播算法(Back Propagation Algorithm) 简称BP算法。同时两者算法特性存在明显互补性,前者不利于局部解的选择,难以确定它们的精确位置,收敛到全局最优解所需的时间可能很长;后者利用梯度下降法,使权值向它的误差函数负梯度方向进行调整,以实现最快减少误差,局部微调性强。针对这两种算法特点,在GA 的基础上引入改进型的BP算法构建混合型遗传BP算法,该算法先利用GA 的全局搜索能力获得精度较低情况下的近似解,再利用梯度法较强的局部搜索能力进行解的微调,从而较快地搜索到精度较高的满意解。仿真结果表明,该混合算法不仅避免了GA 的未成熟收敛和BP算法易陷于局部最优的缺点,而且加快了算法收敛的速度。

1 BP网络原理及其优化

基于BP网络的视频类型分类技术受到BP算法的影响,系统分类识别的关键性能无法满足系统设计要求。论文在简要叙述BP网络结构和BP算法原理基础上,针对BP算法存在的问题进行优化改进,并利用Matlab神经网络工具箱和测试函数对优化前后的BP算法性能进行仿真比较

1.1 BP神经网络及算法

BP算法是用于前馈多层网络的学习算法,前馈多层网络的结构一般如图1所示。它包括:输入层、输出层以及处于输入输出层之间的隐含层。隐含层有单层或多层,隐含层虽然和外界不连接,但它们的状态影响输入输出之间的关系。改变隐含层的权系数,可以改变整个多层神经网络的性能。

设有一个多层神经网络,并在输入层加入样本X,第K层的第i神经元的输入总和表示为Uik,输出Xik。从第K-1层的第j个神经元到第K层第i个神经元的权系数为Wij,各神经元的激发函数为f(),则各个变量的关系可用数学式表示为:

Xik=f(Uik) (1)

Uik=jWijXjk-1(2)

反向传播算法分二步进行,即正向传播和反向传播。

(1)正向传播:

输入的样本从输入层经过隐含层单元一层一层进行处理,通过所有隐含层传向输出层。在逐层处理的过程中,每一层神经元的状态只对下一层神经元的状态产生影响。实际输出和期望输出在输出层进行比较。如果实际输出不等于期望输出,且误差大于网络误差精度,则进入反向传播过程。

(2)反向传播:

反向传播时,把误差信号按原来正向传播的通路反向传回,并对每个隐含层的各个神经元的权系数进行修改,使期望误差信号趋向最小。

1.2 BP神经网络的优化

BP算法现在已成为目前应用最广泛的神经网络学习算法,在函数逼近、模式识别、分类、数据压缩等领域有着更加广泛的应用。它结构简单、可操作性强、能模拟任意的非线性输入输出关系,BP算法被绝大多数神经网络采用。但算法也存在学习收敛速度慢、容易陷入局部极小而无法得到全局最优解、对初始权值的选取很敏感等缺点。

1.2.1 BP网络存在的问题

人工神经网络的学习性能主要体现在训练速度高低和泛化能力强弱两个方面。影响网络性能的主要因素有网络拓扑结构和规模、网络权重修改策略、网络节点的激励特性等。对于BP网络,这些因素是指隐含层神经元的个数、权重修改的步长因子、S型函数的形式等。由于BP网络存在训练速度慢、局部最小化问题、振荡不收敛等固有缺陷,很难通过算法自身进行克服,需要引进其它算法对BP网络进行优化

1.2.2 BP网络优化的方法

针对BP网络存在易陷入局部极小、收敛速度慢、网络隐含层节点数选择的盲目性、泛化能力较差等问题,下面将给出相应的优化方法。

(1) 局部最小化问题的优化

对于BP网络存在的局部最小化问题,主要的优化方法有:遗传算法、利用混沌运动遍历的特点的混沌算法、模拟退火算法等。鉴于遗传算法作为全局优化搜索方法,具有简单通用、鲁棒性强、适于并行处理和应用范围广的优点,该方法已经成功地解决了XOR问题。因此,本文选取遗传算法作为局部最小化问题的改进算法。

(2) 网络收敛速度的优化

提高BP网络收敛速度的方法归纳为三类:优化网络学习率的变化方式来提高训练速度的方法。如:动量项法,自适应学习率法、共轭梯度法、牛顿迭代法LM(Levenberg-Marquardt)法等。优化网络初始参数方式来提高训练速度的方法。如:对输入初始参数和网络连接权重参数进行归一化等。优化网络学习结构的参数来提高训练速度的方法。如:误差函数修正法、激励函数选取法等。

在上述方法基础上,采用以下几点改进措施:

1) 采用动量项法和LM算法加快BP网络的训练收敛过程

BP神经网络在学习过程中需要改变权重,而权重是和权重误差导数成正比的,但真正的梯度下降法要求所取的间隔无限小。在带有附加动量项的权值调节中,比例系数η越大,权重改变越大,若能选择合适的速度,使它的值尽可能大但又不至于引起振荡。这样就可以为系统提供一个最快的学习步长。增大学习步长而又不导致振荡的方法,就是修正反向传播中的学习步长,使它包含一个动量项。LM算法结合了共轭梯度法和牛顿迭代法的优点,其性能更好一些,是目前网络训练最快的网络训练算法。

2) 修正BP算法的误差函数和激励函数

等效误差分量δjδm的大小和正负的变化对收敛速度存在影响,因为BP网络将误差逆向传递,δjδm两者比较, δj对收敛速度的影响更大,在此修正误差函数定义为:

E=-pm[Τp×logym+(1-y)δmp×log(1-ym)](3)

其中δp=yp-tp

激励函数也是BP算法中影响收敛的重要因素,激励函数的选取影响着BP算法的收敛速度,采用文献的方法修正激励函数。f(x)=(1+e-x)-1为原激励函数,f(x)=(1+e-kx)-1为修正后的激励函数。

3) 网络初始参数归一化处理

由于输入样本属于不同量纲,故对所有的输入样本,(如:网络初始数据)进行归一化处理并使之转化到[0,1]之间。这里利用比例压缩法,具体公式为:

Τ=Τmin+Τmax-ΤminXmax-Xmin(X-Xmin)(4)

公式中,X为原始数据;Xmax、Xmin为原始数据的最大值和最小值;T为变换后的数据(也称之为目标数据),Tmax、Tmin为目标数据的最大值和最小值,取Tmax= 0.9,Tmin= 0.1。网络训练完成后,将最终得到的数据进行还原处理,其公式为:

X=Xmin+Xmax-XminΤmax-Τmin(Τ-Τmin)(5)

4) 隐含层节点数选择方法的改进

隐含层的神经元数可用以下公式计算:

k=m+n+aa[1,10](6)

k=2(m+n)+1 (7)

k=log2m+n (8)

式中,k为隐含层节点数,n为输入层节点数,m为输出层节点数,公式计算值需要用四舍五入法进行取整,在考虑上述公式和比较仿真的效果后确定隐含层的节点数。

2 基于遗传BP网络的分类算法

2.1 遗传BP混合算法的理论基础

遗传算法模拟自然遗传学原理和生物进化理论形成的一种全局并行的随机搜索方法,其主要特点是群体搜索策略和群体中个体之间的信息交换,搜索不依赖于梯度信息,该算法鲁棒性强,且不易陷于局部最优。BP算法利用梯度下降法,使权值向它的误差函数负梯度方向进行调整,以实现最快减少误差。该算法是基于梯度这个局部信息来搜索的方法,局部微调性强,但容易陷于局部最优点。由于两种算法特点互补,在GA&BP混合算法中,利用GA并行搜索多个目标点,提高初始权值的鲁棒性,然后BP算法再将优秀个体进行局部微调。这样既可以避免GA的过早收敛(早熟),又可以克服BP陷入局部极小值,使混合算法既有较好的全局收敛性,又有较快的收敛速度,从而提高了学习算法的效率。

2.2 遗传BP混合算法结构

目前混合学习算法的结构类型多种结构, 论文采用串行的GA&BP混合学习算法,其具体实现步骤如图2所示。

2.3 遗传BP混合算法的验证与仿真

BP神经网络学习算法的性能优劣,一般可以从训练速度、训练精度和收敛概率三个指标进行比较,其中训练速度尤其重要。下面将围绕上述三个参数,通过仿真比较检验标准BP算法与GA&BP混合算法的实际性能。

2.3.1 选择测试函数

测试函数的选择,本文借鉴Matlab神经网络工具箱的测试形式,选取模式识别和函数逼近中的两个测试函数进行比较,测试函数如表1所示。

选取函数的输入/输出样本如表2,表3所示。

(1) 分类函数

(2) 非线性函数

2.3.2 选择仿真比较算法

为验证BP算法和经过自身优化后的BPX算法和GA&BP混合算法的性能,选择三个算法对上述两个例子进行训练。

对两个测试例子,算法的控制参数如下:

(1) 分类函数的仿真参数

标准BP算法:学习步长0.01,最大循环次数为100000。BPX算法:学习步长0.01,最大循环次数为100000,学习步长增加倍率为1.05,减少倍率为0.7,动量项常数为0.9,最大的误差倍率为1.04。GA&BP混合算法:群体规模为30,最大进化代数为200,平台允许代数为5,BP训练模块中最优个体BPX训练次数为100,其它BP训练参数与BPX算法的参数相同。

(2) 非线性函数y = f(x)的的仿真参数

标准BP算法:学习步长0.01,最大循环次数为150000。BPX算法:学习步长0.01,最大循环次数为150000,学习步长增加倍率为1.05,减少倍率为0.7,动量项常数为0.9,最大的误差倍率为1.04。GA&BP混合算法:群体规模为30,最大进化代数为300,平台允许代数为20,BP训练模块中最优个体BPX训练次数为100,其它BP训练参数与BPX算法参数相同。

2.3.3 仿真实验结果

(1) 训练结果数据表

两个测试函数训练系列结果如图3~图8,表5、表6所示,从结果可以看出,分类函数中的神经网络存在训练平台,标准BP算法和BPX算法都出现平台效应,影响算法的收敛概率,GA&BP混合学习算法可以成功地跳出局部最小化。从单个样本训练所需的平均时间上看,在训练误差相同的条件下,GA&BP混合学习算法比BPX算法和标准BP算法少。

(注:图3与图4中的纵坐标为时间,单位为秒;横坐标为误差数值;算法1为标准BP算法,算法2为BPX算法,算法3为GA&BP混合学习算法。)

(2) 训练结果效果图

在仿真过程中,图5、图6为标准BP算法学习步长小、大造成收敛速度慢和震荡不收敛的仿真现象;图7为标准BP算法和BPX算法学习过程中,都可能出现局部最小化仿真现象,见图8为GA&BP混合学习算法在仿真中的较理想收敛曲线。

3 结 论

综合运用目前BP算法优化的主要方法对BP算法进行改进,获得在局部选优较理想的BPX算法,利用BPX作为遗传算法结构中局部选优的BP算子,最终完成GA&BP混合算法的设计。在Matlab6.5仿真环境中,通过两类测试函数,对标准BP算法、BPX算法、GA&BP混合算法,进行仿真比较,验证GA&BP混合算法的性能和BP算法优化效果,结果表明GA&BP混合算法在收敛速度、误差精度、收敛性等主要仿真性能指标有明显改善,该算法已在科技部国际合作项目(视频交通信息系统)的车型自动分类识别技术中进行项目的工程应用。

参考文献

[1]向国全,蓝道珍.BP模型中的激励函数和改进的网络训练法[J].计算研究与发展,2001,4(2):113-117.

[2]Karystinos N,Pados A.On Overfitting Generalization and Randomly Expanded Training Sets[R].IEEE Trans Neural Networks,2000(11):1050-1057.

[3]李伟超,宋大猛,等.基于遗传算法的人工神经网络[J].计算机工程与设计,2006,27(2):316-318.

[4]焦李成.神经网络系统理论[M].西安:西安电子科技大学出版社,1993.

[5]Lu C,Shi B.Hybrid Back-Propagation/Genetic Algorithmfor Multilayer Feed Forward Neural Networks[C].Proc of the5th International Con-ference on Signal Processing,2000(1):1571-1574.

[6]Xu Y.Chaos Algorithmof Multilayer Feed forward Neural Network[J].Proc of the3rd World Congresson Intelligent Control and Automation,2000(2):857-858.

遗传BP神经网络 第8篇

神经网络是由大量非线性处理单元通过密集连接而构成的一个并行信息处理系统。它具有强大的学习能力和信息表示能力,因而被广泛地应用到模式识别、自动控制和系统决策等领域中。神经网络按其结构可分为两大类,即前向神经网络和反馈神经网络。目前,在前向神经网络的学习中普遍采用的是反向传播学习算法(即BP算法)及其变种。这类算法从本质上讲均属于梯度下降算法,因而不可避免地具有以下一些难以克服的缺陷,如:易陷入局部极小值、收敛速度慢等。

为了克服上述梯度下降算法存在的缺陷,本文采用了遗传算法优化BP网络,并在此基础上建立了陀螺的温度变化与漂移之间的模型,经实测数据验证,该方法具有较好预测的效果。

1 基于遗传算法的BP网络

1.1 遗传算法优化策略

前馈多层神经网络采用BP算法学习时,由于BP算法采用的是梯度下降法,使得网络的学习效果对初始权的依赖性较大,致使其易陷入局部极小,收敛速度减慢,甚至不收敛。尽管众多研究人员采用多种改进措施,以克服上述弊病,但由于没有摆脱传统的局部寻优,并不能从根本上解决问题。而遗传算法具有的高度并行、随机、自适应搜索性能,使它在处理用传统搜索方法解决不了的复杂和非线性问题时,具有明显的优势。

因此,这里将遗传算法,神经网络相结合,用遗传算法学习神经网络的权重及拓扑结构,对神经网络进行改进,提高了神经网络的精度,同时也提高了遗传算法的局部搜索能力和解的品质[1]。然而,虽然用遗传算法能够对神经网络进行改进,却难以解决其自身存在的种群内过早收敛现象[2]。由于这种现象的存在,算法很难找到真正的最优解。因此,必须对遗传算法进行改进。在这里,采用一种新的方法:混配,并对遗传算法进行改进,形成一种新的算法-混配遗传算法。

1.2 混配遗传算法CCGA

按照生物学的进化理论,多样性是生物种群进化的基础。同样,群体的多样性也是GA能够搜索全局最优解的基本条件。对于遗传计算来讲,群体的多样性保证了遗传算法正常发挥进化和重组效应,其中选择算子的作用是减弱群体的多样性,交叉算子保持群体多样性不变,变异算子则提高群体的多样性。

关于群体多样性,可以给出如下的计算方法:

任意优化问题的二进制编码空间为{0,1}L。群体规模设定为n,群体所包含个体集合P={a1,a2,…,an},其中aj={a1j,a2j,…,aLj},j=1.2…n.其多样性测度:

m(A)=1L*nl=1L(max{j=1Lalj,j=1L(1-alj)}-min{j=1Lalj,j=1L(1-alj)})(1)

显然,m(Ρ)[0,1],当m(P)=0时,群体的多样性完全消失;当m(P)=1时,群体的多样性测度最大。对于t代群体,其多样性测度为m(P(t))。

在实际优化问题计算中,存在着GA并不总是收敛到全局最优解或满意解的现象,即使对于单调或单峰函数也是如此。这种现象与GA收敛于局部最优解不同,欺骗问题性质也不相同。当前群体的最佳位串距离最优解仍然存在着比较显著的海明距离,但是群体的进化能力已经基本丧失。

笔者的观点就是基于以上论述的背景而提出来的。“混配”就是给予在首次选择中淘汰的基因再次与优良基因交配的机会,避免出现过早收敛的现象,它的方法就是保留父代中产生的全部优良基因,同时以保留率为Px在父代中随机抽取较差的基因,然后,在以后的交配过程中,将保留的基因全部进行繁殖、变异、竞争和选择。再下一代还是按照以上方法进行,这样就保持了种群的多样性而不至于陷入“预饱和”。如图1所示。

算法实现:

终止准则:

可以使用两种终止准则:

1)利用最大的循环次数作为终止准则;

2)利用群体最优基因个体多代未变作为终止准则。

以上各种准则可以单独使用,也可以联合使用。

2 应用举例

2.1 光纤陀螺温度漂移描述

陀螺的性能参数对环境温度的变化很敏感,而且光纤陀螺各组件的误差对陀螺漂移的影响都是很复杂的非线性方程[3]。图2(温度变化从-18~9℃,温度上升速率为54℃/h)为某研究所研制的保偏光纤线圈的全光纤陀螺在温度变化时,陀螺输出电压与温度变化曲线。陀螺输出电压与漂移之间是线性变换关系,在恒温下其幅值为10-6量级。

本文涉及的对象是光纤陀螺温度漂移建模,是由一个多层前馈网络构成,为了用遗传算法学习整定前馈网络的连接权,首光将网络各连接权编码。本文通过试验的方法,选择了多参数互联定点映射编码法[4]。即假设有m个网络权值,则编码为:

其中Wij{0,1},这里优化的对象是前向网络,激励函数为:

f(x)=11+exp(-x)(2)

如果神经网络选取三层BP网络,则根据实际经验,笔者总结的规律公式:

Μ=ΜiΜh+ΜhΜo+Μh+Μo(3)

(3)式中,M为权值总的数目,Mi为输入向量的个数,Mo为输出向量的个数,Mh为隐含节点数。在实际应用中,采用了1-10-1结构的BP网络,输入为当前时刻的温度值,输出为输出电压。取误差指数SSE(sum squarer error)为5×10-4,网络的仿真结果如图3所示。其中,实线表示实测曲线,虚线表示预测曲线。由图可见,网络的输出结果与实际测量结果十分吻合,并且预测结果与测量结果之间的最大相对误差小于1%,这表明网络具有较高的准确性。

3 结语

通过上述试验结果可见,应用混配遗传算法优化BP神经网络所得的预测结果满足误差精度要求,所建立的模型已经能够充分描述陀螺的输出电压与温度之间的映射关系。此外,由于神经网络和遗传算法已经获得广泛的应用,很多算法都比较成熟,因此,采用两者相结合的策略来对光纤陀螺温度漂移建模的方法,具有很大的实用价值。

摘要:针对BP网络存在易陷入局部极小和收敛速度慢的问题,采用遗传算法(GA)优化BP网络;并采用混配的方法,对遗传算法进行了改进,克服了遗传算法中所存在的种群内过早收敛的缺点,并在光纤陀螺温度漂移建模中,取得了较好预测的效果。

关键词:人工神经网络,遗传算法,混配,光纤陀螺,温度漂移

参考文献

[1]吕锋,石敏,吴丹雯,等.基于CA的BP神经网络模型的研究及应用.武汉理工大学学报,2002;24(2):35—37

[2]程国胜.连续时间遗传算法模型及其强收敛性分析.应用数学,2002;15(4):23—28

[3]卫炎.光纤陀螺温度漂移模型的研究.上海:上海交通大学仪器工程系,1994

遗传BP神经网络 第9篇

异丙酚(Propofol),化学名为2、6-双异丙基酚,具有高度的脂溶性,是一种作用于中枢神经系统的快速强效全身静脉麻醉剂。因其作用持续时间短,维持病人无意识状态平稳,长时间输注后并无明显蓄积,苏醒迅速完全的特性,明显优于目前常用静脉麻醉药。同时,与吸入麻醉药物相比,又有抗呕吐和无环境污染等优点。出于对麻醉药物的安全范围较窄的考虑,和近年来异丙酚在计算机辅助靶控输注系统(Target controlled Infusion,TCI)上的广泛应用,使得对异丙酚血药浓度预测显得更加关键[1,2]。

为指导临床用药,多位学者对异丙酚的药代动力学进行了研究[3,4,5],普遍采用的是非线性混合效应模型(Nonlinear Mixed Effects Modeling,NONMEM)估计法[6,7]。非线性混合效应模型是目前群体药代动力学中应用最广泛的参数估算方法,其结构分为三个部分:药动学模型、固定效应模型、随机效应模型。将药动学基础模型引入协变量,加入各种误差项,通过最大似然法求出PPK参数,最后对血药浓度进行预测。但由于其计算过程的繁琐和复杂,推广应用受到很多局限。

人工神经网络(Artificial Neural Network, ANN)是一种由大量处理单元(神经元)以某种方式相互连接,用以模拟生物体神经网络的某些结构与功能的大规模非线性自适应系统。其中反向传播神经网络(Back Propagation Neural Network)因其广泛的适应能力、学习能力、鲁棒性和非线性拟合能力,近年来逐渐在临床药学中得到应用[8]。Brier等人[9]利用BP网络对庆大霉素的稳态血清峰谷浓度进行了预测,获得了与NONMEM方法相似的预测效果。Chow等人[10]对妥布霉素治疗的儿科病人进行血药浓度预测,得出结论,神经网络有能力从较少的采样浓度中获得较为精确的预测结果。CAO等人[11]利用神经网络对中国传统中药山茱萸中莫诺苷的药代参数进行估计,采用了11个隐层的反向传播神经网络,置信90%的均方差为9.2%。但由于BP神经网络自身结构的原因,存在学习速度较慢、易陷入局部极值,尤其对多房室复杂结构,半衰期段的麻醉药物,网络训练较为不稳定。遗传算法(Genetic Algorithm)[12],是以达尔文进化论为基础,以生物进化过程中适者生存和群体内部染色体自然选择遗传理论为基础的高效全局寻优搜索算法,其具有系统优化、适应和学习的高效计算和建模能力。近年来,在优化神经网络结构方面得到诸多应用[13,14,15,16]。

针对异丙酚时变性强,半衰期短,和患者间用药差异较大的特点,将BP神经网络和GA有机融合, 建立一种基于GA优化BP神经网络的异丙酚血药浓度预测模型。根据患者的年龄,身高,体重,体表面积,剂量,输注率、以及采样时间等信息,对异丙酚血药浓度进行预测,以获取血药浓度与病人体征的非线性映射关系,指导麻醉临床用药。

1 BP神经网络

BP神经网络是一种单向的多层前馈网络,其特点是信号前向传播,误差反向传播。该网络由输入层、输出层以及一个或多个隐层节点互连而成,隐层间无连接。其输入信号从输入节点通过隐藏层节点传递到输出节点。

图1中,x1,x2,……,xnBP神经网络输入,y1,y2,…,yn为输出值,wijwjk为网络权值,BP神经网络是一个从输入到输出非线性映射,其目的在于找出xy的映射关系。

2 遗传算法优化BP神经

遗传算法是基于模拟生物进化思想衍生出的一种自适应启发式全局搜索算法。其过程可看作一个种群中个体不断进化,得到比原个体更适应环境的新个体的过程。一般由编码机制、适应度函数、遗传算子、控制参数四部分组成,是一种随机、高效,并行,全局最优解的搜索算法。一方面,其不依赖于传统的梯度下降信息,而是通过模拟自然进化过程来搜索最优解。另一方面,遗传算法又不同于简单的随机搜索,而是充分利用了历史信息来确定搜索的方法。遗传算法优化BP神经网络是利用遗传算法优化BP神经网络的初始权值和阈值,使优化后的BP神经网络能够更好地预测函数输出。

2.1 初始化种群

为扩大搜索空间,保证网络权值和阈值的高精度,本研究采用实数编码[17]。每个个体均为一个实数串,由输入层与隐含层连接权值、隐含层阈值、隐含层与输出层连接权值以及输出层阈值4部分组成。设种群规模为P,随机生成P个体的初始种群,并给定数据选定范围。编码长度通过以下公式计算

L=(I+O+1)Hmax+O+4 (1)

Hmax=2(I+O) (2)

其中,L为编码长度,Hmax为隐层最大节点数,I是输入层节点数,O为输出层节点数。

2.2 适应度函数

根据个体得到BP神经网络的初始权值和阈值,用训练数据训练BP神经网络后预测系统输出,把预测输出和期望输出之间的误差绝对值作为个体适应度值Fi,计算公式为

Fi=ki=1n|yi-oi|(3)

式(3)中,n为网络输出节点数,yiBP神经网络第i个节点的期望输出,oi为第i个节点的预测输出,k为系数。其求目标函数最小问题的目标函数为

fi={Fmax-FiFmax<Fi0FmaxFi(4)

式(4)中,Fmax为Fi最大估计值。

2.3 选择操作

选择操作的过程是体现遗传算法中“适者生存”的关键环节,在每代的进化中,每个解的适应度值将会被计算,适应度高的个体将被更多的繁殖到下一代,而适应度较小的个体,繁殖数目较少,或者被淘汰。遗传算法选择操作有轮盘赌法、锦标赛法等多种方法,现选择轮盘赌法,即基于适应度比例的选择策略,每个个体i的选择概率Pi

Ρi=fij=1nfj=fiF(5)

式(5)中fi是个体适应值。F为种群的适应值,由于适应度值越小越好,所以在个体选择前对适应度值求倒数,k为系数,N为种群个体数目。

2.4 交叉操作

交叉算子将被选中的两个个体的基因链按一定概率进行交叉,从而生成两个新的个体。由于个体采用实数编码,所以交叉操作方法采用实数交叉法,第k个染色体ak和第l个染色体alj位的交叉操作方法如下

{akj+1=aljβ+akj(1-β)alj+1=akjβ+alj(1-β)(6)

式(6)中, akal为父代,而akj+1alj+1为子代,β为[0,1]间的随机数。

2.5 变异操作

变异运算指将个体染色体编码串中某些基因座上的基因值用该基因座的其他等位基因替换,其作用是避免之前选择和交叉操作时某些信息的丢失,保证遗传算法的有效性,完善了其局部搜索的能力。但变异率不易取太大,否则遗传算法就退化为随机搜索。

选取第i个个体的第j个基因aij进行变异,变异操作方法如下

aij={aij+(aij-amax)f(g),r0.5aij+(amin-aij)f(g),r<0.5(7)

式(7)中f(g)=r2(1-gGmax)

式(7)中,amax为基因aij的上界,amin为基因aij的下界,r2为一个随机数,g为当前迭代次数,Gmax是最大进化次数,r1为[0,1]间的随机数。

最优适应度值和平均适应度值将随着每一代的遗传迭代逐步提升,直到达到一定的值或者已无明显的提升。利用遗传算法优化好的网络权值,再用BP算法训练直至达到精度需求。其GA优化BP网络流程图,如图2所示。

3 仿真实验

3.1 数据来源

所用数据来自WorldSIVA Open TCI Initiative数据库中Dyck. J B的实验[18]。实验内容为59例健康成人(年龄(23~82) 岁),接受异丙酚注射,注射浓度为500 μg·kg-1·min-1。收集动脉血标本测定浓度后,应用NONMEM程序分析,结合年龄、体重后,得出异丙酚群体药代动力学参数为

V1=9.64-(0.0512×年龄) (8)

k10=0.652+(0.0148×)V1(9)

k12=1.68/V1 (10)

k21=V1k1219.4(11)

k13=2.67-(0.0145×)V1(12)

k31=V1k13 (13)

因数据数量级差别较大,为避免造成网络预测误差较大,并加快训练网络的收敛,对BP神经网络输入与输出数据进行标准化预处理,使其范围在[0 1]区间内。标准化公式为:

Y=X-XminXmax-Xmin(14)

式中,X为未经处理的神经网络数据集中任意数值,Y为经标准化后X对应的结果,Xmax、Xmin分别为数据集中最大值和最小值。预测结束后,再应用公式(15)将结果还原到预测值。

X=(Xmax-Xmin)Y+Xmin (15)

3.2 GA-BP神经网络预测模型建立

选用Dyck. J B实验中200对数据(约占总样本数的4/5)作为训练数据,50对数据(约占总样本数的1/5)作为测试数据。设计的BP神经网络为3层,各层神经元设置分别为:输入层神经元为8个,输入为年龄、体重、身高、体表面积、血药浓度采样时间、总剂量、注射率,输注停止与否;输出层神经元为1个,即异丙酚血药浓度。其结构如图3所示。

根据隐层神经元选取的常用方法[19,20]和试凑法,最终确定隐层神经元数据为6个。隐含层和输出层传递函数均选用对数sigmoid 函数

f(x)=11+e-x(16)

神经网络模型中采用量化共轭梯度法SCG(trainscg),它的基本思想是融合了可信区间和共轭梯度法,可以避免误差梯度法振荡和收敛性差的缺陷,加快训练速度,提高训练精度,又避免了共轭梯度法每一步的一维搜索。

遗传算法参数设置为: 种群规模取50, 进化代数取100次, 交叉概率取0.4, 变异概率取0.2。

4 预测结果及分析

4.1 预测结果

根据Dyck.J B[19]实验所得的群体药代学参数(公式(8—13)),通过药代学公式进行,将结果与神经网络的预测值进行对比,药代学公式如下

C=R[A1λ1(1-e-λ1t1)e-λ1t1+A2λ2(1-e-λ2t1)e-λ2t2+A3λ3(1-e-λ3t1)e-λ3t2](17)

式(17)中,C为血药浓度,A1、A2、A3、λ1、λ2、λ3为药代模型的混杂参数,R为注射速率,t1为注射时间,t2为停止注射后时长。

图4为NONMEM预测结果与实测浓度的相关性分析,图5为BP网络预测结果与实测浓度的相关性分析,图6为GA-BP网络预测结果与实测浓度的相关性分析。

分析图4、图5、图6可知,NONMEM、BP网络、GA-BP网络预测值与实测值均呈强正相关性,相关系数均在0.85以上,预测质量较好。从其线性回归不难看出,NONMEM与BP网络的预测趋势相似,与Y=X线之间偏角较大,且NONMEM方法在实测浓度为7 mcg左右时,开始出现较大偏离,BP网络预测浓度始终存在偏低的情况,而GA-BP网络预测浓度一直与实测浓度相关性较好,其线性回归与Y=X线也较为接近,其预测浓度与实测浓度明显相关性更高。

4.2 预测误差分析

图7、图8、图9分别为NONMEM预测浓度,BP神经网络预测浓度、GA-BP神经网络预测浓度与其对应的预测误差的相关性。

三者的预测误差大部分都在[-3 3]区间范围,较为集中,在可接受范围。其中,NONMEM的预测误差相对较为分散,而BP神经网络与GA-BP神经网络误差相对集中,但BP神经网络预测误差随实测浓度的增大而增大趋势较明显。

评价和分析药代模型预测误差的方法和指标很多,现选用较为常用的几种[21]:

pe=CM-CP (18)

ΡE=CΜ-CΡCΡ×100%(19)

ΜSE=1Νi=1Νpei2;RΜSE=ΜSE(20)

AΡE=|CΜ-CΡ|CΡ×100%(21)

其中pe表示预测值同真值的误差,CM为模型预测浓度,CP为实测血药浓度,PE表示相对误差,是一种较为直观的误差表示方法,常用于检验药代模型的指标。RMSE表示均方根误差,用来衡量预测值同真值之间的偏差。APE表示平均相对误差,主要加强了数值较大的误差在结果分析中的影响。

表2为GA-BP神经网络、BP神经网络、NONMEM预测误差统计结果对比。

由表2可知,无论是相对误差、均方根误差、平均相对误差,GA-BP神经网络均优于NONMEM和BP神经网络,从标准差和置信区间不难看出,BP神经网络由于其自身结构原因,预测离散度较大。而经GA算法优化后的BP网络其预测相对误差均值在零点附近,各指标的离散程度均优于NONMEM方法和BP网络,模型预测误差较稳定,波动性小。

5 结论

针对复杂的非线性、时变性较强的麻醉静脉速效药物异丙酚血药浓度预测,其优化后的BP神经网络反映出较高的预测能力和准确度,相对NONMEM方法更加便捷,无需假设模型和协变量逐个筛选回归,又避免了BP网络陷入局部极小值预测准确度低和训练失败的弊端,相比BP网络具有更高的稳定性。GA-BP神经网络能够用于短半衰期的多房室结构的麻醉速效药物建模,为非线性群体药代药效学研究分析提供了新方法。

遗传BP神经网络 第10篇

关键词:遗传算法,BP算法,神经网络,电力负荷预测

1 引言

电力负荷预测在实现现代电力系统的安全和经济运行中起着重要作用,是能量管理系统的重要组成部分。对电力系统的火电计划、水火电协调、机组经济组合和交换功率计划而言,短期电力负荷预测是非常重要和有用的基础工具,电力负荷预测方法有传统与现代之分,传统方法:最小二乘拟合法、回归分析法和时间序列法等,其中以时间序列法应用最为广泛,现代方法:主要有灰色数学理论、专家系统方法、神经网络理论、模糊预测理论等。

本文提出一种基于BP神经网络与遗传算法的智能预测模型。该模型综合考虑了天气、日类型等因素,并对应用广泛的BP网络存在的缺陷,如容易陷入局部极小点、收敛速度慢、迭代时间长等问题,通过引入遗传算法、归一化等方法进行优化,然后运用优化的遗传BP网络作为短期电力负荷的预测模型,然后通过MATLAB仿真实现,比较仿真预测结果,说明优化的遗传BP网络预测模型的精度、稳定性。

2 预测技术的智能算法

20世纪80年代后期,一些基于新兴学科理论的现代预测方法逐渐得到了成功应用。这其中主要有灰色数学理论、专家系统方法、神经网络理论、模糊预测理论等。

2.1 灰色数学理论

灰色数学理论是把负荷序列看作一个真实的系统输出,它是众多影响因子的综合作用结果。这些众多因子的未知性和不确定性,成为系统的灰色特性。灰色系统理论把负荷序列通过生成变换,使其变化为有规律的生成数列再建模,用于负荷预测。

2.2 专家系统方法

专家系统方法是对于数据库里存放的过去几年的负荷数据和天气数据等进行细致的分析,汇集有经验的负荷预测人员的知识,提取有关规则。借助专家系统,负荷预测人员能识别预测日所属的类型,考虑天气因素对负荷预测的影响,按照一定的推理进行负荷预测。

2.3 神经网络理论

神经网络理论是利用神经网络的学习功能,让计算机学习包含在历史负荷数据中的映射关系,再利用这种映射关系预测未来负荷。由于该方法具有很强的鲁棒性、记忆能力、非线性映射能力以及强大的自学习能力,因此有很大的应用市场,但其缺点是学习收敛速度慢,可能收敛到局部最小点;并且知识表达困难,难以充分利用调度人员经验中存在的模糊知识。

2.4 模糊负荷预测

模糊控制是在所采用的控制方法上应用了模糊数学理论,使其进行确定性的工作,对一些无法构造数学模型的被控过程进行有效控制。模糊系统不管其是如何进行计算的,从输入输出的角度讲它是一个非线性函数。模糊系统对于任意一个非线性连续函数,就是找出一类隶属函数,一种推理规则,一个解模糊方法,使得设计出的模糊系统能够任意逼近这个非线性函数。

3 基于遗传BP网络的预测技术模型

3.1 遗传BP网络的理论

遗传算法模拟自然遗传学原理和生物进化理论形成的一种全局并行的随机搜索方法,其主要特点是群体搜索策略和群体中个体之间的信息交换,搜索不依赖于梯度信息,该算法鲁棒性强,且不易陷于局部最优。BP算法利用梯度下降法,使权值向它的误差函数负梯度方向进行调整,以实现最快减少误差。该算法是基于梯度这个局部信息来搜索的方法,局部微调性强,但容易陷于局部最优点。由于两种算法特点互补,在GA&BP混合算法中,利用GA并行搜索多个目标点,提高初始权值的鲁棒性,然后BP算法再将优秀个体进行局部微调。这样既可以避免GA的过早收敛(早熟),又可以克服BP陷入局部极小值,使混合算法既有较好的全局收敛性,又有较快的收敛速度,从而提高了学习算法的效率。

3.2 遗传BP网络结构

目前混合学习算法的结构类型多种结构,论文采用串行的GA&BP混合学习算法,其具体实现步骤见图1。

4 技术仿真应用

4.1 遗传BP网络设计

遗传BP网络的输入数据有7个,即预测日的平均温度,预测日前两天的日用电量与平均温度,及预测日前一周的日用电量与平均温度;以7-15-1型结构作为预测网络拓扑结构,输出层输出数据个数为1,即输出预测日的日用电量;隐含层节点数初定为2m+1=15,输入层与隐含层之间的激励函数为tansig(),隐含层与输出层之间的激励函数为tansig();采用实数编码,易求得染色体长度s=55;交叉概率取0.3、选择概率取0.8、变异概率0.05,初始种群个数N=30。

4.2 应用结果与分析

以2008年3月21日到2008年3月31日10组数据作为测试样本,输入以上训练好的网络,预测该10天的用电量;为证明GA&BP算法的优越,同时以相同的数据进行标准BP算法和加动量项法进行用电量预测,预测出的用电量、相对误差和均方差分别见图3~图6。

从表1可以看出,加动量项法的BPX算法和GA&BP算法的预测结果明显优于标准BP算法预测结果;从图3~图6中可以看出,BPX的训练速度比标准BP的快多了,但其全局择优能力较差,容易陷入局部最小化,而GA&BP算法不仅解决了这个问题,而且可以对样本数的要求也不高,并减少了隐含层的节点数,从而简化了网络结构。可见,用GA&BP算法预测结果比较令人满意。

5 总结

论文在分析、比较BP算法等几种智能预测算法对短期电力负荷进行预测,探讨了建立神经网络预报模型的基本方法,进一步对如何提高预报精度的问题进行了研究,并结合电力负荷预测实例检验了神经网络模型的可行性。检验结果表明,GA&BP算法能同时对解空间内的多点进行遗传选优,在找到优化点后,再由BP算法按负梯度方向进行修正网络权值及阈值,避免了BP算法陷入局部最小的缺陷,基于GA&BP算法的电力负荷预测技术,能够较好地识别电力负荷预测的演进规律,对用电量都能进行合理预报,为进行城市用短期电量预测提供了一种有效预测方法。

参考文献

[1]李萍.基于MATLAB的BP神经网络预测系统的设计[J].计算机应用与软件,2008,25(4):149-151.

[2]倪方云.采用改进BP神经网络算法预测短期电力负荷[J].供用电,2008,25(2):16-20.

[3]淘小虎,黄民翔.一种基于模糊规则和神经网络的负荷预测方法[J].电力系统及其自动化学报,2000,12(5):37-41.

[4]李林川,吕东,武文杰.一种简化的电力系统负荷线性组合预测法[J].电网技术,2002,26(10):10-13.

[5]梁海峰,涂光瑜,唐红卫.遗传神经网络在电力系统短期负荷预测中的应用[J].电网技术,2001,25(1):50-53.

[6]Hagan M T,Demuth H B,Beale M H.Neural network design[M].Beijing:China Machine Press,2002.

遗传BP神经网络 第11篇

随着全球定位系统技术的发展,GPS被广泛应用于各工程领域,但仅限于平面坐标方面。因我国采用正常高系统,GPS测量获取的WGS-84椭球的大地高数据无法直接使用。在垂线偏差额定情况下,两者的关系如下[1]:

注: H为大地高,h为正常高,ξ 为高程异常。

由式( 1) 中可看出,正常高和大地高转换的关键是确定高程异常。为充分挖掘GPS数据,克服传统水准测量效率低下、劳动强度大、费事耗力的缺点,很多学者致力于高程异常的应用研究,同时,高程异常也是测绘领域研究的焦点之一。确定高程异常的方法可归纳为几何法、重力学法及几何与重力联合法( 组合法) 。组合法利用高分辨率DTM和卫星重力资料确定重力大地水准面,结合GPS水准构成的GPS高程异常控制网推算的我国大地水准面CQG2000达到了15' × 15'的分辨率和分米级的精度[2]。在部分省市,用GPS水准结合实测重力数据,已经建立2' × 2'分辨率下厘米级的似大地水准面[3 ~ 5]。在局部工程应用中,因成本或无法获取GPS水准及重力数据,导致上述方法无效。因此用少量测绘数据及时有效获取高程异常在工程实践领域具有十分重要的意义。GPS高程拟合采用数值拟合法,通过对GPS控制点的几何联测,计算出高程异常值,根据有限的联测点把整个区域的似大地水准面拟合为数学曲面,再根据数学曲面内插出区域内待求点的高程异常,从而实现待求点大地高到正常高的转换。

常用的高程拟合模型有如下几种,多项式拟合、多面函数法、曲面内插逼近、回归逼近法、移动曲面法、快速傅里叶变换等[6 ~ 8]。上述常规方法是基于统计学的,需要数量足够多的样本,但实际工程应用中,样本数量通常是有限的,从而导致拟合模型无法获取最佳拟合度,而被限制在一定的范围内。人工神经网络采用的是分布式信息存储,且有很好的容错性。不少学者针对人工神经网络的GPS高程拟合建模做了研究[9 ~ 11]。研究表明,BP神经网络可用于高程拟合且有较高精度,但是也存在一定缺点: 1局部极值问题; 2网络拓扑结构需凭经验确定,具有较大任意性; 3初始权值的确定严重影响结果。为解决上述问题,使BP神经网络更好地应用于GPS高程拟合,本文引入遗传算法( Genetic Algorithm,GA) ,充分发挥两种模型的优点,弥补各自的不足,本文将其命名为IGA_BP模型,并以实际工程算例为基础进行了计算验证,取得了理想的结果。

1 IGA_BP混合模型的建模过程

1. 1遗传算法( Genetic Algorithm,GA)

遗传算法是基于达尔文的进化论和孟德尔的遗传变异理论而建立的全局优化自适用概率搜索算法,是一种模拟自然进化过程搜索最优解的方法。 遗传算法使用种群搜索技术,在搜索过程中,种群通过自然选择或有性繁殖的方式继承原有优良基因,生成具有更好性能指标的下一代种群。它不是简单的随机搜索,而是通过对染色体的评价来指导搜索,逐渐地使种群进化到接近最优解的状态。计算步骤如下:

Step 1:随机产生一确定长度的初始群体;

Step 2:计算群体中每一个体的适应值;

Step 3: 运用选择、交叉、变异算子产生下一代群体; 判断是否符合终止准则,是,停止运算, 否,返回Step 2;

Step 4: 将任一代中出现的最优个体指定为遗传算法的执行结果。

1. 2 BP神经网络( Back Propagation Network)

BP神经网络是目前应用最广泛的一种神经网络模型,可以用它来作为时间序列的预测模型。 网络由输入层、隐层和输出层组成,通常采用BP学习算法进行网络的训练。隐层可以有一层或多层,本文采用含有一层隐层的BP神经网络,基本结构如图1所示[12]。BP神经网络的算法学习步骤如下:

Step 1: 输入训练样本,经过网络的计算求出输出值;

Step 2: 将输出值和目标值进行比较,求出误差值;

Step 3:根据误差值调整神经网络的各权值。

重复Step 1~3直至满足精度要求。

1. 3 IGA_BP混合模型的建模

(1)基本思路

BP神经网络是基于梯度下降的学习算法,容易陷入解的局部极小值。遗传算法是一种通用算法框架,不依懒于问题的种类,具有问题域独立性,可扩展性较强,容易与其它算法结合。两算法优缺点比较见表1。BP神经网络寻优精确,容错性较强,但是对网络初始权值的依赖性较强, 需凭经验或随机选取,若选择不合理将导致网络不收敛,或限于局部最优,而导致获取最优值失败。而遗传算法是一种全局优化自适用概率搜索算法,它得到的是全局最优解,但算法后期收敛速度放慢,影响它的寻优效率。为此,我们将二者结合起来,形成一种混合算法—IGA_BP算法。 基本思路: 在算法的初期,用较大的种群数目, 随着算法的深入,相应减少种群数目,这样既保证了个体的多样性,避免算法陷入局部极小值, 又提高了算法的收敛速度,可以使算法很快找到最优解。具体操作步骤如下:

Step1: 随机产生种群Xm × n,每个个体X1 × n代表一个神经网络的初始权值分布,每个基因值为一个连接权值,则个体的长度为神经网络权值的个数,即

考虑到权值的精度要求比较高,选择浮点数编码方法对权值进行编码。

Step 2: 根据适应度函数值对个体进行评价, 对每个个体进行解码得到一个BP神经网络输入样本,计算输出误差值E,选择适应度函数:

计算各个体的适应值,种群个体适应度最大者直接进入子种群。

Step 3: 遗传操作

( 1) 选择算子。采用轮盘赌原则。设第i个个体的适应值fi,则被选中的概率为:

( 2) 交叉算子。使用算数交叉算子。将个体以交叉率pc进行交叉操作。

( 3) 变异算子。选择均匀变异算子,对每一基因值,以变异率pm从对应的基因取值域取一随机数进行替换。

式( 6) 中,ε 为第p + 1个基因值对应的域值宽度。

Step 4: 判断是否达到最大迭代次数或满足精度要求,否则返回Step 2。

Step 5: 取遗传操作中的最优个体作为神经网络的初始权值,通过给定样本数据,按BP算法对神经网络进行训练获取最优解。

Step 6: 通过训练好的BP神将网络,将需要计算的新样本输入网络,按BP算法计算出相应的结果。

( 2) 程序流程图

根据上述基本思路阐述,绘制程序流程图如图2所示。

2工程实例应用

2. 1测区概况

测区位于我国东部沿海某省建立的D级GPS控制网,测区总面积300km2,平均高程为7. 587m, 最大高程24. 199m,最小高程2. 404m,最大高差21. 795m,属于平原地势。测区共有GPS控制点30个,控制点平面位置( XY ) 、 WGS-84大地高( H) 、正常高( h) 均为已知。GPS控制点点位分布图如图3所示。本文将GPS控制点分为容量为20和10的A、B两组数据,分别作为学习集和工作集对IGA_BP混合模型进行拟合训练。为检验模型的收敛速度和训练结果,文中选取传统BP神经网络进行比较。为检验混合模型的GPS高程拟合精度, 除与传统BP神经网络拟合精度比较外,另添加二次多项式曲面拟合算法。将三种拟合后的中误差作为检验模型优劣的主要指标。

2. 2工程建模及模型参数

根据高程拟合的特点,本实例构建三层BP神经网络结构,输入层为GPS控制点平面坐标( X, Y) 和大地高H,隐含层设4个节点,输出层为正常高h ( 如图4所示) 。为满足BP神经网络计算需要,数据计算之前,统一进行归一化处理[13]。混合模型中BP神经网络相关参数设置: 激发函数选用Sigmoid函数[13],学习率为0. 01,期望误差最小值为1 × 10-5,冲量速率为0. 9,最大训练次数为10000。传统BP神经网络相关参数与上述相同。根据已建BP网络结构计算得种群个体长度为21。混合模型中遗传算法相关参数设置: 群体规模为20, 交叉率pc为0. 6,变异率pm为0. 2,最大迭代次数为1000。遗传算法中使用实数编码,比例算子( 轮盘赌) ,算术交叉和均匀变异算子。

2. 3模型GPS高程拟合计算结果比较

(1)收敛性与训练误差比较

为检验模型的收敛速度和拟合误差,分别将A、B作为学习集样本,另一组作为工作集样本进行训练。用两种模型按两种方案分别试算50次, 计算结果比较见表2。

两模型误差输出值比较见图5。

通过表2可以看出,传统BP神经网络的收敛性受初始权值影响较大,大部分情况下处于不收敛的状态,且与学习样本有关,当样本数量较少的时候,收敛率会很低,随着样本数量的增加,收敛率会逐渐增加,但是收敛程度仍具有较大的随机性。 在这一点上,IGA_BP模型优势明显,可做到100% 收敛,改变需凭经验对神经网络的初始权值赋值的缺点。在误差值方面,传统的BP神经网络数值较大,势必对最终结果的输出影响较大,而IGA_BP模型的误差值较小,缩短了网络训练时间,间接地提高了最终结果误差值的精度,此点在算例中有进一步的比较。

图5表明,即使在收敛状态下,传统BP神经网络收敛过程也许经过较长的学习时间,且最终误差值较大,而IGA_BP模型,开始学习后迅速收敛, 且输出误差值较小。

( 2) GPS高程拟合算例

高程拟合算例中,将残差值和中误差作为模型精度比较量,比较结果如表3所示。拟合后学习集合和工作集控制点残差值见图6。

由表3和图6可知,三种模型在方案二中的拟合精度比方案一的高,这表明越多的学习样本建立的网络越稳定,拟合精度也相对越高。比较三模型发现,传统BP神经网络略高于二次多项式的拟合精度,而IGA_BP的精度最高,这说明新建立的模型切实可行,有一定的应用前景。IGA_BP混合模型在方案二中的最大工作残差为0. 035m,中误差为0. 015m,拟合精度可达四等水准测量精度。

3结束语

上一篇:共享通路保护下一篇:流式传输的协议论文