罗 静,胡瑾秋
自适应综合指标的化工过程参数报警阈值优化方法研究
罗 静,胡瑾秋*
中国石油大学(北京)机械与储运工程学院,北京 102249
面临日益复杂的化工过程生产装置,提高化工过程报警系统的性能有着重要的指导意义。传统的化工过程参数报警阈值设置方法一般只考虑误报警,并没有同时考虑误报警和漏报警,导致报警系统产生大量的错误报警。针对上述问题,提出自适应综合指标的报警阈值优化方法。采用核密度估计方法、基于历史数据对过程报警状态进行估计,综合考虑误报警率和漏报警率,从而建立优化报警阈值的目标函数,将数值优化算法内嵌于粒子群算法形成新的算法进行求解。案例分析中将此方法应用于TE过程,结果表明,用此方法设置的报警阈值监测误报率为0,漏报率为0.78%。与传统的3σ法相比,此方法能够在保证低漏报率的条件下有效降低误报警率,提高化工过程报警系统的性能,减轻现场操作人员的工作压力,减少人员生命财产损失。
自适应;综合指标;误报警;漏报警;核密度估计;粒子群算法
化工生产过程日益复杂,具有大量的过程数据,及时准确地判断这些过程数据的异常状况关乎到化工生产过程的安全性与可靠性,进而关乎到人员生命财产安全。因此,提高过程参数报警系统的性能具有重大意义。当前工业过程中存在着报警数目多的问题,根据WIT的研究[1],操作员有效处理的报警为每天150个(每10分钟1个报警),一天最多处理300个报警(每5分钟1个报警),而在实际过程中则远远超出这个数字。报警数目多的直接原因是报警阈值设置的不合理,阈值范围设置得过小会产生过多的报警,其中大部分为误报警[2-4]。相反,如果阈值范围设置得过大可能会漏掉重要报警,报警系统将失去作用。
常见的过程参数报警阈值的设置分为3类:(1)基于模型的方法;(2)基于知识的方法;(3)基于统计的方法。文献[5]建立了在线和离线模型进行报警阈值的优化;文献[6]根据数据的伯努利分布特性,在多变量统计过程中构建统计量的二级的控制限,减少了误报警;文献[7]将模糊神经网络和遗传算法用于阈值估计的训练;文献[8]提出核密度估计方法得到多元统计量的概率密度函数,之后由等概率密度曲线得到数据分布的正常区间。在实际工业过程中应用最多的是3σ阈值设定方法,它是根据过程参数在正常状态的历史数据,计算分别得到其均值µ和方差σ,将阈值范围设在区间内。根据概率论知识,落在此区间内的概率为99.73%,而落在此范围外的概率仅为0.27%,属于小概率事件。然而,以上方法在设置阈值时一般只考虑误报警,并没有同时考虑漏报警,导致报警系统产生大量的错误报警。
鉴于此,提出自适应综合指标的报警阈值优化方法。采用核密度估计方法、基于历史数据对过程报警状态进行估计,综合误报警率和漏报警率,建立优化报警阈值的目标函数,将数值优化算法内嵌于粒子群算法形成新的算法进行求解。此方法能够有效减少误报警和漏报警次数,提高化工过程报警系统的性能,在减少现场操作人员工作压力的同时又能够捕捉到重要报警信息,保证现场安全,减少人员生命财产损失。
1.1 核密度估计
为了构造报警阈值优化的目标函数,需要利用核密度估计方法来估计过程参数的报警状态,以确定误报警和漏报警。核密度估计(Kernel Density Estimation, KDE)是一类基于概率密度函数的非参数估计法,它从数据样本本身出发研究数据分布的特征。KDE基于历史数据估计未知总体的概率密度函数,使估计的密度函数与真正的密度函数间的均方积分误差最小。KDE的表达式为:
式中,xi为归一化后的自变量;f(x)为自变量概率密度的估计值,取f(x)=0.99时的自变量,返归一化后得到自变量阈值δ;r为样本数;d为空间的维数;f(x)为核函数,本文选用高斯核函数;h为窗宽,一维最优窗宽的计算公式为
选定样本后,根据式(1)和(2)计算每个样本点的概率密度值,以其作为纵坐标,样本点作为横坐标,运用KDE方法得到过程参数概率密度函数曲线(如图1所示)。图中,左侧曲线为正常数据分布曲线,右侧曲线为异常数据分布曲线,竖线所对应的横坐标为参数报警阈值,异常数据分布曲线下低于报警阈值部分的区域面积是漏报率的概率,正常数据分布曲线下超出报警阈值部分的区域面积是误报率的概率。
图1 过程参数概率密度Fig. 1 Process parameters probability density
根据最小错误率贝叶斯决策理论[16],误报警和漏报警发生的概率可以通过式(3)、(4)计算:
式中,f(x|ω1)为正常情况下的概率密度函数;f(x|ω2)为异常情况下的概率密度函数;t为报警阈值。可见,若报警阈值设置过大,误报警的概率变小,而漏报警的概率变大;反之,误报警的概率增大,而漏报警的概率减小。
1.2 数值优化算法
本文选用最常见的数值优化算法来寻找最佳阈值[1]。误报警和漏报警均属于错误报警,因此,将错误报警率作为数值优化算法的目标函数,建立如下报警阈值优化问题
式中,f(x)是错误报警率;P1(e)是误报警率;P2(e)是漏报警率;t是选择的阈值;n是样本点个数;h是KDE的窗宽,由式(2)计算。
数值优化算法的实现步骤如下:
(1)在区间[a,b],构造两点x1=a+q(b-a ),x2=a+(1-q)(b-a ),式中,q和(1-q)分别是算法的两个系数一般取q=0.382;
(2)若F(x1)<F(x2),则搜索区间缩小为[a,x2], b=x2,判断是否成立,如果成立转到步骤(4),否则返回步骤(1);
(3)若F(x1)≥F(x2),则搜索区间缩小为[x1,b], a=x1,判断是否成立,如果成立转到步骤(4),否则返回步骤(1);
然而,数值优化算法的系数q和(1-q)是人为设置的,并不能保证算法寻优结果接近全局最优。因此,本文采用粒子群(Particle Swarm Optimization, PSO)算法对系数q进行优化,使寻优结果接近全局最优。
1.3 粒子群算法
粒子群(PSO)算法最早在1995年被提出,是一种从生物活动中得到启发而模拟自然界生物集群现象的进化算法。在PSO算法中,每个优化问题的潜在解都称为“粒子”,所有的粒子都有一个由被优化的函数决定的适应值(Fitness Value),每个粒子还有一个速度决定它们移动的方向和每一步的位移。然后粒子们就追随当前的最优粒子在解空间中搜索。PSO算法需要初始化一群随机粒子(随机解),然后通过迭代找到最优解,在每一次迭代中,粒子通过跟踪两个“极值”来更新自己。第一个就是粒子本身所找到的最优解,这个解称为个体极值。另一个是整个种群目前找到的最优解,这个解称为全局极值。
假设在一个N维的目标搜索空间中,有m个粒子组成一个群落,将第i个粒子的位置表示为一个N维的向量,记为每一个粒子都是潜在的解,将带入一个目标函数就可以计算出其适应值,根据适应值大小衡量的优劣。第i个粒子的移动速度也是一个N维的向量,记为速度决定粒子在搜索空间单位迭代次数的位移。记第i个粒子迄今为止搜索到的最优位置为整个粒子群迄今为止搜索到的最优位置为粒子根据以下公式来更新其速度和位置
式中,i=1,2,…,m ;n=1,2,…,N;速度权重w随机取值于[-1,1];学习因子c1和c2是非负常数;r1和r2是介于[0,1]之间的随机数;vin是第i个粒子速度向量的第n维是常数,根据实际情况设定。
迭代终止条件一般选为最大迭代次数或粒子群迄今为止搜索到的最优化位置满足适应阈值。因为是整个粒子群的最优值,因此上述PSO算法也称为全局PSO算法。
针对传统阈值优化方法仅考虑误报警,并没有综合考虑误报警和漏报警从而造成大量漏报的问题,提出自适应综合指标报警阈值优化方法。综合考虑误报警和漏报警两个方面建立目标函数,并用数值优化算法内嵌入PSO算法形成新的算法对报警阈值寻优,力求达到降低错误报警次数的目的,从而减轻现场操作人员的工作压力。自适应综合指标报警阈值优化方法的工作流程如图2所示,具体步骤如下:
步骤1:选择化工过程某参数的正常样本X∈R1×NS和故障样本Y∈R1×NS。其中,NS是样本点个数,根据实际情况选取;
步骤2:绘制概率密度曲线,设置解区间。基于数据样本X和Y,利用式(1)和(2)分别估算过程参数正常条件下和故障条件下的概率密度,以其作为纵坐标,样本点作为横坐标,绘制过程参数概率密度曲线,并设置解的区间[a,b]。若求报警阈值上限的区间,a=max(X )-3σ,b=max(X )+3σ;若求报警阈值下限的区间,a=min(X)-3σ,b=min(X)+3σ。式中,σ为正常样本X的标准差;
步骤4:设置PSO算法的参数。粒子速度的惯性权重w随机取值于[-1,1];粒子速度的最大值vmax=0.5;粒子个体最优的学习因子c1=cθ1,其中,c=(2w+2)θ2,θ1和θ2均随机取值于[0,1];粒子群体最优的学习因子c2=c-c1;算法最大迭代次数M=200;种群个体数目m=50;算法精度e=0.000 1。
步骤5:初始化粒子的位置和速度。用系数iq对应的一维向量来标记第i个粒子在一维搜索空间中的位置。第i个粒子的移动速度也是一个一维的向量,记为设置第i个粒子的初始位置粒子的初始速度其中,3θ和4θ均是随机取值于[0,1]的值。此时,记粒子代数1k=。
步骤7:粒子的位置和速度的更新。1kk=+,根据式(5)计算第i个粒子更新后的速度判断当代第i个粒子的速度是否成立:1)若成立,令若不成立,判断是否成立,若成立,令若不成立,根据式(6)计算第i个粒子更新后的位置使得
3.1 TE过程
由伊斯曼公司设计的TE(Tennessee Eastman)过程是一个基于实际工业过程的仿真平台,共包含了反应器、冷凝器、压缩机、分离器和汽提塔等5个操作单元,涉及到12个操作变量和41个测量变量。TE过程的工艺流程图如图3所示,部分测量变量如表1所示。
3.2 阈值监测
以反应堆温度为例,用自适应综合指标的化工过程参数报警阈值优化方法设置变量阈值,进行温度监测。与化工生产中常见的3σ法进行对比,证明该方法能够降低错误报警率,优化报警系统的性能。
3.2.1 自适应综合指标报警阈值优化方法
选择TE过程反应堆温度测量变量作为研究对象,运行过程512时刻,在第256时刻加入干扰,使反应堆冷却水阀粘滞,前256时刻过程为正常状态,后256时刻过程为故障状态。选取反应堆温度前256组数据作为正常训练样本X∈R1×256,后256组数据作为故障训练样本Y∈R1×256。保持同样的操作条件,运行过程256时刻,在第161时刻加入同样的干扰,获得测试样本Z∈R1×256(反应堆温度曲线如图4所示);
根据数据训练样本X和Y,采用式(2)计算得反应堆温度正常数据核密度估计的窗宽h1=0.382 8,反应堆温度故障数据核密度估计的窗宽h2=0.729 9。根据式(2)分别估算反应堆温度正常条件下和故障条件下的概率密度,以其作为纵坐标,样本点作为横坐标,绘制反应堆温度的概率密度曲线(如图5所示)。分别设置阈值上限的取值区间[120.449 2,120.450 8]和阈值下限的取值区间[120.349 2,120.350 8];
其中,F1(x)和F2(x)是错误报警率,t1和t2是选择的阈值,KDE窗宽h1=0.382 8,h2=0.729 9。
运行报警阈值优化算法:
(1)报警阈值上限优化
图2 自适应综合指标报警阈值优化方法步骤Fig. 2 Steps of the adaptive composite-indicator alarm threshold optimization method
图3 TE工艺流程图Fig. 3 Flowchart of the tennessee eastman process
表1 部分TE过程测量变量表Table 1 Part of TE process measured variables
设置PSO的参数:粒子速度的惯性权重w=0.909 6,粒子速度的最大值vmax=0.5,粒子个体最优的学习因子c1=0.562 3,粒子群体最优的学习因子c2=0.561 9,算法最大迭代次数M=200,种群个体数目m=50,算法精度e=0.000 1。
调用阈值优化算法进行迭代计算,算法共运行5次,输出最优报警阈值上限t1=120.450 3,最优数值优化算法参数q1=0.005 6,适应度G(q1)=0.001 0。
(2)报警阈值下限优化
设置PSO的参数:粒子速度的惯性权重w=-0.341 0,粒子速度的最大值vmax=0.5,粒子个体最优的学习因子c1=0.022 0,粒子群体最优的学习因子c2=0.380 5,算法最大迭代次数M=200,种群个体数目m=50,算法精度e=0.000 1。
图4 反应堆温度曲线Fig. 4 Reactor temperature curve
图5 反应堆温度的概率密度曲线Fig. 5 The probability density curve of reactor temperature
调用阈值优化算法进行迭代计算,算法共运行6次,输出最优报警阈值下限t2=120.350 3,最优数值优化算法参数q2= 0.010 1,适应度G(q2)= 0.001 0。
用最优的报警阈值[120.350 3,120.450 3]对反应堆温度测试数据Z进行监测,监测结果如图6所示
图6 自适应综合指标法监测结果Fig. 6 Monitoring results of the adaptive comprehensive-index method
3.2.2 3σ法
计算反应堆温度正常样本X均值µ=120.400 4,标准差σ=3.533 3e-3。由3σ法求得报警阈值[µ-3σ,µ+3ς]=[120.390 0,120.411 2],并用该阈值对测试数据Z进行监测,监测结果如图7所示。
3.3 结果对比
自适应综合指标报警阈值优化方法与3σ法的误报警和漏报警情况对比如下:
由表2可知,与3σ法相比,自适应综合指标报警阈值优化方法所设阈值误报警率降低了51.95%,漏报警率仅为0.78%,接近于0,误报警和漏报警次数之和减少131次,证明该方法可以有效减少误报警次数,提高报警系统性能,减少操作人员工作压力。
(1)传统的化工过程参数报警阈值设置方法一般只考虑误报警,并没有同时考虑误报警和漏报警这两个问题,导致报警系统产生大量的错误报警。针对这个问题,提出自适应综合指标的报警阈值优化方法。该方法采用核密度估计方法、基于历史数据对过程报警状态进行估计,综合误报警率和漏报警率,从而建立优化报警阈值的目标函数,并创新地将数值优化算法内嵌于粒子群算法形成新的算法进行求解。
(2)案例分析中,将新方法应用于TE过程的反应堆温度监测,分别优化报警阈值上下限,并进行阈值监测。
图7 3σ法监测结果Fig. 7 Monitoring results of the 3σ method
表2 TE过程反应堆温度监测的误报次数和漏报次数Table 2 The number of false positives and false negatives of TE process reactor temperature monitoring
(3)自适应综合指标报警阈值优化方法所求的报警阈值监测误报率为0,漏报率为0.78%。与传统的3σ法相比,此方法能够在保证低漏报率的条件下有效降低误报警率,提高化工过程报警系统的性能,减轻现场操作人员的工作压力,减少人员生命财产损失。
[1]WIT J D.EEMUA recommendations for the design and construction of refrigerated liquefed gas storage tanks[J].Cryogenics, 1998, 28(12):800-804.
[2]FOONG O M, SUZIAH, ROHAYA D, et al. ALAP: Alarm prioritization system for oil refnery[J].Proceedings of the World Congresson Engineering and Computer Science, 2009, (2):1012-1017.
[3]CHAO C S, LIU A C. An alarm management framework for automated network fault identifcation[J].Computer Communications, 2004, 27(13):1341-1353.
[4]EBERHART R C, KENNEDY J.A new optimizer using particle swarm theory[C]. Sixth International Symposium on Micro and Human Science, 4-6 Oct.1995, (2): 39-43.
[5]JIANG R. Optimization of alarm threshold and sequential inspection scheme[J].Reliability Engineering and System Safety, 2010, 95:208-215.
[6]CHEN T. On reducing false alarms in multivariate statistical process control[J].Chemical Engineering Research and Design, 2010, 88(4): 430-436.
[7]MEZACHE A, SOLTANI F.A novel threshold optimization of ML-CFAR detector in Weibull clutter using fuzzy-neural networks[J]. Signal Processing, 2007, 87:2100-2110.
[8]MARTIN E B, MORRIS A J. Non-parametric confdence bounds for process performance monitoring charts[J].Process Control, 1996, 6(6):349-358.
A study of adaptive composite-indicator alarm threshold optimization of chemical process parameters
LUO Jing, HU Jinqiu
School of Mechanical & Storage and Transportation Engineering, China University of Petroleum-Beijing, Beijing 102249, China
Faced with increasingly complex chemical process plants, improving the performance of chemical process alarm systems is important. The traditional chemical process parameters alarm threshold setting method generally considers only false positives, but not taking both false positives and false negatives into account, leading to a lot of false alarms in alarm systems. To solve these problems, we used the alarm threshold optimization method based on an adaptive composite indicator. We used the kernel density estimation method to estimate the state of the process alarm based on historical data, integrating the false positives rate and false negatives rate to establish an objective function for optimal alarm thresholds. The numerical optimization algorithm was embedded in a particle swarm optimization algorithm, forming a new algorithm to solve the function. In case, this method was applied to the TE process. The results showed a false positive rate of 0, and a false negative rate of 0.78%. Compared with the traditional 3σ method, this method can effectively reduce the rate of false positives with a low false negative rate, and improve the performance of the chemical process alarm system. This will reduce stress on site operators, as well as the risks of loss of life and property.
adaptive; composite-indicator; false positives; false negatives; kernel density estimation; particle swarm optimization algorithm
2016-11-15
10.3969/j.issn.2096-1693.2016.03.036
(编辑 付娟娟)
罗静, 胡瑾秋. 自适应综合指标的化工过程参数报警阈值优化方法研究. 石油科学通报, 2016, 03: 407-416
LUO Jing, HU Jinqiu. A study of adaptive composite-indicator alarm threshold optimization of chemical process parameters. Petroleum Science Bulletin, 2016, 03: 407-416. doi: 10.3969/j.issn.2096-1693.2016.03.036
*通信作者, hujq@cup.edu.cn