  Stochasticity is a key characteristic of intracellular processes such as gene
regulation and chemical signalling. Therefore, characterising stochastic
effects in biochemical systems is essential to understand the complex dynamics
of living things. Mathematical idealisations of biochemically reacting systems
must be able to capture stochastic phenomena. While robust theory exists to
describe such stochastic models, the computational challenges in exploring
these models can be a significant burden in practice since realistic models are
analytically intractable. Determining the expected behaviour and variability of
a stochastic biochemical reaction network requires many probabilistic
simulations of its evolution. Using a biochemical reaction network model to
assist in the interpretation of time course data from a biological experiment
is an even greater challenge due to the intractability of the likelihood
function for determining observation probabilities. These computational
challenges have been subjects of active research for over four decades. In this
review, we present an accessible discussion of the major historical
developments and state-of-the-art computational techniques relevant to
simulation and inference problems for stochastic biochemical reaction network
models. Detailed algorithms for particularly important methods are described
and complemented with MATLAB implementations. As a result, this review provides
a practical and accessible introduction to computational methods for stochastic
models within the life sciences community.
