本发明涉及故障预测技术领域,具体涉及一种复杂电子设备故障预测的方法。
背景技术:
目前最常见的故障预测的方法有:
1)趋势图分析法
该方法通过趋势分析来掌握复杂电子设备的运行状态。但是,由于影响复杂电子设备运行状态的原因很多,一旦某部分的统计规律发生变化,该方法无法对其未来的运行状态进行预测。
2)曲线拟合法
该方法只适合于曲线的参数方程比较明确的预测工作,对于一些复杂电子设备具有的非线性、时变性等特点,很难建立合适的曲线方程,预测效果并不理想。
3)时间序列法
该方法对于线性、平稳随机时间序列的预测能够起到较好的预测效果,应用范围受到限制。
4)基于灰色理论的预测方法
该方法仅适用于有一定上升或下降趋势的弱随机性时间序列的预测,对于复杂电子设备中随机性较强的系统进行预测时,还需进一步改进。
5)人工神经网络预测方法
人工神经网络以其独特的联想、记忆、存储和学习功能以及高度的非线性映射能力在设备的故障诊断和故障预测中被广泛应用。但是,在实际应用中也存在着以下问题:
a)训练样本的获取常常存在一定困难,神经网络的泛化能力有待提高;
b)神经网络的收敛速度和收敛性无法保证;
c)神经网络的训练容易陷入局部最小。
技术实现要素:
(一)要解决的技术问题
本发明要解决的技术问题是:如何设计一种复杂电子设备故障预测的方法,以便能够有效的对复杂电子设备进行故障预测。
(二)技术方案
为了解决上述技术问题,本发明提供了一种复杂电子设备故障预测的方法,所述方法包括以下步骤:首先利用差别矩阵的属性约简方法建立复杂电子设备最小故障诊断特征子集,并对属性样本进行归一化处理;然后根据改进的遗传算法获得最佳神经元初始权值和阈值;对BP神经网络进行改进,动态调整学习速率,并用改进后的训练算法训练网络的连接强度;最后对预测的故障样本进行反归一化处理,得到复杂电子设备的故障样本的预测值。
(三)有益效果
本发明利用粗糙集属性约简方法对样本数据进行预处理,粗糙集理论具有很强的定性分析能力,能在保留关键信息的前提下对样本数据进行约简,达到简化训练样本的目的;根据改进的遗传算法获得最佳神经元初始权值和阈值,对经典遗传算法进行改进,以网络误差最小作为进化准则,经过多次迭代,最后获得BP神经网络开始训练的初始权值和阈值;基于改进的BP神经网络训练算法训练网络的连接强度,计算BP神经网络输出层的预测值,为进一步缩短训练时间,对BP神经网络进行改进,动态调整学习速率,提高了网络的收敛速度。对样本数据进行反归一化处理,得到复杂电子设备故障样本数据的预测值。
具体实施方式
为使本发明的目的、内容、和优点更加清楚,下面结合实施例,对本发明的具体实施方式作进一步详细描述。
对于复杂电子设备,可以设为自定义的一些电子设备。
本发明实施例的复杂电子设备故障预测的方法包括以下步骤:首先利用差别矩阵的属性约简方法建立复杂电子设备最小故障诊断特征子集,并对属性样本进行归一化处理;然后根据改进的遗传算法获得最佳神经元初始权值和阈值;对BP神经网络进行改进,动态调整学习速率,并用改进后的训练算法训练网络的连接强度;最后对预测的故障样本进行反归一化处理,得到复杂电子设备的故障样本的预测值。该方法具体包括以下步骤:
S1:将采集得到的复杂电子设备的原始数据通过特征提取获得每一个故障对应的所有故障征兆,选取能体现复杂电子设备状况的特征参数作为条件属性,发生故障的类型作为决策属性。对复杂电子设备的条件属性和决策属性进行编码,建立复杂电子设备的决策表T。
假设C是复杂电子设备的条件属性(是决策表T的差别矩阵,是一个n乘以n的方阵),D是复杂电子设备的决策属性,c(w)是记录w在属性c(c∈C)上的值,Cij为差别矩阵中第i行第j列的元素,则差别矩阵C可表示为:
基于差别矩阵的属性约简方法如下:(A是属性约简后的条件属性集合,C是决策表T的差别矩阵,)ak∈{cij},C0为核属性集合)
1)定义集合B、集合Q、集合R,且初始值均为空集;
2)将核属性集合C0中的内容复制到集合R中;
3)求出所有包含核属性的条件属性集合Q;
4)差别矩阵C变为(C-Q),将条件属性集合A中去除集合R后的内容复制到集合B中;
5)对所有的ak∈B,计算在C中属性出现次数最多的属性ak,并将其添加到集合R中;
6)返回步骤2,直至C为空。
经过上述处理后,集合R就是最后的约简结果,即复杂电子设备最小故障诊断特征子集。
S2:输入样本归一化处理
将S1中得到的复杂电子设备最小故障诊断特征子集作为输入的属性样本。则经过归一化处理后得到其中,x(ii)表示归一化前的属性样本值,y(ii)表示归一化后的属性样本中的最大值,xmax表示属性样本中的最大值,xmin表示属性样本中的最小值。y(ii)的取值范围是[0,1]。
将归一化前的属性样本分成k组,每组有m+1个值。前m个值作为BP神经网络输入节点的输入值,后一个作为输出节点的期望值,见下表1。
S3:个体编码:
将所述复杂电子设备最小故障诊断特征子集作为输入层神经元。复杂电子设备的个体编码方式选择实数编码,每个个体均为一个实数串,由BP神经网络输入层与隐含层连接权值、隐含层阈值、隐含层与输出层连接权值以及输出层阈值4部分组成。
S4:建立适应度函数,并计算种群适应度
根据个体得到的BP神经网络的初始权值和阈值,用训练数据训练BP神经网络后预测复杂电子设备系统输出,把预测输出和期望输出之间的误差绝对值和作为个体适应度F,计算公式为:
上式中,n为神经网络输出节点数,dl为神经网络第l个节点的期望输出,ol为第l个节点的预测输出,t为系数,为预设值。
S5:判断是否满足终止条件:
算法终止条件:如果当连续繁殖很多代的最优BP神经网络权值的适应值没有变化时,则转步骤S9,否则转步骤S6。
S6:选择算子:
由于操作简单,传统的遗传算法大多采用“轮盘赌”选择算子。但是该方法一方面容易导致局部最优而无法进化,另一方面无法体现个体优劣,造成搜索精度不够。
本发明对传统遗传算法的“选择算子”进行改进,改进后的选择方式可确保适应度比平均适应度大的一些个体一定能够被遗传到下一代群体中,所以该方法的选择误差较小。具体操作如下:
d)设S2得到的BP神经网络的权值的数目为N,每个权值的适应度为Fs(s=1,2,…,N),计算BP神经网络的权值在下一代权值中的期望生存数目
e)用Ns的整数部分确定各个对应BP神经网络的权值在下一代权值中的生存数目,其中表示取不大于Ns的最大整数,这样可确定下一代权值中的个权值;
f)以为各个权值新的适应度,用“轮盘赌”选择算子随机确定下一代权值中还未确定的个权值。
S7:
采用自适应交叉率和变异率
本发明使用BP神经网络权值的适应度值来衡量遗传算法的收敛情况。对于适应值高的解,取较低的交叉率Pc和变异率Pm,使得该解进入下一代的机会增大;对于适应值低的解,应取较高的交叉率Pc和变异率Pm,使该解被淘汰掉。式(4)是交叉率Pc和变异率Pm随适应值的变化而自适应改变的计算方法。
其中,kc和km是小于1的常数,fc是要交叉的两个权值中适应值大的一个,fm是要变异的权值的适应值,fmax和分别是群体的最大适应值和平均适应值,表明群体的收敛程度,该值越小,表明群体已趋向收敛。
S8:如果算法执行次数达到了进化次数的上限时群体仍不收敛,则算法停止,否则转步骤S4。
S9:获取BP神经网络初始值,计算BP神经网络误差
在上述遗传算法中,以BP神经网络误差最小作为进化准则,经过多次迭代操作,最后获得一组权值和阈值,该组值是遗传算法所能遍历的值中网络误差最小的,作为BP神经网络的初始值。
设BP神经网络中每一个样本p的输入输出模式的二次型误差函数定义为:
系统的平均误差代价函数为:
上式(5)和(6)中,P为训练样本的数量,L为BP神经网络输出层的神经元数,dpk为BP神经网络输出层节点的期望输出,Opk为BP神经网络输出层节点的实际输出。
S10:动态调整学习速率:
若BP神经网络训练初期的功效较好的学习率,对后来的训练未必合适,因此,本发明对BP神经网络学习算法进行改进,采用动态调整学习速率的方法,使得BP神经网络的实际输出尽可能地接近期望输出,增加了学习算法的可靠性,缩短了BP神经网络的训练时间。
选取BP神经网络输出层节点的实际输出和期望输出的平均绝对误差e1及其变化率e2两个变量:
e2=e1(t)-e1(t-1) (8)
其中,e1(t)和e1(t-1)表示第t和t-1时的平均绝对值误差。
学习速率η的表达式为:
η=f1(e1)+f2(e2) (9)
其中:
k1和k2为比例因子,调整f1和f2的比例;b1和b2为权重因子,修正f1和f2的权重。k1、k2和b1、b2的值需根据实际需要和反复实验确定。
S11:修改BP神经网络的权值:
设BP神经网络有r个输入节点,输出层有v个输出节点,隐含层有q个节点,ωgh是输入层和隐含层节点之间的连接权值,ωhu是隐含层和输出层节点之间的连接权值。
BP神经网络输入层的第g个节点的输入为netg=xg,输出为Og=netg。
隐含层的第h个节点的输入为输出为Oh=f(neth);输出层的第u个节点的输入为输出为Ou=f(netu)。其中,g=1,2,…,r,h=1,2,…,q,u=1,2,…,v。
定义反传误差信号
输出层权值的调整公式为:
Δωjk=ηδkOj (13)
隐含层权值的调整公式为:
Δωij=ηδjOi (14)
S12:判断是否达到要求的精度:
如果达到了BP神经网络要求的精度,则执行S13,否则执行S9。
S13:判断是否完成训练次数:
如果完成了训练的总次数,则保存已训练的样本;否则执行S9。
S14:反归一化处理得到预测值:
针对上述BP神经网络训练后的样本,利用S2中的归一化公式进行反归一化运算,得到
其中表示复杂电子设备故障样本的预测值。
上述方法能够减少神经网络输入层个数,简化神经网络结构,提高神经网络泛化能力,减少了神经网络的训练时间;同时,利用遗传算法的快速学习网络权值得能力,摆脱了神经网络容易陷入极小点的困扰,并加快了收敛速度。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。