基于粒子群优化与BP算法的协同神经网络学习方法
第3O卷第9期
2013年9月 计算机应用与软件
Computer Applications and Software Vo1.3O No.9
Sep.2013
基于粒子群优化与BP算法的协同神经网络学习方法
江丽王爱平
(安徽大学计算机科学与技术学院安徽合肥230601)
摘要 针对标准BP算法易陷入局部极值及收敛速度慢等问题,提出一种基于粒子群优化与BP算法的协同神经网络学习方
法。该方法在网络的学习过程中,同时利用PSO优化算法与BE算法进行最优网络权值的协同搜索,从而充分利用粒子群算法的全
局搜索性及BP算法的反向传播特点。将该算法应用于4个复杂函数的拟合仿真,并与标准BP算法以及传统的粒子群优化BP神
经网络算法进行比较。实验结果表明所提的协同算法的性能优于传统的BP网络优化算法。
关键词 BP算法 粒子群算法优化 函数拟合协同算法
中图分类号TP183 文献标识码A DOI:10.3969/j.issn.1000-386x.2013.09.006
CooPERATIVE NEURAL NETWoRK LEARNING ALGoRITHM BASED oN
PARTICLE SWARM oPTIMISATIoN AND BP NEURAL NETWoRK
Jiang Li Wang Aiping
(School of Computer Science and Technology,Anhui University,Hefei 230601,Anhui,China)
Abstract For the standard BP algorithm usually has the limitations of local extreme values and slow convergence,a cooperative neural
network learning method based on particle swarm optimisation(PSO)and BP algorithm is proposed in this paper.During the process of
network learning,this method makes use of both PSO and BP algorithms simultaneously to carry out the.cooperative search of optimal network
weight,SO that it takes the full advantages of global search property of PSO and back propagation feature of BP algorithm.We apply this
algorithm in fitting simulation with four complex functions and compare it with the BP neural network algorithms based on either standard BP
network or traditional PSO.Experimental results show that the cooperative algorithm proposed performs better than the traditional BP network
optimisation algorithms.
Keywords BP algorithm Particle swa//n optimisation algorithm Optimising Function fitting Cooperative algorithm
0 引 言
BP算法(误差逆向传播学习算法)是神经网络中最为常用
的方法之一u j。这种算法通过误差反向传播来不断调整网络
的权值和阈值,从而使网络的误差平方和最小。尽管BP神经
网络具有很多显著的特点,但是也存在着固有的缺陷,即收敛速
度较慢、容易陷入局部极小以及网络泛化能力较弱等问题。因
此,许多改进的学习算法相继被提出 -lo]。作为其中的改进算
法之一,基于粒子群优化算法的网络学习算法已经得到广泛的
应用 J。粒子群优化算法PSO(Particle Swarm Optimization)是
一种群体自适应全局搜索优化算法 一1ol。该算法通过种群中
个体之间的协作和信息共享来寻找目标问题的最优解,且实现
简单,需要参数少,收敛速度较快。
本文同时考虑PSO算法与BP算法,提出一种基于PSO优
化与BP算法的协同网络学习新方法。该方法在网络的学习过
程中,同时利用PSO算法与BP算法进行网络最优权值的协同
搜索,从而充分利用了PSO算法的全局搜索性及BP算法的反
向传播特点。通过对4个典型的复杂函数进行函数拟合仿真实
验,然后与标准BP算法和传统的PSO优化BP神经网络的方法 (TPSO-BP)进行比较。实验结果表明,本文提出的方法相比于
传统方法具有更高的收敛精度,且收敛速度更快。
1 基于粒子群算法优化的BP网络权值更新
1.1标准粒子群优化算法
在粒子群优化算法中,待优化问题的解用粒子在搜索空间
中的位置表示。优化计算时粒子群算法首先随机产生一群粒
子,然后通过迭代不断更新粒子的位置从而找到待优化问题的
最优解。假设有一个群体包含 个粒子,在d维的搜索空间
中,粒子群的第i个粒子的位置向量为置=( ,…, ),
速度向量为 =( V ,…, ),该粒子自身搜索到的最佳位
置记为P =(P P ,…,P ),全部粒子搜索到的全局最佳位
置记为P =(P P ,…,P )。在迭代过程中,粒子根据自己
当前的最佳位置 和全局最佳位置 来不断更新自己的位置
和速度。具体过程可用如下公式来描述 …:
收稿日期:2012—06—24。国家自然科学基金项目(61074071,
61104022)。江丽,硕士生,主研领域:人工智能,容错控制。王爱平,
教授。
20 计算机应用与软件 2013丘
。 ( +1)=叼( )・ ( )+cLrl(P 一 (f))+c2r2(P ̄一 。 (f))(1)
(t+1)= (t)+ (t+1) (2)
卵(t)= …一(叼…一叼 i )t/itmax (3)
其中m=1,2,…,d;i=1,2,…, ;卵(t)为惯性权值;t为当前
迭代次数;itmo ̄为最大迭代次数;c ,C 为学习因子;r ,r:为0
~1之间的随机数。
1.2网络权值粒子化及权值更新
BP网络的权值和阈值的粒子化是将BP网络的权值与阈值
看作PSO算法中各个粒子的位置分量。设BP网络的输入层,
隐层及输出层的结点数分别为n , ,n。,则第i粒子的位置所
表示的网络为:
=( 1, 忍,…, )
(Ull,U12,…, f, l1, 12,…,W ^, 1,…,0 ,01,…, ^)(4)
其中, 表示输入结点h与隐结点 的连接权值, 表示隐结点
与输出层结点 的连接权值( =1,2,…, ; =1,2,…,n^;
=1,2,…,n );d=n。nh+ h +n。+nh。在网络权值与阈值
粒子化后,则粒子的适应度函数表示如下:
1 nt f(x )=÷∑(0 ) (5)
。 t q 1 其中, 表示第i个粒子的位置, 为训练样本的个数,O ,
分别表示第q个训练样本在第i粒子所确定的网络权值与阈值
下的网络实际输出和期望输出。
将网络的权值与阈值用粒子表示后,每个粒子的位置就唯
一确定一个神经网络。此时,粒子位置的更新对应着相应的神
经网络权值与阈值的更新。传统的PSO优化的BP网络学习算
法正是利用这种粒子更新过程来搜索最佳的网络权值与阈值,
从而达到网络训练的目的。
2基于PSO与BP算法的协同网络学习算法
2.1标准BP算法的网络权值更新
BP网络拓扑结构包括输入层、隐层和输出层。常用的神经
网络的参数有输入结点与隐结点的连接权值( (t)),隐结点
与输出结点的连接权值( (t)),隐结点的阈值 ,以及输出结
点阈值0 。在标准BP算法中,它们的更新过程如下所示 :
(t+1)= (t)十 (6)
H(t+1)= w(t)+ ^ (7)
(t+1)=oj(t)+融 (8)
0 (t+1)=0 (t)+ (9)
其中, 为隐结点的输出;, 为输入结点的输入;6 为输出结点j
的输出误差, 为隐结点 的输出误差;OL,口为学习参数,通常
在[0.1,0.9]之间取值。
2.2基于PSO与BP算法的协同学习算法
标准的BP算法是按照梯度下降法进行寻优,这种方法收
敛速度较慢且容易陷于局部最优。本文提出一种基于PSO与
BP算法的协同网络学习算法。该算法在更新网络权值的过程
中,同时利用PSO优化算法与BP算法进行协同搜索。通过这
种协同的搜索方法不仅可以有效地提高BP算法的收敛精度,
而且可以进一步提高PSO算法的收敛速度。该算法的具体实
现步骤如下: 步骤1初始化:
(1)初始化BP神经网络的网络结构,包括网络的输入层、
隐层及输出层的结点个数,训练样本的输入和输出以及学习率
Ot, 等参数;
(2)初始化粒子群,包括粒子的规模Ⅳ,每个粒子的位置向
量和速度向量,每个粒子的个体最佳位置,全局最佳位置以及迭
代误差精度s等。
步骤2对粒子群中的每个粒子i(i=1,2,…,Ⅳ)进行如
下迭代更新:
(1)利用式(1)对粒子i的速度进行更新;利用式(2)产生
粒子i的新位置向量 (i=1,2,…,N);
(2)对于粒子i的位置向量 所确定的神经网络利用BP
算法(式(6)一式(9))进行网络权值与阈值的更新并将新的网
络权值及阈值粒子化得到 ;
(3)计算两个新解 和 BP的适应度值;如果/( )</
( ),则更新第i个粒子的位置向量为 。,否则更新第i个粒
子的位置向量为 ;也即:
f so 若 so)<l厂( BP (10)
L 否则
(4)计算粒子的全局最小适应值l厂( ):若_厂(Pe)<s(训
练达到网络误差精度)或当前迭代次数达到最大迭代次数,则
迭代结束转步骤3;否则,转步骤2。
步骤3输出粒子全局最佳位置P 所对应的神经网络权
值与阈值。
3仿真实验
3.1 函数列表
选用以下4个典型的复杂函数:
(1) =100×( — 2) +(1一 1)
E[一l0,10]i=1,2
(2) =∑( 一10cos(21rxi)+lo)
∈[一5,5]i=1,2,3
(3) = 1( + )…s os( )+1
i∈[一l0,10]i=l,2
(4) = + i—XI 2 +扎一sinx;一cos( ̄l ;)
∈[一2盯,2 ]i=1,2,3
3.2函数拟合及误差分析
利用本文提出的神经网络学习新算法,对上述4个复杂函
数进行拟合仿真。实验参数设置:(1)网络的参数:输入结点数
ni为函数自变量个数,隐层结点数 采用经验试凑法,输出结
点数 为函数因变量个数;(2)粒子群算法参数:粒子规模Ⅳ
基于粒子群优化神经网络混合模型预测马尾松毛虫发生量
第36卷第11期东 北 林 业 大 学 学 报Vo.l36No.112008年11月JOURNALOFNORTHEASTFORESTRYUNIVERSITYNov.2008
基于粒子群优化神经网络混合模型预测马尾松毛虫发生量1)
陈绘画 崔相富 杨胜利(浙江省仙居县林业局,仙居,317300) 摘 要 针对BP网络具有局部精确搜索但易陷入局部极小、粒子群算法具有全局寻优的特点,将二者结合起来形成一种训练神经网络的新算法)))PSO-BP算法。根据相关系数法、均生函数法及逐步回归法分别选取与马尾松毛虫有虫面积、虫口密度、有虫株率相关关系密切的气象因子和延拓均生函数序列作为样本的输入特征,分别建立马尾松毛虫有虫面积、虫口密度、有虫株率与气象因子和延拓均生函数序列的PSO-BP混合模型。结果表明:建立的各PSO-BP混合模型,具有令人满意的拟合精度和预测精度。当隐含层神经元个数为13个,预报因子数为6个时,3组预留有虫面积的平均预测误差为4.01%;虫口密度PSO-BP混合模型的隐层神经元个数为9个,预报因子数为4个时,预留样本的平均预测误差为3.32%;有虫株率PSO-BP混合模型的隐层神经元个数为9个,预报因子数为4个时,预留样本的平均预测误差为2.83%。上述3个指标的预测准确率均为100%。关键词 马尾松毛虫;粒子群神经网络;发生量;预测预报;PSO-BP混合模型分类号 TP183OccurrenceForecastingofDendrolimuspunctatusBasedontheNeuralNetworkMixedModelofParticleSwarmOptimization/ChenHuihua,CuiXiangfu,YangShengli(theForestryBureauofXianjuCounty,ZhejiangProvince,Xian-ju317300,P.R.China)//JournalofNortheastForestryUniversity.-2008,36(11).-88~91PSO-BPalgorithm,anewneuralnetworkalgorithm,wasestablishedbycombiningBPnetwork,whichischaracterizedbylocalaccuracysearchbuteasilytrappinginlocalminmium,withParticleSwarmOptmiization(PSO)withglobaloptmiization.Accordingtorelatedcoefficien,tmean-generatingfunctionandstepwiseregressionmethods,meteorologicalfactorscorrespondingtoareaofinfestedwood,populationdensityandtheattackingrateofDendrolimuspunctatusWalker,andcontinuation-mean-gen-eratingfunctionsequencewereselectedasthecharacterofmiportedsamplestoestablishthePSO-BPmixedmode.lResultsshowedthattheestablishedPSO-BPmixedmodelshadsatisfactoryfittingaccuracyandforecastingprecision.Undertheconditionofthehiddenneuronsinnumber13andforecastingfactorsinnumber6,theaverageforecastingerrorof3groupsofreservedare-aofinfestedwoodwas4.01%.Incontras,tifhiddenneuronsinnumber9andforecastingfactorsinnumber4underthePSO-BPmixedmodelofpopulationdensityandtheattackingrate,theaverageforecastingerrorofreservedsampleswere3.32%and2.83%,respectively.Theforecastingaccuracyoftheabovethreeindexeswere100%.Keywords Dendrolimuspunctatus;Particleswarmneuralnetwork;Occurrencequantity;Prediction;PSO-BPmixedmodel 林业有害生物预测预报是预防林业有害生物发生的极其重要的组成部分,是开展科学防灾救灾的基础。加强对林业有害生物发生趋势和危害程度的研究,在其未大发生前及时采取措施,可使林业有害生物对森林资源危害及生态环境破坏造成的损失减少到最低限度,同时还能使林业有害生物的综合管理工作收到事半功倍之效。马尾松毛虫(DendrolimuspunctatusWalker)是我国南方马尾松林(Pinusmassoniana)的历史性大害虫。马尾松毛虫的发生及其种群数量变化,具有周期性暴发的特点,除受到其自身的遗传特性影响外,还受气候、林相、植被、食料和天敌5类因子的影响[1],但林相、植被、食料和天敌4类因子是定性变量,很难量化,更难以预测其变化。前人根据气象因子与马尾松毛虫发生量的相互关系,利用逐步回归分析[2]、判别分析[3]、模糊聚类分析[4]、马尔可夫链分析[5]、区划分析[6]、灰色系统分析[7]等多种方法对其有虫面积进行预测预报;董振辉等还开发出有虫面积预测的专用测报软件[8]。但马尾松毛虫的危害不仅与气象因子密切相关,也与其自身的种群动1)仙居县科技局5仙居县林业主要有害生物数值预报的研究6部分内容(200628)。第一作者简介:陈绘画,男,1968年9月生,浙江省仙居县林业局,高级工程师。收稿日期:2007年11月2日。责任编辑:程 红。态变化规律密切相关,并且是非线性关系。近10多年来迅速发展起来的人工神经网络(ANN)模型[9-11],由于具有自适应学习和记忆联想能力,使得它为解决复杂的非线性问题提供了有用的工具,其预测能力大大优于多元回归分析和判别分析,因而人们又利用BP算法的原理和方法,建立马尾松毛虫发生量的BP模型,预测其发生情况[12-15]。上述各研究或根据马尾松毛虫的危害情况与气象因子的关系建立相应的模型进行预测预报,或根据时间序列原理建立马尾松毛虫危害情况的模型进行预测预报,没有同时考虑气象因子和马尾松毛虫前几代危害情况对当前危害情况的影响。另外BP算法是基于梯度的方法,也存在一些缺点[16],主要是易陷入局部极小、学习速度慢、网络训练失败的可能性较大和引起振荡效应等。粒子群优化算法(ParticleSwarmOptimization,PSO)源于对鸟群捕食行为的研究,系统初始化为一组随机解,粒子在解空间追随最优的粒子进行搜索,通过迭代搜寻最优值[17],所以用它来完成前期的搜索能较好的克服BP算法的缺点。本研究利用浙江省仙居县1983)1990年的各代马尾松毛虫虫情调查资料,将PSO算法、BP算法结合起来,形成一种新的训练算法)))PSO-BP算法,来研究马尾松毛虫的有虫面积、虫口密度、有虫株率与其自身的变化规律及气象因子之间的关系,分别建立马尾松毛虫有虫面积、虫口密度、有虫株率的PSO-BP混合模型,对PSO-BP混合模型在林业有害生物预测预报中的应用进行积极的探索。1 材料与方法1.1 材料来源马尾松毛虫资料来自浙江省仙居县森林病虫防治站,气象资料来自浙江省仙居县气象局。该县于1982年发现有马尾松毛虫危害,自1983年起,每年均在4月(出蛰)、7月(第1代)和9月(第2代)调查各代虫情的危害情况。将1983)1989年的各代虫情调查结果进行建模,1990年的3代虫情调查结果用作回报检验。1.2 预报因子的选择1.2.1 均生函数方法用于建模的有虫面积、虫口密度、有虫株率数据根据调查时间的先后顺序,按下式分别进行标准差规格化处理。Pn=(P-Pm)/Pt,(1)式中:P、Pn分别为规格化前、后的数据,Pm、Pt分别为原始数据P的平均值和标准差。对规格化后的有虫面积、虫口密度、有虫株率序列作一阶、二阶差分运算,再利用式(2)。xl(i)=1nlEnl-lj=0x(i+jl),(2)对原序列、一阶差分序列和二阶差分序列作均值生成函数计算[18]144-146,式中i=1,2,,,l,1[l[M,且nl=INT(N/l),M一般可以视样本数的大小取INT(N/2)或INT(N/3),其中INT表示取整。对原序列和一阶、二阶差分均生函数序列作周期性延拓计算。fl(t)=xl[t-lINT(t-1l)],(3)式中:t=1,2,,,N;l=1,2,,,M。这样使各均生函数序列定义域扩展到整个需要的同一时间轴上。然后再对有虫面积、虫口密度、有虫株率的延拓均生函数序列与相应的规格化后的有虫面积、虫口密度、有虫株率原序列作相关分析,凡与有虫面积、虫口密度、有虫株率相关系数大于R0.95的即选入。1.2.2 气象因子的选择将1983)1989年的各代马尾松毛虫的有虫面积、虫口密度、有虫株率作为因变量。从上一年4月开始至当年3月的旬平均气温、旬降雨量、旬平均相对湿度等8个气象因子作为出蛰代的预报因子,即自变量;相应地,从上年7月至当年6月的8个气象因子作为第1代预报因子;第2代预报因子则为上年9月至当年8月的8个气象因子。因自变量个数太多(气象因子加上延拓均生函数序列,共计315个),因此分二步选取预报因子。第一步,先用相关系数法选取,凡气象因子与因变量的相关系数大于R0.95的即选入。第二步,将相关系数法选出的气象因子、延拓均生函数序列与各因变量进行逐步回归,从而选出与各因变量相关关系最密切的因子作为预报因子。1.3 数据预处理在实施粒子群优化算法前,先对最终入选的各气象因子及有虫面积、虫口密度、有虫株率、延拓均生函数序列按(1)式进行标准差归一化数据处理[18]159。1.4 PSO算法PSO算法是模拟鸟群的捕食行为,将每个优化问题的解看作搜索空间中的一只鸟,即所谓的粒子,所有的粒子都有一个由被优化的函数决定的适应值及一个决定它们飞翔方向和距离的速度,然后粒子们就追随当前的最优粒子在解空间中搜索。PSO首先初始化一群随机粒子(随机解),然后通过迭代找到最优解。在每一次迭代中,粒子通过跟踪2个/极值0来更新自己。一个是粒子本身所找到的最优解,即个体极值p;另一个是整个种群目前找到的最优解,即全局极值g[19]。找到这2个最优解后,每一个粒子就根据下面2个公式来更新自己的速度和位置:vk+1=c0vk+c1(pk-xk)+c2(gk-xk);(4)xk+1=xk+vk+1。(5)式中:vk是粒子的速度向量;xk是当前粒子的位置;pk是粒子本身所找到的最优解的位置;gk是整个种群目前找到的最优解的位置;c0、c1、c2是群体认知系数,c0一般取介于(0,1)之间的随机数,c1、c2取(0,2)之间的随机数;vk+1是vk、pk-xk和gk-xk矢量的和。粒子通过不断的学习与更新,最终到达解空间中最优解所在的位置,搜索过程结束,输出全局最优解g。在更新过程中,粒子每一维的最大速率被限制为Vmax,粒子每一维的坐标也被限制在允许范围之内。1.5 PSO-BP算法在实施BP算法之前,先用PSO算法搜索出全局最优解,以此作为BP算法的初始权值,再由BP算法进行训练,具体步骤为:¹初始化粒子群;º计算每个粒子新位置的适应值;»根据粒子适应值更新个体极值与全局极值;¼根据公式(4)、(5)更新自己的速度和位置;½达到最大迭代次数,则输出全局最优解,否则转º,继续进行搜索操作;¾以PSO算法搜索出的最优全局解作为初始权值,用BP算法训练网络,直到指定训练次数或指定精度。2 结果与分析2.1 预报因子的确定2.1.1 有虫面积预报因子的确定利用相关系数法共筛选出13个因子,然后进行逐步回归,最终确定6个预报因子:1982至1988年每年7月下旬、10月下旬、12月下旬的相对湿度;1983至1989年每年1月下旬、4月下旬、6月下旬的相对湿度;1982至1988年每年11月下旬,1983至1989年每年2月下旬、4月下旬的降雨量;1982至1988年每年6月中旬、9月中旬、11月中旬的最高气温;延拓均生函数原序列第7列;延拓均生函数原序列第9列。2.1.2 虫口密度预报因子的确定利用相关系数法共筛选出6个因子,然后进行逐步回归,最终确定4个预报因子:1982至1988年每年6月下旬、9月下旬、11月下旬的雨日;延拓均生函数原序列第5列;延拓均生函数原序列第8列;延拓均生函数原序列第9列。2.1.3 有虫株率预报因子的确定利用相关系数法共筛选出9个因子,然后进行逐步回归,最终确定4个预报因子:1982至1988年每年6月中旬、9月中旬、11月中旬的降雨量;延拓均生函数原序列第7列;延拓均生函数原序列第8列;延拓均生函数原序列第9列。2.2 PSO-BP混合模型模拟结果2.2.1 有虫面积的PSO-BP混合模型MATLAB粒子群算法工具箱中的pso.m函数调用get_89第11期 陈绘画等:基于粒子群优化神经网络混合模型预测马尾松毛虫发生量
PSO-BP算法
基于PSO—BP算法的模糊神经网络成矿探测评价模型
一、基本的BP神经网络原理
基本BP算法包括两个方面:信号的前向传播和误差的反向传播,即计算实际输出时按从输入到输出的方向进行,而权值和阈值的修正从输出到输入的方向进行。
图1—1 BP网络结构
图1-1中变量含义如下所示 :
jx表示输入层第j个节点的输入j=1,…,M;
ijv表示隐含层第i个节点到输入层第j个节点之间的权值;
i表示隐含层第i个节点的阈值;
x表示隐含层的激励函数;
kiw表示输出层第k个节点到隐含层第i个节点之间的权值,i=1,…,q;
ka表示输出层第k个节点的阈值,k=1,…,L;
x表示输出层的激励函数;
ko表示输出层第k个节点的输出;
kT表示输出层第k个节点的期望输出;
激励函数一般使用S型函数,即 xexfx11x ;
j=0,1,2,…,M; i=0,1,2,…,q; k=0,1,2,…,L。 1a1
kiw
La ka
q i
… … … … …
… 1x
jx
Mx 1o
ko
Lo 输出变量 输入变量
输入层 隐含层 输出层 jvi (1)信号的前向传播过程
隐含层第i个节点的输入inet:
Mjjijixvnet1 (1—1)
隐含层第i个节点的输出iy:
Mjjijixvfnetf1iy (1-2)
输出层第k个节点的输入knet:
qiMjjijkiiqikikxvfwywnet111 (1—3)
输出层第k个节点的输出ko:
qiMjjijkikkxvfwfnetfo11 (1—4)
(2)误差的反向传播过程
基于粒子群算法的BP神经网络光伏电池建模
第30卷第2期 2011年4月 电工电能新技术
Advanced Technology of Electrical Engineering and Energy Vo1.30,No.2 April 2011
基于粒子群算法的BP神经网络光伏电池建模
郭 亮 ,陈维荣 ,贾俊波 ,韩 明 ,刘永浩
(1.西南交通大学电气工程学院,四川成都610031;2.淡马锡理工学院工程学院,新加坡529757;
3.南洋理X-大学电力电子工程学院,新加坡639798)
摘要:针对光伏电池复杂难以建模的非线性特性,本文提出一种基于粒子群算法(PSO)的反向传 播(BP)神经网络建模方法。神经网络具有很强的非线性拟合能力,但同时也存在收敛速度慢、容
易陷入局部极值、建模精度不高等缺点。本文采用粒子群算法来优化神经网络的内部连接权值,以
改善神经网络的性能,并基于这种改进的神经网络构建光伏电池动态模型。测试及仿真结果表明,
通过此法建立的光伏电池模型辨识精度高,收敛速度快,取得了较好的效果。
关键词:光伏电池;神经网络;粒子群算法
中图分类号:TP273 文献标识码:A 文章编号:1003—3076(2011)02-0084-05
1 引言
目前,由于化石燃料的日益减少和全球环境的
恶化,能源紧缺和环境保护已成为全球面临的重大
问题,低碳经济已成为世界各国的重要国策,开发及
利用新能源成为了各国关注的焦点。太阳能作为一
种取之不尽且清洁无污染的能源,成为了新能源领
域开发和研究的重点之一。
光伏电池可直接将太阳能转换为电能,是太阳
能利用的重要组成部分。目前已有的光伏电池模型
多是基于光伏电池物理特性所建立的数学模型。这
些模型虽能表征光伏电池的内部原理却不能有效地
反映当太阳辐射强度、环境温度变化时,光伏电池运
行状态的瞬态变化,并且表达式复杂,计算繁琐。而
实际应用多只针对光伏电池的外部特性,对其内部
机理并无要求,所以传统数学模型并不一定能适应
基于BP_神经网络的PID_控制算法参数优化
中国新技术新产品2023 NO.10(下)
- 22 -高 新 技 术
从本质上来看,PID控制算法就是对比例、积分和比例微分间的关系进行控制的一种算法。PID控制调节器具有适应性强、鲁棒性良好的特征,因此被广泛应用于工业控制领域。但是,随着科学技术、控制理论发展,在工业生产中被控对象逐渐向复杂化和抽象化的趋势发展,并呈现滞后性、时变性和非线性的特征,这使传统PID控制器难以精准调控这种较复杂的控制系统。为了解决该问题,研究人员将控制理论与其他先进的算法相结合,形成全新的控制理论,包括神经网络控制、遗传算法以及模糊控制等。对神经网络算法来说,由于其具有较高的鲁棒性和容错性,因此适用于复杂的非线性控制系统中,并且具有广阔的应用前景和较大的发展潜力。1BP神经网络结构及算法BP神经网络将网络视为一个连续域,在这个网络中,输入层和输出层都是任意时刻、任意数目的样本值,网络输出层值与输入层值间也可以具有任意关系,这个学习过程就称为BP神经网络学习过程。作为一种被广泛应用的神经网络模型,BP神经网络由输入层、输出层和隐含层组成:1) 输入层。从第i个输入向量中产生相应的输出值。2) 输出层。在输出值的作用下将其转换为输入数据。3) 隐含层。在输出值的作用下对数据进行隐含处理,将处理后的结果反馈给输入层,3个输入层构成1个BP神经网络。当输入数据在时间域内经过多次的误差传播时,最后被一个误差源作为输出信号,即经过输入单元和输出组的中间信息。如果该误差源的误差小于输出单元和输出组中各单元间的误差,那么这些单元在计算输出时就会有很大的变化;如果超过了期望值,那么这一单元被认为是输入量存在误差(也就是输入信号存在误差),将不再使用该单元;如果仍然超过期望值,那么输出量又会存在误差[1]。通过分析输入与输出量间的关系可以得出BP网络中各个隐藏层上节点数与该输出量间的关系。BP神经网络的拓扑结构如图1所示。为了对BP神经网络进行运算和优化,该文设定了中间层的加权和结点临界,以便将全部采样的真实输出量与预期的输出量的偏差控制在一个很低的区间,并且通过调节这个区间来保证它的稳定性。BP神经网络算法的流程如图2、图3所示。使用BP神经网络训练算法的步骤如下:1)对网络的训练参数进行初始化,并在该基础上设定模型的初值和训练参数。2)选取用于训练所述网络模式的相应的训练模块,从而能够满足系统的学习要求。3)当该神经网络开始前向传播时,使其处于特定的训练模式,同时对计算神经网络的输出模型和预测模式进行比较。如果在该过程中存在误差现象,就直接进入下一步骤;如果没有误差,就返回步骤二重新开始。4)在该神经网络逆向传输期间,对同一图级的误差进行运算,并对其加权和门限进行修正,修正后再回到第二步。2基于BP神经网络的PID控制器基于BP神经网络的PID控制系统结构如图3所示。由图3可知,该系统主要由常规PID控制器和BP神经网络构成。其中,常规PID控制器主要负责对被控对象进行调节,而Kp、Ki和Kd由BP神经网络进行控制,结合控制系统的运行状态来对3个参数进行调节,从而控制被控对象[2]。在神经网络中,输出层节点的输出与PID控制器的3个参数(Kp、Ki和Kd)对应,利用BP神经网络的自学习能力来对参数具体的权值进行调整,使神经网络输出的PID控制基于BP神经网络的PID控制算法参数优化刘旭(铁岭师范高等专科学校,辽宁 铁岭 112000)摘要:随着控制理论快速发展,比例积分微分(Proportional Integral Derivative,PID)控制算法广泛应用于工业生产中,依托成熟的控制策略,研究人员将PID控制算法与其他学科进行有机融合,衍生了全新的控制理论,神经网络就是其中最典型的一种控制理论。得益于神经网络的强大学习能力和对非线性函数的逼近能力,神经网络可以应用于PID控制算法中。研究发现,将BP神经网络应用于PID算法存在收敛速度慢以及网络波动振荡等问题,为了进一步完善该控制理论,该文通过改进BP神经网络的学习速率和添加动量修正因子的方法来对其进行优化。关键词:BP神经网络;PID控制算法;参数优化中图分类号:TP301文献标志码:A
基于粒子群优化算法的神经网络钻削参数优化
科技信息 。计算机与信息技术O SCIENCE&TEcHNOLOGY曰 OR^ TloN 2007年第25期 基于粒子群优化算法的神经网络钻削参数优化 王力维 (哈尔滨师范大学计算机系黑龙江哈尔滨150000) 摘要:神经网络模型能有效模拟非线性输入输出关系,但其常规训练算法为BP或其它梯度算法,导致训练时间较长且易陷入局部极小点 本文探讨用粒子群优化算法训练神经网络,并应用到钻削加工参数优化中,试验表明粒子群优化算法训练的神经网络不仅收敛速度明显加快 而且其预报精度也得到了较大的提高。 关键词:粒子群优化算法;神经网络;参数优化 .Abstract:The llumerical results showed that PSO—NNs exhibit faster convergence rate and better predicting accuracy than the Bp-NNs. Keywords:particle swarm’optimization algorithm;neural networks;parameter optimization 1.引言 兑现代化生产来说,无论是数控机床(CNC)、机械加工中心 (MC)、柔性制造系统(FMS)、计算机集成制造系统(C[MS),工艺参数 优化是一个至关重要的问题。对现代的数控加工工艺系统,如果不搞 工艺参数优化,不搞科学制定工艺规程。不从“经验判断”转向“科学定 量分析”,则提高数控加工工艺水平便难于实现,生产效率的提高受到 影响,从而缺乏市场竞争力。在机械加工过程中,产品质量和成本直接 与加工的各项参数有关,故而加工参数的优化选择至关重要,直接影 响着企业的效益。在现代机械制造业中,许多参数需要操作人员一次 性确定,与此相关的经验非常关键,尤其切削用量(即切削速度、进给 量和吃刀量)的选择直接影响加工质量,从而影响到产品的质量和加 工成本。因为粒子群优化算法是一种既有分散又有群集的特点的算 法,用粒子群优化算法来训练神经网络的权值,可避免神经网络的缺 陷,神经网络模型能有效模拟非线性输入输出关系。但其常规训练算 法为BP或其它梯度算法。导致训练时间较长且易陷入局部极小点。粒 子群优化算法训练的神经网络不仅收敛速度明显加快,而且其预报精 度也得到了较大的提高。 2.前传神经网络 . 2.1网络结构 网络有7个输入端和1个输出端。分别与7个理 化参数和1个活性值相对应。根据经验规则,网络中权重总数应等于 或小于样本容量,所得数学模型才比较稳定。由此。在本实验中隐层结 点为5比较合适,网络结构为7—5—1,共46个权值。 2,2样本使用 由于各变量表示样本的各种性质.往往使用不同 的度量单位,其观测值也可能相差十分悬殊。这样绝对值大的变量其 影响可能盖过绝对值小的变量,使后者应有的作用得不到反映。为了 确保各变量在分析中的地位相同,故对输入端的7个变量实施极差标 准化。 为避免偶然性,采用交叉验证法,将5O个样品构成IO个组合,每 组均有45个样品作训练用,另外5个样品作预报用,因此每个样品有 9次作训练用,1次作预报用。 2.3过拟合控制 为了避免训练网络时出现过拟合。实验使用测 试集监控训练的过程,即由训练所得数学模型计算预报误差。如果测试 集的训练误差曲线显著上升,并且预报误差和训练误差为可接受的大 小,则训练终止。实验表明,该方法可以有效地降低过拟合程度。 2.4初始化前传神经网络的PSO算法 与其他进化寻优算法相 类似,PSO算l法也将通过个体间的协作与竞争,实现多维空间中最优解 的搜索PSO方法首先生成初始种群,即在可行解空间中随机初始化一 群粒子。每个粒子都为寻优问题的一个可行解,并用某个函数计算出相 应的适应值以确定是否达到寻优目标。每个粒子将在解空间中运动, 并由一个矢量决定其运动方向和位移。通常粒子将追随当前的最优粒 子而动,并经逐代搜索最后得到最优解。在每一代中,粒子将跟踪两个 极值,一为粒子本身迄今找到的最优解,代表该粒子自身对寻优方向的 认知水平;另一为全种群迄今找到的最优解,代表社会认知水平。 设第i个粒子位置为xi=(x l …… ,其位移为 产( I …… 。 它的个体最优值点为P =(P ……p 种群的全局最优值点为P (P p曲……p 。按追随当前最优粒子的原理,粒子托将按式(1)和(2)改变 位移方向和步长。 +1)= )+c ara(p £))一 )+c 2(P £) )) (1) }, +1)=; )+}, +1) (2) 其中:w为惯性权值,通常随进化代数从0.9线性递减至0.4,d=1…2 n,n为解空间的维数,即自变量个数,d为n维中的第d维.t为当前进化 代数,i=l~2 S,S为种群规模, 和r2为分布于【O,1]之间的随机数.c。和C2 为位移变化的限定因子,通常取为2。设定位移上限 控制粒子位移 不致过大。PS0算法主要计算步骤为:(1)初始化,设定位移因子C 和c 惯性权值W,最大进化代数7.舾,将当前进化代数置为t,在定义空间 中随机产生S个粒子 l 2…… 组成初始种群x(t);随机产生各粒子 初始位移变化 ,p ……p 组成位移变化矩阵V(t);(2)评价种群X(t);(3) 按式(1)和(2)更新粒子的位移方向和步长,产生新种群X(t+1);(4)检查结 束条件,若满足,则结束寻优;否则t=t+1,转至2。结束条件为寻优达到最 大进化代数7.舾,或评价值小于给定精度8。本实验中,粒子取2O.最大 进化代数为2500,粒子的搜索空间即为46维权值空间,适应值函数为 误差平方和的均值: = 1∑J∑( l(3) I L l J 其中轨是目标值 是计算值,m是输出结点数, 是训练集样本 数。 3.结果和讨论 3.1训练结果 给定网络的最大允许迭代次数.分别对样本的1O 种组合,采用PSO算法训练网络(PSO—NN),各训练1O次。完成训练的 网络模型可以记为y(x),x为网络的输入矢量,有y(x)为网络的实际输出 定义网络模型的自检和预报相对误差为: s i)= / I,飓㈨ 似 / .】(4) 式中)(i和Y。为训练样本的输入和目标输出, 和 为预报样本的 输入和目标输出。对于每个样本组合,自检相对误差的均值记为ASEr, 它反映了网络模型的训练精度。预报相对误差的均值记为APEr,它反 映了网络模型的预报能力。各值列于表2。作为比较,将BP算法的训练 结果也列入表中(BP—NN),BP算法最大迭代轮数取50000 钻削三区段优化与预测结果 3.2训练速度 定义从训练开始到最大迭代次数为每次训练时 间。计算表明,l0次训练的平均时间,PSO为8s,BP算法则需74s。说明 PSO算法比BP算法快得多。其原因主要是PSO算法引入了并行机制, 在多维空间中实行有效的整体搜索,从而克服了BP算法的缺点,加速 了收敛的进程。 4.实验结果与分析 材料试验的参数范围为LB=[300460],RB=[5008lOO],而实验设备 的参数调整范围为LB=[200040],RB=[600101201。BP(下转第244页)
基于混沌粒子群优化BP神经网络的网络安全风险评估系统设计
基于混沌粒子群优化BP神经网络的网络安全风险评估系统设计
段秀娟
【期刊名称】《《科学技术与工程》》
【年(卷),期】2019(019)016
【总页数】5页(P251-255)
【关键词】混沌粒子群优化; BP神经网络; 网络安全; 风险评估
【作 者】段秀娟
【作者单位】长春工业大学人文信息学院 长春130122
【正文语种】中 文
【中图分类】TP393.08
引言随着现代科学的不断进步,越来越多的评估者开始利用智能的评估方法对网络安全进行评估[1—3]。传统的评估系统中存在趋势性、周期性以及随机性影响评估准确率的问题,导致评估的结果大都不准确[4,5],并且该方法还存在陷入局部风险极值的缺点。文献[6]中提出了一种头脑风暴法的风险评估,该评估的方法能对局部的风险以及全局的风险进行评估,但是该风险只能局限于单个项目的评估,不利于对大规模的网络安全进行评估;文献[7]中提出了一种模糊的综合评估,该评估的方法能对一些规模较小、结构简单的网络进行准确的评估,但是对于规模较大的网络,其评估的效果可靠性与可信性较低;文献[8]中提出了一种基于蒙特卡洛仿真的风险评估,该评估的方法能够准确的收集到项目的进度、费用以及质量指标,并对数据的结构进行分析,但是对于网络安全的评估缺少了灵活性,容易受到干扰元素的影响,加大了评估的相对误差,影响评估的最终效果。
针对上述的观点,提出并设计了基于混沌粒子群优化BP神经网络的网络安全风险评估系统。实验结果表明,通过该评估系统能够将网络中的不合理风险因素检测出来,并克服传统评估系统中存在的趋势性、周期性以及随机性对评估准确率影响的问题,将网络风险形成的概率与危害的程度都能够准确的检测出来,为中国未来网络安全风险评估的深入研究提供理论依据。
1 基于混沌粒子群优化BP神经网络的网络安全风险评估系统硬件设计
网络安全风险评估系统主要是构建一个通用的安全风险的评估环境,在此基础上建立特定的数据库与指标的数据库,通过对风险评估方法建立的模型库来对网络安全风险进行评估,从而形成了比较保密的评估环境,为网络评估的发展提供了理论的依据,硬件系统的总体框架如图1所示。
基于粒子群优化BP神经网络的隧道围岩位移反演分析
第8卷第4期 2 0 1 0年8月 水利与建筑工程学报 Journal of Water Resources and Architectural V01.8 No.4 ug.,2010
基于粒子群优化BP神经网络的隧道围岩位移反演分析
朱珍德 ,一,杨喜庆 ,郝振群 ,王士宏
(1.温州大学建筑与土木工程学院,浙江温州325035;2.河海大学岩 ̄32程研究所,江苏南京210098; 3.水利部淮河水利委员会建设局,安徽蚌埠233001)
摘要:针对无锡惠山隧道岩体破碎、围岩稳定性差等特点,基于长期现场监测变形位移数据,借助粒 子群算法的参数优化功能,利用Maflab神经网络工具箱编制了优化PSO--BP隧道位移反分析系统。 PSO--BP系统利用正交试验设计和有限元方法获得学习样本,再通过粒子群算法搜索最优的神经网络 模型参数。用BP神经网络模型建立待反参数与实测位移之间的非线性映射关系,最后用粒子群算法从 全局空间上搜索最优反演参数。克服了普通智能优化算法收敛速度慢、正分析计算量大等缺陷,具有全 局优化特性。将模型应用于惠山隧道Ⅳ级围岩断面zK6+485的反分析中,计算结果与实测值对比表明 采用PS0一BP预测模型进行隧道位移预测是可行的。 关键词:隧道工程;位移反分析;BP神经网络;粒子群优化算法 中图分类号:U451.2 文献标识码:A 文章编号:1672—1144(2o10)04—0o16-_05
Research on Displacement Back-analysis of Tunnel Surrounding Rock Based on
BP Neural Network Optimized by Particle Swarm
ZHU Zhen-del一,YANG Xi-qing,HAO Zhen-qun2,WANG Shi—hong3
(1.CoZtege ofArchitecture and Civil Engineering,Wenzhou University,Wenzhou,Zhejiang 325035,China; 2.Geotechnical Engineering Institute,Hohai University,Nanjing,Jiangsu 210098,China; 3.Construction Bureau ofHuaihe Water Resources Commission,Ministry ofWater Resources,B ̄ngbu,Anhu/233001,China)
基于粒子群优化的神经网络在教学质量评价中的应用
第7卷第6期 2008年12月 无锡职业技术学院学报
Journal of Wuxi Institute of Technology Vo1.7 No.6 Dee.2008
基于粒子群优化的神经网络在教学质量评价中的应用
许敏 '
(1.江南大学,江苏无锡214122;2.无锡职业技术学院,江苏无锡214121)
摘要:文章提出了一种将粒子群优化(PSO)算法训练的神经网络用于高校教师教学质量综合评价的方法。该方
法使用由PSO训练的BP模型来拟合影响教师教学质量评价的众多指标与评价结果之间的复杂关系。与BP算法比较,
该方法在提高误差精度的同时可以加快训练收敛的速度,其泛化性能也比较好。 关键词:粒子群优化算法;BP神经网络;教学质量评价
中图分类号:G420 文献标识码:A 文章编号:1671—7880(2008)06—0034—03
Application of Neural Network Based on Particle Swarm Algorithm
for teaching quality evaluation
Xu Min ,
(1.Jiangnan University,Wuxi 214122,China;2.Wuxi Institute of Technology,Wuxi 214121,China)
Abstract:Application of neural network based on particle swarm optimization algorithm for teaching quality evaluation is
proposed in the paper.The method uses neural network based on particle swarm algorithm to combine the influencing factors of
psobpann方法
psobpann方法
什么是psobpann方法?
psobpann方法是一种搜索策略,它采用遗传算法和粒子群优化算法相结合的方法,用于解决多目标优化问题。这个方法的名称是由两个部分组成的,其中,“pso”代表粒子群优化算法,“bp”代表反向传播算法,“ann”代表人工神经网络。
粒子群优化算法是一种模拟鸟群寻找食物的行为模式的优化算法。在这个算法中,每个粒子都代表一个潜在解,并根据自身经验和群体的经验来调整自己的位置。这种算法以其全局搜索和高效性能而闻名。
反向传播算法是一种用于训练人工神经网络的算法。它通过反向计算误差来调整网络的权重和偏差,以使网络输出接近期望输出。这种算法已经被证明在解决许多问题上非常有效。
psobpann方法的主要思想是将粒子群优化算法和反向传播算法相结合,以充分利用它们各自的优点。具体而言,psobpann方法采用了以下步骤:
第一步:初始化粒子群和网络权重
在这一步中,我们需要定义粒子的初始化位置和速度,并将网络的权重和偏差初始化为随机值。这些粒子将充当人工神经网络的输入,而网络的输出将用于计算适应度函数。
第二步:计算适应度函数
适应度函数是评估当前解的质量的函数。在psobpann方法中,适应度函数是由神经网络的输出和期望输出之间的误差计算得出的。较小的误差表示较好的解决方案。
第三步:更新粒子位置和速度
根据粒子群优化算法的原理,粒子的位置和速度需要根据自身和群体的经验进行调整。这一步骤涉及到计算粒子群的最佳解和最佳适应度,并更新粒子的位置和速度。
第四步:利用反向传播算法调整网络权重
在这一步中,我们使用反向传播算法来调整网络的权重和偏差。具体而言,我们使用当前粒子的位置作为输入,将神经网络的输出与期望输出进行比较,并计算误差的梯度。然后,我们使用梯度下降法来更新网络的权重。
第五步:迭代步骤二至四
通过重复进行步骤二至四,直到达到预设的迭代次数或满足某个停止条件为止。这样,psobpann方法就能找到一个优化的解,使得神经网络的输出与期望输出尽可能接近。
一种改进的粒子群算法在BP网络中的应用研究
计算机科学2006Vo1.33 N0.9
一种改进的粒子群算法在BP网络中的应用研究
江涛张玉芳王银辉
(重庆大学计算机学院 重庆400044)
摘要采用Sigmoid激活函数的三层前向神经网络能够以任意精度模拟复杂的非线性关系,训练算法对神经网络
模式分类的性能有较大影响。基于梯度下降的BP网络存在收敛速度慢、易陷入局部极小的缺陷。粒子群算法是一
种全局优化算法。本文针对粒子群算法本身存在的不足加以改进,用改进后的粒子群算法对BP网络进行训练,从而
克服BP网络的一些缺陷。采用IRIS分类问题验证了本文提出的方法的有效性。实验结果表明本文采用的方法比普
通PS()_BP算法效果更好。
关键词粒子群算法,全局优化,BP,神经网络
A Study of Application of An Improved PSO Algorithm in BP Network
JIANG Tao ZHANG Yu-Fang WANG Yin-Hui
(Computer School of Chongqing University,Chongqing 400044)
Abstract 3-layer forward neural network with Sigmoid activation function can simulate complex nowlinear relationship with any precision.The training algorithm of BP affect ̄the classification performance of pattern of the network.BP network with gradient descent has some defects such as low convergence speed、immersing local minimization.Particle Swarm Optimization is a global optimization algorithm.Aiming at PSO’S defects this paper gives a method tO improve PS().The mproved PSO iS used to train BP network to overcome deficiency of BP.IRIS problem iS used to validate the efficiency of the method given in this paper.Experimental results prove that this method s better than simple Ps()_BP algorithm in performance. Keywords Particle swarm optimization algorithm,Global optimization,BP,Neural network
