收藏 分享(赏)

交互式马尔可夫链-并发系统的设计,验证与评价.doc

上传人:j35w19 文档编号:7858977 上传时间:2019-05-27 格式:DOC 页数:7 大小:73KB
下载 相关 举报
交互式马尔可夫链-并发系统的设计,验证与评价.doc_第1页
第1页 / 共7页
交互式马尔可夫链-并发系统的设计,验证与评价.doc_第2页
第2页 / 共7页
交互式马尔可夫链-并发系统的设计,验证与评价.doc_第3页
第3页 / 共7页
交互式马尔可夫链-并发系统的设计,验证与评价.doc_第4页
第4页 / 共7页
交互式马尔可夫链-并发系统的设计,验证与评价.doc_第5页
第5页 / 共7页
点击查看更多>>
资源描述

1、Concurrency includes parallel and distribution.进程代数成为了当今复杂系数形式刻画与分析的主要工具,比较著名的有:CCS(calculus of communication system),CSP(communicating sequential processes),LOTOS(国际标准化组织,language of temporal ordering specifications).假设随机变量 D1 和 D2 分别满足参数为 lambda1 和 lambda2 的指数分布,则:PD1infinity, 可以再次得到从状态 si 转移到状态 s

2、j 的概率为: lambdaij / lambdai.这一转移概率实际上刻画了一个与该 CTMC 相关的 DTMC,称之为内嵌的DTMC(embedded DTMC),它的转移概率矩阵为 P=(pij)nn.在性能评价领域里马尔可夫分析主要关心的几个性能度量:1 到达一个吸收状态的平均时间 MTA;2 第一次到达某个特定状态 s 的平均时间 MTFP(s);3 在一个给定的时间 t 系统处于一个特定的状态 s 的概率 PXt=s.4 系统在长时间运行后稳定在某个状态 s 的概率 limt-infinity PXt=s (假定该马尔可夫链能达到一个平稳状态)Steady-state analys

3、isTransient analysisChapman-Kolmogorov 向前方程:P(t)=P(t) R.解此微分方程,有 Runge-Kutta method, 或基于归一化(uniformization)的方法CTMC 的极限分布满足以下方程:pi=pi P(t)利用转移率矩阵 R,上式可以简化为: pi R=0,Chapter 3:IMC: Interactive Markov chains:经典的进程代数模型和连续时间马尔可夫链模型的结合;进程代数与标记转移系统动作集合 Obs=a,b1,c,系统内部执行的运作 tao not in Obs令:A=Obs 并 tao表示所有动作的

4、全集定义 3.1.1 设 a in A,A belongs to Obs, Var 表示一个进程变量的集合,x in Var。基本进程代数 BPA 由以下语法产生:P:= 0|a.P|P;P|P+P|AP|PA|x|x.p1 0 表示中止进程2 a.P 是动作前缀操作,表示系统先执行动作 a,然后执行进程 P3 P1;P2 是顺序操作4 P1+P2 是选择操作;这种选择的非确定性是并发系统的一个重要特征,也是与传统顺序相比的一个重要区别特征5 P|AP 是并发操作,也是进程代数中最重要的一个操作,它代表了两个进程的并发执行,其中 A belongs to Obs 中的动作是两个进程需要同时执行

5、的动作,即需要同步的动作。如果 A=empty set,则 P1 和 P2 不需要同步任何动作,此时称 P1 和 P2 为异步并发执行的,并将| empty set 简记为|.此外,为书写方便,对于只一个元素的集合,省略a为 a.6 PA 是隐藏操作,或者叫做抽象操作,行为与 P 类似,唯一的不同是进程 PA 中那些在集合 A 中的动作都被看成内部动作(通过改名为 tao) ,即外部将不再可观察到。7 x 和 x.p 是为了支持递归操作而引入的操作符,其中 x 代表一个进程变量,x.p 是递归表达式,其中变量 x 可能在进程 P 中出现形成一个递归函数。称被递归算子 限制的变量(如 x|x.p

6、 中的 x)为约束(bound)变量,没有被递归算子限制的变量称为自由(free)变量。自由变量可以通过替换来实例化(instantiated) ,而约束变量则是不受变量替换的影响,因经约束变量的名字可以被认为是无关紧要的。一个进程表达式中的某项如果没有自由变量,则称该项为闭项(closed),反之称为开项(open) 。对于递归表达式,要求递归项是良性护卫的(well-guarded),这一条件保证了递归项的语义模型与它的指称函数的不动点相对应并且是唯一的。递归表达式的引入使得进程代数的表达能力更强大,更适合描述一些特定的系统。默认优先级(高- -低):. ; + | 进程代数作为一种严格的

7、形式刻画方法,除了要有严格定义的语法结构外,还需要有严格定义的语义模型。 (SOS,structural operational semantics)采用下面的表达方式前提 1前提 2前提 n- (条件)结论称为一条规则:如果条件成立的话,该规划可以应用,并且当前提 1 到前提 n 都满足时,结论成立。其中规则中的前提与结论都具有 P- -(a)- -P,表示进程 P 可以执行动作 a,同时演变成进程 P。表 3.1 BPA 的结构化操作语义略,其中 PQ/x表示将进程 P 中所有进程变量 x 的出现都替换成进程 Q 得到的进程;- -(a)- -:标记转移系统(Labeled transit

8、ion system, LTS)LTS 主要关心的是系统在发生状态转移时所执行的动作,因此是基于动作(action-based )的系统模型。它的形式定义如下:定义 3.1.3 一个 LTS 是一个四元组 (S,Act,- -,s0),其中:1 S 是非空的状态集合;2 Act belongs to A 是动作集合;3 - -SActS 是状态转移关系;4 s0 是初始状态。LTS 通常用图形来表示,能给出一个进程代数直观并且精确的执行过程例:该 LTS 表示了这样一个进程的行为: a.b.0+b.a.0,由此可见, LTS 能给出一个进程代数直观并且精确的执行过程.下面考虑两个进程并发执行的

9、操作过程,先考虑不需要同步的情况,假设 P1=a.0, P2=b.0,那么P1|P2 是如何执行的呢?根据 BPA 的结构化操作语义,很容易得出与上图相同的模型,这表明,在 LTS 表示的操作语义模型解释下, 可以得出 a.0|b.0=a.b.0+b.a.0 这样的结论,而这就是两个系统并发执行的交织语义理解,即将两个并发执行的进程看作是两个进程中的动作按照任意可能的交叉顺序执行,因此说 LTS 是一个交织语义模型.对于需要同步的情况,例如,假设P1=a.0+c.0, P2=b.0+c.0,那么 P1|c P2 的 LTS 模型如下图:由上图可以看出,需要同步执行的动作由两个进程同时执行(当两

10、个进程都准备好执行该动作时),而不需要同步的动作则可以按照异步并发的执行方式任意交叉执行 .将上述情况推广到一般的情形,设 P=sumi aiPi, Q=sumj bjQj,在交织语义下, 有下面的展开定律:P|AQ = sumai not in A ai(Pi|AQ) +sumbj not in A bj(P|AQj) +sumai=bj in A ai (Pi|AQj) (3.1)上式给出了两个并发执行的进程严格的交织语义解释,也是进程代数理论中一个重要的等式,如果一个进程代数中允许该式成立,则称交织语义的进程代数;若不允许该式成立,则称该进程代数为真并发语义的进程代数,如用事件结构(ev

11、ent structure)作为语义模型的进程代数.S1S2S4S3aabbcS1S2S4S3aabb在交织语义下,任何基本进程代数表达式都可以展开表示为仅包含前缀操作(.)与选择操作(+)的形式,即:P=a1.a2.an.0+b1.b2.bn.0+=sumai in Act ai1ai2ain0因此, 在交织语义下, 进程代数的推理可以变得相对简单 .例 3.1.4 设 P=(a.0+b.0)|(c.0+d.0),则根据展开定律,可以将 P 展开如下:P=(a.0+b.0)|(c.0+d.0)=a.()+b.()+c.()+d.()=a.c.0+a.d.0+b.c.0+b.d.0+c.a.0

12、+c.b.0+d.a.0+d.b.0带标记的连续时间马尔可夫链LTS 主要用于刻画并发系统行为特征, 关注的是系统在发生状态转移的时候所执行的动作,状态本身的信息并不是它所关心的,而性能评价领域常用的马尔可夫链模型则主要关心的是系统所处的状态信息,因此, 在用马尔可夫链进行系统的性能评价时,人们常常采用稍作修改的马尔可夫链模型.Labeled CTMC:假定 AP 是所有原子命题的集合,则:Labeled CTMC 是一个四元组(S, - -, L, alpha0),其中:S 是状态空间集合; - - - belongs to SR+S,是状态转移关系, 称为马尔可夫转移;(虚箭头)L: S

13、|- - 2AP 是标记函数,用于给每个状态标上该状态所满足的原子命题的集合;alpha0 是初始分布.s- -()- -s.定义中的 L 称为标记函数, 它是用来给 CTMC 的状态增加一些附加信息的,这些附加信息是一些原子命题的集合.不失一般性,假设不同的状态满足不同的性质,则这些原子命题的集合就可以用于区分不同的状态,即每个状态都可以由它上面标记的原子命题的集合来唯一标识.这样一来,带标记的 CTMC 主要关注的就是每个状态上的不同信息了,因此称这样的系统为基于状态的(state-based)系统.例:上图表示一个带标记的 CTMC.其中 AP=a,b,c,每个状态所满足的原子命题标在状

14、态旁,状态间的转移仍然保留虚线箭头的形式,对于单元素集合, 同样采用了省略花括号的简写方式.(带标记的)CTMC 的语言层次的刻画模型有排队网, 随机 Petri 网,随机活动网,随机进程代数等;逻辑刻画有连续随机逻辑 CSL 及其变体等.acS0S1S3S21b2S434c交互式马尔可夫链 IMC结合 LTS 与 CTMC:随机进程代数模型:SPA(stochastic process algebra): SPA 模型在结合 LTS 和 CTMC 时都有一个共同的特点-它们都是将两个模型不同转移关系(动作转移与概率转移) 融合在一个转移关系中 ,即将:-a(实线),与-()(虚线) 组合成一

15、个单一的转移关系 (a,),其含义是系统发生该状态转移的延迟时间满足参数为 的指数分布,同时在发生状态转移时系统将执行动作 a.由于将两种转移关系合二为一,在这种模型中, 系统在不同的状态转移之间选择执行的动作将不再是确定的,因为实际上每个动作执行都由一个确定的概率分布(由参数为 的指数分布确定)来决定,也就是说,非确定被概率分布所取代.然而非确定性对于并发系统来说是个非常重要的特征,它有助于模拟很多用其他方式不能表达的重要概念,例如:1. 实现自由 (非确定性)2. 调度自由 (交织语义模型下非确定性概念的一个经典的使用,几个并发执行的进程在交织语义理解下可以看成是在这些进程之间自由地选择执

16、行)SPA 模型将动作与时间延迟绑定在一个转移关系上,处理带有同步动作的并行操作时就会遇到一些很棘手的问题.例:进程 P1 在动作 a 和 c 之间选择,同时动作 a 与 c 的执行分别满足参数为 与 1;进程 P2 在动作 b 和 c 之间选择, 与 2;在交织语义下 P1|cP2,由于指数分布的无记忆性,a,b 的分布参数不变;但指数分布并不在最大值运算下封闭,即两个满足指数分布的随机变量的最大值不再满足指数分布.因此,动作 c 的执行所满足的延迟分布不再是指数分布,即同步以后动作 c 上的分布参数 phi 无法简单确定下来(实际上已经跳出了 SPA 的范围). SPA 模型总的来说在处理

17、同步并发的时候并不那么令人满意.总之,SPA 模型中有以下两大问题是不能很好解决的:1. 非确定性不再是真正意义上的非确定性, 而是被随机分布所代替 ;2. 带同步的并发操作在 SPA 模型并不能很好地表示出来,因为指数分布在最大值运算下并不封闭.IMC 就是为了解决 SPA 这些不足而提出来的另外一种结合 LTS 与 CTMC 的模型.交互式马尔可夫链IMC 与 SPA 不同,它保留两种转移关系而不是将它们合二为一.一个 IMC 是指一个五元组(S,Act,s 0),其中:S 是一个非空的状态集合;Act belongs to A 是一个动作集合 ; belongs to SActS 是动作

18、转移关系; in SR+S 是马尔可夫转移关系,满足:For all s1,s2 in S, |( (s 1Rs2)|,允许到自身的转移 ,它表示系统经过参数为 的指数分布延迟后仍然停留在原状态(或转移到自身状态 ).这一修改并不影响 IMC 的随机行为,但是却更适合于通常的状态转移解释.S0 是初始状态.以下, 记 R(s,s)为状态 s 转移到 s的转移率.s 上的总转移记为 E(s)=sums in S R(s,s).定理 3.3.3 任何一个 LTS 都与一个 IMC 同构,任何一个 CTMC 都与一个 IMC 同构.在 IMC 中,由于动作转移与时间延迟是分离的,因此这些动作转移之间

19、的选择就可以仍然保留 LTS 的非确定性解释 ,这样 IMC 解决了 SPA 模型中非确定性不能保留的问题 .IMC 采用最大前进假设(maximal progress assumption):内部动作( 即动作 tao)的执行不允许时间延迟的发生,即若系统内部动作要执行的话, 该动作的执行是立即的,不允许其他延迟转移发生. 因此,如果一个内部动作转移与马尔可夫转移共同存在于一个状态的时候,马尔可夫转移可被忽略.但是对于外部动作(即 Obs 中的动作)a, 它的执行是依赖环境的 ,或者说它是环境交互的一个动作,因此是有可能被延迟的, 假如在一定时间内系统没有执行动作 a(或与环境进行动作 a

20、的交互),那么系统可以选择执行马尔可夫转移.最大前进假设广泛用于很多实时进程代数中,它反映了内部动作具有比外部动作更高的优先级.IMC 模型中,动作与延迟时间的分离使得我们在考虑同步执行的动作时不必考虑延迟时间,因为它们并不参与同步.需要同步的动作的执行时间发生在并发执行的所有组件都准备好执行该动作的时候,换句话说,IMC 将同步动作的延迟隐式地实现为最大分布,因为只有动作转移需要同步,因此同步的发生意味着该动作的所有延迟都已经完成.而对于不需要同步的动作转移以及马尔可夫转移,它们则是按照经典的交织语义来执行的,注意到由于马尔可夫性,马尔可夫转移也是可以任意交叉执行的.IMC 很明确地区分了非

21、确定性和概率 ,保留了并发系统中非确定性这个重要概念,同时,IMC 在带同步动作的并发执行下,简单而优美地解决了同步动作的随机分布问题.例:S0 - - -s1as2S0 - -s1as2|a:S0 - - -s1 - -s3s3as4S0 - -s2 - - -s3IMC 的代数刻画定义 3.4.1 令 a in Act, A belong to Obs, in R+, x in Var, 则交互式马尔可夫链进程代数 IMPA由以下语法产生:P:=0|a.P|().P|P;P|P+P|PAP|PA|x|x.P,其中, 新增加的().P 称为延迟前缀操作,表示系统在执行进程 P 之间需要经过一

22、个参数为 的指数分布时间延迟,它实际上对应了 IMC 模型中马尔可夫转移.可见 IMPA 是 BPA 一个超集.例 3.4.2 令 P,Q in IMPA,则以下是合法的 IMPA 表达式(1) a.().( ).b.().0(2) a.P+().Q(1) 的直观含义是:系统首先与动作 a 进行交互, 执行动作 a,然后,系统再进一步与动作 b进行交互之前将有两次延迟,第一次满足参数为 的指数分布 ,第二次满足参数为 的指数分布.在系统执行动作 b 之后,系统经过一个参数为 的指数分布延迟后中止.(2) 式是 IMPA 中一个典型的表达式 ,它反映了 IMC 系统中动作转移与马尔可夫转移之间的

23、相互关系.(2)式代表了系统在一个动作转移与马尔可夫转移之间进行选择,这种选择满足最大前进假设,其执行依动作 a 为内部还是外部动作而定.与 BPA 一样,我们也以结构化操作语义的方式给出 IMPA 严格的形式语义.由于 IMPA 是在 BPA 的基础上增加了一个延迟前缀得到的,因此 IMPA 的操作语义中就有两种形式的转移 ,一种是与 BPA 中一的动作转移,另一种则是马尔可夫转移, 表示系统经过一个参数为 的指数分布延迟转移,其中动作转移的操作规则仍然满足表 3.1 里的规则,相应地,马尔可夫转移的操作规则由表 3.2 给出表 3.2 IMPA 马尔可夫转移的结构化操作语义 略P-/-()

24、表示进程 P 不能以内部动作 开始执行.注意在 P1+P2 与 P1 AP2 的操作规则中,除了要求其中一个操作能执行马尔可夫转移之外, 同时还要求另外一个操作不能执行内部动作转移,这一额外要求就体现了最大前进假设.另外, 两个并发执行的进程, 由于同步动作集合与延迟分布没有关系,因此不存在对马尔可夫转移的同步, 此时两个并发执行的进程中的马尔可夫转移可以按照任意的交叉顺序来执行,而真正的同步由动作转移满足的规划来决定(表 3.1).根据上面定义的 IMPA 并发算子的操作语义,可以得出 IMPA 在交织语义下的展开定律,设:P=i ai.Pi+j (j).Pj, Q=k bk.Qk+l (l).Ql,则 P AQ=与(3.1)式比较一下很容易得出,(3.2)式实际上是(3.1)式的一个直接扩展 ,增加的随机分布延迟并没有影响的动作转移操作,因此说这种扩展是一种正交的扩展,它反映了 IMC 在组合传令的 LTS 与 CTMC 模型的时候最大可能地保持了两个模型原有的性质,并因此得到了良好的性质.根据(3.2) 式及 IMPA 的其他算子的操作语义,同样可以将一个 IMPA 表达式展开表示成以下只含前缀操作(.)和选择操作 (+)的标准形式:这样基于 IMPA 的推理也可以大大简化了.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报