Petri网化简技术的动态特性研究

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Petri网化简技术的动态特性研究
闫博钊;乐晓波;周恺卿;莫礼平
【摘要】对于大而复杂的Petri网,"节点过多,状态爆炸"一直是阻碍其技术发展的主要问题,因此,如何有效地简化Petri网一直是Petri网研究领域的一个研究热点.将Petri网简化为若干子网是一个很有效的方法.提出了库所指标概念,根据该指标,给出了Petri网的分解定义,并给出了相关算法.在此基础上,依据所给出的算法研究化简技术的动态特性,将子网与原网的特性对应起来进行研究,为复杂系统的Petri 网的分析提供了一种有效的途径.%For the large and complicated Petri nets, the main problem hindering the technology development is always that "too many nodes lead to station explosion". Therefore, how to simplify Petri nets effectively has always been a research focus and to simplify it to be several subnets is a very effective method. With the decomposition method of Petri nets by defining an index function on the place set, this paper gave the decomposed definition of Petri nets and proposed the related algorithms. Based on the above research, according to the dynamic feature of simplifying technology via researches of the given algorithms, the authors studied the special properties of subnet correspondingly and provided an efficient approach to analyze the Petri nets of complicated systems.
【期刊名称】《计算机应用》
【年(卷),期】2011(031)006
【总页数】4页(P1641-1644)
【关键词】Petri网;化简;动态特性;状态爆炸
【作者】闫博钊;乐晓波;周恺卿;莫礼平
【作者单位】长沙理工大学计算机与通信工程学院,长沙410076;长沙理工大学计
算机与通信工程学院,长沙410076;长沙理工大学计算机与通信工程学院,长沙410076;吉首大学数学与计算机科学学院,湖南吉首416000
【正文语种】中文
【中图分类】TP18;TP301
0 引言
作为系统模拟和分析的工具,Petri网理论被广泛地应用于多个领域进行系统的建模、分析和控制[1-2]。

随着Petri网研究的不断深入,“状态空间爆炸”问题成为阻碍其进一步发展的主要瓶颈问题之一。

在利用Petri网理论为实际系统建模和分析过程中,随着系统的日益庞大化和复杂化,网的可达状态和条件数量也相应增加,这样无疑给网的分析带来了困难。

针对这一问题,国内外许多学者对Petri
网的化简技术进行了广泛而深入的研究。

所谓Petri网的化简,是指在某种性质不变的基础上,采用等效变换,以达到缩小状态空间、简化系统分析的目的[3]。

近十年来,国内这方面的研究越来越多。

如:文献[4]中,推广了Murata的工作,提出了加权T图的几种化简运算,研究这些运算对结构性质的保持条件;文献[3]研究了这几种化简规则的实现算法;文献[5]提出了随机Petri网的时间数量级分解、接近无关分解、相应时间保留压缩等随机Petri网分解、压缩技术;文献[6-7]中提出随机Petri网的变迁串、并化简方法;文献[8]中定义了网的并分解和
和分解的概念并研究了一系列重要性质;文献[10-11]中介绍了基于位置不变量
(即S-不变量)的Petri网分析方法,并讨论了原网与子网之间的性质。

本文在已有的研究成果上,提出了一种Petri网的化简方法并给出了相关的算法。

同时,针对网的动态特性进行了深入的分析,建立了原网与子网在动态性质上的对应关系,并用严格的理论证明论证了其正确性,从而可以有效地将子网映射到原网上。

1 Petri网的相关概念
Petri网理论[12]是公认的一种机器适合描述异步的、并发的计算机系统模型。

利用Petri网进行复杂系统的建模,不仅有图形的直观性、结构的层次性等优点,同时还有一套较完整的理论体系来支持对系统的性质和品质分析。

1.1 Petri网的形式化定义
Petri网可以由一个包括库所集、变迁集、流关系、初始情态四部分的四元组描述,具体如定义1。

定义1 PN=(S,T;F,M0)[12],其中:S和T分别称为PN的库所集和变迁集,F为流关系,M0为初始情态集。

S、T和F满足如下四个条件:
1)S∩T=∅;
2)S∪T≠∅;
3)F⊆S×T∪T×S(“×”为笛卡尔积);
4)dom(F)∪cod(F)=S∪T,其中:
dom(F)={x|∃y:(x,y)∈ F},
cod(F)={y|∃x:(x,y)∈ F},
注:dom(F)和cod(F)分别为F的定义域和值域。

1.2 Petri网的相关定义
为了便于分析Petri网,本文给出其相关定义[12]如下。

定义2 设x∈X为PN
的任一元素,
1)·x={y|(y,x)∈F}称为x的前集或输入集;
2)x·={z|(x,z)∈F}称为x的后集或输出集。

定义3 变迁发生条件:
1)·t· = ·t∪ t· 称为 t的外延;
2)t在M有发生权的条件是:
∀s∈·t:M(s)≥W(s,t)且
∀s∈ t·:M(s)+W(t,s)≤ K(s)
t在M有发生权记做M[t>,也说M授权t发生或t在M授权下发生。

定义4 变迁发生后果。

若M[t>,则t在M可以发生,将标识M改变为M的
后继M',M'的定义是:对∀s∈S:
M'为M之后继的事实记做M[t>M'。

2 Petri网的化简及其算法
近几年来,Petri网化简技术方面的研究越来越多,并取得了一系列成果[3-9],为该技术研究者提供了思路。

定义5 设Σ =(S,T;F,M0)为一Petri网[9],函数f:S→{1,2,…,k}满
足:∀s1,s2 ∈ S,∃t∈ T,如果{s1,s2}⊆ t·∨{s1,s2}⊆·t,有f(s1)≠f(s2),则
称f为网Σ的指标函数,f(s)为库所s的指标。

定义 6 设Σ =(S,T;F,M0)为一Petri网[9],f:S→{1,2,…,k}为Σ 的指标
函数,称Σi=(Si,Ti;Fi,M0i)(i=1,2,…,k)为Σ的分解子网,其中:
Si={s∈ S|f(s)=i};i=(1,2,…,k)
Ti={t∈ T| ∃s∈ S,t∈ s·∪· s};i=(1,2,…,k)
Fi=F ∩ {(Si× Ti)∪ (Ti× Si)};i=(1,2,…,k)
M0i=R(M0);i=(1,2,…,k)
由定义5和定义6可以看出,该分解方法会将同一变迁的不同前集或后集分解到
不同的分解子网中,对于同一个子网中的库所,其指标均相等。

因此,提出一个符号λ,表示网中各库所s的标记,其定义如下:
定义7 对∀s∈S,λ(s)=|num(s1)|∀t∈T,∃s1∈S,s1 ≠ s,使得
其中,num(s)表示满足条件的库所的个数。

也就是说,λ(s)为库所集S中和库所s同属于某变迁前集或同属于某变迁后集的库所个数。

依据上述定义,提出网分解算法如下。

算法1 网的分解算法
输入:网 N=(S,T;F)。

输出:网N的指标函数f。

算法步骤如下:
1)令 X=S,Y= ∅,k=1。

2)若X=∅,则跳到6),否则,求出X中所有库所的标记λ(s)。

3)若X中所有库所的标记不全为零,则任取其中一个标记不为零的库所移到集合Y 中,同时,从原网N中删除该库所及与其相连的弧,得到一个新网,记为N'=(S',T;F'),否则,跳到5)。

4)令 X=S',并跳到 2)。

5)若X中的库所均可连接,则令Xk=X,X=Y,Y=∅,k=k+1,跳到2);否则,将
X中不可连接的库所转移到Y中,此时得到新的X和Y,记为X',Y',令Xk=X',X=Y',Y= ∅,k=k+1,跳到2)。

6)对∀s∈ S,若s∈ Xk,则令 f(s)=k。

根据算法1,可以有效地将一个复杂的Petri网分解为几个较为简单的Petri网,
例如,对于如图1所示的网N,为方便表示,不妨令s(k)表示λ(s)=k。

初始时,X=S,Y=∅,k=1,求出X中所有库所的标记,有 X={s1(1),s2(1),
s3(0),s4(1),s5(1),s6(0),s7(0)},取出标记不为零的库所 s1,并转移到 Y,此时,X={s2(0),s3(0),s4(1),s5(1),s6(0),s7(0)},Y={s1},取出 s4并转移到 Y,于是 X={s2(0),s3(0),s5(0),s6(0),s7(0)},Y={s1,s4},易知,X中s3和s7与其他库所不可连接,故转移到Y,因此,X={s2(0),s5(0),s6(0)},
Y={s1,s3,s4,s7},因为 X 中库所标记均为零,则令 X1={s2,s5,s6},
X={s1,s3,s4,s7},Y=∅,k=2,依次下去,最后可以分别求得各个库所指标如下:
f(s1)=f(s3)=f(s4)=f(s7)=2,f(s2)=f(s5)=f(s6)=1。

根据该指标和定义6,可将如图1所示的原网N分解为如图2所示的两个分解子网。

图1 原网N
图2 原网N的2个分解子网
3 原网与子网动态性质的保持分析
将结构复杂的Petri网分解成若干个结构相对简单的分解子网,其原网与子网的动态性质应保持一定的对应关系。

在前面定义及算法的基础上,本文就该对应关系进行了详细的说明论证,这对于分析实际系统的动态行为具有重要的意义。

定理1 设Σ =(S,T;F,M0)为一Petri网,Σi=(Si,Ti;Fi,M0i)(i=1,2,…,k)是通过算法1 得到的分解子网,若有M ∈M0[>,Mi∈M0i[> (i=1,2,…,k),则经过相同的变迁序列后,必有Mi(si)=M(si∈S)。

证明设原网Σ的关联矩阵为C,子网Σi的关联矩阵分别为Ci(i=1,2,…,k),为方便分析,不妨令矩阵Ci(i=1,2,…,k)的行、列数与C均相同,且相同的行(或列)对应的库所(或变迁)也相同,Σi中未出现的库所(或变迁),在其对应的关联矩阵Ci中用元素0来表示。

同样,用 u,ui(i=1,2,…,k)分别表示原网与子网的变迁序列,其维数也设为相同,在ui中未出现的变迁用元素0表示。

另外,假设初始情态 M0,M0i(i=1,2,…,k)也具有相同维数,M0i中未出现的库所值为0。

由算法1可以看出,该分解方法将一个复杂Petri网先分解成一个简单网和一个较为复杂的网,在将较为复杂的网逐步分解,直到子网具有性质:同一变迁的不同前
集或后集分别在不同的子网中。

因此,可将子网的个数简化为2个,分别构造其关联矩阵如下:
又由已知,原网和子网经过相同的变迁序列,故有:
根据分解定义:
由状态方程,可分别到到如下结果:
由此,可知Mi(si)=M(si∈S)。

证毕。

定理1说明,经过相同变迁序列的触发后,分解子网各库所中的托肯数目与原网的保持一致,这定量地分析了子网与原网状态保持的一致性。

另一方面,要说明原网与子网在动态性质上的一致性,还须对它们的可执行性进行深入分析。

定理2 设Σ =(S,T;F,M0)为一 Petri网,Σi=(Si,Ti;Fi,M0i)(i=1,2,…,k)是通过算法1 得到的分解子网,原网Σ是活的的充分必要条件是其分解子网Σi(i=1,2,…,k)均是活的。

证明首先证明必要性。

若原网Σ是活的:
⇔Σ中所有的变迁t∈T都是活的;
⇔对t∈T,若任一可达标识M∈[M0>,均有从M可达的标识M'∈[M >,
使M'[>。

假设分解子网Σi(i=1,2,…,k)中至少有一个网不是活的,不妨设为Σs,则Σs 中必有一个变迁不是活的。

根据算法1,知子网均为原网的一部分,故可知原网中有一个变迁不为活的,这与Σ中所有的变迁t∈T都是活的相矛盾。

所以假设不成立,必要性得证。

证明充分性。

若分解子网Σi=(Si,Ti;Fi,M0i)均是活的,由算法1可知,对原网Σ =(S,T;F,M0),有:
1)
其中:Si∩ Sj= ∅(i,j=1,2,…,k,i≠ j)
2)
其中:Ti∩ Tj≠ ∅(i,j=1,2,…,k,i≠ j).
3)
4)
假设原网Σ不为活的:
⇔Σ中至少有一个变迁t∈T不为活的,则由2)可知,则 t必属于Ti其中一个,不妨设为Ts,则Ts不为活,这与假设矛盾。

故假设不成立,充分性得证。

证毕。

定理2定性地分析了子网同原网活性的一致性,从而保证了依据子网来分析原网的状态的正确性。

此外,以前关于化简性质的研究大多主要针对静态特性而言的,而定理1和定理2证明了原网与子网之间动态特性的不变性,从而为分析大而复杂的Petri网动态特性提供了一种有效的方法。

4 实例分析
以图3为例,进一步验证该分解方法及定理1和定理2的正确性。

在图3中,Σ
为一无环路且具有两输出库所的Petri网。

依据算法 1,经过分解,可得到Σ1,
Σ2,Σ3,Σ4 四个分解子网,如图4所示。

经分析,易知:原网Σ与其分解子网均为活的,且在原网中,T1,T2,T3均可触发。

下面分析,经过 T1,T2,T3 触发后,原网与子网的状态关系。

图3 原网Σ
图4 子网Σ1,Σ2,Σ3,Σ4
下列式子中,C,Ci(i=1,2,3,4)分别为原网与子网的关联矩阵;M0,M0i(i=1,2,3,4)分别为原网与子网的初始情态。

依据分析,有:
M0=(1,1,1,1,0,0,0,0)T,u=(1,1,1)T
M01=(1,0,0,0,0,0,0,0)T,u1=(1,0,1)T
M02=(0,1,0,0,0,0,0,0)T,u2=(1,0,0)T
M03=(0,0,1,0,0,0,0,0)T,u3=(0,1,1)T
M04=(0,0,0,1,0,0,0,0)T,u4=(0,1,0)T
将以上条件带入状态方程:
M=M0+Cu
M1=M01+C1u1
M2=M02+C2u2
M3=M03+C3u3
M4=M04+C4u4
可得:
M=(0,0,0,0,0,0,1,1)T
M1=(0,0,0,0,0,0,1,0)T
M2=(0,0,0,0,0,0,0,0)T
M3=(0,0,0,0,0,0,0,1)T
M4=(0,0,0,0,0,0,0,0)T
显然:
Mi(si)=M(si∈ S)。

子网的状态完全反映原网的状态。

5 结语
目前,Petri网理论及其相关技术越来越广泛地被应用于计算机科学的各应用领域
的建模和分析过程中,但“节点过多,状态空间爆炸”成为阻碍Petri网技术发展的主要瓶颈问题,尤其在目前,实际应用的往往是大而复杂的系统,因此该问题更为突出。

本文在已有的研究基础上提出了Petri网的化简算法,并对其动态特性进行了较深入的研究,给出了相关的定理和证明,建立了原网与子网动态性质的对应关系,从而可以将子网有效地映射到原网上,有较强的理论和实际应用价值。

参考文献:
[1]袁崇义.Petri网原理[M].北京:电子工业出版社,1998.
[2] PETERSON J.Petri net theory and the modeling of systems
[M].Englewood Cliffs:Prentice-Hall,1981.
[3]杨雪,蒋昌俊.Petri网的化简规则在系统中的实现[J].计算机工程与应用,2003,32(2):66 -68.
[4]许安国,蒋昌俊.P/T网的化简运算及其性质研究[J].软件学报,1997,
8(7):493 -504.
[5]林闯.随机 Petri网的分解与压缩技术[J].软件学报,1997,8(7):541-548.
[6]田立勤,林闯,周文江.随机Petri网模型中变迁的串、并联性能等价化简技术[J].电子学报,2002,30(8):1134 -1137.
[7]刘鸿,林闯,吴建平.一种紧同随机Petri网模型的性能分析方法[J].软件
学报,2003,14(6):1029 -1036.
[8]王培良,赵义军,叶志宝.Petri网的并分解[J].控制理论与应用,2001,18(2):116 -118.
[9]曾庆田,吴哲辉.基于库所指标的Petri网分解方法[J].计算机科学,2002,29(4):15 -23.
[10]徐志斌,郑大钟.基于分解子网的Petri网不变量的分析[J].控制与决策,1997,12(2):103 -108.
[11]胡红革,谢阅,黄大贵.基于位置不变量的Petri网分解方法[J].电子测
量与仪器学报,2004,18(6):77-80.
[12]袁崇义.Petri网原理与应用[M].北京:电子工业出版社,2005:15-30.。

相关文档
最新文档