前言:想要写出一篇令人眼前一亮的文章吗?我们特意为您整理了5篇神经网络算法范文,相信会为您的写作带来帮助,发现更多的写作思路和灵感。
中图分类号:TP183 文献标识码:A 文章编号:1671-7597(2014)13-0066-01
1 人工神经网络模型
人工神经网络简称ANN,它是一种将人类大脑的组织结构和运行机制作为其研究基础来模拟人类大脑内部结构和其智能行为的处理系统。人工神经网络中的神经元细胞将其接收到的所有信号进行处理,如加权求和等操作,进行操作后经轴突输出。
2 人工神经网络的分类
2.1 前馈型神经网络
前馈型神经网络通过对其网络中的神经元之间的连接关系进行复合映射,因此这种网络模型具有非常强的非线性处理的能力。如图1所示,在这里前馈型神经网络模型被分为三层,分别为输入层、输出层和隐含层,一般常用的前馈型神经网络有BP神经网络、RBF神经网络、自组织神经网络等。
图1 前向神经网络模型
2.2 反馈型神经网络
反馈型神经网络其结构,在这个模型中我们假设网络总的神经元个数为N,则每个神经元节点都有N个输入值及一个输出值,每个神经元节点都如此,节点之间相互联系。现在被大量使用的反馈型神经网络一般有离散Hopfield神经网络模型、Elman神经网络模型等等。
3 BP神经网络
3.1 BP神经网络简介
1986年,Rumelhant和McCelland提出了BP神经网络的一般模型,BP神经网络是一种具有多层网络的反向传播学习算法。BP神经网络模型的基本思想是:整个过程主要由信号的正向传播和误差的反向传播两个过程组成。目前,BP神经网络的应用范围为数据压缩、数据分类、预测分析和模式识别等领域。
3.2 BP神经网络的结构
如图2所示,这里是BP神经网络的一种模型结构,在这种模型结构中输入信号量为m,具有隐含层的数量为j,输出信号量为q的模型结构。
BP神经网络一般具有一个或多个隐含层单元,其差别主要体现在激活函数的不同。针对BP神经网络所使用的激活函数一
图2 BP神经网络模型结构
般采用S型对数函数或者采用正切激活函数,而输出层则一般采用线性函数作为激活函数。
3.3 BP神经网络的改进方法
BP神经网络作为当今对研究电力负荷预测应用最多的一种神经网络,但标准的BP神经网络算法存在的一些缺陷,这里就对一些经常使用的典型改进方法进行描述。
1)增加动量项。在一般的BP神经网络算法中,其模型中的各层权值在进行更新的过程中,是按照t时刻误差曲线进行梯度下降方式进行调整的,在这里并没有考虑其之间的梯度下降的方向,如果使用这种方式进行调整则会造成训练的过程不稳定,容易发生振荡,导致收敛过程缓慢的结果。因此有些学者就为了使网络训练的速度提高,收敛过程加快,就在一般网络模型的权值更新环节添加了一个动量项因子即:
(1)
在这个式子中,W表示BP神经网络中每一层的权值矩阵,O则表示神经网络中每一层的输出向量矩阵,α则被称为该神经网络的动量系数因子,其取值范围在0到1之间,在该网络在进行训练的过程中,如果其误差梯度网线出现了局部极小值现象,虽然在这里的第一项会趋搂于零,但是这一项,
这样就会使该训练过程避免了限入局部极小值区域的形势,从而加快了其训练速度,使该神经网络收敛速度加快,因此这种带有动量项因子的BP神经网络算法应用到了很多的BP网络中。
2)学习速度的自适应调节方法。学习速度η在一个标准的BP神经网络中是以一个常数出现的我们也称为之步长,而在实际的运算过程中,很难找到一个数值作为最优学习速度。我们从误差曲面图形中可以看出,当曲面中区域处于一个平坦区域时,我们需要设置一个比较大的η值,使它能够跳出这个平坦的区域;而当曲面中的区域处于变化比较很大的区域时,这时的η的数值我们又需要将其进行减小或者增大操作。自适应调整学习速度η则可以根据网络的总误差来进行自我调整,在网络经过多次调整后,如果E总继续上升,则表明这里的调整是无效的,且η=βη, ;而经常调整这里的E总下降了,则表明这里的调整是有效果的,且η=αη,。
3)引入陡度因子(防止饱和)。在网络训练的过程中,由于其误差曲面具有平坦区,当处于这个区域时,由于S型激活函数有饱和特性,促使权值的调整速度放慢,从而影响了调整的速度。在训练的过程中,如果算法调整进入了这个区域,我们可以减小神经元的输入量,使其输出值迅速脱离激活函数的饱和区域,这里误差函数的数值则会随之发生改变,其权值的调整也就脱离了该平坦区。想要实现以上思路则需要在激活函数中引入一个陡度因子λ。
(2)
当趋近于0时,而数值较大时,调整其进入误差曲面中的平坦区,此时λ的值应选择大于1的数值;而当调整脱离平坦区域后,再设置λ大于1,使激活函数能够恢复到原始数值。
4 总结
综上所述,设计一个人工神经网络应用到实际问题中,可以归结为网络自身权值参数的学习与合理的设计网络拓扑结构这两大类优化问题。由于人工神经网络的训练是一个非常复杂的问题,使用传统的学习算法进行训练则要花费很长的时间,BP算法用到了梯度下降法,才只能在一定范围内找到合适的参数值及其模型结构。因此,为了更好的提高神经网络的泛化能力,及将网络拓扑结构设计的更加合理,大量关于神经网络的优化算法相继产生。
参考文献
【关键词】BP算法 蚁群优化算法 放大因子 神经网络
伴随着近年来对于人工智能(Artificial Intelligence)研究的不断深入,其中一项重要的分支内容也越来越引起人们的重视,即人工神经网络,这一技术研究现已经广泛的应用到了信息处理、车辆检测、价格预测等多个领域当中。而BP网络神经算法则是应用普及程度最高的一项神经网络内容,然而这一传统的神经网络算法却存在有一些较为显著的缺陷性,如局部不足、收敛缓慢、缺乏理论指导等,因此有必要对传统的算法进行改进。据此本文主要就通过对于上述问题的分析,提出了引入放大因子以及应用蚁群优化算法两项改进手段,并通过将改进后的算法应用到瓦斯浓度检验中,有效的验证了这一算法的科学性。
1 传统BP算法的缺陷
1.1 收敛缓慢
因为BP神经网络的误差函数的曲面图像十分复杂,因此极有可能会有一些相对较为平坦曲面的存在,在起初之时的网络训练收敛值较大,然而伴随着训练的进行,在训练行进到平坦曲面位置时,依据梯度下降法,便极有可能会发生尽管误差值较大,然而误差梯度值却较小,进而也就导致权值的可调整值变小,最终仅能够采取加多训练次数的方式来逐渐退出目标区域。
1.2 局部不足
尽管BP算法能够促使均方误差达到最小化权值与阈值,然而因为多层网络结构的均方误差存在有极大的复杂性特点,既有可能导致多项局部极小值情况的出现,从而使得算法在敛收之时,无法准确的判定出是否求得最优解。
1.3 缺乏理论指导
由于仅在接近于连续函数的情况时才需多层隐含层,但是在实际情况下往往是选用单层隐含层,这就会导致一个十分明显的问题,即隐含层神经元的数量大小是对网络计算的复杂性是具有直接性影响的,从理论层面来说神经元数量越多,所得到的求值才能够越精确,然而现实情况往往都是依据经验公式,以及大量的实验验证来明确出相应的隐含层神经元数量,这必须要借助于大量的运算处理才能实现。
2 算法改进
2.1 放大因子的引入
在精确性允许的前提下,为了获得更大的几何间隔,可放宽容错性,为阈值增添以一定的松弛变量。但还在BP神经网络的学习过程当中,因为样本所出现的随机性改变,在通过归一化处置后,于初期学习阶段,样本的训练误差较大,收敛较快,然而伴随着训练的持续进行,特别是在样本训练结果无限趋近于1/0之时,这是训练便会达到平台期,也就是相对停滞阶段。
在将放大因子运用到实际训练当中,对隐含层与输出层当中的权值采取调整,所产生的神经网络训练结果影响,要明显超过输入层和隐含层当中权值调整所造成的影响,因而在本次研究当中,将放大因子应用在了隐含层和输出层权值的调整之中。
2.2 应用蚁群优化算法
蚁群优化算法是一种对离散优化问题进行求解的通用型框架。在某条具体路径当中所经过的蚂蚁数量越多,相应的信息条件密集性也就越大,从而这一路径被选取的概率也就越大,其呈现出的是一种正反馈的现状情况。每一只蚂蚁在仅穿过任一节点一次的情况之时,对被选用的权值节点进行明确的记录,从而该区域之中的节点也就组成了一组候选权值,在所有蚂蚁均完成了首次选择后,依据全局更新策略来对信息素的密度进行更新。直至满足于最大进化代数,也就得到了最佳的权值组合。
3 实验分析
3.1 变量选取
考量到瓦斯浓度影响因素所具备的的不确定性,因此可对各类因素予以筛选,在对短期预测不造成影响的情况下,来选择出影响力最大的因子。在瓦斯浓度监测的特征变量中主要包括有风速、温度、负压、一氧化碳浓度、瓦斯浓度。
3.2 参数选择
依据上述特征变量内容,此实验的BP神经网络结构便可明确为输入层4项:风速、温度、负压、一氧化碳浓度,输出层1项:瓦斯浓度。针对以上特征变量依次选用传统BP算法与改进后的算法进行测量,隐含网络层均为1个。隐含层节点可通过下列公式予以验证:
m=0.618*(input+output)
在这一公式当中input与output即为输入层与输出层节点数量。BP神经网络算法的训练数共1100,预计误差值为0.0011,其中隐含层应用Sig mod函数,在输出层之中应用线性函数。蚁群优化模型最终其规模明确为600,权值区间取[-1,1],迭代次数取1100次。
3.3 结果分析
在考量到具体运用时的科学性,可编写一项测试软件,针对数据内容予以计算处理,并将多次试验所得数据信息予以对比,改进之后的BP神经网络和传统BP网络其检测精确性如表1所示。
通过观察表1,能够明显的发现,经过改进的BP神经网络算法其训练拟合度相较于传统BP神经网络算法而言更高,同时准确率也显著提升了3.82%,收敛速度也有了显著的提升,权值选取也有了理论性的指导。
4 结束语
总而言之,传统的BP神经网络算法存在收敛速度较慢、且容易陷入到局部不足以及缺乏理论指导的设计陷阱,本文主要通过对放大因子的引入,使得BP神经网络算法在实际训练时的权值调整方式发生了转变,进而通过应用蚁群优化算法来实现了对于BP神经网络权值的选择,并构建起了相应的神经网络模型以及改进后的训练方法。最终将此改进之后的BP神经网络算法应用到瓦斯浓度预测领域之中,其效果明显优于传统的BP神经网络算法。
参考文献
[1]杨红平,傅卫平,王雯等.结合面法向和切向接触刚度的MPSO-BP神经网络算法的建模[J].仪器仪表学报,2012(08).
[2]陈桦,程云艳.BP神经网络算法的改进及在Matlab中的实现[J].陕西科技大学学报(自然科学版),2014(02):45-47.
关键词:竞争型神经网络;分类;训练误差;特征向量
文本分类数是据挖掘的一个重要研究领域,国内外的众多学者已经进行了比较深入的研究,取得了不少研究成果。常见的文本分类技术有最小距离方法、朴素贝叶斯方法、KNN方法、支持向量机方法(SVM)、模糊c均值(FCM)算法和等,现在有很多学者把神经网络的方法应用到分类算法中,在这些分类算法中,神经网络的文本分类更具有优越的性能。袁飞云利用SOINN自动产生聚类数目和保留数据拓扑结构的两项能力,寻找更有效的单词和设计更有效的编码方式,提出了基于自组织增量神经网络(SOINN)的码书产生方法;申明金利用自组织特征映射神经网络(SOM)以无监督方式进行网络训练,具有自组织功能的特点,利用自组织特征映射神经网络对不同产地金银花进行分类;彭俊等将不同空气质量等级下的各空气指标作为原型模式,通过输入样本模式,利用竞争网络的竞争特点得到胜者,以此得出空气质量等级;郝晓丽等通过筛选基于轮廓系数的优秀样木群,来寻找最佳初始聚类中心,并将该改进算法用于构造径向基函数神经网络分类器和快速有效地确定隐含层节点径向基函数中心及函数的宽度,从而提高了分类精度;孙进进利用神经网络技术中的自组织映射SOM)网络对我国主要机场进行聚类分析评价,得出我国主要机场分为8层的主要结论;刘艳杰在非监督的自组织映射神经网络的基础上进行了一定的改进,构建了有监督的神经网络分类模型;李杨将神经网络与群体智能算法、云计算相结合的方法,实现对不同规模农业数据集的分类,提出基于神经网络分类器的设计与优化方法。而竞争型神经网络的自组织、自适应学习能力,进一步拓宽了神经网络在模式分类和识别方面的应用。竞争型神经网络依靠神经元之间的兴奋、协调、抑制或竞争的作用来进行信息处理,可在训练中无监督自组织学习,通过学习提取数据中的重要特征或内在规律,进而实现分类分析的功能。
1竞争型神经网络的描述
1.1竞争型网络的结构
竞争学习网络的结构如图1所示,该网络具有R维输入和s个输出,由前馈层和竞争层组成。图中的llndlstll模块表示对输入矢量P和神经元权值矢量w之间的距离取负。该网络的输出层是竞争层,图中的模块c表示竞争传递函数,其输出矢量由竞争层各神经元的输出组成,这些输出指明了原型模式与输入向量的相互关系。竞争过后只有一个神经元有非零输出,获胜的神经元指明输入属于哪类(每个原型向量代表一个类)。
1.2竞争型神经网络的原理
竞争型神经网络在结构上,既不同于阶层型的各层神经元间非单向连接,也不同于全连接型。它有层次界限,一般是由输入层和竞争层构成的两层网络。两层之间各神经元实现双向全连接,没有隐含层,有时竞争层各神经元之间还存在横向连接。在学习方法上,不是以网络的误差或能量函数的单调递减作为算法准则。而是依靠神经元之间的兴奋、协调、抑制、竞争的作用来进行信息处理,指导网络的学习与工作。
网络在刚开始建立的时候,输入层和输出层之间的连接权值已经开始了,如果与竞争层某一神经元对应的矢量子类别属于线性层某个神经元所对应的目标类别,则这两个神经元的连接权值为1,否则二者的连接权值为0,这样的权值矩阵就实现了子类别到目标类别的合并。在建立竞争型网络时,每类数据占数据总数的百分比是已知的,这也是竞争层神经元归并到线性层的各个输出时所依据的比例。
1.3存在的问题
竞争型神经网络按Kohonen学习规则对获胜神经元的权值进行调整,通过输入向量进行神经元权值的调整,因此在模式识别的应用中是很有用的。通过学习,那些最靠近输入向量的神经元权值向量得到修正,使之更靠近输入向量,其结果是获胜的神经元在下一次相似的输入向量出现时,获胜的可能性更大;而对于那些与输入向量相差很远的神经元权值向量,获胜的可能性将变得很小。这样,当经过越来越多的训练样本学习后,每一个网络层中的神经元权值向量很快被调整为最接近某一类输入向量的值。最终的结果是,如果神经元的数量足够多,则具有相似输入向量的各类模式作为输入向量时,其对应的神经元输出为1;而对于其他模式的输入向量,其对应的神经元输出为0。所以,竞争型神经网络具有对输入向量进行学习分类的能力。
例子:以竞争型神经网络为工具,对下面的数据进行分类:
运用Matlab编程实现,发现网络的训练误差能达到要求,最后也能实现很好的分类效果。运行结果如图2所示。
有运行结果可以看到,训练误差达到要求,分类结果也很合理。
但是在实际应用过程中,我们发现,当对于训练数据的数据特征十分明显的时候,本文设计的网络模型可以对训练的数据进行合理有效的分类,但是,当训练数据的特征不太明显区分的时候,本文设计的训练模型的分类效果就不是太有优势,所得到的分类结果就不能达到我们预期的效果。
我们利用竞争型神经网络对数据样本进行分类,其中参数设置为学习效率0.1,网络竞争层有4个神经元,运用Matlab编程实现,发现结果如下:
例子:我们利用本文设计的网络分类模型进行对数据分类处理:进行分类处理数据的样本数据如下所示:
通过运行学习发现训练误差较大,分类结果也达不到要求。
2改进的方法
2.1问题分析
通过比较分析我们发现,上面的数据样本没有明显的分类特征,所以,以竞争型神经网络进行分类,其输入向量仅仅依靠数据本身的固有的特征时不够的,但我们可以把数据样本看作是二维数据,假设同符号的特征值为1,不同符号的特征值为2,于是一个新的训练样本就确定了,即成为三维数据模型。
2.2改进的算法
第一步:给定数据集X=[X1,X2……,Xi),对网络进行初始化,随机给定网络竞争层与输入层间的初始权向量wj(=wj[w1j w2j…wnj];j=1,2,…,m xp;wijE(0,1));给定输出层与竞争层间的连接权值wjo=1/m,o=1,2,…P (P表示第二隐层和输出层的连接权矢量)。
第二步:创建竞争型神经网络,首先根据给定的问题确定训练样本的输入向量,当学习模式样本本身杂乱无章,没有明显的分类特征,网络对输入模式的响应呈现震荡的现象,不足以区分各类模式时,在创建网络之前,提取训练样本的特征值,设置输入样本的特征向量,然后再创建网络模型,并根据模式分类数确定神经元的数目,最后任取一输入模式Ak。
第三步:计算竞争层各神经元的输入值si:
第四步:对本文建立的网络进行训练学习,网络训练最大次数的初始值设置为230,当训练误差大于预期的设定值的时候,可以尝试增加训练的最大次数,按“胜者为王”(Winner Takes All)原则,将训练网络中获得最接近预期值的神经元作为胜者,输出状态设置为1,没有获胜的神经元的输出状态设置为0。如果有两个以上神经元的sj相同,取左边的为获胜单元。
第五步:获胜神经元连接权修正如下:
第六步:另选一学习模式,返回步骤3,直至所有学习模式提供一遍。
第七步:如果不满足要求,则返回到最初的训练状态,反复训练直至训练网络中神经元获得最接近预期值,最终的训练结束。
第八步:根据测试样本利用Matlab编写程序进行仿真实验。
通过实例训练,我们发现本算法和改进前的算法相比,改进后的算法训练误差却大大降低,已经达到了训练的精度要求,同时也很好地实现了分类要求。
中图分类号:TN919-34; TP274 文献标识码:A
文章编号:1004-373X(2010)18-0121-03
Research on Incremental PID Algorithm and Simulation Based on Neural Network
WANG Jun-qin
(Department of Mechanical and Electronic Engineering, Xi’an University of Arts and Science, Xi’an 710065, China)
Abstract: To resolve the shortages of traditional PID controller which is not strong enough to control the time-varying system, an incremental PID controller based on neural network is designed to realize the online self-tuning of PID parameters in combination with the neural network theory and traditional PID control theory. The result of experiment simulation shows that the controller has better adaptability than the traditional PID controller and can obtain the satisfactory control effect. Keywords: neural network; PID; Matlab; online self-tuning
传统的PID 控制器算法简单,结构上易于实现,被广泛应用在工业过程控制领域[1],但是在实际应用中往往具有非线性、时变不确定性,导致PID控制参数难以整定以达到最佳控制要求。BP神经网络具有较好的在线检测能力[2],将PID控制和BP神经网络相结合通过加权系数调整,可以实现PID参数的自学习过程[3],从而达到满意的控制效果[4]。
1 基于神经网络的PID控制
PID控制要取得好的控制效果,就必须通过调整好比例、积分和微分三种控制作用的关系,这种关系不一定是简单的“线性组合”,而是从变化无穷的非线性组合中找出最佳的关系。BP神经网络具有逼近任意非线性函数的能力,而且结构和学习算法简单明确。通过网络自身的学习,可以找到某一最优控制规律下的PID参数[4]。
1.1 常规PID控制器
传统的PID控制器算式如下:
PID控制器的输入/输出关系式为:
u(t)=KPe(t)+1TI∫t0e(t)dt+TDde(t)/dt
式中:u(t)为控制器的输出;e(t)为误差信号; KP为比例系数;TI为积分时间常数;TD为微分时间常数。
假设采样周期为TS,系统开始运行的时刻为t=0,用矩形积分来近似精确积分,用差分近似精确微分,将上式离散化,第kТ尾裳时控制器的输出为[5]:
u(k)=KPe(k)+KI∑nj=1e(j)+KD[e(k)-e(k-1)]
式中:e(k-1)为第k-1次采样时的误差值;KI为积分系数;KD为微分系数。
1.2 单神经元的结构[6]
图1中输入层有n个神经元节点,这些节点只负责引入外部信息,自身无信息处理能力,每个节点接收┮桓霆输入信号,n个输入信号构成输入列向量X。输出层有m个神经元节点,每个节点均具有信息处理能力,m个节点向外部处理信息。构成输出列向量O。两层之间的连接权值用权值列向量Wj表示,m个权向量构成单神经元的权值矩阵W。3个列向量分别表示为:
O=(o1,o2,…,oi,…,om)T,X=(x1,x2,…,xi,…,xn)T
Wj=(w1j,w2j,…,wij,…,wnj)T,j=1,2,…,m
由神经元数学模型知,对于处理层中任一节点,其净输入netj为来自输入层各节点的输入加权和:
netj=∑ni=1wijxi
1.3 神经网络PID控制器
在此提出一种单神经元的增量PID控制方案,采用图2所示3输入单输出神经元增量式PID闭环控制结构[7]。
图1 单神经元拓扑结构
图2 单神经元PID控制系统结构图
转换器的输入是给定值Yr(t) 和输出Y(t) ,转换器的输出X1(k),X2(k),X3(k)是神经元学习所需的3个参量。3输入单输出神经元增量式PID控制器的输入输出之间满足如下关系[8-9]:
X1(k)=Yr(k)-Y(k)=E(k), X2(k)=
E(k)-E(k-1)=ΔE(k),
X3(k)=[E(k)-E(k-1)]-[E(k-1)-E(k-2)]
=E(k)-2E(k-1)+E(k-2),
U(k)=U(k-1)+∑3i=1Wi(k)*Xi(k)
式中:Wi(k) 是对应于Xi(k) 的加权系数。单神经元PID控制器正是通过对加权系数的调整来实现自适应、自学习功能的。
采用有教师监督的法则δ学习规则[8],并且比例(P),积分(I),微分(D)分别采用不同的学习速率ηP,ηI,ηD,Ъ尤ㄏ凳学习算法如下:
W1(k+1)=W1(k)+ηPE(k)E(k),
W2(k+1)=W2(k)-ηIE(k)∑ki=0E(i),
W3(k+1)=W3(k)+ηDE(k)ΔE(k)
将加权系数代入增量式PID控制器的控制规律,则有:
U(k)=U(k-1)+W1(k)•
X2(k)+TW2(k)*X1(k)+W3(k)T*X3(k)
式中:T是采样周期。
从上式可得:
ΔU(k)=KPX1(k)+KIX2(k)+KDX3(k)
对照以上两式可看出,PID控制器的3个参数实现了在线自整定。
1.4 神经网络PID控制器的控制算法[10]
(1) 确定BP神经网络结构,即确定输入节点数和隐含层节点数,并给出权系数初值,选定学习速率和惯性系数,此时k=1;
(2) 采样得到r(k)和y(k),计算误差为e(k)=r(k)-y(k);
(3) 计算各神经网络的输入/输出,其输出层的输出即为PID控制器的3个控制参数KP,KI,KD;
(4) 计算PID控制器的输出;
(5) 进行神经网络学习,在线调整加权系数,实现PID控制参数的自适应调整;
(6) 令k=k+1,返回步骤(1)。
2 神经网络Matlab仿真
对于被控对象:
G(s)=35s(0.2s+1)(0.01s+1)(0.005s+1)
输入信号为阶跃信号,控制系统经传统方法整定的PID参数KP=3,KI=10,KD=0.2。系统输出见图3。
图3 PID控制输出曲线
利用神经网络增量PID方法选取比例、积分、微分项的初始系数值为W1=W2=W3=1,学习速率ηP=0.01,ηI=1,ηD=0.001,通过编写具有自学习自适应能力的软件程序所得输出曲线如图4所示。
图4 神经网络PID控制输出曲线
PID 三参数在线整定曲线如图5所示。比较可得后一种方法所得曲线有较好的控制品质。
图5 PID 三参数在线整定曲线
3 结 语
理论分析和仿真结果表明,通过研究所提出的神经网络增量PID控制器控制精度高,较传统的PID控制具有更好的控制品质。
参考文献
[1]刘金琨.先进PID控制及Matlab仿真[M].北京:电子工业出版社,2003.
[2]韩豫萍,孙涛,盛新.基于BP神经网络的PID控制及仿真[J].可编程控制器与工厂自动化,2007(12):91-93.
[3]谢英.基于BP神经网络的PID控制器及其Matlab仿真[J].中国新技术新产品,2009(10):13-15.
[4]马玲玲,郑宾,马圆圆.基于神经网络PID智能复合控制方法研究[J].计量与测试技术,2009,36(3):17-19.
[5]张科,靖固.利用FPGA的增量式PID控制的研究[J].现代制造工程,2009(3):112-114.
[6]韩力群.智能控制理论及应用[M].北京:机械工业出版社,2007.
[7]祝轩,侯榆青,彭进业,等.基于单神经元PID控制器的闭环控制系统[J].西北大学学报:自然科学版,2004,34(4):413-417.
[8]冯勇.现代计算机控制系统[M].哈尔滨:哈尔滨工业大学出版社,1996.
【关键词】神经网络;配电网;线损
一、引言
线损是电能在传输过程中各个环节的损失,是供电量和售电量之间的差值。在电能的传输过程中造成部分电能的浪费,因此研究人员在不断的探究新的降低线损的方法。将BP神经网络算法应用到配电网的综合降损中,为配电网降损研究做出了贡献。
二、BP神经网络算法
BP神经网络包括输入层、隐含层和输出层,按照误差逆向传播的方式训练多层前馈网络。BP神经网络的学习过程是信息的前向传播和信息误差的反向传播两项内容。在信息前向传播的过程中输入层传播到隐含层,信息由隐含层处理后再传播到输出层,这是信息逐层更新的过程。
BP神经网络算法是通过调整权重来实现使网络输出值逼近期望值的目的,BP神经网络算法学习过程为:1.将各权重值和阀值设为最小正数;给定网络一组输入向量和目标输出向量;2.根据输入向量计算实际输出向量,即,将此输出值送到下一层作为输入;3.权重的调整是通过权重调整公式来实现;式中为增益相,为输出误差。在应用BP神经网络解决问题前,除了了解它的学习过程外,还需要对其进行训练,步骤如下:
1.对相应的数据进行初始化:期望误差最小值:err_goal;最大循环次数:max_epoch;权值修正学习速率:lr,取0.01-0.6
2.完成一个训练样本的学习后,将下一个学习样本提供给网络,以此类推完成全部的样本训练。
3.从学习样本中选取一组输入和目标样本数据,然后再计算输出向量,网络全局误差小于设定期望误差为止,训练结束。
三、配电网综合降损
将BP神经网络算法应用到配电网的综合降损中。以某地区一条10KV配电线路为例说明,此配电线路的拓扑结构如图1所示,标号1-13为负荷母线,Sl-S12为母线之间的联络开关,两座变电站由A、B表示。选取l号负荷母线2013年12月前十天的负荷数据为训练数据,数据如表1所示。
表1 1号负荷母线12月前十天负荷数据
(一)负荷预测
采用BP神经网络实现负荷预测的过程为:以当天负荷段对应的负荷点12个分量的数据为配电网的输入向量,且输出向量同样为第二天12个分量的负荷数据,这样就实现了为下一天负荷的预测。
用1号到9号的数据进行网络训练,训练函数设置为:net.trainParam.epochs=500;%训练次数设为500次;net.trainParam.goal=0.001;%训练目标设为0.001;L.P.lr=0.05;%学习速率设为0.05;Net=train(net,P,T);%P为输入向量,1到5号的负荷数据;%T为输出向量,6到10号的负荷数据。训练结果为:TRAINLM,Epoch0/500,MSE3.7989/0.001,Gradient1081.63/1e-010 TRAINLM,Epoch5/500,MSE0.000463846/0.001,Gradient7.38793/1e-010 TRAINLM,Performance goal met.
由此可见通过训练之后,预测数据和实测数据误差为0.001,且基本无偏差,可很好的满足实际应用需求
图2某地区10KV配电网线路
(二)配网重构
根据负荷等级将图1配电网线路中的13条母线分为7类,则有713种负荷模式,从713种负荷模式中选取4000个,以其中3000个数据作为训练集合,应用BP神经网络算法对配电网进行学习训练,另外1000个数据为测试集合,经过46次训练后可达到误差要求,训练结果为:
TRAINBFG-srchbac.Epoch0/500,MSE21.616/0.02,Gradient236.65/1e-006
TRAINBFG-srchbac.Epoch25/500,MSE0.026354/0.02,Gradient0.150609/1e-006
TRAINBFG-srchbac.Epoch46/500,MSE0.0199597/0.02,Gradient0.0677733/1e-006
TRAINBFG, Performance goal met.
以13条母线的某一时刻负荷的实测数据为依据,通过负荷预测网络的预测得到下一时刻的负荷预测数据,并通过配电网重构在预测时刻采用将图1中开关S6断开的模式运行则配电网线损为586.21kW,若采用将开关S7断开的模式运行则线损为628.18kW,可见通过配电网重构后线损降低了41.97kW,降低了约6.7%,提高了配电网的输电效率。
四、结论
通过对BP神经网络算法的简单介绍和学习、训练过程的分析,将BP神经网络算法应用到配电网的综合降损中,分别从负荷预测、配网重构两个方面说明了BP神经网络算法在配电网综合降损可取的较为良好的降损效果。
参考文献:
[1]顾勇.农村10kV电网节能降损技术措施分析[J].电源技术应用2012 (11).
[2]赵传辉.基于神经网络的配电网综合节能降损技术[D].济南:山东大学,2011.
作者简介: