CN104700055A - 一种多概率rfid事件流上复杂事件检测方法 - Google Patents
一种多概率rfid事件流上复杂事件检测方法 Download PDFInfo
- Publication number
- CN104700055A CN104700055A CN201410701339.4A CN201410701339A CN104700055A CN 104700055 A CN104700055 A CN 104700055A CN 201410701339 A CN201410701339 A CN 201410701339A CN 104700055 A CN104700055 A CN 104700055A
- Authority
- CN
- China
- Prior art keywords
- state
- event
- active
- node
- nfa
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种面向多概率RFID事件流的复杂事件检测方法,该方法针对现在常用Naive方法在检测概率RFID事件流中复杂事件时出现检测时间长,内存开销大,检测效率低的问题,提出了一种使用NFA(Nondeterministic Finite Automaton)联合DAG(Directed Acyclic Graph)去实现概率RFID事件流的复杂事件检测方法,可以大大改善Naive方法存在上述问题。本发明改进了当前基于自动机的复杂事件检测方式,对现有的复杂事件检测技术做了扩展,使其能够比较高效地在概率事件流上完成复杂事件的检测,提高了事件在不确定事件流上的检测能力。
Description
技术领域
本发明涉及射频数据处理领域,更具体地,涉及一种多概率RFID事件流上复杂事件检测方法。
背景技术
射频识别(Radio Frequency
Identification, RFID)技术是一种利用射频通信实现的非接触自动识别技术。由于RFID技术极易受环境影响和干扰, RFID阅读器本身的漏读、脏读和多读现象以及对RFID数据处理过程中带来的主观不确定性,造成了RFID应用整个生命周期中数据的不确定性。不确定性成为RFID数据普遍具有一个重要特性。随着RFID技术日益广泛的应用,这就引发了学术界和工业界对具有不确定数据的RFID事件检测技术特别是RFID复合事件检测技术产生了浓厚的研究兴趣。
为了能够从实时到达的事件流的海量事件中进行有效复杂事件检测,目前已开展了很多研究。虽然SASE,Cayuga和Esper等传统复杂事件处理原型系统能够比较完整地提供了复杂事件处理的基本功能,但由于它们没有考虑输入数据流中RFID数据的不确定性,只能处理确定的RFID数据。对于不确定的RFID数据,不具备高效的处理能力,不能处理带有概率信息的数据流,更不能从中检测出所有可能的复杂事件。一些传统通用的复杂事件检测方法, 如基于Petri 网、基于树、基于图和基于自动机等检测方法,由于其设计目的主要针对确定性数据,故无法有效检测带有不确定性数据的事件。随着RFID技术日益发展,需求研究出现能够检测和处理不确定性数据的事件检测系统和方法。
目前关于RFID不确定数据检测或处理的问题,主要开展了Cascadia及Lahar和其他一些相关的研究项目。但由于它们主要关注从原始RFID数据上建立概率数据模型,并在此模型上做相关查询,对不确定数据流上复杂事件处理阶段的研究较少,也没有针对概率事件流在复杂事件检测过程中做详细讨论与优化。当前使用最为广泛的基于列举可能世界实例的Naive方法,主要通过根据数据的不确定性,将每个数据取不同值的情况进行组合,列出所有可能的组合,对这些可能的组合再根据检测模式表达式去匹配和检测出符合条件复杂事件。当事件流中的事件较多时,可能的组合数量非常大,呈指数增长,且对每个可能的数据流实例进行扫描和模式匹配的开销非常巨大,导致这种方法检测效率不高,难以满足实际应用的需求。特别是当RFID事件流中事件是由多个可能发生的事件组成,存在多概率事件流模型时,上述这种Naive检测方法检测效率会更加低下。
发明内容
本发明一种多概率RFID事件流上复杂事件检测方法,该方法使用自动机NFA结合多个有向无环图DAG去实现多概率RFID事件流上的复杂事件检测,改进了常规的NFA序列扫描和序列过程, 扩展了现有复杂事件检测技术,大大提高了事件在不确定RFID数据流上的检测能力。
为了达到上述技术目的,本发明的技术方案如下:
一种多概率RFID事件流上复杂事件检测方法,包括以下步骤:
S1:按照复杂事件检测模式表达式建立相应的NFA,建立并初始化活动状态集合s(Active);
S2:循环扫描活动状态集合S(Active)中每一个状态,判断自动机NFA处在活动状态集合S(Active)中该状态时,接收了检测模式表达式中每一种事件类型(a,b,c)中每一个可能选项事件(a(i),b(i),c(i))后,自动机NFA的状态是否会发生转移,如果发生转移,记录转移后状态,接着执行步骤S3;如果没有发生转移,则跳到步骤S4执行;
S3:判断自动机NFA发生状态转移前活动状态集合S(Active)中状态是否为初态,若是初态,则建立一个新的有向无环图DAG,给该DAG添加一个由初始状态转移接收事件的实例和接收该事件后转移到新状态组成的新节点和一条由上述新节点指向初态点的有向边,并在活动状态集合S(Active)上增加转移变换后新状态和删除活动状态集合S(Active)中变换前的状态;若不是初态,就给该DAG建立一个由初始状态转移接收事件的实例和接收该事件后转移到新状态组成的新节点,并在该新建节点和DAG上所有状态转移前的节点之间建立以该新建节点为起点有向边,加入转移变换后的状态到活动状态集合S(Active)中,并删除转移变换前的状态;
S4:循环扫描活动状态集合S(Active)中的下一个状态;
S5:循环扫描接收事件SEQ(a,b[],c)中的下一个可能选项事件;
S6:对于活动状态集合s(Active)中的每一个状态为终态节点,以该节点为起点,对其所在的DAG进行深度优先搜索,如果能够到达初态0,则该路径上的所有节点的事件就构成一个匹配结果序列,该匹配结果序列也即是检测出的复杂事件。
本发明中,使用NFA(Nondeterministic
Finite Automaton)去匹配概率RFID事件流中满足条件事件,扩展了传统的NFA应用范围,实现了概率RFID事件流中事件快速匹配方法;利用DAG(Directed Acyclic Graph)结构去存储概率事件流中海量事件检测结果,实现了概率事件流中事件检测结果的快速存储和查找功能;利用NFA和DAG联合作用,实现了一种可以高效检测概率RFID事件流的复杂事件方法,克服了现在常用Naive方法在检测概率RFID事件流中复杂事件时出现检测时间长,内存开销大,检测效率低的问题,扩展了现有的复杂事件检测技术,提高了事件在不确定RFID数据流上的检测能力。
进一步地,所述活动状态集合S(Active)在建立自动机NFA阶段中的初始值仅包含自动机NFA的初态。
进一步地,在所述步骤S6中,当检测结束时,以逆序方式即从活动状态集合s(Active)中的终态节点向最初态节点方式沿着有向图搜索,构造输出结果序列。
与现有技术相比,本发明技术方案的有益效果是:本发明所提出的一种多概率RFID事件流上复杂事件检测方法,采用了基于自动机(NFA)和多个有向无环图(DAG)相结合的方法共同去检测多概率RFID事件流中复杂事件,克服现在常用Naive方法上存在数据组合数量大,数据扫描和模式匹配的开销多,检测效率非常低的缺点,大大提高了事件在不确定RFID数据流上的检测能力。本发明改进了当前基于自动机的复杂事件模式检测方法,对现有的复杂事件检测技术做了扩展,使其能够比较高效地在多概率不确定数据上完成复杂事件的检测。
附图说明
图1是本发明的算法组成图;
图2是本发明的算法工作流程图;
图3是本发明算法检测过程图;
图4是本发明算法在不同可选事件数目下检测时间示意图;
图5是本发明算法在不同可选事件数目下事件内存消耗示意图;
图6是本发明算法在不同可选事件数目下事件吞吐量示意图。
具体实施方式
附图仅用于示例性说明,不能理解为对本专利的限制;
为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;
对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
下面结合附图和实施例对本发明的技术方案做进一步的说明。
实施例1
本实施例对一种多概率RFID事件流上复杂事件检测方法的具体检测过程进行详细的说明。在本实例中使用VC+6.0软件开发一个数据发生器,然后使用数据发生器产生模拟的RFID概率事件流, 通过控制数据发生器参数生成不同类型个数的事件, 可能选项事件的个数,事件的概率分布等。为了考察本发明提算法在处理多概率事件流时的性能,实验从检测时间,内存消耗和事件吞吐量三个方面进行估;实验对比方法为传统Naive算法。实验检测的复杂事件表达式为SEQ(a,b[],c),其中b[]表示有一个或多个b事件。实验中滑动窗口大小统一设置的为4000。
本实例算法组成结构图如图1所示,算法检测流程图按照图2所示进行,图3是本发明算法具体检测过程图,按其具体检测步骤可将其分为如下:
A、按照复杂事件检测模式表达式SEQ(a,b[],c)建立相应的NFA(见图3),建立并初始化活动状态集合s(Active)为0。
B、依次读取多概率RFID事件流中事件(见图3)。
C、由于活动状态集合S(Active)的当前状态为0, 当自动机NFA在0状态,时间戳为1时,接收了检测模式表达式中事件a(l1)或b(l1)的实例,根据NFA来转移状态, 当接收事件为a(n),自动机NFA会发生转移,状态转移为1,建立新图,添加一个新节点(a(11),1)和边指向状态为0的节点;当事件为b(l1),根据NFA可知状态不转移,更新活动状态为0和1;接着循环扫描活动状态集合S(Active)中的下一个状态和循环扫描事件SEQ(a,b[],c)中的下一个可能选项事件,直至结束。检测时间戳2,3,4,5检测过程具体如下:
1)、时间戳为2,当事件a(21)或b(21)到达时,在活动状态下,根据NFA转移规则,a(21)使状态由0转为1,添加新节点(a(2l),1)和指向状态O节点的边,在活动状态0下,根据NFA转移规则b(21)不使状态转移;在活动状态1下,根据NFA转移规则a(2l)不使状态转移;在活动状态1下,根据N队转移规则b(21)事件使状态由1转为2,添加一个新节点(b(21),2)和指向状态为(a(11),l)的节点的边;更新活动状态为(o,l,2);时间戳为3,当事件c(31)或e(31)到达时,当活动状态为0,b(31)或c(31)都不使NFA状态改变,当活动状态为1时,只有b(31)使NFA状态改变为2,当活动状态为2时,b(31)也可使N队状态由2转移为2,添加新节点(b(31),2),和两条分别指向(b(21),2)和(a(21),l)的边;当活动状态为2,c(31)使NFA状态改变为3,添加一个新节点(c(31),3)和指向(b(21),2)的节点的边;更新活动状态集为(0,2);
2)、时间戳为3,当事件c(31)或e(31)到达时,当活动状态为0,b(31)或c(31)都不使NFA状态改变,当活动状态为1时,只有b(31)使NFA状态改变为2,当活动状态为2时,b(31)也可使N队状态由2转移为2,添加新节点(b(31),2),和两条分别指向(b(21),2)和(a(21),l)的边;当活动状态为2,c(31)使NFA状态改变为3,添加一个新节点(c(31),3)和指向(b(21),2)的节点的边;更新活动状态集为(0,2);
3)、时间戳为4,当事件a(4l)或c(41)到达时,在活动状态O下,根据NFA转移规则b(21)事件使状态由0转为1,建立新图,添加一个新节点(a(4l),1)和指向状态为0的节点的边;在活动状态2下,根据NFA转移规则c(41)事件使状态由2转为3,添加一个新节点(c(41),3)和指向状态为(b(3l),3)的节点的边;
4)、时间戳为5,当事件a(5l)或b(51)到达时,在活动状态O下,根据NFA转移规则a(51)事件使状态由0转为1,建立新图,添加一个新节点(a(5l),1)和指向状态为0的节点的边;在活动状态1下,根据NFA转移规则b(51)事件使状态由1转为2,添加一个新节点(b(51),2)和指向状态为(a(4l),1)的节点的边。至此序列扫描完毕,共建立了如图3所示的两个有向无环图DAG。
D、在构建完成DAG后,在MMG的起点中找出状态为以自动机的接收态的所有节点作为起点,如图4中的(c(31),3)和c((41),3)节点,它们节点的储存的状态值都为3,(a(51),1)储存的状态为1, (b(51),2)不符合作为起点的要求。然后从(c(31),3)和c((41),3)这两个起点开始,沿着有向图开始搜索,找出所有到达起始态0节点的路径,这些路径上的所有事件就组成了复杂事件模式匹配的输出结果序列,如图3中,(c((41),3)到起始态点。共有两条路经,(c(31),3)到起始态点O有一条路径,遍历三条路径共有三个输出序列,最终的输出结果就为a(21)b(31)c(42)、a(11)b(21)b(31)c(41)和a(11)b(21)c(31)共三个匹配序列。DAG中检测序列结果路径的寻找,可以对每个DAG使用深度优先搜索方法,找出所有从开始,在终态结束的路径。路径上所有节点中包含的事件的序列就是检测结果序列。
图4本发明算法在不同可选事件数目下检测时间示意图。从图4中可以看到,相比Naive算法,本发明算法在节约检测时间方面有着一个明显提高。其主要原因在于本发明算法中,我们使用DAG去存储中间结果,能够减少无效事件组合个数,进而减少总的检测时间。从图4中,我们还可以看到,当事件可能选项事件数目较小时,本发明方法和Naive方法检测时间相差不大,但是随着事件可能选项事件数目增大,特别是5之后,Naïve呈指数上升,而本发明方法检测时间上升较为平缓,基本上可以保持在同一数量级。
图5是本发明算法在不同可选事件数目下事件内存消耗示意图。从图5可以看到,随着事件可能选项事件数目的增大,与Naive算法相比,本发明显著地提高了事件内存利用率。当事件可能选项事件数目小于3时,Naive检测和本发明事件内存消耗基本等同,但随着事件可能选项事件数增大时,由于世界实例呈指数增加,Naive方法的内存消耗会急剧上升,然而本发明算法内存消耗上升则相对平缓。
图6是本发明算法在不同可选事件数目下事件吞吐量示意图。从由图6可以看出,相比与Naive方法,本发明算法在事件吞吐量方面也有显著提高。随着事件可能选项事件数增大时,两种算法的事件吞吐量都会下降,但Naive方法下降较急剧,而本发明算法下降坡度则相对平缓,呈现较强事件检测能力。
相同或相似的标号对应相同或相似的部件;
附图中描述位置关系的用于仅用于示例性说明,不能理解为对本专利的限制;
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
Claims (3)
1.一种多概率RFID事件流上复杂事件检测方法,其特征在于,包括以下步骤:
S1:按照复杂事件检测模式表达式建立相应的NFA,建立并初始化活动状态集合s(Active);
S2:循环扫描活动状态集合S(Active)中每一个状态,判断自动机NFA处在活动状态集合S(Active)中该状态时,接收了检测模式表达式中每一种事件类型(a,b,c)中每一个可能选项事件(a(i),b(i),c(i))后,自动机NFA的状态是否会发生转移,如果发生转移,记录转移后状态,接着执行步骤S3;如果没有发生转移,则跳到步骤S4执行;
S3:判断自动机NFA发生状态转移前活动状态集合S(Active)中状态是否为初态,若是初态,则建立一个新的有向无环图DAG,给该DAG添加一个由初始状态转移接收事件的实例和接收该事件后转移到新状态组成的新节点和一条由上述新节点指向初态点的有向边,并在活动状态集合S(Active)上增加转移变换后新状态和删除活动状态集合S(Active)中变换前的状态;若不是初态,就给该DAG建立一个由初始状态转移接收事件的实例和接收该事件后转移到新状态组成的新节点,并在该新建节点和DAG上所有状态转移前的节点之间建立以该新建节点为起点有向边,加入转移变换后的状态到活动状态集合S(Active)中,并删除转移变换前的状态;
S4:循环扫描活动状态集合S(Active)中的下一个状态;
S5:循环扫描接收事件SEQ(a,b[],c)中的下一个可能选项事件;
S6:对于活动状态集合s(Active)中的每一个状态为终态节点,以该节点为起点,对其所在的DAG进行深度优先搜索,如果能够到达初态0,则该路径上的所有节点的事件就构成一个匹配结果序列,该匹配结果序列也即是检测出的复杂事件。
2.根据权利要求1所述的多概率RFID事件流上复杂事件检测方法,其特征在于,在所述步骤S1中,所述活动状态集合S(Active)在建立自动机NFA阶段中的初始值仅包含自动机NFA的初态。
3.根据权利要求1所述的多概率RFID事件流上复杂事件检测方法,其特征在于,在所述步骤S6中,当检测结束时,以逆序方式即从活动状态集合s(Active)中的终态节点向最初态节点方式沿着有向图搜索,构造输出结果序列。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410701339.4A CN104700055A (zh) | 2014-11-28 | 2014-11-28 | 一种多概率rfid事件流上复杂事件检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410701339.4A CN104700055A (zh) | 2014-11-28 | 2014-11-28 | 一种多概率rfid事件流上复杂事件检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104700055A true CN104700055A (zh) | 2015-06-10 |
Family
ID=53347155
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410701339.4A Pending CN104700055A (zh) | 2014-11-28 | 2014-11-28 | 一种多概率rfid事件流上复杂事件检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104700055A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110245237A (zh) * | 2018-03-09 | 2019-09-17 | 北京国双科技有限公司 | 事件预测方法及装置 |
CN111984861A (zh) * | 2020-07-30 | 2020-11-24 | 浙江邦盛科技有限公司 | 一种时序数据的复杂事件处理方法及系统 |
WO2023245911A1 (zh) * | 2022-06-24 | 2023-12-28 | 深圳前海微众银行股份有限公司 | 一种复杂事件检测方法及装置、存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100265801A1 (en) * | 2007-07-18 | 2010-10-21 | Times-7 Holdings Limited | Timing system and method of timing |
CN101883098A (zh) * | 2010-06-18 | 2010-11-10 | 大连海事大学 | Rfid设备网络环境下分布式复杂事件检测的系统及方法 |
CN102508640A (zh) * | 2011-10-27 | 2012-06-20 | 西北工业大学 | 基于任务分解的分布式rfid复杂事件检测方法 |
-
2014
- 2014-11-28 CN CN201410701339.4A patent/CN104700055A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100265801A1 (en) * | 2007-07-18 | 2010-10-21 | Times-7 Holdings Limited | Timing system and method of timing |
CN101883098A (zh) * | 2010-06-18 | 2010-11-10 | 大连海事大学 | Rfid设备网络环境下分布式复杂事件检测的系统及方法 |
CN102508640A (zh) * | 2011-10-27 | 2012-06-20 | 西北工业大学 | 基于任务分解的分布式rfid复杂事件检测方法 |
Non-Patent Citations (1)
Title |
---|
JIANHUA WANG ETAL.: "A complex event detection method for multi-probability RFID event stream", 《JOURNAL OF SOFTWARE》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110245237A (zh) * | 2018-03-09 | 2019-09-17 | 北京国双科技有限公司 | 事件预测方法及装置 |
CN111984861A (zh) * | 2020-07-30 | 2020-11-24 | 浙江邦盛科技有限公司 | 一种时序数据的复杂事件处理方法及系统 |
CN111984861B (zh) * | 2020-07-30 | 2022-10-11 | 浙江邦盛科技股份有限公司 | 一种时序数据的复杂事件处理方法及系统 |
WO2023245911A1 (zh) * | 2022-06-24 | 2023-12-28 | 深圳前海微众银行股份有限公司 | 一种复杂事件检测方法及装置、存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10110026B2 (en) | Wireless sensor network charging method for multi-charge nodes | |
Şimşek et al. | An intrinsic reward mechanism for efficient exploration | |
US20110307507A1 (en) | Identifying entries and exits of strongly connected components | |
CN104869581A (zh) | 经由无线传感器网络内的标签传播确定故障节点 | |
CN103400299B (zh) | 基于重叠点识别的网络重叠社团检测方法 | |
CN104951282A (zh) | 一种定时器管理系统及方法 | |
CN104700055A (zh) | 一种多概率rfid事件流上复杂事件检测方法 | |
CN102508640B (zh) | 基于任务分解的分布式rfid复杂事件检测方法 | |
CN104462657B (zh) | 基于Petri网复杂系统多设计方案的选择方法 | |
CN102663333B (zh) | 一种rfid系统中基于自适应混合查询树的标签防碰撞方法 | |
CN104700311B (zh) | 一种社会网络中的邻域跟随社区发现方法 | |
CN103488564A (zh) | 一种分布式实时测试系统多路测试数据压缩与归并方法 | |
CN102467670A (zh) | 基于免疫的异常检测方法 | |
Davoodabadi et al. | A new method for discovering subgoals and constructing options in reinforcement learning. | |
CN102629352B (zh) | 面向实时感知环境的复合事件模式匹配方法及系统 | |
CN103164230B (zh) | 一种基于新特征模型的需求建模及模型转换方法 | |
CN101609497B (zh) | 一种读取电子标签的方法 | |
CN109257763A (zh) | 无线传感器二维网络边界节点的判断方法 | |
Asmaran et al. | Chemical reaction optimization algorithm to find maximum independent set in a graph | |
CN106506183B (zh) | 网络社区的发现方法及装置 | |
Zhu et al. | Community mining in complex network based on parallel genetic algorithm | |
CN104408142A (zh) | 一种面向制造物联网海量乱序数据流复杂事件检测方法 | |
CN105930462A (zh) | 基于云计算平台的海量数据处理方法 | |
CN106559290B (zh) | 基于社团结构的链路预测的方法和系统 | |
CN107562914B (zh) | 基于资源掩码的需求响应资源快速定位方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150610 |