process algebra for collective dynamics
play

Process Algebra for Collective Dynamics Jane Hillston Laboratory - PowerPoint PPT Presentation

Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Process Algebra for Collective Dynamics Jane Hillston Laboratory for Foundations of Computer Science University of Edinburgh joint work with Stephen Gilmore and


  1. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Performance Evaluation Process Algebra PEPA components perform activities either independently or in co-operation with other components. ( α, f ) . P Prefix P 1 + P 2 Choice P 1 ✄ ✁ L P 2 Co-operation P / L Hiding X Variable

  2. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Performance Evaluation Process Algebra PEPA components perform activities either independently or in co-operation with other components. ( α, f ) . P Prefix P 1 + P 2 Choice P 1 ✄ ✁ L P 2 Co-operation P / L Hiding X Variable

  3. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Performance Evaluation Process Algebra PEPA components perform activities either independently or in co-operation with other components. ( α, f ) . P Prefix P 1 + P 2 Choice P 1 ✄ ✁ L P 2 Co-operation P / L Hiding X Variable

  4. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Performance Evaluation Process Algebra PEPA components perform activities either independently or in co-operation with other components. ( α, f ) . P Prefix P 1 + P 2 Choice P 1 ✄ ✁ L P 2 Co-operation P / L Hiding X Variable

  5. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Performance Evaluation Process Algebra PEPA components perform activities either independently or in co-operation with other components. ( α, f ) . P Prefix P 1 + P 2 Choice P 1 ✄ ✁ L P 2 Co-operation P / L Hiding X Variable

  6. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Performance Evaluation Process Algebra PEPA components perform activities either independently or in co-operation with other components. ( α, f ) . P Prefix P 1 + P 2 Choice P 1 ✄ ✁ L P 2 Co-operation P / L Hiding X Variable

  7. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Performance Evaluation Process Algebra PEPA components perform activities either independently or in co-operation with other components. ( α, f ) . P Prefix P 1 + P 2 Choice P 1 ✄ ✁ L P 2 Co-operation P / L Hiding X Variable P 1 � P 2 is a derived form for P 1 ✄ ✁ ∅ P 2 .

  8. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Performance Evaluation Process Algebra PEPA components perform activities either independently or in co-operation with other components. ( α, f ) . P Prefix P 1 + P 2 Choice P 1 ✄ ✁ L P 2 Co-operation P / L Hiding X Variable P 1 � P 2 is a derived form for P 1 ✄ ✁ ∅ P 2 . When working with large numbers of entities, we write P [ n ] to denote an array of n copies of P executing in parallel.

  9. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Performance Evaluation Process Algebra PEPA components perform activities either independently or in co-operation with other components. ( α, f ) . P Prefix P 1 + P 2 Choice P 1 ✄ ✁ L P 2 Co-operation P / L Hiding X Variable P 1 � P 2 is a derived form for P 1 ✄ ✁ ∅ P 2 . When working with large numbers of entities, we write P [ n ] to denote an array of n copies of P executing in parallel. P [5] ≡ ( P � P � P � P � P )

  10. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Rates of interaction: bounded capacity Stochastic process algebras differ in how they define the rate of synchronised actions.

  11. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Rates of interaction: bounded capacity Stochastic process algebras differ in how they define the rate of synchronised actions. In PEPA the cooperation of components is assumed to give rise to shared actions and the rates of these shared actions are governed by the assumption of bounded capacity.

  12. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Rates of interaction: bounded capacity Stochastic process algebras differ in how they define the rate of synchronised actions. In PEPA the cooperation of components is assumed to give rise to shared actions and the rates of these shared actions are governed by the assumption of bounded capacity. The principle of bounded capacity means that a component cannot be made to carry out an action in cooperation faster than its own defined rate for the action. Thus shared actions proceed at the minimum of the rates in the participating components.

  13. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Rates of interaction: bounded capacity Stochastic process algebras differ in how they define the rate of synchronised actions. In PEPA the cooperation of components is assumed to give rise to shared actions and the rates of these shared actions are governed by the assumption of bounded capacity. The principle of bounded capacity means that a component cannot be made to carry out an action in cooperation faster than its own defined rate for the action. Thus shared actions proceed at the minimum of the rates in the participating components. In contrast independent actions do not constrain each other and if there are multiple copies of a action enabled in independent concurrent components their rates are summed.

  14. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions A simple example: processors and resources def = ( task 1 , r 1 ) . Proc 1 Proc 0 def Proc 1 = ( task 2 , r 2 ) . Proc 0 def = ( task 1 , r 3 ) . Res 1 Res 0 def Res 1 = ( reset , r 4 ) . Res 0 Proc 0 ✄ { task 1 } Res 0 ✁

  15. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions A simple example: processors and resources Proc 0 ✄ { task 1 } Res 0 ✁ ✁ ✕ ❑ ❆ def ( task 2 , r 2 ) ( reset , r 4 ) = ( task 1 , r 1 ) . Proc 1 ✁ ❆ Proc 0 ( task 1 , R ) ❄ ✁ ❆ def Proc 1 = ( task 2 , r 2 ) . Proc 0 ✁ Proc 1 ✄ ✁ ❆ { task 1 } Res 1 def = ( task 1 , r 3 ) . Res 1 Res 0 ✁ ❆ � ❅ ✁ ❆ def Res 1 = ( reset , r 4 ) . Res 0 ( reset , r 4 ) � ❅ ( task 2 , r 2 ) ✁ � ✠ ❅ ❘ ❆ Proc 1 ✄ { task 1 } Res 0 ✁ Proc 0 ✄ { task 1 } Res 1 ✁ Proc 0 ✄ { task 1 } Res 0 ✁ R = min( r 1 , r 3 )

  16. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions A simple example: processors and resources Proc 0 ✄ { task 1 } Res 0 ✁ ✁ ✕ ❑ ❆ def ( task 2 , r 2 ) ( reset , r 4 ) = ( task 1 , r 1 ) . Proc 1 ✁ ❆ Proc 0 ( task 1 , R ) ❄ ✁ ❆ def Proc 1 = ( task 2 , r 2 ) . Proc 0 ✁ Proc 1 ✄ ✁ ❆ { task 1 } Res 1 def = ( task 1 , r 3 ) . Res 1 Res 0 ✁ ❆ � ❅ ✁ ❆ def Res 1 = ( reset , r 4 ) . Res 0 ( reset , r 4 ) � ❅ ( task 2 , r 2 ) ✁ � ✠ ❅ ❘ ❆ Proc 1 ✄ { task 1 } Res 0 ✁ Proc 0 ✄ { task 1 } Res 1 ✁ Proc 0 ✄ { task 1 } Res 0 ✁ R = min( r 1 , r 3 )

  17. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions A simple example: processors and resources Proc 0 ✄ { task 1 } Res 0 ✁ ✕ ✁ ❆ ❑ def ( task 2 , r 2 ) ( reset , r 4 ) = ( task 1 , r 1 ) . Proc 1 ✁ ❆ Proc 0 ( task 1 , R ) ❄ ✁ ❆ def Proc 1 = ( task 2 , r 2 ) . Proc 0 ✁ Proc 1 ✄ ✁ ❆ { task 1 } Res 1 def = ( task 1 , r 3 ) . Res 1 Res 0 ✁ ❆ � ❅ ✁ ❆ def Res 1 = ( reset , r 4 ) . Res 0 ( reset , r 4 ) � ❅ ( task 2 , r 2 ) ✁ � ✠ ❅ ❘ ❆ Proc 1 ✄ { task 1 } Res 0 ✁ Proc 0 ✄ { task 1 } Res 1 ✁ Proc 0 ✄ { task 1 } Res 0 ✁ R = min( r 1 , r 3 )   − R 0 0 R 0 − ( r 2 + r 4 ) r 4 r 2   Q =   0 − r 2 0 r 2   r 4 0 0 − r 4

  18. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Calculating the rate of actions carried out in cooperation ( P 1 � P 0 ) ✄ { task1 } ( R 1 � R 0 � R 0 ) ✁ ✼ ✓ ✓ r ✓ ✓ ( P 1 � P 0 ) ✄ { task1 } ( R 0 � R 1 � R 0 ) ✁ ✓ r ✚ ❃ ✚✚✚✚✚ ✓ ✓ ( P 1 � P 0 ) ✄ { task1 } ( R 0 � R 0 � R 1 ) ✁ r ✘✘✘✘✘ ✓ ✘ ✿ ✓ ❳❳❳❳❳ ( P 0 � P 0 ) ✄ { task1 } ( R 0 � R 0 � R 0 ) ✁ ❩❩❩❩❩ r ❙ ❳ ③ ❙ ( P 0 � P 1 ) ✄ { task1 } ( R 1 � R 0 � R 0 ) ✁ r ❙ ❩ ⑦ ❙ ❙ ( P 0 � P 1 ) ✄ { task1 } ( R 0 � R 1 � R 0 ) ✁ ❙ r ❙ ❙ ✇ ( P 0 � P 1 ) ✄ { task1 } ( R 0 � R 0 � R 1 ) ✁

  19. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Calculating the rate of actions carried out in cooperation r 1 3 r 3 min(2 r 1 , 3 r 3 ) = 1 r 3 ( P 1 � P 0 ) ✄ { task1 } ( R 1 � R 0 � R 0 ) ✁ r = 6 min(2 r 1 , 3 r 3 ) 2 r 1 ✓ ✼ ✓ r ✓ ✓ ( P 1 � P 0 ) ✄ { task1 } ( R 0 � R 1 � R 0 ) ✁ ✓ r ❃ ✚ ✚✚✚✚✚ ✓ ✓ ( P 1 � P 0 ) ✄ { task1 } ( R 0 � R 0 � R 1 ) ✁ r ✘✘✘✘✘ ✓ ✿ ✘ ✓ ❳❳❳❳❳ ( P 0 � P 0 ) ✄ { task1 } ( R 0 � R 0 � R 0 ) ✁ ❩❩❩❩❩ r ❙ ❳ ③ ❙ ( P 0 � P 1 ) ✄ { task1 } ( R 1 � R 0 � R 0 ) ✁ r ❙ ❩ ⑦ ❙ ❙ ( P 0 � P 1 ) ✄ { task1 } ( R 0 � R 1 � R 0 ) ✁ ❙ r ❙ ❙ ✇ ( P 0 � P 1 ) ✄ { task1 } ( R 0 � R 0 � R 1 ) ✁

  20. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Collective Dynamics The behaviour of many systems can be interpreted as the result of the collective behaviour of a large number of interacting entities.

  21. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Collective Dynamics The behaviour of many systems can be interpreted as the result of the collective behaviour of a large number of interacting entities. For such systems we are often as interested in the population level behaviour as we are in the behaviour of the individual entities.

  22. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Collective Behaviour In the natural world there are many instances of collective behaviour and its consequences:

  23. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Collective Behaviour In the natural world there are many instances of collective behaviour and its consequences:

  24. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Process Algebra and Collective Dynamics Process algebra are well-suited to modelling such systems

  25. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Process Algebra and Collective Dynamics Process algebra are well-suited to modelling such systems Developed to represent concurrent behaviour compositionally;

  26. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Process Algebra and Collective Dynamics Process algebra are well-suited to modelling such systems Developed to represent concurrent behaviour compositionally; Capture the interactions between individuals explicitly;

  27. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Process Algebra and Collective Dynamics Process algebra are well-suited to modelling such systems Developed to represent concurrent behaviour compositionally; Capture the interactions between individuals explicitly; Incorporate formal apparatus for reasoning about the behaviour of systems;

  28. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Process Algebra and Collective Dynamics Process algebra are well-suited to modelling such systems Developed to represent concurrent behaviour compositionally; Capture the interactions between individuals explicitly; Incorporate formal apparatus for reasoning about the behaviour of systems; Stochastic extensions, such as PEPA, enable quantified behaviour of the dynamics of systems.

  29. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Process Algebra and Collective Dynamics Process algebra are well-suited to modelling such systems Developed to represent concurrent behaviour compositionally; Capture the interactions between individuals explicitly; Incorporate formal apparatus for reasoning about the behaviour of systems; Stochastic extensions, such as PEPA, enable quantified behaviour of the dynamics of systems. In the CODA project we are developing stochastic process algebras and associated theory, tailored to the construction and evaluation of the collective dynamics of large systems of interacting entities.

  30. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Population statistics: emergent behaviour A shift in perspective allows us to model the interactions between individual components but then only the consider the system as a whole as an interaction of populations.

  31. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Population statistics: emergent behaviour A shift in perspective allows us to model the interactions between individual components but then only the consider the system as a whole as an interaction of populations. This allows us to model much larger systems than previously possible but in making the shift we are no longer able to collect any information about individuals in the system.

  32. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Performance as an emergent behaviour We must instead think about the performance of the collective point of view. Service providers often want to do this in any case. For example making contracts in terms of service level agreements.

  33. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Performance as an emergent behaviour We must instead think about the performance of the collective point of view. Service providers often want to do this in any case. For example making contracts in terms of service level agreements. Example Service Level Agreement 90% of requests receive a response within 3 seconds.

  34. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Performance as an emergent behaviour We must instead think about the performance of the collective point of view. Service providers often want to do this in any case. For example making contracts in terms of service level agreements. Example Service Level Agreement 90% of requests receive a response within 3 seconds. Qualitative Service Level Agreement Less than 1% of the responses received within 3 seconds will read “System is overloaded, try again later”.

  35. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Novelty The novelty in this approach is twofold:

  36. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Novelty The novelty in this approach is twofold: Linking process algebra and continuous mathematical models for dynamic evaluation represents a paradigm shift in how such systems are studied.

  37. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Novelty The novelty in this approach is twofold: Linking process algebra and continuous mathematical models for dynamic evaluation represents a paradigm shift in how such systems are studied. The prospect of formally-based quantified evaluation of dynamic behaviour could have significant impact in application domains such as:

  38. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Novelty The novelty in this approach is twofold: Linking process algebra and continuous mathematical models for dynamic evaluation represents a paradigm shift in how such systems are studied. The prospect of formally-based quantified evaluation of dynamic behaviour could have significant impact in application domains such as: Large scale software systems Issues of scalability are important for user satisfaction and resource efficiency but such issues are difficult to investigate using discrete state models.

  39. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Novelty The novelty in this approach is twofold: Linking process algebra and continuous mathematical models for dynamic evaluation represents a paradigm shift in how such systems are studied. The prospect of formally-based quantified evaluation of dynamic behaviour could have significant impact in application domains such as: Biochemical signalling pathways Understanding these pathways has the potential to improve the quality of life through enhanced drug treatment and better drug design.

  40. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Novelty The novelty in this approach is twofold: Linking process algebra and continuous mathematical models for dynamic evaluation represents a paradigm shift in how such systems are studied. The prospect of formally-based quantified evaluation of dynamic behaviour could have significant impact in application domains such as: Epidemiological systems Improved modelling of these systems could lead to improved disease prevention and treatment in nature and better security in computer systems.

  41. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Novelty The novelty in this approach is twofold: Linking process algebra and continuous mathematical models for dynamic evaluation represents a paradigm shift in how such systems are studied. The prospect of formally-based quantified evaluation of dynamic behaviour could have significant impact in application domains such as: Crowd dynamics Technology enhancement is creating new possibilities for directing crowd movements in buildings and urban spaces, for example for emergency egress, which are not yet well-understood.

  42. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Outline 1 Introduction Stochastic Process Algebra Collective Dynamics 2 Continuous Approximation State variables Numerical illustration 3 Fluid-Flow Semantics Fluid Structured Operational Semantics 4 Example Scalable Web Services 5 Conclusions Alternative Models

  43. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Solving discrete state models Under the SOS semantics a PEPA model is mapped to a Continuous Time Markov Chain (CTMC) with global states determined by the local states of all the participating components.

  44. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Solving discrete state models Under the SOS semantics a PEPA model is mapped to a Continuous Time Markov Chain (CTMC) with global states determined by the local states of all the participating components. When the size of the state space is not too large they are amenable to numerical solution (linear algebra) to determine a steady state or transient probability distribution.

  45. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Solving discrete state models Under the SOS semantics a PEPA model is mapped to a Continuous Time Markov Chain (CTMC) with global states determined by the local states of all the participating components. When the size of the state space is not too large they are amenable to numerical solution (linear algebra) to determine a steady state or transient probability distribution. Alternatively they may be studied using stochastic simulation. Each run generates a single trajectory through the state space. Many runs are needed in order to obtain average behaviours.

  46. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Solving discrete state models Under the SOS semantics a PEPA model is mapped to a Continuous Time Markov Chain (CTMC) with global states determined by the local states of all the participating components. When the size of the state space is not too large they are amenable to numerical solution (linear algebra) to determine a steady state or transient probability distribution. Alternatively they may be studied using stochastic simulation. Each run generates a single trajectory through the state space. Many runs are needed in order to obtain average behaviours. As the size of the state space becomes large it becomes infeasible to carry out numerical solution and extremely time-consuming to conduct stochastic simulation.

  47. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Continuous Approximation The major limitation of the CTMC approach is the state space explosion problem.

  48. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Continuous Approximation The major limitation of the CTMC approach is the state space explosion problem. State space explosion becomes an ever more challenging problem as the scale and complexity of modern systems increase.

  49. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Continuous Approximation The major limitation of the CTMC approach is the state space explosion problem. State space explosion becomes an ever more challenging problem as the scale and complexity of modern systems increase. Use continuous state variables to approximate the discrete state space.

  50. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Continuous Approximation The major limitation of the CTMC approach is the state space explosion problem. State space explosion becomes an ever more challenging problem as the scale and complexity of modern systems increase. Use continuous state variables to approximate the discrete state space. ❞ ❞ ❞

  51. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Continuous Approximation The major limitation of the CTMC approach is the state space explosion problem. State space explosion becomes an ever more challenging problem as the scale and complexity of modern systems increase. Use continuous state variables to approximate the discrete state space. ✛ ✲ ✛ ✲ ❞ ❞ ❞

  52. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Continuous Approximation The major limitation of the CTMC approach is the state space explosion problem. State space explosion becomes an ever more challenging problem as the scale and complexity of modern systems increase. Use continuous state variables to approximate the discrete state space. ❞ ❞ ❞ ❞ ❞

  53. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Continuous Approximation The major limitation of the CTMC approach is the state space explosion problem. State space explosion becomes an ever more challenging problem as the scale and complexity of modern systems increase. Use continuous state variables to approximate the discrete state space. ✛ ✲ ✛ ✲ ✛ ✲ ✛ ✲ ❞ ❞ ❞ ❞ ❞

  54. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Continuous Approximation The major limitation of the CTMC approach is the state space explosion problem. State space explosion becomes an ever more challenging problem as the scale and complexity of modern systems increase. Use continuous state variables to approximate the discrete state space. ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞

  55. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Continuous Approximation The major limitation of the CTMC approach is the state space explosion problem. State space explosion becomes an ever more challenging problem as the scale and complexity of modern systems increase. Use continuous state variables to approximate the discrete state space. ✛ ✲ ✛ ✲ ✛ ✲ ✛ ✲ ✛ ✲ ✛ ✲ ✛ ✲ ✛ ✲ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞

  56. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Continuous Approximation The major limitation of the CTMC approach is the state space explosion problem. State space explosion becomes an ever more challenging problem as the scale and complexity of modern systems increase. Use continuous state variables to approximate the discrete state space. ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞

  57. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Continuous Approximation The major limitation of the CTMC approach is the state space explosion problem. State space explosion becomes an ever more challenging problem as the scale and complexity of modern systems increase. Use continuous state variables to approximate the discrete state space. ✲ ✛ ✲ ✛ ✲ ✛ ✲ ✛ ✲ ✛ ✲ ✛ ✲ ✛ ✲ ✛ ✲ ✛ ✲ ✛ ✲ ✛ ✲ ✛ ✲ ✛ ✲ ✛ ✲ ✛ ✲ ✛ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞

  58. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Continuous Approximation The major limitation of the CTMC approach is the state space explosion problem. State space explosion becomes an ever more challenging problem as the scale and complexity of modern systems increase. Use continuous state variables to approximate the discrete state space. ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞

  59. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Continuous Approximation The major limitation of the CTMC approach is the state space explosion problem. State space explosion becomes an ever more challenging problem as the scale and complexity of modern systems increase. Use continuous state variables to approximate the discrete state space. ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞

  60. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Continuous Approximation The major limitation of the CTMC approach is the state space explosion problem. State space explosion becomes an ever more challenging problem as the scale and complexity of modern systems increase. Use continuous state variables to approximate the discrete state space. ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ ❞ Use ordinary differential equations to represent the evolution of those variables over time.

  61. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions New mathematical structures: differential equations Use a more abstract state representation rather than the CTMC complete state space. .

  62. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions New mathematical structures: differential equations Use a more abstract state representation rather than the CTMC complete state space. Assume that these state variables are subject to continuous rather than discrete change. .

  63. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions New mathematical structures: differential equations Use a more abstract state representation rather than the CTMC complete state space. Assume that these state variables are subject to continuous rather than discrete change. No longer aim to calculate the probability distribution over the entire state space of the model. .

  64. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions New mathematical structures: differential equations Use a more abstract state representation rather than the CTMC complete state space. Assume that these state variables are subject to continuous rather than discrete change. No longer aim to calculate the probability distribution over the entire state space of the model. Instead the ODEs estimate the expected behaviour of the CTMC. .

  65. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions New mathematical structures: differential equations Use a more abstract state representation rather than the CTMC complete state space. Assume that these state variables are subject to continuous rather than discrete change. No longer aim to calculate the probability distribution over the entire state space of the model. Instead the ODEs estimate the expected behaviour of the CTMC. Appropriate for models in which there are large numbers of components of the same type, i.e. models of populations and situations of collective dynamics.

  66. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Simple example revisited def = ( task 1 , r 1 ) . Proc 1 Proc 0 def Proc 1 = ( task 2 , r 2 ) . Proc 0 def = ( task 1 , r 3 ) . Res 1 Res 0 def Res 1 = ( reset , r 4 ) . Res 0 Proc 0 [ N P ] ✄ { task 1 } Res 0 [ N R ] ✁

  67. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Simple example revisited CTMC interpretation States (2 NP + NR ) Processors ( N P ) Resources ( N R ) 1 1 4 2 1 8 def = ( task 1 , r 1 ) . Proc 1 2 2 16 Proc 0 3 2 32 def 3 3 64 Proc 1 = ( task 2 , r 2 ) . Proc 0 4 3 128 4 4 256 def = ( task 1 , r 3 ) . Res 1 Res 0 5 4 512 5 5 1024 def Res 1 = ( reset , r 4 ) . Res 0 6 5 2048 6 6 4096 7 6 8192 7 7 16384 Proc 0 [ N P ] ✄ { task 1 } Res 0 [ N R ] ✁ 8 7 32768 8 8 65536 9 8 131072 9 9 262144 10 9 524288 10 10 1048576

  68. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions Simple example revisited ODE interpretation d x 1 = − min( r 1 x 1 , r 3 x 3 ) + r 2 x 1 d t def x 1 = no. of Proc 0 = ( task 1 , r 1 ) . Proc 1 Proc 0 d x 2 def Proc 1 = ( task 2 , r 2 ) . Proc 0 = r 1 min( x 1 , x 3 ) − r 2 x 1 d t def = ( task 1 , r 3 ) . Res 1 x 2 = no. of Proc 1 Res 0 d x 3 def Res 1 = ( reset , r 4 ) . Res 0 = − r 1 min( x 1 , x 3 ) + r 4 x 4 d t x 3 = no. of Res 0 Proc 0 [ N P ] ✄ { task 1 } Res 0 [ N R ] ✁ d x 4 = r 1 min( x 1 , x 3 ) − r 4 x 4 d t x 4 = no. of Res 1

  69. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions 100 processors and 80 resources (simulation run A)

  70. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions 100 processors and 80 resources (simulation run B)

  71. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions 100 processors and 80 resources (simulation run C)

  72. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions 100 processors and 80 resources (simulation run D)

  73. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions 100 processors and 80 resources (average of 10 runs)

  74. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions 100 Processors and 80 resources (average of 100 runs)

  75. Introduction Continuous Approximation Fluid-Flow Semantics Example Conclusions 100 processors and 80 resources (average of 1000 runs)

Recommend


More recommend