- 04/11/2014 - PLoS One paper published desribing multiscale modelling and analysis of collective decision making in swarm robotics with Inchman
- 10/08/2012 - PLoS One paper published describing pattern formation simulation with Inchman
- 10/04/2012 - PLoS One paper describing GPGMP's new simulation algorithm published
- 02/11/2010 - GPGMP paper accepted by Bioinformatics
- Version 1.0 of Inchman/GPGMP is released!

General introduction to reaction-diffusion equations and GPGMP

GPGMP provides an implementation of a spatially-resolved stochastic simulation algorithm on general-purpose graphics processing units (GPGPUs). This algorithm, designed to solve reaction-diffusion equations on a mesoscopic level, has widespread applications in computational biology, molecular chemistry and social systems research. For our implementation, we use the Gillespie multi-particle method, which is well-suited for GPGPUs. In preliminary tests, we could obtain speed ups of around 1-2 orders of magnitudes as compared to standard implementations on CPUs.

In many applications, most notably in a biological and chemical context, the number of participating agents is small and the inherently stochastic nature of the problem requires a microscopic description of the system, in which the position of every species is known at all times. The macroscopic diffusion equation can be regained by appropriate statistic averaging.

A microscopic approach, however, is often cumbersome and computer simulations to obtain realizations of reaction-diffusion networks are quite costly. Furthermore, it is often not necessary to distinguish between individual entities and a mesoscopic approach is sufficient. In a mesoscopic description, the domain of interest is divided into small subvolumes of a convenient granularity, which are assumed to be perfectly mixed. Instead of tracing the position of each individual particle through time, one then collectively keeps track of the number of particles in each subvolume.

All algorithms in the previous paragraph compute exact realizations of stochastic reaction-diffusion systems. The disadvantage of these methods is their high computational cost, in particular, if a fine granularity is required and the number of subvolumes is high. Furthermore, they do not lend themselves well for data-parallel implementations. However, if one is willing to sacrifice accuracy for speed, deterministic-stochastic hybrid algorithms provide an efficient alternative. In these methods, the diffusion part is separated from the reaction part and treated deterministically. The Gillespie multiparticle method (GMP) (Rodriguez et al., 2006) is one example of this class of algorithms.

GMP handles the diffusion part of the reaction-diffusion network trough a multiparticle lattice gas automaton (Chopard et al., 1994) and the reaction part via Gillespie's direct method (Gillespie, 1977). The time step is chosen globally according to the diffusion constants of each species and the dimensions of each lattice cell. In each iteration, all reactions are performed independently in each subvolume. At the end, all particles are diffused according to the cellular automaton rule.

We present a data-parallel implementation of GMP on GPGPUs (GPGMP). Since all cells are treated independently during each time step, our approach is straight-forward. Each thread works independently on exactly one subvolume. Global synchronization is only required at the end of the diffusion time step to exchange information about particles moving in between neighbouring cells. We refer the reader to Vigelius et al. (2010) for implementation details.

GPGMP allows researchers to efficiently simulate spatially-inhomogeneous reaction-diffusion networks. Even if no access to designated GPGPU clusters is available, GPGMP can still provide considerable speed gains on built-in GPGPU cards on workstations (see the figure above for a comparison of several algorithms). Furthermore, we provide free access to the Monash Sun Grid GPGMP cluster through our easy-to-use web interface to GPGMP, Inchman.

If you find this software useful, we kindly ask you to reference Vigelius et al. (2010) in your publication.

For more information, please see the GPGMP Developer Site.

For more information, please see the Inchman Tutorial.

Ander04

Ander, M., Beltrao, P., Ventura, B. D., Ferkinghoff-Borg, J., Foglierini, M., Lemerle, C., Tomas-Oliveira, I., and Serrano, L. (2004). Smartcell, a framework to simulate cellular processes that combines stochastic approximation with diffusion and localisation: analysis of simple networks. Systems Biology, 1(1), 129–138.

Chopard94

Chopard, B., Frachebourg, L., and Droz, M. (1994). Multiparticle Lattice Gas Automata for Reaction Diffusion Systems. International Journal of Modern Physics C, 5, 47–63.

Elf03

Elf, J., Doncic, A., and Ehrenberg, M. (2003). Mesoscopic reaction-diffusion in intracellular signaling. volume 5110, pages 114–124. SPIE.

Erban07

Erban, R., Chapman, J., and Maini, P. K. (2007). A practical guide to stochastic simulations of reaction-diffusion processes. http://arxiv.org/abs/0704.1908v2.

Gibson00

Michael A. Gibson and Jehoshua Bruck (2000). "Efficient Exact Stochastic Simulation of Chemical Systems with Many Species and Many Channels." Journal of Physical Chemistry A, 104(9), 1876-1889.

Gillespie77

Gillespie, D. T. (1976). A general method for numerically simulating the stochastic time evolution of coupled chemical reactions. Journal of Computational Physics, 22(4), 403–434.

Hattne05

Hattne, J., Fange, D., and Elf, J. (2005). Stochastic reaction-diffusion simulation with MesoRD. Bioinformatics, 21(12), 2923–2924.

Li06

Li, H. and Petzold, L. (2006). Logarithmic direct method for discrete stochastic simulation of chemically reacting systems. Technical report, Department of Computer Science, University of California, Santa Barbara.

Lis09

Lis, M., Artyomov, M. N., Devadas, S., and Chakraborty, A. K. (2009). Efficient stochastic simulation of reaction-diffusion processes via direct compilation. Bioinformatics, 25(17), 2289–2291.

Rodriguez06

Rodriguez, J. V., Kaandorp, J. A., Dobrzy ́ ski, M., and Blom, J. G. (2006). Spatial stochastic modelling of the phosphoenolpyruvate-dependent phosphotransferase (pts) pathway in escherichia coli. Bioinformatics, 22(15), 1895–1901.

Vigelius10

Vigelius, M., Lane, A. and Meyer, B. (2010). Accelerating Reaction-Diffusion Simulations with General-Purpose Graphics Processing Units.
Bioinformatics (2010),
First published online: November 8, 2010, doi: 10.1093/bioinformatics/btq622
Copyright © 2017 Monash University