quan col
play

quancol . ........ . . . ... ... ... ... ... ... ... - PowerPoint PPT Presentation

quancol . ........ . . . ... ... ... ... ... ... ... www.quanticol.eu Population Modelling Vashti Galpin Laboratory for Foundations of Computer Science University of Edinburgh Open Problems in Concurrency Theory Bertinoro 21


  1. quan�col . ........ . . . ... ... ... ... ... ... ... www.quanticol.eu Population Modelling Vashti Galpin Laboratory for Foundations of Computer Science University of Edinburgh Open Problems in Concurrency Theory Bertinoro 21 June 2014 OPCT, June 2014 1 / 29

  2. Modelling collective adaptive systems quantitatively OPCT, June 2014 2 / 29

  3. Motivation � application area: collective adaptive systems (CAS) � smart transport – buses, bike sharing � smart grid – electricty generation and consumption � we want model to quantitative behaviour of these systems and be able to characterise their performance � we take a population-based approach where there are a large number of identical processes � many processes leads to well-known problem of state space explosion � mitigate this problem with approximation techniques � focus in this talk on a general process algebra approach to modelling populations, moving beyond application to biology OPCT, June 2014 3 / 29

  4. Quantitative modelling Modelling P Language semantic a mapping S a Mathematical Representation a j analysis technique Result R a j OPCT, June 2014 4 / 29

  5. Modelling with PEPA � PEPA [Hillston, 1996] def � two-level grammar, constant definition, C = S S ::= ( a , r ) . S | S + S S | P ⊲ ⊳ ::= P L P multi-way synchronisation (CSP-style) � operational semantics define labelled multi-transition system ( a , r ) � P 1 − − − → P 2 � labelled continuous-time Markov chain (CTMC) � what happens when there are many sequential processes? � assume n sequential constants: C 1 , . . . , C n � each constant has a maximum of m states: S 1 , 1 , . . . , S 1 , m � CTMC has a maximum of n m states OPCT, June 2014 5 / 29

  6. Modelling with PEPA C 1 ⊲ ⊳ L . . . ⊲ ⊳ Modelling P L C n Language CTMC semantic mapping Mathematical S CTMC ( S 1 , j 1 , . . . , S n , j n ) Representation analysis steady state technique ( p 1 , . . . . . . . . . , p n m ) R CTMC Result OPCT, June 2014 6 / 29

  7. Quotienting by bisimilarity � what if many of the sequential processes are the same? � consider the states � ( S 1 , 1 , S 1 , 1 , S 1 , 2 , S 4 , j 4 , . . . , S n , j n ) � ( S 1 , 2 , S 1 , 1 , S 1 , 1 , S 4 , j 4 , . . . , S n , j n ) � both have the same numbers of S 1 , 1 and S 1 , 2 � numeric vector representation � (# S 1 , 1 , # S 1 , 2 . . . # S 1 , m ; . . . . . . ; # S n ′ , 1 , # S n ′ , 2 , . . . # S n ′ , m ) � n ′ is number of different types of sequential constants � introduces functional rates � stochastically bisimilar � smaller state space? � p is the maximum count of any state S i , j � CTMC has a maximum of ( n ′ × m ) p +1 states OPCT, June 2014 7 / 29

  8. Using numeric vector representation C 1 [ x 1 ] ⊲ ⊳ L . . . ⊲ ⊳ Modelling P L C n ′ [ x n ′ ] Language CTMC semantic mapping Mathematical S CTMC (# S 1 , 1 , . . . ; . . . # S n ′ , m ) Representation analysis steady state technique R CTMC ( p 1 , . . . . . . , p ( n ′ × m ) p +1 ) Result OPCT, June 2014 8 / 29

  9. Fluid/mean-field approximation � numeric vector representation can still result in a large number of states so use a fluid approximation [Hillston, 2005] � treat subpopulation counts as real rather than integral and express change over time as ordinary differential equations (ODEs) giving one equation for each sequential state: n ′ × m � seldom obtain ODEs with analytical solutions but numerical ODE solution is generally fast � ODE behaviour can approximate CTMC behaviour well if sufficient numbers (together with some other conditions as shown by Kurtz) OPCT, June 2014 9 / 29

  10. Fluid/mean-field approximation Modelling P Language semantic CTMC ODE mapping S CTMC T ODE Mathematical Representation steady state steady state analysis technique R CTMC ≈ R ODE Result OPCT, June 2014 10 / 29

  11. Languages for modelling populations � extensions to PEPA: multiple states per entity � Grouped PEPA [Hayden, Stefanek and Bradley, 2012] � Fluid process algebra [Tschaikowski and Tribastone, 2014] � biological: single state and count per species � Bio-PEPA [Ciocchetta and Hillston, 2009] � Bio-PEPA with compartments [Ciocchetta and Guerriero, 2009] � epidemiological: single state and count per subpopulation � variant of Bio-PEPA with locations [Ciocchetta and Hillston, 2010] OPCT, June 2014 11 / 29

  12. A stochastic population process algebra � stochastic and deterministic semantics � aim to be general but elementary � each entity has a single state and a count � is there a suitable equivalence? � compression bisimulation [Galpin and Hillston, 2011] � start more concretely and then consider more generality � syntax from epidemiological modelling but different semantics OPCT, June 2014 12 / 29

  13. A stochastic population process algebra � subpopulation description def C = ( β 1 , ( κ 1 , λ 1 )) ⊙ C + . . . + ( β m C , ( κ m C , λ m C )) ⊙ C � actions: β i are distinct � in and out stoichiometries: κ i , λ i ∈ N � composition of subpopulations def = C 1 ( n 1 , 0 ) ⊲ ⊳ . . . ⊲ ⊳ ∗ C p ( n p , 0 ) P ∗ � subpopulations: C j are distinct, � initial quantities: n j , 0 ∈ N � minimum and maximum size: M C and N C for each C � range of a subpopulation is N C − M C + 1 � use C ( n ) to distinguish subpopulations with different ranges � P ( n ) defines a composition whose minimum range is n OPCT, June 2014 13 / 29

  14. Operational semantics n C � def = ( β k , ( κ k , λ k )) ⊙ C C k =1 α ∈ { β 1 , . . . , β n C } α, { ( C , n ) } C ( n ) − − − − − − → c C ( n − κ k + λ k ) κ k ≤ n ≤ N C − λ k OPCT, June 2014 14 / 29

  15. � Operational semantics (continued) α, W → c P ′ − − − P α, W ′ Q � − − − → c α, W → c P ′ ⊲ P ⊲ ⊳ ∗ Q − − − ∗ Q ⊳ α, W → c Q ′ − − − Q α, W ′ P − − − → c α, W → c P ′ ⊲ P ⊲ ⊳ ∗ Q − − − ∗ Q ⊳ α, W 1 α, W 2 → c P ′ → c Q ′ P − − − Q − − − α, W 1 ∪ W 2 → c P ′ ⊲ ∗ Q ′ P ⊲ ⊳ ∗ Q − − − − − − ⊳ OPCT, June 2014 15 / 29

  16. Operational semantics (continued) α, W → c P ′ − − − P α, f α ( W ) → s P ′ P − − − − − � f α : ( C → N ) → R ≥ 0 where C is the set of subpopulations � f α may make reference to M C and N C α, r � Markov chain semantics are given by − − → s � ODE semantics can be derived from C 1 ( n 1 , 0 ) ⊲ ⊳ ∗ . . . ⊲ ⊳ ∗ C p ( n p , 0 ) � hybrid semantics by mapping to stochastic HYPE [Galpin 2014] � dynamic switching between stochastic and deterministic semantics for each action depending on subpopulation size or rate OPCT, June 2014 16 / 29

  17. Example def = ( α 1 , (1 , 0)) ⊙ A + ( α 2 , (0 , 1)) ⊙ A + ( α 3 , (2 , 0)) ⊙ A A def = ( α 3 , (0 , 1)) ⊙ B B def = ( α 1 , (0 , 1)) ⊙ C + ( α 2 , (1 , 0)) ⊙ C C OPCT, June 2014 17 / 29

  18. Example def = ( α 1 , (1 , 0)) ⊙ A + ( α 2 , (0 , 1)) ⊙ A + ( α 3 , (2 , 0)) ⊙ A A def = ( α 3 , (0 , 1)) ⊙ B B def = ( α 1 , (0 , 1)) ⊙ C + ( α 2 , (1 , 0)) ⊙ C C OPCT, June 2014 17 / 29

  19. Example def = ( α 1 , (1 , 0)) ⊙ A + ( α 2 , (0 , 1)) ⊙ A + ( α 3 , (2 , 0)) ⊙ A A def = ( α 3 , (0 , 1)) ⊙ B B def = ( α 1 , (0 , 1)) ⊙ C + ( α 2 , (1 , 0)) ⊙ C C OPCT, June 2014 17 / 29

  20. Example def = ( α 1 , (1 , 0)) ⊙ A + ( α 2 , (0 , 1)) ⊙ A + ( α 3 , (2 , 0)) ⊙ A A def = ( α 3 , (0 , 1)) ⊙ B B def = ( α 1 , (0 , 1)) ⊙ C + ( α 2 , (1 , 0)) ⊙ C C OPCT, June 2014 17 / 29

  21. Example def = ( α 1 , (1 , 0)) ⊙ A + ( α 2 , (0 , 1)) ⊙ A + ( α 3 , (2 , 0)) ⊙ A A def = ( α 3 , (0 , 1)) ⊙ B B def = ( α 1 , (0 , 1)) ⊙ C + ( α 2 , (1 , 0)) ⊙ C C � consider A (5) ⊲ ⊳ ∗ B (0) ⊲ ⊳ ∗ C (0) and A (7) ⊲ ⊳ ∗ B (0) ⊲ ⊳ ∗ C (0) � express as labelled transition systems in numerical vector representation ( n A , n B , n C ) OPCT, June 2014 17 / 29

  22. Example (continued) α 1 α 1 α 1 α 1 α 1 (5 , 0 , 0) (4 , 0 , 1) (3 , 0 , 2) (2 , 0 , 3) (1 , 0 , 4) (0 , 0 , 5) α 2 α 2 α 2 α 2 α 2 α 3 α 3 α 3 α 3 α 1 α 1 α 1 (3 , 1 , 0) (2 , 1 , 1) (1 , 1 , 2) (0 , 1 , 3) α 2 α 2 α 2 α 3 α 3 α 1 (1 , 2 , 0) (0 , 2 , 1) α 2 OPCT, June 2014 18 / 29

  23. Example (continued) α 1 α 1 α 1 α 1 α 1 (5 , 0 , 0) (4 , 0 , 1) (3 , 0 , 2) (2 , 0 , 3) (1 , 0 , 4) (0 , 0 , 5) α 2 α 2 α 2 α 2 α 2 α 3 α 3 α 3 α 3 α 1 α 1 α 1 (3 , 1 , 0) (2 , 1 , 1) (1 , 1 , 2) (0 , 1 , 3) α 2 α 2 α 2 α 3 α 3 α 1 (1 , 2 , 0) (0 , 2 , 1) α 2 α 1 α 1 α 1 α 1 α 1 α 1 α 1 (7 , 0 , 0) (6 , 0 , 1) (5 , 0 , 2) (4 , 0 , 3) (3 , 0 , 4) (2 , 0 , 5) (1 , 0 , 6) (0 , 0 , 7) α 2 α 2 α 2 α 2 α 2 α 2 α 2 α 3 α 3 α 3 α 3 α 3 α 3 α 1 α 1 α 1 α 1 α 1 (5 , 1 , 0) (4 , 1 , 1) (3 , 1 , 2) (2 , 1 , 3) (1 , 1 , 4) (0 , 1 , 5) α 2 α 2 α 2 α 2 α 2 α 3 α 3 α 3 α 3 α 1 α 1 α 1 (3 , 2 , 0) (2 , 2 , 1) (1 , 2 , 2) (0 , 2 , 3) α 2 α 2 α 2 α 3 α 3 α 1 (1 , 3 , 0) (0 , 3 , 1) α 2 OPCT, June 2014 18 / 29

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