覃 力,唐卫清,陶清华,闫全甲,李士才
(1.中国科学院大学 计算机科学与技术学院,北京 100049;2.中国科学院 计算技术研究所,北京 100190;3.洛阳中科信息产业研究院 工业智能中心,河南 洛阳 471000;4.北京中科辅龙计算机技术股份有限公司 技术研发部,北京 100085)
以石油化工为代表的流程工业是我国国民经济的重要支柱。随着流程工业的快速发展,大量新的、规模以上的流程工厂建设完成或正在设计建设中。在这一过程中,越来越多的设计者们发现,流程工厂模型检索对流程工业的进一步发展具有意义,主要表现在3个方面:①利用模型检索技术有助于提高工厂模型的信息化管理水平,有助于模型的共享、重用;②以相似模型为参考或直接基于相似模型编辑、修改得到新模型,能降低设计难度、缩短建模周期、消除重复劳动、提高模型质量;③模型检索技术有益于设计单位的技术沉淀、成果转化,能在一定程度上减轻对设计者个人素质或灵感的依赖,增强设计单位的技术竞争力。
流程工厂由元件、设备、构筑物及其他附属物4部分共同构成,设备是其中最为重要的组成部分,对工厂的生产工艺几乎起决定性作用。现代化的流程工厂需要大量不同类型的设备,工厂中所有设备合在一起构成设备集,对工厂的整体特性具有重要影响。例如,设备类型与工厂产出物类型密切相关,而设备数量与工厂产能有直接关系。根据工艺和预算选择适当的设备是流程工厂设计建模的重要步骤,因此设备集还在很大程度上决定了工厂的设计及造价。工厂模型检索的本质是模型相似度计算,由上述分析可知,设备集相似度对工厂模型相似度非常重要。要想实现流程工厂模型检索,必须实现工厂的设备集相似度计算。
本文提出一种基于高斯混合模型间JS(Jensen-Shannon)散度的流程工厂设备集相似度计算方法。该方法基于人对集合相似的一般认识,从设备数量和设备构成两方面同时对设备集进行考察,最终得到关于设备集相似的统一度量指标。对于设备数量,本文采用基于Jaccard系数思想的差、和比进行度量;对于设备构成,本文首先利用设备分类树将设备集映射成坐标空间中的点集,再用高斯混合模型描述点集分布规律,最后用高斯混合模型间的JS散度求其相似度。本文实现了对流程工厂设备集相似性的数值化度量,对流程工厂整体相似度计算及流程工厂模型检索有重要帮助。
为了更好地理解流程工厂设备集相似度计算问题,首先对设备集构成及设备集相似度计算进行定义。
现代化的流程工厂往往造价高昂、规模庞大,包含的设备也多种多样。工业生产中,设备泛指对原料具有生产、加工、处理能力的机械或装置,但这一定义过于宽泛不足以限定本文的计算范围。本文中的设备特指流程工厂中除管道、元件外,对介质起存储、汇聚、反应等作用的主要装置及场所。该定义强调两个方面:①设备应与介质紧密相关,工厂中与介质无关的部分如楼房、钢结构、计算机等不属于设备;②设备涉及了介质存储、反应、产出的全生命周期[1],它涵盖了工厂中几乎所有的装置。在流程工厂中,管道约束介质的流通,管道上的元件对管道起辅助支撑作用,工厂中剩余一切与反应相关的装置均属于设备,如容器、换热器、反应器、分离器等。设备集是工厂内所有设备的集合,其定义如下。
定义1设有流程工厂P,P的设备集为E={e1,e2,e3,…,en},则对于任意ei∈E,ei为工厂P中的一个设备,且E包含了P的全体设备。
如图1所示为某硫磺工厂(简称工厂1),其设备集为{容器,换热器,一级硫冷凝器,一级反应加热器,容器,二级硫冷凝器,二级反应加热器,容器,三级硫冷凝器,容器,换热器,一级硫冷凝器,一级反应加热器,容器,二级硫冷凝器,二级反应加热器,容器,三级硫冷凝器}共18个设备。
比较是人类认识事物的基本方法之一,而相似度是对感性比较的数值化度量。与大多数问题一样,本文用[0,1]间的实数表示设备集间的相似度。设备集相似度计算的抽象定义如下。
定义2设有设备集E1、E2,设备集相似度计算函数S,则S(E1,E2)的取值应位于闭区间[0,1]内,且具有以下性质:
(1)S(E1,E2)=0表示设备集完全不相似,S(E1,E2)=1表示设备集完全相似即相同。
(2)若0
(3)S(E1,E2)具有对称性, 即满足S(E1,E2)=S(E2,E1)。
定义2并不要求计算函数S具备传递性,即由S(E1,E2)=s、S(E2,E3)=s不能得到S(E1,E3)=s。另外,S(E1,E2)=0只是理论上的极端情况,现实中只要设备集不为空就很难真正界定所谓的“完全不相似”,因此绝大多数情况下S(E1,E2)的取值只会接近于0而不会真正等于0。本文将在流程工厂设备集的深入研究基础之上,给出基于高斯混合模型间JS散度的S的具体计算方法。
流程工厂模型检索是最近几年被提出的新问题。而将设备集相似度作为工厂模型相似度的重要组成部分并单独计算,是笔者在对工厂模型检索一系列研究中提出来的新思路。因此,当前鲜见有专门针对流程工厂设备集相似度计算的研究成果。虽然如此,许多相关研究工作仍对本文具有重要意义及参考价值,本文将分两部分对这些工作进行介绍。首先,介绍有关流程工厂模型检索的最新研究成果,但这类研究成果目前还比较有限;然后,从抽象的角度介绍一些被研究、应用的集合相似度计算方法;最后对相关研究进行总结,指出流程工厂设备集相似度计算问题的特殊性及现有计算方法的不适用性,进一步阐明本文的研究意义及创新性。
温蕊等[2]对流程工厂模型的局部检索问题进行了研究。他们将工厂设备看作节点,将工厂管道看作边,从而将工厂模型的局部构成抽象成了拓扑图。通过定义节点、边的删除、插入等基本操作和代价,用从一种拓扑连接转换成另一种拓扑连接所需的最小代价度量两个工厂局部的相似度。这种度量方法在图论中又被称为编辑距离。温蕊等[3]还对流程工厂设计的智能预测进行了研究,该研究利用树形结构组织、表现模型已有部分的构成情况,并基于对已有部分连接规律的统计,预测最有可能的下一步建模操作。工厂设计的智能预测需要考察当前模型的构成,与工厂模型检索、工厂模型相似度计算联系非常紧密。覃力等[4]研究了流程工厂模型中设备的相似度计算问题。他们基于人对流程工厂设备的先验知识建立工厂设备分类树,避免了直接对标识设备的字符串进行计算。然后基于设备节点在树中的高度及节点间的距离表现现实中设备的“亲、疏”关系,并计算得到相似度。
从抽象的角度来看,设备集相似度计算是集合相似度计算的具体应用,因此有关集合相似度计算的研究也对本文有重要参考价值,本文将分3类对有关集合相似度计算的研究进行介绍。
第二类方法对集合元素做统计分析,再根据数据分布的特点对集合相似度进行度量。直方图统计[7-8]是一种最常用、最直接的统计分析方式。依次排列直方图所有方格的取值,就能得到一组关于该集合的特征向量[7],集合间相似度计算也被转换成特征向量间的相似度计算。向量间相似度计算的方法多种多样,典型的有距离度量法[5]、余弦度量法[6]等。将集合的直方图取值看作质量分布[7],以最小的代价将一种质量分布变换成另一种,并用该代价度量相似性是另一种计算方法。如图2所示,S和S′的面积相等(对应于质量)但分布不同,从S转换得到S′的问题就是数学中的“最优运输问题”[9](optimal transport problem)。该问题得到了很多研究和应用,其中比较有名的是Wasserstein距离[10]又称EMD(earth mover’s distance)。最优运输问题实际是一类特殊的线性规划问题[7],但Wasserstein距离对于高维数据具有不易计算的缺点[11]。直方图统计的另一个典型应用是用图像的灰度直方图计算图像间的相似度[12];而Wasserstein距离在最新的生成对抗网络[13]研究中得到了重要应用。将集合看作元素对象基于某种潜在规律的分布结果,用概率模型描述这种规律,并以概率模型间的差异表现集合间的差异,是另一种泛化能力更强的集合相似度计算方法[7]。这类方法不要求集合内元素数量相同,但其难点在于寻找合适的描述数据分布的概率模型及概率模型间的差异度量方式。常见的概率分布有高斯分布、t分布、Gamma分布等,而常见的概率距离有B距离[14]、KL散度[15]、J散度[16]、JS散度[16]等。
前两类方法可看作集合相似度计算的通用方法,它们不限定于任何特殊的应用场景。除此以外,学者们还提出了许多针对特定问题的计算方法。由于数据库往往存有海量数据,不可能将输入与每一条库存数据进行比对。更切实的做法是先对库存数据进行聚类,求输入对象与各个类别的相似度,当相似度超过一定阈值后再深入该类别做进一步比较。这类应用称为Similarity-Join[17-20],广泛存在于文本检索、音乐检索、视频检索等问题[20]中。这类问题需要计算单个对象与对象集合的相似度,在数据挖掘、相似性推荐等领域非常常见。学者Brisaboa等[21]不仅对该问题基于中心轴及基于聚类的两类方法进行了分析,还提出新的稀疏空间选择(Sparse Spatial Selection,SSS)方法[21],以求更快、更准确地完成计算。
无论是上述流程工厂模型检索还是集合相似度计算,其相关研究成果都在不同场景下取得了成功应用且与本文密切相关,但这些方法并不能直接适用于本文问题。
温蕊[2-3]等对流程工厂模型局部检索的研究及工厂设计智能预测的研究,都重点度量了模型局部拓扑连接上的差异,但没有将设备集作为影响工厂相似的重要因素进行单独考察。且他们提出的基于编辑距离的度量法计算复杂度较高,只适用于小规模的工厂模型局部。覃力[4]等关于设备相似度计算的研究与本文联系更为紧密,但其研究只能计算两个单独设备间的相似度,不能用于设备集。
而现有的相似度计算方法中,首先,豪斯多夫距离、切比雪夫距离都对奇异点非常敏感,不能准确、全面地反映整个设备集的取值特性;其次,直方图法尤其是“最优运输问题”要求两个集合的元素数量相同,而流程工厂设备集的设备数量是任意的、不确定的;第三,针对特定问题的计算方法往往利用了特定场景下数据的结构特性(如字符串、DNA序列是天然的序列化结构),极大地限制了这类方法在流程工厂上的运用。
通过研究,本文总结发现了流程工厂设备集的3个主要特点:①流程工厂模型中的设备是以字符串进行标识的,但直接基于字符串进行计算是非常不准确的,因此需要对设备做数值化映射;②流程工厂模型中的设备集可以含有不同数量、不同类型的设备,这要求其相似度计算方法有较强的泛化能力;③流程工厂设备集实际是由多种类型设备子集共同构成,要想准确度量设备集之间的差异就必须深入表现设备聚类分布的特性。这些特点使得笔者必须基于现有相关研究,提出新的、适用于流程工厂设备集的相似度计算方法。
基于上述特点,本文提出了基于高斯混合模型JS散度的设备集相似度计算方法。该方法从设备数量及设备构成两方面同时考察设备集,再将二者结合起来得到整体相似度。对于设备数量,本文基于Jaccard系数思想进行度量;对于设备构成,本文首先利用设备分类树将设备集映射成坐标空间中的点集,实现对设备对象的数值化转换,然后用高斯混合模型描述设备的分布规律,最后用JS散度计算得到设备构成间的相似度。该方法能对任意工厂模型设备集进行计算,具有良好的适用性,且高斯混合模型中的高斯分量能更加准确的表现设备集内各设备子集的构成特点。
根据人对集合的一般认识经验,当两个集合的元素数量相同、元素构成也相同时,才认为这两个集合相同。相同是相似的极端情况,这种认识体现了人对集合相似的一般判断标准。例如,设有设备集E1={e1=ea,e2=ea,e3=ea,e4=ea},E2={e1=ea,e2=ea,e3=ea},虽然两设备集均由ea构成但它们的设备数量不同,因此二者存在一定的差异;若E1={e1=ea,e2=ea,e3=ea}、E2={e1=ea,e2=ea,e3=eb},虽然此时设备数量相同但E2中有eb,因此二者也不完全相同。本文将设备数量上的相似称为设备集相似度第一部分,将设备构成上的相似称为设备集相似度第二部分。先从两方面分别对设备集相似性进行度量,再将分别度量的结果整合起来得到最终相似度值。
设备集内设备数量本身是一个标量,它等于设备集E模的大小。设S1(E1,E2)表示相似度第一部分,自然的便有当|E1|和|E2|相差较小时,S1取值应该较大,表示第一部分相似度较高;当|E1|和|E2|相差较大时,S1取值应该较小,表示第一部分相似度较低。而且S1应具有对称性,即应有S1(E1,E2)=S1(E2,E1)。
本文认为,除了考虑|E1|、|E2|取值上的相对差以外,还应考虑它们本身的绝对值。例如若|E1|=5、|E2|=10,|E1|和|E2|的相对差是5,但|E2|的取值是|E1|的两倍;若|E1|=35、|E2|=40,虽然二者的相对差仍然为5,但E1的设备数量相当于E2的80%。
相似度第二部分的计算比第一部分更加困难,这是由设备集的构成特点所致:①工厂模型中的设备标识既没有数值化,也不是坐标空间中的点,而是原始的字符串,直接对字符串集合求设备集相似度不可行;②设备集中设备数量不确定,如图1中工厂有18个设备,而图3中工厂(称工厂2)只有14个设备。图4展示了本文模型库中工厂模型设备数量的取值情况。横轴表示设备数,纵轴表示正则化后拥有该数量设备的工厂数比例,可认为纵轴越高、工厂越多。可以看到,工厂内设备数的跨度范围比较宽泛,其形态类似于t分布;③所谓“一个设备集”实际是由多种类型的设备子集共同构成,设备集内设备具有明显的多簇聚类分布特性。基于上述特点,本文先用分类树将设备集映射成坐标空间中的点集,再用高斯混合模型深入描述设备集内的每个设备子集,最后用高斯混合模型间的差异求设备构成间的相似度。该方法能计算任意规模工厂设备集间的相似度,具有很好的实用性。
3.2.1 坐标空间映射
流程工厂设备集中设备的原始标识是字符串,尤其中国设计者多采用中文字符串。但字符串取值上的差异对于设备集相似度的计算意义非常有限。如字符串“同径塔”与字符串“换热器”计算机编码上的差异,并不能代表现实中同径塔与换热器的差异。因而,将设备值映射成坐标空间中的点时一定要考虑点的位置与现实中设备类别的对应关系。覃力等[4]在研究流程工厂设备相似度计算时,提出先为流程工厂设备建立分类树,再将所有设备映射成分类树上的节点。该研究认为,分类树引入了人对流程工厂设备类别的先验知识,而节点在分类树上的位置信息是对原始字符串信息的重要补充,能很好地表达设备之间的类别关系。本文认为,可在该研究提出的分类树基础之上按节点在树中的相对位置映射到二维空间中,这样具体的设备值也就被映射成了二维空间中的点。
覃力等[4]提出,建立分类树时应首先统计当前模型库中所有设备的取值情况,结合流程工厂专业人员的意见,建立从根到叶子节点的多叉树。其中,越靠近根部的节点设备类型越抽象,越靠近叶子节点的设备类型越具体,且整棵树应满足文中提出的完备性。依照该方法,本文所使用的模型库总共有31个流程工厂模型,共约800多个设备,280多种不同的设备值取值。笔者在流程工厂专家的帮助下,为模型库建立了一棵最大高度为5,包含128个节点的分类树。由于分类树过于庞大,无法在此处完全展示,只能对建树的部分过程进行论述,其余部分则与论述部分方法完全相同。
首先,为分类树建立设备根节点即Root={设备},作为对全部设备的总抽象;然后,将设备具体分为5大类,即设备={容器、换热器、分离器、反应器、其他设备},这五大子类型囊括了本文模型库中的所有设备。容器是流程工厂中最为常见的装置,它可能出现在反应过程的各个位置并具有不同功能。容器本身并非是反应的主要场所,但它对反应介质起存储、缓冲、收集等作用;换热设备是流程工厂另一类非常重要的设备,它用于改变介质的温度,主要包括升温和降温两大类;分离设备主要用于反应前、反应后对介质进行处理,反应前包括对介质进行过滤提纯等,反应后包括对产出物进行收集、分离等;反应器以各类反应釜、反应塔、合成器为代表,它通过对介质比例、反应温度、反应压力的控制保证反应的顺利进行;其他设备泛指工厂中剩余的各种装置,它们通常不直接参与反应过程而是对反应起辅助、控制、保护作用,典型代表有稳压器、球磨机、搅拌机、 泵等。
接下来对这5类设备分别做更细致的分类,此处仅以容器类为代表进行说明。本文认为,根据容器工艺用途的不同可将其分为4类,即容器={存储容器,集纳容器,反应控制容器,反应辅助容器}。存储类容器作用单一,主要用于存储反应过程中所需的物料和介质;集纳容器则具备一定的收集功能,如凝结、回流等;反应控制容器用于对反应过程起调节控制作用,特别是对压力、温度进行安全控制,如放空罐、风罐等;反应辅助容器起辅助作用,如中转、计量、溶剂配置等。根据同样的方法,再继续对这4类容器进行划分,直到所有类型都不再有子类型。整个容器类子树如图5所示,可以看到叶子节点已经是非常具体的容器设备。
与容器类子树建立过程类似,再分别建立换热器、分离器、反应器及其他设备的子树,并最终与根节点合起来,得到完整的设备分类树。建立分类树只是将设备映射到坐标空间的第一步,接下来还要将分类树投影到坐标空间中。本文认为,树节点之间主要有上下级的父子关系和同一级的兄弟关系两种关系。父子关系可以用树的高度天然表示,对于同一高度内的兄弟节点,本文按节点在分类树中从左到右的顺序进行编号,且起始编号为1。然后,将横向兄弟关系映射到二维坐标系的x轴上,将纵向父子关系映射到y轴上,从而实现分类树到坐标空间中的投影。受篇幅所限,图6展示了如何对分类树进行编号,图7展示了分类树部分节点向二维空间投影的效果。
3.2.2 设备构成相似度计算
流程工厂设备集E含有的设备数量可能有任意多个,这意味着参与相似度运算、影响最终结果的元素数量不确定。这一特性要求计算模型有很强的泛化能力,能接受任意大小设备集作为输入。参数化概率模型能用少数特定参数对样本的分布进行描述,相当于将一个元素数量不定的集合分布归约为少量特定参数。而且,对于映射到坐标空间中的设备点,笔者更关注点与点之间的相对位置而非坐标取值。例如,分类树根节点虽然被映射到(1,1)处,但实际上根节点可以位于任意位置,其坐标值甚至可以是浮点数、负数。本文认为,可将考察重点从设备坐标点的具体取值转移到全体设备的分布规律上,即用参数化概率模型描述每个设备集的设备分布特点,再用概率模型间的差异计算设备集相似度,从而更有效地适用于不同构成的设备集。
用概率模型描述数据分布,其困难在于选取恰当的模型,如果模型选取不当将无法准确表现数据的分布特点。本文研究认为,每个流程工厂都有确定的工艺目标,其生产过程也受一系列工艺约束的限制,因此设备集的构成往往呈明显的聚类效果。例如,硫磺的生产过程需要对物料进行反复加热、冷凝,因此需要较多的换热器;而氯氨反应需要对多种物料进行调配并让它们充分接触,因此工厂中有较多的存储器、调配器和反应器。工厂1虽然有18个设备,但这些设备实际映射到了分类树的4个节点,分别是罐式容器、换热器、加热器和冷凝器,其分布如图8a所示;工厂2则实际映射到了10个节点,分别是换热器、反应器、回流罐、集液罐、解吸塔等,其分布如图8b所示。图8中圆形的大小对应设备数量的多少。
由图8可知,一般的概率模型很难准确描述设备构成。例如图8a中,设备很清晰地聚类成4个簇类且4个簇类的位置及设备数量各不相同。用4个模型分别描述每个簇类显然要比用一个模型描述整个设备集更合理;图8b中数据的分布更加复杂,更加难以用一个单一模型描述其设备分布。因此,本文认为可用高斯混合模型[22]描述设备集的分布,其中每个高斯分量对应一个簇类。
选用高斯混合模型主要基于如下3个原因:①混合模型能更准确地表现设备集的聚类特性,每个高斯分量对应一个簇类能更细致的表现数据分布特点;②高斯混合模型的分量系数π能进一步刻画各分量对整体的贡献度,协调设备数量不等时各个分量间的比例关系;③高斯分布是最为常用的统计模型,它居于所有概率模型的中心位置,几乎所有的数据分布都可以从不同角度用高斯分布去近似。
为了更好地利用S(E1,E2)计算式对流程工厂设备集相似度进行度量,本章首先对计算式的数学特性进行深入分析,然后在本文所基于的模型库上进行实例验证,以检验本文方法的实用效果。
S1(E1,E2)的取值由|E1|和|E2|共同决定,其取值分布如图10a所示。从图中可以很清晰地看到,S1(E1,E2)随|E1|和|E2|呈平滑的非线性变化。当|E1|=|E2|时,S1(E1,E2)取到最大值1,表示设备集设备数量完全相同;当|E1|和|E2|取值相差较大时,S1(E1,E2)也逐渐变小,直至最终趋于0。S1(E1,E2)的整体取值在三维空间内关于y=x曲面呈对称分布,这表明它满足定义2中的交换律。
总体相似度S(E1,E2)的取值如图11所示,从图中可见S(E1,E2)的取值从高到低呈平滑变化且沿对角线对称分布,本文认为这样的效果是比较理想的。
当前,对流程工厂设备集的相似性验证还存在一定困难,这种困难主要包括两方面:一方面,由于流程工厂模型相似度计算的相关研究刚刚起步,且出于对模型版权、工厂安全、商业竞争等因素的考虑,业内还没有公开的、被广泛认可的工厂模型数据集;另一方面,相似性判断不同于一般的回归问题或判定问题,其结果认定带有主观性,不同人可以有不同看法或结论,没有绝对的正确答案,因而也就没有标签数据。基于以上原因,笔者自行收集流程工厂模型组成模型库,对模型库中模型进行测试,然后请流程工厂专家结合设备分类标准及设备工艺作用对测试结果进行人工判定并打分,以验证计算结果的有效性。本文模型库中总共有31个流程工厂模型,分别涉及石化、天然气、发电站、硫磺、焦碳、轻烃等多个行业,且绝大多数为局部模型。所谓局部模型即整体工厂模型的一部分,现代化流程工厂规模都非常庞大,设计建模需要多人协同、共同完成,因此现在大多数流程工厂模型都是局模型。局部模型并不影响工厂设备集相似度的有效性验证。
在实际使用本文方法时,需要首先确定几个重要参数。伸缩因子λ上一节已经介绍,此处不再赘述;高斯混合模型中的分量数K和狄利克雷归一化常数α0与具体数据集紧密相关,要根据实际情况进行设定。基于本文模型库,研究者经过试验后认为令K=6,α0=0.01是较为合适的取值。当K>6时,绝大多数模型都会将多余分量的系数压缩至接近于0;当K<6时,部分模型内的高斯分量会被强行合并。而且K和α0的取值是互相配合、互相作用的。在该取值下,工厂1和工厂2拟合出的高斯混合模型如图12a和图12b所示。结合图8a、图8b可见,工厂1与本文猜测相同,4个簇类分别对应了4个高斯分量;工厂2的情况复杂一些,最终将设备集聚类成了6个簇类,学习出6个分量。表1、表2分别列出了两个工厂的高斯混合模型参数,表中部分协方差值为0是四舍五入的结果。从表中能更加准确地看到,工厂1中有两个分量的权重值非常小,相当于只有4个分量;工厂2各个分量的权重更加均衡,因此图12b中绘制出了6个分量。图中纹线的密度对应了分量系数的大小,即该分量对整个高斯混合模型的重要性。
表1 工厂1高斯混合模型参数
表2 工厂2高斯混合模型参数
本文中的工厂1是模型库中的1号模型,表3列出了工厂1与剩余30个模型的相似度取值情况。同样由于篇幅所限,只展示了全部结果中与工厂1相似度较高、一般和较低的各3个示例。本文中的工厂2即表中的10号模型。从取值来看,相似度第一部分总体上要大于第二部分且区分范围较大。而相似度第二部分考察的内容更复杂,想要获得较高相似度也更困难。
表3 工厂1与其他工厂设备集相似度
相似度计算的最终目标是量化区分不同设备集之间的相似程度,本节将结合化工设备分类方法,从工艺作用的角度对12号工厂(与工厂1最相似)、7号工厂(与工厂1最不相似)与工厂1设备集的相似度进行分析对比。现实中化工设备的分类方法非常多,如按是否有驱动机带动可分为动设备和静设备,泵、压缩机等是典型的动设备,容器、反应塔等是典型的静设备;按是否具有通用生产标准可分为特型设备和非特型设备,厂家根据用户需求专门定制生产的称为特型设备,按国家统一标准生产出售的设备称为非特型设备;按设备在反应生产中的作用地位可分为主体设备和辅助设备,反应器、蒸发器、合成器等常作为主体设备,泵、过滤器、传送器等常作为辅助设备。还有很多其他分类方法,分别从不同角度归纳了设备之间的相对关系,适用于不同场景。本文认为,对于流程工厂模型检索问题,设计者们更看重设备的工艺作用,因此应考虑设备工艺作用上的相似性。
12号工厂的设备集为{汽包,燃烧炉换热器,冷凝器,加热器,反应器,冷凝器,加热器,反应器,冷凝器,封硫器,封硫器,封硫器,凝结罐,捕集器,凝结罐}共15个设备,7号工厂的设备集为{箱式容器,过滤塔,箱式容器,箱式容器,过滤塔,箱式容器}共6个设备。从设备数量上看,12号工厂与工厂1(18个设备)更接近,相似度第一部分取值更高。从设备构成上看,对于换热器、冷却器、冷凝器、加热器,冷却器[24]用于降低物流温度,冷凝器[24]则在降温的同时进一步将气态物料凝结成液态,加热器[24]用于对物流加热,换热器则实现冷流体与热流体间的热量交换,既可用于加热也可用于放热。上述设备的工艺功能虽不完全相同但又非常类似,按功能分类时它们都属于同一类别即热交换设备[24],因此可认为这些设备在工艺作用上有较大相似性。工厂1和12号工厂均是硫磺生产厂,而硫磺的核心生产过程是对原料先加热、再低温析出,因此热交换设备是其核心设备之一。工厂1有12个热交换设备,其中一半是冷凝器(6个),12号工厂有6个换热设备,也有一半是冷凝器(3个),而7号工厂没有换热器。因此,从热交换设备的构成来看,12号工厂与工厂1明显比7号工厂与工厂1更相似,这符合表3中设备集相似度计算结果。对容器设备而言,工厂1有6个容器,12号工厂有1个汽包、2个凝结罐,7号工厂有4个箱式容器。工厂1中的容器是用于缓冲、存储硫磺生产过程中的中间物(如图1);汽包是通过水循环调节、控制反应过程中的压力,从图5可知本文将其定义为反应控制容器,用于控制反应的正常进行;凝结罐是以凝结方式对液体进行存储,在硫磺生产中主要用于存储液硫;箱式容器是另一类常见的容器,它既可以用于存储干散固体,也可以用于存放液体(如水箱)。从设备功能上看,容器、汽包、凝结罐、箱式容器都属于容器大类,都具备容纳、存储作用;但从与工厂工艺关系上看,凝结罐与硫磺的生产过程相关度更高,是硫磺生产中常用的设备,箱式容器则几乎与硫磺生产无关。通过与流程工厂专家的深入交流讨论,专家们倾向于认为12号工厂中的凝结罐要比7号工厂中的箱式容器与工厂1中的容器更相似。12号工厂中的封硫器即硫封罐,也被称作液硫封,其作用是隔离生产过程中产生的气体与液硫,保证生产的顺利进行;捕集器也分很多种,如气体捕集器、颗粒捕集器等,可用于捕集生产过程中产生的有毒、有害气体,或捕集生产尾气防止泄露;7号工厂中的过滤塔是一种塔式过滤器。这些设备都是工厂1中没有的,很难直接从工艺作用的角度对其相似性进行判断,但它们是设备集的组成部分之一,必然对设备集整体相似性产生影响。
图13、图14分别展示了12号工厂、7号工厂的设备分布情况及对应的高斯混合模型。从图形上来看,图13a在最右边(47,4)处有取值(实际对应12号工厂的捕集器),这导致图13b在最右边有一个高斯分量。但该分量对应的设备较少,因此其系数值也很小,限制了该分量对模型整体的影响;另外,在y=4这一高度范围内,图13a的簇类要多于图8a,因而图13b的高斯分量数也多于图12a。但图13b从左往右第1、2、4、5号分量的形状和位置与图12a非常接近,这是导致两模型相似度较高的重要原因。7号工厂中的设备聚类后在图14a中只有两个簇类,分别代表7号工厂中的箱式容器及过滤塔。其对应的高斯混合模型如图14b所示,也只有两个分量,第一个位于(8,4)处分量系数为0.698,第二个位于(11,3)处分量系数为0.286。图12a中1号工厂的第一个分量位于(6,4)处,是图12a与图14b中最相似的部分,两个工厂高斯混合模型的其余分量差异较大,这也是这两个工厂设备集相似度较低的直接原因之一。
上述内容从设备工艺作用及高斯混合模型取值两方面对比分析了12号工厂、7号工厂与工厂1之间的设备集相似性。通过与流程工厂专家交流讨论,专家们认为12号工厂与工厂1设备集的相似性的确比7号工厂与工厂1要高。这一计算结果符合流程工厂设计建模人员对工厂设备集相似的客观认识与专业预期,较为准确的区分了不同设备集之间的相似性。
受限于论文篇幅,无法在此处像12号工厂、7号工厂那样详细叙述每一组计算结果的分析过程,但为了对更多计算结果做有效性验证,也为了让专家判定结果更加客观,本文请流程工厂专家为每一组计算结果评级打分,以检验计算结果是否有效。打分共分五级:一级,计算结果完全符合专业预期,准确表现了两个设备集之间的相似性;二级,计算结果较为符合专业预期,能有效表现两个设备集之间的相似性;三级,计算结果能表现设备集之间的一部分相似性,但表现不够准确,与专业预期有一定差距;四级,计算结果与专业预期有较大差距,不能准确表现设备集之间的相似性;五级,计算结果背离专业预期,完全不能体现设备集之间的差异。本文共计算了四百多对设备集之间的相似度,并随机选取了取值较高、取值中等及取值较低共约占总量20%的实例进行分析打分。由于相似性本身就是人的主观认识,即使是专家也难免存在一定的主观性及误差。为了进一步降低这种误差,本文对每组结果都请3位专家同时打分再求其均值。
图15展示了基于本文测试数据的专家打分结果。图中横坐标表示设备集相似度,纵坐标表示得分。为了更好地展示打分结果,按相似度0.1间隔统计得分并求均值。例如,0.15处实际是相似度在0.1~0.2之间所有测试用例得分的均值。打分时取1~5的整数,并分别对第一部分和第二部分打分。取均值时按0.25间隔向上取整,最小取值跨度为0.5。如均值1.8向上取2.0,均值1.2取1.0,均值1.25则取1.5。因为第一部分和第二部分均已按0.25做了四舍五入,所以整体打分不再舍入,而是直接将第一部分和第二部分相加再除以2。图中0.05、0.85、0.95处没有取值,是因为没有介于该相似度范围内的测试用例。
从图15可知,专家打分表现出了3个规律:①专家的整体打分较为理想,均值介于1.5~3之间;②相似度第一部分得分普遍优于相似度第二部分;③按设备集相似度从0~1变化,专家打分呈逐渐下降趋势。通过与流程工厂专家的深入交流,本文认为专家打分呈现上述规律的主要原因如下:①整体打分介于一级半到三级之间,表明专家认为绝大多数情况下本文的计算结果都是比较合理、比较有效的。没有四级、五级得分,说明本文方法遵循了流程工厂设备集的构成规律,计算结果是可信的、可参考的。②第一部分得分优于第二部分,既是因为专家认可本文设备数量相似性计算结果,也是因为第一部分的相似性判断要比第二部分更加直观、简单。设备数量是一个标量,而设备构成是基于流程工业的设备集合,人在主观判断相似性时更容易对第一部分下结论,对于设备构成则需要更多思考比对,有时甚至会犹豫不决。③专家打分逐渐降低,说明人更容易对相似度较高的对象进行判断。对于不太相似的设备集,人虽能观察到其差异但却不太容易对这种差异做准确的量化评判。事实上,本文正是通过一系列的计算代替人对相似性做量化处理,这也从侧面体现了本文的研究意义。综合上述实验及分析,流程工厂专家认为基于本文方法计算得到的设备集相似度整体上符合专业人员对设备集相似性的认识,能对不同设备集的相似程度进行区分,是当前较为切实有效的设备集相似度计算方法。
本文首先对流程工厂设备集相似度计算问题进行了介绍,然后提出了一种具体的设备集相似度计算方法,最后对该方法的有效性进行了实验验证。本文认为,设备集相似性由设备数量的相似性及设备构成的相似性两方面共同决定,因此分别计算了相似度第一部分和相似度第二部分。相似度第一部分利用Jaccard系数思想,以设备数量的差和比作为度量;相似度第二部分则根据设备分布的聚类特性,用高斯混合模型去描述每个设备集的分布,再用JS散度度量概率分布间的差异,并利用反三角正切函数将JS值映射到[0,1]之间;最后,用第一部分与第二部分的乘积作为设备集相似性的最终度量。基于本文研究所用模型库,经流程工厂专家人工判定,利用本文方法所得计算结果符合专业人员的预期和认识,是一种较为切实有效的流程工厂设备集相似度计算方法。
但本文仍有很多地方值得进一步研究。首先,本文方法中的高斯混合模型分量数K和归一化常数α0都是在具体模型库上经过反复计算后观察得到的,它的取值具有一定的经验性且与数据相关,不能直接应用到其他数据集上;其次,本文方法在将设备值投影到二维坐标空间时,利用了覃力等[4]提出的分类树思想,这在一定程度上影响了设备的分布规律。若能找到K、α0的一般取值规律,或找到更加有效的坐标投影方法,有望让本文方法的应用更加简单且范围更广。