[发明专利]基于逻辑Petri网的循环并发结构的过程模型修正方法有效
申请号: | 201810780705.8 | 申请日: | 2018-07-17 |
公开(公告)号: | CN109192317B | 公开(公告)日: | 2022-08-30 |
发明(设计)人: | 杜玉越;滕苑秀;王路;亓亮;张福新;刘伟 | 申请(专利权)人: | 山东协力合智通信科技有限公司 |
主分类号: | G16H50/70 | 分类号: | G16H50/70;G16H40/20 |
代理公司: | 济南誉琨知识产权代理事务所(普通合伙) 37278 | 代理人: | 贾羽洁 |
地址: | 250100 山东省济南市历城区彩石街道*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供了一种基于逻辑Petri网的循环并发结构的过程模型修正方法,首先,通过添加标识库所集,给出普通/逻辑最优扩展校准,之后,根据连续日志动作在最优扩展校准中是否完整出现,分为静态或动态模型修正。静态模型修正是直接根据连续日志动作的标识库所集与相应变迁前集之间的关系,进行偏差定位,并根据逻辑Petri网进行静态模型修正。动态模型修正相对复杂,根据过程树,提出并发变迁集,通过连续日志动作的标识库所集与相应变迁前集之间的关系,进行偏差定位,并根据逻辑Petri网进行动态模型修正。基于逻辑Petri网动态修正模型简洁度更高,可以更好的描述活动之间的逻辑关系,在保持高拟合度的同时,提高了精确度。 | ||
搜索关键词: | 基于 逻辑 petri 循环 并发 结构 过程 模型 修正 方法 | ||
【主权项】:
1.一种基于逻辑Petri网的循环并发结构的过程模型修正方法,其特征在于,包括以下步骤:定义校准设A∈Λ,σ∈A*是A上的一条迹,且PN=(P,T;F,M),(a,t)∈(A∪{>>})×(T∪{>>})是一个动作,校准γ=(a1,t1)(a2,t2)…(a|γ|,t|γ|)是迹σ和模型PN之间的动作队列,且满足:①π1(γ)=σ,即迹中的动作序列产生迹σ;②mi[π2(γ)>mf,即模型中的动作序列产生一个完整的引发序列;其中,若a∈A且t=>>,则为日志动作;若a=>>且t∈T,则为模型动作;若a∈A且t∈T,则为同步动作;否则为非法动作;Γσ,PN是迹σ和模型PN之间所有校准的集合;定义最优校准设A∈Λ,σ∈A*是A上的一条迹,且PN=(P,T;F,M),称γ∈Γσ,PN为迹σ和模型PN之间的最优校准,当且仅当对
其中lc(a,t)为可能性代价函数,且对于日志动作和模型动作lc(a,t)=1,对于同步动作lc(a,t)=0;Γσ,PN,lc是迹σ、模型PN与可能性代价函数lc之间的最优校准集合,最优校准存在一个或者多个;定义过程树设A∈Λ,PN=(P,T;F,M)是一个Petri网,
是给定的操作符集,τ是不可见变迁,则有:①a∈A∪{τ}是一个过程树;②设PT1,…,PTn(n>0)是过程树,则
也是过程树;操作符集
中有4种操作符:×表示选择关系,即该操作符对应的子树只有一个会发生;→表示顺序关系,即该操作符对应的子树会顺序发生;
表示循环关系,即该操作符对应的子树是循环体;∧表示并行关系,即该操作符对应的子树会并行发生;步骤1:对普通扩展校准、普通最优扩展校准、逻辑扩展校准和逻辑最优扩展校准进行定义;定义普通扩展校准设A∈Λ,σ∈A*是A上的一条迹,且PN=(P,T;F,M);(a,t,p|set)∈(A∪{>>})×(T∪{>>})×{M|Pset}是一个动作,普通扩展校准β=(a1,t1,p1|set)(a2,t2,p2|set)…(a|β|,t|β|,p|β||set)是动作队列,且满足:①γ是迹σ和模型PN之间的校准;②M0是初始标志,存在M0[σ′>Mi,σ′为从π2(γ)模型活动的第1个变迁开始到第i个变迁之间的一条迹,0σ,PN,M|Pset为迹σ、模型PN与标识库所集M|Pset之间的普通最优扩展校准,当且仅当对于![]()
其中lc(a,t,p|set)为可能性代价函数,对于日志动作和模型动作lc(a,t,p|set)=1,对于同步动作lc(a,t,p|set)=0;Γσ,PN,M|Pset,lc是迹σ、模型PN、标识库所集M|Pset与可能性代价函数lc之间的普通最优扩展校准的集合,最优扩展校准存在一个或者多个;定义逻辑扩展校准设A∈Λ,σ∈A*是A上的一条迹,LPN=(P,T;F,M)是A上的一个逻辑Petri网,(a,t,p|set)∈(A∪{>>})×(T∪{>>})×{M|Pset}是一个动作,逻辑扩展校准βL=(a1,t1,p1|set)(a2,t2,p2|set)…(a|βL|,t|βL|,p|βL||set)是动作队列,且满足:①Γσ,LPN是迹σ和模型LPN之间的校准;②Mi|Pset为Mi状态下所有存在托肯的库所集,称为标识库所集;Γσ,LPN,M|Pset是迹σ、模型LPN与标识库所集M|Pset之间所有逻辑扩展校准的集合;定义逻辑最优扩展校准设A∈Λ,LPN=(P,T;F,M)是A上的一个逻辑Petri网,称βL∈Γσ,LPN,M|Pset为迹σ、模型LPN与标识库所集M|Pset之间的逻辑最优扩展校准,当且仅当对于![]()
其中lc(a,t,p|set)为可能性代价函数,对于日志动作和模型动作lc(a,t,p|set)=1,对于同步动作lc(a,t,p|set)=0;Γσ,LPN,M|Pset,lc是迹σ、模型LPN、标识库所集M|Pset与可能性代价函数lc之间的逻辑最优扩展校准的集合;步骤2:进行循环并发结构的静态模型修正;当过程模型描述的行为与事件日志记录的行为之间存在偏差时,为了使模型能重演日志中记录的行为,需要对现有模型进行修正;通过计算连续日志动作集合,遍历普通最优扩展校准定位偏差,对模型进行静态修正;下面给出计算连续日志动作集合算法,通过算法1,得到最优扩展校准中的连续日志动作;算法1计算连续日志动作集合算法输入:Petri网PN=(P,T;F,M),普通最优扩展校准Γσ,PN,M|Pset,lc;输出:连续日志动作集合CL;步骤(1):初始化连续日志动作集合CL;步骤(2):遍历Γσ,PN,M|Pset,lc,若存在连续的日志动作{(ai,>>,pi|set),…,(aj,>>,pj|set)},且ai和aj分别为网模型并发块的首尾活动;步骤(3):将符合条件的连续日志动作的添加到变迁{ai,…,aj}添加到CL集合中;步骤(4):输出连续日志动作集合CL;计算连续日志动作集合之后,需要通过定位偏差来确定偏差位置,给出算法2,能静态定位日志和模型之间的偏差;其中,pn|set表示标识库所集,是一个库所集合,tn表示单个变迁。算法2静态偏差定位算法输入:连续日志动作集合CL,普通最优扩展校准Γσ,PN,M|Pset,lc;输出:偏差位置D(pn|set,tn);步骤(1):初始化偏差位置D(pn|set,tn);步骤(2):遍历Γσ,PN,M|Pset,lc,若连续日志动作集合CL在普通最优扩展校准中已完整出现且发生,则pn|set为连续日志动作的首变迁ai的标志库所集,tn为首变迁ai;步骤(3):将得到的(pn|set,tn)并到D(pn|set,tn)集合中;步骤(4):输出偏差位置D(pn|set,tn);根据偏差位置,及逻辑Petri网,给出静态模型修正算法;算法3静态模型修正算法输入:静态偏差定位D(pn|set,tn),Petri网PN=(P,T;F,M);输出:修正后的逻辑Petri网LPN′=(P′,T′;F′,I′,O′,M′);步骤(1):初始化修正模型LPN′为原模型;步骤(2):调用算法1和算法2得到偏差位置D(pn|set,tn);步骤(3):在模型中添加pn|set到tn的弧;步骤(4):根据LPN挖掘算法挖掘变迁的触发条件,得到新的逻辑变迁ai′,并将ai′添加到模型中;步骤(5):输出修正后的逻辑Petri网LPN′;步骤3:进行循环并发结构的动态模型修正;当连续日志动作在普通扩展校准中并未完整出现时,根据逻辑Petri网,动态的确定偏差位置并对模型进行修正,相对于静态模型修正,动态模型修正较复杂,在偏差定位之前,需获得模型的并发变迁集,以便于准确定位偏差,根据过程树概念,引入并发变迁集概念;操作符:→代表顺序关系,∧代表并行关系,在过程树中,叶子结点为Petri网模型的变迁,非叶子结点为操作符;遍历过程树,若存在操作符∧的左(右)子树为叶子结点,则n.lchild.child=null(n.rchild.child=null);若右(左)子树不为叶子结点,则n.rchild.child≠null(n.lchild.child≠null),每一个右(左)子树的后续叶子结点n.rchild.p(n.lchild.p)都与该操作符∧的叶子结点n.lchild(n.rchild)为并发变迁对(ta,tb);定义模型中并发变迁集设A∈Λ,且PN=(P,T;F,M),PT是Petri网的过程树,并行变迁对(ta,tb)满足:①
且n=“∧”,其中n为过程树PT的结点;②若n∈PT且n=“∧”,n的左子树n.lchild不为叶子结点,n的右子树n.rchild为叶子结点,n.lchild.p为子树n.lchild的后续叶子结点,则ta=n.lchild.p且tb=n.rchild;③若n∈PT且n=“∧”,n的左子树n.lchild为叶子结点,n的右子树n.rchild不为叶子结点,n.rchild.p为子树n.rchild的后续叶子结点,则ta=n.rchild.p且tb=n.lchild;根据并发变迁集的概念,下面算法4给出寻找并发变迁集方法,输入PN对应的过程树PT,输出并发变迁集CTS,模型中的并发变迁集CTS为所有并发变迁对(ta,tb)的集合,CTS用于寻找偏差位置;算法4寻找并发变迁集算法输入:过程树PT;输出:并发变迁集CTS;步骤(1):初始化并发变迁集CTS;步骤(2):当过程树PT中的结点n不为空时进行步骤(3)~(5);步骤(3):若n为操作符∧,且左子树n.lchild不为叶子结点,右子树n.rchild为叶子结点,则左子树的后续叶子结点和右子树为一组并发变迁对(n.lchild.p,n.rchild),并添加到并发变迁集CTS中;步骤(4):若n为操作符∧,且右子树n.rchild不为叶子结点,左子树n.lchild为叶子结点,则右子树的后续叶子结点和左子树为一组并发变迁对(n.rchild.p,n.lchild),并添加到并发变迁集CTS中;步骤(5):寻找下一个结点;步骤(6):输出并发变迁集CTS;在模型中不存在自环结构时,动态定位偏差并修正模型的算法为:算法5动态的偏差定位与模型修正算法输入:连续日志动作集合CL,普通最优扩展校准Γσ,PN,M|Pset,lc,Petri网PN=(P,T;F,M),并发变迁集CTS;输出:修正后的逻辑Petri网LPN′=(P′,T′;F′,I′,O′,M′);步骤(1):初始化偏差位置D(pn|set,tn);步骤(2):初始化修正模型LPN′为原模型;步骤(3):将收集的连续日志动作CL遍历普通最优扩展校准β,若未完整出现且发生,则到步骤(4),否则退出;步骤(4):若连续日志动作首变迁first(CL)的前集属于first(CL)的标志库所集,则first(CL)使能,到步骤(10),否则到步骤(5);步骤(5):若first(CL)和模型PN的任一变迁不属于CTS中任一变迁对,则pn|set为first(CL)的标志库所集,tn为first(CL),pm|set是需要同pn|set比较的库所集,pm|set为tn前集;步骤(6):若first(CL)存在并发变迁s,且连续日志动作中不包含s,则pn|set为first(CL)的标志库所集,tn为first(CL),pm|set为tn前集;步骤(7):若first(CL)存在并发变迁s,且连续日志动作中包含s,则pn|set为first(CL)的标志库所集,去掉包含于first(CL)前集的库所,去掉含于并发变迁s前集的元素,tn为first(CL),pm|set为first(CL)前集和s前集的交集,去掉含于first(CL)标志库所集的元素;步骤(8):将pn|set到tn的弧添加到模型中;步骤(9):根据LPN挖掘算法挖掘变迁的触发条件比较pm|set和pn|set之间逻辑关系,得到逻辑变迁first(CL)′,并将first(CL)′添加到模型中;步骤(10):更新first(CL)的标志库所集,将其赋值给CL第二个变迁的标志库所集,并在CL中去掉首元素;步骤(11):输出修正后的逻辑Petri网LPN′。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东协力合智通信科技有限公司,未经山东协力合智通信科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201810780705.8/,转载请声明来源钻瓜专利网。