BP神经网络在变压器故障诊断中的应用(40页).doc
《BP神经网络在变压器故障诊断中的应用(40页).doc》由会员分享,可在线阅读,更多相关《BP神经网络在变压器故障诊断中的应用(40页).doc(40页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-3.4.5 网络参数选择及运行结果在选定训练样本以及神经元个数后,对本网络进行训练运行。对于单隐层的神经网络来说参数的设定相对较简洁:隐层的传递函数设置为tansig,输出层的传递函数设置purelin,训练函数选用收敛性最好的LM函数,收敛误差设置为0.001。为了便于观察网络内权值阈值的变化和回想结果与理想结果的比较,这里给出网络训练后的权值阈值数据以及回想结果: 输入层与隐层的连接权值InputWeights= 隐层与输入层的连接权值LayerWeights= 隐层阈值Bias1= 输出层阈值Bias2= 回想结果= 可以发现回想结果大体与理想输出是相符合的,但是其中也不乏部分样本的输
2、出值远偏离了相应二进制数值的范围,说明BP在收敛过程部分区域精度并没有达到要求,这会造成的了预测的严重误差并与理想输出相去甚远。训练效果如图3.4所示,运行294步之后达到了规定的收敛误差。将预测结果转换为数字编码后通过图3.5可以发现此时BP的预测准确性不高只有68%(训练样本以及测试样本参见4.6.1及4.6.2节),因此本节设计的BP模型由于本身固有的问题以及预测概率性问题根据目前的准确性是仍然难以独立胜任变压器的实际故障诊断的。 图3.4 BP训练误差结果 图3.5 预测值与实际值对比3.5 本章小结本节针对传统变压器故障诊断方法的缺点,利用神经网络自我学习的特性和分组归类的功能为油色
3、谱的故障诊断带来了新思路。通过参数的反复仿真对比,本文最终确定的BP神经网络为单隐层结构,输入量为3组特征气体的比值,隐含层的神经元节点数为11,输出量为变压器7种状态的7个二进制数。本章介绍了BP网络的基本原理并着重讲解了设计基于BP网络的变压器有色谱故障诊断模型的仿真过程,但是最终的预测准确性不是很理想只达到了68%,因此还需要对此模型进行一系列的优化才可以将此诊断方法应用到实际当中去。第 40 页-第四章 基于改进遗传算法优化BP神经网络的变压器故障诊断遗传算法(Genetic Algorithm,简称GA)是根据达尔文生物进化论中的自然选择和遗传学的原理来模拟生物进化过程的数学计算模型
4、。这是一种具有随机性的搜索方法并具有并行计算、高效率、全局搜索的特点,且不会像其他算法一样受到可微、连续等条件的约束。和自然界的遗传进化类似特定问题可以比喻为自然环境,遗传算法的每一代就好比与生活在这个环境中的自然个体,对于不同的具体问题可以规定一个描述个体适应度的函数来对个体做出评价(也称为个体的环境适应度),能适应环境生存的个体繁殖到下一代,不适应环境的则面临死亡最终被淘汰。经过多少代的遗传筛选后,剩下的个体就成为了最适应这个环境生存的个体,相对于已经淘汰的旧个体具有巨大的优越性,对于该问题的处理也是最佳的求解。4.1 算法基本思想遗传算法起源于利用基因编码组成的种群,且该种群拥有一定数量
5、类似于染色体的个体,而这个种群则相当于包含问题的解的解集。在生物学中,基因对个体的本质起决定性的作用,多个基因则组成一个染色体。因此,需要先对对象进行编码,将对象变形为基因型,所以可以用一组特定的数列来表示基因构成。在第一代种群产生之后,个体之间逐代繁衍并进化组成出对环境适应性更高的种群。所以对于特定的问题,需要设置一个有针对性的适应度函数,对每代个体进行适应度的评价并进行基因的交叉和变异操作得到新的基因个体,这些新个体便组成了新的种群。当具体问题中的遗传进化完成的时候,将最终种群中的最优个体进行解码,译码后的个体便是此问题的最优解了。遗传算法有两个已证明的理论依据:模式定理、积木块假设。遗传
6、算法的数学基础是Holland的模式定理60,定理表明遗传算法最优解的样本曲线可以呈指数增长趋势,这说明GA可以实现对于最优解的全局搜索而很难陷入局部最小值。相比而言,积木块假设则点名了GA可以根据适应度函数在经过各种遗传算子操作后,产生最优解。4.2 遗传算法的实现依据上述遗传算法的原理, 得出GA是一种不断重复迭代以求得最优个体的搜索算法,迭代流程如图41所示。 图4.1 遗传算法运算过程由图4.1可以看出,遗传算法极少对个体进行单独操作,而主要是对种群进行整体操作,加快了遗传的效率。从图中可知选择、交叉和变异三个算子构成了所有的遗传操作,这些操作算法使得遗传算法区别于其他算法又优越于其他
7、算法。遗传算法中包含以下五个基本要素并且要素构成了GA的核心:(1)参数编码:(2)初始群体设定;(3)适应度函数的设计;(4)遗传操作设计;(5)控制参数设定(主要是指群体大小和使用遗传操作的概率等)61。4.2.1 参数编码使用遗传算法解决特定问题时,首先需要进行的就是编码,作为GA算法的基础,编码的地位将会逐渐体现出来。编码方法除了决定个体染色体的排列顺序之外还对搜索空间的个体基因型与解空间表现型的转换模式有极大的影响。同时,遗传算法中的交叉、变异操作也都是需要以编码为基础进行操作的。所以说参数编码是遗传算法的开端,编码方式直接会影响到算法的速率以及后续运算的精确性。如果编码方式选择的不
8、恰当,就会导致后面进行的交叉、变异等运算产生较大误差,或者产生无解的现象。随着GA的广泛运用,学者们已提出过很多不同的编码方法,下面介绍其中两个比较常用的方法。(1)二进制编码方法对于一般的GA来说,通常采用的编码方式是基于0、1的二进制编码,编码长度并没有确定的数值而是根据解决问题的需要而进行不同的取值。二进制形式编码具有如下的优点:只需要简单离散化处理就可以将问题中的数值进行编码,解码时只需进行逆向操作;二进制的编码中的数字比较少,只有0和1。这样对于交叉及变异操作实现起来就很方便;编码原则是使字符集尽量的小,并使二进制编码的字符在规定的范围内;二进制编码以模式定理为理论基础,便于对算法的
9、理论层面分析。(2)浮点数编码方法与二进制编码类似,个体的基因通过某取值范围的随机浮点数来表示,这种方法即为浮点数编码方法。其中每个个体编码长度就相当于具体问题中的决策参数数量。4.2.2 适应度函数设计依据遗传学的原理及“物竞天择,适者生存”的自然法则,在遗传进化的过程中需要用一个标准来考察种群对环境的适应程度,称这个适应的程度为种群的适应度。对于具体的环境,适应能力较强的种群相比于其他种群来说能够繁衍进化的几率更大。这同样也适用于遗传算法,通过设定适应度这个标准来评价优化过程中每个解的适应程度,并使得适应度高的解有更多的生存机会。在解决具体问题应用中通常采用一个函数来评价个体适应能力,称这
10、个函数为适应度函数。适应度评价的一般流程如下所示62:(1)首先对具体的样本个体进行编码串的解码,随后便可知道此个体编码前的表现形式,即表现型;(2)根据步骤(1)中得到的表现型,利用数学公式进行理论计算得出一个与该个体对应的目标值(3)对于不同类型的优化问题,将步骤(2)中得到的目标值作为参考依据,经过一定程度的函数转换后求解出个体的适应度(例如误差)。4.2.3 遗传算法的基本操作4.2.3.1 选择算子从上一代个体中选择遗传到下一代群体的优质个体的操作就是选择算子。上一代的种群通过某种手段决胜出最优个体后该个体遗传到下一代的几率就会更大,其他的适应度较差的个体则被淘汰掉,这样下一代种群的
11、质量得到了大幅度提升,进而提高了种群整体的适应度。选择算子的步骤为:一、求出种群所包含个体的适应度的代数和;二、计算单一个体的相对适应度并作为该个体被选择进化到下一代种群中的依据;三、采用轮盘选择操作,根据每个个体的选择概率确定出该个体被选择操作选中的次数。假设群体大小为,个体的适应度值为,那么个体即将被选上的几率: (4-1)从4-1式中很容易可以看出,个体适应度的大小与其被选中的几率是成正向比例的。然而个体在进行了选择操作之后还需要进行交叉、变异等操作,这中间也有一定几率出现一些新的劣质个体。并且由于选择几率的存在种群内适应度高的个体也可能会面临漏选的风险,所以除了上述的选择算子外,还需要
12、一些其它的数学方法进行选择。比例法选择算子也是根据遗传概率计算而生的一种算法。假设在解决具体的问题中需要某个体的适应度,这就需要通过函数关系把目标函数转换映射成函数最大值问题,并且解必须是大于0的数,这里可以认为这个函数就是适应度函数。这个方法对于一般的GA来说很常用,可用来确定选择算子并选择出种群中遗传到下一代的个体。4.2.3.2 交叉算子在生物的遗传进化中,配对组合的两个染色体的某个或几个基因会相互交换,并由此产生新的生命。为了模仿自然界的这个规律GA也做了相应处理,便引入一个交叉算子并利用这个算子来产生新的个体。交叉也是遗传算法的一个重要组成部分,具体步骤为:一、根据经验或者解决问题的
13、需要设置一交叉概率,然后在交叉概率的基础上把个体中某部位的基因通过某种方式进行交换,便产生了新个体。以随机生成的初始网络种群中的两个个体作为父代,通过交叉概率随机选择需要交叉的一点或者两点。图42即为选择第三个基因进行交叉换位的过程。 图4.2 遗传算法的点交叉过程4.2.3.3 变异算子在生物遗传进化的过程中,常会出现因基因复制中出现差异而发生变异的现象,并会产生新的与之前不同的染色体。遗传算法也参考这样的原理,在交叉操作之后采用了变异算子。GA中的变异算子通过变异概率确定变异的基因位置并对该基因的值取负或者用其它等位基因的值来替换,以此使得个体进行突变以引入更优秀的个体。遗传算法在遗传过程
14、中通常很难保证多样性,所以就用变异算子来作为多样性的补偿。变异算子可以在当前值附近搜索寻找更优的解,这样在使群体多样性得到保障的同时为群体的优化遗传创造了条件。图4.3为二进制编码的个体的变异操作。 图4.3 基本位变异基本过程4.3 遗传算法的优点缺陷传统优化算法在解决实际问题时往往会存在着很大的局限性,随着问题类型的增加以及规模的扩大,传统优化方法往往会出现较大的误差。遗传算法与传统算法的区别主要体现在全局搜索以及寻优的问题上,大体有如下几个方面:(1)传统优化算法往往着手于单个初始值求取最优解,但是这种方法容易使解陷入局部困境。相比而言遗传算法则是从问题解的串集开始搜索,这种搜寻方式有利
15、于扩大范围并进行全局搜索。(2)遗传算法不需要对空间知识和辅助信息进行搜索,它只针对有限定的目标函数和其相对应的适应度函数进行搜索,GA的运用范围正因为这个特点而大大拓宽。并且适应度函数不会受到连续、可微的限制,同时,可任意设置其定义域。(3)遗传算法有多种转换方式或者规则,可以根据实际需要进行选择;搜索的方向也是根据一定几率按变迁规则进行变化。 (4)遗传算法也有一定的自适应和学习能力,可以用于一些复杂的非结构对应问题中。当然遗传算法也有一定的缺陷:遗传算法没有严谨的数学表达式和证明,理论主要来源于进化论以及遗传进化学说,所以其收敛性很难给出数学证明。当遗传算法过于简单时,其在全局寻优上收敛
16、性就没那么有保障并且时常出现早熟的现象,结合文献资料,分析其产生原因,主要有如下几个方面:(1)群体规模的过大或者过小对于保证数据的多样性以及计算量都很比较大的影响。由于遗传算法中算子均存在一定的随机误差,所以最终得到的值是否是问题的最优解还是有待考虑的。(2)选择时,群体中个体的选择太小,模式竞争会被削弱,遗传算子重组生成高阶模式的能力降低,这样便会导致算法停滞63。(3)如果问题中主要函数的非线性程度过高,遗传算法的有效寻优模式很可能会被破坏。这是由于当最优解附近为平面时,高阶竞争模式中个体的适应度差值会变的很小,导致无法或错误选择最优个体,算法恶性循环或者出现停滞。为改进简单GA的实际计
17、算能力,大量研究人员的改进工作也是分别从参数编码方式、选择合适初始种群、确定遗传算子、适应度函数标定等方面提出的。本文针对上一章建立的神经网络模型,通过建立适合于油色谱故障预测的适应度函数以及种群多样性两个方面对遗传算法进行了改进。4.4 样本的GA算法设计及改进4.4.1 GA的编码方式遗传算法较常用的编码方式是二进制码,二进制编码就是将原问题的解集变换为串集,然后在位串集中进行遗传算法的算子操作,其结果在通过解码过程还原成表现型后再利用适应值进行评估。二进制编码类由于与生物染色体的组成比较相似,从而算法易于用生物的遗传进化理论来解释并使后续的交叉、变异操作实现起来更方便。但二迸制编码的方式
18、在求解连续优化问题的时候,也存在以下缺点:(1)相邻实数的二进制编码也许会出现不小的Hamming距离,以31和32为例,31和32的二进制表示为011111和10000,因此算法要从7转换到8则必需改变5位二进制值,这将大大降低遗传算法的搜索效率。(2)二进制编码的求解精度以及串长需要实现确定,并而精度很难在算法运行过程中随时的自我调整。精度与串长也是一对相对的因素,精度的过大必然使得串长过长,同样也会降低算法效率。由于神经网络的权值、阈值学习是一个繁杂的连续参数迭代寻优搜索问题,采用二进制编码受到精度的保证编码串会很长并且编码之后还需要解码,影响网络学习的精度和速度。因此本诊断模型决定采用
19、实数编码,权值阈值均精确到0.0001,因此神经网络所有权值和阈值需要按照其内部次序连成一个长串,而神经网络的每个权值便对应着串上的每一个位置。4.4.2适应度函数设计根据本章节的预测问题实际上就是将问题转化为求取目标值与实际输出值之间的最小差问题,因此将适应度函数定义为如下形式。可以发现:适应度和与期望值的误差是成反比关系的。 (4-2)其中,第个样本的神经网络的实际输出; 目标输出; 输出样本的成对数目。4.4.3始种群解空间的构成及其初始种群数建立初始化解空间,初始代码串权值阈值的变化范围需要首先确定,这需在对问题的专业知识进行相关考量后采用联想试探的方式来确定可能的范围。设计的范围太大
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- BP 神经网络 变压器 故障诊断 中的 应用 40
限制150内