Petri Net
2009-04-10 16:34
148 查看
來源:http://www.cublog.cn/u/17347/showart_216256.html
由于Petri网能够表达并发的事件,被认为是自动化理论的一种。研究领域趋向认为Petri网是所有流程定义语言之母。
经典Petri网
经典的Petri网是简单的过程模型,由两种节点:库所和变迁,有向弧,以及令牌等元素组成的。
Petri网的结构
(1) Petri网的元素:
库所(Place)圆形节点
变迁(Transition)方形节点
有向弧(Connection)是库所和变迁之间的有向弧
令牌(Token)是库所中的动态对象,可以从一个库所移动到另一个库所。
(2) Petri网的规则是:
有向弧是有方向的
两个库所或变迁之间不允许有弧
库所可以拥有任意数量的令牌
行为
如果一个变迁的每个输入库所(input place)都拥有令牌,该变迁即为被允许(enable)。一个变迁被允许时,变迁将发生(fire),输入库所(input place)的令牌被消耗,同时为输出库所(output place)产生令牌。
变迁的发生是原子的
有两个变迁都被允许的可能,但是一次只能发生一个变迁
如果出现一个变迁,其输入库所的个数与输出库所的个数不相等,令牌的个数将发生变化
Petri网络是静态的
Petri网的状态由令牌在库所的分布决定
Petri网的形式化定义
一个经典的Petri网由四元组(库所,变迁,输入函数,输出函数)组成。任何图都可以映射到这样一个四元组上,反之亦然。
Petri网流程建模
一个流程的状态是由在场所中的令牌建模的,状态的变迁是由变迁建模的。令牌表示事物(人,货物,机器),信息,条件,或对象的状态; 库所代表库所,通道或地理位置;变迁代表事件,转化或传输。
一个流程有当前状态,可达状态,不可达状态。
经典Petri网的局限性
没有测试库所中零令牌的能力
模型容易变得很庞大
模型不能反映时间方面的内容
不支持构造大规模模型,如自顶向下或自底向上
高级Petri网
为了解决经典Petri网中的问题,研究出了高级Petri网,在以下方面进行了扩展:
令牌着色
一个令牌通常代表具有各种属性的对象,因此令牌拥有值(颜色)代表由令牌建模的对象的具体特征,如一个令牌代表一个工人(张三,28岁,经验3级)。
时间
为了进行分析,我们需要建模期间,延迟等,因此每一个令牌拥有一个时间戳,变迁决定生产出的令牌的延迟。
层次化
构造一个复杂性与数据流图相当的Petri网的机制。子网是由库所,变迁和子网构成的网络。
时序
增加时序逻辑的定义,更好的描述行为过程。
Petri网的应用
Petri网的应用非常广泛,以下是Petri网比较常用的几种应用:
软件设计
工作流管理
工作流模式
数据分析
并行程序设计
协议验证
Petri Net
Petri网是对离散并行系统的数学表示。Petri网是1960年代由卡尔·A·佩特里发明的,适合于描述异步的、并发的计算机系统模型。Petri网既有严格的数学表述方式,也有直观的图形表达方式,既有丰富的系统描述手段和系统行为分析技术,又为计算机科学提供坚实的概念基础。由于Petri网能够表达并发的事件,被认为是自动化理论的一种。研究领域趋向认为Petri网是所有流程定义语言之母。
经典Petri网
经典的Petri网是简单的过程模型,由两种节点:库所和变迁,有向弧,以及令牌等元素组成的。
Petri网的结构
(1) Petri网的元素:
库所(Place)圆形节点
变迁(Transition)方形节点
有向弧(Connection)是库所和变迁之间的有向弧
令牌(Token)是库所中的动态对象,可以从一个库所移动到另一个库所。
(2) Petri网的规则是:
有向弧是有方向的
两个库所或变迁之间不允许有弧
库所可以拥有任意数量的令牌
行为
如果一个变迁的每个输入库所(input place)都拥有令牌,该变迁即为被允许(enable)。一个变迁被允许时,变迁将发生(fire),输入库所(input place)的令牌被消耗,同时为输出库所(output place)产生令牌。
变迁的发生是原子的
有两个变迁都被允许的可能,但是一次只能发生一个变迁
如果出现一个变迁,其输入库所的个数与输出库所的个数不相等,令牌的个数将发生变化
Petri网络是静态的
Petri网的状态由令牌在库所的分布决定
Petri网的形式化定义
一个经典的Petri网由四元组(库所,变迁,输入函数,输出函数)组成。任何图都可以映射到这样一个四元组上,反之亦然。
Petri网流程建模
一个流程的状态是由在场所中的令牌建模的,状态的变迁是由变迁建模的。令牌表示事物(人,货物,机器),信息,条件,或对象的状态; 库所代表库所,通道或地理位置;变迁代表事件,转化或传输。
一个流程有当前状态,可达状态,不可达状态。
经典Petri网的局限性
没有测试库所中零令牌的能力
模型容易变得很庞大
模型不能反映时间方面的内容
不支持构造大规模模型,如自顶向下或自底向上
高级Petri网
为了解决经典Petri网中的问题,研究出了高级Petri网,在以下方面进行了扩展:
令牌着色
一个令牌通常代表具有各种属性的对象,因此令牌拥有值(颜色)代表由令牌建模的对象的具体特征,如一个令牌代表一个工人(张三,28岁,经验3级)。
时间
为了进行分析,我们需要建模期间,延迟等,因此每一个令牌拥有一个时间戳,变迁决定生产出的令牌的延迟。
层次化
构造一个复杂性与数据流图相当的Petri网的机制。子网是由库所,变迁和子网构成的网络。
时序
增加时序逻辑的定义,更好的描述行为过程。
Petri网的应用
Petri网的应用非常广泛,以下是Petri网比较常用的几种应用:
软件设计
工作流管理
工作流模式
数据分析
并行程序设计
协议验证
相关文章推荐
- stochastic petri net 学习笔记1
- 【习题 6-7 UVA - 804】Petri Net Simulation
- Tikz:Tutorial: A Petri-Net for Hagen
- UVa 804 Petri Net Simulation
- Petri-net
- 804 - Petri Net Simulation(简单魔模拟)
- [中等] UVa OJ 804 Petri Net Simulation
- 804 - Petri Net Simulation
- Petri-net Tools and Software
- Dynamic Power Management of Complex Systems Using Generalized Stochastic Petri Nets
- Petri nets toolbox for matlab
- 习题6-7 Petri网模拟(Petri Net Simulation, ACM/ICPC World Finals 1998, UVa804)
- CPNTOOLS---Computer Tool for Coloured Petri Nets
- UVA 804 Petri Net Simulation
- UVa 804 - Petri Net Simulation(模拟)
- Particle Petri Nets for Aircraft Procedure Monitering Under Uncertainty
- Petri Net Simulation UVA - 804
- color petri net tool
- UVA - 804 Petri Net Simulation
- [刷题]算法竞赛入门经典(第2版) 6-7/UVa804 - Petri Net Simulation