基于随机森林算法的旋转机械齿轮组故障诊断
2019-10-19
(1.山东科技大学 数学与系统科学学院,山东 青岛 266590;2.山东科技大学 电气与自动化工程学院,山东 青岛 266590)
随着工业复杂性的增加,大型设备日趋复杂化,旋转机械作为现代工业的主要动力源之一,通常运行在较为恶劣的环境中,一旦发生故障轻则影响生产,造成一定的经济损失,重则带来严重的安全事故。为了保障设备的高效安全运行,有必要开展有关旋转机械的故障诊断和监测研究。由于其子系统的复杂性、工作状态的多变性和操作不当等因素的影响,导致在旋转机械的故障诊断中获取到的通常是被污染的信号。因此,提高旋转机械故障诊断的准确率一直是备受关注的问题。齿轮组作为旋转机械中不可缺少的传动和连接部件,在传动过程中损坏比较频发,其能否正常运行与整个旋转机械的工作性能密切相关。因此在旋转机械中,齿轮组的故障诊断一直备受关注。常见的齿轮组故有两种:一种是在传动过程中轮齿发生的故障,主要有点蚀、断齿、磨损等;另一种是齿轮偏心、轴承不平衡等造成的故障。
传统的旋转机械齿轮组故障诊断方法有基于解析模型的方法[1]、基于专家系统的方法[2]、基于人工智能的方法[3-4]等。其中,基于解析模型的方法需要对复杂的机械结构进行数学建模及大量的推导计算,虽然准确率较高,但对复杂机械的原理等专业知识的要求较高,因此在旋转机械的故障诊断中普适性较弱。基于专家系统的方法不需要知道系统的精确模型,故障诊断过程便于理解,但实际诊断中需要大量的专家知识及经验,知识的数量和质量对诊断结果的准确性有一定的影响。在基于人工智能的故障诊断方法中,主要有基于神经网络的方法[3]、基于支持向量机的方法[4]等。其中,基于神经网络的方法在旋转机械故障诊断中应用较广,其结构的选择、收敛速度较慢等都制约着诊断结果的准确性。支持向量机采用结构风险最小化的原理,在训练数据集较小的情况下诊断效果较好。但实际工业中,通常存在大量训练样本,对于大量输入数据支持向量机的诊断性能相对较差。
机器学习算法在故障诊断领域越来越受到人们的重视,随机森林(random forest,RF)作为其中的一种也在不断发展。RF最早由Leo Breiman和Adele Culter提出,该算法是一个包含多个弱分类器的组合学习算法[5]。大量研究[6-8]表明,RF相比其他算法有着明显的优势。能够处理大规模数据,并且在数据缺失的情况下也具有很好的预测精度,实现过程比较简单,既能处理离散数据也能处理连续数据,因此近10年来,RF算法在多个领域都有较好的发展。目前国内将RF算法用于故障诊断的研究相对较少,本研究将RF算法应用于旋转机械齿轮组的故障诊断中,并将实验结果与旋转机械故障诊断中应用较广的支持向量机方法进行比较。结果显示,与支持向量机相比,RF算法模型参数较少,实现过程较为简单,并且能够处理大规模数据,明显提高了故障诊断的准确率。因此,基于RF算法的故障诊断有着重要的研究价值。
将随机森林算法应用于旋转机械齿轮组的故障诊断中,针对多工况、多故障同时存在的情况,用一种新的人工智能方法进行故障诊断,取得了比传统旋转机械齿轮组故障诊断更高的分类准确率。该方法不仅拓展了随机森林算法的应用领域,同时也给旋转机械齿轮组的故障诊断提供了新思路。
1 基于RF算法的旋转机械齿轮组故障诊断
1.1 RF算法介绍
RF是一种有监督的集成学习算法,广泛应用于分类问题和回归问题。该算法综合了1996年Leo[9]提出的Bagging算法和1998年Ho[10]提出的随机子空间方法,利用两种随机的思想,很好地抑制了传统分类器的过拟合现象。其基本思想是将分类能力较弱的多个分类器进行组合,形成分类能力较强的分类器群。该算法选取分类回归树(classification and regression tree,CART)[11]作为基分类器进行相关问题的分类。
RF算法是一种建立在特征集合上的算法,特征的优劣在一定程度上制约着算法的分类准确率。因此,特征的选取在RF中具有重要的意义。假定RF由k个分类器h1(T),h2(T),…,hk(T)集合而成,表示为:
H={h1(T),h2(T),…,hk(T)}。
(1)
其中:T是输入特征集,hq(T),q=1,2,…,k是基分类器,每个分类器均为利用CART算法生成的决策树,综合k棵决策树的分类结果按少数服从多数原则进行投票,投票结果即为RF的分类结果。
RF算法的实现包括以下几个部分:
1)利用bootstrap重抽样方法[12]从含有n个样本的原始数据集中进行k次随机且有放回的抽样,形成k个bootstrap子样本集,每个子样本集中均含有n个样本。
2)针对每个bootstrap子样本集,利用CART算法进行决策树的构建。该算法使用“基尼指数”(Gini index)作为划分最优特征及最优分裂值的指标。假设当前所选取的特征ti中包含C个类别,其Gini值如下所示:
(2)
式中,pj为第j个类别出现的概率。从式(2)可以看出,Gini值越小分类的纯度越高。因此,遍历该决策树的所有特征,选取Gini值最小的特征作为当前节点的分裂特征。
4)综合k棵决策树的分类结果[14],利用少数服从多数的原则进行投票,投票结果即为RF的分类结果。
1.2 基于RF算法的旋转机械齿轮组故障诊断方法
针对主要的两种基于人工智能的故障诊断方法存在的不足,本研究拟采用基于RF算法进行齿轮组的故障诊断,其故障诊断流程图如图1所示。
图1 基于RF算法的故障诊断流程图Fig.1 Flowchart of RF based fault diagnosis
基于RF算法的旋转机械齿轮组故障诊断具体步骤为:
1)原始数据集D的获取:选取齿轮组裂纹、缺齿、断齿三类故障进行数据采集,针对每类故障,分别从旋转机械的振动传感器、扭力传感器测量中选取l个数据,并记录每个数据对应的故障标签yi(i=1,2,…,3l):
yi∈{y1,y2,y3},i=1,2,…,3l,
(3)
D={D1∪D2},
(4)
D1={(xi,yi)},i=1,2,…,3l,
(5)
(6)
其中:y1,y2,y3分别表示裂纹、缺齿、断齿三类故障,D1为振动传感器测量输出、D2为扭力传感器测量输出。
2)特征提取:结合旋转机械故障检测系统的特点和文献[15]的时域特征参数表,选取表1中的时域特征作为决策树生长过程中的分裂属性。
表1 时域特征描述Tab.1 Description of time domain characteristics
注:xi是传感器测量,i=1,2,…,n是样本数
4)CART决策树的生长和分类结果:根据1.1节CART决策树的构建方法选取最优的分裂特征和最优分裂值a进行节点的分裂。假定选取的最优分裂特征为ti,最优分裂值a的选取如下:
(7)
其中:ti1、ti2为枚举得到的最优分裂特征ti的两个子样本集,N1、N2为两个子样本集的样本数,N为最优分裂特征为ti时的样本数。按照公式(7)的规则进行CART决策树的生长,直到m个特征全部用作分裂节点,则完成了该决策树的生长。
5)RF的分类结果:将构建好的k棵决策树作为RF的基分类器群,对特征数据进行故障类别的划分,综合k棵决策树的分类结果,利用少数服从多数的原则进行投票得到RF的分类结果,从而实现故障诊断。
上述基于RF算法的旋转机械齿轮组故障诊断过程描述如表2、表3所示。
2 实验验证
2.1 实验平台
实验平台选取美国SpectraQuest公司的风力涡轮动力传动系统故障诊断模拟器,其结构图如图2所示,其中1是单相电机、2是二级平行轴变速箱、3是行星齿轮箱变速器、4是可编程磁力制动器、5是传感器(从左到右分别为扭力传感器、振动传感器)。该平台可以在多工况、多故障同时存在的情况下对齿轮组的运行状态进行检测。
提出的故障诊断方法是针对旋转机械齿轮组的裂纹、缺齿、断齿三类故障进行的诊断。图3列出了齿轮组在正常情况下及三种故障情况下的实物图,其中:1为正常、2为缺齿、3为裂纹、4为断齿。
表2 基于RF算法的旋转机械齿轮组故障诊断方法(离线过程)Tab.2 RF based fault diagnosis method on rotating machinery gearbox (offline process)
表3 基于RF算法的旋转机械齿轮组故障诊断方法(在线过程)Tab.3 RF based fault diagnosis method on rotating machinery gearbox (online process)
图2 风力涡轮动力传动系统故障诊断模拟器Fig.2 Wind turbine drivetrain diagnosis simulator
图3 齿轮故障类型实物图Fig.3 The different classes of gear fault
裂纹主要发生在齿根表面。由于齿面所受作用力超出材料所能承受的最大作用力,导致齿轮发生裂纹,在啮合时裂纹闭合促使缝隙中的油压增高,加速了裂纹的扩散,最终齿轮表面的金属一小块一小块的剥落形成点蚀。断齿是齿轮最常见的故障类型,由于齿轮的作用力主要集中在齿根处,因此断齿常发生于齿根部位。通常有三种情况:一是由于齿轮长时间处于工作状态,在各种力的作用下,产生疲劳裂纹并逐渐扩散,最终导致齿轮发生疲劳断齿。二是当齿轮处于超负荷的工作环境时,齿轮受到严重的冲击,导致齿根处的作用力超出所能承受的最大范围而发生断裂。三是由于齿轮本身质量较差或工作过程中出现偏载,使得齿根处受力不均匀而发生局部断齿(缺齿),局部断齿通常发生在轮齿端部。此外,受齿轮箱中未被清理的物质混入齿轮间隙、润滑效果不好等因素的影响,常常导致齿轮被磨损。齿轮磨损后,齿的厚度变薄,加大了整个设备的振动和噪声,严重时也可能引发断齿。
2.2 实验数据采集
实际工作中,转速的改变,噪声、环境的改变,齿轮、轴承等元件的损坏都可能引起工况的改变。但实际的转速是不可预测的,在实验过程中转速的变化可以通过调节电机转动频率和负载电压来实现,假设转子转速是匀速的,而数据是在不同转速下采集的,在一定程度上也保证了工况的不同,具有一定的普适性。齿轮部分可选择分布形式为直齿或斜齿等不同类型的轮齿,还可以选择齿轮裂纹、断齿、缺齿等多种故障类型的齿轮。
表4 实验数据Tab.4 Experimental data
现将工况的处理表示如下:借助风力涡轮动力传动系统故障诊断方法模拟器,选取四种工况(转动频率为6、10 Hz,负载电压为8、5 V)同时采集齿轮裂纹、缺齿、断齿三种故障的振动传感器和扭力传感器输出。其中,每个传感器采集2 000个数据,按照传感器的不同,将得到的故障数据按列进行整合,生成一个(2 000×3)×2的矩阵。按照同样的整合方法将剩余三种工况的数据进行整合,共得到四个(2 000×3)×2的矩阵。
根据表1所示的时域特征分别对四种工况下传感器测得的数据进行故障特征的提取。为了降低提取特征之后数据的维度,实验中将每4个数据划分为一组进行特征提取。提取过程如下:分别对500×3组振动传感器的测量输出D1和500×3组扭力传感器的测量输出D2进行多维度特征向量的提取,记为集合T。T包含如下14个变量:最大值x1(x8)、均方根x2(x9)、方根幅值x3(x10)、标准x4(x11)、峰值指标x5(x12)、裕度指标x6(x13)、绝对平均值x7(x14)。利用bootstrap重抽样方法分别对每种工况下提取特征后的500×3行数据集进行重复抽样生成k个bootstrap子集,并对每种工况进行训练集和测试集的划分。
2.3 实验结果分析
图4以转动频率6 Hz、负载电压8 V为例,给出了齿轮裂纹故障下的部分扭力传感器测量提取特征之后的数据。
图4 齿轮裂纹情况下的特征数据Fig.4 Extracted feature data under root crack fault
2.3.1 四种工况下的实验结果
基于RF算法的旋转机械齿轮组故障诊断实现过程较为简单,整个实验过程涉及到两个参数的选择,分别为最优决策树的棵数k和最优特征子集m。其中,k值根据实验过程中的袋外误差来确定,通过优化,选择k=320作为RF模型中最优决策树的棵数。对于工况1,按照1.2节步骤(2)介绍的特征提取方法进行时域特征的提取,将提取后的特征向量x1~x14和类别标签Y作为RF的输入,实验结果如表5所示。
表5 训练数据集和测试数据集的混淆矩阵Tab.5 Confusion matrix of training and testing data set
注:左侧为训练数据集的混淆矩阵,右侧为测试数据集的混淆矩阵
由表5的混淆矩阵可以看出,利用RF进行分类时,y1被错分为y2的有2个,被错分为y3的有0个,分类错误率为1.2%。y2被错分为y1的有2个,被错分为y3的有1个,分类错误率为1.9%。y3的分类结果全部正确。总体来说,利用RF进行分类,预测准确率达到了98.84%。
图5 RF特征重要性Fig.5 Contribution of the RF features
表6 工况2、3、4测试数据集的混淆矩阵Tab.6 Confusion matrix of test data set for operation conditions 2,3 and 4
为衡量每个特征在RF的所有决策树中所做贡献的平均值,采用基于Gini值的特征重要性计算方法,将特征ti在节点m处的重要性定义为节点m分枝前后Gini值的变化量,并通过计算特征ti在每棵决策树中的重要性得到该特征在随机森林中的重要性。由图5可以得出,x8、x11、x12、x13四个特征在RF的构建过程中贡献率较大,为此RF中最重要的四个特征,保证了所构建的RF的分类准确率。
在其他三种工况下的故障诊断结果如表6所示,由混淆矩阵可以看出,每种工况下RF的分类准确率都比较高,并且RF对y3的分类效果最好,对y1和y2的分类准确率相差不大。由于RF算法在构建过程中只涉及到两个参数(k和m)的选择,算法的实现过程较为简单,并能根据Gini值给出变量的重要性排序,方便进行最优特征的选取。
2.3.2 方法对比
为了验证RF算法能有效地提高模型的预测准确率,在相同的工况下,将2.2节提取特征之后的数据用于本文提出的基于RF的故障诊断方法和传统的基于支持向量机(support vector machine,SVM)的故障诊断方法[17]。
表中首先给出了四种不同的工况,每种工况所采集的数据均包含旋转机械齿轮组裂纹、缺齿、断齿三类故障,并且在每类故障信号中选取2 000个数据用作实验所需的原始数据集。然后对采集到的2 000×3个故障数据按照文中表1的时域特征参数进行时域特征的提取。最后将提取特征之后的数据用于随机森林算法和文献[17]中介绍的支持向量机方法进行分类准确率的对比。实验对比结果如表7所示。
表7 基于RF和基于SVM的故障诊断方法的实验对比Tab.7 Experimental comparison between RF and SVM based fault diagnosis method
由上述对比实验可以看出,在相同的工况下,应用RF算法进行故障分类的分类准确率明显高于使用SVM方法的分类准确率。对于不同的工况而言,RF算法的分类准确率较SVM算法明显提高。主要原因在于使用SVM算法进行分类得到的是单一的分类器,而RF算法采用bootstrap重抽样方法生成了多个分类器,且其训练集互不相同,并采用随机子空间的方法对特征集进行抽样,使得每个分类器的特征子集也互不相同,最后利用组合分类器的思想将每个分类器的分类结果进行组合,得到整个森林的分类结果。同时,在建立RF模型时只涉及到两个参数的确定,算法的时间复杂度较低。因此,与SVM方法相比,RF算法的模型预测准确率有了明显的提高。
3 结论
针对传统的旋转机械故障诊断中使用单一分类器、诊断准确率不高的问题,提出了一种基于多个分类器组合而成的RF算法旋转机械齿轮组故障诊断。该方法通过基分类器组合学习,提高了森林预测准确率,大大缩短了模型的预测时间。利用风力涡轮动力传动系统故障诊断模拟器,进行了多工况、多故障的实验验证。结果显示,RF算法能够很好地对齿轮组故障进行分类,避免复杂的寻参过程,能够处理大规模数据集,并且通过分类器组合,提高了模型的预测准确率,避免了传统分类器的过拟合现象。同时,应用随机森林算法进行旋转机械的故障诊断过程可看作一个循环过程。针对系统齿轮组出现的新故障,或者旋转机械其他部位出现的故障,首先需要明确知道该部分故障数据的类别标签,然后对这部分故障数据进行时域特征提取,最后将提取数据用作随机森林算法的输入进行随机森林的重新构建,并进行故障类别的划分。如再出现新的故障,可循环操作此过程完成故障类别的划分。