论文部分内容阅读
由于面向对象Petri网的应用越来越广泛,以及人机交互行为在软件开发过程和实际应用中的重要性,因此本论文通过分析面向对象Petri网的结构特性,致力于死锁检测的研究,运用代数分析的方法判断人机交互系统的面向对象Petri网模型是否有死锁存在。虽然Petri网模型中的死锁研究已是非常多,但一般都是针对普通Petri网的,并不能很好地适用在面向对象Petri网和人机交互系统中。由于面向对象Petri网综合了普通Petri网和面向对象两种方法的优点,本文在深入研究了现有方法的前提下,提出了一种适用于面向对象Petri模型中死锁检测的算法。此算法根据面向对象技术的封装性,将对象子网进行分层,并由层次分析的思想对各个对象子网进行研究,相当于把一个大系统分成了许多小系统,这样就大大减少了性质分析的复杂度。为了进一步减少分析复杂度以及解决状态空间爆炸等问题,在普通Petri网具有图形化和严格数学意义等特性的基础上,提出了保持死锁性质的六条约简规则,这些约简规则有效地减少了要分析的节点数,提高了性质分析的效率。现有可达性判断的方法主要是基于库所不变式和状态方程的分析,但库所不变式方法没有完全包含网系统初始标识的信息,而Petri网状态方程方法是无法描述变迁发射先后次序的。本文提出了一种新的判断Petri网标识可达性的算法,此算法不但弥补了以上两种方法的缺点,而且可以有效地找出从初始标识到目标标识的可达路径,或者判断出目标标识是不可达的。本文在这个可达算法的基础上,还提出一种在不穷举网系统所有标识的前提下求解死锁标识的算法。最后综合了所有分析结论和子算法,得出面向对象Petri网系统的完整死锁检测算法。在整个面向对象Petri网系统的完整死锁检测研究过程中,论文总结和归纳了许多有用的概念和结论,而且这些概念和结论对于网系统其他相关分析也是普遍使用的。