Simulating Biochemical Systems

Part of the Simulation Foundations, Methods and Applications book series (SFMA)


This chapter introduces the reader to the principles underlying Gillespie’s widely-used stochastic simulation algorithm (SSA), for the exact stochastic modeling of chemical reactions involving relatively small numbers of molecules. We also look at Gibson and Bruck’s improvements to the SSA, in order to support larger numbers of reactions, as well as the more recent variation by Slepoy, Thompson and Plimpton. All of these techniques are illustrated with Java implementations and a discussion of their complexity. We also introduce the Dizzy and SGNS2 toolkits, which implement some of these approaches, along with tau-leap approximation and reaction delays.


Reaction Method Dependency Graph Priority Queue Stochastic Simulation Algorithm Java Implementation 
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.


  1. 1.
    Gillespie, D.: Exact stochastic simulation of coupled chemical reactions. J. Phys. Chem. 81(25), 2340–2361 (1977)CrossRefGoogle Scholar
  2. 2.
    Ramsey, S., Orrell, D., Bolouri, H.: Dizzy: stochastic simulation of large-scale genetic regulatory networks. J. Bioinform. Comput. Biol. 3, 415–436 (2005)CrossRefGoogle Scholar
  3. 3.
    Lloyd-Price, J., Gupta, A., Ribeiro, A.S.: SGNS2: a compartmentalized stochastic chemical kinetics simulator for dynamic cell populations. Bioinformatics 28(22), 3004–3005 (2012). doi: 10.1093/bioinformatics/bts556 CrossRefGoogle Scholar
  4. 4.
    Gillespie, D.: A general method for numerically simulating the stochastic time evolution of coupled chemical reactions. J. Comput. Phys. 22, 403 (1976)MathSciNetCrossRefGoogle Scholar
  5. 5.
    Gibson, M., Bruck, J.: Efficient exact stochastic simulation of chemical systems with many species and many channels. J. Phys. Chem. 104, 1876–1889 (2000)CrossRefGoogle Scholar
  6. 6.
    Slepoy, A., Thompson, A., Plimpton, S.: A constant-time kinetic Monte Carlo algorithm for simulation of large biochemical reaction networks. J. Chem. Phys. 128, 205101 (2008)CrossRefGoogle Scholar
  7. 7.
    Devroye, L.: Non-uniform Random Variate Generation. Springer, New York (1986)CrossRefMATHGoogle Scholar
  8. 8.
    Chu, D.: Evolving parameters for a noisy bio-system. In: IEEE Symposiom Series on Computational Intelligence (2013)Google Scholar
  9. 9.
    Gillespie, D.: Approximate accelerated stochastic simulation of chemically reacting systems. J. Chem. Phys. 115(4), 1716–1733 (2001)CrossRefGoogle Scholar
  10. 10.
    Bratsun, D., Volfson, D., Tsimring, L.S., Hasty, J.: Delay-induced stochastic oscillations in gene regulation. PNAS 102(41), 14593–14598 (2005)CrossRefGoogle Scholar
  11. 11.
    Roussel, M.R., Zhu, R.: Validation of an algorithm for delay stochastic simulation of transcription and translation in prokaryotic gene expression. Phys. Biol. 3, 274–284 (2006)CrossRefGoogle Scholar
  12. 12.
    Ramsey, S., Orrell, D., Bolouri, H.: Dizzy home page. (2010)
  13. 13.
    Foundation, F.S.: GNU general public license. (2007)
  14. 14.
    Lloyd-Price, J., Gupta, A., Ribeiro, A.S.: SGNS2 stochastic simulator. (2015)
  15. 15.
    Ierusalimschy, R., de Figueiredo, L.H., Celes, W.: Lua—an extensible extension language. Softw.: Pract. Exp. 26(6), 635–652 (1996)Google Scholar

Copyright information

© Springer-Verlag London 2015

Authors and Affiliations

  1. 1.University of KentCanterburyUK

Personalised recommendations