基于面向对象时间Petri网的智能电商物流服务系统建模
2018-03-15朱正月陈增强
朱正月,陈增强
电子商务的快速发展,给物流行业带来新的发展机遇,物流行业正朝着信息化、自动化、网络化、智能化和柔性化方向发展。基于互联网技术,以电子商务平台为依托的电子商务物流(electronic-commerce logistics,ECL)是推动物流行业发展的新模式。它将物流体系中的产品采购、制造、运输、仓储、销售等业务融于平台,集物流、商流、信息流和资金流于一体,是一个复杂的ERP(enterprise resource planning)系统。线上是信息流的流动,线下是商品流的流动,所有活动全部由系统平台全面进行管理、协调和控制。
电商物流服务系统(electronic-commerce logistics service system,ECLSS)是一个大规模、复杂的离散事件动态系统,该系统涉及生产企业、物流企业、销售企业等多类对象,对象间存在业务关系,每类对象中包括有多个作业流程,系统规模较大,复杂程度较高。如何选择合适的建模技术,构建一个可靠、健壮的ECLSS系统模型,为系统后续开发提供模型参考,是一个系统分析人员值得思考的问题。
一个优秀系统的逻辑设计对于一个系统的运行有着举足轻重的作用,可以帮助开发人员发现致命错误并且可以提高系统开发的效率[1]。具有模块化、可扩展、可重用和可移植等特性的健壮软件系统模型,是实现一个具有高度灵活性、可靠性,实用、易操作的信息系统的关键和基础。信息系统建模方法主要有面向过程的建模、面向数据的建模、面向信息的建模、面向决策的建模和面向对象的建模等[2]。用于系统建模的工具很多,常用的主要有E-R图、DFD图、UML、OMT和Petri网等[3-4]。
面向对象(object-oriented)的建模方法具有灵活性、低风险性、可重用性、可扩展性和易维护性等优点,能有效地控制复杂性、适应多变性[5]。运用该方法能够减少从系统分析、设计到软件模块结构之间繁杂的多次转换映射过程,可以提高系统的开发效率,适合于描述大规模复杂系统。面向对象模型(object-oriented model,OOM)是基于图形表示的非形式化方法,在模型分析和正确性验证方面缺乏有力的数学工具,易造成系统结构不合理、各部分关系失调等问题。Petri网适合于描述并发、异步的模型,具有事件驱动、图形表示和数学分析等优点,可用于静态的结构分析和动态的行为分析,是离散事件动态系统(DEDS)建模和分析研究的最有力工具之一[6]。
一个集成了功能、信息、资源和组织的模块化设计、建模和分析方法,对支持复杂、动态和分布式的电商物流服务系统是必要的。郭红康等[7]讨论了多Agent的面向订单的离散制造系统建模,S.Y.Nof等[8-9]讨论了电子制造、电子物流、电子服务融合系统及从工厂到物流的多企业合作模式,在结合面向对象与Petri网技术建立系统模型方面讨论不多。将面向对象与Petri网相结合,构建面向对象Petri网 (object-oriented Petri net,OOPN),应用于电商物流服务系统建模,既增强了Petri网的模块化性能,能表示系统的各种资源,又增强了系统模型的柔性,提高了系统的可重用性、可扩充性和可维护性。本文围绕电商物流服务系统主要对象和业务流程,使用面向对象与Petri网相结合的建模技术,引入时间因素,实现对系统的面向对象时间Petri网(object-oriented time Petri net,OOTPN)模型描述,以有效降低建模的复杂程度,降低因业务流程复杂造成Petri网模型规模庞大而引起的状态空间爆炸问题[10]。
1 面向对象时间Petri网
Petri网是1962年由德国科学家C.A.Petri教授提出来的。经过50余年的发展,Petri网理论已形成为一门系统的、独立的学科分支,在计算机科学技术、自动化科学技术、机械设计与制造及其他许多科学技术领域都得到了广泛应用[11]。在Petri网理论发展历程中,演化出很多形式的高级Petri网模型,如颜色 Petri网 (colored Petri net,CPN)、含时间因素的Petri网、随机Petri网(stochastic Petri net,SPN)、模糊 Petri网 (fuzzy Petri net,FPN)和混杂Petri网(hybrid Petri net,HPN)等。含时间因素的Petri网可以对系统在时间层次或随机品质方面的性能进行分析[12],主要有两种类型,一种是由P.M.Merlin[13]在1974年提出的时间Petri网(time Petri net,TPN);一种是由 C.Ramchandani[14]在 1974 年提出的时延 Petri网 (timed Petri net,TdPN)。
为研究实际问题的需要,国内外很多专家学者利用或扩展这些高级Petri网系统,在物流运输等领域有广泛应用,如基于Petri网实现对物流自动化系统[15]、物流配送系统[16]、物流仓储系统[17]的建模与分析;基于TPN实现对集装箱码头AGV调度系统[18]、物流系统[19]的建模与分析;基于SPN实现对物流中心库存系统[20]、多式联运系统[21]、冷链物流配送系统[22]的建模与分析。文献[23-24]探讨了基于OOPN实现物流配送业务流程的建模与分析。不足的是,OOPN中没有时间约束,无法实现对系统的定量分析。为解决这一问题,在OOPN中引入时间因素,构建面向对象时间Petri网OOTPN。OOTPN不仅可以保持基本Petri网对模型直观的图形描述能力,而且使网模型的规模大大降低[25],时间因素的引入使得所建立模型能够对模块性能进行定量分析。目前已有利用OOTPN用于物流系统建模的实践应用,文献[26-27]基于OOTPN实现了出入库系统建模与分析,这为OOTPN用于电商物流服务系统建模与分析提供了有益参考。本节在分析研究OOTPN应用的基础上,先给出OOTPN的相关定义,并描述其建模的一般步骤,为后续电商物流服务系统建模提供理论依据。
1.1 OOTPN相关定义
定义1[28-29]设N={1,2, · ··},面向对象时间Petri网定义为一个四元组:OOTPN=(O,R,G,I)。其中,
1)O={Oi∣i=1,2, · ··,n;n∈N}是系统中所有对象的集合,n为对象个数;
2)R={Rij∣i,j=1,2, · ··,n;i≠j,n∈N}是系统中对象间消息传递关系集合;
3)G={Gij∣i,j=1,2, · ··,n;i≠j,n∈N}是系统中对象间消息传递的迁移集合,该类迁移称为门(gate)变迁,用来连接两个对象,用“”表示[30];
4)I={Ii∣i=1,2, · ··,n;n∈N}是系统中对象的时间函数集。
定义2[28-29]系统中对象Oi为一个七元组:Oi=(Pi,Ti,Fi,Ii,Ki,Wi,Mi0)。其中,
1) Pi=SPi∪MPi,SPi是系统中对象 Oi中有限活动状态库所集,用”表示;MPi=IMPi∪OMPi,是系统中对象Oi的输入/输出消息库所的有限集合,用”表示;
2)Ti:系统中对象Oi中的变迁有限集合,用 ”表示;
3)Fi:系统中对象Oi中的库所与变迁的流关系,满足 Fi(Pi×Ti)∪(Ti×Pi),用“→”表示;
4)Ii是系统中对象Oi中定义在变迁集上的时间区间函数,满足t∈Ti,Ii(t)=[EIi(t),LIi(t)]。其中,EIi(t)为Oi中的变迁t使能后的最早引发时间,LIi(t)为Oi中的变迁t使能后的最迟引发时间。EI(Oi)是对象Oi中所有变迁使能后的最早引发总时间,LI(Oi)是对象Oi中所有变迁使能后的最迟引发总时间,满足 EI(Oi)≤LI(Oi),Oi∈O;
5)Ki:系统对象Oi中的活动状态库所的容量函数;
6)Wi:系统对象Oi中的有向弧权函数(权重),当弧上没有标明数值时,权重默认值为1;
7)Mi0:系统对象Oi的初始标识(初始条件下对象Oi中各库所拥有的托肯(token)数构成的向量)。
定义3[28-29]对象间消息传递关系Rij定义为一个四元组:Rij=(OMPi,Gij,IMPj,I(gij));i,j=1,2, · ··,n;i≠j。
OMPi为对象Oi的输出消息库所集;IMPi为对象Oi的输入消息库所集;Gij是一种特殊的门变迁,为对象Oi到Oj的门,作用是保证对象间的通信(消息传递);I(gij)为gij的时间集。
一个典型的OOTPN模型如图1所示。
图1 一个典型的OOTPN模型Fig. 1 A typical OOTPN model
1.2 OOTPN建模步骤
建模是软件生命周期的一部分,利用OOTPN对复杂系统建模,首先要进行系统分析,在系统分析的基础上明确各个对象及对象间的消息传递关系,确定对象活动及其持续时间,然后建立系统的模型并进行优化。OOTPN建模一般步骤是:1)分析系统,明确需求;2)归纳抽象,确立对象;3)确定对象的活动及其持续时间;4)确定对象间的关系;5)建立各对象Petri子网模型,确定对象输入/出信息;6)集成对象Petri子网模型,构建系统完整的OOTPN模型;7)确定系统初始标识,分析模型,优化改进。
2 电商物流服务系统核心对象与业务流程
随着工业4.0、中国制造2025、互联网+等热点出现,为各行各业的创新发展提供了动力。互联网+模式已全面应用到第三产业,传统物流模式已经不能适应社会发展的需求。当前,随着物流需求的变迁、载体的变化和上游商业的变迁,物流业务从B2B、B2C已经快速向O2O和C2B发展。
电商物流以物流系统为核心,利用计算机网络技术进行物流运作与管理,促进生产企业、物流企业、销售企业、直至消费者的供应链整体化和系统化[31],实现企业间物流资源共享和优化配置的物流方式,最终达到物流一体化。电商物流涉及的核心对象主要有销售企业、生产(供货)企业、物流企业、电商平台仓库等,它们之间的业务关系如图2所示。
图2 电子商务物流服务系统核心对象及业务关系Fig. 2 The core objects and business relationship of E-commerce logistics service system
电商物流服务系统涉及的对象多,业务流程复杂。本文主要讨论OOTPN在电商物流服务系统建模中的应用,仅针对系统中的几个核心对象及其主体业务流程和对象间关系进行讨论,对于每个对象内部更细致的业务流不做详细研究,譬如将某个对象再划分为若干子对象,采用分层的OOTPN建模技术来深入研究等。图2中4个对象的主体业务流程如图3。
图3 电商物流服务系统核心对象主体业务流程Fig. 3 The core object’s main business processes of E-commerce logistics service system
3 电商物流服务系统OOTPN建模
3.1 系统对象确立
通过对电商物流服务系统的描述,可以看出该系统涉及多个实体,按照面向对象建模技术的要求,每个实体都可以抽象为一个对象。在详细分析电商物流服务系统基础上,确立系统对象主要包括电商销售企业对象、生产(供货)企业对象、物流运输企业对象和电商平台仓库对象。
电商销售企业对象根据电商平台仓库反馈的销售商品库存情况制定商品采购计划,确定商品采购订单。
生产(供货)企业对象根据电商销售企业商品采购订单实施产品生产、加工、供货等作业,制定产品托运订单。
物流运输企业对象围绕生产(供货)企业对象托运订单开展收货、集货、临时仓储及运输等作业,制定货物入库预约单。
电商平台仓库按照物流运输企业的货物入库预约单组织收货、验收、入库、仓储管理、处理销售订单、调拨发货等作业。
根据1.2节中描述的OOTPN建模步骤,先将电商物流服务系统抽象成若干对象,建立各个对象的OOTPN子网模型,通过对象间消息传递控制将每个子网系统连接起来,最后集成各对象子网形成电商物流服务系统的整体OOTPN模型。
3.2 建立对象OOTPN子网模型
图2中描述的电商物流服务系统中,核心对象有电商销售企业对象、生产(供货)企业对象、物流运输企业对象和电商平台仓库对象4个,分别命名为O1、O2、O3和O4。按照图3所示的每个对象主体业务流程,确立对象内的库所和变迁、对象间的消息库所和消息传递规则,建立各个对象的OOTPN子网。
3.2.1 电商销售企业OOTPN子网
电商销售企业主要业务流程是:接收到电商仓库平台库存报表,根据库存报表确定是否需要采购商品,库存不足则需要采购,制定商品采购计划,计划审批通过后选择产品生产(供货)企业,编制产品采购订单,订单审核通过后将订单信息发生产(供货)企业。建立的电商销售企业OOTPN子网模型如图4所示。
图4 电商销售企业对象的OOTPN子网模型∑1Fig. 4 The OOTPN sub-network model ∑1 of E-commerce sales enterprise
图4 中,P11:接收的电商平台仓库商品库存清单;P12:商品库存充足不做采购处理;P13:商品库存不足制定的采购计划表;P14:未通过审批的商品采购计划表;P15:通过审批的商品采购计划表;P16:选择商品生产(供货)企业后生成的商品采购订单;P17:未通过审批的商品采购订单;P18:通过审批的商品采购订单;P19:生产(供货)企业退单处理结果。T11:接收商品库存清单;T12:判断商品库存是否不足;T13:商品采购计划审批;T14:修订商品采购计划;T15:选择生产(供货)企业并编制商品采购订单;T16:商品采购订单审批;T17:修订商品采购订单;T18:向生产(供货)企业提交商品采购订单;T19:接收并处理生产(供货)企业退单消息;IMP11:电商平台仓库发来的商品库存清单消息;IMP12:生产(供货)企业发来的退单消息;OMP11:向生产(供货)企业发送的商品采购订单消息。
3.2.2 生产(供货)企业OOTPN子网
生产(供货)企业的主要业务流程是:接收到电商销售企业的商品采购订单,结合企业实际决定是否承接,如不承接将退回订单,如承接则在企业内部开展产品加工、生产等活动,随后对产品进行质量和数量检验,如符合订单要求则制定产品托运计划和订单,向下游物流运输企业发送托运订单信息,同时向上游电商销售企业反馈订单任务完成情况。建立的生产(供货)企业OOTPN子网模型如图5所示。
图5 生产(供货)企业对象的OOTPN子网模型∑2Fig. 5 The OOTPN sub-network model ∑2 of supplier
图5 中,P21:接收的电商销售企业商品采购订单;P22:不承接的商品采购订单;P23:承接的商品采购订单;P24:企业生产、加工的产品;P25:检验不合格的产品;P26:检验合格的产品;P27:按采购订单备齐的产品;P28:编制的产品托运订单;P29:未通过审批的产品托运订单;P210:通过审批的产品托运订单;P211:物流运输企业退单处理结果;P212:物流运输企业退货处理结果;T21:接收商品采购订单;T22:订单业务承接审批;T23:审批不通过退单;T24:生产、加工产品;T25:订单产品质量检验;T26:检查订单商品是否备齐;T27:编制产品托运订单;T28:产品托运订单审批;T29:修订未通过的产品托运订单;T210:向供货企业提交产品托运订单;T211:接收并处理物流运输企业退单消息;T212:接收并处理物流运输企业退货消息;IMP21:电商销售企业发来的商品订单消息;IMP22:物流运输企业发来的退单消息;IMP23:物流运输企业发来的退货消息;OMP21:向电商销售企业发送的退单消息;OMP22:向物流运输企业发送的产品托运订单消息。
3.2.3 物流运输企业OOTPN子网
物流运输企业的主要业务流程是:接收到生产(供货)企业的货物托运订单,结合企业实际决定是否承接,如不承接将退回订单,如承接则进行收货、集货活动,并对货物进行检验,检验合格后打托、入库暂存,实施仓储管理,根据托运时间要求组织货物出库、运输等作业,编制货物进库预约单,提交给下游电商平台仓库。建立的物流运输企业OOTPN子网模型如图6所示。
图6中,P31:接收的生产(供货)企业货物托运单;P32:不承接的货物托运单;P33:承接的货物托运单;P34:通过收货、集货运输来的待托运货物;P35:检验不合格的待托运货物;P36:检验合格的待托运货物;P37:打托入库暂存的货物;P38:编制的货物出库发货单;P39:未通过审批的发货单;P310:通过审批的发货单;P311:编制的进库预约单;P312:电商平台仓库确认预约反馈消息处理结果;P313:电商平台仓库退货处理结果;T31:接收货物托运订单;T32:托运业务承接审批;T33:审批不通过退单;T34:收货和集货作业;T35:货物检验;T36:退货作业;T37:货物打托、入库作业;T38:编制货物出库发货单;T39:发货单审批;T310:修订未通过审批的发货单;T311:编制货物入仓预约单;T312:向电商平台仓库提交货物入库预约单;T313:接收并处理电商平台仓库预约确认反馈消息;T314:接收并处理电商平台仓库退货消息;IMP31:生产(供货)企业发来的货物托运单消息;IMP32:电商平台仓库发来的进库预约单确认消息;IMP33:电商平台仓库发来的退货消息;OMP31:向生产(供货)企业发送的退单消息;OMP32:向生产(供货)企业发送的退货消息;OMP33:向电商平台仓库发送的货物进库预约单消息。
图6 物流运输企业对象的OOTPN子网模型∑3Fig. 6 The OOTPN sub-network model ∑3 of logistics transportation enterprise
3.2.4 电商平台仓库OOTPN子网
电商平台仓库的主要业务流程是:接收到物流运输企业发送来的货物进库预约单,进行预约单确认,安排货物进仓时段与准备工作,当货物到达仓库后,进行卸货验收,不合格货物予以退回,合格的入库存储,根据销售订单予以分拨发货,并不定期开展库存盘点作业,形成货物库存清单,及时反馈给电商销售企业。建立的电商平台仓库OOTPN子网模型如图7所示。
图7中,P41:接收的货物进库预约单;P42:处理后的货物进库预约单;P43:到达电商平台仓库的货物;P44:验收不合格的货物;P45:验收合格的货物;P46:进入仓库储存的货物;P47:货物库存清单;T41:接收货物进库预约单;T42:处理货物进库预约单;T43:预约单处理结果反馈;T44:卸货验收作业;T45:退货作业;T46:入库作业;T47:库存盘点作业;T48:发送库存清单;IMP41:物流运输企业发来的货物进库预约单消息;OMP41:向物流运输企业发送的预约单确认消息;OMP42:向物流运输企业发送的退货消息;OMP43:向电商销售企业发送的货物库存清单消息。
图7 电商平台仓库对象的OOTPN子网模型∑4Fig. 7 The OOTPN sub-network model ∑4 of E-commerce platform warehouse
3.3 电商物流服务系统OOTPN建模
建立好电商物流服务系统的各个对象子网后,根据各对象之间的消息传递关系,通过对象间的接口(消息库所),利用门变迁将各个对象子网集成起来,构建出电商物流服务系统的整体OOTPN模型,如图8所示。
图8 电商物流服务系统的OOTPN模型Fig. 8 The OOTPN model of E-commerce logistics service system
图8 中各个消息库所和门变迁的含义如表1描述。
电商物流服务系统是一个大规模复杂系统,图8的OOTPN模型能较好地描述该系统中几类核心对象的状态与动态活动情况,模型采用面向对象建模技术,对象设计模块化,模型图形化和结构化,体现出OOTPN模型的可扩展性、可重用性和易维护性等特点。
4 电商物流服务系统OOTPN模型分析
4.1 系统模型时间特性分析
电商物流服务系统规模庞大,直接进行系统周期性的计算将会导致计算维数灾难[32],文献[32-33]分析了Petri网的时间特性,文献[34-35]探讨了时间Petri网可达性和抽象状态空间问题。在OOTPN模型中,每一个变迁都引入时间因素,根据定义2,有t∈Ti,Ii(t)=[EIi(t),LIi(t)],变迁上的时间是一个区间函数,每个对象运行所需要的总时间也必定在一个区间范围内。系统运行一次所需要的总时间,是系统所有对象运行的时间总和。
表1 电商物流服务系统OOTPN模型中库所与门变迁含义Table 1 The connotations of place and gate in the OOTPN model of E-commerce logistics service system
电商物流服务系统的OOTPN模型中,时间因素在变迁上,某个变迁正在发生可以理解为某个工序正在执行或某道作业正在处理,也是一种系统状态。为便于时间特性分析,可以通过对非瞬时变迁的替换得到库所含时间值的Petri网,此时把对变迁赋予的时间区间值转换到库所上,这样就实现了从变迁赋予时间区间值的Petri网(TPN)到库所赋予时间区间值的Petri网(TSPN)[11]。在此基础上,可以对所建立的电商物流服务系统OOTPN模型进行时间特性分析。本节以电商销售企业对象为例,结合图4所示的OOTPN模型,求解该对象内部运行所需总时间,系统中的其他3个对象均可参照此方法求解其运行总时间。
图4 中,P1={P1i∣i=1,2, · ··,9}∪MP1,MP1={IMP11,IMP12,OMP11};T1={T1j∣j=1,2, · ··,9};I1={[1,2],[1,1],[2,3],[1,1],[2,3],[1,2],[1,1],[1,2],[2,3]},需要求出O1运行所需要的最大总时间区间。根据上面的描述,电商销售企业对象中的某个正在发生的变迁可以理解为是某个工序或某道作业正在处理,根据文献[11]中描述的相关转化步骤,可将电商销售企业对象变迁含时间因素的时间Petri模型∑1转化为库所含时间因素的时间Petri网模型∑5,如图9所示。
图9 库所带时间的电商销售企业Petri网模型∑5Fig. 9 The petri nets model ∑5 incorporated with time and place of E-commerce sales enterprise
图9 中,P0、Pe为引入的初始库所和结束库所,其时间值均为[0,0];Pt1、Pt2为保留的两个零权库所,是描述业务流程之间衔接关系所必需的;设置初始标识 M0,M0(p0)=1,M0(pi)=0(pi≠p0)。
定义 4[11]对网∑=(P,T;F,W,M0),!p0∈P∧!pe∈P:●p0=Ø∧pe●=Ø,t∈T:●t≠Ø∧t●≠Ø,满足条件pi∈P,若 w(pi)=[α(pi),β(pi)],则 α(pi)≤β(pi),有:
3)若每道作业都以下限时间完成,则该情况下作业pi的最早可能开始时间为E1(pi),则有:
4)若每道作业都以上限时间完成,则该情况下作业pi的最早可能开始时间为E2(pi),则有:
5)令TE1和TE2代表各作业按时间下限和时间上限完成时,完成整个业务流程所需要的最短时间,则有:TE1=E1(pe),TE2=E2(pe)。 (5)
对图9所示的Petri网模型∑5,根据上面式(3)和式 (4),对每个库所 pi求出 E1(pi)、E2(pi),如表 2。
表2 Petri网模型∑5的相关数据值Table 2 The relevant data values of petri nets model ∑5
结合表2中求得的相关数据,根据式(5)可以得到:TE1=E1(pe)=8+3k1+2k2,TE2=E2(pe)=13+4k1+3k2。即若每道作业都按工期下限时间完成,则完成整个业务流程的最短时间为8+3k1+2k2个时间单位;若每道作业都按工期上限时间完成,则完成整个业务流程的最长时间为13+4k1+2k2个时间单位。在每道作业均执行一次的状态下(即k1=0、k2=0),电商销售企业的业务流程全面执行一次需要的最短时间为8个时间单位,最长时间为13个时间单位。其他对象模型的时间特性分析均可以按照此方法进行,这里不再赘述。
4.2 系统模型性质分析
基于Petri网对电商物流服务系统业务流程进行建模,主要目的是借助Petri网模型的特性来分析系统业务流程的性质和功能。如果一个Petri网模型能确切描述一个业务流程的结构和运行,则该业务流程所具有的一些性质也会在Petri网模型上得到体现,这些性质与Petri网模拟的业务流程运行过程中的某些方面性质有密切联系[36]。所以,在建立Petri网模型后,还需要对模型进行一些性质分析。Petri网模型的性质分析主要有可达性、安全性、有界性、活性和守恒性等,分析方法有可达标识图和可覆盖性树、关联矩阵和状态方程等[11]。
下面围绕电商平台仓库对象,结合建立的OOTPN子模型,利用可覆盖性树方法来进行相关性质分析。图7所示的OOTPN子网∑4中,以接收的消息库所为初始库所(p0),以发送的消息库所为结束库所 (依次为 pe1、pe2、pe3),∑4的库所集合为{p0, p41, p42,p43, p44, p45, p46, p47, pe1, pe2, pe3},M0=[1 0 0 0 0 0 0 0 0 0 0],根据文献[11]中提供的可覆盖树和关联矩阵构造方法,图7所示的电商平台仓库对象Petri子网∑4的可覆盖性树CT(∑4)、关联矩阵A分别如图10、11所示。
图10 Petri网模型∑4的可覆盖性树CT (∑4)Fig. 10 The coverability tree CT (∑4) of petri nets model ∑4
图11 Petri网模型∑4的关联矩阵AFig. 11 The incidence matrix A of petri nets model ∑4
通过图10~11所示的可覆盖性树、关联矩阵和Petri网相关理论可以分析∑4的相关性质。
1)在Petri网的理论中,一个网系统∑是有界的当且仅当在其可覆盖性树CT(∑)中,每个结点的标识向量中都不含有ω分量(ω表示无界量)。根据该理论,分析图10所示的可覆盖性树CT(∑4)可以看出,CT(∑4)中所有结点的标识向量中都没有出现ω,所以∑4是有界的。
2)由于∑4是有界的,根据可覆盖性树CT(∑4)可得各个库所的界为:B(pi)=1,所以库所pi是安全的。显然,B(∑4)=1,所以网∑4是安全的。
3)在∑4中,通过求解其可覆盖性树CT(∑4)的过程可知,对任意的M∈R(M0),都有R(M)R(M0),所以网∑4是可达的。
4)由于∑4是可达的,所以在任何一个可达标识下,网中的每一个变迁T4j(j=1,2, · ··,8)都有可能获得发生权,这表明∑4中的每一个变迁T4j都是活的,因而∑4也是活的。
5)在Petri网的理论中,当存在m×1维(m=|P|)正向量X,使得ATX=0(A为关联矩阵),则Petri网是守恒的。根据该理论,结合图11所示的关联矩阵,可解得X1T=[1 1 1 0 0 0 0 0 1 0 0],X2T=[1 1 0 1 1 0 0 0 0 1 0],X3
T=[1 1 0 1 0 1 1 1 0 0 1],均满足 ATX=0,所以网模型∑4是守恒的。
5 结束语
将面向对象建模和Petri网结合起来形成OOPN建模方法,可以有效降低系统模型的规模和复杂性,所建立的模型不仅具有面向对象模型的模块化、可扩展、可重用等特点,还继承了 Petri网的结构化、描述复杂逻辑关系的能力。文中以电商物流服务系统的核心对象及其主要业务流程为切入点,采用面向对象和Petri网相结合技术,引入时间因素,提出了一种面向对象时间Petri网的建模方法,建立了电商物流服务系统的OOTPN模型,结合电商销售企业对象讨论并分析了系统模型的时间特性,结合电商平台仓库对象讨论并分析了系统模型的相关性质,表明所建立的模型具有良好的性能。在OOPN中引入时间因素,使得所建立的OOTPN系统模型能够实施模块性能定量分析。采用面向对象技术的OOTPN模型,具有对象模块化、图形化和结构化的特点,构建的系统具有可扩充、可重用、易维护等特性,是大规模复杂离散事件动态系统建模的重要方法之一,应用前景广阔。
[1]李乃文. 智能小区情境感知服务系统的研究[D]. 上海:华东理工大学, 2014.LI Naiwen. Intelligent community context aware service system research[D]. Shanghai: East China University of Science and Technology, 2014.
[2]梁雪姣. 基于IEC的智能营销系统建模研究[D]. 银川:宁夏大学, 2013.LIANG Xuejiao. Research about the intelligent marketing system modeling based on IEC[D]. Yinchuan: Ningxia University, 2013.
[3]徐学东, 李叶茂. 基本Petri网在信息系统中的建模方法[J]. 长春工程学院学报: 自然科学版, 2006, 7(4): 77–80.XU Xuedong, LI Yemao. Modeling method in the information system of basic petri net[J]. Journal of Changchun institute of technology: natural science edition, 2006, 7(4):77–80.
[4]郭鲜凤. 软件系统建模方法分析[J]. 太原大学学报, 2008,9(1): 135–137.GUO Xianfeng. Analysis on software system modeling methods[J]. Journal of Taiyuan university, 2008, 9(1):135–137.
[5]侯衍龙. 基于UML的面向对象建模技术及应用[D]. 南京: 南京航空航天大学, 2002.HOU Yanlong. Object-oriented modeling technology and application based on UML[D]. Nanjing: Nanjing University of Aeronautics and Astronautics, 2002.
[6]袁崇义. Petri网原理与应用[M]. 北京: 电子工业出版社,2005.YUAN Chongyi. Theory and application of petri nets[M].Beijing: Publishing House of Electronics Industry, 2005.
[7]郭红康, 赵军. 基于多Agent的面向订单的离散制造系统建模与仿真研究[J]. 智能系统学报, 2016, 11(2): 233–240.GUO Hongkang, ZHAO Jun. Modeling and simulation of order-oriented discrete manufacturing system based on multi-agent[J]. CAAI transactions on intelligent systems,2016, 11(2): 233–240.
[8]NOF S Y, MOREL G, MONOSTORI L, et al. From plant and logistics control to multi-enterprise collaboration[J].IFAC proceedings volumes, 2005, 38(1): 218–231.
[9]NOF S Y, FILIP F G, MOLINA A, et al. Advances in emanufacturing, e-logistics, and e-service systems[J]. IFAC proceedings volumes, 2008, 41(2): 5742–5750.
[10]曹炯清. 一种基于Petri网的物流配送系统建模方法[J].物流技术, 2014, 33(8): 272–274, 326.CAO Jiongqing. A modeling method of logistics distribution systems based on Petri nets[J]. Logistics technology,2014, 33(8): 272–274, 326.
[11]吴哲辉. Petri网导论[M]. 北京: 机械工业出版社, 2006.WU Zhehui. Introduction to Petri nets[M]. Beijing: China Machine Press, 2006.
[12]丁峰. 有色时间Petri网与随机Petri网应用研究[D]. 合肥: 合肥工业大学, 2009.DING Feng. Research on the use of colored timed petri net and stochastic petri net[D]. Hefei: Hefei University of Technology, 2009.
[13]MERLIN P M. A study of the recoverability of computing systems[D]. California: University of California, 1974.
[14]RAMCHANDANI C. Analysis of asynchronous concurrent systems by timed Petri nets[D]. Cambridge: Massachusetts Institute of Technology Cambridge, 1974.
[15]詹跃东, 骆瑛. 基于Petri网的物流自动化系统建模与仿真研究[J]. 系统仿真学报, 2001, 13(4): 501–504.ZHAN Yuedong, LUO Ying. Modeling and simulation research of material handling automatic system based on Petri net[J]. Journal of system simulation, 2001, 13(4):501–504.
[16]李焰, 郭俐虹. 基于Petri网的物流配送系统模型研究[J].武汉理工大学学报, 2010, 32(23): 72–75.LI Yan, GUO Lihong. Petri net-based logistics and distribution system modeling and performance analysis[J].Journal of Wuhan university of technology, 2010, 32(23):72–75.
[17]张春娜. 基于Petri网的物流仓储系统建模与仿真[D]. 南京: 南京林业大学, 2007.ZHANG Chunna. Modeling and simulation of the warehouse system of logistics based on Petri net[D]. Nanjing:Nanjing Forestry University, 2007.
[18]邱跃龙, 陶德馨. 基于时间Petri网的集装箱码头AGV调度系统建模研究[J]. 武汉理工大学学报: 交通科学与工程版, 2006, 30(6): 958–960.QIU Yuelong, TAO Dexin. Research on modeling of AGV dispatching system in container terminal based on timed Petri net[J]. Journal of Wuhan university of technology:transportation science and engineering, 2006, 30(6):958–960.
[19]张乳燕, 贾利民, 蔡国强. 基于时间Petri网的物流系统建模与仿真实例[J]. 物流技术, 2008, 27(10): 83–84, 103.ZHANG Ruyan, JIA Limin, CAI Guoqiang. Modeling and simulation of logistics system using time Petri net[J]. Logistics technology, 2008, 27(10): 83–84, 103.
[20]李小鹏. 基于Petri网的物流中心库存系统建模研究[D].天津: 天津科技大学, 2013.LI Xiaopeng. Research on modeling the inventory system of logistics center based on Petri nets[D]. Tianjin: Tianjin University of Science and Technology, 2013.
[21]付国轩. 基于随机Petri网的多式联运系统可靠性研究[D]. 北京: 北京交通大学, 2008.FU Guoxuan. Research on reliability of multimodal transportation based on stochastic Petri nets[D]. Beijing: Beijing Jiaotong University, 2008.
[22]陈颢. 基于随机Petri网的冷链物流配送流程建模及优化研究[D]. 重庆: 重庆工商大学, 2015.CHEN Hao. Modeling and optimization research on the cold chain distribution process based on stochastic Petri net[D]. Chongqing: Chongqing Technology and Business University, 2015.
[23]胡松筠, 陈燕, 李晔, 等. 基于面向对象Petri网的配送业务流程建模[J]. 科学技术与工程, 2006, 6(2): 229–232.HU Songyun, CHEN Yan, LI Ye, et al. Distribution process modeling based on object-oriented Petri net[J]. Science technology and engineering, 2006, 6(2): 229–232.
[24]何凯. 基于面向对象Petri网的物流配送中心流程优化研究[D]. 济南: 山东大学, 2015.HE Kai. Research on the business process optimization based on object-oriented Petri net in logistics distribution center[D]. Jinan: Shandong University, 2015.
[25]舒远仲, 刘炎培, 彭晓红, 等. 面向对象Petri网建模技术综述[J]. 计算机工程与设计, 2010, 31(15): 3432–3435.SHU Yuanzhong, LIU Yanpei, PENG Xiaohong, et al. Survey on object-oriented Petri net modeling[J]. Computer engineering and design, 2010, 31(15): 3432–3435.
[26]刘韬, 傅卫平, 王雯, 等. 基于面向对象赋时Petri网的出入库系统建模[J]. 系统仿真学报, 2006, 18(3): 537–541.LIU Tao, FU Weiping, WANG Wen, et al. Modeling of loading and unloading scheduling system based on objectoriented timed Petri net[J]. Journal of system simulation,2006, 18(3): 537–541.
[27]路春光, 王辉, 刘伟民, 等. 基于OOTPN与Flexsim的管材余料立体库调度系统的建模与仿真[J]. 物流工程与管理, 2010, 32(11): 65–67.LU Chunguang, WANG Hui, LIU Weimin, et al. Modeling and simulation of storehouse's scheduling system of the residual pipe based on OOTPN and Flexsim[J]. Logistics engineering and management, 2010, 32(11): 65–67.
[28]田世海. 基于OOTPN的高技术虚拟企业ISP建模[J]. 科技进步与对策, 2008, 25(9): 115–120.TIAN Shihai. HTVE-ISP modeling based on OOTPN[J].Science & technology progress and policy, 2008, 25(9):115–120.
[29]刘心, 印桂生, 张磊. 基于着色赋时面向对象Petri网的AUV系统建模研究[J]. 现代电子技术, 2009, 32(13):167–170.LIU Xin, YIN Guisheng, ZHANG Lei. Research on modeling of AUV system based on colored timed object-oriented petri net[J]. Modern electronics technique, 2009, 32(13):167–170.
[30]杨琦. 基于面向对象Petri网的供应链工作流建模[J]. 安徽师范大学学报: 自然科学版, 2010, 33(6): 530–533,538.YANG Qi. The modeling of object-oriented structural description of flow supply chain[J]. Journal of Anhui normal university: natural science, 2010, 33(6): 530–533, 538.
[31]蒋晓宁. 基于电子商务的物流系统及其中国模式的研究[D]. 南京: 东南大学, 2001.JIANG Xiaoning. Studies on the logistical system and its Chinese mode based on electronic commerce[D]. Nanjing:Southeast University, 2001.
[32]徐志斌, 郑大钟. 一类PETRI网的时间性能简化分析[J].自动化学报, 1999, 25(5): 667–672.XU Zhibin, ZHENG Dazhong. Reduction method for time analysis of a class of PETRI nets[J]. Acta automatica sinica, 1999, 25(5): 667–672.
[33]胡健生, 黄金志, 廖赟, 等. Petri网时间特性分析[J]. 计算机工程与设计, 2005, 26(10): 2746–2748.HU Jiansheng, HUANG Jinzhi, LIAO Yun, et al. Time characteristic analytical method of Petri nets[J]. Computer engineering and design, 2005, 26(10): 2746–2748.
[34]BERTHOMIEU B, LIME D, ROUX O H, et al. Reachability problems and abstract state spaces for time petri nets with stopwatches[J]. Discrete event dynamic systems,2007, 17(2): 133–158.
[35]BERTHOMIEU B, PERES F, VERNADAT F. Abstract state spaces for time petri nets analysis[C]//Proceedings of the 11th IEEE Symposium on Object Oriented Real-time Distributed Computing. Orlando, FL, USA, 2008:298–304.
[36]赵冬霞. 基于面向对象时间Petri网的物流配送业务流程优化与仿真[D]. 哈尔滨: 哈尔滨工业大学, 2010.ZHAO Dongxia. Logistics enterprise business process optimization and simulation based on object-oriented time petri nets[D]. Harbin: Harbin Institute of Technology,2010.