APP下载

基于加权统计特征KICA的故障检测与诊断方法

2022-03-03张成潘立志李元

化工学报 2022年2期
关键词:测试数据残差变量

张成,潘立志,李元

(1 沈阳化工大学理学院,辽宁 沈阳 110142; 2 沈阳化工大学技术过程故障诊断与安全性研究中心,辽宁 沈阳 110142)

引 言

随着工业过程逐渐趋于复杂,许多工厂对生产安全和产品质量提出了更高的要求。为了确保工厂安全、提高产品质量,在线检测与诊断技术得到快速发展。近年来,多变量统计过程监控(multivariate statistical process monitoring, MSPM)方法被提出并被广泛用于复杂工业过程故障诊断领域[1-3]。

由于工业测量中变量个数和被记录次数的增加,为了完成过程监控,需要直接从大量数据中提取和定义统计数据的重要特征。目前,针对多变量监控问题,主元分析(principal component analysis,PCA)和独立元分析(independent component analysis,ICA)在线性过程监控中得到了成功的应用[4-10],但是在非线性过程中PCA 和ICA 的监控性能受到制约。为了有效监控非线性过程,基于核主元分析(kernel PCA,KPCA)和核独立元分析(kernel ICA,KICA)的多元统计过程监控方法被广泛应用于工业过程[11-14]。虽然上述方法在过程监控中可以识别特征显著的故障,但是当存在幅值小或者变化慢的故障时,上述方法的监控性能较差。由于工业过程存在幅值小、变化缓慢的故障并且往往表现为早期的微小故障,因此研究微小故障检测方法对过程监控有着重要的意义。

目前国内外有很多关于微小故障检测方法的研究[15-22],其中基于信号处理的方法是一种常见的微小故障检测方法[17-18],例如,基于小波变分法[19]和经验模态分解法[20]的信号特征处理已经在许多应用中得到了成功推广。在微小故障中非高斯随机项的影响更为明显[21],为了处理非高斯数据中微小故障的问题,基于ICA 与小波变换的微小故障检测方法被应用并取得良好的效果[22]。由于传统工业过程中的方法对非线性过程的监控性能较差,因此,为了解决非线性过程故障检测问题,基于KICA 的监控方法被应用于过程监控。虽然KICA 在非线性过程监控中可以识别特征显著的故障,但是当非线性动态过程发生微小故障时,KICA的监控性能较差。

针对KICA 在非线性动态过程中对微小故障检测率低的问题,本文提出一种基于加权统计特征KICA(weighted statistical feature KICA, WSFKICA)的故障检测与诊断方法。其基本思想如下:首先,利用KICA 捕获到独立元数据和残差数据;然后,在独立元空间和残差空间中通过加权统计特征获取改进统计特征数据集,并由此数据集构建统计量进行故障检测;最后,利用基于变量贡献图的方法进行过程故障诊断。

1 核独立元分析

假设s=[s1…sn]Τ是包含n个独立源信号的随机向量,Al×n为混合矩阵,x=[x1…xl]Τ为包含l个观测信号的随机向量(l>n),满足关系式:

x=As(1)

ICA 能够从观测信号Xl×m(l是变量个数,m是样本个数)估计出混合矩阵A和独立成分S[9]。

由于ICA本质上是一种线性变换方法,因此,为了使ICA 能够处理非线性问题,衍生出了KICA 方法。在KICA 中将xiϵRl×1通过非线性映射φ映射到高维空间,记高维空间数据集为P=[φ(x1) …φ(xm) ]。P的协方差矩阵如式(2)所示:

2 基于加权统计特征KICA 的故障检测与诊断方法

2.1 局部方法

局部方法由Basseville 提出[23],是一种新的突变检测方法,该方法监视描述系统行为的函数模型参数的变化。参数偏离可以通过高斯概率密度函数的均值变化来识别。局部方法能够对基于状态维护中的机载早期微小故障进行检测,它特别适用于组件故障。局部方法的目的是将关于参数化随机过程的复杂检测问题转化为高斯向量均值监控的普遍问题。将局部方法分别引入到PCA 和KPCA 提出了统计局部 PCA(statistical local principal component analysis, SLPCA) 和统计局部KPCA(statistical local kernel principal component analysis,SLKPCA),并在过程监控中得到了成功的应用[24-25]。令θ和θ0作为表示过程异常和正常行为的参数,采用局部方法,异常参数可表示为式(6):

在PCA 过程监控中应用局部方法后构造的主要残差函数[24]如式(10)所示:

其中,ti表示得分矩阵中第i个样本;λk表示第k个得分的方差。

2.2 基于加权统计特征KICA 的故障检测与诊断方法

KICA 的统计量的计算公式如式(5)所示,从中可以看出两个统计量计算的分别是独立元空间和残差空间中样本到原点的距离。当工业过程中存在的故障信息不显著或者故障尺度较小时,故障信息与正常信息会出现大部分的交叉,此时根据式(5)无法检测到明显的故障信息。接下来通过修改文献[26]中的非线性动态数值例子验证KICA 捕获的独立元中微小故障信息与正常信息的交叉部分不能被轻易发现。例子模型如式(11)所示:

其中,wi(t)为-2 到2 上均匀分布的随机数;oi(t)是均值为0、方差为0.1 的高斯白噪声随机数;非线性函数f(u(t))定义为f(u(t)) =[u1(t)2u2(t)2]Τ。

首先根据式(11)产生一组包含1000个正常样本的数据作为训练数据,然后生成另一组包含1000个样本的数据作为测试数据,测试数据中前500 个样本为正常样本作为校验数据,后500 个样本则在变量w1上添加幅值为2的阶跃故障作为故障数据。本模型对输出y进行监控。经典的PCA 方法用于KICA白化过程时将高维空间降至9维。按照文献[27]负熵规则,KICA 选取的独立元个数为2。图1 为独立元变量,从中可以看出:在500样本之后测试与训练的数据始终交叉在一起,进一步可以推断出故障信息无法通过统计量识别。残差空间的分析与独立元空间类似,当存在微小故障时无法识别出交叉部分故障。综上所述,当非线性动态过程中潜隐变量发生微小故障时,故障信息与正常信息出现大部分交叉,此时故障不容易被完全捕获。

图1 KICA独立元Fig.1 Independent component using KICA

基于上述分析,本文提出了一种基于加权统计特征KICA 的故障检测与诊断方法,以提高非线性动态过程中对微小故障的监控能力。

通过观察在PCA 以及KPCA 中应用局部方法的过程,可以发现构造的残差函数是由得分平方之后的数据减去得分的方差。由于原始数据已经进行了标准化处理,因此也可以看作是对得分平方之后的数据进行了中心化处理。本文将局部方法中残差函数的思想应用到KICA 的独立元以及残差中。加权统计特征的作用实际上是通过构造残差函数作为数据的统计特征,然后在统计特征上考虑权重的思想,进一步使得微小故障可以偏离出正常数据,从而可以比较容易识别出故障信息。

假设使用KICA 计算得到独立元数据集为Sd×m(d表示独立元个数,m表示样本个数),则可以在独立元空间中构造统计特征如式(12)所示:

本文故障诊断过程包含三部分:离线建模、在线检测和故障诊断,具体流程如图2所示。

图2 WSFKICA流程示意图Fig.2 Flow diagram of WSFKICA

(1)离线建模

第一步:对采集的训练数据集X进行标准化。

第二步:根据KICA得到训练数据集X的独立元数据集Sx和残差数据集Ex。

第三步:由Sx和Ex通过式(12)~式(17)计算得到改进统计特征数据集Rˉs和Rˉe。

第四步:根据式(18)计算Rˉs的统计值R 和Rˉe的统计值H,使用核密度估计方法确定R 和H 的控制限分别为RUCL和HUCL。

(2)在线检测

第一步:对测试数据集F应用训练数据的均值和方差进行标准化。

第二步:根据KICA得到测试数据集F的独立元数据集Sf和残差数据集Ef。

第三步:由Sf和Ef通过式(12)~式(17)计算得到改进统计特征数据集Rˉst和Rˉet。

第四步:通过式(18)确定rˉ的统计值R和H。

第五步:若R>RUCL或者H>HUCL,则rˉ为故障样本,否则,rˉ为正常样本。

(3)故障诊断

需要说明的是:WSFKICA 方法在KICA 的基础上利用加权统计特征,提高了非线性动态过程中微小故障的检测率,但是WSFKICA 不是简单的KICA和统计特征的结合。WSFKICA 还考虑了加权策略,在保证正常样本权重是1的前提下使得较小的故障得到放大,进而可以识别出微小故障的样本。同时,给出了基于贡献图的故障诊断策略,该策略解决了无法通过控制图找出故障原因的问题。

3 仿真实验

3.1 数值例子

本节通过式(11)数值例子以及2.2 节的训练数据和测试数据对本文方法的有效性进行验证。采用其他文献的方法,如ICA、KICA、KPCA、SLKPCA对此非线性动态过程例子进行仿真实验,并与WSFKICA 的结果比较分析。该例子中ICA 和KICA按照负熵规则选取两个独立元;KPCA和SLKPCA按照95%主元贡献度选取3个主元。使用两组正常数据,一组用于模型的建立,另一组用于对权重系数中参数β进行交叉验证,将两个统计量的校验准确率求均值,验证结果如表1 所示。从表中可以看出β= 4 时有最好的校验结果,因此β选取为4。对该数值例子在不同窗口宽度下训练的模型进行交叉验证并确定窗宽选取为62。

表1 参数β 取不同值时的校验准确率Table 1 Validation accuracy at different parameter β

采用ICA 对此数值例子进行故障检测时,ICA计算得到的独立元变量如图3 所示。从图3 中可以看出,500 样本之后测试数据和训练数据交叉在一起,导致ICA 统计量I2无法识别出故障,同理可知残差空间也检测不出故障数据,故ICA 的监控指标I2和SPE无法检测出故障,检测结果如图4所示。

图3 ICA独立元Fig.3 ICA independent component

图4 ICA故障检测结果Fig.4 Fault detection results using ICA

采用KICA 对此数值例子进行故障检测时,根据2.2 节分析可知当潜隐变量存在微小故障时,故障信息与正常信息混在一起无法区分。KICA 独立元样本点分布如图5所示,从中可以看出KICA 控制限无法区分故障样本,故KICA 的监控指标I2和SPE故障检测率较低,检测结果如图6所示。

图5 KICA独立元空间中样本Fig.5 Samples in independent component space by KICA

图6 KICA故障检测结果Fig.6 Fault detection results using KICA

使用KPCA 对该数值例子进行故障检测时,虽然KPCA 可以处理非线性过程,但是其对微小故障检测性能较差。图7 表示KPCA 在主元空间上的样本点分布情况,从中可以看出故障数据都在控制限内部,进一步可以得出主元空间检测不出故障信息。所以KPCA 监控指标T2和SPE 故障检测率较低,如图8所示。

图7 KPCA主元空间样本Fig.7 Samples of principal component space in KPCA

图8 KPCA故障检测结果Fig.8 Fault detection results using KPCA

SLKPCA 最初是为了处理非线性过程中KPCA不满足高斯性的问题[25]。使用SLKPCA 对该数值例子进行故障检测时,虽然SLKPCA 对微小故障检测表现出很大的优势,但是其对数据同样要求尽可能服从高斯分布,当数据不满足高斯分布时,其检测性能受到制约。由于本例中数据是非高斯数据,因此使用SLKPCA 进行故障检测时有部分故障无法被有效识别。故SLKPCA的监控指标T2和SPE故障检测率较低,如图9所示。

图9 SLKPCA故障检测结果Fig.9 Fault detection results using SLKPCA

使用WSFKICA 对该例子进行故障检测时,根据2.2 节分析可知该方法通过统计特征和权重系数的方法使得故障信息放大,从而可以在KICA 捕获到潜隐变量的基础上容易检测出微小故障信息。本文方法独立元空间的样本点如图10所示,从中可以看出控制限可以有效识别出故障样本,故本文方法能够有效地处理非线性动态过程中潜隐变量含有微小故障的情况。对该例子的故障检测结果如图11所示。

图10 WSFKICA特征数据中样本Fig.10 Samples in feature data using WSFKICA

图11 WSFKICA故障检测结果Fig.11 Fault detection results using WSFKICA

采用式(19)进行故障诊断时,统计量R 和H 的贡献值如图12所示,从中可知R和H均表现出变量2贡献值最大,即主要是由变量2引起的故障。通过分析可以发现该数值例子中变量w1上的故障经过式(11)运算后在输出变量y2上体现最明显,由图13可以看出监控变量y1、y2、y3的变化趋势。由于测试数据中的故障是在500 样本之后添加到w1上的,因此通过图13 可以看出测试数据中前500 个校验数据与正常数据的变化趋势是相同的,而500 之后的故障数据变量有小幅度的偏离,且偏离程度的大小顺序为:y2>y1>y3。故可以得出故障主要是由变量y2引起的,这与诊断的结果一致。

图12 监控变量贡献图Fig.12 Contribution charts of monitored variables

图13 监控变量Fig.13 Monitoring variable

上述5 种方法的故障检测率的对比结果如表2所示,从中可以看出WSFKICA具有最高的检测率。

表2 数值例子中各方法的故障检测率Table 2 Fault detection rates of each method in simulated case

3.2 Tennessee Eastman仿真过程

Downs和Vogel[31]设计的(Tennessee Eastman,TE)基准程序,目前已经被广泛应用于过程监控中,此过程包括五个主要的转换单元:反应器、冷凝器、循环压缩机、气液分离器和解吸塔,如图14所示。

图14 TE过程流程Fig.14 Layout of TE processes

本节中仿真数据均由TE 仿真器运行生成[32]。TE 仿真器共有六个模态,本节中选择模态1 作为数据生成器,共生成28 组数据。将TE 仿真器中时间参数设置为10 h,采样周期为0.01 h。测试数据中前3 h生成的300个样本为正常数据作为校验数据,后7 h 生成的700 个样本是故障数据。TE 过程共包含53个变量,由于生成的数据中有三个控制变量在整个过程中恒定不变选择舍去,故保留有50个变量。

使用TE 仿真过程进行验证时,本节中ICA 选取2 个独立元;KICA 使用PCA 白化时将高维降至77 维,从中选取2 个独立元;KPCA 按照95%主元贡献率选取77 个主元。表3 给出了各组测试数据使用ICA、KICA、KPCA 和WSFKICA 方法故障检测结果,由于第六组数据样本缺失,因此该组数据不做测试。以第27 组测试数据为例,使用四种方法的检测结果分别如图15~图18 所示。对比四种方法的检测结果,可以看出本文方法能够快速准确判断出故障27 的发生,并且本文方法的故障检测率最高。采用式(19)对562 时刻进行故障诊断,由统计量R 和H 诊断结果如图19 所示。由图可知变量9、49 贡献较高,所以故障27 主要是由变量9、49 引起的。图20 中反应堆温度和反应堆冷却水流量分别对应变量9 和49,从中可以看出在300样本之后出现了大幅度的震荡,这与诊断结果一致。

图15 ICA故障检测结果Fig.15 Fault detection results using ICA

图16 KICA故障检测结果Fig.16 Fault detection results using KICA

图17 KPCA故障检测结果Fig.17 Fault detection results using KPCA

图18 WSFKICA故障检测结果Fig.18 Fault detection results using WSFKICA

图19 故障27贡献图Fig.19 Contribution chart of Fault 27

图20 反应堆温度和反应堆冷却水流量Fig.20 Reactor temperature and reactor cooling water flow

表3 TE过程中各方法的故障检测率Table 3 Fault detection rates of each method in TE process

经过上述分析可知,本文提出的WSFKICA 具有更高的检测率。同时,本节给出了故障10的故障诊断结果如图21 所示,从中可以发现故障10 主要是由变量18和48引起的。图22中汽提塔温度和汽提液产品流分别对应变量18 和48,与文献[29]中所述的故障类型一致,验证了本文所提诊断方法可以发现引起故障的原因。

图21 故障10贡献图Fig.21 Contribution chart of Fault 10

图22 汽提塔温度和汽提液产品流Fig.22 Stripper temperature and stripper liquid product flow

4 结 论

针对KICA 在非线性动态过程中对微小故障检测率低的问题,提出了一种基于WSFKICA 的微小故障检测与诊断方法。该方法通过KICA 与加权统计特征相结合,能够有效处理非线性动态过程中存在微小故障的情况。另外,给出了基于变量贡献图的故障诊断策略,解决了无法通过统计量获取故障发生位置的问题。本文通过数值例子和TE 过程验证了本文方法在故障检测与诊断中具有更好的表现,同时,对非线性动态过程发生微小故障的情况具有一定的指导意义。

猜你喜欢

测试数据残差变量
基于残差-注意力和LSTM的心律失常心拍分类方法研究
基于双向GRU与残差拟合的车辆跟驰建模
寻求不变量解决折叠问题
抓住不变量解题
基于残差学习的自适应无人机目标跟踪算法
基于深度卷积的残差三生网络研究与应用
测试数据管理系统设计与实现
基于自适应粒子群优化算法的测试数据扩增方法
空间co-location挖掘模式在学生体能测试数据中的应用
分离变量法:常见的通性通法