GillespieSSA: Implementing the Gillespie Stochastic Simulation Algorithm in R

Journal of Statistical Software. 2008;25(12)

 

Journal Homepage

Journal Title: Journal of Statistical Software

ISSN: 1548-7660 (Online)

Publisher: Foundation for Open Access Statistics

LCC Subject Category: Social Sciences: Statistics

Country of publisher: United States

Language of fulltext: English

Full-text formats available: PDF

 

AUTHORS

Mario Pineda-Krch

EDITORIAL INFORMATION

Peer review

Editorial Board

Instructions for authors

Time From Submission to Publication: 53 weeks

 

Abstract | Full Text

The deterministic dynamics of populations in continuous time are traditionally described using coupled, first-order ordinary differential equations. While this approach is accurate for large systems, it is often inadequate for small systems where key species may be present in small numbers or where key reactions occur at a low rate. The Gillespie stochastic simulation algorithm (SSA) is a procedure for generating time-evolution trajectories of finite populations in continuous time and has become the standard algorithm for these types of stochastic models. This article presents a simple-to-use and flexible framework for implementing the SSA using the high-level statistical computing language R and the package GillespieSSA. Using three ecological models as examples (logistic growth, Rosenzweig-MacArthur predator-prey model, and Kermack-McKendrick SIRS metapopulation model), this paper shows how a deterministic model can be formulated as a finite-population stochastic model within the framework of SSA theory and how it can be implemented in R. Simulations of the stochastic models are performed using four different SSA Monte Carlo methods: one exact method (Gillespie's direct method); and three approximate methods (explicit, binomial, and optimized tau-leap methods). Comparison of simulation results confirms that while the time-evolution trajectories obtained from the different SSA methods are indistinguishable, the approximate methods are up to four orders of magnitude faster than the exact methods.