基于Petri网带配置信息的电影票预定系统的优化
2019-09-02夏磊王丽丽
夏磊,王丽丽
(安徽理工大学 数学与大数据学院,淮南 232001)
解决业务流程的问题,通常借助计算机技术和网络建模的理论方法。可是,实际生活中的业务流程往往是复杂多变的,这就存在一个重要的问题,即人为建立的业务流程模型与实际的业务流程之间存在不相符、不合适的情况。因此,优化业务流程模型使其更为符合实际流程成为很重要的一项课题。基于合理的自由选择Petri网,行为轮廓理论定义了行为的弱序关系,并将其细化[1]。
文献[2]阐述了行为轮廓相关的理论和分析方法。文献[3]表明行为轮廓可以被用于分析业务流程中特定行为的交互规则,基于UML来捕获重要的行为规则。行为轮廓可以被用于监控模型动态行为在文献[4]中被描述。文献[5]的主要贡献在于提出合并多个子模型构建综合模型的思想,然后进行模块分解使综合模型达到优化的目的,并基于合并模型的可追溯性对业务流程综合分析。为了达到在不同业务流程模型之间语义展开的效果,文献[6]提出使用规范术语,并标准化处理业务流程模型。文献[7]的贡献在于提出一种语义验证方法,可以更为高效地验证可配置流程模型。配置信息的不合理不仅不能优化业务流程模型,反而会导致模型的不适用性更为明显,文献[8]在数据流的基础上,提出了一种可配置的业务流程模型的验证方法。文献[9]研究复杂的业务流程模型,通过添加配置信息,使其达到模型优化的目的。文献[10]主要研究不确定的输入模型,并对多目标函数进行优化。
下面以电影票在线预定系统来说明配置信息优化业务流程模型的可行性和意义;利用PIPE软件对优化后模型模拟运行并进行状态空间分析。
1 基本定义
定义1[11](流程模型Petri网)一个流程模型Petri网PM=(P,T,F,C,s,e)是一个六元组,满足以下条件:
(1)P是有限库所集,T是有限活动变迁集;
(2)P≠∅,T≠∅且P⋂T=∅;
(3)F⊆(P×T)⋃(T×P)表示PN的的流关系且(P⋃T,F)是强连通图;
(4)dom(F)⋃cod(F)=P⋃T,其 中 dom(F)={x∈P⋃T|∃y∈P⋃T,(x,y∈F)};cod(F)={x∈P⋃T|∃y∈P⋃T,(y,x)∈F};
(5)C={and,xor,or}是流程网的结构类型;
(6)M0是网的初始标识,Mf是网的终止标识,且Mf是死标识;
(7)s∈T是开始活动变迁,e∈T是终止活动变迁。
定义2[1](前集和后集)设N=(P,T,F)为一个网,用X=P⋃T表示所有的节点,用F+表示流关系F的不自反传递闭包。
x∈X,·x={y|y∈P⋃T∧(y,x)∈F}表示x的前集,x·={y|y∈P⋃T∧(x,y)∈F}表示x的后集。
定 义 3[1](变 迁 发 生 规 则)一 个 四 元 组PN=(P,T;F,M0)称为Petri网,并具有下面的变迁发生规则:
(1)变迁t∈T具有发生权,当且仅当对∀p∈⋅t:M(p)>1,记作M[t> ,其中M(p)表示库所p中标识数量;
(2)在标识M下能使的变迁t经发生后,得到一个新的标识M′,记作M[t>M′,则有
2 基于petri网添加配置信息的系统建模优化
通常,业务流程模型都具有特定的要求和需要,通过添加配置信息可以满足业务流程的定制需求。但是,一般建立的业务流程模型都是不具有配置信息的模型,因而加入隐藏和阻塞变迁优化流程模型是非常有意义的,下面以电影票预订系统为例,讲述配置优化的应用。
2.1 不含配置信息的电影票预定系统
用户查询电影场次信息,若有余票,用户需要输入登录信息才可进行操作,登录信息审核无误后用户即可选座并预定电影票,提交订单等待系统审核订单信息,若审核不通过,则此订单取消,若审核通过,系统生成订单金额,用户支付完成后,系统出票。这种不含配置信息的业务流程模型如图1所示。
图1 不含配置信息的电影票预定系统流程模型
2.2 添加配置信息的电影票预定系统
对于上述的不含配置信息的电影票预订系统,其实与实际中某些特殊情况不相符。(1)系统默认用户在线支付电影票费用,其实有些时候用户并不一定选择在线支付,而是通过会员积分兑换或者电子券兑换等方式在线获得电影票;(2)电影院通常会设置普通用户厅和VIP用户厅,VIP用户其实是可以任性选择观影厅的,仅普通用户在选择场次时不能选择VIP观影厅的场次。这也就是说,审核订单场次信息时,系统仅需审核普通用户订单即可;(3)对于订单金额,VIP用户与普通用户所付金额是不相同的,这就需要系统提供给VIP用户折扣金额。
通过添加配置信息进行系统优化,对于问题(1),添加hide变迁以隐藏,从而跳过默认在线支付,达到用户可以自由选择支付方式的目的;对于问题(2),同样添加hide变迁以隐藏,从而使VIP用户可以直接跳过被审核订单场次信息,直接进入下一个活动;对于问题(3),添加block变迁以阻塞普通用户支付折扣金额购买电影票,从而达到只有VIP用户享有折扣金额购票的目的。如图2所示。
图2 添加配置信息的电影票预定系统流程模型
3 利用PIPE软件对配置优化后的模型模拟运行并状态空间分析
利用PIPE软件对优化后的模型进行模拟运行,以检验模型的正确性和可行性,并对模型进行状态空间分析。首先在PIPE软件上,画出优化后的模型,添加初始标识,如图3所示。
图3 PIPE开始模拟运行优化后模型
添加初始标识后,点击运行按钮,标识随即开始移动直至运行结束,如图4所示。
图4 PIPE模拟运行优化后模型结束
标识不断移动,最终到达结束库所,优化后模型的正确性和可行性得到验证。利用PIPE软件,对优化后的模型进行状态空间分析,结果如图5所示。
图5 PIPE软件对优化后模型状态空间分析
通过状态空间分析可以看出,优化后的模型是有界的,安全的,并且无死锁的。因此,添加配置信息优化模型是可行并且有效的一种优化方法。
4 结论
业务流程模型添加配置变迁以达到优化系统的目的,本文通过电影票预订系统添加配置信息包括hide变迁和block变迁,充分说明了配置的意义和作用。尽管添加配置变迁的业务流程模型更加方便和贴合实际,但是,由添加配置信息带来的可能出现的行为异常,也是不能够被忽视的,未来的工作在于如何挖掘出这些行为异常,加以控制。