Distributed Operating Performance Assessment of Dynamic Industrial Processes Based on Slow Feature Analysis
-
摘要: 现代工业过程通常具有规模大、流程长和工序多的特点, 导致传统的集中式建模方法会淹没过程的局部变化信息, 从而无法及时识别早期的非优运行状态. 此外, 闭环控制的广泛应用使得过程变量普遍存在时序相关性. 针对以上问题, 提出一种基于慢特征分析(Slow feature analysis, SFA)的分布式动态工业过程运行状态评价方法. 首先, 结合动态时间规整(Dynamic time warping, DTW)和K-medoids聚类算法对过程进行分解; 然后, 对每一变量子块建立相应的动态慢特征分析(Dynamic slow feature analysis, DSFA)模型; 最后, 利用贝叶斯推理获得全局的综合评价指标. 通过在数值案例和金湿法冶金过程的仿真应用, 验证了该方法的有效性.
-
关键词:
- 分布式模型 /
- 运行状态评价 /
- 慢特征分析 /
- 动态时间规整 /
- K-medoids聚类
Abstract: The modern industrial processes are generally characterized by large scale, long processes and multiple procedures. In this case, the traditional centralized model may submerge the local change information of the processes, thus failing to identify the early non-optimal operation status in time. In addition, the wide application of closed-loop control brings the universal existence of temporal correlations of process variables. In view of the above problem, a distributed operating performance assessment scheme of dynamic industrial processes based on slow feature analysis (SFA) is proposed. First, the process decomposition is realized by combining dynamic time warping (DTW) and K-medoids clustering algorithms. Second, the corresponding dynamic slow feature analysis (DSFA) model is established for each sub-block. Finally, the overall comprehensive assessment index is obtained through Bayesian inference. The effectiveness of the scheme is verified by numerical examples and gold hydrometallurgy process. -
随着科技水平的快速发展, 企业对生产过程的精细化管理提出了更高要求. 如何在保证生产安全和产品质量的前提下进一步提高综合经济指标, 成为企业在当今激烈竞争的市场环境中存活的关键. 为实现上述目标, 企业不仅要求生产过程处于正常的状态, 还渴望追求过程运行在优状态[1]. 在企业投产初期, 工程师会利用过程知识和优化技术, 使得过程处于优运行状态. 但是, 由于外部扰动、过程参数的漂移和现场人员的不当操作等原因, 过程会逐渐偏离最初设定的优运行区域[2]. 如果不能及时地检测出过程运行性能的退化, 轻则降低企业的经济效益, 重则演化为故障, 威胁企业生产人员的安全. 为了应对以上问题, 过程运行状态评价和过程监测技术应运而生. 运行状态评价是评估工业过程运行状态优劣等级的方法, 其隶属于广义上的过程监测范畴, 但在实现目标方面又有显著不同[3]. 具体而言, 与传统过程监测技术仅将过程划分为正常与故障两种状态相比, 运行状态评价方法进一步将正常运行的生产过程细分为多个性能等级(例如优和非优). 运行状态评价可以看作是能够满足更高企业要求的扩展型过程监测方法. 因此, 研究及时、准确和全面的工业过程运行状态评价方法, 对保障企业生产安全和提高企业综合经济指标, 具有重要的理论价值和实际意义.
在过去的20年中, 运行状态评价获得了学术界和工业界的广泛关注. 为了处理工业过程的多模态特性, Ye等[4]采用高斯混合模型识别过程所处的模态, 并开发了一种将优性评价指标划分为不同等级的分类方法. 考虑到并非所有过程变量都会显著地影响过程的运行状态, Fan等[5]首先采用皮尔逊相关系数选出与评价指标高度相关的变量, 然后利用最小二乘支持向量机模型实现过程运行状态的划分. 针对新过程训练数据不足问题, Zou等[6]采用交叉域特征迁移算法, 将旧过程的通用信息迁移到新过程中, 从而提高新过程的评价模型的精度. 为了同时评价过程稳定模态和过渡模态的运行状态, Liu等[7]基于综合经济指标制定评价策略, 对稳定模态通过高斯过程回归预测综合经济指标, 对过渡模态采用历史数据库中相似过渡模态的综合经济指标的加权平均值作为当前过渡模态的评价指标. 为了更好地处理过程数据中存在的不确定性信息, Wang等[8]结合特征选择、即时学习和概率主成分回归, 建立评价指标的预测模型, 并通过概率模糊推理将多个评价指标转换为最终的评价结果. 虽然文献[1-8]对过程运行状态评价进行了广泛探索并取得了巨大成就, 但是上述研究成果普遍基于静态模型, 忽略了过程的动态特性. 当过程数据中包含动态信息时, 直接将静态模型应用到动态数据是一种线性静态近似, 并不能准确地揭示变量之间的关系[9]. 在广泛应用闭环控制的工业过程中, 变量的时序相关性是普遍存在的[3]. 为挖掘过程数据的动态特性, 学者们相继提出了典型变量分析、动态独立成分分析、动态主成分分析(Dynamic principal analysis, DPCA)和动态慢特征分析(Dynamic slow feature analysis, DSFA)等方法[9-12]. Sedghi等[13]采用动态主成分回归技术预测过渡模态的综合经济指标, 改善了文献[7]的运行状态评价性能. Zou等[14]将典型变量分析和慢特征分析(Slow feature analysis, SFA)进行分层组合, 提取过程更深层次的特征, 从而更加细致地刻画运行状态的等级. 虽然上述方法[9-14]对一般的动态过程很有效, 但是它们都是集中式模型, 在应用于规模较大的工业过程时, 很可能会因为忽略了过程的局部信息而降低模型评价非优状态的灵敏性. 需要注意的是, 上述基于分类[4-6]或回归技术[7-8, 13]运行状态评价方法的应用前提是能获得足够多优状态和非优状态的训练数据. 但在实际生产过程中, 任意一个或多个变量发生不同程度的偏移都有可能导致过程处于非优状态. 由于经济和技术条件限制, 在企业投产初期, 几乎不可能获得所有非优状态的完整数据集. 针对非优状态模式多样但可获得的非优状态数据量相对较少的情况, 用于表示优运行区域的闭合决策边界往往会比表示优与非优状态的分隔决策边界更具可靠性. 以多元统计分析技术[15]和一类分类技术[16]为代表的数据描述方法为上述情况提供了很好的解决方案.
针对现代工业过程规模大、流程长和工序多的特点[17], 分布式模型得到了越来越多学者们的关注. 分布式建模策略是经过过程分解、子模型建立和子模型结果融合而得到, 因而更适用于规模较大的工业过程[18]. Liu等[19]提出一种基于全潜结构投影模型的分布式运行状态评价方法. 为了应对工业过程大数据问题, Zhu等[20]基于MapReduce框架, 设计一种分布式并行主成分分析方法. 考虑到字典学习能够有效减少高维数据的计算和存储负担, Huang等[21]提出一种基于字典学习的分布式过程监测方法. 然而, 上述方法[18-21]均根据过程拓扑或机理知识实现过程的分解, 有可能无法将过程变量划分为概念上有意义的重叠或不相交的子块[22]. 此外, 当面对大规模和高复杂度的工业过程时, 很难保证过程知识的完备性. 为了解决这个问题, 近年来涌现出一些数据驱动的过程分解方法[23], 即根据过程变量的统计特性将其划分为多个子块. Ge等[24]根据主成分的不同投影方向构造子块, 将原始特征空间自动地划分为若干个子特征空间. 为了处理过程的非线性, Jiang等[25]利用互信息将相似性高的变量划分为同一子块, 并对每一子块建立核主成分分析模型, 从而有效地挖掘出过程数据中的非线性信息和局部信息. 显然, 以上过程分解方法[18-21, 24-25]并未充分利用过程的动态信息. 为了解决该问题, Tong等[22]基于皮尔逊相关系数, 提出一种动态特征选择方法, 但其子块个数等于过程变量数, 这在一定程度上过度强调过程的局部信息, 很可能会导致模型的误报率升高. Zhong等[26]在文献[22]基础上, 采用最小冗余最大相关性(Minimal redundancy maximal relevance, mRMR)实现过程的分解, 但mRMR本质上是一种非线性特征选择方法, 并不能充分利用过程数据的动态信息.
以上分析表明, 充分利用动态信息的过程分解方法还需要进一步研究. 此外, 过程分解方法需要与相应的子模型的建模原理密切相关, 才有可能显著地提高分布式评价模型的性能. 以此为动机, 本文提出一种分布式动态过程运行状态评价方法. 首先, 结合动态时间规整(Dynamic time warping, DT-W)[27]和K-medoids聚类算法[28], 实现过程子块的划分; 然后, 针对每一变量子块建立相应的DSFA模型; 最后, 利用贝叶斯推理获得全局的综合评价指标, 从而实现大规模工业过程的运行状态评价. 为方便后续阐述, 将本文方法命名为分布式动态慢特征分析(Distributed dynamic slow feature analysis, DDSFA). 本文工作的主要贡献如下: 1)结合动态时间规整和K-medoids聚类算法对过程进行分解, 将波形相近的过程变量划分到相同的子块, 提高了DSFA算法对过程动/静态信息的表征能力; 2)与传统动态模型为所有变量选择单一时滞系数不同的是, 本文设计一种新颖的时滞系数确定方法, 使得不同子块可以具有不同的时滞系数, 增加了子模型的多样性.
1. 预备知识
1.1 动态时间规整
动态时间规整是一种常用的度量2个时间序列相似度方法, 主要是形状相似度[27]. 通过对2个时间序列进行拉伸或压缩, 尽可能地消除序列在时间轴上的扭曲, 从而找到序列间相似度最大的匹配路径. 给定如下2个时间序列:
$$ \begin{equation} {\boldsymbol{a}} = {\left[ {{a_1},{a_2}, \cdots ,{a_I}} \right]^{\rm{T}}} \end{equation} $$ (1) $$ \begin{equation} {\boldsymbol{b}} = {\left[ {{b_1},{b_2}, \cdots ,{b_J}} \right]^{\rm{T}}} \end{equation} $$ (2) 式中, $ I $和$ J $为2个时间序列的长度. 需要注意的是, 2个时间序列的长度可以是不相等的, 但2个序列中元素的维度必须相同. 为了便于理解, 以下仅考虑一维时间序列. DTW的目标是寻找一个规整路径$ {\boldsymbol{F}} = {\left[ {{{f}_1},{{f}_2}, \cdots ,{{f}_K}} \right]} $, 使得序列$ {\boldsymbol{a}} $和$ {\boldsymbol{b}} $的累积距离最小, 其中$ {{{f}}_k} = \left( {{i_k},{j_k}} \right) $表示序列$ {\boldsymbol{a}} $的第$ {i_k} $个元素与序列$ {\boldsymbol{b}} $的第$ {j_k} $个元素相匹配. 通常采用欧氏距离的平方来度量2个序列元素间的差异, 即:
$$ \begin{equation} {d_k} = {\left( {{a_{{i_k}}} - {b_{{i_k}}}} \right)^2} \end{equation} $$ (3) DTW的优化目标函数可表示为:
$$ \begin{equation} d\left( {{\boldsymbol{a}},{\boldsymbol{b}}} \right) = \frac{1}{N}\mathop {\rm{min}}\limits_{{\boldsymbol{F}}} \left[ {\sum\limits_{k = 1}^K {{d_k} w\left( k \right)} } \right] \end{equation} $$ (4) 式中, $ N = \sum\nolimits_{k = 1}^K {w\left( k \right)} $表示归一化系数, $ w\left( k \right) $是一个非负的权重系数, 其作用是增强模型的灵活性. 一般地, $ w\left( k \right) = {i_k} - {i_{k - 1}} + {j_k} - {j_{k - 1}} $.
为了尽可能保留序列在时间轴上的本质结构并确保能够找到最优匹配路径, 在寻找规整路径过程中, 还需满足以下约束条件:
1)单调连续性条件. 单调连续性条件是为了保证所获得的规整路径没有跳过任何元素, 也没有出现交叉情况:
$$ \begin{equation} {{f}_k} - {{f}_{k - 1}} \in \left\{ {\left( {1,0} \right),\left( {0,1} \right),\left( {1,1} \right)} \right\} \end{equation} $$ (5) 2)边界条件. 在规整路径${\boldsymbol{F}}$中, 2个序列的开始和结束元素必须相互匹配:
$$ \begin{equation} {{f}_1} = \left( {1,1} \right), {{f}_K} = \left( {I,J} \right) \end{equation} $$ (6) 3)窗口调整条件. 增加调整窗口长度条件, 一是考虑到2个时间序列在时间轴上的扭曲通常不会太大, 二是为了缩短路径搜索的时间:
$$ \begin{equation} \left| {{i_k} - {j_k}} \right| \le h \end{equation} $$ (7) 由式(4) ~ (7)定义的优化问题可以采用动态规划算法获得最优解. $ d\left( {{\boldsymbol{a}},{\boldsymbol{b}}} \right) $取值越小, 代表序列$ {\boldsymbol{a}} $和$ {\boldsymbol{b}} $的相似度越大; 反之亦然.
1.2 慢特征分析
慢特征分析是一种常用的降维技术, 其前提假设是变化缓慢的特征比变化快速的特征更能代表数据核心信息[12]. 该观点已被证实与生物视觉特性一致[29]. SFA的优化目标是寻找一个映射函数使得转换后的特征的变化尽可能慢. 假设存在一个$ m $维的输入信号${\boldsymbol{x}}\left( t \right) = [ {x_1}(t), {x_2}(t), \cdots ,{x_m}(t) ]^{\rm{T}}$, 在线性情况下, 慢特征$ {\boldsymbol{s}}\left( t \right) $可表示为:
$$ \begin{equation} {\boldsymbol{s}}\left( t \right) = {\boldsymbol{Wx}}\left( t \right) \end{equation} $$ (8) SFA的优化目标函数定义如下:
$$ \begin{aligned}[b] \mathop {\min}\limits_{{{\boldsymbol{w}}_j}}\;&{\left\langle {\dot{\boldsymbol{s}}_j^2} \right\rangle _t}&&{} \\ {{\rm{s}}.{\rm{t}}.}\; \; &{\left\langle {{\boldsymbol{s}_j}} \right\rangle _t} = 0 && \text{(零均值)} \\ & {\left\langle {\boldsymbol{s}_j^2} \right\rangle _t} = 1 &&\text{(单位方差)} \\ & {\left\langle {{\boldsymbol{s}_i}{\boldsymbol{s}_j^{\rm{T}}}} \right\rangle _t} = 0, i \ne j && \text{(去相关)} \end{aligned} $$ (9) 式中, $ {\left\langle \cdot \right\rangle _t} $表示时间平均运算符, $ \dot{\boldsymbol{s}}_j $为慢特征$ {\boldsymbol{s}}_j $对时间的一阶导数. 需要注意的是, 每个慢特征$ {\boldsymbol{s}_j} $都被约束为零均值和单位方差, 从而避免常数解. 此外, 不同慢特征之间的去相关, 使得不同慢特征所携带的信息不同.
式(8)的转换矩阵$ {\boldsymbol{W}} $可通过2次奇异值分解获得. 对协方差矩阵$ {\left\langle {{\boldsymbol{x}}{{\boldsymbol{x}}^{\rm{T}}}} \right\rangle _t} $进行奇异值分解$ {\left\langle {{\boldsymbol{x}}{{\boldsymbol{x}}^{\rm{T}}}} \right\rangle _t} = {\boldsymbol{U}}{\boldsymbol{\Lambda}}{{\boldsymbol{U}}^{\rm{T}}} $. 白化转换后的输入信号可表示为:
$$ \begin{equation} {\boldsymbol{z}} = {{\boldsymbol{\Lambda }}^{ - \frac{1}{2}}}{{\boldsymbol{U}}^{\rm{T}}}{\boldsymbol{x}} = {\boldsymbol{Qx}} \end{equation} $$ (10) 式中, $ {\boldsymbol{\Lambda }} $是一个对角矩阵, 对角线元素为协方差矩阵$ {\left\langle {{\boldsymbol{x}}{{\boldsymbol{x}}^{\rm{T}}}} \right\rangle _t} $的奇异值, $ {\boldsymbol{U}} $的每列表示协方差矩阵$ {\left\langle {{\boldsymbol{x}}{{\boldsymbol{x}}^{\rm{T}}}} \right\rangle _t} $的奇异向量, $ {\boldsymbol{Q}} $是白化矩阵. 显然, $ {\left\langle {{\boldsymbol{z}}{{\boldsymbol{z}}^{\rm{T}}}} \right\rangle _t} = {\boldsymbol{Q}}{\left\langle {{\boldsymbol{x}}{{\boldsymbol{x}}^{\rm{T}}}} \right\rangle _t}{\boldsymbol{Q}} = {\bf{1}} $. 因而, 慢特征分析的目标可等价为寻找一个转换矩阵$ {\boldsymbol{P}} = {\boldsymbol{W}}{{\boldsymbol{Q}}^{ - 1}} $, 使得$ {\boldsymbol{s}} = {\boldsymbol{P}}{\boldsymbol{z}} $, 即:
$$ \begin{equation} {\boldsymbol{s}} = {\boldsymbol{Wx}} = {\boldsymbol{W}}{{\boldsymbol{Q}}^{ - 1}}{\boldsymbol{z}} = {\boldsymbol{Pz}} \end{equation} $$ (11) 由式(9)的约束条件, 可得:
$$ \begin{equation} {\left\langle {{\boldsymbol{s}}{{\boldsymbol{s}}^{\rm{T}}}} \right\rangle _t} = {\bf{1}} \end{equation} $$ (12) 由式(11)、式(12), 可得:
$$ \begin{equation} {\left\langle {{\boldsymbol{s}}{{\boldsymbol{s}}^{\rm{T}}}} \right\rangle _t} = {\boldsymbol{P}}{\left\langle {{\boldsymbol{z}}{{\boldsymbol{z}}^{\rm{T}}}} \right\rangle _t}{{\boldsymbol{P}}^{\rm{T}}} = {\boldsymbol{P}}{{\boldsymbol{P}}^{\rm{T}}} = {\bf{1}} \end{equation} $$ (13) 综合以上分析, SFA的优化目标可以简化为寻找一个单位正交矩阵$ {\boldsymbol{P}} $, 使得$ {\left\langle {\dot{\boldsymbol{s}}_j^2} \right\rangle _t} $取值最小. 上述目标可通过对协方差矩阵$ {\left\langle {{\dot {\boldsymbol{z}}}{{{\dot {\boldsymbol{z}}}}^{\rm{T}}}} \right\rangle _t} $进行奇异值分解获得, 即$ {\left\langle {{\dot {\boldsymbol{z}}}{{{\dot {\boldsymbol{z}}}}^{\rm{T}}}} \right\rangle _t} = {\boldsymbol{P}}{\boldsymbol{\Omega}} {{\boldsymbol{P}}^{\rm{T}}} $. 其中${\boldsymbol{\Omega }} = {\rm{diag}}\{ {\lambda _1}, {\lambda _2}, \cdots ,{\lambda _m} \}$. 因为$ {\left\langle {\dot{\boldsymbol{s}}_j^2} \right\rangle _t} = {\boldsymbol{p}}_j^{\rm{T}}{\left\langle {{{\dot {\boldsymbol{z}}}}{{{{\dot {\boldsymbol{z}}}}}^{\rm{T}}}} \right\rangle _t}{{\boldsymbol{p}}_j} = {\lambda _j} $, 所以$ {\boldsymbol{\Omega }} $的对角线元素取值越小, 表示对应慢特征变化越慢. 通过2次奇异值分解获得矩阵$ {\boldsymbol{Q}} $和$ {\boldsymbol{P}} $, 则式(9)的全局最优解为:
$$ \begin{equation} {\boldsymbol{W}} = {\boldsymbol{PQ}} = {\boldsymbol{P}}{{\boldsymbol{\Lambda }}^{ - \frac{1}{2}}}{{\boldsymbol{U}}^{\rm{T}}} \end{equation} $$ (14) 与DPCA类似, 可以直接将上述SFA算法应用于原始输入变量的时滞拓展矩阵, 来获得其动态版本DSFA. 时滞拓展矩阵进一步考虑了每个变量的$ l $个滞后采样时刻, 并按如下方式进行叠加[11]:
$$ \begin{equation} {\boldsymbol{X}}\left ( l \right ) = \begin{bmatrix} {\boldsymbol{x}}\left ( t \right ) &\cdots &{\boldsymbol{x}}\left ( t + N-1 \right ) \\ \vdots &\ddots &\vdots \\ {\boldsymbol{x}}\left (t-l \right ) &\cdots &{\boldsymbol{x}}\left ( t+N-l-1 \right ) \end{bmatrix} \end{equation} $$ (15) 2. 分布式运行状态评价方案
通过对DTW和DSFA方法的分析表明, DSFA算法的目标是从过程数据中提取出具有较小变化速度的潜变量, 即潜变量波动尽可能平缓. 显然, 潜变量变化速度与其自身波形相关. 反向思考, 波形相近的过程变量很可能是由相同潜变量所驱动的. 因而, 如果将波形相近的过程变量划分到相同变量子块, 则有望提高所提取潜变量的准确性. 考虑到, DTW算法尽可能消除了2个序列间在时间轴上的扭曲, 是度量2个时间序列波形相似性的常用方法. 因此, 本节创新性地将DTW和DSFA进行组合, 设计一种分布式运行状态评价方案, 主要步骤包括基于DTW和K-medoids聚类算法的过程分解、基于DSFA的运行评价子模型的建立和基于贝叶斯推理的子块评价结果融合.
2.1 基于DTW和K-medoids聚类算法的过程分解
传统的静态过程分解算法通常假定训练集中样本是独立同分布的. 然而, 工业过程的动态特性会导致过程变量存在时序相关性(即自相关和互相关)[30]. 现有过程分解算法较少考虑过程的动态特性, 因此还需要进一步研究利用过程数据动态信息的过程分解算法. 给定一个标准化的过程运行在优状态的训练集${\boldsymbol{X}} = {\left[ {{{\boldsymbol{x}}_1},{{\boldsymbol{x}}_2}, \cdots ,{{\boldsymbol{x}}_m}} \right]^{\rm{T}}}\in {{\bf R} ^{m \times n}}$, 其中$ {{\boldsymbol{x}}_i}\in {{\bf R} ^{1 \times n}} $. $ m $和$ n $分别代表变量数和样本数, 则过程变量间的DTW距离矩阵$ {\boldsymbol{D}} \in {{\bf{R}} ^{m \times m}} $可构造为:
$$ \begin{equation} {\boldsymbol{D}} = \left[ {\begin{array}{*{20}{c}} {d\left( {{{\boldsymbol{x}}_1},{{\boldsymbol{x}}_1}} \right)}&{d\left( {{{\boldsymbol{x}}_1},{{\boldsymbol{x}}_2}} \right)}& \cdots &{d\left( {{{\boldsymbol{x}}_1},{{\boldsymbol{x}}_m}} \right)}\\ {d\left( {{{\boldsymbol{x}}_2},{{\boldsymbol{x}}_1}} \right)}&{d\left( {{{\boldsymbol{x}}_2},{{\boldsymbol{x}}_2}} \right)}& \cdots &{d\left( {{{\boldsymbol{x}}_2},{{\boldsymbol{x}}_m}} \right)}\\ \vdots & \vdots & \ddots & \vdots \\ {d\left( {{{\boldsymbol{x}}_m},{{\boldsymbol{x}}_1}} \right)}&{d\left( {{{\boldsymbol{x}}_m},{{\boldsymbol{x}}_2}} \right)}& \cdots &{d\left( {{{\boldsymbol{x}}_m},{{\boldsymbol{x}}_m}} \right)} \end{array}} \right] \end{equation} $$ (16) 式中, ${D_{ij}} =d\left( {{{\boldsymbol{x}}_i},{{\boldsymbol{x}}_j}} \right)$, 表示变量$ {\boldsymbol{x}}_i $和$ {\boldsymbol{x}}_j $的DTW距离. 考虑到, K-medoids选取的质心是真实存在的过程变量, 能有效避免虚拟质心对簇内过程变量间波形相似度的影响. 基于距离矩阵$ {\boldsymbol{D}} $, 本文采用K-medoids聚类算法, 将过程变量划分为$G\;( G < m)$个子块. 具体过程如下:
1)从过程变量$ {{\boldsymbol{x}}_1},{{\boldsymbol{x}}_2}, \cdots ,{{\boldsymbol{x}}_m} $中随机选出$ G $个变量作为簇的中心$ {{\boldsymbol{O}}_1},{{\boldsymbol{O}}_2}, \cdots ,{{\boldsymbol{O}}_G} $.
2)重复下面过程直到算法收敛.
a)确定变量的所属簇$ C = \left\{ {{C_1},{C_2}, \cdots ,{C_G}} \right\} $. 通过式(17), 将每个变量分配到与簇中心的DTW距离最小的簇:
$$ \begin{equation} {C_g} = \left\{ {\left. {{{\boldsymbol{x}}_i}} \right|{D_{ig}} \le {D_{i\lambda }},\lambda \in \left\{ {1,2, \cdots ,G} \right\}} \right\} \end{equation} $$ (17) b)更新簇的中心. 确定所有变量所属的簇后, 通过式(18)重新选择每个簇的中心. 其中$ {\rm{card}}(\cdot) $是计算集合元素个数的运算符:
$$ \begin{equation} {{\boldsymbol{O}}_g} = {\rm{arg}}\mathop {\rm{min}}\limits_{{{\boldsymbol{x}}_u} \in {C_g}} \frac{1}{{{\rm{card}}}(C_g)}\sum\limits_{{{\boldsymbol{x}}_v} \in {C_g}} {{D_{uv}}} \end{equation} $$ (18) 2.2 基于DSFA的运行状态评价子模型的建立
第2.1节已将过程变量划分为$ G $个子块$ {\boldsymbol{X}} = \left[ {{{\boldsymbol{X}}_1},{{\boldsymbol{X}}_2}, \cdots ,{{\boldsymbol{X}}_G}} \right]^{\rm{T}} $, 针对每个子块$ {{\boldsymbol{X}}_g}\in {{\bf{R}} ^{{m_g} \times n}} $, 建立其对应的DSFA模型. 动态建模方法的关键步骤是时滞系数$ l $的确定. 大部分现有的动态建模方法都为所有变量选择了相同的时滞系数. 然而, 这种做法一方面, 人为增大了建模数据的维度[31], 从而导致模型的计算复杂度增大; 另一方面, 规模较大的工业过程通常包含多个子工序, 每个子工序都具有不同的运行机制和控制策略, 因此, 过程变量一般不太可能都具有相同的时滞结构[32]. 综合以上考虑, 本文提出一种针对每个子块变量特性时滞系数$ l_g $的确定方法. 由第2.1节可知, DTW的目标是寻找使得序列间相似度最大的匹配路径. 因而, 在获得变量间的DTW距离时, 还同时获得了变量间的最佳匹配路径. 具体地, 假设同一子块内变量$ {{\boldsymbol{x}}_i} $和$ {{\boldsymbol{x}}_j} $的最佳匹配路径为$ {{\boldsymbol{F}}_{ij}} = \left[ {{{{f}}_1},{{{f}}_2}, \cdots ,{{{f}}_K}} \right] $, 其中$ {{{f}}_k} = \left( {{i_k},{j_k}} \right) $表示变量$ {{\boldsymbol{x}}_i} \in {{\boldsymbol{X}}_g} $的第$ {i_k} $个元素与变量$ {{\boldsymbol{x}}_j} \in {{\boldsymbol{X}}_g} $的第$ {j_k} $个元素相匹配. 在实际工业过程中, 过程数据通常是由等间隔采样获得. 此外, 训练集中不同变量的样本数相同. 综合以上分析, 变量$ {{\boldsymbol{x}}_i} $和$ {{\boldsymbol{x}}_j} $是等长的时间序列. 因而, 其时滞系数可以粗略估计为$ \left| {{i_k} - {j_k}} \right| $. 但由于过程噪声的影响, 而且在实际过程中, 高度相似的变量相对较少. 因而, 仅依靠最佳匹配路径$ {{\boldsymbol{F}}_{ij}} $中的一个元素确定2个变量的时滞系数是不可靠的. 鉴于此, 本文提出一种更具一般性的时滞系数确定方法:
$$ \begin{equation} {l_g} = {\rm{max}}\left\{ {{l_h}\left| {{l_h} = } \right.{\rm{mode}}\left\{ {\left| {\Delta {{\boldsymbol{F}}_{ij}}} \right|} \right\},i \ne j} \right\} + \delta \end{equation} $$ (19) 式中, ${\rm{mode}}\{ \cdot \}$表示取众数运算符, $\left| {\Delta {{\boldsymbol{F}}_{ij}}} \right| = \{ | {i_k} - {j_k} || {\left( {{i_k},{j_k}} \right) \in {{\boldsymbol{F}}_{ij}}} \}$, $ \delta $是一个非负整数. 增加$ \delta $项, 一方面, 是为了更全面地提取过程数据蕴含的动/静态信息; 另一方面, 是为了便于在实际应用中对式(19)进行细调.
通过式(19)确定每一子块的时滞系数$ {l_g} $后, 依据式(15)获得对应子块$ {{\boldsymbol{X}}_g} \in {{\bf R}^{{m_g} \times n}} $的时滞拓展矩阵$ {{\boldsymbol{X}}_g}\left( {{l_g}} \right) \in {{\bf R} ^{\theta \times N}} $, 其中, $ \theta = {m_g}({l_g} + 1) $. 利用SFA算法提取$ {{\boldsymbol{X}}_g}\left( {{l_g}} \right) $的慢特征, 并根据特征的变化速度将慢特征划分为以下2个部分:
$$ \begin{equation} {{\boldsymbol{s}}_{g,d}} = {{\boldsymbol{W}}_{g,d}}{{\boldsymbol{X}}_g}\left( {{l_g}} \right) \end{equation} $$ (20) $$ \begin{equation} {{\boldsymbol{s}}_{g,e}} = {{\boldsymbol{W}}_{g,e}}{{\boldsymbol{X}}_g}\left( {{l_g}} \right) \end{equation} $$ (21) 式中, $ {{\boldsymbol{s}}_{g,d}} \in {{\bf R} ^{r \times N}} $是变化较慢的特征, 包含了系统的核心信息; $ {{\boldsymbol{s}}_{g,e}} \in {{\bf R} ^{(\theta-r) \times N}} $是变化较快的特征. 通过式(22)的分位数方法确定$ r $值[12]:
$$ \begin{equation} r = \theta-{{\rm{card}}}\left\{ {{{\boldsymbol{s}}_i}\left| {{{\left\langle {{{{\dot{{\boldsymbol{s}}}}_i}}^2} \right\rangle }_t} > {{Q}}_q \left\{ {{{\left\langle {{{{\dot {{\boldsymbol{x}}}}_j}}^2} \right\rangle }_t}\left| {{{\boldsymbol{x}}_j} \in {{\boldsymbol{X}}_g}} \right.} \right\}} \right.} \right\} \end{equation} $$ (22) 式中, ${{Q}}_q \{ {{{\langle {{{{\dot {{\boldsymbol{x}}}}_j}}^2} \rangle }_t}} \}$表示集合$\{ {{{\langle {{{{\dot {{\boldsymbol{x}}}}_j}}^2} \rangle }_t}} \}$的$ q $分位数. 简言之, 主导子空间$ {{\boldsymbol{s}}_{g,d}} $移除了比所有原变量变化速度$ q $分位数大的特征.
为指示主导子空间和剩余子空间中过程稳态分布$ p\left( {\boldsymbol{x}} \right) $的变化, 构造以下2个统计量:
$$ \begin{equation} T_{g,d}^2 = {\boldsymbol{s}}_{g,d}^{\rm{T}}{{\boldsymbol{s}}_{g,d}} \end{equation} $$ (23) $$ \begin{equation} T_{g,e}^2 = {\boldsymbol{s}}_{g,e}^{\rm{T}}{{\boldsymbol{s}}_{g,e}} \end{equation} $$ (24) 相应地, 系统对过程暂态分布$ p\left( {{\dot{\boldsymbol{x}}}} \right) $的变化可通过以下2个统计量指示:
$$ \begin{equation} S_{g,d}^2 = {\dot {\boldsymbol{s}}}_{g,d}^{\rm{T}}{\boldsymbol{\Omega }}_{g,d}^{ - 1}{{\dot{\boldsymbol{s}}}_{g,d}} \end{equation} $$ (25) $$ \begin{equation} S_{g,e}^2 = {\dot {\boldsymbol{s}}}_{g,e}^{\rm{T}}{\boldsymbol{\Omega }}_{g,e}^{ - 1}{{\dot{\boldsymbol{s}}}_{g,e}} \end{equation} $$ (26) 式中, $ {\boldsymbol{\Omega }}_{g,d} $和$ {\boldsymbol{\Omega }}_{g,e} $分别表示$ {\dot {\boldsymbol{s}}}_{g,d} $和$ {\dot {\boldsymbol{s}}}_{g,e} $对应的协方差矩阵.
一般地, 上述4个统计量的控制限 $ T_{g,d,lim}^2 $、$ T_{g,e,lim}^2 $、$ S_{g,d,lim}^2 $和$ S_{g,e,lim}^2 $都通过核密度估计(Ke-nel density estimation, KDE)确定[33].
2.3 基于贝叶斯推理的子块评价结果融合
给定一个标准化的在线样本$ {{\boldsymbol{x}}_{new}} \in {{{\bf R}} ^{m \times 1}} $, 根据本文的过程分解算法, 可以将其划分为$ G $个子块. 每个子块对应的时滞拓展向量可表示为$ {{\boldsymbol{x}}_{new,g}}\left( {{l_g}} \right) \in {{{\bf R}} ^{{m_g}({l_g} + 1) \times 1}} $. 需要注意的是, 为方便后续描述, 本文采用$ {\boldsymbol{x}}_{new,g} $表示其自身的时滞拓展向量. 相应地, $ {\boldsymbol{x}}_{new,g} $所对应的4个统计量可通过下式计算:
$$ \begin{equation} {{T}}_{new,g,d}^2 = {\boldsymbol{x}}_{new,g}^{\rm{T}}{\boldsymbol{W}}_{g,d}^{\rm{T}}{{\boldsymbol{W}}_{g,d}}{{\boldsymbol{x}}_{new,g}} \end{equation} $$ (27) $$ \begin{equation} {{T}}_{new,g,e}^2 = {\boldsymbol{x}}_{new,g}^{\rm{T}}{\boldsymbol{W}}_{g,e}^{\rm{T}}{{\boldsymbol{W}}_{g,e}}{{\boldsymbol{x}}_{new,g}} \end{equation} $$ (28) $$ \begin{equation} S_{new,g,d}^2 = {\dot{\boldsymbol{x}}}_{new,g}^{\rm{T}}{\boldsymbol{W}}_{g,d}^{\rm{T}}{\boldsymbol{\Omega }}_{g,d}^{ - 1}{{\boldsymbol{W}}_{g,d}}{{\dot{\boldsymbol{x}}}_{new,g}} \end{equation} $$ (29) $$ \begin{equation} S_{new,g,e}^2 = {\dot{\boldsymbol{x}}}_{new,g}^{\rm{T}}{\boldsymbol{W}}_{g,e}^{\rm{T}}{\boldsymbol{\Omega }}_{g,e}^{ - 1}{{\boldsymbol{W}}_{g,e}}{{\dot{\boldsymbol{x}}}_{new,g}} \end{equation} $$ (30) 本文采用贝叶斯推理策略[34]融合子块的局部评价结果, 获得全局综合评价指标. 因此, 即使新的非优运行状态所影响的过程变量分布在不同的子块, 也能获得相对较好的评价性能. 具体地, 依据统计量$ T_d^2 $, 在线样本子块$ {{\boldsymbol{x}}_{new,g}} $处于非优状态的后验概率可通过式(31)计算:
$$ \begin{equation} p\left( {nos\left| {{{\boldsymbol{x}}_{new,g}}} \right.} \right) = \frac{{p\left( {{{\boldsymbol{x}}_{new,g}}\left| {nos} \right.} \right)p\left( {nos} \right)}}{{p\left( {{{\boldsymbol{x}}_{new,g}}} \right)}} \end{equation} $$ (31) $$ \begin{split} {p_{T_d^2}}\left( {{{\boldsymbol{x}}_{new,g}}} \right) =\; & {p_{T_d^2}}\left( {{{\boldsymbol{x}}_{new,g}}\left| {os} \right.} \right){p_{T_d^2}}\left( {os} \right)\; + \\ &{p_{T_d^2}}\left( {{{\boldsymbol{x}}_{new,g}}\left| {nos} \right.} \right){p_{T_d^2}}\left( {nos} \right) \end{split} $$ (32) $$ \begin{equation} {p_{T_d^2}}\left( {{{\boldsymbol{x}}_{new,g}}\left| {os} \right.} \right) = {{\rm{e}}^{ - \frac{{T_{new,g,d}^2}}{{T_{g,d,lim}^2}}}} \end{equation} $$ (33) $$ \begin{equation} {p_{T_d^2}}\left( {{{\boldsymbol{x}}_{new,g}}\left| {nos} \right.} \right) = {{\rm{e}}^{ - \frac{{T_{g,d,lim}^2}}{{T_{new,g,d}^2}}}} \end{equation} $$ (34) 式中, $ os $和$ nos $分别表示优运行状态和非优运行状态. $ {p_{T_d^2}}\left( {os} \right) $和$ {p_{T_d^2}}\left( {nos} \right) $是过程处于优运行状态和非优运行状态的先验概率, 可分别赋值为$ 1 - \alpha $和$ \alpha $. 一般地, $ \alpha $取值为0.01或0.05[34].
根据贝叶斯推理融合每个子块的评价结果, 全局$ T_d^2 $统计量可计算为:
$$ \begin{split} &{BIC_{T_d^2}}\left( {{{\boldsymbol{x}}_{new}}} \right) \;= \\ &\quad \sum\limits_{g = 1}^G {\left\{ {\frac{{{p_{T_d^2}}\left( {{{\boldsymbol{x}}_{new,g}}\left| {nos} \right.} \right){p_{T_d^2}}\left( {nos\left| {{{\boldsymbol{x}}_{new,g}}} \right.} \right)}}{{\displaystyle\sum\limits_{g = 1}^G {{p_{T_d^2}}\left( {{{\boldsymbol{x}}_{new,g}}\left| {nos} \right.} \right)} }}} \right\}} \end{split} $$ (35) 类似地, 可获得$ T_e^2 $、$ S_d^2 $和$ S_e^2 $的全局表达式$ {BIC_{T_e^2}}\left( {{{\boldsymbol{x}}_{new}}} \right) $、$ {BIC_{S_d^2}}\left( {{{\boldsymbol{x}}_{new}}} \right) $和$ {BIC_{S_e^2}}\left( {{{\boldsymbol{x}}_{new}}} \right) $. 对于上述4个全局统计量, 只要任何一个超过控制限$ \alpha $, 系统将触发非优运行状态报警; 否则, 认为被监控的过程运行在优状态.
综上所述, 本文基于DDSFA的运行状态评价流程图如图1所示.
3. 仿真验证
本节通过将本文的基于DDSFA的运行状态评价方法应用于数值仿真算例和金湿法冶金过程, 以验证其在工业过程运行状态评价领域的有效性. 为验证分布式模型感知过程微小变化的灵敏性, 将DDSFA与集中式模型DPCA[11]和DSFA[12] 进行比较. 此外, 为体现DDSFA的优越性, 将其与分布式模型DDPCA (Dynamic decentralized principal component analysis)[22]进行对比.
3.1 数值仿真算例
本文数值仿真算例是在文献[9]和文献[22]基础上修改得到的. 数值仿真算例中包含2个独立的子过程. 需要注意的是, 虽然在实际工业过程中, 较少存在像数值仿真算例这样能理想划分的系统, 但该算例能直观地验证本文方法的有效性.
$$ \left\{ \begin{aligned} &\begin{bmatrix} {\boldsymbol{z}}_1\left ( t \right )\\ {\boldsymbol{z}}_2\left ( t \right ) \end{bmatrix} = A_1\begin{bmatrix} {\boldsymbol{z}}_1\left ( t-1 \right )\\ {\boldsymbol{z}}_2\left ( t-1 \right ) \end{bmatrix}+B_1\begin{bmatrix} {\boldsymbol{u}}_1\left ( t-1 \right )\\ {\boldsymbol{u}}_2\left ( t-1 \right ) \end{bmatrix}\\ &\begin{bmatrix} {\boldsymbol{u}}_1\left ( t \right )\\ {\boldsymbol{u}}_2\left ( t \right ) \end{bmatrix} = C_1\begin{bmatrix} {\boldsymbol{u}}_1\left ( t-1 \right )\\ {\boldsymbol{u}}_2\left ( t-1 \right ) \end{bmatrix}+D_1\begin{bmatrix} {\boldsymbol{w}}_1\left ( t-1 \right )\\ {\boldsymbol{w}}_2\left ( t-1 \right ) \end{bmatrix}\\ &\begin{bmatrix} {\boldsymbol{z}}_3\left ( t \right )\\ {\boldsymbol{z}}_4\left ( t \right ) \end{bmatrix} = A_2\begin{bmatrix} {\boldsymbol{z}}_3\left ( t-1 \right )\\ {\boldsymbol{z}}_4\left ( t-1 \right ) \end{bmatrix}+B_2\begin{bmatrix} {\boldsymbol{u}}_3\left ( t-1 \right )\\ {\boldsymbol{u}}_4\left ( t-1 \right ) \end{bmatrix}\\ &\begin{bmatrix} {\boldsymbol{u}}_3\left ( t \right )\\ {\boldsymbol{u}}_4\left ( t \right ) \end{bmatrix} = D_2\begin{bmatrix} {\boldsymbol{w}}_3\left ( t-1 \right )\\ {\boldsymbol{w}}_4\left ( t-1 \right ) \end{bmatrix}\\ &\begin{bmatrix} {\boldsymbol{y}}_1\left ( t \right )\\ {\boldsymbol{y}}_2\left ( t \right )\\ {\boldsymbol{y}}_3\left ( t \right )\\ {\boldsymbol{y}}_4\left ( t \right ) \end{bmatrix} = \begin{bmatrix} {\boldsymbol{z}}_1\left ( t \right )\\ {\boldsymbol{z}}_2\left ( t \right )\\ {\boldsymbol{z}}_3\left ( t \right )\\ {\boldsymbol{z}}_4\left ( t \right ) \end{bmatrix}+\left[\begin{array}{*{20}{c}} 0.002^{}\\ 0.004\\ 0.002\\ 0.003\end{array}\right]^{\rm{T}} \begin{bmatrix} {\boldsymbol{e}}_1\left ( t \right )\\ {\boldsymbol{e}}_2\left ( t \right )\\ {\boldsymbol{e}}_3\left ( t \right )\\ {\boldsymbol{e}}_4\left ( t \right ) \end{bmatrix} \end{aligned} \right. $$ (36) 式中
$$ \begin{split} A_1& = \left[\begin{array}{*{20}{r}} 0.318 &-0.191 \\ -0.447& 0.264 \end{array}\right]\\ A_2& = \left[\begin{array}{*{20}{r}} 0.513 &-0.114 \\ -0.217& 0.487 \end{array}\right]\\ B_1& = \left[\begin{array}{*{20}{r}} -0.425 &0.235 \\ 0.537& -0.278 \end{array}\right]\\ B_2& = \left[\begin{array}{*{20}{r}} -0.451 &0.233 \\ 0.255& -0.514 \end{array}\right]\\ C_1& = \left[\begin{array}{*{20}{r}} -0.393 &0.489 \\ 0.320& -0.449 \end{array}\right]\\ D_1& = \left[\begin{array}{*{20}{r}} 0.611 &-0.226 \\ -0.556& 0.157 \end{array}\right]\\ D_2& = \left[\begin{array}{*{20}{r}} 0.252 &-0.396 \\ -0.454& 0.535 \end{array}\right] \end{split} $$ 式中, $ {\boldsymbol{z}}_i $、$ {\boldsymbol{u}}_i $和$ {\boldsymbol{y}}_i $分别表示系统的状态变量、输入变量和输出变量; $ {A_i} $、$ {B_i} $、$ {C_i} $和$ {D_i} $表示参数矩阵; $ {\boldsymbol{w}}_i $和$ {\boldsymbol{e}}_i $均为零均值单位方差的随机变量; $ {\boldsymbol{e}}_i $的系数矩阵是为了保证$ {\boldsymbol{y}}_i $的信噪比为1%. 选择${\boldsymbol{x}}\left( t \right) = {\left[ {{\boldsymbol{y}_1}\left( t \right), \cdots ,{\boldsymbol{y}_4}\left( t \right),{\boldsymbol{u}_1}\left( t \right), \cdots ,{\boldsymbol{u}_4}\left( t \right)} \right]^{\rm{T}}}$作为过程的运行状态评价变量. 通过上述系统生成500个样本作为优运行状态的训练集, 同时, 在过程中引入不同的扰动, 使过程偏离优运行区域生成以下2组包含500个样本的测试数据.
案例1. 从第101个样本到第500个样本, 在$ {\boldsymbol{w}_1} $引入幅值为2的阶跃扰动, 模拟系统的潜变量发生偏移导致的非优运行状态.
案例2. 从第101个样本到第500个样本, 将$ C_1 $中的$ -0.393 $改为$ -0.193 $, 模拟过程变量的动态相关关系发生变化导致的非优运行状态.
需要注意的是, 上述优运行状态和非优运行状态是人为预定义的, 并不具备实际的物理意义.
首先, 将训练数据进行标准化处理; 然后, 结合DTW和K-medoids聚类算法将数值仿真算例划分为$ {{\boldsymbol{X}}_1} = \left[ {{{\boldsymbol{x}}_1},{{\boldsymbol{x}}_2},{{\boldsymbol{x}}_5},{{\boldsymbol{x}}_6}} \right]^{\rm{T}} $和 ${{\boldsymbol{X}}_2} = [ {{\boldsymbol{x}}_3},{{\boldsymbol{x}}_4}, {{\boldsymbol{x}}_7}, {{\boldsymbol{x}}_8} ]^{\rm{T}}$两个子块. 不失一般性, 式(7)的$ h $取值为5. 可以看出, 子块划分的结果与实际过程的情况完全一致. 针对每个子块, 通过式(19)确定其时滞系数, 其中$ \delta = 1 $, 则$ {l_1} = 2 $、$ {l_2} = 2 $. 根据时滞系数将子块训练集进行时滞拓展, 并构建对应的DSFA模型. 主导空间所保留的慢特征个数由式(22)确定. 需要注意的是, 在式(22)中, $ q = 0.3 $. 为保证对比的公平性, DPCA、DDPCA和DSFA都采用相同的时滞系数$ l = 2 $. 显著水平$ \alpha = 0.01 $. 主成分个数根据累积方差百分比(Cumulative percentage variance, CPV)确定[35], 即$ {\rm{CPV}}>0.9 $. 由于DDPCA包含的变量子块数等于过程变量数, 且每个子块是由不同时滞系数的过程变量构成, 因此本文不作展示.
4种算法在数值仿真算例中的漏报率如表1所示. 可以看出, DPCA和DDPCA能有效指示过程变量的均值和方差发生的明显变化, 然而, 几乎无法感知过程变量间动态相关关系的变化. 其主要原因是DPCA采用时滞扩展矩阵的方式, 将动态信息引入到原先的静态模型中, 从而实现对过程动态信息和静态信息的提取. 但DPCA的目标函数依然主要关注过程的静态特性, 所提取的潜变量容易被静态信息所主导, 无法保证提取出准确的动态表征. 因此, DPCA和DDPCA感知过程动态信息变化的灵敏度相对较低. DSFA和DDSFA对案例2中的非优运行状态的评价性能明显高于DPCA和DDPCA, 其主要原因是, 在建模过程中DSFA通过$ {T^2} $统计量和$ {S^2} $统计量分别对过程变量的稳态分布$ p\left( {\boldsymbol{x}} \right) $和暂态分布$ p\left( {{\dot{\boldsymbol{x}}}} \right) $进行单独描述[12], 从而有效地避免了过程动态信息的变化被静态信息所掩盖. 因此, DSFA比DPCA和DDPCA能更细致地描述过程数据的动态特性. 需要注意的是, 案例1比案例2所引起的变量幅值变化量大, 得益于分布式建模方法更加注重过程局部信息的变化和DSFA的优良性能, DDSFA依然获得了令人满意的评价结果. 与DSFA相比, DDSFA获得了明显性能提升.
表 1 不同算法在数值仿真算例中的漏报率(%)Table 1 Missed alarm rates of different methods inthe numerical example (%)方法 DPCA DDPCA DSFA DDSFA 案例1 20.25 4.25 19.25 7.00 案例2 94.00 90.50 24.00 18.25 数值仿真算例中案例1的运行状态评价结果如图2所示. 从第101个样本到第500个样本, 在$ {\boldsymbol{w}_1} $中引入幅值为2的阶跃扰动, 将导致过程变量$ {{\boldsymbol{x}}_1} $、$ {{\boldsymbol{x}}_2} $、$ {{\boldsymbol{x}}_5} $、$ {{\boldsymbol{x}}_6} $的均值和方差都发生明显的变化. 由于案例1所影响的变量相对较多且变化幅值也相对较大, 因而, 集中式模型DPCA和DSFA也获得了较好的评价结果, 如图2(a)和图2(c)所示. 由于分布式建模方法更加注重过程局部信息的变化, 与集中式模型相比, 分布式模型DDPCA和DDSFA获得了显著的性能提升, 如图2(b)和图2(d)所示.
数值仿真算例中, 案例2的运行状态评价结果如图3所示. 从第101个样本到第500个样本, 将过程参数$ -0.393 $改为$ -0.193 $, 改变了过程变量$ {{\boldsymbol{x}}_1} $、$ {{\boldsymbol{x}}_2} $、$ {{\boldsymbol{x}}_5} $和$ {{\boldsymbol{x}}_6} $的动态相关关系. 由图3(a)、图3(b)可以看出, DPCA和DDPCA并未取得令人满意的评价结果. 然而, 由图3(c)、图3(d)可以看出, DSFA和DDSFA评价模型中$ {T^2} $统计量和$ {S^2} $统计量均显著地超出了控制限. 得益于本文的过程分解方法将波形相近的过程变量划分到相同的子块, 提高了DDSFA算法对过程动/静态信息的表征能力. 因而, DDSFA获得了最高的评价性能.
3.2 金湿法冶金过程
金湿法冶金技术是从低品位矿石中提取黄金的有效方法. 从生产安全角度出发, 开发的算法必须经过严格测试才能应用于实际的生产过程. 虚拟仿真技术是一种有效降低算法前期测试成本和安全风险的措施. 基于以上考虑, 本文课题组根据金湿法冶金过程的运行机理, 设计并开发了金湿法冶金过程半实物仿真平台. 该平台为金湿法冶金过程的监测、运行状态评价和优化等系统的开发与验证提供软硬件基础[36-37]. 一个典型的金湿法冶金过程包括一次氰化浸出、一次洗涤、二次氰化浸出、二次洗涤和置换5个核心工序, 金湿法冶金过程工艺流程如图4所示. 浸出过程包含4个自然溢流的浸出槽. 向浸出槽中添加$ {\rm{NaCN}} $, 并充入空气, 使矿浆中的固态金溶解为$ {\left[ {{\rm{Au}}{{\left( {{\rm{CN}}} \right)}_2}} \right]^ - } $, 此过程称为一次氰化浸出. 通过全自动立式压滤机, 实现贵液和矿浆的分离. 为了使附着在滤饼中的$ {\left[ {{\rm{Au}}{{\left( {{\rm{CN}}} \right)}_2}} \right]^ - } $尽可能少, 需要使用贫液反复冲洗滤饼, 此过程称为一次洗涤. 二次氰化浸出、二次洗涤与一次氰化浸出、一次洗涤类似, 其作用是尽可能多地提取矿石中含有的黄金. 分离出的贵液经过脱氧塔处理后, 流入框板式压滤机, 并通过加入锌粉置换出固态金. 金湿法冶金过程的变量如表2所示.
表 2 金湿法冶金过程的变量Table 2 The variables of gold hydrometallurgy process序号 子工序 变量名称 1 一次氰化浸出 矿浆浓度 2 入口矿浆流量 3 浸出槽1的${\rm{NaCN}}$流量 4 浸出槽2的${\rm{NaCN}}$流量 5 浸出槽4的${\rm{NaCN}}$流量 6 空气流量 7 浸出槽溶解氧浓度 8 浸出槽1的${\rm{CN}}^-$浓度 9 浸出槽2的${\rm{CN}}^-$浓度 10 浸出槽4的${\rm{CN}}^-$浓度 11 一次洗涤 立式压滤机进料压力 12 立式压滤机液压压力 13 立式压滤机挤压压力 14 二次氰化浸出 矿浆浓度 15 入口矿浆流量 16 浸出槽1的${\rm{NaCN}}$流量 17 浸出槽2的${\rm{NaCN}}$流量 18 浸出槽4的${\rm{NaCN}}$流量 19 空气流量 20 浸出槽溶解氧浓度 21 浸出槽1的${\rm{CN}}^-$浓度 22 浸出槽2的${\rm{CN}}^-$浓度 23 浸出槽4的${\rm{CN}}^-$浓度 24 二次洗涤 立式压滤机进料压力 25 立式压滤机液压压力 26 立式压滤机挤压压力 27 置换 脱氧塔真空度 28 贵液中的$ {\left[ {{\rm{Au}}{{\left( {{\rm{CN}}} \right)}_2}} \right]^ - }$浓度 29 贫液中的$ {\left[ {{\rm{Au}}{{\left( {{\rm{CN}}} \right)}_2}} \right]^ - }$浓度 30 锌粉添加速度 基于金湿法冶金半实物仿真平台产生500个优运行状态的样本组成训练集. 具体地, 金湿法冶金过程单位时间内的综合经济指标位于[5500, 6000](元/小时). 同时, 在过程中引入不同的扰动, 使过程偏离优运行区域生成2组包含500个样本的测试数据.
案例3. 从第101个样本到第500个样本, 将矿浆浓度由0.25改为0.26.
案例4. 从第101个样本到第500个样本, 将锌粉添加速度由0.31线性地增加为0.33.
通过基于DTW距离的K-medoids聚类算法将金湿法冶金过程划分为5个子块, 金湿法冶金过程变量的子块划分结果如表3所示, 其中式(7)的$ h $取值为5.
表 3 金湿法冶金过程变量的子块划分结果Table 3 Sub-block division result of process variables of gold hydrometallurgy子块 过程变量 1 27, 28, 29, 30 2 6, 7, 11, 12, 13 3 19, 20, 24, 25, 26 4 1, 2, 3, 4, 5, 8, 9, 10 5 14, 15, 16, 17, 18, 21, 22, 23 通过式(19)确定子块的时滞系数, 其中$ \delta = 1 $, 则$ {l_1} = {l_4} = {l_5} = 2 $, $ {l_2} = {l_3} = 1 $. 显然, 本文的时滞系数确定方法根据变量子块的特性选择了不同的时滞系数, 不仅降低了建模数据的维度, 还增加了子模型的多样性. 根据时滞系数将子块训练集进行时滞拓展, 并构建对应的DSFA模型. 主导子空间所保留的慢特征个数由式(22)确定, 其中$ q = 0.3 $. 为了保证对比的公平性, DPCA、DDPCA和DSFA都采用相同的时滞系数$ l = 2 $. 显著水平$ \alpha = 0.01 $. 主成分个数通过${\rm{CPV}} > 0.9$确定.
4种算法在金湿法冶金过程中的漏报率如表4所示. 可以看出, 本文算法获得了最高的评价性能. 与DPCA相比, DDPCA获得了较大性能提升. 然而DDPCA的变量子块数等于过程变量数, 当过程变量数较大时, 会导致模型中的冗余信息较大, 从而降低了模型性能. 得益于分布式建模方法更加注重过程局部信息的变化和本文的过程分解方法提高了DDSFA对过程动/静态信息的表征能力, 因而与DSFA相比, DDSFA性能获得了明显提升.
表 4 不同算法在金湿法冶金过程中的漏报率(%)Table 4 Missed alarm rates of different methods in gold hydrometallurgy process (%)方法 DPCA DDPCA DSFA DDSFA 案例3 71.50 40.00 25.50 6.00 案例4 68.00 48.75 35.00 26.25 金湿法冶金过程中, 案例3的运行状态评价结果如图5所示. 矿浆浓度的增加短期内会导致浸出槽中$ {\rm{CN}}^- $浓度下降. 在$ {\rm{CN}}^- $浓度闭环控制器的作用下, 会加大$ {\rm{NaCN}} $的添加流量. 上述调节过程会导致溶液中$ {\left[ {{\rm{Au}}{{\left( {{\rm{CN}}} \right)}_2}} \right]^ - } $浓度升高, 从而继续影响后续工序. 综上所述, 矿浆浓度变化会导致金湿法冶金过程较多的变量发生变化. 因而, 案例3属于全局非优运行状态. 由于矿浆浓度的变化量相对较小, 集中式模型DPCA并未取得令人满意的评价结果, 如图5(a)所示. DDSFA采用分布式建模框架, 能灵敏地察觉到每一子块的数据变化, 并通过贝叶斯推理算法融合每个子块的评价结果, 因此获得了最高评价性能, 如图5(d)所示.
金湿法冶金过程中案例4的运行状态评价结果如图6所示. 由金湿法冶金过程工艺流程图可知, 锌粉添加速度的变化只会影响置换过程. 换言之, 案例4属于局部非优运行状态. 由于锌粉添加速度是线性增加的, 可以清楚地看到统计量的变化趋势. 由图6(d) 可以看出, 从第270个样本开始, DD-SFA的$ T_e^2 $统计量显著地超出了控制限, 而DSFA的$ T_e^2 $统计量从第330个样本才开始显著地超出控制限. 综上所述, 本文DDSFA算法对金湿法冶金过程的局部非优运行状态具有更强的感知能力.
4. 结束语
为充分挖掘大规模工业过程的动态信息和局部信息, 本文提出一种基于慢特征分析的分布式动态工业过程运行状态评价方法. 首先, 结合DTW和K-medoids聚类算法实现过程变量子块的划分, 一是减少了对过程机理知识的依赖, 二是充分利用了过程数据的动/静态信息; 然后, 在建立子模型阶段, 与传统动态建模方法对所有过程变量选择单一的时滞系数不同的是, 本文设计一种新颖的时滞系数确定方法, 在降低模型的计算复杂度的同时, 增加了子模型的多样性; 最后, 利用贝叶斯推理融合子块的评价结果, 简化了触发非优运行状态报警的最终决策. 将本文方法应用于数值仿真案例和金湿法冶金过程, 仿真对比结果表明, 该方法具有一定的优越性. 然而, 本文方法主要面向线性动态工业过程, 如何将其扩展到非线性动态过程或非平稳过程, 值得进一步研究.
-
表 1 不同算法在数值仿真算例中的漏报率(%)
Table 1 Missed alarm rates of different methods inthe numerical example (%)
方法 DPCA DDPCA DSFA DDSFA 案例1 20.25 4.25 19.25 7.00 案例2 94.00 90.50 24.00 18.25 表 2 金湿法冶金过程的变量
Table 2 The variables of gold hydrometallurgy process
序号 子工序 变量名称 1 一次氰化浸出 矿浆浓度 2 入口矿浆流量 3 浸出槽1的${\rm{NaCN}}$流量 4 浸出槽2的${\rm{NaCN}}$流量 5 浸出槽4的${\rm{NaCN}}$流量 6 空气流量 7 浸出槽溶解氧浓度 8 浸出槽1的${\rm{CN}}^-$浓度 9 浸出槽2的${\rm{CN}}^-$浓度 10 浸出槽4的${\rm{CN}}^-$浓度 11 一次洗涤 立式压滤机进料压力 12 立式压滤机液压压力 13 立式压滤机挤压压力 14 二次氰化浸出 矿浆浓度 15 入口矿浆流量 16 浸出槽1的${\rm{NaCN}}$流量 17 浸出槽2的${\rm{NaCN}}$流量 18 浸出槽4的${\rm{NaCN}}$流量 19 空气流量 20 浸出槽溶解氧浓度 21 浸出槽1的${\rm{CN}}^-$浓度 22 浸出槽2的${\rm{CN}}^-$浓度 23 浸出槽4的${\rm{CN}}^-$浓度 24 二次洗涤 立式压滤机进料压力 25 立式压滤机液压压力 26 立式压滤机挤压压力 27 置换 脱氧塔真空度 28 贵液中的$ {\left[ {{\rm{Au}}{{\left( {{\rm{CN}}} \right)}_2}} \right]^ - }$浓度 29 贫液中的$ {\left[ {{\rm{Au}}{{\left( {{\rm{CN}}} \right)}_2}} \right]^ - }$浓度 30 锌粉添加速度 表 3 金湿法冶金过程变量的子块划分结果
Table 3 Sub-block division result of process variables of gold hydrometallurgy
子块 过程变量 1 27, 28, 29, 30 2 6, 7, 11, 12, 13 3 19, 20, 24, 25, 26 4 1, 2, 3, 4, 5, 8, 9, 10 5 14, 15, 16, 17, 18, 21, 22, 23 表 4 不同算法在金湿法冶金过程中的漏报率(%)
Table 4 Missed alarm rates of different methods in gold hydrometallurgy process (%)
方法 DPCA DDPCA DSFA DDSFA 案例3 71.50 40.00 25.50 6.00 案例4 68.00 48.75 35.00 26.25 -
[1] Zhang C F, Peng K X, Dong J. A lifecycle operating performance assessment framework for hot strip mill process based on robust kernel canonical variable analysis. Control Engineering Practice, 2021, 107: Article No. 104698 doi: 10.1016/j.conengprac.2020.104698 [2] 褚菲, 傅逸灵, 赵旭, 王佩, 尚超, 王福利. 基于ISDAE模型的复杂工业过程运行状态评价方法及应用. 自动化学报, 2021, 47(4): 849−863Chu Fei, Fu Yi-Ling, Zhao Xu, Wang Pei, Shang Chao, Wang Fu-Li. Operating performance assessment method and application for complex industrial process based on ISDAE model. Acta Automatica Sinica, 2021, 47(4): 849−863 [3] 赵春晖, 胡赟昀, 郑嘉乐, 陈军豪. 数据驱动的燃煤发电装备运行工况监控: 现状与展望. 自动化学报, 2022, 48(11): 2611−2633Zhao Chun-Hui, Hu Yun-Yun, Zheng Jia-Le, Chen Jun-Hao. Data-driven operating monitoring for coal-fired power generation equipment: The state of the art and challenge. Acta Automatica Sinica, 2022, 48(11): 2611−2633 [4] Ye L, Liu Y M, Fei Z S, Liang J. Online probabilistic assessment of operating performance based on safety and optimality indices for multi-mode industrial processes. Industrial and Eng-ineering Chemistry Research, 2009, 48(24): 10912−10923 doi: 10.1021/ie801870g [5] Fan H P, Wu M, Cao W H, Lai X Z, Chen L F, Lu C D, et al. An operating performance assessment strategy with multiple modes based on least squares support vector machines for drilling process. Computers and Industrial Engineering, 2021, 159: Article No. 107492 doi: 10.1016/j.cie.2021.107492 [6] Zou X Y, Wang F L, Chang Y Q. Assessment of operating performance using cross-domain feature transfer learning. Control Engineering Practice, 2019, 89: 143−153 doi: 10.1016/j.conengprac.2019.05.007 [7] Liu Y, Wang F L, Chang Y Q, Ma R C. Operating optimality assessment and non-optimal cause identification for non-Gaussian multi-mode processes with transitions. Chemical Engineering Science, 2015, 137: 106−118 doi: 10.1016/j.ces.2015.06.016 [8] Wang Y L, Li L, Wang K. An online operating performance evaluation approach using probabilistic fuzzy theory for chemical processes with uncertainties. Computers and Chemical Engineering, 2021, 144: Article No. 107156 doi: 10.1016/j.compchemeng.2020.107156 [9] Negiz A, Çlinar A. Statistical monitoring of multivariable dynamic processes with state-space models. AIChE Journal, 1997, 43(8): 2002−2020 doi: 10.1002/aic.690430810 [10] Lee J M, Yoo C K, Lee I B. Statistical monitoring of dynamic processes based on dynamic independent component analysis. Chemical Engineering Science, 2004, 59(14): 2995−3006 doi: 10.1016/j.ces.2004.04.031 [11] Ku W F, Storer R H, Georgakis C. Disturbance detection and isolation by dynamic principal component analysis. Chemometrics and Intelligent Laboratory Systems, 1995, 30(1): 179−196 doi: 10.1016/0169-7439(95)00076-3 [12] Shang C, Yang F, Gao X Q, Huang X L, Suykens J A, Huang D X. Concurrent monitoring of operating condition deviations and process dynamics anomalies with slow feature analysis. AIChE Journal, 2015, 61(11): 3666−3682 doi: 10.1002/aic.14888 [13] Sedghi S, Huang B. Real-time assessment and diagnosis of process operating performance. Engineering, 2017, 3(2): 214−219 doi: 10.1016/J.ENG.2017.02.004 [14] Zou X Y, Zhao C H. Concurrent assessment of process operating performance with joint static and dynamic analysis. IEEE Transactions on Industrial Informatics, 2019, 16(4): 2776−2786 [15] Norazwan M N, Che R C H, Mohd A H. A review of data-driven fault detection and diagnosis methods: Applications in chemical process systems. Reviews in Chemical Engineering, 2020, 36(4): 513−553 doi: 10.1515/revce-2017-0069 [16] Khan S S, Madden M G. One-class classification: Taxonomy of study and review of techniques. The Knowledge Engineering Review, 2014, 29(3): 345−374 doi: 10.1017/S026988891300043X [17] 姜庆超, 颜学峰. 基于局部−整体相关特征的多单元化工过程分层监测. 自动化学报, 2020, 46(9): 1770−1782Jiang Qing-Chao, Yan Xue-Feng. Hierarchical monitoring for multi-unit chemical processes based on local-global correlation features. Acta Automatica Sinica, 2020, 46(9): 1770−1782 [18] Chen Z W, Cao Y, Ding S X, Zhang K, Koenings T, Peng T, et al. A distributed canonical correlation analysis-based fault detection method for plant-wide process monitoring. IEEE Transactions on Industrial Informatics, 2019, 15(5): 2710−2720 doi: 10.1109/TII.2019.2893125 [19] Liu Y, Wang F L, Gao F R, Cui H N. Hierarchical multi-block T-PLS based operating performance assessment for plant-wide processes. Industrial and Engineering Chemistry Research, 2018, 57(43): 14617−14627 doi: 10.1021/acs.iecr.8b02685 [20] Zhu J L, Ge Z Q, Song Z H. Distributed parallel PCA for modeling and monitoring of large-scale plant-wide processes with big data. IEEE Transactions on Industrial Informatics, 2017, 13(4): 1877−1885 doi: 10.1109/TII.2017.2658732 [21] Huang K K, Wei K, Li Y G, Yang C H. Distributed dictionary learning for industrial process monitoring with big data. Applied Intelligence, 2021, 51(11): 7718−7734 doi: 10.1007/s10489-020-02128-x [22] Tong C D, Shi X H. Decentralized monitoring of dynamic processes based on dynamic feature selection and informative fault pattern dissimilarity. IEEE Transactions on Industrial Electronics, 2016, 63(6): 3804−3814 doi: 10.1109/TIE.2016.2530047 [23] Jiang Q C, Yan X F, Huang B. Review and perspectives of data-driven distributed monitoring for industrial plant-wide processes. Industrial and Engineering Chemistry Research, 2019, 58(29): 12899−12912 doi: 10.1021/acs.iecr.9b02391 [24] Ge Z Q, Song Z H. Distributed PCA model for plant-wide process monitoring. Industrial and Engineering Chemistry Research, 2013, 52(5): 1947−1957 doi: 10.1021/ie301945s [25] Jiang Q C, Yan X F. Nonlinear plant-wide process monitoring using MI-spectral clustering and Bayesian inference-based multi-block KPCA. Journal of Process Control, 2015, 32: 38−50 doi: 10.1016/j.jprocont.2015.04.014 [26] Zhong K, Ma D W, Han M. Distributed dynamic process monitoring based on dynamic slow feature analysis with minimal redundancy maximal relevance. Control Engineering Practice, 2020, 104: Article No. 104627 doi: 10.1016/j.conengprac.2020.104627 [27] Sakoe H, Chiba S. Dynamic programming algorithm optimization for spoken word recognition. IEEE Transactions on Acoustics, Speech, and Signal Processing, 1978, 26(1): 43−49 doi: 10.1109/TASSP.1978.1163055 [28] Park H S, Jun C H. A simple and fast algorithm for K-medoids clustering. Expert Systems With Applications, 2009, 36(2): 3336−3341 doi: 10.1016/j.eswa.2008.01.039 [29] Song P Y, Zhao C H. Slow down to go better: A survey on slow feature analysis. IEEE Transactions on Neural Networks and Learning Systems, DOI: 10.1109/TNNLS.2022.3201621 [30] Rong M Y, Shi H B, Song B, Tao Y. Multi-block dynamic weighted principal component regression strategy for dynamic plant-wide process monitoring. Measurement, 2021, 183: Article No. 109705 doi: 10.1016/j.measurement.2021.109705 [31] Jia G L, Wang Y Q, Huang B. Dynamic higher-order cumulants analysis for state monitoring based on a novel lag selection. Information Sciences, 2016, 331: 45−66 doi: 10.1016/j.ins.2015.10.029 [32] 蒋珂, 蒋朝辉, 谢永芳, 潘冬, 桂卫华. 基于时序关联矩阵的高炉冶炼过程多重关联时延估计方法. 自动化学报, 2023, 49(2): 329−342Jiang Ke, Jiang Zhao-Hui, Xie Yong-Fang, Pan Dong, Gui Wei-Hua. A multi-correlated time-delay estimation method in the blast furnace iron-making process based on time-series correlation matrix. Acta Automatica Sinica, 2023, 49(2): 329−342 [33] Zhang S M, Zhao C H, Huang B. Simultaneous static and dynamic analysis for fine-scale identification of process operation statuses. IEEE Transactions on Industrial Informatics, 2019, 15(9): 5320−5329 doi: 10.1109/TII.2019.2896987 [34] Ge Z Q, Chen J H. Plant-wide industrial process monitoring: A distributed modeling framework. IEEE Transactions on Industrial Informatics, 2015, 12(1): 310−321 [35] 张成, 戴絮年, 李元. 基于DPCA残差互异度的故障检测与诊断方法. 自动化学报, 2022, 48(1): 292−301Zhang Cheng, Dai Xu-Nian, Li Yuan. Fault detection and diagnosis based on residual dissimilarity in dynamic principal component analysis. Acta Automatica Sinica, 2022, 48(1): 292−301 [36] 常玉清, 孙雪婷, 钟林生, 王福利, 刘英娇. 基于改进随机森林算法的工业过程运行状态评价. 自动化学报, 2021, 47(9): 2214−2225Chang Yu-Qing, Sun Xue-Ting, Zhong Lin-Sheng, Wang Fu-Li, Liu Ying-Jiao. Industrial operation performance evaluation of industrial processes based on modified random forest. Acta Automatica Sinica, 2021, 47(9): 2214−2225 [37] Zhong L S, Chang Y Q, Wang F L, Gao S H. Distributed missing values imputation schemes for plant-wide industrial process using variational Bayesian principal component analysis. Industrial and Engineering Chemistry Research, 2022, 61(1): 580−593 doi: 10.1021/acs.iecr.1c03860 期刊类型引用(2)
1. 张鹏. 复杂工业过程特征建模方法优化设计. 科技与创新. 2025(04): 66-68+75 . 百度学术
2. 朱东升,董旭欣,成松鹤,康欢. 基于马尔科夫链的软件系统接口预警技术研究. 长江信息通信. 2024(09): 127-130+146 . 百度学术
其他类型引用(0)
-