exploiting model structure to encode transition relations
play

Exploiting model structure to encode transition relations and - PowerPoint PPT Presentation

Exploiting model structure to encode transition relations and transition rate matrices Gianfranco Ciardo Department of Computer Science and Engineering University of California, Riverside Supported in part by the National Science Foundation


  1. Exploiting model structure to encode transition relations and transition rate matrices Gianfranco Ciardo Department of Computer Science and Engineering University of California, Riverside Supported in part by the National Science Foundation under Grants CSR-0546041, CCF-0848463, and CCF-1018057

  2. PART: FILE: . 2 Background

  3. PART: FILE:dsm-def-structured Structured discrete-state models 3 A structured discrete-state model is specified by: • a potential state space X pot = X L × · · · × X 1 ◦ a (global) state is of the form i = ( i L , ..., i 1 ) ◦ X k is the (discrete) local state space for submodel k , or local domain for state variable x k ◦ if X k is finite, we can map it to { 0 , 1 , . . . , n k − 1 } n k might be unknown a priori • a set of initial states X init ⊆ X pot ◦ often there is a single initial state, X init = { i init } • a set of events E defining a disjunctively-partitioned next-state function or transition relation ◦ N e : X pot → 2 X pot j ∈ N e ( i ) iff state j can be reached by firing event e in state i N ( i ) = � ◦ N : X pot → 2 X pot e ∈E N e ( i ) N e ( Y ) = � and N ( Y ) = � ◦ naturally extended to sets of states i ∈Y N e ( i ) i ∈Y N ( i ) ◦ e is enabled in i iff N e ( i ) � = ∅ , otherwise it is disabled ◦ i is absorbing, or dead, or terminal, or a sink if N ( i ) = ∅

  4. PART: FILE:ssgen The (reachable) state space of a discrete-state model 4 The state space X rch of the model is the smallest set X ⊆ X pot containing X init and satisfying: • the recursive definition i ∈ X ∧ j ∈ N ( i ) ⇒ j ∈ X (base for explicit methods) or • the fixpoint equation X = X ∪ N ( X ) (base for symbolic methods) X rch = X init ∪ N ( X init ) ∪ N 2 ( X init ) ∪ N 3 ( X init ) ∪ · · · = N ∗ ( X init )

  5. PART: FILE:kron-prod-defSQUARE Definition of Kronecker product (assuming square matrices) 5 Given L square matrices A L , . . . , A 1 , where A k is of size n k × n k , their Kronecker product is � n L · · · n 1 × n L · · · n 1 A = A k of size L ≥ k ≥ 1 where • A [ i , j ] = A L [ i L , j L ] · A L − 1 [ i L − 1 , j L − 1 ] · · · A 1 [ i 1 , j 1 ] • using the following mixed-base numbering schemes for rows and column (indices start at 0) � � i = ( ... (( i L ) · n L − 1 + i L − 1 ) · n L − 2 · · · ) · n 1 + i 1 = i k · n h L ≥ k ≥ 1 k>h ≥ 1 � � j = ( ... (( j L ) · n L − 1 + j L − 1 ) · n L − 2 · · · ) · n 1 + j 1 = j k · n h L ≥ k ≥ 1 k>h ≥ 1 � � � � = η ( A k ) η A k nonzeros: L ≥ k ≥ 1 L ≥ k ≥ 1

  6. PART: FILE:kron-prod-ex Kronecker product by example 6   b 00 b 01 b 02 � � a 00 a 01     A = B = b 10 b 11 b 12 Given the matrices and   a 10 a 11 b 20 b 21 b 22   a 00 b 00 a 00 b 01 a 00 b 02 a 01 b 00 a 01 b 01 a 01 b 02     a 00 b 10 a 00 b 11 a 00 b 12 a 01 b 10 a 01 b 11 a 01 b 12     � �   a 00 B a 01 B a 00 b 20 a 00 b 21 a 00 b 22 a 01 b 20 a 01 b 21 a 01 b 22   A ⊗ B = =     a 10 B a 11 B a 10 b 00 a 10 b 01 a 10 b 02 a 11 b 00 a 11 b 01 a 11 b 02       a 10 b 10 a 10 b 11 a 10 b 12 a 11 b 10 a 11 b 11 a 11 b 12   a 10 b 20 a 10 b 21 a 10 b 22 a 11 b 20 a 11 b 21 a 11 b 22 Kronecker product can express contemporaneity or synchronization

  7. PART: FILE:kron-sum-def Definition of Kronecker sum 7 Given L square matrices A L , . . . , A 1 , where A k is of size n k × n k , their Kronecker sum is � � I n L ··· n k +1 ⊗ A k ⊗ I n k − 1 ··· n 1 ∈ R n L ··· n 1 × n L ··· n 1 A k = L ≥ k ≥ 1 L ≥ k ≥ 1 where I m is the identity matrix of size m × m and • A [ i , j ] = A L [ i L , j L ] · A L − 1 [ i L − 1 , j L − 1 ] · · · A 1 [ i 1 , j 1 ] • using the mixed-base numbering scheme (indices start at 0) � � i = ( ... (( i L ) · n L − 1 + i L − 1 ) · n L − 2 · · · ) · n 1 + i 1 = i k · n h L ≥ k ≥ 1 k>h ≥ 1 � � � � � η ( A k ) ≤ · η A k n h nonzeros: n k L ≥ k ≥ 1 L ≥ k ≥ 1 L ≥ h ≥ 1

  8. PART: FILE:kron-sum-ex Kronecker sum by example 8   � � b 0 , 0 b 0 , 1 b 0 , 2 a 0 , 0 a 0 , 1   A = B = b 1 , 0 b 1 , 1 b 1 , 2 Given the matrices ,  ,  a 1 , 0 a 1 , 1 b 2 , 0 b 2 , 1 b 2 , 2 A ⊕ B = A ⊗ I 3 + I 2 ⊗ B =     a 0 , 0 a 0 , 1 b 0 , 0 b 0 , 1 b 0 , 2     a 0 , 0 a 0 , 1 b 1 , 0 b 1 , 1 b 1 , 2         a 0 , 0 a 0 , 1 b 2 , 0 b 2 , 1 b 2 , 2     + =      a 1 , 0 a 1 , 1   b 0 , 0 b 0 , 1 b 0 , 2          a 1 , 0 a 1 , 1 b 1 , 0 b 1 , 1 b 1 , 2 a 1 , 0 a 1 , 1 b 2 , 0 b 2 , 1 b 2 , 2   a 0 , 0 + b 0 , 0 b 0 , 1 b 0 , 2 a 0 , 1   b 1 , 0 a 0 , 0 + b 1 , 1 b 1 , 2 a 0 , 1     b 2 , 0 b 2 , 1 a 0 , 0 + b 2 , 2 a 0 , 1      a 1 , 0 a 1 , 1 + b 0 , 0 b 0 , 1 b 0 , 2      a 1 , 0 b 1 , 0 a 1 , 1 + b 1 , 1 b 1 , 2 a 1 , 0 b 2 , 0 b 2 , 1 a 1 , 1 + b 2 , 2 Kronecker sum can express asynchronous behavior

  9. PART: FILE: . 9 Kronecker encoding of transition matrices

  10. PART: FILE:kron-Ndescription Kronecker description of the next-state function 10 N : X pot → 2 X pot can be thought of as a boolean matrix N ∈ B X pot ×X pot   � �  �  The model is Kronecker-consistent if we can write N = N α = N k,α α ∈E α ∈E L ≥ k ≥ 1 where � is the Kronecker product operator and all operations are performed in boolean algebra In other words, N = � α ∈E N e and each N α = � L ≥ k ≥ 1 N k,α where N k,α : X k → 2 X k is encoded by the boolean matrix N k,α ∈ B |X k |×|X k | Locality: Often, the k th local state does not affect and is not affected by event α , N k,α = I encode a huge N using just L · |E| small matrices N k,α each N k,α is a |X k | × |X k | boolean matrix, usually very sparse

  11. PART: FILE:kron-next-state-encA Using structural information to encode N ( L = 5) 11 X 5 = ? X 4 = ? X 3 = ? X 2 = ? X 1 = ? EVENTS → � � � � 0 0 N 5 ,a : ? N 5 ,e : ? I I I p 1 0 L � � � � � � E V 0 0 0 N 4 ,a : ? N 4 ,b : ? N 4 ,c : ? I I a 0 0 1 E L q s � � � � � � S 0 0 0 N 3 ,b : ? N 3 ,c : ? N 3 ,e : ? I I ↓ 1 0 1 � � � � b c d 0 0 N 2 ,a : ? N 2 ,d : ? I I I 0 1 � � � � 0 0 N 1 ,d : ? N 1 ,e : ? I I I 0 10 r t e Top ( a ):5 Top ( b ):4 Top ( c ):4 Top ( d ):2 Top ( e ):5 Bot ( a ):2 Bot ( b ):3 Bot ( c ):3 Bot ( d ):1 Bot ( e ):1 we can determine a priori from the model whether N k,α = I

  12. Kronecker encoding of N : N = � � PART: FILE:kron-next-state-encB 5 ≥ k ≥ 1 N k,α 12 α ∈{ a,b,c,d,e } p 0 ,p 1 }≡{ q 0 ,q 1 }≡{ r 0 ,r 1 }≡{ s 0 ,s 1 }≡{ t 0 ,t 1 }≡{ X 5 : { 0 , 1 } X 4 : { 0 , 1 } X 3 : { 0 , 1 } X 2 : { 0 , 1 } X 1 : { 0 , 1 } EVENTS → � � � � 0 0 0 1 N 5 ,a : N 5 ,e : I I I p 1 0 0 0 L � � � � � � E V 0 1 0 1 0 0 N 4 ,a : N 4 ,b : N 4 ,c : I I a 0 0 0 0 1 0 E L q s � � � � � � S 0 0 0 1 0 0 N 3 ,b : N 3 ,c : N 3 ,e : I I ↓ 1 0 0 0 1 0 � � � � b c d 0 1 0 0 N 2 ,a : N 2 ,d : I I I 0 0 1 0 � � � � 0 1 0 0 N 1 ,d : N 1 ,e : I I I 0 0 1 0 r t e Top ( a ):5 Top ( b ):4 Top ( c ):4 Top ( d ):2 Top ( e ):5 Bot ( a ):2 Bot ( b ):3 Bot ( c ):3 Bot ( d ):1 Bot ( e ):1

  13. PART: FILE:kron-next-state-encC Using structural information to encode N ( L = 4) 13 X 4 = ? X 3 = ? X 2 = ? X 1 = ? EVENTS → p N 4 ,a :? N 4 ,e :? I I I L a E V q s N 3 ,a :? N 3 ,b :? N 3 ,c :? N 3 ,e :? I E L S N 2 ,a :? N 2 ,d :? I I I ↓ b c d N 1 ,d :? N 1 ,e :? I I I r t Top ( a ):4 Top ( b ):3 Top ( c ):3 Top ( d ):2 Top ( e ):4 e Bot ( a ):2 Bot ( b ):3 Bot ( c ):3 Bot ( d ):1 Bot ( e ):1 we can determine a priori from the model whether N k,α = I

  14. N = � � PART: FILE:kron-next-state-encDALT Kronecker encoding of N : 4 ≥ k ≥ 1 N k,α 14 α ∈{ a,b,c,d,e } p 0 ,p 1 }≡{ q 0 r 0 ,q 1 r 0 ,q 0 r 1 }≡{ s 0 ,s 1 }≡{ t 0 ,t 1 }≡{ X 4 : { 0 , 1 } X 3 : { 0 , 1 , 2 } X 2 : { 0 , 1 } X 1 : { 0 , 1 } EVENTS → � � � � p 0 0 0 1 N 4 ,a : N 4 ,e : I I I 1 0 0 0 L � � � � � � � � E a 0 1 0 0 0 0 0 0 0 0 0 0 V q s N 3 ,a : 0 0 0 N 3 ,b : 0 0 0 N 3 ,c : 0 0 1 N 3 ,e : 0 0 0 I E 0 0 0 0 1 0 0 0 0 1 0 0 L S � � � � 0 1 0 0 ↓ N 2 ,a : N 2 ,d : I I I 0 0 1 0 b c d � � � � 0 1 0 0 N 1 ,d : N 1 ,e : I I I 0 0 1 0 r t Top ( a ):4 Top ( b ):3 Top ( c ):3 Top ( d ):2 Top ( e ):4 e Bot ( a ):2 Bot ( b ):3 Bot ( c ):3 Bot ( d ):1 Bot ( e ):1

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