Skip to main content

Advertisement

Log in

A rigorous approach to investigating common assumptions about disease transmission

Process algebra as an emerging modelling methodology for epidemiology

  • Original Paper
  • Published:
Theory in Biosciences Aims and scope Submit manuscript

Abstract

Changing scale, for example, the ability to move seamlessly from an individual-based model to a population-based model, is an important problem in many fields. In this paper, we introduce process algebra as a novel solution to this problem in the context of models of infectious disease spread. Process algebra allows us to describe a system in terms of the stochastic behaviour of individuals, and is a technique from computer science. We review the use of process algebra in biological systems, and the variety of quantitative and qualitative analysis techniques available. The analysis illustrated here solves the changing scale problem: from the individual behaviour we can rigorously derive equations to describe the mean behaviour of the system at the level of the population. The biological problem investigated is the transmission of infection, and how this relates to individual interactions.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2

Similar content being viewed by others

Notes

  1. The process algebra community refers to these as analysis techniques, but the word is used in a far more general sense of investigation rather than the specific sense of mathematical analysis.

References

  • Anderson RM, May RM (1981) The population-dynamics of micro-parasites and their invertebrate hosts. Philos Trans R Soc B 291:451–524

    Article  Google Scholar 

  • Baeten JCM (2005) A brief history of process algebra. Theor Comput Sci 335(2/3):131–146

    Article  Google Scholar 

  • Begon M, Bennet M, Bowers RG, French NP, Hazel SM, Turner J (2002) A clarification of transmission terms in host-microparasite models: numbers, densities and areas. Epidemiol Infect 129:147–153

    Article  CAS  PubMed  Google Scholar 

  • Bernardo M, Degano P, Zavattaro G (eds) (2008) Formal methods for computational systems biology. Lecture notes in computer science, vol 5016. Springer, Berlin

  • Boots M, Sasaki A (2001) Parasite-driven extinction in spatially explicit host-parasite systems. Am Nat 159:706–713

    Article  Google Scholar 

  • Bracciali A, Brunelli M, Cataldo E, Degano P (2008) Synapses as stochastic concurrent systems. Theor Comput Sci 408:66–82

    Article  Google Scholar 

  • Briggs CJ, Godfray HCJ (1995) The dynamics of insect-pathogen interactions in stage-structured environments. Am Nat 145:855–887

    Article  Google Scholar 

  • Calder M, Hillston J (2010) Process algebra modelling styles for biomolecular processes. In: Transactions on computational systems biology XI. Lecture notes in computer science, vol 5750. Springer, Berlin, pp 1–25

  • Cardelli L (2008a) From processes to ODEs by chemistry. In: 5th IFIP international conference on theoretical computer science (TCS 2008), international federation for information processing, vol 273. Springer, Boston, pp 261–281

  • Cardelli L (2008b) On process rate semantics. Theor Comput Sci 391:190–215

    Article  Google Scholar 

  • Ciocchetta F, Hillston J (2010) Bio-PEPA for epidemiological models. In: Fourth international workshop on practical applications of stochastic modelling (PASM09), vol 261 of electronic notes in theoretical computer science. Elsevier, Amsterdam, pp 43–69

  • Cohen J (2008) The crucial role of CS in systems and synthetic biology. Commun ACM 51:15–18

    Article  Google Scholar 

  • Cornell SJ, Isham VS, Grenfell BT (2004) Stochastic and spatial dynamics of nematode parasites in farmed ruminants. Proc R Soc B B 271:1243–1250

    Article  PubMed  Google Scholar 

  • Ellner A (2001) Pair approximation for lattice models with multiple interaction scales. J Theor Biol 210:435–447

    Article  CAS  PubMed  Google Scholar 

  • Fenton A, Fairbairn JP, Norman RA, Hudson PJ (2001) Parasite transmission: reconciling theory and reality. J Anim Ecol 71:893–905

    Article  Google Scholar 

  • Gillespie DT (1977) Exact stochastic simulation of coupled chemical-reactions. J Phys Chem 81(25):2340–2361

    Article  CAS  Google Scholar 

  • Hatcher M, Tofts C, Dunn A (1995) The effect of the embryonic bottleneck on vertically transmitted parasites. Proceedings of the 1st conference on information processing in cells, pp 339–353

  • Hillston J (2005) Fluid flow approximation of PEPA models. In: QEST’05, proceedings of the 2nd international conference on quantitative evaluation of systems. IEEE Computer Society Press, Torino, pp 33–42

  • Hochberg ME (1991) Non-linear transmission rates and the dynamics of infectious disease. J Theor Biol 153:301–321

    Article  CAS  PubMed  Google Scholar 

  • Joo J, Lebowitz JL (2004) Pair approximation of the stochastic susceptible-infected-recovered-susceptible epidemic model on the hypercubic lattice. Phys Rev E 70:036114

    Article  Google Scholar 

  • Kemper JT (1980) Identification of superspreaders for infectious-disease. Math Biosci 48:111–127

    Article  Google Scholar 

  • Kermack WO, McKendrick AG (1927) Contributions to the mathematical theory of epidemics I. Proc R Soc A 115:700–721

    Article  Google Scholar 

  • Kitano H (2002) Systems biology: a brief overview. Science 295:1662–1664

    Article  CAS  PubMed  Google Scholar 

  • Knell RJ, Begon M, Thompson DJ (1998) Transmission of Plodia interpunctella granulosis virus does not conform to the mass action model. J Anim Ecol 67:592–599

    Article  Google Scholar 

  • Kurtz TG (1970) Solutions of ordinary differential equations as limits of pure jump markov processes. J Appl Probab 7:49–58

    Article  Google Scholar 

  • Matsuda H, Ogita N, Sasaki A, Sato K (1992) Statistical mechanics of population - the lattice Lotka Volterra model. Prog Theor Phys 88:1035–1049

    Article  Google Scholar 

  • McCaig C (2007) From individuals to populations: changing scale in process algebra models of biological systems. PhD thesis, University of Stirling. http://hdl.handle.net/1893/398

  • McCaig C, Norman R, Shankland C (2008) Deriving mean field equations from large process algebra models. Technical Report CSM-175, Department of Computing Science and Mathematics, University of Stirling. http://hdl.handle.net/1893/1584

  • McCaig C, Norman R, Shankland C (2009) From individuals to populations: a symbolic process algebra approach to epidemiology. Math Comp Sci 2(3):139–155

    Google Scholar 

  • Milner R (1980) A calculus of communicating systems. Lecture notes in computer science, vol 92. Springer-Verlag, New York

  • Norman R, Shankland C (2003) Developing the use of process algebra in the derivation and analysis of mathematical models of infectious disease. In: Computer aided systems theory—EUROCAST 2003. Lecture notes in computer science, vol 2809. Springer, Berlin, pp 404–414

  • Nowicki P, Bonelli S, Barbero F, Balletto E (2009) Relative importance of density-dependent regulation and environmental stochasticity for butterfly population dynamics. Oecologia 161:227–239

    Article  Google Scholar 

  • Priami C (2006) Process calculi and life science. Electron Notes Theor Comput Sci 162:301–304

    Article  Google Scholar 

  • Railsback SF, Harvey BC (2002) Analysis of habitat-selection rules using an individual-based model. Ecology 83:1817–1830

    Google Scholar 

  • Regev A, Silverman W, Shapiro E (2001) Representation and simulation of biochemical processes using the pi-calculus process algebra In: Pacific symposium of biocomputing 2001 (PSB2001), vol 6. pp 459–470

  • Rhodes CJ, Anderson RM (2008) Contact rate calculations for a basic epidemic model. Math Biosci 216:56–62

    Article  CAS  PubMed  Google Scholar 

  • Sumpter DJT, Broomhead DS (2001) Relating individual behaviour to population dynamics. Proc R Soc B 268:925–932

    Article  CAS  PubMed  Google Scholar 

  • Tofts C (1993) Using process algebra to describe social insect behaviour. Trans Soc Comput Simul 9:227–283

    Google Scholar 

  • Tofts C (1994) Processes with probabilities, priority and time. Form Asp Comput 6:536–564

    Article  Google Scholar 

  • Turner J, Begon M, Bowers RG (2002) Modelling pathogen transmission: the interrelationship between local and global approaches. Proc R Soc B 270:105–112

    Article  Google Scholar 

  • Webb SD, Keeling MJ, Boots M (2007a) Host-parasite interactions between the local and the mean-field: How and when does spatial population structure matter? J Theor Biol 249(1):140–152

    Article  PubMed  Google Scholar 

  • Webb SD, Keeling MJ, Boots M (2007b) Spatially extended host-parasite interactions: the role of recovery and immunity. Theor Popul Biol 71:251–266

    Article  PubMed  Google Scholar 

  • Wing J (2006) Computational thinking. Commun ACM 49:33–35

    Article  Google Scholar 

Download references

Acknowledgments

This work was supported by the Engineering and Physical Sciences Research Council through a Doctoral Training Grant (CM, from 2004–2007), and through System Dynamics from Individual Interactions: A process algebra approach to epidemiology (EP/E006280/1, all authors, 2007–2010).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Chris McCaig.

Appendix: WSCCS

Appendix: WSCCS

The Weighted Synchronous Calculus of Communicating Systems (WSCCS) is one of many process algebras based on Milner’s seminal Calculus of Communicating Systems (CCS) (1980). For our work, the main difference between CCS and WSCCS is the addition of weighted, or probabilistic, choice. A full introduction to the notation of WSCCS can be found in Tofts’ introductory paper (1994). Here, we use examples from our models to give a brief overview of the WSCCS notation. Biological models in WSCCS utilise various different types of agents. Complex behaviours within the system can be constructed by having agents interact with each other and by allowing different simple behaviours to happen at different stages.

Consider the agent S3, which is written

$$ S3\mathop = \limits^{{\rm def}}p_{\rm d}.\surd:0 + (1-p_{\rm d}).\surd:S1. $$

This says that S3 will become the agent S1 with weight (1 − p d), or become the null agent 0 with weight p d. In each case it performs the action \(\surd,\) which can be thought of as representing a step of time, though this is not equal to any particular unit of time and tick actions need not be uniformly distributed in time. It is convenient to consider agents which can perform only tick actions as representing a probabilistic choice between the different outcomes. In general weights in WSCCS define the relative frequencies of the different outcomes but for probabilistic agents such as S3 we choose the weights to be between 0 and 1 with the sum of the weights equal to 1.

Another type of agent which must be considered is a parallel agent. The probabilistic agent

$$ I1 \mathop = \limits^{{\rm def}} p_{\rm b}.\surd:I2\times Nb2 + p_{\rm c}.\surd:I2\times Trans + (1-p_{\rm b}-p_{\rm c}).\surd:I2 $$

can become the agent I2 and also the parallel agents

$$ I2\times Nb2, $$
(7)

and

$$ I2\times Trans. $$
(8)

The agent in (7), which consists of an I2 agent in parallel with an Nb2 agent, represents an infected individual giving birth to a newborn individual. On the other hand the agent in (8), which consists of an I2 agent in parallel with a Trans agent, represents two different aspects of an infected individual’s behaviour (absorbing an infectious contact and making an infectious contact). In the next stage the Trans agent will always become the null agent 0 so that the infected individual is once more represented by a single agent.

The agent

$$ Popn \mathop = \limits^{{\rm def}} S1\{s\}\times I1\{i\}\times R1\{r\}\lceil\{\surd\} $$

is another type of parallel agent, which defines an initial population with which to analyse the system, consisting of s S1 agents, i I1 agents and r R1 agents. The \(\lceil\{\surd\}\) forces communicating agents to cooperate on all actions other than \(\surd.\)

Interaction between agents forms an important part of agent behaviour in WSCCS. For example the agent Trans,

$$ Trans \mathop = \limits^{{\rm def}} \omega.\overline{infect}:I3 + 1.\surd:I3, $$

will either perform the \(\overline{infect}\) action or perform a tick, in either case becoming I3. The special weight ω (which is larger than any real number weight) means that this agent must perform the \(\overline{infect}\) action when available. However, the restrictions on the actions which are possible in Popn mean that Trans can only perform the \(\overline{infect}\) action if an agent is available to perform a complementary action. For example the agent S2,

$$ S2 \mathop = \limits^{{\rm def}} \omega. infect :SI3 + 1.\surd:S3 $$

can perform the action infect which would allow Trans to perform \(\overline{infect}.\) If this happens the S2 agent will become an SI3 agent, indicating that it has made an infectious contact. Otherwise the S2 agent will perform a tick and become an S3 agent. The action infect is thought of as the input action while \(\overline{infect}\) is the output action.

The probabilities with which agents interact is influenced by the number of agents of the same type in the population, as well as the number of agents available to perform a complementary action. For example if there are no agents in the population available to perform an \(\overline{infect}\) action then an S2 agent would be unable to perform the input action and would be forced to perform a tick action.

Our models are designed in such a way that interaction and probabilistic choice happen in different stages. This means that behaviours in the models happen over multiple consecutive stages with behaviour being averaged over these stages to represent one time step in the MFEs. By separating probabilistic choice and communication it is easier to write the models and correctly determine the MFEs for the system.

Previous work introduced notation for functional parameters in WSCCS (McCaig 2007; McCaig et al. 2009). The models considered here make use of this notation to incorporate density-dependent behaviour. For example the probability of birth in both models is density dependent:

$$ p_{\rm b} \mathop = \limits^{{\rm prob}} p_{{\rm b}_0}-k(\lfloor S1\rfloor+\lfloor I1\rfloor+\lfloor R1\rfloor), $$
(9)

where \(\lfloor S1\rfloor, \lfloor I1\rfloor\) and \(\lfloor R1\rfloor\) are respectively the numbers of S1, I1 and R1 agents present in the population. When deriving MFEs functional parameters are incorporated by substituting the functional form of the parameter into the equations. For (9) this means substituting for

$$ \begin{aligned} p_{\rm b} &= p_{{\rm b}_0}-k(S1_t +I1_t+R1_t), \\ &= p_{{\rm b}_0}-kN_t. \\ \end{aligned} $$

Rights and permissions

Reprints and permissions

About this article

Cite this article

McCaig, C., Begon, M., Norman, R. et al. A rigorous approach to investigating common assumptions about disease transmission. Theory Biosci. 130, 19–29 (2011). https://doi.org/10.1007/s12064-010-0106-8

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s12064-010-0106-8

Keywords

Navigation