基于后继任务的工作流挖掘方法

文档序号:6437683阅读:226来源:国知局
专利名称:基于后继任务的工作流挖掘方法
技术领域
本发明属于工作流技术领域,尤其是工作流技术领域中的工作流挖掘技术,是用于从工作流日志中挖掘工作流过程模型的技术。
背景技术
工作流过程被定义为根据一系列的程序或规则将文件、信息或活动从一个参与者传输到另一个参与者的整个或部分业务过程。工作流系统是一个用于集中管理工作流程的自动化系统。现在,大多数信息系统使用已定义的工作流模型描述任务关系并维护整个业务过程。但随着业务过程越来越多、单个业务过程越来越复杂,工作流模型不可避免会有低效,甚至是出错的问题。为此对业务过程进行监控并加以改进是很有必要的,而这些需求都需要获得工作流模型的真实行为。工作流挖掘技术旨在解决上述问题。工作流挖掘技术通过对工作流执行过程中累积的大量数据进行有效的分析,获得真实场景人员和工作流过程的运行情况,为后期的工作流模型的监控和分析提供支持。工作流挖掘技术通过分析事件日志,反向推导出与之对应的工作流过程模型。本发明只考虑事件日志信息完整且不存在噪声的情况,不考虑事件日志信息可能的不完备和信息错误的情况。工作流挖掘是从事件日志(执行序列)中反推出过程模型的技术,然后用一定的方式将任务间的关系表达出来(当前,一般使用Petri网描述整个工作流模型)。事件日志是事件轨迹的集合,每条轨迹由多个事件组成。工作流挖掘技术分析事件日志并从中计算出任务间关系,主要是因果关系、选择关系和并发关系。目前,工作流网是工作流过程建模领域比较流行的一种建模方法,工作流网是一类特殊的Petri网。Petri网能很清晰地描述过程模型中的顺序、选择、循环、以及并发与同步结构,在描述过程模型方面,具有一些优点形式化的语义,直观的图形表示,易于理解, 坚实的数学理论基础和成熟的分析技术等,因此Petri网是比较成熟和流行的过程建模工具。Petri网从结构上来讲,Petri网是一个三元组PN= (P,T,F),其中P是库所(place) 集合,T是变迁(transition)集合,且P η T = Φ,F = (PXT) U (TXP)是库所与变迁之间的弧线集合,· χ = {y e ρ U Tl (y,X) e F}表示一个库所或者变迁的前集,χ ·= {y e ρ υ T| (χ, y) e F}表示一个库所或者变迁的后集。工作流网与普通Petri网相比较,有两个特殊条件一是在工作流网中有两个特殊的库所,分别称为起始库所i与结束库所0,起始库所没有输入,结束库所没有输出;第二个条件是在库所ο与库所i之间添加一个辅助变迁C构成的扩展模型PN = (P,T U {V}, FU {(o,t*),(t*,i)})是强连通的。这里,变迁表示工作流的活动,库所与token的分布表示工作流的执行状态,Petri网的点火条件表示活动的执行条件,总的来讲,工作流网能够通过Petri网结构清楚表达工作流的业务过程的逻辑。在工作流网中,变迁(transition) 代表工作流中的任务,任务之间的依赖关系通过和库所的连接来表示,托肯(token)在库所集中的分布情况表示过程模型的状态。
依据Petri网理论,工作流网中的一个任务(变迁表示)的可执行条件为,该任务所对应的变迁的前置库所中都各有一个托肯(token),称为可点火条件,有时又称为使能条件(enabled)。一个任务(变迁表示)的点火规则是从发生点火的变迁的所有输入库所中各移除一个托肯,向发生点火的变迁的所有输出库所各添加一个托肯。对应到工作流系统中,一个任务的执行步骤是判断前置条件,执行任务,设置后置条件。前置条件是指一个任务能够执行的前提条件,即任务的可执行条件,一个任务只有在获得了所有的可执行条件的情况下,该任务才能执行。后置条件是指一个任务完成后,在该任务结束之前,该任务所做的一些善后处理,它可能告知整个过程的结束,也可能为其后继任务设置前置条件。因此,工作流引擎在分析过程定义和决定任务的执行时,可以记录当前即将结束的任务的所有后继任务。工作流挖掘是从事件日志(执行序列)中反推出过程模型的技术,如果反推出来的过程模型工作流网描述,那么工作流挖掘的本质就是事件日志(执行序列)方向构造工作流网的技术,在工作流网中三元组结构PN= (P,T,F)中,其中变迁集合直接由工作流日志(执行序列)中的任务集合组成,因此挖掘工作就变为挖掘其中的库所集以及库所集与变迁集之间的连接弧线,这个反推技术需要借助任务关系(relation)的分析,现有的α方法,α +方法,α++方法和β方法都是基于这种思路设计的。目前,基于事件日志的工作流挖掘方法主要有α方法,α +方法,α++方法和β方法。其中α方法,α +方法和α++方法日志中的事件只是简单的任务名称,β方法日志中的事件含有任务的开始和结束信息。α方法只能处理SWF网结构约束的过程模型,不能处理短循环结构、隐式因果依赖结构和隐式库所结构;α +方法扩展了 α方法的挖掘能力,它能够挖掘短循环结构;α++方法进一步扩展α方法的挖掘能力,它能够挖掘出大部分的隐式因果依赖结构;β方法引入新的事件类型,它能够挖掘符合SWF网结构约束的过程模型、 短循环结构,但不能处理隐式因果依赖结构和隐式库所结构。虽然大部分已知的工作流挖掘方法都会考虑一些事件类型,例如时间戳、操作人员等,但现有工作流挖掘方法都是通过分析事件日志中的任务紧邻关系挖掘任务间的因果关系和并发关系,进而挖掘任务间的选择关系。这些方法虽然可以挖掘出一部分工作流模型,但对于像隐式因果依赖和隐式库所却很难挖掘,甚至不能挖掘。在上述的基于事件日志的工作流挖掘方法中,α++方法的挖掘能力是最强的,该方法虽然能挖掘出SWF结构、短循环结构、大部分隐式因果依赖结构,但不能处理隐式库所结构,并且α++方法在挖掘隐式因果依赖结构时需要采用复杂的逻辑任务关系分析,这大大提高了该方法的复杂度。

发明内容
本发明要解决的技术问题是提供一种基于后继任务(从当前任务获得执行权限的任务的集合)的工作流挖掘方法,该方法不仅能扩展工作流挖掘方法的可挖掘范围,而且能简化挖掘工作流模型中的因果依赖关系和潜在并发关系。本发明的技术方案为基于后继任务的工作流挖掘方法,首先通过分析事件日志中任务,包括对工作流的事件日志中后继任务进行分析;它以事件日志为输入,以Petri网描述的工作流模型为输出结果;后继任务是当前任务执行完成后,它将执行权限转交给的任务的集合。该方法引入事件类型使得工作流日志中含有当前任务的后继任务,该挖掘方法整体流程如图1所示。包含步骤(如图2所示)(1)初始化该流程的返回值N(Petri网描述的工作流模型),依据Petri网的结构定义,N由库所集Pw、任务集Tw和弧线集Fw构成。(2)分析事件日志W,计算出任务集Tw、起始任务T1和结束任务I;(3)调用relation^·印rocess过程获得因果关系矩阵M2和潜在并发关系与并发关系矩阵M3;(4)根矩阵M2和M3,计算出初始任务关系集\ ;(5)对初始任务关系集)(w进行修正,计算出修正任务关系集X' ff;(6)去除修正任务关系集X' w中的冗余元素,计算出最终任务关系集Yw;(7)根据Yw,计算出库所集Pw ;(8)根据Yw和Pw,计算出弧线集Fw ;(9)返回Petri网描述的工作流过程模型N。在以上的流程中,使用到relation^·印rocess过程计算出矩阵M2和M3, relationPreprecess 的步骤如下(1)将顺序关系应用于事件日志W,计算出顺序关系矩阵M1 ;(2)使用因果依赖关系(含显式因果依赖关系与隐式因果依赖关系),再依据顺序关系矩阵M1,划分显式因果依赖关系和隐式因果依赖关系,从而计算出因果依赖关系矩阵 M2;(3)使用潜在并发关系、并发关系和顺序关系矩阵M1,计算出潜在并发关系与并发关系矩阵M3。在该方法的relation^·印rocess中,需要对日志中的任务关系进行预处理,计算出日志中所有任务间的任务关系。日志中的任务间关系预处理方法(如图3所示)包括顺序关系、因果依赖关系、潜在并发关系、显式因果依赖关系、隐式因果依赖关系、并发关系、 不相关关系和非并发关系。通过分析事件的先后关系可获得顺序关系,而通过分析事件日志中的事件,即当前任务和后继任务,直接获得任务间的因果依赖关系和潜在并发关系。顺序关系、因果依赖关系和潜在并发关系是所有任务关系的基础,其它任务关系都从这三种关系推导出来。具体的预处理过程为从任务的顺序关系获得任务顺序关系矩阵M1,该矩阵记录了所有任务间的顺序关系;然后,通过分析事件集获得任务间的因果依赖关系并生成因果依赖关系矩阵,并通过隐式因果依赖关系区分因果依赖关系矩阵中的显式依赖关系和隐式因果依赖关系,计算出修正后的因果依赖关系矩阵M2 (该矩阵中1表示显式因果依赖, 2表示隐式因果依赖);再通过分析事件集获得任务间的潜在并发关系矩阵,通过并发关系往该矩阵中,最终得到潜在并发关系与并发关系矩阵M3(该矩阵中1并发关系,2表示潜在并发关系)。在预处理中,因果依赖关系和潜在并发关系都是从事件日志中以直接的方式获得的。通过分析因果关系矩阵M2和潜在并发关系与并发关系矩阵M3,获得初始任务关系集\,初始任务关系集\的每个元素由前驱任务集和后继任务集构成,前驱任务集中的每个任务都与后继任务集中的每个任务存在因果依赖关系,而前驱任务集和后继任务集中的元素之间存在非并发关系。对初始任务关系集Xw进行修正,计算出修正任务关系集该发明属于工作流领域中的工作流挖掘技术,工作流挖掘是从事件日志(执行序列)中反推出过程模型的技术,在反推流程中要对任务关系进行分析和处理,然后依据任务关系反推过程模型的结构。针对初始任务关系集\中包含的显式因果依赖关系和隐式因果依赖关系的元素需要进一步分析。如果删除该元素与隐式因果依赖关系有关的所有任务之后,该元素的前驱任务集不为空而后继任务集为空,就说明该元素过度合并,需要将显式因果依赖关系和隐式因果依赖关系分割开来,具体的分割方式为将前驱任务集的隐式因果依赖关系的任务与显式因果依赖关系的任务划分为两个任务集,然后分别与该元素的后继任务集重组以形成两个新的任务关系元素。本发明的有益效果是该方法不仅提升了工作流挖掘方法的挖掘能力(能够挖掘出隐式库所结构),而且简化挖掘因果依赖关系和潜在并发关系的过程。因为隐式库所不影响工作流模型的行为,所以当前所有的过程挖掘方法都不关注这一特殊结构。但隐式库所显示出任务间的冗余关系,这在某种程度上会有性能和安全隐患。该方法第一次关注了隐式库所结构,它可以挖掘出部分的隐式库所结构,这可以为工作流模型的分析、验证和监控提供更好的支持。本发明与现有方法相比通过在工作流日志中引入后继任务,设计基于后继任务的关系预处理流程和方法,并组成完整的基于后继任务的工作流挖掘方法,该方法不仅能扩展工作流挖掘方法的可挖掘能力,而且能简化挖掘工作流模型中的因果依赖关系(含显式因果依赖关系与隐式因果依赖关系)和潜在并发关系。


图1为基于后继任务的工作流挖掘方法的流程图。图2为基于后继任务的工作流挖掘方法的主要流程。图3为任务间关系预处理方法。图4为本发明实例中获得的任务间顺序关系矩阵。图5为本发明实例中获得的任务间因果关系矩阵(含显式因果依赖关系与隐式因果依赖关系)。图6为本发明实例中获得的任务间潜在并发关系与并发关系矩阵。图7为本发明实例挖掘出的工作流过程模型。图8为本发明实例能挖掘的工作流模型,该模型包含隐式库所。
具体实施例方式本发明主要是使用新的事件类型并通过任务间关系预处理获得日志中的所有任务间关系,以及在α方法的基础上添加了对任务关系集的修正步骤。该挖掘方法整体流程如图1所示。其具体实施如下1、该方法的主要流程如图2上半部分所示。(1)第1步,初始化该流程的返回值N(Petri网描述的工作流模型),依据Petri 网的结构定义,N由库所集Pw、任务集Tw和弧线集Fw构成。(2)第2步,分析事件日志计算出任务集Tw(日志中所包含的所有名称不同的任务),每个执行轨迹σ的起始任务集T1和结束任务集 ^。
C3)第3步,调用relation^·印rocess过程对任务关系进行预处理,该过程返回因果依赖关系矩阵和潜在并发关系与并发关系矩阵。(4)第4步,根据relation^·印rocess生成的因果依赖关系矩阵M2和潜在并发关
系与并发关系矩阵M3生成初始任务关系集)(w,其元素可表示为 < 前驱任务集,后继任务集>。(5)第5步,检测初始关系任务集中同时包含显式因果依赖关系与隐式因果依赖关系的元素并在必要时做出相应的修正,以生成修正任务关系集X' ff0将前驱任务集PS和后继任务集SS分别分割成PS'、PS"和SS'、SS",若PS'和PS"非空而SS"为空,则说明该元素存在过度合并的情况,需要将该元素分割成<PS',SS>和<PS",ss>。(6)第6步,通过删除X' w中冗余的元素,计算出最终的任务关系集Yw。(7)第7步,计算出工作流模型的库所集Pw,其元素为Yw中的元素、起始库所和结束库所的集合。(8)第8步,根据Pw和Yw获得工作流模型的变迁弧集Fw。(9)最后一步,返回工作流模型N。2、该方法的relation^·印rocess过程如图2下半部分,该过程应用图3所描述的任务间关系预处理方法。(1)第1步,应用顺序关系,分析事件日志并获得顺序关系矩阵虬。(2)第2步,首先,应用因果依赖关系分析事件日志中的所有事件,获得因果依赖关系矩阵礼;然后,应用隐式因果依赖关系和M1往矩阵M2中加入隐式因果依赖关系,使得M2 矩阵可以区分显式因果依赖和隐式因果依赖。(3)第3步,首先,应用潜在并发关系分析事件日志中的所有事件,计算出潜在并发关系与并发关系矩阵M3 ;然后,应用并发关系和M1往矩阵M3中加入并发关系,使得M3矩阵含有真实存在并发关系的任务信息。下面通过具体的实例来说明本发明的实施。本发明的实例将从事件日志中挖掘出图7的工作流模型,该模型由11个库所、11 个变迁构成。表1为实验程序的事件日志,该事件日志将作为本发明实例的输入数据。表1实验程序的事件日志
权利要求
1.基于后继任务的工作流挖掘方法,其特征是基于事件日志的工作流挖掘,它以事件日志为输入,以Petri网描述的工作流模型为输出结果;该方法引入事件类型使得工作流日志中含有当前任务的后继任务,后继任务是指当前任务执行完成后将执行权限转交给的任务的集合;该方法具体包含以下步骤(1)设置要挖掘的工作流过程模型初值N= (Pff, Tff, Fw),其中Pw = Tw = Fw = Φ ;(2)分析事件日志W,计算出任务集Tw、起始任务T1和结束任务Ttj;(3)调用relation^·印rocess过程获得因果关系矩阵M2和潜在并发关系与并发关系矩阵M3 ;(4)根据矩阵M2和M3,计算出初始任务关系集\;(5)对初始任务关系集)(w进行修正,计算出修正任务关系集X'ff;(6)去除修正任务关系集X'w中的冗余元素,计算出最终任务关系集Yw;(7)根据Yw,计算出库所集Pw;(8)根据Yw和Pw,计算出弧线集Fw;(9)返回Petri网描述的工作流过程模型N。
2.根据权利要求1基于后继任务的工作流挖掘方法,其特征是步骤(2)调用 relation^·印rocess过程做任务间关系预处理,计算出因果关系矩阵M2和潜在并发关系与并发关系矩阵M3,其具体包括以下步骤(1)将顺序关系应用于事件日志W,计算出顺序关系矩阵M1,该矩阵记录了所有任务间的顺序关系;(2)使用因果依赖关系(含显式因果依赖关系与隐式因果依赖关系),再依据顺序关系矩阵M1,划分显式因果依赖关系和隐式因果依赖关系,从而计算出因果依赖关系矩阵M2;(3)使用潜在并发关系、并发关系和顺序关系矩阵M1,计算出潜在并发关系与并发关系矩阵M3。
3.根据权利要求1所述的基于后继任务的工作流挖掘方法,其特征是在步骤(4)中, 对初始任务关系集\进行修正。初始任务关系集)(w中的元素是由 < 前驱任务集,后继任务集 > 构成,其中前驱任务集中的每个任务都与后继任务集中的每个任务存在因果依赖关系(包含显式因果依赖关系与隐式因果依赖关系),而前驱任务集和后继任务集之中的任务之间存在非并发关系。应用修正步骤将初始任务关系集) 中那些过度合并的元素进行重新分割以获得修正任务关系集χ' w ;该修正步骤只针对\中同时含有显式因果依赖关系和隐式因果依赖关系的元素;该修正步骤又可分为如下两步骤(ι)判断步骤首先,删除该元素中与隐式因果依赖关系有关的所有任务;如果该元素的前驱任务集不为空而后继任务集为空,就说明该元素存在过度合并的情况,需要执行分割步骤;(2)分割步骤将前驱任务集的隐式因果依赖关系的任务与显式因果依赖关系的任务划分为两个任务集,然后分别与该元素的后继任务集重组以形成两个新的任务关系元素。
4.根据权利要求2所述的基于后继任务的工作流挖掘方法,其特征是需要使用若干任务间关系预处理方法假设W是基于E的工作流日志,其中Ε = τ[θ](θ e Τ*)0假设任务a,b e Τ,那么可以获得如下的任务关系(1)因果依赖关系(标记为在a[e]e σ件下,若存在σ e W,b e θ,则任务b依赖于任务a;(2)潜在并发关系(标记为如果满足以下条件,任务a和任务b在W中有潜在的并发关系;a)在t[θ ] e σ条件下,存在a e θ且^^ G θ ;b)在t e τ,t[ θ J G σ t[ θ2] e O2J. O1, O2 e W 的条件下,不存在 a e θ” b00Rb e θ 2, α0θ2。(3)隐式因果依赖关系(标记为—wb)当且仅当在W中,存在a^w 6并且不存在β〉wb ο
5.根据权利要求1或2所述的基于后继任务的工作流挖掘方法,其特征是具体流程是输入W= {0l,σ2,...}带后继任务的事件日志; 输出N = (Pff, Tff, Fff)以Petri网描述的工作流模型; 再进行基于后继任务的工作流挖掘。
全文摘要
基于后继任务的工作流挖掘方法,基于事件日志的工作流挖掘,它以事件日志为输入,以Petri网描述的工作流模型为输出结果;该方法引入事件类型使得工作流日志中含有当前任务的后继任务,后继任务是指当前任务执行完成后将执行权限转交给的任务的集合;包含以下步骤(1)设置要挖掘的工作流过程模型初值;(2)分析事件日志W,计算出任务集TW、起始任务TI和结束任务TO;(3)调用relationPreprocess过程获得因果关系矩阵M2和潜在并发关系与并发关系矩阵M3;(4)根据矩阵M2和M3,计算出初始任务关系集XW;本发明组成完整的基于后继任务的工作流挖掘方法。
文档编号G06Q10/00GK102332125SQ201110349828
公开日2012年1月25日 申请日期2011年11月8日 优先权日2011年11月8日
发明者王栋毅, 胡昊, 葛季栋, 骆斌 申请人:南京大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1