For the Gillespie algorithm, start from and an integer molecular copy number . At each step use the current state, without the mean approximation in parts (a)–(b). The reaction propensity functions are and , and their sum is . Draw two independent uniform random variables on and set
The waiting time has an exponential distribution with rate . Keep the sample path constant on , advance , and choose the reaction by
Record the post-jump state, recompute both reaction propensity functions, and repeat with fresh independent uniforms. At the death propensity is zero, so only a birth is selected and the trajectory remains nonnegative. For a prescribed terminal time , if the next event would occur after , keep the current state to and stop. This produces exact piecewise constant sample paths of the specified continuous-time Markov chain.
For the stochastic SIR model, the state is a continuous-time Markov chain on nonnegative integer triples summing to , initially . Its only transitions are
Rates vanish when a proposed transition would leave the state space. Equivalently, with independent unit-rate Poisson processes , the Poisson time-change representation of a Markov chain is
The left limits describe the state immediately before each jump. In the Gillespie algorithm, wait an exponential distribution time with rate , then choose infection or recovery in proportion to these two rates.
An exact Gillespie algorithm for one particle is:
  • Set the current well and time .
  • If is absorbing, stop.
  • Set and draw .
  • Move to if , and otherwise to .
  • Set and repeat, stopping if the jump crosses an absorbing end.
For , simulate particle identities independently and maintain a priority queue of their next event times. For , store occupation numbers and use aggregate event rates and for each well; one population-level Gillespie event then decrements one and increments its neighbor. This replaces work proportional to particle number by work proportional to the number of occupied wells.
The stochastic quasi-steady-state simulation evolves only :
1. At the current integer , compute and the averaged rates and .
2. Draw a waiting time .
3. Set with probability ; otherwise set .
4. Advance time by and repeat.
This is a Gillespie algorithm for the averaged slow master equation. It samples the fast conditional equilibrium analytically through its factorial moment and never simulates individual fast births or deaths.
Write the molecular copy numbers as and use the power-law reaction propensity convention of the paper. The seven propensities and stoichiometric vectors are
A channel is assigned zero propensity whenever its update would leave the nonnegative integer lattice.
The Gillespie algorithm starts from and . At the current state compute . If , terminate the path. Otherwise draw independent random variables from the uniform distribution on , set the next waiting time to
and choose the least index satisfying
Then update and , and repeat. The minimum of the seven competing reaction clocks has an exponential distribution of rate , while reaction wins with probability .