MathJax.Hub.Config({tex2jax: {inlineMath: [['$', '$'], ['\\(', '\\)']]}});
  哈尔滨工业大学学报  2017, Vol. 49 Issue (11): 171-177  DOI: 10.11918/j.issn.0367-6234.201705095
0

引用本文 

任磊, 任明仑. 复杂事件处理的自适应制造情景识别方法[J]. 哈尔滨工业大学学报, 2017, 49(11): 171-177. DOI: 10.11918/j.issn.0367-6234.201705095.
REN Lei, REN Minglun. Adaptive context based situation identification based on complex event processing[J]. Journal of Harbin Institute of Technology, 2017, 49(11): 171-177. DOI: 10.11918/j.issn.0367-6234.201705095.

基金项目

国家自然科学基金(71531008);国家自然科学基金面上项目(71271073)

作者简介

任磊(1988—),男,博士研究生;
任明仑(1969—),男,教授,博士生导师

通信作者

任明仑, renml@hfut.edu.cn

文章历史

收稿日期: 2017-05-17
复杂事件处理的自适应制造情景识别方法
任磊, 任明仑     
教育部过程优化与智能决策重点实验室(合肥工业大学),合肥 230009
摘要: 制造过程中的任务、自然条件、电力水平等环境因素,制约物体状态及其关系的变化.智能制造单元需要自适应的对不同情境约束下的事件和复杂情形及时理解判断,提出基于复杂事件处理(Complex event processing, CEP)的情境约束情景识别方法,以实时作出合理的优化决策.针对忽视情境约束对事件判别的影响,构建基于情境约束的多层次事件模型,给出同生、情境、协同等事件新算子,提出基于事件聚合的制造情景模型与演算过程.针对情景识别知识库中模式规则生成的不足,通过整合物体数据与环境数据建立映射关联,将感知信息转化为情境事件图谱.通过综合序数、名义变量等距离计算和自适应熵权法,提出改进的混合聚类方法处理事件图谱实例属性的多样性和关联性,构建知识库以为情景实时识别提供服务支持.运用4个真实数据集和1个制造过程仿真数据集进行实验,均验证本文模型和方法的有效性,适用于大规模学习问题,并阐明情境因素能显著提升复杂制造应用中的事件判断、情景识别的准确性.
关键词: 情境约束     数据流     复杂事件     情景识别     混合聚类方法    
Adaptive context based situation identification based on complex event processing
REN Lei, REN Minglun     
Key Laboratory of Process Optimization and Intelligent Decision Making of Ministry of Education, Hefei University of Technology, Hefei 230009, Anhui, China
Abstract: In the manufacturing process, environmental factors such as tasks, natural conditions, power levels, etc., restrict the state change of objects and their relationships. Intelligent manufacturing units need to adaptively understand and judge events and complex situations under different context constraints, and a adaptive situation identification method based on complex event processing is proposed naturally, to make real-time optimization decision reasonable. In view of the phenomenon that the influence of context constraints on event discrimination is neglected, a context-aware hierarchical event model is built, and new operators of events such as contemporaneity, context and collaboration are given, while manufacturing situation model and aggregation process are proposed. Aiming at the shortage of generating method on situation model in knowledge base, the mapping association between an object and environment data is established firstly, and such sensed information is transformed into context based events. Integrating the distance calculation of ordinal, nominal variable and adaptive entropy weight method, a improved mixed clustering method is put forward to deal with the diversity and relevance of complex event instance attributes, providing service support for real-time situation identification. Finally, 4 real data sets and 1 simulation data set of are employed for manufacturing process. Experiment results have verified the validity and adaption of the proposed model and method in large-scale problem, and expounded that context factors can significantly improve the accuracy of event judgment and situation recognition in complex manufacturing applications.
Key words: context constraints     data stream     complex event     situation identification     mixed clustering method    

物联网、云计算、大数据等新兴信息技术的应用,使得制造单元具有高度智慧性[1],能通过感知、识别当前发生事件而采取最优决策.由于环境的动态性和制造过程的复杂性,需实时关注设备、人员、环境等状态,产生海量的多模态时变数据流.每一条数据流都反映制造过程某一方面的状态变化,共同刻画了所面临的制造情景.如何快速处理这些大规模数据以理解当前发生情形,实时地把各种不同来源的信息转化为决策利用的知识成为一项基本挑战.CEP作为一种新兴流数据处理技术[2-3],能够抽取有意义的事件,通过顺序、聚合、因果等事件算子发现事件关系[4],从而识别更高决策价值的复杂事件模式.

很多学者运用CEP技术对制造系统底层的流数据处理[5]、事件发现[6]到高层的情景挖掘[7]与实时决策[8]进行广泛研究.但假定周围环境固定不变,忽视任务、时空等情境对物体状态的影响,如同样的设备温度20度在Task1时为正常事件,而在Task2时则为异常事件.情境制约着主体对事物的认知,事件更全面的理解、自适应的决策均需要情境支持[9].虽有学者对制造领域情境分类建模,但仍将其作为事物的一种状态属性,并未与其他属性区分,更未分析其对事件判别的制约.现有事件模式生成主要依赖于人工定义[10],难以获取全面知识且容易出现错误和组合爆炸.机器学习方法也只应用于简单场景,涉及的实体、数据维度较少,难以解决制造过程大数据的新问题[14].基于现有CEP系统不足[11],将多层次情境考虑到事件理解过程中,提出基于情境约束的自适应情景识别方法,通过改进混合聚类进行模式挖掘和在线实时识别,从而优化任务执行决策活动.

1 基于情境约束的多层次事件模型

多层次情境制约物体状态变化和事件判别,给出情境约束的事件模型和基于事件聚合的情景演算过程.

1.1 情境数据流

决策单元所关注物体某一属性状态随时间不断变化,形成一条不同时刻下的动态数据序列即数据流DS:

$ {\rm{DS}} = \left\{ {v\left( {{a_1}} \right),v\left( {{a_2}} \right), \cdots ,v\left( {{a_n}} \right)} \right\}. $ (1)

式中:a为物体属性,v(ai)为第i时刻属性值.如图 1中设备转速曲线即是一条t0tl时刻的动态数据流.

图 1 情境数据流 Figure 1 Context based data stream

智能单元关注事物处于动态环境中,其属性值在不同环境下具有不同分布特征、状态变化模式.物体属性状态随着情境变化而形成时间序列即情境数据流CSS:

$ \begin{array}{l} {\rm{CSS}} = \left\{ {\left\langle {v\left( {{a_1}} \right),{\rm{c}}{{\rm{t}}_1}} \right\rangle ,\left\langle {v\left( {{a_2}} \right),{\rm{c}}{{\rm{t}}_2}} \right\rangle , \cdots ,\left\langle {v\left( {{a_n}} \right),} \right.} \right.\\ \left. {\left. {{\rm{c}}{{\rm{t}}_n}} \right\rangle } \right\}. \end{array} $ (2)

式中:v(aj)为第j时刻情境约束ctj该物体属性a的数值,ctj为第j时刻情境值.如图 1中,t0到tj的情境为(TASK1, EL1),tjtl的情境为(TASK1, EL2),转速曲线是一条在两类情境下的数据流.两类情境的数据特征存在差异,(TASK1, EL1)下设备转速水平明显高于(TASK1, EL2),原因是电力水平的高低影响运转速度.

具有相同情境约束的不同时刻物体状态数据构成同类情境数据流段CSE,描述物体状态在同一情境下的数值分布:

$ {\rm{CSE}} = \left\{ {\left\langle {v\left( {{a_1}} \right),{\rm{c}}{{\rm{t}}_k}} \right\rangle ,\left\langle {v\left( {{a_2}} \right),{\rm{c}}{{\rm{t}}_k}} \right\rangle , \cdots ,\left\langle {v\left( {{a_m}} \right),{\rm{c}}{{\rm{t}}_k}} \right\rangle } \right\}. $ (3)

式中:v(ai)为第i时刻情境约束ctk下属性a的数值,ctk为同类情境约束.图 1t0tj的数据流为同类情境数据流段CSE1tjtl是同类情境数据流段CSE2.

情境是描述物体相关行为和状态变化时所处的环境信息,可表示为CT:

$ CT = \left( {V,T} \right). $ (4)

式中:V为情境数值,T为时间集.制造情境包含任务、自然环境、时空信息等.情境具有时变性,不同时刻形成情境序列流CTS=(ct1, ct2, …, ctn),cti为第i时刻情境值.情境具有层次性,高层抽象情境是底层情境的泛化表示,情境层次结构通过有向无环图描述H=(CTH, WH).如图 2,CTH为某一层次情境类,WH⊆CTH×CTH为情境节点层次关系,节点间偏序关系${ \prec _\mathit{H}}$刻画情境类之间的具体化关系、泛化关系.

图 2 情境层次结构 Figure 2 Context hierarchy

给定情境节点CTi, CT′iH,存在∀X∈CSS, CTi(X)⊂CT′i(X),则CTi $ { \prec _\mathit{H}}$ CT′i即从CT′i到CTi存在有向边.CT′i比CTi更泛化,而CTi比CT′i更具体,如情境(Task1, *)比(Task1, EL1)、(Task1, EL2)更抽象.如果没有CTi≠(φ, …, φ)且CTi $ { \prec _\mathit{H}}$ CT′i,则CT′i为一个具体化类.某情境节点在层次结构中没有更具体化情境时即CTkH¬∃CT′kH满足CT′k $ { \prec _\mathit{H}}$ CTk,则CTk为最具体化情境CTH,本节应用最具体化情境.

1.2 基于情境约束的事件和情景模型

事件是系统关注物体有决策意义的行为和状态变化,如温度异常、转速波动等.简单事件是系统中最小的不可分割的物体状态的瞬时事件e

$ e = \left( {{\rm{ID}},{\rm{type}},{\rm{time}},v\left( a \right)} \right). $ (5)

式中:ID为标识符,type为事件类型,time为发生时间,v(a)为属性值.如设备温度在t0时刻100度为温度异常简单事件e1=(123, 温度, t0, 100>50).

1.2.1 情境事件

由于情境制约着事件的理解,现有事件模型难以适应动态环境的决策需求.通过添加情境因素,拓展构造情境事件cte:

$ {\rm{cte}} = \left( {{\rm{ID}},{\rm{type}},{\rm{time}},v\left( a \right),{\rm{ct}}} \right). $ (6)

式中:ct为情境约束,同一状态值在不同情境下具有差别的意义.如设备温度t0时100度,为TASK1下正常事件,TASK1要求温度(50, 150).而t2时100度,为TASK2下异常事件,TASK2要求温度(50, 80).

情境数据流中每个数值对应一个简单情境事件,按照时间顺序形成情境事件流CTE:

$ {\rm{CTE}} = \left( {{\rm{type}},{\rm{state}}\left( {{\rm{cte}}} \right),{\rm{ct}}} \right). $ (7)

式中:type为事件类型,state(cte)为所有事件集,ct为情境约束集.图 1中运转曲线对应一条情境事件流,同样的设备转速在两个情境下分别为异常和正常事件.

1.2.2 基于事件聚合的情景模型

情景是系统所关注的特定环境下发生的多种关联事件集合,即通过简单事件聚合的复杂事件模式.如TASK1t0时刻设备出现温度、速度异常事件,则聚合为故障情景.后文中情景与复杂事件是相同概念SA:

$ {\rm{SA}} = \left( {{\rm{type}},{\rm{state}}\left( {{\rm{CTE}}} \right),F} \right). $ (8)

式中:type为情景类型,state(CTE)为多种情境事件集,F为情境事件算子集.制造情景是制造过程中某一时刻所有物体状态变化,是多种事件的同时发生而聚合成的复杂事件,只需同生算子而不考虑事件间的顺序、选择、因果关系等.

同生算子⇑:给定事件E1E2,如两者同时发生,则表示为E1E2.如设备故障情景,是通过温度、转速异常事件的同生运算得到.由于同生算子并不能保障两个事件的情境约束相同,将两个没有关联的事件聚合到一起并没有决策意义,出现风发牛不相及现象.

针对情境对事件聚合的约束,提出情境算子⇓:给定事件E1E2,如两者发生在相同情境约束下,表示为E1E2.两事件同时满足同生和情境算子得到协同算子⇕:给定事件E1E2,如两者同时发生在相同的情境约束下,则为E1E2.

多条事件流协同聚合形成一条新的复杂事件图谱流即情景流SAS=(sa1, sa2, …, san),整个演算过程如图 3所示.给定两个简单事件流E1E2,分别表示机器温度和震动事件,需要对持续到达的两个子事件按照业务规则进行组合,通过同生算子、情境算子得到复合事件图谱,最终运用函数Z进行情景判别,确认当前情景模式并给出相关描述.

图 3 事件聚合过程 Figure 3 Event polymerization process
2 基于复杂事件处理的自适应情景识别方法 2.1 基于复杂事件处理的情景识别过程

制造情景识别包括事件与情境抽取、事件图谱构建、模式匹配和情景确认四个阶段,如图 4.根据领域知识对环境数据分类,构建多个情境类,假定情境类已经获得.分析不同情境类下物体状态分布规律,界定事件类型并构建复杂事件图谱.通过线下的混合聚类对大量事件实例学习,形成情景知识库.最终将实时感知数据与知识库中事件模式匹配识别当前情景,具体步骤如下:

图 4 基于复杂事件处理的情景识别过程 Figure 4 Situation identification based on complex event processing

1) 事件、情境抽取:参照相关规则模型,对感知到的人、物、环境数据进行简单事件和情境判别;

2) 复杂事件图谱构建:根据2.2节事件聚合算子建立事件与情境关联,聚合得到事件图谱实例;

3) 情景匹配:计算当前事件实例与知识库中情景模式的相似度,基于贴近原则选择满足阀值的情景;

4) 情景确认:分析匹配情景特征,实施应对方案.如未满足阀值,则将当前实例作为新情景存贮到知识库,更新情景知识.

2.2 事件图谱的构建

根据领域知识将感知到的多维数据转化为简单事件,形成事件流和事件矩阵,通过聚合算子构建复杂事件图谱以界定所面临的情形.

2.2.1 数据矩阵

给定某一制造加工场景,感知的物体状态检测变量数为m,情境变量为kn个时刻获取海量数据为OBCT两个时空数据矩阵:

$ \begin{array}{l} \mathit{\boldsymbol{OB}} = \left| {\begin{array}{*{20}{c}} {{x_{11}}}&{{x_{12}}}& \cdots &{{x_{1m}}}\\ {{x_{21}}}&{{x_{22}}}& \cdots &{{x_{2m}}}\\ \vdots&\vdots&\vdots&\vdots \\ {{x_{n1}}}&{{x_{n2}}}& \cdots &{{x_{nm}}} \end{array}} \right|,\\ \mathit{\boldsymbol{CT}} = \left| {\begin{array}{*{20}{c}} {c{t_{11}}}&{c{t_{12}}}& \cdots &{c{t_{1k}}}\\ {c{t_{21}}}&{c{t_{22}}}& \cdots &{c{t_{2k}}}\\ \vdots&\vdots&\vdots&\vdots \\ {c{t_{n1}}}&{c{t_{n2}}}& \cdots &{c{t_{nk}}} \end{array}} \right|. \end{array} $ (9)

式中:OB中第i行为第i时刻物体状态各个变量的值,第j列为第j个变量在不同时刻的值. CT中第i行为第i时刻各个情境因素的值,第j列为第j个情境因素在不同时刻下的值.

情境约束类通过专家知识界定,共获得 p个情境类为CT=(CT1, CT2, …, CTp).通过建立“物-环境”的数据关联,原有两个数据矩阵合并为一个情境数据矩阵CTX

$ \mathit{\boldsymbol{CTX}} = \left| {\begin{array}{*{20}{c}} {{x_{11}}}&{{x_{12}}}& \cdots &{{x_{1m}}}&{{\rm{C}}{{\rm{T}}_1}}\\ {{x_{21}}}&{{x_{22}}}& \cdots &{{x_{2m}}}&{{\rm{C}}{{\rm{T}}_2}}\\ \vdots&\vdots&\vdots&\vdots&\vdots \\ {{x_{n1}}}&{{x_{n2}}}& \cdots &{{x_{nm}}}&{{\rm{C}}{{\rm{T}}_p}} \end{array}} \right|. $ (10)

CTX中第i行为第i时刻在情境约束CTi下物体状态各个变量值,xij为第i时刻在情境约束CTi下物体第j个变量值.

2.2.2 事件图谱

CTX中某一变量具有连续值域,这些值间虽然差距较大,但在特定情境约束下具有相同意义,如设备正常转速分布在(800, 1 500).基于制造知识和统计分析,将变量的波动区间映射为不同事件类型如正常、异常事件等[12].假定第i个变量在情境约束CTk下正常、异常波动分别为(ximax, ximin)norCTk、(ximax, ximin)abnCTk,则事件的映射关系:

$ {x_i} = \left\{ \begin{array}{l} {E_{{\rm{nor}}}},\;\;\;{\rm{if}}\;\;\left[ {{x_i} \in \left( {x_i^{\max },x_i^{\min }} \right)_{{\rm{nor}}}^{{\rm{C}}{{\rm{T}}_{\rm{k}}}}} \right];\\ {E_{{\rm{abn}}}},\;\;\;{\rm{if}}\;\;\left[ {{x_i} \in \left( {x_i^{\max },x_i^{\min }} \right)_{{\rm{abn}}}^{{\rm{C}}{{\rm{T}}_{\rm{k}}}}} \right]. \end{array} \right. $ (11)

CTX中的每一个数值均映射为情境约束事件,则得到复杂事件图谱TEQ

$ \mathit{\boldsymbol{TEQ = }}\left| {\begin{array}{*{20}{c}} {{e_{11}}}&{{e_{12}}}& \cdots &{{e_{1m}}}&{\mathit{C}{\mathit{T}_1}}\\ {{e_{21}}}&{{e_{22}}}& \cdots &{{e_{2m}}}&{\mathit{C}{\mathit{T}_2}}\\ \vdots&\vdots&\vdots&\vdots&\vdots \\ {{e_{n1}}}&{{e_{n2}}}& \cdots &{{e_{nm}}}&{\mathit{C}{\mathit{T}_p}} \end{array}} \right|. $ (12)

TEQ中第i行表示第i时刻在情境约束CTi下出现的事件集合,反映CTi下所关注的情景状态,xij为第i时刻在情境约束CTi下物体第j个变量的事件类型.

根据同生、情境和协同聚合算子,进一步剔除TEQ进中不符合业务逻辑和运算规则的事件,从而得到最终的情境约束复杂事件图谱CTEQ

$ \mathit{\boldsymbol{CTEQ}} = \left| {\begin{array}{*{20}{c}} {{{e'}_{11}}}&{{{e'}_{12}}}& \cdots &{{{e'}_{1m}}}\\ {{{e'}_{21}}}&{{{e'}_{22}}}& \cdots &{{{e'}_{2m}}}\\ \vdots&\vdots&\vdots&\vdots \\ {{{e'}_{n1}}}&{{{e'}_{n2}}}& \cdots &{{{e'}_{nm}}} \end{array}} \right|. $ (13)
2.3 改进混合聚类方法

CTEQ是一个由多条事件流聚合构成的事件图谱,出现现有混合聚类没有的数值类型,且变量在不同模式中具有差异权重,以往方法只对数值、名义两类变量的权重基于主观经验分配[13].本文通过统一的距离公式,运用自适应熵权改进混合聚类方法.给定n个情景对象集X=(X1, X2, …, Xn),每个对象是一组事件集合,混合聚类的目标就是将X划分为k簇,每个簇为一个情景模式,以最小化簇间距离为目标函数:

$ {Z_{{\rm{OF}}}} = \sum\limits_{l = 1}^k {\sum\limits_{i = 1}^n {{u_{il}}d\left( {{x_i},{Q_l}} \right)} } . $ (14)

xi为第i个对象,Ql为第l个簇的中心点,d(xi, Ql)为第i个对象到第l个簇中心的距离.

2.3.1 改进距离计算

距离d可通过相似度计算即d=SIM(xi, Qj)= $ {\rm{sim(CT)}}\sum\limits_{\mathit{i} = 1}^\mathit{k} {{\mathit{w}_\mathit{i}}} {\rm{sim(}}\mathit{E}{\rm{)}}$,如果CT不同,则事件相似度为零. CT为名义值,通过布尔运算d(CTi, CTj)= $ \left\{ {\begin{array}{*{20}{l}} {1,{\rm{C}}{{\rm{T}}_i} = {\rm{C}}{{\rm{T}}_j};}\\ {0,{\rm{C}}{{\rm{T}}_i} \ne {\rm{C}}{{\rm{T}}_j}.} \end{array}} \right.$.求得.重点分析序数、语义型值的相似度,得到统一的事件距离公式:

$ {\text{sim}}\left( E \right) = \left( {{d_{{\rm{sq}}}} + {d_{{\rm{nm}}}} + {d_{{\rm{sem}}}}} \right). $ (15)

dsq为序数距离,dnm为名义距离,dsem为语义距离.

(a) 序数距离:序数集合L=(l1, l2, …, lg),li是语言序数值,g是序数值数,语言序数lrls的心理亲近度为πrs,∇为映射π: L2→∇,∇=(πrs|r, s∈(1, 2, …, g))为所有语言序数心理亲近度的集合[14],即π=(π12*, π23*, …, πn-1, n*),πi-1, i*>0.根据已知序数亲近度向量计算不同序数的距离相似度.

(b) 名义距离:考虑共现概率,相对分类属性Aj属性Ai的两值xy距离用maxdij(x, y)=Pi(z|x))+Pi(zc|y) -1计算[15]. z为值域Dom(Aj)子集,zcz的补集,Pi(z|x)表示属性i值为x的数据对象在属性j上的值属于z的条件概率,Pi(zc|y))表示属性i值为y的数据对象在属性j上的值属于zc的条件概率.

(c) 语义距离:语义结构树中,如x处在从y到根节点路径上,则xy的层次祖先.如xy处在同一层次,两点是相等的即xy. LCA(x, y)为xy最低层次的共同祖先,任意两点的共同点为LCP(x, y)[16]

$ {\rm{LCP}}\left( {x,y} \right) = \left\{ \begin{array}{l} x\;或\;y,x \equiv y;\\ x,如果\;x\;是\;y\;的祖先;\\ y,如果\;y\;是\;x\;的祖先;\\ {\rm{LCP}}\left( {x,y} \right),其他. \end{array} \right. $ (16)

语义层次树中任意两节点之间的距离通过D(x, y)=dx+dy-2dLCP(x, y)得到,dxdydLCP(x, y)为节点xy、LCP(x, y)位置到根节点的层次距离.

2.3.2 事件权重分配

每个事件类型在情景模式聚类中重要性不同,通过自适应熵权法分配事件权重[17].从i事件类型看,聚类后事件l样本落在第j情景中心的概率为$ \mathit{P}_{\mathit{il}}^\mathit{k}\frac{{\sum\nolimits_{\mathit{j} = 1}^\mathit{N} {\mathit{\mu }_{\mathit{ijl}}^\mathit{k}} }}{{\sum\nolimits_{\mathit{i} = 1}^\mathit{C} {\sum\nolimits_{\mathit{j} = 1}^\mathit{N} {\mathit{\mu }_{\mathit{ijl}}^\mathit{k}} } }}$,以完全无序为参考初始状态,事件类型i的熵为$ \mathit{H}_{\mathit{il}}^\mathit{k}{\rm{ = }}\frac{1}{{\mathit{K}{\rm{ln}}\;\mathit{C}}}\sum\limits_{\mathit{i} = 1}^\mathit{C} {\sum\limits_{\mathit{j} = 1}^\mathit{L} {\mathit{P}_{\mathit{il}}^\mathit{k}{\rm{ln}}\;\mathit{P}_{\mathit{il}}^\mathit{k}} } $,则整个系统熵为$ \mathit{H = }\sqrt {\sum\limits_{\mathit{k} = 1}^\mathit{K} {\left( {\mathit{w}_\mathit{k}^2\mathit{H}_\mathit{K}^2} \right)} } $.由于min(·)1/2与min(·)等效,则得到$ \mathit{E}\left( \mathit{H} \right) = \sum\limits_{\mathit{k} = 1}^\mathit{K} {\left( {\mathit{w}_\mathit{k}^2\mathit{H}_\mathit{K}^2} \right)} $,从而得出$ {\mathit{w}_\mathit{k}} = \frac{\mathit{\lambda }}{{2{\mathit{H}_\mathit{k}}}}$.由于$ \frac{\mathit{\lambda }}{{2{\mathit{H}_\mathit{k}}}}{\rm{与}}\frac{{\rm{1}}}{{{\mathit{H}_\mathit{k}}}}$等效,将事件类型权重为$ {\mathit{w}_\mathit{k}} = \frac{{\rm{1}}}{{{\mathit{H}_\mathit{k}}}}$. Hk为分类后事件类型的无序程度,1-Hk分类后事件类型有序程度,得到调整的权重为wk=$ \frac{{1 - {\mathit{H}_\mathit{k}}}}{{\left( {\mathit{K - }\sum\nolimits_{\mathit{k} = 1}^\mathit{K} {{\mathit{H}_\mathit{k}}} } \right){\mathit{H}_\mathit{k}}}}$,进一步可到$ {{\mathit{w}}_{\mathit{k}}}\xleftarrow[\sum\nolimits_{\mathit{k}=1}^{\mathit{K}}{{{\mathit{w}}_{\mathit{k}}}}]{{{\mathit{w}}_{\mathit{k}}}}$为当前聚类下事件类型的最优化权重.

2.3.3 改进聚类算法步骤:

Step 1  计算数据对象xi之间的距离,得出k阀值的邻居集;

Step 2  选择中心性最大点作为初始簇类点$ \rm{Cen}\left( {{\mathit{x}}_{\mathit{i}}} \right)\frac{\left| \rm{Nb}\left( {{\mathit{x}}_{\mathit{i}}} \right) \right|}{\left| \rm{Nbmax} \right|}$,Nb(xi)是对象xik邻居集,Nbmax为最大邻居数;

Step 3  计算该对象到所有簇中心的距离d(xi, Ql)和簇间距离B(W, Q),将其分配到目标函数最小的簇中,更新相应簇的中心和属性权重;

Step 4  当所有对象都被分配后,重新计算数据对象到当前簇中心间的距离d(xi, Ql);

Step 5  重复Step4,直到迭代过程中没有改变簇的数据对象存在;

Step 6  得到满足目标的k个簇SA=(SA1, SA2, …, SAk).

2.4 基于模式匹配的情景识别算法

知识库共聚类得到k个情景SA=(SA1, SA2, …, SAk),SAi为第i个情景模式,簇中心为向量SAi*=(e1*, e2*, …, em*, CTi).当前感知数据Xt0=(x1, x2, …, xm, CTt0),为识别Xt0为哪一种情景,将其转化为CTEt0=(e1, e2, …, em, CTt0),然后与知识库中情景匹配,选择相似度最大情景模式作为识别结果:

$ \begin{array}{l} Z = {\rm{agrmax}}\left( {{\rm{SIM}}\left( {{\rm{SA}}_1^ * ,{\rm{CT}}{{\rm{E}}_{t0}}} \right),{\rm{SIM}}\left( {{\rm{SA}}_2^ * ,{\rm{CT}}{{\rm{E}}_{t0}}} \right),} \right.\\ \;\;\;\;\;\;\left. { \cdots ,{\rm{SIM}}\left( {{\rm{SA}}_k^ * ,{\rm{CT}}{{\rm{E}}_{t0}}} \right)} \right). \end{array} $ (17)
3 实验分析

为验证本文改进混合聚类和情景识别方法的效果,首先利用已有的4个真实数据集进行实验对比,然后通过仿真制造过程数据集,进一步检测本文方法的优势.所有实验环境为Windows10操作系统,仿真开发环境为Microsoft Visual C++ 2010,硬件是CPU为Intel Core I5 2.6 GHz、内存为4 GB的鸿基台式机,算法通过Matalabe编码实现.

3.1 真实数据集

从UCI学习库中找到Zoo、Heart、Flag、German Credit4个数集,如表 1.与K-Prototype、DBSCAN、K-Center算法比较,通过聚类准确率r、平均聚类纯度purity两指标验证算法有效性.实验结果如表 2,在Zoo数据集上,本文算法比K-Center在聚类准确率r、平均聚类纯度purity上效果稍差外,比K-Prototype、DBSCAN均高,可能原因是Zoo包含分类属性较多,K-Center在处理该类型数据具有优势.在其他三个数据集上,本文算法均优于K-Prototype、DBSCAN、K-Center算法,效果优良.

表 1 数据集描述 Table 1 The description of data sets
表 2 4类算法结果比较 Table 2 Comparison results of 4 algorithms
3.2 仿真制造过程

对奇瑞智能化生产车间调研,以某一零部件加工情景进行建模实验,分析智能设备如何在复杂动态环境下对事件聚类学习、在线实时识别.关注事件为代加工产品到达、设备运行状态(温度、运转速度、震动频率),所处情境约束包括任务类型、电力水平.参照实际情况生成1 000个时刻的数据分布,图 5中共有两类情境约束为CT1(Task1, EL1)、CT2(Task1, EL2),4类情景分别为0到200时刻的一般正常情景、200到500时刻的一般异常情景,500到800时刻的低压正常情景、800到1 000时刻的低压异常情景.

图 5 情境数据流 Figure 5 Context based data stream

将生成数据转化不同类型事件,构建情境事件图谱.运用改进混合聚类进行模式学习,与K-Prototype、K-Center比较,结果如表 3.本文算法在r、purity上均优于另外两种算法,具有良好的聚类效果.同时,由于考虑属性权重和不同数值类型,在时间上相对其他算法略差,但差别较小,仍具有较好的效率.

表 3 算法结果比较 Table 3 Comparison results of 3 algorithms

考虑外部环境对事件聚类的影响,对有、无情境约束两类数据集应用改进算法聚类分析如表 4.在200到500、500到800两个时间段,物体在温度、震动等上具有相似数值和分布模式.不考虑任务类型和电力水平,则将它们聚成一类则只得到3个情景模式.与实际情形出现偏差,有一类情景没有识别出来,导致r、purity较低.实际上,两个时间段由于电力水平不同,分别为正常电压下的异常情景和低压下的正常情景.考虑情景约束,得到4个情景模式与实际相符,显著提升识别的精度.

表 4 情境约束下的聚类结果比较 Table 4 Comparison results of situation clustering in context constraint

将原有1 000数据实例扩展到2 000、3 000、4 000、5 000、6 000 5种情形,情景数目仍为4,进行实验3.如图 6(a),本文算法不论有无情境约束,时间均随数据增长而增加但仍在接受范围内,具有良好的适应性. 图 6(b)中有情境约束时算法需计算情境相似度,增加计算复杂度,整体时间略大于无情境约束.有情境约束的准确率随数据增长基本稳定,整体准确率明显高于无情境约束.无情境约束呈现下降趋势,可能由于聚类知识重叠,出现具有相同状态值但不同情境的实例.

图 6 算法的时间和准确率 Figure 6 The time and precision rate of the proposed algorithm
4 结论

1) 考虑情境因素对物体状态变化的影响,构造基于多层次情境约束的事件模型,提出基于同生、情境、协同等事件算子的情景聚合过程.

2) 建立物体状态与环境信息关联,界定事件的数据区间,构建复杂事件图谱实例.

3) 整合名义、序数和语义距离计算,运用自适应熵权法分配事件权重,提出改进的混合聚类方法进行情景模式学习.

4) 真实和仿真数据集实验均证明本文方法的优势,验证情境约束促进事件判断、情景识别的效果.上述结论为动态环境下的复杂事件处理与情景决策,提供了理论基础和应用参考.

参考文献
[1]
LI B H, HOU B C, YU W T, et al. Applications of artificial intelligence in intelligent manufacturing: a review[J]. Frontiers of Information Technology & Electronic Engineering, 2017, 18(1): 86-96.
[2]
TERROSO-SAENZ F, VALDES-VELA M, SKARMETA-GOMEZ A F. A complex event processing approach to detect abnormal behaviors in the marine environment[J]. Information Systems Frontiers, 2016, 18(4): 765-780. DOI: 10.1007/s10796-015-9560-7
[3]
BRUNS R, DUNKEL J, MASBRUCH H, et al. Intelligent M2M: Complex event processing for machine to machine communication[J]. Expert Systems with Applications, 2015, 42(3): 1235-1246. DOI: 10.1016/j.eswa.2014.09.005
[4]
赵会群, 孙晶, 杨岩坤, 等. 复杂事件模式检测与CEP测试数据生成算法研究[J]. 计算机学报, 2017, 44(1): 256-272.
ZHAO Huiqun, SUN Jing, YANG Yankun, et al. Study on algorithm of checking event pattern and generating test data for complex event processing[J]. Chinese Journal of Computers, 2017, 44(1): 256-272. DOI: 10.11897/SP.J.1016.2017.00256
[5]
O'DONOVAN P, LEAHY K, BRUTON K, et al. Big data in manufacturing: a systematic mapping study[J]. Journal of Big Data, 2015, 2(1): 1-22. DOI: 10.1186/s40537-014-0007-7
[6]
CUGOLA G, MARGARA A. Complex event processing with T-REX[J]. Journal of Systems & Software, 2012, 85(8): 1709-1728.
[7]
CHONGWATPOL J, SHARDA R. RFID-enabled track and traceability in job-shop scheduling environment[J]. European Journal of Operational Research, 2013, 227(3): 453-463. DOI: 10.1016/j.ejor.2013.01.009
[8]
YU M, LU R, HONG S H. A real-time decision model for industrial load management in a smart grid[J]. Applied Energy, 2016, 183(12): 1488-1497.
[9]
CADENAS J T, MAR N, N, et al. Context-aware fuzzy databases[J]. Applied Soft Computing, 2014, 25(C): 215-233.
[10]
ZHU A, GAO R, UCHIDA S. Could scene context be beneficial for scene text detection?[J]. Pattern Recognition, 2016, 58(10): 204-215.
[11]
LEE O J, JUNG J E. Sequence Clustering-based automated rule generation for adaptive complex event processing[J]. Future Generation Computer Systems, 2016, 66(2): 100-109.
[12]
孙锴, 高建民, 高智勇, 等. 基于故障图谱的企业级故障模式识别方法[J]. 计算机集成制造系统, 2015, 21(2): 519-527.
SUN Kai, GAO Jianmin, GAO Zhiyong, et al. Plant-wide fault pattern recognition method based on fault-spectrum[J]. Computer Integrated Manufacturing Systems, 2015, 21(2): 519-527.
[13]
PATHAK A, PAL N R. Clustering of mixed data by integrating fuzzy, probabilistic, and collaborative clustering framework[J]. International Journal of Fuzzy Systems, 2016, 18(3): 339-348. DOI: 10.1007/s40815-016-0168-y
[14]
GARE, A-LAPRESTA J, LUIS, et al. Ordinal proximity measures in the context of unbalanced qualitative scales and some applications to consensus and clustering[J]. Applied Soft Computing, 2015, 35(C): 864-872.
[15]
NOORBEHBAHANI F, MOUSAVI S R, MIRZAEI A. An incremental mixed data clustering method using a new distance measure[J]. Soft Computing, 2015, 19(3): 731-743. DOI: 10.1007/s00500-014-1296-7
[16]
HSU C C, HUANG Y P. Incremental clustering of mixed data based on distance hierarchy[J]. Expert Systems with Applications: an International Journal, 2008, 35(3): 1177-1185. DOI: 10.1016/j.eswa.2007.08.049
[17]
黄海新, 孔畅, 于海斌, 等. 自适应特征熵权模糊C均值聚类算法的研究[J]. 系统工程理论与实践, 2016, 36(1): 219-223.
HUANG Haixin, KONG Chang, YU Haibin, et al. Research on adaptive entropy weight fuzzy c-means clustering algorithm[J]. Systems Engineering-Theory & Practice, 2016, 36(1): 219-223. DOI: 10.12011/1000-6788(2016)01-0219-05