基于新型神经网络的电网故障诊断方法1引言快速事故后恢复系统正常运行是减少电能中断时间和增强供电可靠性的必要条件。
作为事故恢复的第一步,应实现快速、准确的故障诊断以隔离故障元件并采取相应措施以恢复电能供应。
然而在线快速、准确地故障诊断仍是一个悬而未决的难题,尤其在保护和断路器不正常动作或多重故障的情况下,故障诊断更为困难。
故障诊断一般基于SCADA系统所提供的保护和断路器信息来判别电力系统中的故障元件。
多种人工智能技术已用于解决此问题,如专家系统[1~4],随机优化技术[5~10]和人工神经网络[11~14]等等。
其中基于专家系统的方法得到了广泛的注意和研究。
这种方法能够提供强有力的推理并具解释能力,然而专家系统中知识的获取、组织、校核和维护等都非常困难,并成为其应用的瓶颈。
而且,专家系统必须搜索庞大的知识库以得到最终的诊断结论,这使得它不能满足故障诊断实时的要求。
另外,当系统中存在保护和断路器不正常动作时,专家系统可能会因缺乏识别错误信息的能力而导致错误的诊断结论。
用于故障诊断的另一种较有潜力的方法是基于工程随机优化的方法。
这种方法的主要原则是将故障诊断表述为一个整数优化问题,随后使用全局优化方法,如波尔兹曼机[5]、遗传算法[6~8]、仿蚂蚁系统[9]或tabu搜索[10]等,去求解该优化问题。
这种方法在实际应用过程中也出现了一些问题:如何确定这些随机优化方法的参数以实现快速正确的故障诊断;如何使这些方法适用于保护和断路器不正常动作的情况等等。
近年来,人工神经网络[11~14]引起了研究工作者的兴趣,因为它具有学习、泛化和容错能力。
并且神经元的计算是并行的,这有利于实现实时应用。
在神经网络的各种模型中,应用得最为广泛的模型就是BP(Back-Propagation)神经网络。
标准的BP模型使用梯度下降算法训练,因此BP神经网络的结构必须是事先已知的,而且该学习算法收敛速度很慢,并有可能收敛于局部最小点。
这些不利因素限制了BP模型在故障诊断中的应用。
本文提出使用径向基函数(Radial basis function,RBF)神经网络[15~16]解决电力系统中的故障诊断问题。
理论上讲RBF神经网络具有任意函数逼近能力[17]。
并且RBF网络的学习时间远小于前向神经网络其它学习算法的训练时间。
另外,RBF网络的隐藏神经元数目可以在参数优化过程中自动确定。
这些特性使其在实际应用中受到欢迎。
建立一个RBF神经网络的关键问题就是在训练过程中优化其参数。
本文对正交最小二乘(Orthogonalleast square)算法[18]进行扩展,用于优化RBF神经网络参数。
为了评估RBF神经网络在故障诊断问题中的有效性,文中还使用一个传统的BP神经网络解决同样的问题,并将它们的计算结果进行比较。
在4母线测试系统中的仿真结果证明:RBF神经网络优于BP神经网络模型,能够更有效地解决故障诊断问题。
2用于故障诊断的RBF神经网络2.1RBF神经网络的结构RBF神经网络由输入层、隐藏层和输出层构成,其中隐藏层由径向基函数神经元组成。
输入空间可以采用实际或归一化的表示方式。
输入信号被传送至隐藏层,即径向基函数神经元层。
隐藏层中第i个神经元将计算输入矢量x和它的权重矢量ui之间的距离,并把它作为径向基函数φi(x)的输入,进而计算得到隐藏层的输出。
研究表明径向基函数类型的选择对RBF神经网络的行为影响不大。
研究中采用高斯函数作为径向基函数[15、16],即:φi(x)=exp(-[x-ui]T[x-ui]/2σ2i)(i=1,…,nh)(1)式中φi(x)为隐藏层中第i个神经元的输出;nh为隐藏神经元的数目;x为输入矢量;ui和σi分别为相应高斯函数的中心(或称权重)和概率散度。
显然,径向基函数神经元i起探测器的作用,当输入矢量x与权重矢量ui相同时,其输出为1。
概率散度σi(>0)表示径向基函数神经元所能响应的输入空间中‖x-ui‖的范围。
一般来讲,概率散度应不大于输入矢量与径向基函数中心之间可能的最大距离,具体数值可由试验决定。
输出层对径向基函数隐藏层的输出进行线性组合以生成预期的输出。
输出层第j个神经元的输出为dj=∑nhi=1νij·φi(x)(j=1,…,no)(2)式中no为输出神经元的总数;νij为第i个隐层神经元到第j个输出神经元的权重。
由此可见,根据给定的训练样本,快速有效地确定径向基函数的中心{ui}和输出层权重{νij}是训练RBF神经网络的关键任务。
事实上一旦确定了径向基函数的中心{ui},则对于所有的训练样本而言{φi(x)}nhi=1和相应的预期输出{dj}noj=1是已知的,输出权重{vij}可由式(2)经最小二乘法求出。
所以,建立RBF 神经网络的关键问题是根据给定的训练样本确定径向基函数的中心。
这个问题将在后面予以详细分析。
2.2RBF神经网络的训练算法假设RBF神经网络的输入层有ni个神经元,对于故障诊断问题来讲,ni等于电力网络中所有保护继电器和断路器的总数,这些保护和断路器的状态(0或1)就是神经网络的输入。
如果共有N个训练样本,那么训练样本集合可以表示为x(t)∈Rni,t=1,…,N。
假设所考虑的电力网络中共有M个元件,如输电线路、母线和变压器等,确定这些元件的状态为故障或正常是诊断的最终目的,则RBF神经网络输出层的神经元数目为no=M。
确定隐藏层神经元数目nh及其中心的最简单的方法是精确设计(Exact design)法[16]。
对于这种方法生成的RBF神经网络,当输入为训练样本x时,计算得到的输出将等于预期的输出,没有误差。
这种方法产生与训练样本总数N相同数目的隐藏层神经元,并令相应的权重为ui=x(i),i=1,…, N。
然而如果训练样本的数目N过大,将导致相应的RBF神经网络因隐藏层神经元的数目过多而难以接受。
为了解决这个问题,本文对文[18]提出的正交最小二乘(Orthogonal Least Squares,OLS)算法进行了扩展并用于训练RBF神经网络。
文[18]中的OLS算法只适用于优化单输出的RBF网络参数,而本文将其扩展至优化多输出网络的隐层神经元数目、相应的径向基函数中心和输出层权重。
在OLS方法中,RBF神经网络被看作一个特殊的线性回归模型。
RBF网络中的2个映射可以用矩阵形式表示为D=Φ·V+E(3)式中矩阵Φ对应于网络中的第1个映射关系,被称为回归矩阵。
可写作Φ(N ×nh)=[φ1…φl…φnh]=[φ(1)…φ(t)…φ(N)]T,即该矩阵的l列t行元素φl(x(t))是网络中第l个隐层神经元关于第t个输入矢量x(t)的输出;矩阵V(nh×no)对应于网络中的第2个映射关系,是式(2)所定义的权重矩阵;矩阵D(N×no)=[d1…dm…dno]=[d(1)…d(t)…d(N)]T是所有训练样本的预期输出,它的结构与Φ类似。
误差矩阵E(N×no)=[ε1…εm…εno]表示RBF神经网络的计算输出与训练样本预期输出D之间的偏差。
假设E与Φ不相关,并且在完成RBF网络的训练后应尽可能小。
OLS算法的目的就是确定Φ和V的最优值及最小化误差矩阵E,从而保证诊断的精度。
Φ可以被分解为Φ=W·A(4)式中A为一个nh×nh的上三角阵A=1α12α13…α1nh01α23…α2nh…………00…1α(nh-1)nh00…01(5)而W(N×nh)=[w1…wl…wnh]是一个正交矩阵,即WT·W=H(6)或wTl·wl=∑Nt=1wl(t)·wl(t)=hlwTl·wj=01≤l≤nh(l≠j)(7)式中H(nh×nh)为一个对角阵;hl为它的第l个对角元素。
若把式(4)代入式(3),并定义A·V=G(nh×n0)(8)根据正交矩阵W的性质,可得到矩阵G的理想(即误差矩阵E为0)的正交最小二乘解为G^=H-1·WT·D(9)该矩阵元素可由下式计算获得:g^lm=wTl·dm/(wTl·wl),1≤l≤nh,1≤m≤no(10)则式(3)可表示为D=W·G+E(11)式中G上的‘^’略。
或写作矢量形式dm=W·gm+εm,1≤m≤no(12)因为当l≠p时,矢量wl和wp是彼此正交的,并且矢量εm与它们不相关,所以第m个输出神经元的能量函数(dTm·dm)可以定义为dTm·dm=∑nhl=1g2lmwTlwl+εTm·εm(13)对于所有训练样本总的平均输出能量为N-1·∑nom=1(dTm·dm)=N-1∑nom=1∑nhl=1g2lmwTlwl+εTm·εm(14)显而易见,N-1∑nom=1∑nhl=1g2lmwTlwl是式(14)等式右边的主控项,所以关于第l个回归矢量wl相应的输出能量贡献因子[out—con]l可定义为[out—con]l=∑nom=1g2lmwTlwl/∑nom=1(dTm·dm)1≤l≤nh(15)此比率为从给定的训练样本集{x(t)}Nt=1中选择重要的回归矢量子集提供了一个有效的量化指标,当∑nhl=1[out—con]l→1时,训练收敛。
基于上述概念,OLS算法的整个训练算法是一个迭代过程,在每一次迭代中隐藏层都将增加一个径向基函数神经元,它的中心由可以产生最大输出能量贡献因子的输入矢量决定。
随后计算并检查新神经网络的输出误差。
当误差足够小时迭代终止。
由上述训练过程可知,如果隐层神经元的数目等于训练样本的数目,则OLS 算法建立的RBF神经网络将与精确设计法得到的神经网络相同。
因此精确设计法可看作是OLS算法的一个特例。
显然OLS算法的最大迭代次数将不超过训练样本的数目,而其收敛速度很快,且理论上可以对训练样本达到零误差。
故RBF神经网络对于实现实时故障诊断系统非常有吸引力。
2.3RBF神经网络与BP神经网络的比较在故障诊断中,RBF神经网络优于BP神经网络[16],尽管后者在很多方面有成功的应用。
这两种基于新型神经网络的电网故障诊断方法神经网络均为多层前向网络。
概括地说,RBF神经网络将某一知识存储于局部神经元中,而BP神经网络则将知识蕴含于全体神经元中。
对于RBF神经网络,隐层神经元的最优数目可以在训练过程中获得;而BP神经网络则要求隐层神经元数目在训练开始之前必须是已知的,并且隐层神经元的最优数目很难确定。
此外,训练RBF神经网络的最大迭代次数将不超过训练样本的数目,当隐层神经元的数目等于训练样本的数目时,输出可以实现零误差;而BP神经网络使用梯度下降法最小化误差,误差可能收敛得很慢,而且残余误差可能不能达到容许偏差的要求。