一种自联想神经网络诊断风机故障方法转让专利

申请号 : CN202011639678.6

文献号 : CN112746934B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 武鑫王立鹏吕佃顺李练兵李思佳李政宇陈伟光

申请人 : 江苏国科智能电气有限公司河北工业大学

摘要 :

一种自联想神经网络诊断风机故障的方法,将采集的数据归一化,去除奇异值,分为训练数据和测试数据。根据输入输出样本数据,确定自联想神经网络的输入输出节点及隐藏层结构。在保证种群多样性的同时选出较优个体的前提下,设计风机变桨系统故障诊断的选择算子公式,避免网络的权值和阈值陷入局部最优点,提高风机故障诊断准确率。设计适合风机变桨系统故障诊断的适应度函数,引入接收者操作特征曲线下方的面积AUC,以确保较低的漏诊率,并降低不平衡数据对模型诊断效果的干扰。基于改进自适应遗传算法‑自联想神经网络算法建立变桨系统正常运行模型,采用詹森‑山农散度比较正常时刻与故障时刻残差分布的偏移度,实现对变桨系统的故障诊断。

权利要求 :

1.一种自联想神经网络诊断风机故障的方法,其特征在于,所述方法包括以下步骤:步骤1:采用风电机组的数据采集与监控系统(SCADA)采集的数据进行归一化以及奇异值去除预处理操作,将所述的数据分为训练数据和测试数据;根据风电机组的数据采集与监控系统采集的数据确定自联想神经网络模型的输入和输出节点数;

步骤2:设置种群数量N,最大迭代次数M,并随机生成N个个体作为初始种群,采用实数编码的方法对自联想神经网络的权值和阈值进行编码,每个个体包含自联想神经网络的全部权值、阈值以及每个个体的位置信息;

步骤3:对每个个体解码获取自联想神经网络的权值、阈值;训练自联想神经网络,计算个体适应度值;

步骤4:依据适应度值对个体降序排列,然后按照改进的选择算子对种群中的个体进行选取,除了精英保留策略选取的个体外,对其余选中个体的自适应交叉概率和自适应变异概率进行交叉和变异操作;

步骤5:判断适应度值是否达到最大进化代数,若满足,则输出最优个体,否则进入步骤

3;

步骤6:解码最优个体,并将权阈值信息赋予自联想神经网络的参数空间,进行参数微调训练,然后将测试数据输入自联想神经网络模型中,获得残差数据及其分布信息,对残差进行分析,验证算法的准确性及效率。

2.根据权利要求1所述的诊断风机故障的方法,其特征在于:所述步骤4选择算子公式的方法如下:

1)确定一个初始种群,依据适应度函数计算每个个体的适应度值;

2)按照适应度值的大小将种群中的个体降序排序;

3)根据当前迭代次数和总迭代次数,确定保留优秀个体的数量n,余下的个体使用轮盘赌法选择,然后将选出的个体进行交叉和变异操作;

保留优秀个体的数量n的计算公式如下:式中,P为需要选出的优秀个体占总体的最大比例,N为种群个体总数,xmax为最大进化代数,n为优秀个体数量,x为进化代数,e为自然对数的底数;

4)进行精英保留操作;比较上一代和本代最优的个体,选出适应度最高的个体作为本代最优个体,并替换本代最差个体。

3.根据权利要求2所述的诊断风机故障的方法,其特征在于:所述适应度函数为适合风机变桨系统故障诊断的适应度函数,所述步骤3设计适应度函数的方法如下:选取自联想神经网络的输出值 与期望输出值y之差的绝对值作为目标函数Jm;取目标函数的倒数作为适应度函数;Jm目标函数的计算公式为:式中,m为自联想神经网络输出节点数;

在现有遗传算法适应度函数的基础上加入自联想神经网络的接收者操作特征曲线ROC下方的面积AUC值;

适应度函数f(xi)计算公式为:式中,ζ为一个极小值,防止分母为0,k为调节系数,f(xi)为改进的适应度函数;Jm为目标函数,AUC为接收者操作特征曲线ROC下方的面积;

将个体解码赋给自联想神经网络AANN的权值、阈值,再输入训练数据,可求出接收者操作特征曲线ROC下方的面积AUC值。

4.根据权利要求1所述的诊断风机故障的方法,其特征在于:所述步骤6中,使用库尔贝克‑莱布勒(KL)散度的变体詹森‑山农(JS)散度分析残差数据及其分布,詹森‑山农(JS)散度是库尔贝克‑莱布勒(KL)散度的变体,其中库尔贝克‑莱布勒(KL)散度的计算公式为:将风机故障诊断得到的残差范围分成n等份,统计落入每个残差区间中残差的个数,得到残差的概率分布p(xi)=xi/sp、q(xi)=xi/sq;其中p(xi)为变桨系统正常运行时残差落入区间i的比率,sp为变桨系统正常运行时所有区间的残差个数;q(xi)为故障时刻残差落入区间i的比率,sq为故障时刻所有区间的残差个数,xi为落入第i个区间的残差个数,n为模型输出的残差范围等分区间的个数,i为模型输出残差的第i个区间;

相较于库尔贝克‑莱布勒(KL)散度,詹森‑山农(JS)散度对相似度的判别更加准确,詹森‑山农(JS)散度的计算公式JS(p||q)如下:式中,p为数据的真实分布,q为数据的拟合分布。

说明书 :

一种自联想神经网络诊断风机故障方法

技术领域

[0001] 本发明涉及一种风机故障诊断方法。

背景技术

[0002] 变桨系统是风机控制系统中的重要组成部分,不仅直接影响风机对风能的利用率,其气动刹车功能还负责极端情况下风机的自身安全。大风冰雹天气以及风速风向的不
断变化,对变桨系统的性能与寿命均造成影响,增大了其故障发生率,使变桨系统成为风机
故障易发部件。同时变桨系统安装在离地面数十米的高度,维修难度大、成本高,因此对风
机变桨系统的故障诊断研究具有重要意义。目前对于变桨系统的故障诊断方法主要是选取
风速、风向、桨距角和电机转速参量,建立变桨系统的故障预测模型,如文献“基于SCADA系
统的风电变桨故障预测方法研究[J]”(肖成,刘作军,张磊..可再生能源,2017(2).)。对于
变桨系统这类难以建立精确数学模型、拥有较多运行数据变量的系统的故障诊断,人工神
经网络有较好的效果,但是网络的初始参数不易确定,随机的初始参数很容易导致神经网
络产生局部最优解,影响收敛速度和结果准确性。
[0003] 目前,如何提高大样本处理上收敛速度、增强全局寻优效果,是一个需要解决的技术问题。

发明内容

[0004] 针对现有技术的不足,本发明提出一种自联想神经网络的风机变桨系统故障诊断方法。本发明从选择算子和适应度函数两个方面对现有的自适应遗传算法进行改进,以提
高现有自适应遗传算法的搜索效率、全局寻优能力,避免神经网络产生局部最优解,影响变
桨系统故障诊断的速度和结果的准确性。
[0005] 本发明采用改进自适应遗传算法(IAGA)优化自联想神经网络(AANN)的初始权值和阈值,通过自联想神经网络(AANN)获得变桨系统正常状态下的残差分布,利用詹森‑山农
(JS)散度计算正常时刻与故障时刻残差分布的偏移度,判断变桨系统是否故障。
[0006] 本发明基于改进自适应遗传算法‑自联想神经网络模型的风机变桨系统故障诊断方法步骤如下:
[0007] 步骤1:采用风电机组的数据采集与监控系统(SCADA)采集的数据进行归一化以及奇异值去除等预处理操作,将所述的数据分为训练数据和测试数据。根据风电机的数据采
集与监控系统采集的数据确定自联想神经网络模型的输入和输出节点数。
[0008] 步骤2:设置种群数量N,最大迭代次数M,并随机生成N个个体作为初始种群,采用实数编码的方法对自联想神经网络的权值和阈值进行编码,每个个体包含自联想神经网络
的全部权值、阈值以及它们的位置信息。
[0009] 步骤3:对每个个体解码获取自联想神经网络的权值、阈值;训练自联想神经网络,计算个体适应度值。
[0010] 步骤4:依据适应度值对个体降序排列,然后按照改进的选择算子对种群中的个体进行选取,除了精英保留策略选取的个体外,对其余选中个体的自适应交叉概率和自适应
变异概率进行交叉和变异操作。
[0011] 步骤5:判断适应度值是否满足要求或达到最大进化代数,若满足,则输出最优个体,否则进入步骤3。
[0012] 步骤6:解码最优个体,并将权阈值信息赋予自联想神经网络的参数空间,进行参数微调训练,然后将测试集输入故障诊断模型中,获得残差数据及其分布信息,对残差进行
分析,验证算法的准确性及效率。
[0013] 各步骤具体如下:
[0014] 所述步骤1中,风电机组数据采集与监控系统(SCADA)记录的相关数据中选取有关变桨系统运行的数据信息,所述的数据信息包含15个运行参数,分别为:当前风速、风机有
功功率、叶片转速、发电机转速、风机3个叶片的桨距角和变桨驱动电流、变桨系统轴承温
度、伺服电机温度、3个叶片的绝缘栅双极型晶体管(IGBT)温度。因此,自联想神经网络的输
入和输出节点为15。
[0015] 上述数据中去除功率为0、数值缺失、重复记录等无效数据,对处理后的数据进行归一化处理,获得风机变桨系统的样本集。归一化处理公式如下:
[0016]
[0017] 式中,xi为输入的数据,xmin、xmax分别输入数据的最小值和最大值,x′i为归一化后的数据。
[0018] 所述步骤1中,自联想神经网络模型如下所述:
[0019] 自联想神经网络提取变桨系统运行数据的主要特征和相互关联的同时,将其正常运行模式固化到网络中,通过比较劣化或故障时刻数据与正常运行数据残差分布的差异程
度,更加准确、直观的反映变桨系统的健康状态。
[0020] 在自联想神经网络中,输入数据经过输入层、映射层到达瓶颈层的过程属于编码过程;再通过瓶颈层到映射层最后到输出层的过程属于解码过程。首先高维数据通过输入
层非线性映射到瓶颈层,实现对高维数据的压缩进而提取有效的特征维度。
[0021] 设g(x)表示编码函数,xi作为输入,i为x的第i个维度。数据经过编码过程得出yi,其表达式为:
[0022] yi=gθ(xi)=s(Wxi+b)
[0023] 式中,s(x)是非线性激活函数;θ=(W,b)是g(x)的参数;W代表权重;b是偏置。
[0024] 然后,隐含层的yi由瓶颈层通过非线性函数再映射到与输入层相同维度的输出层实现信息的解码,即对输入数据的重构,其表达式为:
[0025]
[0026] 式中,θ'=(W',b')是h(y)的参数;W'代表权重;b'为偏置。
[0027] 如此通过对数据的非线性的压缩和重构,自联想神经网络模型将会习得各个变量之间的非线性关系。对于输入为变桨系统正常运行的数据,自联想神经网络(AANN)会将正
常运行时数据间的特性与关联固化到模型当中。自联想神经网络(AANN)模型训练时,以最
小化输入与输出误差为目标,寻求最优网络参数,使输出尽可能还原输入数据。当输入劣化
或故障时刻数据时,输出的数据就会和输入数据有较大偏差。
[0028] 在对自联想神经网络(AANN)进行训练时,将训练样本数据yi作为模型的输入和期望输出,然后根据模型训练产生的输出 计算模型的误差平方和E,其公式如下:
[0029]
[0030] 式中,n为一个样本包含的变量个数;m为总共的样本数。
[0031] 所述步骤4中,选择算子是根据适应度函数选出适应度高的个体繁衍产生下一代,常用的选择算子有轮盘赌法、排序法以及精英保留策略。轮盘赌法存在随机误差,可能会排
除适应度高的个体,排序法及精英选择策略保留了优秀个体但可能破坏种群的多样性,导
致算法易于陷入早熟收敛,同时及时发现风机变桨系统故障可以合理安排工作人员检修、
提高风电机组的可靠性、增加风电场经济效应,为此,本发明在轮盘赌法的基础上进行改
进,在保证种群多样性的同时加快收敛速度,选出较优个体,保证了风机故障诊断的时间和
准确率,及时对风机变桨系统各类故障做出预警。
[0032] 轮盘赌法步骤方法如下:
[0033] 1)计算各个体适应度值;
[0034] 2)计算每个个体被选中的概率和累积概率;
[0035] 3)在[0,1]之间随机产生一个随机数r;
[0036] 4)依次比较累积概率与r的值,选中第一个大于r的值。
[0037] 本发明选择算子的步骤如下:
[0038] 1)确定一个初始种群,依据适应度函数计算每个个体的适应度值;
[0039] 2)按照适应度值的大小将种群中的个体按照降序排序;
[0040] 3)根据当前迭代次数和总迭代次数,按照确定保留优秀个体的数量n,余下的个体使用轮盘赌法的第3步和第4步选择,然后将选出的个体进行交叉和变异操作。
[0041] 保留优秀个体的数量n的计算公式如下:
[0042]
[0043] 式中,P为需要选出的优秀个体占总体的最大比例,N为种群个体总数,xmax为最大进化代数,n为优秀个体数量,x为进化代数,e为自然对数的底数。
[0044] 4)进行精英保留操作。比较上一代和本代最优的个体,选出适应度最高的个体作为本代最优个体,并替换本代适应度低的个体。
[0045] 其中,交叉和变异操作的计算公式如下:
[0046]
[0047]
[0048] 式中,交叉率的上下限分别为Pc1、Pc2,变异率的上下限分别为Pm1、Pm2;fmax表示每代种群个体中最大的适应度值;favg为当前种群平均适应度值;f'为要进行交叉操作的两个个
体中较大的适应度值;f为变异个体的适应度值。
[0049] 步骤3和步骤4的改进选择算子中适应度函数计算方式如下:
[0050] 选取自联想神经网络的输出值 与期望输出值y之差的绝对值作为目标函数Jm。取目标函数的倒数作为适应度函数。Jm目标函数的计算公式为:
[0051]
[0052] 式中,m为自联想神经网络输出节点数。
[0053] 遗传算法是朝着适应度函数值增大的方向进化,但自联想神经网络模型误差越小,模型越优,同时风机变桨系统故障诊断模型注重模型的准确性,因此,本发明在现有遗
传算法适应度函数的基础上加入自联想神经网络的接收者操作特征曲线ROC下方的面积
(AUC)值,降低不平衡数据对风机变桨系统故障诊断模型诊断效果的干扰,提升自联想神经
网络模型的准确性,准确识别出风机变桨系统的异常状态。
[0054] 适应度函数f(xi)计算公式为:
[0055]
[0056] 式中,ζ为一个极小值,防止分母为0;k为调节系数;f(xi)为改进的适应度函数;Jm为目标函数,AUC为接收者操作特征曲线(ROC)下的面积。
[0057] 将个体解码赋给自联想神经网络的权值、阈值,再输入训练数据,可求出接收者操作特征曲线ROC下的面积AUC值,降低改进自适应遗传算法‑自联想神经网络风机变桨系统
故障诊断模型的误诊率。
[0058] 接收者操作特征曲线(ROC)下的面积AUC的计算方法如下:
[0059] 接收者操作特征曲线下方面积AUC值的计算要先通过混淆矩阵来定义一些指标,如表1所示:
[0060] 表1混淆矩阵
[0061]
[0062] 表中,TP是真正例,表示模型诊断为故障,实际也是故障的事件;FN是假反例,表示模型诊断无故障,但实际有故障的事件;FP是假正例,表示模型诊断为故障,但实际无故障
的事件;TN是真反例,表示模型诊断无故障,实际也是无故障的事件。
[0063] 根据上述定义,得出如下指标:
[0064] 准确率是模型正确诊断事件的比例,在正负样本较为均衡的情况下,准确率越高,模型的诊断效果越好。准确率(accuracy)的计算公式如下:
[0065]
[0066] 真正类率(TPR)表示在所有实际故障的事件中,被诊断模型正确识别的比例。
[0067]
[0068] 负正类率(FPR)表示在所有实际无故障的事件中,被诊断模型错误地判断为故障的比例。
[0069]
[0070] 分别以负正类率和真正类率为横纵坐标,以不同的阈值计算对应的负正类率、真正类率值,构成不同的点,将其连接起来即为接收者操作特征曲线,计算其与横坐标所围成
的面积即为AUC。
[0071] 步骤6中,基于改进自适应遗传算法‑自联想神经网络的方法,将风力发电机正常运行数据作为输入,获得模型输出残差,统计各个残差的频数,获得残差概率分布。以残差
概率分布基准,当输入风力发电机故障数据后,模型的输出残差和概率分布情况就会与正
常情况有所区别,通过比较这两种残差概率分布的相差程度即偏移度,判断风力发电机是
否故障。并据此设置模型的阈值,尽可能包含全部的故障情况并排除健康状态在此阈值中
的现象。当得出的偏移度超过此阈值时,代表风机的关键部件发生故障。
[0072] 本发明使用库尔贝克‑莱布勒(KL)散度的变体詹森‑山农(JS)散度分析残差数据及其分布,其中库尔贝克‑莱布勒(KL)散度的计算公式为:
[0073]
[0074] 将本发明步骤1中的自联想神经网络模型输出的残差范围分成n等份,统计落入每个残差区间中残差的个数,得到残差的概率分布p(xi)=xi/sp、q(xi)=xi/sq。其中p(xi)为
变桨系统正常运行时残差落入区间i的比率,sp为变桨系统正常运行时所有区间的残差个
数;q(xi)为故障时刻残差落入区间i的比率,sq为故障时刻所有区间的残差个数,xi为落入
第i个区间的残差个数,n为模型输出的残差范围等分区间的个数,i为模型输出残差的第i
个区间。
[0075] 相较于库尔贝克‑莱布勒(KL)散度,詹森‑山农(JS)散度对相似度的判别更加准确,詹森‑山农(JS)散度的计算公式JS(p||q)如下:
[0076]
[0077] 式中,p为数据的真实分布,q为数据的拟合分布。
[0078] 所述步骤6中,风机变桨系统正常运行模型是经过正常运行数据训练的自联想神经网络模型,该模型可以识别出风机变桨系统下正常运行时的各个工作状态。从测试集中
选择一部分风机变桨系统故障时刻前后风电机组数据采集与监控系统(SCADA)记录的数据
和正常运行时的数据作为改进自适应遗传算法‑自联想神经网络模型的输入,利用詹森‑山
农(JS)散度计算模型输出残差分布和相应工况下正常分布的偏移度,考虑灵敏度以及模型
的准确性,滑动窗口值选择为10。以故障数据的残差分布与正常分布的最小偏移度为界限,
确定阈值。

附图说明

[0079] 图1基于改进自适应遗传算法‑自联想神经网络的风机故障诊断模型的总体结构图;
[0080] 图2自联想神经网络(AANN)结构图;
[0081] 图3本发明的改进自适应遗传算法(IAGA)结构图;
[0082] 图4本发明的改进自适应遗传算法(IAGA)、改进遗传算法(AGA)和遗传算法(GA)三种优化算法的最优个体适应度曲线;
[0083] 图5本发明的改进自适应遗传算法‑自联想神经网络(IAGA‑AANN)、改进遗传算法‑自适应联想网络(AGA‑AANN)和遗传算法‑自联想神经网络(GA‑AANN)模型训练误差曲线;
[0084] 图6部分训练数据残差分布的偏移度散点图;
[0085] 图7本发明改进的自适应遗传算法‑自联想神经网络(IAGA‑AANN)故障诊断模型的偏移度曲线。

具体实施方式

[0086] 以下面结合说明书附图和具体实施方式进一步说明本发明。
[0087] 本发明基于改进自适应遗传算法‑自联想神经网络风机变桨系统故障诊断模型的总体结构图如图1所示,具体方法的步骤如下:
[0088] 步骤1:采用风电机组数据采集与监控系统(SCADA)采集的数据进行归一化以及奇异值去除等预处理操作,将所述的数据分为训练数据和测试数据。根据风电机组的数据采
集与监控系统采集的数据确定自联想神经网络模型的输入和输出节点数。
[0089] 步骤2:设置种群数量N,最大迭代次数M,并随机生成N个个体作为初始种群,采用实数编码的方法对自联想神经网络的权值和阈值进行编码,每个个体包含自联想神经网络
的全部权值、阈值以及它们的位置信息。
[0090] 步骤3:对每个个体解码获取自联想神经网络的权值、阈值;训练自联想神经网络,计算个体适应度值。
[0091] 步骤4:依据适应度值对个体降序排列,然后按照改进的选择算子对种群中的个体进行选取,除了精英保留策略选取的个体外,对其余选中个体的自适应交叉概率和自适应
变异概率进行交叉和变异操作。
[0092] 步骤5:判断适应度值是否满足要求或达到最大进化代数,若满足,则输出最优个体,否则进入步骤3。
[0093] 步骤6:解码最优个体,并将权阈值信息赋予自联想神经网络的参数空间,并进行参数微调训练,然后将测试集输入故障诊断模型中,获得残差数据及其分布信息,对残差进
行分析,验证算法的准确性及效率。
[0094] 所述步骤1中的数据来自风电机组的数据采集与监控系统(SCADA),从数据采集与监控系统记录的相关数据中,选取有关变桨系统运行的数据信息,包含15个运行参数,分别
为:当前风速、风机有功功率、叶片转速、发电机转速、风机3个叶片的桨距角和变桨驱动电
流、变桨系统轴承温度、伺服电机温度、3个叶片的绝缘栅双极型晶体管(IGBT)温度。因此,
自联想神经网络的输入和输出节点数为15。
[0095] 去除功率为0、数值缺失、重复记录等无效数据,对处理后的数据进行归一化处理,获得风机变桨系统的样本集。归一化处理公式如下:
[0096]
[0097] 式中,xi为输入的数据,xmin、xmax分别输入数据的最小值和最大值,xi'为归一化后的数据。
[0098] 如图2所示,本发明步骤1所述的自联想神经网络理论依据如下:
[0099] 自联想神经网络提取变桨系统运行数据的主要特征和相互关联的同时,将其正常运行模式固化到网络中,通过比较劣化或故障时刻数据与正常运行数据残差分布的差异程
度,更加准确、直观的反映变桨系统的健康状态。
[0100] 在自联想神经网络中,输入数据经过输入层、映射层到达瓶颈层的过程属于编码过程;再通过瓶颈层到映射层最后到输出层的过程属于解码过程。首先高维数据通过输入
层非线性映射到瓶颈层,实现对高维数据的压缩进而提取有效的特征维度。
[0101] 设g(x)表示编码函数,xi作为输入,i为x的第i个维度。数据经过编码过程得出yi,其表达式为:
[0102] yi=gθ(xi)=s(Wxi+b)
[0103] 式中,s(x)是非线性激活函数;θ=(W,b)是g(x)的参数;W代表权重;b是偏置。
[0104] 然后,隐含层的yi由瓶颈层通过非线性函数再映射到与输入层相同维度的输出层实现信息的解码,即对输入数据的重构,其表达式为:
[0105]
[0106] 式中,θ'=(W',b')是h(y)的参数;W'代表权重;b'为偏置。
[0107] 如此通过对数据的非线性的压缩和重构,自联想神经网络模型将会习得各个变量之间的非线性关系。对于输入为变桨系统正常运行的数据,自联想神经网络(AANN)会将正
常运行时数据间的特性与关联固化到模型当中。自联想神经网络(AANN)模型训练时,以最
小化输入与输出误差为目标,寻求最优网络参数,使输出尽可能还原输入数据。当输入劣化
或故障时刻数据时,输出的数据就会和输入数据有较大偏差。
[0108] 在对自联想神经网络(AANN)进行训练时,将训练样本数据yi作为模型的输入和期望输出,然后根据模型训练产生的输出 计算模型的误差平方和E,其公式如下:
[0109]
[0110] 式中,n为一个样本包含的变量个数;m为总共的样本数。
[0111] 遗传算法(GA)是模拟自然界遗传和生物进化论而成的一种全局优化概率搜索算法。它将问题的潜在可能解看作一个种群,以适应度函数作为评判标准,经过选择、交叉、变
异3个遗传算子产生下一代个体,不断进化迭代,直到找出最优的个体。相较于其他算法,标
准遗传算法具有适应性强、全局寻优等优点,但也存在局部寻优能力差,导致其训练比较费
时,在进化后期搜索效率较低,容易产生早熟问题,影响风机故障诊断的准确率。
[0112] 本发明针对上述问题,从选择算子和适应度函数两个方面进行改进,提出一种改进自适应遗传算法(IAGA)用于提高原算法的搜索效率、局部寻优能力,避免早熟现象的发
生,如图3所示具体如下:
[0113] 1)选择算子:选择操作是根据适应度函数选出适应度高的个体进行繁衍产生下一代,常用的选择算子有轮盘赌法、排序法以及精英保留策略。轮盘赌法存在随机误差,可能
会排除适应度高的个体,排序法及精英选择策略保留了优秀个体但可能破坏种群的多样
性,导致算法易于陷入早熟收敛,同时及时发现风机变桨系统故障可以合理安排工作人员
检修、提高风电机组的可靠性、增加风电场经济效应,为此,本发明在轮盘赌法的基础上进
行改进,在保证种群多样性的同时加快收敛速度,选出较优个体,保证了风机故障诊断的时
间和准确率,及时对风机变桨系统各类故障做出预警。轮盘赌法步骤如下:
[0114] (1)计算各个体适应度值;
[0115] (2)计算每个个体被选中的概率和累积概率;
[0116] (3)在[0,1]之间随机产生一个随机数r;
[0117] (4)依次比较累积概率与r的值,选中第一个大于r的值。
[0118] 本发明改进选择算子的步骤如下:
[0119] (1)确定一个初始种群,依据适应度函数计算每个个体的适应度值;
[0120] (2)按照适应度大小将种群中的个体降序排序;
[0121] (3)根据当前迭代次数x和总迭代次数xmax,确定保留优秀个体的数量n,余下的个体使用轮盘赌法选择,然后将选出的个体进行交叉和变异操作。其中优秀个体的数量n的公
式如下:
[0122]
[0123] 式中,P为要选出的优秀个体占总体的最大比例,N为种群个体总数,xmax为最大进化代数。
[0124] (4)进行精英保留操作,比较上一代和本代最优的个体,选出适应度最高的个体作为本代最优个体,并替换本代最差个体。为了保留其优秀基因,该个体不进行交叉和变异操
作直接进入下一代。
[0125] 2)设计适应度函数:遗传算法的目标是找出所有进化代中使自联想神经网络输出最小误差的对应的权值、阈值。因此选取自联想神经网络的输出值 与期望输出值y之间差
的绝对值作为目标函数。
[0126]
[0127] 式中,m为自联想神经网络输出节点数。
[0128] 遗传算法是朝着适应度函数值增大的方向进化,但自联想神经网络模型误差越小,模型越优,所以取目标函数的倒数作为适应度函数。同时风机故障诊断模型非常注重模
型预测的准确性,因此本发明在上述适应度函数的基础上加入自联想神经网络的接收者操
作特征曲线下方的面积AUC值,降低不平衡数据对风机变桨系统故障诊断模型诊断效果的
干扰,提升诊断模型的准确性,准确识别出风机变桨系统的异常状态,降低误报率,改进后
的适应度函数为:
[0129]
[0130] 式中,ζ为一个极小值,防止分母为0,k为调节系数。将个体解码赋给自联想神经网络的权值、阈值,再输入训练数据,求出接收者操作特征曲线下方的面积AUC值带代入公式
中,即为该个体的适应度值。
[0131] 3)自适应交叉和变异概率:交叉和变异算子实现对种群的更新,常规遗传算法使用恒定的交叉与变异概率,这会使算法搜索效率低下,且可能陷入局部最优,无法找出最优
个体。本发明选用自适应的交叉和变异率,其公式如下:
[0132]
[0133]
[0134] 式中,交叉率的上下限分别为Pc1、Pc2,变异率的上下限分别为Pm1、Pm2;fmax表示每代种群个体中最大的适应度值;favg为当前种群平均适应度值;f'为要进行交叉操作的两个个
体中较大的适应度值;f为变异个体的适应度值。
[0135] 4)由于本发明使用实数编码,所以交叉算子采用算数交叉算子,公式如下:
[0136]
[0137] 式中, 分别表示第t+1代的第k个以及第l个染色体(个体)的第i个基因;α为[0,1]内的随机数。
[0138] 变异算子采用均匀变异的方法,选取第m个染色体中第j个基因进行变异操作,其染色体取值范围为[Umin,Umax],表达式为:
[0139] xmj=Umin+λ(Umax‑Umin)
[0140] 式中,λ为[0,1]内均匀分布的随机数。
[0141] 步骤6中,本发明基于改进自适应遗传算法‑自联想神经网络的方法,将风机变桨系统正常运行数据作为输入,获得模型输出残差,统计各个残差的频数,获得残差概率分
布。以此为基准,当输入变桨系统故障数据后,模型的输出残差和概率分布情况就会与正常
情况有所区别,通过计算这两种残差概率分布的相差程度即偏移度,判断风机变桨系统是
否故障。
[0142] 比较两个分布间的相似度,一般采用相对熵进行衡量,即库尔贝克‑莱布勒(KL)散度。设p(x)表示数据的真实分布,q(x)为数据的拟合分布,则在离散型随机变量的情形下,
库尔贝克‑莱布勒(KL)散度计算公式如下:
[0143]
[0144] 将改进自适应遗传算法‑自联想神经网络的风机故障诊断模型输出的残差范围分成n等份,统计落入每个残差区间中残差的个数,得到残差的概率分布p(xi)=xi/sp、q(xi)
=xi/sq。其中p(xi)为变桨系统正常运行时残差落入区间i的比率,sp为变桨系统正常运行
时所有区间的残差个数;q(xi)为故障时刻残差落入区间i的比率,sq为故障时刻所有区间的
残差个数,xi为落入第i个区间的残差个数。
[0145] 因为库尔贝克‑莱布勒(KL)散度值域范围为[0,∞),无上界,并且具有不对称性,所以不适合作为阈值。为了更加准确的比较残差分布的偏移程度,本发明选用基于库尔贝
克‑莱布勒(KL)散度的变体詹森‑山农(JS)散度,作为衡量两个残差分布差异的指标。其值
域范围为[0,1],JS散度越小,表示分布越相似,分布完全相同是0,相反则为1。相较于库尔
贝克‑莱布勒(KL)散度,詹森‑山农(JS)散度对相似度的判别更加确切,计算公式如下:
[0146]
[0147] 步骤3的适应度函数中的接收者操作特征曲线ROC和接收者操作特征曲线下方的面积AUC的计算方式如下:
[0148] 由于风机故障数据相比于正常运行数据占比比较低,即使模型预测的全是正常状态,准确率也不会太低。因此训练模型时以准确率作为评判标准便不能较好的反应模型的
诊断效果。而根据接收者操作特征曲线ROC计算曲线下方面积AUC,即使在正负样本不均衡
的情况下,也不会发生很大变化,能较好的反应诊断模型的诊断效果,因此本发明选用接收
者操作特征曲线下方面积AUC值作为模型评估指标。接收者操作特征曲线下方面积AUC值的
计算要先通过混淆矩阵来定义一些指标,如表2所示:
[0149] 表2混淆矩阵
[0150]
[0151] 表中,TP是真正例,表示模型诊断为故障,实际也是故障的事件;FN是假反例,表示模型诊断无故障,但实际有故障的事件;FP是假正例,表示模型诊断为故障,但实际无故障
的事件;TN是真反例,表示模型诊断无故障,实际也是无故障的事件。
[0152] 根据上述定义,得出如下指标:
[0153] 准确率是模型正确诊断事件的比例,在正负样本较为均衡的情况下,准确率越高,模型的诊断效果越好。准确率(accuracy)的计算公式如下:
[0154]
[0155] 真正类率(TPR)表示在所有实际故障的事件中,被诊断模型正确识别的比例。
[0156]
[0157] 负正类率(FPR)表示在所有实际无故障的事件中,被诊断模型错误地判断为故障的比例。
[0158]
[0159] 分别以负正类率和真正类率为横纵坐标,以不同的阈值计算对应的负正类率、真正类率值,构成不同的点,将其连接起来即为接收者操作特征曲线,计算其与横坐标所围成
的面积即为AUC。
[0160] 步骤6中风机变桨系统正常运行模型是经过正常运行的数据训练的改进自适应遗传算法‑自联想神经网络模型,该模型可以识别出风机变桨系统下正常运行时的各个工作
状态。从测试集中选择一部分风机变桨系统故障时刻前后数据采集与监控系统(SCADA)记
录的数据和正常运行时的数据作为改进自适应遗传算法‑自联想神经网络模型的输入,利
用詹森‑山农(JS)散度计算模型输出残差分布和相应工况下正常分布的偏移度,考虑灵敏
度以及模型的准确性,滑动窗口值选择为10。以故障数据的残差分布与正常分布的最小偏
移度为界限,确定阈值。
[0161] 本实施例选取华北某风电场1.5MW风电机组数据采集与监控系统(SCADA)收集的数据进行实验分析。经过多次试验,设置种群规模为60,最大进化代数200,交叉概率最大最
小值分别为:Pc1=0.89,Pc2=0.58,变异概率最大最小值分别为:Pm1=0.15,Pm2=0.005。自
联想神经网络输入节点数为15,映射层与解映射层节点为数9,瓶颈层节点数为5,学习率为
0.02。
[0162] 图4为本发明改进自适应遗传算法(IAGA)、改进遗传算法(AGA)和遗传算法(GA)三种优化算法的最优个体适应度曲线。从图4可以看出改进自适应遗传算法(IAGA)不仅在收
敛速度上优于改进遗传算法(AGA)和遗传算法(GA),而且最终的适应度函数值也更大,拥有
更好的参数寻优效果。
[0163] 图5为本发明改进自适应遗传算法‑自联想神经网络(IAGA‑AANN)、改进遗传算法‑自联想神经网络(AGA‑AANN)和遗传算法‑自联想神经网络(GA‑AANN)模型训练误差曲线。改
进遗传算法‑自联想神经网络(GA‑AANN)在迭代1592次时达到设定的精度要求;改进遗传算
法‑自联想神经网络(AGA‑AANN)在迭代1075次时达到精度要求;而改进自适应遗传算法‑自
联想神经网络(IAGA‑AANN)在迭代694次时达到精度要求,说明改进自适应遗传算法‑自联
想神经网络(IAGA‑AANN)的收敛速度更快。
[0164] 图6为部分训练数据残差分布的偏移度散点图。将经过预处理的包含变桨系统正常运行和故障时刻数据的训练集,带入改进自适应遗传算法‑自联想神经网络模型中,比较
经过詹森‑山农(JS)散度计算的正常运行和故障时刻的残差分布偏移度,得到模型的阈值
为0.39。已得到的模型阈值作为评判变桨系统是否故障的指标,使模型接收者操作特征曲
线下的面积AUC最大化,即诊断模型的准确性最高。得出当窗口时间长度选取为50min时,接
收者操作特征曲线下的面积AUC达到最佳值0.967。
[0165] 本发明选取的某风电场在2019年5月11日3号风机变桨系统发生故障,因此选取故障前10天的数据来检验本文提出的故障诊断方法的有效性。利用训练好的改进自适应遗传
算法‑自联想神经网络(IAGA‑AANN)故障诊断模型获取风机的的残差分布,得出的偏移度曲
线如图7所示。从图7中可以看出,5月3日有一次超过阈值的情况,但其所占比例在滑动时间
窗口内没有超过60%,所以判定为无效警报。在5月8日偏移度开始出现较大震荡,并有上升
的趋势,5月10日偏移度超出阈值,并持续增大,判断该风机变桨系统非常可能发生故障,应
停机检修。
[0166] 为了更直观的比较这几种算法的性能,采用同一变桨系统测试集作为诊断模型的输入数据,对最小二乘支持向量机(LSSVM)、自联想神经网络(AANN)、遗传算法‑自联想神经
网络(GA‑AANN)、改进自适应遗传算法‑自联想神经网络(IAGA‑AANN)等诊断模型的接收者
操作特征曲线下的面积(AUC)以及准确率进行了比较,结果如表2所示。
[0167] 表2改进自适应遗传算法‑自联想神经网络(IAGA‑AANN)与其他模型的对比
[0168]
[0169] 选取的测试集中包含的正负样本数较为均衡,所以此时准确率也可作为测试集中模型诊断效果的衡量指标。从表2可以看出改进自适应遗传算法‑自联想神经网络(IAGA‑
AANN)诊断模型的接收者操作特征曲线下的面积(AUC)和准确率均明显高于其他模型,因此
改进自适应遗传算法‑自联想神经网络(IAGA‑AANN)故障诊断模型的精确度较高,效果较
好。
[0170] 本发明实施例的核心构思在于:利用风机正常运行历史数据对模型进行训练,通过计算正常与故障时刻模型输出残差分布的詹森‑山农(JS)散度,获取模型阈值,判断变桨
系统是否故障。在评估指标中引入接收者操作特征曲线下的面积AUC值和时间窗口,进一步
增加模型的准确性。采用风机变桨系统正常运行与故障时刻的数据进行实验分析,验证模
型有效性。