深入理解 Petri 网:原理、类型与应用
1. 引言
在系统建模领域,Petri 网是一种强大的工具,它能够对控制流进行全面描述。Petri 网主要聚焦于因果依赖关系的建模,最初由 Carl Adam Petri 在 1962 年提出。这种建模方式不依赖全局同步,因此特别适合用于建模分布式系统。
Petri 网的关键元素包括条件、事件和流关系。条件有满足和不满足两种状态,事件可以发生,流关系则描述了事件发生前必须满足的条件以及事件发生后会变为真的条件。在图形表示中,通常用圆圈表示条件,用方框表示事件,箭头表示流关系。
2. 简单示例:单轨铁路段
以单轨铁路段为例,该铁路需双向使用,为避免列车相向行驶发生碰撞,引入了令牌机制。在 Petri 网模型中,令牌由模型中心的一个条件表示。当一个部分填充的圆圈(即圆圈内包含一个填充的小圆圈)出现时,表示条件满足,意味着轨道可用。
当一列火车想要向右行驶时,“火车从左侧进入轨道”这一事件的两个前置条件得到满足,这两个条件被称为前置条件。如果事件的前置条件都满足,事件就可以发生。事件发生后,令牌不再可用,也没有火车等待进入轨道,前置条件不再满足,部分填充的圆圈消失。此时,火车从左向右行驶在轨道上,相应的条件得到满足,这就是后置条件。
如果有两列火车竞争单轨铁路段,只有一列火车可以进入。在这种情况下,下一个要触发的转换是不确定的,对网的分析必须考虑所有可能的触发序列,这体现了 Petri 网对非确定性的建模。
3. Petri 网的类型
3.1 条件/事件网
条件/事件网是 Petri 网的一种基本类型,其正式定义