petri网

规则:http://roclinux.cn/?p=1592

Petri网是对离散并行系统的数学表示。Petri网是1960年代C.A.佩特里发明的,适合于描述异步的、并发的计算机系统模型。Petri网既有严格的数学表述方式,也有直观的图形表达方式。

由于Petri网能表达并发的事件,被认为是自动化理论的一种。研究领域趋向认为Petri网是所有流程定义语言之母。

经典的Petri网是简单的过程模型,由两种节点:库所和变迁,有向弧,以及令牌等元素组成的。

petri网图

Petri网的元素:

  • 库所(Place)圆形节点
  • 变迁(Transition)方形节点
  • 有向弧(Connection)是库所和变迁之间的有向弧
  • 令牌(Token)是库所中的动态对象,可以从一个库所移动到另一个库所。

Petri网的规则是:

  • 有向弧是有方向的
  • 两个库所或变迁之间不允许有弧
  • 库所可以拥有任意数量的令牌

行为

如果一个变迁的每个输入库所(input place)都拥有令牌,该变迁即为被允许(enable)。一个变迁被允许时,变迁将发生(fire),输入库所(input place)的令牌被消耗,同时为输出库所(output place)产生令牌。

注意:

  • 变迁的发生是原子的;
  • 有两个变迁都被允许的可能,但是一次只能发生一个变迁;
  • 如果出现一个变迁,其输入库所的个数与输出库所的个数不相等,令牌的个数将发生变化;
  • Petri网络是静态的;
  • Petri网的状态由令牌在库所的分布决定。

两个变迁争夺一个令牌的情形被称之为冲突

多个弧连接两个节点的情况。在输入库所和变迁之间的弧的个数决定了该变迁变为被允许需要的令牌的个数。弧的个数决定了消耗/产生的令牌的个数。

时间: 2024-08-26 09:24:57

petri网的相关文章

基于Petri网的工作流分析和移植

基于Petri网的工作流分析和移植 一.前言 在实际应用场景,包括PEC的订单流程从下订单到订单派送一直到订单完成都是按照一系列预先规定好的工作流策略进行的. 通常情况下如果是采用面向过程的编程方法,我们采用的方式无非就是判断当前的工作流状态以及操作步骤来选择工作流分支继续下一步,如果整个工作流从起始到结束所执行的步骤不多的话,采用此方式相当简便,但如果步骤一多起来,或者分支太多以及需要判断的或者切换的状态太多的时候,很容易出错,或者说在原有的工作流分支上新增一个操作步骤,则改起代码来会非常繁琐

第五组 立项说明书

概述: 我们组要做的是知识书项目,所谓的知识树就是把书以各个知识点划分方便学生查看和老师修改.最后的项目我们将用网站实现,通过用户交互来实现不同的功能,当用户改变时相应的功能也会改变. 可行性: 对于技术的可行性,我这样认为,首先主页的显示与打开这本书的超链接如图所示 接下来我们进入下一个页面用户的选择 下面就是章节的选择,当选择不同用户时,对应的功能也不同,下面是用户为学生的功能 这张是对应老师的功能 继续选择内容页面 技术选型: 要求用html+css进行前台的制作,数据库来储存知识点. 过

软件工程—理论、方法与实践

第一章  概述 软件是计算机程序.规程以及计算机系统可能需要的相关文档和数据. 软件一般分为通用和定制软件. 软件的特性: 1.软件是复杂的: 2.软件是不可见的: 3.软件是不断变化的: 4.大多数软件是定制的,而不是通过已有的构件组装的. 软件工程师为了经济的获得能够在实际机器上高效运行的可靠软件而建立和使用的一系列好的工程化原则. 软件危机 1.软件开发的成本和进度难以进行准确估计,延迟交付甚至取消项目的现象屡见不鲜: 2.软件存在着错误多.性能低.不可靠.不安全等质量问题: 3.软件成本

软件工程——理论、方法与实践 之 软件工程中的形式化方法

软件工程——理论.方法与实践 之 软件工程中的形式化方法 从广义上讲,形式化方法是指将离散数学的方法用于解决软件工程领域的问题,主要包括建立精确的数学模型以及对模型的分析活动.狭义的讲,形式化方法是运用形式化语言,进行形式化的规格描述.模型推理和验证的方法.形式化方法运用于软件工程实践当中主要目的是保证软件的正确性.软件开发实际上就是把现实世界的需求映射成软件额模型化过程.该过程包括:形式规约.形式证明我与检验.程序求精三方面的活动. 形式化规格说明是对软件系统对象,对象的操作方法,以及对象行为

阅读《软件工程—理论方法与实践》第五章心得体会

阅读第五章所了解到的基本知识,形式化方法是指将离散数学的方法用于解决软件工程领域的问题,主要包括建立精确的数学模型以及对模型的分析活动.主要目的是保证软件的正确性.已建立的形式化方法可分为操作类和描述类.操作类方法基于状态和转移;描述类基于数学公理和概念.形式证明与验证技术主要包括模型检测(适用于有穷状态系统,完全自动化并且验证速度快)和定理证明(采用逻辑公式来表示系统规约及其性质,分为自动和交互式两种).一阶线性时态逻辑是一阶谓词逻辑的扩展.对汉诺塔操作规划问题有了更深一步的理解.计算树逻辑是

软件工程中的形式化方法

软件的设计过程就是一个建立形式规约的过程.软件开发实际上就是把现实世界的需求映射成软件的模型化方法.软件规格说明是对软件系统对象,对象的操作方法,以及对象行为的描述.形式证明与验证技术主要包括模型检测和定理证明.程序求精是将自动推理和形式化方法相结合,从抽象的形式规约推演出具体的面向计算机的程序代码的全过程.模态(Modal)逻辑是经典命题逻辑和一阶谓词逻辑的扩展形式.Kripke结构.1.一阶线性时态逻辑(FOLTL)是一阶谓词逻辑的扩展.2.计算树逻辑(CTL)是一种离散.分支时间.命题时态

scala简单介绍

前言 Scala 是一门多范式(multi-paradigm)的编程语言,设计初衷是要集成面向对象编程和函数式编程的各种特性. Scala 运行在Java虚拟机上,并兼容现有的Java程序. Scala 源代码被编译成Java字节码,所以它可以运行于JVM之上,并可以调用现有的Java类库. Scala跟JAVA很像,假如你之前已经掌握了JAVA,那么学习Scala将会简单很多 简介 Scala 是 Scalable Language 的简写,是一门多范式的编程语言 联邦理工学院洛桑(EPFL)

Java开源 开源工作流

OpenEbXML   点击次数7801 Werkflow   点击次数11181 OSWorkflow   点击次数14988 wfmOpen   点击次数7997 OFBiz   点击次数12342 ObjectWeb Bonita   点击次数8808 Bigbross Bossa   点击次数8502 XFlow   点击次数7898 Taverna   点击次数7222 Enhydra Shark   点击次数9526 PowerFolder   点击次数7866 Open Busin

《软件工程 ——理论、方法与实践》知识概括第五章 软件工程中的形式化方法

第5章 软件工程中的形式化方法    从广义上讲,形式化方法(Formal Method)是指将离散数学的方法用于解决软件工程领域的问题,主要包括建立精确的数学模型以及对模型的分析活动.狭义的讲,形式化方法是运用形式化语言,进行形式化的规格描述.模型推理和验证的方法.将形式化方法运用于软件工程实践当中的只要目的是保证软件的正确性. 软件生命周期中的形式化转化策略:常用转化策略.直接转化策略和运用半形式化表示的中间转化策略. 进行模型化的过程中涉及到三种系统模型:现实世界.模型表示和计算机系统.