[发明专利]一种基于改进PSO-BP神经网络齿轮箱故障诊断方法及装置有效
申请号: | 202110472851.6 | 申请日: | 2021-04-29 |
公开(公告)号: | CN113188794B | 公开(公告)日: | 2021-11-23 |
发明(设计)人: | 周欣欣;衣雪婷;张道海;高志蕊;闫育铭;张龙;赵政;孟炫宇;郭月晨;郭树强;王艳娇;徐纯森;赵岩;李红彪 | 申请(专利权)人: | 东北电力大学 |
主分类号: | G01M13/021 | 分类号: | G01M13/021;G01M13/028;G06N3/08;G06N3/00 |
代理公司: | 北京锺维联合知识产权代理有限公司 11579 | 代理人: | 原春香 |
地址: | 132012 吉*** | 国省代码: | 吉林;22 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 改进 pso bp 神经网络 齿轮箱 故障诊断 方法 装置 | ||
1.一种基于改进PSO-BP神经网络齿轮箱故障诊断方法,其特征在于,包括以下步骤:
步骤1000:采集齿轮箱正常状态的振动信号以及不同故障状态下的振动信号,形成第一数据集,所述第一数据集是一个n×m的矩阵,其中,n为所测数据的样本数,m是传感器个数;
步骤2000:对所述第一数据集中的数据样本打标签,采用0、1组合来表示正常工作状态和故障状态,形成第二数据集;
步骤3000:通过归一化方法对所述第二数据集中的数据进行归一化处理,形成第三数据集,数据归一化采用Min-Max归一化方法,归一化公式采用公式(1)进行计算:
公式(1)中,MaxValue表示样本数据的最大值;MinValue表示样本数据的最小值;x表示样本原始数据;y表示归一化之后的数据;
步骤4000:采用主成分分析法对所述第三数据集中的数据进行降维处理,形成第四数据集,所述步骤4000进一步包括步骤4100-步骤4600:
步骤4100:齿轮箱第三数据集中的n个样本,每个样本测得m个属性,将这n×m个数据构成矩阵X:
可知xij为第i个样本的第j个特征属性的取值,其中,i=1,2,…,n,j=1,2,…,m;
步骤4200:根据公式(2)和(3)计算每个样本各个特征属性的均值和标准差:
公式(2)中为第j个属性的均值,xij为第i个样本的第j个特征属性的取值,其中,i=1,2,…,n,j=1,2,…,m;n为样本个数;
公式(3)中sj为第j个属性的标准差,xij为第i个样本的第j个特征属性的取值,其中,i=1,2,…,n,j=1,2,…,m;为第j个属性的均值,n为样本个数;
步骤4300:根据公式(4)求解标准化矩阵:
公式(4)中zij构成标准化矩阵Z,sj为第j个属性的标准差,xij为第i个样本的第j个特征属性的取值,其中,i=1,2,…,n,j=1,2,…,m;为第j个属性的均值;
步骤4400:根据公式(5)求解相关系数矩阵R=(rjk)m×m:
公式(5)中sj为第j个属性的标准差,xij为第i个样本的第j个特征属性的取值,为第j个属性的均值,n为样本数,其中,i=1,2,…,n,j=1,2,…,m,k=1,2,…,m;
步骤4500:求解特征值及特征向量:由特征方程|λE-R|=0求出相关系数矩阵R的特征值由大到小排序λ1>λ2>...>λm以及对应特征向量为l1,l2,…,lm,其中,E为单位矩阵;
步骤4600:降维:按照方差累计贡献率的原则确定k,从而通过取前k个主成分,得到主成分矩阵(Fij)n×k,主成分降维后的矩阵计算公式如公式(6)所示:
公式(6)中zij是标准化矩阵Z的向量,其中,i=1,2,…,n;j=1,2,…,k;
步骤5000:采用改进后的PSO算法优化BP神经网络权值和阈值,基于优化后的BP神经网络建立齿轮箱故障诊断模型,所述步骤5000进一步包括步骤5010-步骤5120:
步骤5010:确定BP神经网络的拓扑结构,该结构包括:神经网络输入层节点数m、隐含层节点数h和输出层节点数d;输入层节点数m取决于样本的特征个数;输出层节点数d取决于故障种类的数量;隐含层节点数h采用经验法和试凑法来确定合适的隐含层节点数;隐含层节点数h与输入层节点m、输出层节点数d满足公式(7)所示的函数关系:
公式(7)中,m为输入层节点数,由实际的输入个数决定;h为隐含层节点数;d为输出层节点数;a为随机数,取值范围为[1,10];
步骤5020:计算粒子个体编码长度,并把粒子向量映射为神经网络的权值和阈值,其中粒子个体编码长度计算公式如公式(8)所示:
Length=h×m+h+d×h+d (8)
公式(8)中,m为输入层节点数;h为隐含层节点数;d为输出层节点数;
步骤5030:粒子群种群的初始化,包括初始化粒子的速度、位置、学习因子和迭代次数等;
步骤5040:神经网络输入训练样本前向传播通过公式(9)计算各个粒子适应度值:
f(xi)=-MSE (9)
公式(9)中,训练误差MSE为神经网络的实际输出和期望输出的均方误差,MSE表达式如公式(10)所示:
公式(10)中,n为训练样本总数;c为输出层第L层的神经元节点数;为第四数据集第k个训练样本输入神经网络后,输出层第j个节点的实际输出和期望输出的误差;
步骤5050:如果该粒子当前的适应度值优于其历史最优值,用当前位置替代历史最优值,作为个体极值;
步骤5060:如果该粒子的历史最优值优于全局最优值,用该粒子的历史最优值替代全局最优值,作为全局极值;
步骤5070:迭代更新,根据公式(11)、公式(12)更新所有粒子位置和速度,并检查粒子速度和位置是否超出设置范围,如果超出范围,则用边界值作为粒子的速度和位置;
xi+1(t+1)=xi(t)+vi+1(t+1) (11)
公式(11)中,t表示当前迭代的次数;xi(t)表示第t次迭代第i个粒子位置;vi(t)表示第t次迭代第i个粒子速度;
vi+1(t+1)=wvi(t)+c1r1(pbesti(t)-xi(t))+c2r2(gbest-xi(t)) (12)
公式(12)中,vi(t)表示第t次迭代第i个粒子速度;pbesti(t)表示第i个粒子第t次迭代搜索到的最优位置;gbest表示整个粒子群搜索到的最优位置;c1表示学习因子,影响着粒子的“自我学习”能力;c2表示学习因子,影响着粒子的“社会学习”能力;r1、r2是介于[0,1]之间的随机数;w见公式(13);
公式(13)中,w为粒子群算法的惯性权重;wmax为惯性权重最大值;wmin为惯性权重最小值;T为最大迭代次数;t为当前迭代次数,取值范围在wmin和wmax之间;
步骤5080:根据各个粒子的适应度值确定粒子的个体历史最优和群体历史最优;
步骤5090:根据群体历史最优的变化对算法进行“早熟”判断,如果出现“早熟”转到步骤5100,如果没有则转到步骤5110;“早熟”判断是通过引入一个是否对粒子施加扰动的评判指标ε,如果连续多次迭代中,邻近两次粒子历史最优适应度值差的绝对值都小于ε,则判断该粒子陷入“早熟”,然后对粒子施加一次扰动;
步骤5100:利用公式(14)给陷入“早熟”的粒子施加一次扰动,并转到步骤5090,其中公式(14)如下:
其中,
公式(14)-(16)中,X为粒子位置;v为粒子速度;i为粒子编号;k为当前迭代次数;N为粒子群的空间维度;μ和α为常数;m为粒子个数,abs()为求绝对值函数;rand()为[0,1]均匀分布的随机数,normrnd()为生成服从正态分布的随机数;
步骤5110:判断最小误差或最大迭代次数是否达到限定值;如果最小误差和最大迭代次数都没达到限定值,则转到步骤5070;如果最小误差没有达到要求,而粒子群迭代次数到达限定值,则转到步骤5120;
步骤5120:把粒子群优化的最优权值和阈值作为BP神经网络的初始权值和阈值,当实际输出与期望输出不符时,进入误差的反向传播阶段,误差通过输出层,以网络误差最小为目标函数,按照误差梯度下降的方式不断调整各层权值,当达到最小误差或神经网络的最大训练次数,选取此时的权值和阈值,算法结束;
步骤6000:将步骤4000所述的第四数据集输入到所述步骤5000优化后的BP神经网络齿轮箱故障诊断模型进行训练,得到最终的基于改进PSO-BP神经网络故障诊断模型。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东北电力大学,未经东北电力大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110472851.6/1.html,转载请声明来源钻瓜专利网。