ABC–Fun: A Probabilistic Programming Language for Biology

  • Anastasis Georgoulas
  • Jane Hillston
  • Guido Sanguinetti
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8130)


Formal methods have long been employed to capture the dynamics of biological systems in terms of Continuous Time Markov Chains. The formal approach enables the use of elegant analysis tools such as model checking, but usually relies on a complete specification of the model of interest and cannot easily accommodate uncertain data. In contrast, data-driven modelling, based on machine learning techniques, can fit models to available data but their reliance on low level mathematical descriptions of systems makes it difficult to readily transfer methods from one problem to the next. Probabilistic programming languages potentially offer a framework in which the strengths of these two approaches can be combined, yet their expressivity is limited at the moment.

We propose a high-level framework for specifying and performing inference on descriptions of models using a probabilistic programming language. We extend the expressivity of an existing probabilistic programming language, Infer.NET Fun, in order to enable inference and simulation of CTMCs. We demonstrate our method on simple test cases, including a more complex model of gene expression. Our results suggest that this is a promising approach with room for future development on the interface between formal methods and machine learning.


Posterior Distribution Markov Chain Monte Carlo Inference Engine Approximate Bayesian Computation Continuous Time Markov Chain 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Andreychenko, A., Mikeev, L., Spieler, D., Wolf, V.: Approximate maximum likelihood estimation for stochastic chemical kinetics. EURASIP Journal on Bioinformatics and Systems Biology 2012(1), 9 (2012)CrossRefGoogle Scholar
  2. 2.
    Borgström, J., Gordon, A.D., Greenberg, M., Margetson, J., Van Gael, J.: Measure transformer semantics for Bayesian machine learning. In: Barthe, G. (ed.) ESOP 2011. LNCS, vol. 6602, pp. 77–96. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  3. 3.
    Boys, R., Wilkinson, D., Kirkwood, T.: Bayesian inference for a discretely observed stochastic kinetic model. Statistics and Computing 18, 125–135 (2008)MathSciNetCrossRefGoogle Scholar
  4. 4.
    Gillespie, D.T.: Exact stochastic simulation of coupled chemical reactions. Journal of Physical Chemistry 81(25), 2340–2361 (1977)CrossRefGoogle Scholar
  5. 5.
    Goodman, N.D., Mansinghka, V.K., Roy, D.M., Bonawitz, K., Tenenbaum, J.B.: Church: a language for generative models. In: UAI, pp. 220–229 (2008)Google Scholar
  6. 6.
    Gordon, A., Aizatulin, M., Borgström, J., Claret, G., Graepel, T., Nori, A., Rajamani, S., Russo, C.: A model-learner pattern for Bayesian reasoning. In: Proceedings of the ACM SIGPLAN Conference on Principles of Programming Languages, POPL (2013)Google Scholar
  7. 7.
    Koller, D., Friedman, N.: Probabilistic Graphical Models. MIT Press, Cambridge (2010)Google Scholar
  8. 8.
    Liepe, J., Barnes, C., Cule, E., Erguler, K., Kirk, P., Toni, T., Stumpf, M.P.: ABC-SysBio—approximate Bayesian computation in Python with GPU support. Bioinformatics 26(14), 1797–1799 (2010)CrossRefGoogle Scholar
  9. 9.
    Minka, T., Winn, J., Guiver, J., Knowles, D.: Infer.NET 2.5, Microsoft Research Cambridge (2012),
  10. 10.
    Ocone, A., Millar, A.J., Sanguinetti, G.: Hybrid Regulatory Models: a statistically tractable approach to model regulatory network dynamics. Bioinformatics 29(7), 910–916 (2013)CrossRefGoogle Scholar
  11. 11.
    Opper, M., Ruttor, A., Sanguinetti, G.: Approximate inference for Gaussian-jump processes. In: Advances in Neural Information Processing Systems 24 (2010)Google Scholar
  12. 12.
    Opper, M., Sanguinetti, G.: Variational inference for Markov jump processes. In: Platt, J., Koller, D., Singer, Y., Roweis, S. (eds.) Advances in Neural Information Processing Systems 20, pp. 1105–1112. MIT Press, Cambridge (2008)Google Scholar
  13. 13.
    Pfeffer, A.: The Design and Implementation of IBAL: A General-Purpose Probabilistic Language. In: Getoor, L., Taskar, B. (eds.) Introduction to Statistical Relational Learning. The MIT Press (2007)Google Scholar
  14. 14.
    Ptashne, M., Gann, A.: Genes and signals. Cold Harbor Spring Laboratory Press, New York (2002)Google Scholar
  15. 15.
    Rao, V., Teh, Y.W.: Fast MCMC sampling for Markov jump processes and continuous time Bayesian networks. In: UAI (2011)Google Scholar
  16. 16.
    Sanguinetti, G., Ruttor, A., Opper, M., Archambeau, C.: Switching regulatory models of cellular stress response. Bioinformatics 25(10), 1280–1286 (2009)CrossRefGoogle Scholar
  17. 17.
    Sisson, S.A., Fan, Y., Tanaka, M.M.: Sequential Monte Carlo without likelihoods. Proceedings of the National Academy of Sciences 104(6), 1760–1765 (2007)MathSciNetCrossRefzbMATHGoogle Scholar
  18. 18.
    Suter, D.M., Molina, N., Gatfield, D., Schneider, K., Schibler, U., Naef, F.: Mammalian genes are transcribed with widely different bursting kinetics. Science 332(6028), 472–474 (2011)CrossRefGoogle Scholar
  19. 19.
    Toni, T., Welch, D., Strelkowa, N., Ipsen, A., Stumpf, M.P.: Approximate Bayesian computation scheme for parameter inference and model selection in dynamical systems. Journal of the Royal Society Interface 6(31), 187–202 (2009)CrossRefGoogle Scholar
  20. 20.
    Zechner, C., Pelet, S., Peter, M., Koeppl, H.: Recursive Bayesian estimation of stochastic rate constants from heterogeneous cell populations. In: IEEE CDC-ECE, pp. 5837–5843 (2011)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Anastasis Georgoulas
    • 1
  • Jane Hillston
    • 1
    • 2
  • Guido Sanguinetti
    • 1
    • 2
  1. 1.School of InformaticsUniversity of EdinburghUK
  2. 2.SynthSys — Synthetic and Systems BiologyUniversity of EdinburghUK

Personalised recommendations