一种基于GA‑SVM‑BP变压器故障诊断方法与流程

文档序号:13613498阅读:233来源:国知局
一种基于GA‑SVM‑BP变压器故障诊断方法与流程

本发明属于变压器故障在线监测方法技术领域,具体涉及一种基于ga-svm-bp变压器故障诊断方法。



背景技术:

近年来,智能电网是我国电力部门与电网公司发展的目标与方向,而对变压器的运行状态进行故障诊断智能化也是必然趋势。

油浸式变压器的故障诊断方法从最初的定期检修已经发展为现在的在线监测,其主要是在油中溶解气体(dga)的基础上结合现有智能算法对变压器进行变压器故障诊断的。目前应用于此的智能化算法多之又多,比如:发展较为成熟的bp神经网络,经典的bagging与其他算法的结合,决策树等,这些算法的应用对变压器故障诊断研究具有极大的促进作用,但是其也有自身的不足之处,比如:bp神经网络对样本质量要求较高,bagging算法可能产生无法识别的结果,而决策树容易出现过拟合问题。

支持向量机(svm)是近年来发展较为迅速的一种以统计学为基础的二分类智能算法,将其发展成多分类算法运用于变压器故障诊断中势在必行,现有的多分类支持向量机算法主要分为一对多、一对一形式,有向无环图svm(dag-svm)是特殊的一对一的形式,被证明得出其分类效果较好,而且不会出现拒判现象。



技术实现要素:

本发明的目的在于提供一种基于ga-svm-bp变压器故障诊断方法,能对变压器故障进行准确诊断。

本发明所采用的技术方案是,一种基于ga-svm-bp变压器故障诊断方法,具体按照以下步骤实施:

步骤1、对所采集的油浸式变压器带有类标签的样本集s={(x1,y1),(x2,y2),...(xn,yn)}每一类按3:1比例分为训练样本和测试样本;其中,xi代表样本属性,包含氢气、甲烷、乙烷、乙烯、乙炔五种属性,yi代表类别标签1、2、3、4、5、6,分别对应正常状态、中温过热、高温过热、局部放电、火花放电、电弧放电;

步骤2、经步骤1后,先分别建立dag-svm变压器故障诊断模型、bp神经网络,再建立ga-dag-svm模型与ga-bp神经网络;

步骤3将经步骤2得到的ga-dag-svm模型与ga-bp神经网络进行结合,对变压器进行故障诊断。

本发明的特点还在于:

在步骤2中,建立dag-svm变压器故障诊断模型的具体方法如下:

建立一个6层的dag-svm变压器故障诊断模型:

第一层为故障1与故障6的决策函数;

第二层为故障1与故障5、故障2与故障6的决策函数;

第三层为故障1与故障4、故障2与故障5、故障3与故障6的决策函数;

第四层为故障1与故障3、故障2与故障4、故障3与故障5、故障4与故障6的决策函数;

第五层为故障1与故障2、故障2与故障3、故障3与故障4、故障4与故障5、故障5与故障6的决策函数;

第六层则为故障1、故障2、故障3、故障4、故障5、故障6;

其中每两类间的决策函数获取步骤如下:

步骤a、将每两类对应的训练样本作为模型输入;

以故障1与故障为例:x1={x11,x12,…x1n},x2={x21,x22,x2n},其中的x1n与x2n均为样本属性;

步骤b、利用径向基核函数对输入样本进行非线性变换,具体按照以下算法实施:

k(x1,x2)=exp(-||x1-x2||2/2σ2)(1);

式(1)中,σ为控制和函数高宽的参数;

步骤c、经步骤a和步骤b后,利用拉格朗日函数求取最优界面;

首先有约束,具体条件如下:

yi(wtk(x1,x2)+b)≥1-ξii=1,2,...,n(2);

式(2)中:yi属于-1或+1,w、b为权矢量,ξi为松弛变量,其值大于等于0,n为样本个数;

在约束,即式(2)的条件下最小化不可分代价引入如下目标函数:

式(3)中:γ为惩罚因数,为指定的常数;

然后作拉格朗日函数,具体如下:

式(4)中:λi为拉格朗日乘子,而非负条件β≥0,则有0≤λi≤γ;

最后求解得到w、b、λi的值,从而得到最终决策函数。

在步骤2中,建立bp神经网络的具体步骤如下:

步骤①、将训练样本p=(x1,x2,...xn)作为网络输入,xn为样本属性n为样本个数;对应的标签t=(1,2,...c)作为网络预期输出,c为类别标签;

根据样本属性确定网络输入层神经元个数为n,输出层神经元个数为类别个数为m,隐层神经元个数为其中a∈[1,10];

输入层与隐层间的连接权值为wij,隐层与输出层间的连接权值为wjk;

步骤②、经步骤①后,按照如下算法求取隐层输出:

式(5)中:yj为隐层第j个输出,xi为第i个样本属性,wij为输入层与隐层间的连接权值;

式(6)中:f(t)为传递函数,t1为函数参数;

步骤③、经步骤②后,按照如下算法计算输出层输出:

f(t)=t1(8);

式(7)中:zk为第k个输出值,wjk为隐层与输出层间的连接权值,yj为隐层第j个输出;

式(8)中:f(t)为传递函数,t1为函数参数;

步骤④、经步骤③后,按照如下算法计算网络输出的误差er:

er=tr-yr(9);

式(9)中,r指的是第r个训练样本;

步骤⑤、经步骤④后,按照如下算法计算全局误差error:

式(10)中,trl与orl表示的是第r个样本的第l个神经元对应的误差;

步骤⑥、经步骤⑤后,判断全局误差是否满足要求:

若满足,则退出;

若不满足,则执行步骤⑦后返回步骤①;

步骤⑦、根据误差调节权值,具体方法如下:

首先调节wjk:

wjk(s+1)=wjk(s)-ηek*yj(11);

式(11)中:wjk(s)为第s次迭代时的隐层与输出层的连接权值,η为学习步长,ek为第s次迭代的第k个输出误差,yj为隐层第j个输出;

然后调节wij:

式(12)中:wij(s)为第s次迭代时的输入层与隐层的连接权值,yj为隐层第j个输出,tk为第k个目标输出,wjk(s)为第s次迭代时的隐层与输出层的连接权值。

在步骤2中,建立ga-dag-svm模型与ga-bp神经网络,以dag-svm模型为例,具体按照以下步骤实施:

步骤i、对每类训练样本分别进行编码;

选择的样本编码为1,不选择的编码为0,并产生初始种群总共为m′,其中每个类别种群为n′,每个类别中的一种情况组合在一起称为一个个体;

步骤ii、经步骤i后,计算种群中每个个体的适应度;

利用每个个体分别对dag-svm模型进行训练,并利用测试样本对dag-svm模型进行检验,得出的准确率即为个体适应度;

步骤iii、经步骤ii后,利用随机选择的方法对个体进行选择,随机产生0~1之间的数值,产生的值在哪个适应度区间,就选择哪个个体;

步骤iv、经步骤iii后,随机选择一个交叉点,对所选的种群进行交叉处理;

步骤v、经步骤iv后,随机选择一个变异点,对交叉后的种群进行变异处理;

步骤vi、经步骤v后,判断是否满足结束条件:

若满足则跳出结束;

不满足则执行步骤ii。

步骤3具体按照以下步骤实施:

步骤3.1、利用步骤2所得ga-dag-svm模型对测试样本进行测试;

步骤3.2、根据步骤3.1所得结果,按情况与训练集中的对应类别进行比较,判断所得结果是否准确,具体按照如下步骤进行判断:

步骤3.2.1、若测试样本中的某一样本被判断为1类,则对其与步骤2中得到的训练集中所有1类样本进行欧式距离计算,再对所得的所有距离求平均;

同样,对被判断为1类的这个样本与步骤2中得到的训练集中其他5类分别进行欧式距离的平均值求取;

步骤3.2.2、将经步骤3.2.1得到的6个平均距离进行比较,得到的距离哪个最小,则这个样本属于哪类,若通过距离得到的结果与利用步骤3.1所得结果不匹配,则认定此结果是错的;

步骤3.3、经步骤3.2后,将判断为错误分类的样本作为步骤2所得ga-bp神经网络的输入,最终经过ga-bp网络的处理得到准确的变压器诊断结果。

本发明的有益效果是:

(1)本发明方法中,利用ga对变压器故障诊断训练样本,并结合dag-svm及bp算法对变压器进行诊断,能有效提高变压器故障诊断效率;

(2)本发明方法中,将二分类svm升级为多分类算法dag-svm,利用dag-svm对变压器进行故障诊断,简单易行,且无误分、拒分现象;

(3)本发明方法中,将ga-dag-svm算法与ga-bp相结合,不仅可以相对节省算法的运行时间,同时对诊断准确率具有很大的提高。

附图说明

图1是本发明一种基于ga-svm-bp变压器故障诊断方法的流程图;

图2是本发明方法中对构建的dag-svm变压器故障诊断模型ga选取训练样本的流程图。

具体实施方式

下面结合附图及具体实施方式对本发明进行详细说明。

本发明一种基于ga-svm-bp变压器故障诊断方法,如图1所示,具体按照以下步骤实施:

步骤1、对所采集的油浸式变压器带有类标签的样本集s={(x1,y1),(x2,y2),...(xn,yn)}每一类按3:1比例分为训练样本和测试样本;其中,xi代表样本属性(包含氢气、甲烷、乙烷、乙烯、乙炔五种属性),yi代表类别标签1、2、3、4、5、6,分别对应正常状态、中温过热、高温过热、局部放电、火花放电、电弧放电。

步骤2、经步骤1后,先分别建立dag-svm变压器故障诊断模型、bp神经网络,再建立ga-dag-svm模型与ga-bp神经网络,具体按照以下方法实施:

建立dag-svm变压器故障诊断模型,具体方法如下:

基于这里所针对的变压器故障有6种,因此建立一个6层的dag-svm变压器故障诊断模型:

第一层为故障1与故障6的决策函数;

第二层为故障1与故障5、故障2与故障6的决策函数;

第三层为故障1与故障4、故障2与故障5、故障3与故障6的决策函数;

第四层为故障1与故障3、故障2与故障4、故障3与故障5、故障4与故障6的决策函数;

第五层为故障1与故障2、故障2与故障3、故障3与故障4、故障4与故障5、故障5与故障6的决策函数;

第六层则为故障1、故障2、故障3、故障4、故障5、故障6;

其中每两类间的决策函数获取步骤如下:

步骤a、将每两类对应的训练样本作为模型输入;

以故障1与故障为例:x1={x11,x12,…x1n},x2={x21,x22,x2n},其中的x1n与x2n均为样本属性;

步骤b、由于径向基核函数被证明性能较好,因此利用径向基核函数对输入样本进行非线性变换,具体按照以下算法实施:

k(x1,x2)=exp(-||x1-x2||2/2σ2)(1);

式(1)中,σ为控制和函数高宽的参数;

步骤c、经步骤a和步骤b后,利用拉格朗日函数求取最优界面;

首先有约束,具体条件如下:

yi(wtk(x1,x2)+b)≥1-ξii=1,2,...,n(2);

式(2)中:yi属于-1或+1,w、b为权矢量,ξi为松弛变量,其值大于等于0,n为样本个数;

在约束,即式(2)的条件下最小化不可分代价引入如下目标函数:

式(3)中:γ为惩罚因数,为指定的常数;

然后作拉格朗日函数,具体如下:

式(4)中:λi为拉格朗日乘子,而非负条件β≥0,则有0≤λi≤γ;

最后求解得到w、b、λi的值,从而得到最终决策函数。

建立bp神经网络,由于单隐层bp神经网络就足以逼近任意非线性函数,因此选用bp单隐层神经网络,具体方法如下:

步骤①、将训练样本p=(x1,x2,...xn)作为网络输入,xn为样本属性n为样本个数;对应的标签t=(1,2,...c)作为网络预期输出,c为类别标签;

根据样本属性确定网络输入层神经元个数为n,输出层神经元个数为类别个数为m,隐层神经元个数为其中a∈[1,10];

输入层与隐层间的连接权值为wij,隐层与输出层间的连接权值为wjk;

步骤②、经步骤①后,按照如下算法求取隐层输出:

式(5)中:yj为隐层第j个输出,xi为第i个样本属性,wij为输入层与隐层间的连接权值;

式(6)中:f(t)为传递函数,t1为函数参数;

步骤③、经步骤②后,按照如下算法计算输出层输出:

f(t)=t1(8);

式(7)中:zk为第k个输出值,wjk为隐层与输出层间的连接权值,yj为隐层第j个输出;

式(8)中:f(t)为传递函数,t1为函数参数;

步骤④、经步骤③后,按照如下算法计算网络输出的误差er:

er=tr-yr(9);

式(9)中,r指的是第r个训练样本;

步骤⑤、经步骤④后,按照如下算法计算全局误差error:

式(10)中,trl与orl表示的是第r个样本的第l个神经元对应的误差;

步骤⑥、经步骤⑤后,判断全局误差是否满足要求:

若满足,则退出;

若不满足,则执行步骤⑦后返回步骤①;

步骤⑦、根据误差调节权值,具体方法如下:

首先调节wjk:

wjk(s+1)=wjk(s)-ηek*yj(11);

式(11)中:wjk(s)为第s次迭代时的隐层与输出层的连接权值,η为学习步长,ek为第s次迭代的第k个输出误差,yj为隐层第j个输出;

然后调节wij:

式(12)中:wij(s)为第s次迭代时的输入层与隐层的连接权值,yj为隐层第j个输出,tk为第k个目标输出,wjk(s)为第s次迭代时的隐层与输出层的连接权值。

建立ga-dag-svm模型与ga-bp神经网络;

ga是目前应用较广的优化、寻优方法,为了提高算法的准确率,则利用ga对样本进行寻优,以dag-svm模型为例,如图2所示,具体步骤如下:

步骤i、对每类训练样本分别进行编码;

选择的样本编码为1,不选择的编码为0,并产生初始种群总共为m′,其中每个类别种群为n′,每个类别中的一种情况组合在一起称为一个个体;

步骤ii、经步骤i后,计算种群中每个个体的适应度;

利用每个个体分别对dag-svm模型进行训练,并利用测试样本对dag-svm模型进行检验,得出的准确率即为个体适应度;

步骤iii、经步骤ii后,选择个体;

利用随机选择的方法对个体进行选择,随机产生0~1之间的数值,产生的值在哪个适应度区间,就选择哪个个体;

步骤iv、经步骤iii后,随机选择一个交叉点,对所选的种群进行交叉处理;

步骤v、经步骤iv后,随机选择一个变异点,对交叉后的种群进行变异处理;

步骤vi、经步骤v后,判断是否满足结束条件:

若满足则跳出结束;

不满足则执行步骤ii。

步骤3将经步骤2得到的ga-dag-svm模型与ga-bp神经网络进行结合,对变压器进行故障诊断,具体按照以下步骤实施:

步骤3.1、利用步骤2所得ga-dag-svm模型对测试样本进行测试;

步骤3.2、根据步骤3.1所得结果,按情况与训练集中的对应类别进行比较,判断所得结果是否准确,具体按照如下步骤进行判断:

步骤3.2.1、若测试样本中的某一样本被判断为1类,则对其与步骤2中得到的训练集中所有1类样本进行欧式距离计算,再对所得的所有距离求平均;

同样,对被判断为1类的这个样本与步骤2中得到的训练集中其他5类分别进行欧式距离的平均值求取;

步骤3.2.2、将经步骤3.2.1得到的6个平均距离进行比较,得到的距离哪个最小,则这个样本属于哪类,若通过距离得到的结果与利用步骤3.1所得结果不匹配,则认定此结果是错的;

步骤3.3、经步骤3.2后,将判断为错误分类的样本作为步骤2所得ga-bp神经网络的输入,最终经过ga-bp网络的处理得到准确的变压器诊断结果。

实例分析:

利用本发明方法中构建的ga-dag-svm模型,将已知故障类型的617组数据按460/60/97组分为训练集与检验集、测试集,利用遗传算法从460组训练模型中进行样本寻优,其中利用检验集来验证其是否达到最优,最终得到较优的训练样本;利用最优训练样本对dag-svm及bp进行训练得到最有模型后,利用测试机样本进行性能测试,结果证明:性能分别提升10.1%与12%;再建立基于ga的svm-bp模型,利用测试机样本进行检验,结果提升5.3%。

鉴于bagging的算法思想是将多并行的分类器结果综合起来,对变压器进行故障诊断,虽然此算法具有一定的提升意义,但是其训练起来较为耗时,因此本发明方法中将多个算法串行起来,对变压器进行故障诊断,所选算法为dag-svm与bp两种算法。

本发明一种基于ga-svm-bp变压器故障诊断方法,利用遗传算法(ga)对训练样本进行选取,然后利用dag-svm算法进行诊断,bp算法进行优化,该方法具有较高的故障诊断效率且人为因素相对较少。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1