2. 山东省数字媒体技术重点实验室, 济南 250014;
3. 济南大学 信息科学与工程学院, 济南 250022
2. Shandong Provincial Key Laboratory of Digital Media Technology, Jinan 250014, China;
3. School of Information Science and Engineering, University of Jinan, Jinan 250022, China
开放科学(资源服务)标志码(OSID):
活性作为Petri网系统重要的动态性质之一,反映了Petri网系统运行过程中变迁激发条件的可满足性,通常对应实际系统运行过程中某事件是否具备发生条件。如果一个变迁元素不是活性的,那么该事件在某时刻将不会继续发生,若在某标识下系统中的所有变迁元素均不能发生,则系统陷入死锁,因此,有效检测与判断系统的活性是Petri网相关理论与方法应用于实际系统的关键问题,如自动制造系统的死锁分析[1-2]、面向资源调度系统的死锁分析[3]及并发程序的死锁检测和验证[4-6]等。
目前,对于Petri网系统活性的判定尚未有通用的方法[7],主要包括以下4类判定方法。第1类为从Petri网的网结构入手,研究结构较特殊的一些Petri网的活性判定方法,例如标识T-图[8]、加权T-图[9]、标识S-图[10]和标识自由选择网[11]等结构的Petri网已有较系统和有效的判定方法或者结论。第2类为从Petri网的分析方法入手,利用Petri网的可达标识图或可覆盖树[12]、Petri网进程[13]等判断Petri网的活性,该类方法对Petri网系统的活性分析提供了一定的思路,但由于系统状态的快速增长[14]或者线性方程组的求解通常伴有较高的时间复杂度,目前仍需更为深入的研究。第3类为从Petri网结构的分解或合成的角度入手,研究子网系统的活性与原网系统活性之间的关系[15-16],进而研究Petri网系统的活性,该类方法同样取得了一定的研究成果,但对于一般Petri网系统而言也尚未有明确结论。第4类为从Petri网系统性质[17-18]或结构活性判定入手,尤其后者,首先通过判断Petri网的结构活性,其次研究结构活的Petri网的活标识应满足的条件,最后实现对Petri网的活性判定,目前该类方法同样需要进一步深入的研究。
冲突结构在Petri网的活性判定方法研究中具有重要作用[19],相关文献在对标识T-图[8-9]、可重复Petri网[12]的活性(或结构活性)研究时基于有向回路结构或者冲突结构对库所元素[20]中流出标识(token)能否流回该库所的影响情况进行分析研究,进而对Petri网系统的活性或结构活性进行判定,表明Petri网中的有向回路及冲突结构是影响Petri网活性性质的重要因素,但现有相关方法尚未从综合考虑Petri网中有向回路与冲突结构间的关系对系统活性的影响入手开展Petri网活性判定的研究[21-22]。基于此,本文考虑从Petri网的结构入手,分析Petri网中的有向回路与冲突结构对Petri网结构活性的影响,进而探讨Petri网结构活性和系统活性的判定方法。
1 相关概念及知识本节将简要介绍与本文研究相关的Petri网相关概念和知识。
定义1[12] 一个Petri网系统定义为
1)
2)
3)
4)
在定义1中,S为Petri网的库所元素集合,T为Petri网的变迁元素集合,F为库所和变迁元素之间存在的流关系,M为Petri网系统Σ的标识函数。
Petri网系统的变迁元素在变迁激发规则条件满足的前提下可以发生,从而使得Petri网系统在不同的标识之间转化,即Petri网系统的运行。
定义2[12] (冲突结构) 设Petri网系统为
由定义2可以看出,冲突结构实际上对应库所标识在Petri网系统运行过程中的一种选择或竞争,并且现有研究已表明冲突结构是影响Petri网活性分析的关键因素之一[10]。
定义3[12](活性) 设Petri网系统为
定义4[12](结构活性) 设
由定义3和定义4可以看出,一个Petri网若是结构活的,则必存在一个标识使得对应的Petri网系统是活的,即为该网的一个活标识。因此,在判断一个Petri网系统
定义5(无冲突Petri网) 设
与S-图[12](
定义6(T-外延子网) 设Petri网
本文基于库所元素与其后置变迁元素是否存在于一个有向回路中,对无冲突Petri网
引理1 设Petri网
证明 不妨设
1) 若
2) 若
进一步地,若
定理1 设Petri网
证明 为网
1) 若
2) 若
综上所述,
推论1 设Petri网
为表述方便,将定理1中"
定义7 (自回路条件) 设Petri网
然而,自回路条件仅是无冲突Petri网结构活的充分而非必要条件,例如对图 1中的网N1虽然库所s3不满足自回路条件,但满足前置回路条件,并且网N1是结构活的。
![]() |
Download:
|
图 1 活性结构的Petri网N1 Fig. 1 Petri net N1 with live structure |
定义8 (前置回路条件) 设Petri网
1)
2)
3)
定理2 设Petri网
必要性证明 设已知无冲突Petri网N是结构活的,
充分性证明 已知
1)
2)
3)
对于
1)
2)
基于引理1,与
综上可得,标识
性质1 设无冲突Petri网
证明 若
1) 若
2) 若
综合以上两种情形所述,性质1得证。
定理3 若无冲突Petri网
显然,若在无冲突Petri网
推论2 设无冲突Petri网
但推论2中无冲突Petri网的活标识条件仅为Petri网活标识的一个充分条件,例如对图 1中的网
本文针对无冲突Petri网结构活性的判定问题,从Petri网中有向回路结构入手,通过分析库所元素及其后置变迁元素之间是否存在有向回路等结构逐步分析与无冲突Petri网结构活性相关的条件及结论,得到无冲突Petri网结构活性的充分必要条件,并且可在多项式时间复杂度内判定无冲突Petri网的结构活性。该结论能为通过分析Petri网中有向回路结构对Petri网结构活性的影响进而判断Petri网的结构活性的方法提供较好的参考和借鉴。后续可将本文方法扩展到具有冲突结构的Petri网的结构活性判断问题中,在此基础上进一步研究Petri网系统的活性判定方法。
[1] |
LI Z W, ZHOU M C. Modeling, analysis, and deadlock control of automated manufacturing systems[M]. Beijing: Science Press, 2009. (in Chinese) 李志武, 周孟初. 自动制造系统建模、分析与死锁控制[M]. 北京: 科学出版社, 2009. |
[2] |
WU W H, WANG S G. A deadlock prevention policy based on complementary places[J]. Chinese Journal of Computers, 2013, 36(11): 2257-2265. (in Chinese) 吴文慧, 王寿光. 基于补库所的死锁预防策略[J]. 计算机学报, 2013, 36(11): 2257-2265. |
[3] |
LI S Y, SUN Z D, CAI Y, et al. Deadlock control policy using control transitions for flexible manufacturing systems[J]. Control Theory and Applications, 2019, 36(5): 795-802. (in Chinese) 李绍勇, 孙智冬, 蔡颖, 等. 应用控制变迁的柔性制造系统死锁控制策略[J]. 控制理论与应用, 2019, 36(5): 795-802. |
[4] |
HUANG L, GU N J, CAO H X. Deadlock detection in multi-threaded program based on Petri net[J]. Computer Engineering, 2016, 42(4): 1-6. (in Chinese) 黄理, 顾乃杰, 曹华雄. 基于Petri网的多线程程序死锁检测[J]. 计算机工程, 2016, 42(4): 1-6. |
[5] |
CUI H Q, LIU Q. Detection and prevention of communication deadlock for parallel programs based on Petri net[J]. Computer Engineering, 2008, 34(23): 50-52. (in Chinese) 崔焕庆, 刘强. 基于Petri网并行程序通信死锁的检测和预防[J]. 计算机工程, 2008, 34(23): 50-52. DOI:10.3969/j.issn.1000-3428.2008.23.019 |
[6] |
TAN J H, LI G Q. Bounded model checking liveness on basic parallel processes[J]. Journal of Software, 2020, 31(8): 2388-2403. (in Chinese) 谭锦豪, 李国强. 基本并行进程活性的限界模型检测[J]. 软件学报, 2020, 31(8): 2388-2403. |
[7] |
JANCAR P. Deciding structural liveness of Petri nets[C]//Proceedings of International Conference on Current Trends in Theory and Practice of Informatics. Berlin, Germany: Springer, 2017: 91-102.
|
[8] |
XU A G, WANG P L. Further research of liveness for weighted T-graphs[J]. Chinese Journal of Computers, 1998, 21(1): 92-96. (in Chinese) 许安国, 王培良. 加权T-图活性的进一步研究[J]. 计算机学报, 1998, 21(1): 92-96. DOI:10.3321/j.issn:0254-4164.1998.01.013 |
[9] |
MARCHETTI O, MUNIER-KORDON A. A sufficient condition for the liveness of weighted event graphs[J]. European Journal of Operational Research, 2009, 197(2): 532-540. DOI:10.1016/j.ejor.2008.07.037 |
[10] |
DUAN H, ZENG Q T. Analysis on the liveness of S-net[J]. Journal of Chinese Computer Systems, 2004, 25(11): 1975-1978. (in Chinese) 段华, 曾庆田. S-网的活性分析[J]. 小型微型计算机系统, 2004, 25(11): 1975-1978. DOI:10.3969/j.issn.1000-1220.2004.11.019 |
[11] |
LIN G X, LU W M, JIAO L. Liveness of weak extended non self-controlling nets[J]. Chinese Journal of Computers, 2002, 25(8): 883-889. 林贵献, 陆维明, 焦莉. 一类Petri网系统的活性[J]. 计算机学报, 2002, 25(8): 883-889. DOI:10.3321/j.issn:0254-4164.2002.08.014 |
[12] |
WU Z H. An Introduction to Petri nets[M]. Beijing: China Machine Press, 2006. (in Chinese) 吴哲辉. Petri网导论[M]. 北京: 机械工业出版社, 2006. |
[13] |
YAN C G, WANG M X, LIU G J. Relationship between process expression and liveness of bounded Petri nets[J]. Journal of Applied Sciences, 2012, 30(4): 387-390. (in Chinese) 闫春钢, 汪明新, 刘关俊. 有界Petri网进程表达式与活性的关系[J]. 应用科学学报, 2012, 30(4): 387-390. DOI:10.3969/j.issn.0255-8297.2012.04.010 |
[14] |
XIANG D M, LIU G J, YAN C G, et al. Detecting data inconsistency based on the unfolding technique of Petri nets[J]. IEEE Transactions on Industrial Informatics, 2017, 13(6): 2995-3005. DOI:10.1109/TII.2017.2698640 |
[15] |
ZHONG C F, HE W L, LI Z W, et al. Deadlock analysis and control using Petri net decomposition techniques[J]. Information Sciences, 2019, 482: 440-456. DOI:10.1016/j.ins.2019.01.029 |
[16] |
PU F, LU W M. Preservation of liveness and deadlock-freeness in synchronous synthesis of Petri net systems[J]. Journal of Software, 2003, 14(12): 1977-1988. (in Chinese) 蒲飞, 陆维明. 同步合成Petri网系统活性与无死锁性的保持性[J]. 软件学报, 2003, 14(12): 1977-1988. |
[17] |
HAN X G, CHEN Z Q, LIU Z X, et al. STP-based judgment method of reversibility and liveness of bounded Petri nets[J]. Journal of System Sciences and Mathematical Sciences, 2016, 36(3): 361-370. (in Chinese) 韩晓光, 陈增强, 刘忠信, 等. 有界Petri网的可逆性和活性的STP判别方法[J]. 系统科学与数学, 2016, 36(3): 361-370. |
[18] |
LIU G J, JIANG C J. On conditions for the liveness of weakly persistent nets[J]. Information Processing Letters, 2009, 109(16): 967-970. DOI:10.1016/j.ipl.2009.05.008 |
[19] |
PAN L, ZHENG H, LIU X M, et al. Maximal conflict set enumeration algorithm based on locality of Petri Nets[J]. Acta Electronica Sinica, 2016, 44(8): 1858-1863. (in Chinese) 潘理, 郑红, 刘显明, 等. 基于Petri网局部性的极大冲突集枚举算法[J]. 电子学报, 2016, 44(8): 1858-1863. DOI:10.3969/j.issn.0372-2112.2016.08.013 |
[20] |
ALIMONTI P, FEUERSTEIN E, LAURA L, et al. Linear time analysis of properties of conflict-free and general Petri nets[J]. Theoretical Computer Science, 2011, 412(4/5): 320-338. |
[21] |
WIMMEL H. Presynthesis of bounded choice-free or fork-attribution nets[J]. Information and Computation, 2020, 271(6): 104482. |
[22] |
BEST E, DEVILLERS R, SCHLACHTER U. Bounded choice-free Petri net synthesis: algorithmic issues[J]. Acta Informatica, 2018, 55(7): 575-611. DOI:10.1007/s00236-017-0310-9 |