[发明专利]一种面向死锁检测的无界Petri网展开方法在审
申请号: | 201810640019.0 | 申请日: | 2018-06-21 |
公开(公告)号: | CN109062704A | 公开(公告)日: | 2018-12-21 |
发明(设计)人: | 鲁法明;陶冉冉;包云霞;张雪萍 | 申请(专利权)人: | 山东科技大学 |
主分类号: | G06F9/52 | 分类号: | G06F9/52 |
代理公司: | 青岛智地领创专利代理有限公司 37252 | 代理人: | 种艳丽 |
地址: | 266590 山东省青岛*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 死锁检测 死锁 计算机技术领域 状态爆炸问题 变迁序列 检测 带环 并发 缓解 配置 进程 保证 | ||
本发明公开了一种面向死锁检测的无界Petri网展开方法,属于计算机技术领域。本发明针对无界Petri网领域并且保证新的展开方法检测到的死锁全部真实存在;本发明中所得展开中每一个配置对应的带环或无环的变迁序列均可从初始标识引发;本发明在不存在ω‑条件的情形下可以对网系统的死锁作出完整、准确的检测;本发明的规模比复可达树小,能够缓解Petri网中由并发进程导致的状态爆炸问题。
技术领域
本发明属于计算机技术领域,具体涉及一种面向死锁检测的无界Petri网展开方法。
背景技术
由于具有坚实的数学理论支撑、成熟的图形分析技术和强大的仿真工具,Petri网在FMS(柔性制造系统)、BPM(业务过程管理技术)、协议验证等领域被广泛应用于分布式并发系统的建模与分析,能够很好的刻画系统中的异步、冲突、并发等突发情况。状态空间爆炸一直是Petri网在大规模并发系统验证与分析过程中的一个难题,同时阻碍了网系统的死锁检测。死锁的发生会导致系统的整体或者局部运行处于瘫痪状态,降低资源利用率和系统生产率,进而导致不必要的损失,死锁检测至关重要。
为此,展开技术被提出并用于网系统的行为刻画,它能有效解决变迁并发的导致的状态爆炸问题。现有的展开技术大部分针对有界Petri网。对于无界Petri网,现有的展开技术参考可覆盖树的思想引入ω条件来表示无界库所。这种技术存在于可覆盖树相同的缺点,展开中可能存在不可引发的变迁序列和不可达的状态标识,从而不适合进行无界Petri网的死锁检测。
发明内容
针对现有技术中存在的上述技术问题,本发明提出了一种面向死锁检测的无界Petri网展开方法,设计合理,克服了现有技术的不足,具有良好的效果。
为了实现上述目的,本发明采用如下技术方案:
一种面向死锁检测的无界Petri网展开方法,首先进行如下定义:输入为无界原型Petri网∑=(P,T;F,M0),输出为网展开Petri网∑由库所集,变迁集和流关系集以及初始标识确定;为采用新展开技术构造的出现网,条件集B包括三类条件,分别为普通条件,ω+条件和ω-条件,E为事件集,F'是条件与事件之间的流关系集,h为中结点的标记函数,反映Petri网中的结点与中的结点之间的映射关系;γ代表如下的映射关系:如果b为普通条件,则γ(b)=1;如果b为ω+条件,γ(b)=ω;如果b为ω-条件,假设代表任意变迁t属于变迁集合T,t的前集非空,则对于满足的变迁t,只需要添加一个新库所p和两个流关系(p,t),(t,p),就能使得新Petri网与原Petri网的行为一致;
所述的面向死锁检测的无界Petri网展开方法,具体包括如下步骤:
步骤1:根据Petri网中初始标识M0的非零分量,向新展开中添加初始条件,对应关系如下:
h(bi_j)=pi∧γ(bi_j)=1 (1);
其中,pi为初始标识M0的非零分量对应的库所,i∈N,N为总库所数,j∈{1,2,...,L},L对应库所pi中的令牌数,bi_j为添加到条件集B中的一个普通条件;
步骤2:计算新展开中由各并发极大条件子集及其可使能的变迁构成的候选ω-扩展集合PE,每个ω-扩展<t,Bt>由一个变迁t和一个条件子集Bt构成,其中Bt为条件集B的子集,包含普通条件集和ω+、ω-条件集两个子集,Bt为最大条件子集,满足
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东科技大学,未经山东科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810640019.0/2.html,转载请声明来源钻瓜专利网。