第3篇-协议形式化描述技术(2-PetriNet).ppt

  1. 1、本文档共64页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第 3 章 协议形式化描述技术 (2-PetriNet) 内容提要 PetriNet (PN) 德国学者C. A. Petri于1962年在其博士论文《用自动机通信》中首次提出的一种特殊的自动机模型,后来被称为Petri网。 Petri网也是一种状态变迁模型,它允许同时发生多个状态变迁,因而Petri网是一种并发模型。 Petri网适合于并发、异步、分布式系统描述与分析的图形数字工具,可用来描述通信系统中各异步成分之间的关系,已被广泛应用于计算机科学、电子学、机械学、化学、物理学等许多领域。 PetriNet: Formal Definition Petri网可定义为一个4元组 (P, T , I, O),其中: P = {p1, p2,…, pn}是位置(places)的有限集合; T = {t1, t2,…, tm}是变迁(transitions)的有限集合,且T与P不相交,即T∩P = ?。 I是输入函数,是变迁T到位置的映射。对于每一个tk∈T,可得出相应的I(tk)={pi, pj,…}。 O是输出函数,也是一种变迁T到位置的映射。对于每一个tk∈T,可以得出相应的 O(tj)={pr, ps,…}。 也有文献将其定义为5元组: (P, T , I, O,M) M = {m1, m2,…, mn}是标记(tokens, “旗标”或“托肯”)的集合 PetriNet: Representation Using Graph Petri所处的状态是由标记的分布来决定: 在位置pi中的标记个数常?i来表示。上图中, ?1 = 2,?2 = ?3 = ?4 = ?5 = 0 也可以用向量? = (?1, ?2, … , ?n)来表示整个Petri网的标记分布情况。可以看出,现在? = (2, 0, 0, 0, 0)。 PetriNet: 状态变迁(Transitions) 发生变迁的条件: 必须有1个或多个变迁满足变迁条件。变迁条件就是某个变迁tj的所有输入位置中都必须有标记存在,并且当输入位置有多根弧线指向这个变迁时,该输入位置也至少具有和弧线根数相等的标记数。 如,上图中的t1 必须发生点火(firing)。所谓点火就是发生了一些事件(1个或多个),而这些事件所对应的变迁满足变迁条件。 发生点火后,标记要重新分布。标记移动规则是: 从点火的变迁tj所有输入位置中均取出标记,每个位置取出的标记数等于该位置指向点火的tj的弧线数; 然后再将标记送入tj的所有输出位置中去,送入每个位置的标记数等于点火的tj指向该位置的弧线数。 PetriNet: 状态变迁例子 PetriNet: 状态变迁例子(Cont.) PetriNet: 状态变迁例子(Cont.) PetriNet: 状态变迁类型 顺序变迁。如图(a)所示。只有当t1点火后t2才能点火。 并发变迁,如图(b)所示。t1和t2可同时(当然也可以单独)点火。 互斥变迁,如图(c)所示。t1和t2中只能有一个点火。一个点火后另一个就不能再点火了。 内容提要 PetriNet的扩充 为适应不同规范描述及验证的需求,从基本Petri网模型衍化出许多扩展模型系统,如 谓词/动作Petri网、 时间Petri网(Time PetriNet)、 带时态逻辑的Petri网、 有色Petri网(Coloured PetriNet)、 面向对象Petri网(OOPN)、 随机Petri网(Stochastic PetriNet)、 数字Petri网(NPN) ...... PetriNet的扩充(续) 主要从以下几个方面来扩充 基于标记和位置的扩充 基于输入函数和输出函数的扩充 基于变迁的扩充 基于位置和标记的扩充 在标准的Petri网中,所有的标记都是一样的,没有名字。 如果我们将一个位置中的不同标记用不同的名字或标识号来表示,就可以大大扩充标记的表达能力。这种有名标记的Petri就是有色Petri网(Color PetriNet) 例如,如果位置中的标记表示系统资源时,名字不同的标记就可表示不同的资源。 同样,如果用标记表示报文,则名字不同的标记就代表着内容不同的报文或序列号不同的报文。 基于输入函数和输出函数的扩充 在标准Petri网中,输入函数和输出函数中每个位置只出现一次,即转换触发时,输入函数的每个位置中只减少一个标记,输出函数中的每个位置中只增加一个标记。 如果我们允许每个位置可以减少或增加多个标记,并且在它们的弧线上标上增加或减少的标记数,则同样可以增强Petri网的表达能力,如图(b)所示。 基于输入函数和输出函数的扩充(续) 在标准Petri网中,某个变迁tj的所有输入位置中都必须有标记存在,并且当输入位置有多根弧线

文档评论(0)

0520 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档