step ep bounded bounded bisimu imulation lation
play

Step ep-bounded bounded Bisimu imulation lation Nishanthan - PowerPoint PPT Presentation

Step ep-bounded bounded Bisimu imulation lation Nishanthan Kamaleson University of Birmingham Joint work with: David Parker, Jonathan Rowe, Mate Puljiz and Chris Good HIERATIC meeting, Jena, September 2014 Overview Markov chains &


  1. Step ep-bounded bounded Bisimu imulation lation Nishanthan Kamaleson University of Birmingham Joint work with: David Parker, Jonathan Rowe, Mate Puljiz and Chris Good HIERATIC meeting, Jena, September 2014

  2. Overview • Markov chains & bisimulation • Splitter based bisimulation minimisation • Signature based bisimulation minimisation • Splitter vs. Signature • Step-bounded bisimulation minimisation

  3. Discrete-time Markov chains (DTMCs) • A DTMC D is a tuple (S,s init ,P,L) where: − S is a (finite) set of states ( “ state space ” ) − s init ∈ S is the initial state B 1 0.1 − P : S × S → [0,1] is the 0.2 1 s 0 s 1 s 2 s 3 1 transition probability matrix 0.3 where Σ s ’∈S P(s,s ’) = 1 for all s ∈ S 1 1 0.1 1 0.4 − L : S → 2 AP is a function labelling 0.9 {a} s 4 s 5 s 6 states with atomic propositions 0. 7

  4. Bisimulation on DTMCs • Probabilistic bisimulation − preservation of stepwise behaviour (and labels) • Equivalence relation R on S is a probabilistic bisimulation on D if and only if, for all s 1 R s 2 : − L(s 1 ) = L(s 2 ) − P(s 1 , T) = P(s 2 , T) for all T ∈ S/R (i.e. for all equivalence classes of R) − where: P(s,T) = Σ s ’∈T P(s,s ’ ) for T ⊆ S • We write ~ for the coarsest possible bisimulation − we say states s 1 and s 2 are bisimilar if s 1 ~ s 2 − and DTMCs D 1 and D 2 are bisimilar if their initial states are • Probabilistic bisimulation preserves PCTL, PCTL*, LTL, …

  5. Probabilistic temporal logics • PCTL = Probabilistic Computation Tree Logic [HJ94] − e.g. send → P ≥0.95 [ F deliver ] − “ if a message is sent, then the probability of it being delivered is at least 0.95 ” • Numerical (and step-bounded) queries − P =? [ F ≤10 deliver ] - "what is the probability of − the message being delivered within 10 steps? ” • Extensions: Probabilistic LTL and PCTL* − e.g. P ≥ 1 [ GF ready ] – “ with probability 1, the server always eventually returns to a ready-state ” − e.g. P <0.01 [ FG error ] – “ with probability at most 0.01, an irrecoverable error occurs ” − e.g. P >0.5 [ GF crit 1 ] ∧ P >0.5 [ GF crit 2 ]

  6. Splitter Based Bisimulation minimisation • 1. Start with initial partition − say Π = { { s ∈ S | L(s)=lab } | lab ∈ 2 AP } • 2. Find a splitter T ∈ Π for some block B ∈ Π − a splitter T is a block such that probability of going to T differs for some states in block B − i.e. ∃s,s’∈ B . P (s,T) ≠ P(s ’ ,T) • 3. Split B into sub-blocks − such that P(s,T) is the same for all states in each sub-block • 4. Repeat steps 2/3 until no more splitters exist − i.e. no change to partition Π 6

  7. Example Minimisation: B 1 0.1 Π 0: B 1 ={s 0 ,s 1 ,s 2 ,s 3 ,s 4 ,s 5 }, B 2 ={s 6 } 0.2 1 B 2 is a splitter for B 1 s 0 s 1 s 2 s 3 1 0.3 (since e.g. P(s 1 ,B 2 )=0≠1= P(s 2 ,B 2 )) 1 1 0.1 0.3 1 0.4 0.9 {a} s 4 s 5 s 6 0.7 B 2 7

  8. Example Minimisation: B 1 B 3 0.1 Π 0: B 1 ={s 0 ,s 1 ,s 2 ,s 3 ,s 4 ,s 5 }, B 2 ={s 6 } 0.2 1 B 2 is a splitter for B 1 s 0 s 1 s 2 s 3 1 0.3 (since e.g. P(s 1 ,B 2 )=0≠1= P(s 2 ,B 2 )) 1 1 0.1 Π 1 : B 1 ={s 0 ,s 1 ,s 4 ,s 5 }, B 2 ={s 6 }, B 3 ={s 2 ,s 3 } 0.3 1 0.4 B 3 is a splitter for B 1 0.9 {a} s 4 s 5 s 6 0.7 (since e.g. P(s 1 ,B 3 )=0≠0.3= P(s 0 ,B 3 )) B 2 8

  9. Example Minimisation: B 1 B 3 B 4 0.1 Π 0: B 1 ={s 0 ,s 1 ,s 2 ,s 3 ,s 4 ,s 5 }, B 2 ={s 6 } 0.2 1 B 2 is a splitter for B 1 s 0 s 1 s 2 s 3 1 0.3 (since e.g. P(s 1 ,B 2 )=0≠1= P(s 2 ,B 2 )) 1 1 0.1 Π 1 : B 1 ={s 0 ,s 1 ,s 4 ,s 5 }, B 2 ={s 6 }, B 3 ={s 2 ,s 3 } 0.3 1 0.4 {a} B 3 is a splitter for B 1 0.9 s 4 s 5 s 6 0.7 (since e.g. P(s 1 ,B 3 )=0≠0.3= P(s 0 ,B 3 )) B 2 Π 2 : B 1 ={s 1 ,s 5, s 4 }, B 2 ={s 6 }, B 3 ={s 2 ,s 3 }, B 4 ={s 0 } B 1 is a splitter for B 4 (since e.g. P(s 4 ,B 1 )= 0.3≠1.0= P(s 1 ,B 1 )) 9

  10. Example Minimisation: B 4 B 3 B 1 0.1 Π 0: B 1 ={s 0 ,s 1 ,s 2 ,s 3 ,s 4 ,s 5 }, B 2 ={s 6 } 0.2 1 B 2 is a splitter for B 1 s 0 s 1 s 2 s 3 1 0.3 (since e.g. P(s 1 ,B 2 )=0≠1= P(s 2 ,B 2 )) 1 1 0.1 Π 1 : B 1 ={s 0 ,s 1 ,s 4 ,s 5 }, B 2 ={s 6 }, B 3 ={s 2 ,s 3 } 0.3 1 0.4 {a} B 3 is a splitter for B 1 0.9 s 4 s 5 s 6 0.7 (since e.g. P(s 1 ,B 3 )=0≠0.3= P(s 0 ,B 3 )) B 5 B 2 Π 2 : B 1 ={s 1 ,s 5, s 4 }, B 2 ={s 6 }, B 3 ={s 2 ,s 3 }, B 4 ={s 0 } B 1 is a splitter for B 4 S/~ = { {s 1 ,s 5 }, {s 6 }, {s 2 ,s 3 }, {s 0 },{s 4 } } (since e.g. P(s 4 ,B 1 )=0.3≠1.0= P(s 1 ,B 1 )) No more splitters 10

  11. Example S/~ = { {s 1 ,s 5 }, {s 6 }, {s 2 ,s 3 }, {s 0 },{s 4 } } 0.1 0.2 1 s 0 s 1 s 2 s 3 0.3 1 0.3 1 s 0 1 1 0.7 0.1 s 1 ,s 5 s 6 s 2 ,s 3 0.3 1 0.3 0.4 1 0.7 1 1 s 4 {a} 0.9 s 4 s 5 {a} s 6 0.7 11

  12. Signature Based Bisimulation minimisation • 1. Start with initial partition • 2. Generate signature for each state s ∈ S − i.e. lift the distribution P(s, ⋅ ) for all states s ∈ S to Π − where signature of s is its lifted distribution • 3. Update Π based on the signature − such that signature is the same for all states in each block • 4. Repeat steps 2/3/4 until no more change in Π 12

  13. Example Minimisation: B 1 0.1 Π 0: B 1 ={s 0 ,s 1 ,s 2 ,s 3 ,s 4 ,s 5 }, B 2 ={s 6 } 0.2 1 • signature of s 0, s 1, s 4, s 5 = B 1 :1.0 s 0 s 1 s 2 s 3 1 0.3 • signature of s 2, s 3 = B 2 :1.0 1 1 0.1 Similarly signatures will computed for other 0.3 1 0.4 states. 0.9 {a} s 4 s 5 s 6 0.7 B 2 13

  14. Example Minimisation: B 1 B 3 0.1 Π 0: B 1 ={s 0 ,s 1 ,s 2 ,s 3 ,s 4 ,s 5 }, B 2 ={s 6 } 0.2 1 • signature of s 0, s 1, s 4, s 5 = B 1 :1.0 s 0 s 1 s 2 s 3 1 0.3 • signature of s 2, s 3 = B 2 :1.0 1 1 0.1 Similarly signatures will computed for all the 0.3 1 0.4 states. 0.9 {a} s 4 s 5 s 6 Π 1 : B 1 ={s 0 ,s 1 ,s 4 ,s 5 }, B 2 ={s 6 }, B 3 ={s 2 ,s 3 } 0.7 • signature of s 0 = B 1 :0.7, B 3 :0.3 B 2 • signature of s 1, s 5, s 4 = B 1 :1.0 14

  15. Example Minimisation: Π 0: B 1 ={s 0 ,s 1 ,s 2 ,s 3 ,s 4 ,s 5 }, B 2 ={s 6 } B 1 B 3 B 4 0.1 • signature of s 0, s 1, s 4, s 5 = B 1 :1.0 0.2 1 • signature of s 2, s 3 = B 2 :1.0 s 0 s 1 s 2 s 3 1 0.3 Similarly signatures will computed for all the 1 1 states. 0.1 0.3 1 0.4 Π 1 : B 1 ={s 0 ,s 1 ,s 4 ,s 5 }, B 2 ={s 6 }, B 3 ={s 2 ,s 3 } {a} 0.9 s 4 s 5 s 6 • signature of s 0 = B 1 :0.7, B 3 :0.3 0.7 • signature of s 1, s 5, s 4 = B 1 :1.0 B 2 Π 2 : B 4 ={s 1 ,s 5, s 4 }, B 2 ={s 6 }, B 3 ={s 2 ,s 3 }, B 1 ={s 0 } • signature of s 1, s 5 = B 1 :1.0 • signature of s 4 = B 1 :0.3, B 4 :0.7 15

  16. Example Minimisation: Π 0: B 1 ={s 0 ,s 1 ,s 2 ,s 3 ,s 4 ,s 5 }, B 2 ={s 6 } B 1 B 3 B 4 0.1 • signature of s 0, s 1, s 4, s 5 = B 1 :1.0 0.2 1 • signature of s 2, s 3 = B 2 :1.0 s 0 s 1 s 2 s 3 1 0.3 Similarly signatures will computed for all the 1 1 states. 0.1 0.3 0.4 Π 1 : B 1 ={s 0 ,s 1 ,s 4 ,s 5 }, B 2 ={s 6 }, B 3 ={s 2 ,s 3 } {a} 0.9 s 4 s 5 s 6 • signature of s 1, s 5, s 4 = B 1 :1.0 0.7 • signature of s 0 = B 1 :0.7, B 3 :0.3 B 5 B 2 Π 2 : B 4 ={s 1 ,s 5, s 4 }, B 2 ={s 6 }, B 3 ={s 2 ,s 3 }, B 1 ={s 0 } • signature of s 1, s 5 = B 1 :1.0 S/~ = { {s 1 ,s 5 }, {s 6 }, {s 2 ,s 3 }, {s 0 },{s 4 } } • signature of s 4 = B 1 :0.3, B 4 :0.7 Further splitting is not possible 16

  17. Example S/~ = { {s 1 ,s 5 }, {s 6 }, {s 2 ,s 3 }, {s 0 },{s 4 } } 0.1 0.2 1 s 0 s 1 s 2 s 3 0.3 1 0.3 1 s 0 1 1 0.7 0.1 s 1 ,s 5 s 6 s 2 ,s 3 0.3 1 0.3 0.4 1 0.7 1 1 s 4 {a} 0.9 s 4 s 5 {a} s 6 0.7 17

  18. Signature vs. Splitter • Implemented signature/splitter based algorithms in PRISM − tested on standard PRISM benchmarks − splitter based algorithm uses splay trees to efficiently store block information • Splitter based algorithm has showed better performance than the signature based algorithm − signature based considers all states in every iteration − splitter based only considers the states that have outgoing transitions to the splitter 18

  19. Signature vs. Splitter • Compare number of iterations for each algorithm • Splitter-based needs more splitting iterations and the splitting is not step-wise. • Splitting process of the signature based algorithm requires fewer number of iteration and is step-wise. 19

  20. Step-Bounded Bisimulation • Consider a step-bounded reachability question like P =? [F <=k (“s 6 ” )] • In traditional bisimulation minimisation, the quotient model will be built when there is no further possible splitting • But, refining up to the point where the quotient model can answer the above question • Signature based algorithm is suitable for this approach because it splits step-wise • We only perform k (step-wise) splitting iterations 20

  21. After 1 iteration Minimisation: B 1 B 3 0.1 Π 0: B 1 ={s 0 ,s 1 ,s 2 ,s 3 ,s 4 ,s 5 }, B 2 ={s 6 } 0.2 1 • signature of s 0, s 1, s 4, s 5 = B 1 :1.0 s 0 s 1 s 2 s 3 1 0.3 • signature of s 2, s 3 = B 2 :1.0 1 1 0.1 Similarly signatures will computed for all the 0.3 1 0.4 states. 0.9 {a} s 4 s 5 s 6 Π 1 : B 1 ={s 0 ,s 1 ,s 4 ,s 5 }, B 2 ={s 6 }, B 3 ={s 2 ,s 3 } 0.7 • signature of s 1, s 5, s 4 = B 1 :1.0 B 2 • signature of s 0 = B 1 :0.7, B 3 :0.3 21

  22. After 1 iteration • Constructing the Markov chain S/~ = { {s 0, s 1 ,s 4, s 5 }, {s 6 }, {s 2 ,s 3 }} 0.1 0.2 1 1.0 s 0 s 1 s 2 s 3 1 0.3 1 1 0.1 s 0 ,s 1 ,s 4, s 5 s 6 s 2 ,s 3 1 0.3 1 0.4 1 1 0.9 {a} {a} s 4 s 5 s 6 0.7 22

  23. How do blocks grow with iterations ? 23

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend