第一部分Petri

Download Report

Transcript 第一部分Petri

第一部分
Petri网的基本概念
提纲

网与网系统

库所/变迁系统与加权Petri网

并发与冲突
网与网系统


Petri网是一种网状信息流模型,包括库所和变迁两类节点,同时在
库所集上添加表示状态信息的托肯分布(标识)

库所表示条件、资源、等待队列和信道等

变迁表示事件、动作、语句执行和消息发送/接受等

一个变迁(事件)有一定数量的输入和输出库所,分别代表事件的前置
条件和后置条件

库所中的托肯代表可以使用的资源数量或数据
Petri网按引发规则使得事件驱动状态的演变,从而反映系统动态运
行过程
网与网系统
p1
c1
t1
t3
例:网N1=(P1,T1; F1),其中
P1 = {p1, p2, c1, c2, B}
T1={t1, t2, t3, t4}
B
p2
t2
F1={(p1, t1),(t1, p2), }
c2
t4
网与网系统

定义1.1. 三元组N=(P,T;F)称作网当且仅当:
(1) PT≠Φ, PT=Φ;
(2) F(PT)(TP);
(3)dom(F)cod(F)=PT
其中,
dom(F)={x  PT | yPT: (x, y) F}
cod(F) ={x  PT | yPT: (y, x) F}
这里,
P表示库所(Place)集合
T表示变迁(Transition)集合
F是网的流关系(Flow)
网与网系统

定义1.2. 设N=(P,T;F)为一个网,对 xPT,令
•x
= {y | yPT  (y, x)F}
x• = {y | yPT  (x, y)F}
称•x为x的前集或输入集, x•为x的后集或输出集。称•x
 x• 为元素x的外延。
一个库所的外延是变迁集T的一个子集
一个变迁的外延是库所集P的一个子集
网与网系统
p1
c1
t1
例:网N1=(P1,T1;F1),其中
t3
•t
2
= {p2}
t2• = {p1, B}
B
p2
t2
c2
t4
网与网系统

定义1.3. 设N=(P,T;F)为一个网
(1)若对 xPT, •x  x• =Φ,则称N为一个纯网(pure net)。
(2)若对 x, yPT,(•x= •y)(x• =y• ) →x=y,则称N为一个简
单网(simple net)。
(3)若 pP,|•p|=|p•|=1,则称N为一个T-图(T-Graph)或标
识图(marked graph)。
(4)若 tT,|•t|=|t•|=1,则称N为一个S-图(S-Graph)或状态
机(state machine)。
(5)若t1,t2 T (t1 ≠ t2), •t1  •t2≠Φ → |•t1|=|•t2|=1,则称N为
一个自由选择网(free-choice net)。
(6)若t1,t2 T (t1 ≠ t2), •t1  •t2≠Φ → •t1=•t2,则称N为一个扩充
的自由选择网(extended free-choice net)。
网与网系统

定义1.4. 四元组PN=(P,T;F,M0)称作Petri网(网系统)当且仅当
(1) N=(P,T;F)为一个网;
(2)映射M:P →{0,1,2,}(非负整数集)称为网N的一个标识,其中,M0是初始
标识;
(3)引发规则:
(3.1)变迁t T称为使能的当且仅当:  p  •t:M(p)1,记作M[t>;
(3.2)在M下使能的变迁t可以引发,引发后得到一个新的标识M’,记作M[t>M’,对pP,
有
 M ( p )  1 当 p  t  t 

M ( p)   M ( p)  1 当 p  t   t
 M ( p)
否则

网与网系统
p1
M01={1,0,0}
c1
t1
p1
M02={0,1,0}
p1
t1
t3
p2
t1
p2
B
p2
t2
c2
t2
t4
p3
t2
p3
一个网系统的全部可能的运行情况由它的基网N和初始标识M0完全确定。
因此,给出了基网和初始标识,也就唯一确定了一个网系统
提纲

网与网系统

库所/变迁系统与加权Petri网

并发与冲突
库所/变迁系统与加权Petri网

库所/变迁系统(简称P/T系统)是在定义
1.4的Petri网基础上增加两个函数得到的
 库所集上的容量函数
 有向边上的权函数

增加这两个函数的目的是使得对某些实际
系统建模显得方便
库所/变迁系统与加权Petri网

定义1.5. 六元组Σ=(P,T;F,K,W,M0)称作一个库所/变迁网系统,其中
(1) N=(P,T;F)为一个网;
(2) W: F →{1,2,}(正整数集)称为权函数;
(3) K: P →{1,2,}(正整数集)称为容量函数;
(4) M: P →{0,1,2,}是一个标识,满足p P:M(p)K(p)其中,M0是初始标识;
(5)引发规则:
(5.1)对于t  T,M[t>的引发条件
H2


p  t  t : M ( p)  W (t , p)  K ( p)



p  t  t : M ( p)  W (t , p)  W ( p, t )  K ( p) 
p  t : M ( p)  W ( p, t )

2

H2O
t
2
(5.2)若M[t>M’,对pP,有
 M ( p )  W ( p , t ) 当 p  t  t 

 
 M ( p )  W (t , p ) 当 p  t  t
M ( p )  


 M ( p )  W (t , p )  W ( p, t ) 当 p  t  t
 M ( p ) 否则
O2
例:化学反应的P/T系统
库所/变迁系统与加权Petri网
p1
c1
t1
p1
t3
t1
B
p2
p2
t4
定义1.4的Petri网
t3
B
c2
t2
c1
1
c2
t2
t2无法引发
t4
P/T系统
库所/变迁系统与加权Petri网

对于一个库所/变迁系统Σ=(P,T;F,K,W,M0),若规定
 p P:K(p)=
 f F:W(f)=1
那么,就变成形如定义1.4给出的网系统(原型Petri网)


对于一个P/T系统,如果规定各个库所的容量都为无穷大,即取消库所集上
的容量函数而保留有向边集上的权函数,就得到一种介于原型Petri网和
P/T系统之间的网系统模型Σ=(P,T;F,W,M0),称这种模型为加权Petri网
(weighted Petri net)
P/T系统并不比原型Petri网具有更强的模拟能力,凡是可以用P/T系统对
其建模的实际系统,也可以用原型Petri网对其建模。每一个P/T系统都可
以转换为一个行为等效的Petri网
库所/变迁系统与加权Petri网
等价的原型Petri网
p
p
K(p)=2
容量限制
p
t
t
p
2
权函数
p
t
2
p
t
提纲

网与网系统

库所/变迁系统与加权Petri网

并发与冲突
并发与冲突

定义1.6. 设PN=(P,T;F,M0)是一个Petri网, t1和t2是PN中的两
个变迁。如果PN的一个标识M使得M[t1>且M[t2>,那么若
M[t1>M1 → M1 [t2> 且
M[t2>M2 → M2 [t1>
则称t1和t2在M并发,记为M[{t1 , t2 } >。
如果两个事件(变迁)在某状态下都有发生权,而且其中任何一个的发生
都不会使另一个失去发生权,则称这两个事件在该状态下处于并发
并发不能简单地理解为“同时发生”,而是指事件之间因果上的无依赖性。
按网论的观点,事件的发生只依赖于它们的外延,而与全局情况无关
并发与冲突

定义1.7. 设PN=(P,T;F,M0)是一个Petri网, t1和t2是PN中的两个变迁。
如果PN的一个标识M使得
(1)M[t1> 但 M[t2> ;
(2)M[t1>M1 → M1 [t2>
则称t1和t2存在顺序关系。
t0
p1
p4
t1
t3
p2
p5
p0
t2
p3
t5
t4
p6
并发与冲突

定义1.8. 设PN=(P,T;F,M0)是一个Petri网, t1和t2是PN中的两
个变迁。如果PN的一个标识M使得M[t1>且M[t2>,那么若
M[t1>M1 → M1 [t2> 且
M[t2>M2 →  M2 [t1>
则称t1和t2在M冲突。
冲突关系描述了系统的非确定性:在某情况下有两个(或多个)事件都有权
发生,但在实际运行过程中,只有一个能真正发生。系统存在冲突之处,正
是外界环境可以对其施加控制(加以选择)之处。
并发与冲突
t1
t1和t2冲突
t2
p2
t1
p3
p1
t3
p2
t2
p3
p1
t3
t4
t4
并发和冲突的示例
t3和t4并发
控制装置
p2
t1
p2
t2
p3
p1
t3
t4
p1
t1
t2
p4
p5
p3
t1和t2不是冲突,而是并发关系
并发与冲突
p1
t1
p2
t2
t3
t1
p4
p5
p3
t3
p2
t2
p3
p1
p4
混惑的示例

混惑
p5

同时存在并发和冲突,但由于并发事件中的某些事件的发生,会使冲突自动消失,如(1)所
示。

系统在某些状态下存在并发,并发事件中不同事件的发生,使得系统可能存在冲突,也可能
不出现冲突,如(2)所示。
存在混惑的网系统不是好的系统模型,因为在这种网系统的运行中,冲突是否出现无法确定,不便
于对系统施加外部控制,在建立实际系统的Petri网模型时,应尽量避免出现混惑。