Abstract
We consider the problem of efficiently simulating stochastic models of chemical kinetics. The Gillespie stochastic simulation algorithm (SSA) is often used to simulate these models; however, in many scenarios of interest, the computational cost quickly becomes prohibitive. This is further exacerbated in the Bayesian inference context when estimating parameters of chemical models, as the intractability of the likelihood requires multiple simulations of the underlying system. To deal with issues of computational complexity in this paper, we propose a novel hybrid τ-leap algorithm for simulating well-mixed chemical systems. In particular, the algorithm uses τ-leap when appropriate (high population densities), and SSA when necessary (low population densities, when discrete effects become non-negligible). In the intermediate regime, a combination of the two methods, which uses the properties of the underlying Poisson formulation, is employed. As illustrated through a number of numerical experiments, the hybrid τ offers significant computational savings when compared with SSA without, however, sacrificing the overall accuracy. This feature is particularly welcomed in the Bayesian inference context, as it allows for parameter estimation of stochastic chemical kinetics at reduced computational cost.
Keywords: stochastic chemical kinetics, hybrid scheme, jump process, parameter inference
1. Introduction
In the last few decades, there has been an increase in the interest in biochemical systems with a small number of interacting components; see for example the phage -lysis decision circuit [1], circadian rhythms [2] as well as the cell cycle [3]. In the setting of low copy numbers of interacting components, the stochastic variations may constitute a crucial element in the description of the dynamics of the systems, often in the form of bursts and cascading mechanisms that are typically not well captured by macroscopic models. Additionally, the general consensus now is that accounting for the stochasticity plays a central role in the interpretation of experimental data originating from cell and molecular processes [4,5].
Even when incorporating stochasticity in the modelling of biochemical systems one needs to decide on the assumptions that hold for the system in question. In particular, when the underlying system is not well mixed, the appropriate microscopic description involves describing the dynamics of each chemical molecule separately [6,7]. On the other hand, when the system is sufficiently well mixed, the kinetics of each species are described by a continuous time discrete space Markov chain, and in this case, the corresponding master equation is known as the chemical master equation (CME) [8]. Essentially, the CME is a (potentially infinite-dimensional) system of ordinary differential equations (ODEs) that describes, at each point in time, the probability density of all the different possible states of the system.
Except for some very simple chemical systems [9], due to the inherent high dimensionality of the CME, analytic solutions of the CME are not available. Therefore several methods have been developed [10–12] that try to solve the corresponding system of differential equations directly. An alternative and more widely adopted approach relates to the direct simulation of the underlying Markov process. More precisely, the stochastic simulation algorithm (SSA) [13] exactly simulates trajectories whose probability density function matches that of the CME as the system evolves in time. In addition, several alternative exact algorithms have been subsequently proposed [14,15] that were shown to be computationally more efficient than SSA. The core idea behind these algorithms is that one samples a waiting time for the next reaction from an appropriate exponential distribution, while another draw of a random variable is then used to decide which of the possible reactions will occur.
A fundamental issue with all the exact algorithms described above is that running them can be computationally intensive for realistic problems. The reason behind this is that the time between subsequent reactions becomes very small leading thus to a computational bottleneck. This issue is further exacerbated when one is interested in estimating parameters of the stochastic kinetics models from data, since the underlying likelihood is intractable, i.e. not available in closed form, and one needs to perform multiple stochastic simulations, for example within a particle Markov chain Monte Carlo framework [16–19], to deal with this intractability.
One approach to deal with the computational complexity of exact algorithms like SSA, is to use an approximate algorithm such as -leap [20] in which the system is simulated over suitable time intervals for which several chemical events might occur. This lumping of chemical events can lead to significant computational savings [8]. Furthermore, several variants of this algorithm have been proposed in the literature [21–24]. An alternative approach to speeding up the SSA is to employ different approximations on the level of the description of the chemical system. A prime example of this is the reaction rate [8] equation (RRE). This is an ODE that is valid in the limit of large molecular populations, and it can be thought of as approximating the time evolution of the mean of the evolving Markov chain. An intermediate regime between the SSA and the reaction rate equation is the one where stochasticity is still important, but there exists a sufficient number of molecules to describe the evolving kinetics by a continuous model. This regime is called the chemical Langevin equation (CLE) [25], which is an Itô stochastic differential equation (SDE) driven by a multi-dimensional Wiener process.
In practice, a lot of chemical systems can contain many different species with a wide range of population numbers. This multi-scale nature makes the direct application of approximate methods such as -leap or of approximate models such as the CLE or the RRE non-trivial. This has motivated several different hybrid algorithms [26–28] that only treat certain chemical species as continuous variables and others as discrete. By doing so, such schemes can benefit from the computational efficiency of continuum approximations (either deterministic or stochastic) while still taking into account discrete fluctuations when necessary. Such schemes typically involve partitioning the reactions into fast and slow reactions, with the fast reactions modelled using a continuum approximation (CLE or the reaction rate equation), while using the Markov jump process to simulate the discrete reactions. As the effective firing rate of reactions depends on the present chemical populations, the reactions may effectively transition from displaying fast to slow behaviours if the involved chemical populations vary significantly over time. This issue can be addressed by periodic repartitioning [29,30] or by adopting a different approach based on population scaling, i.e. adapting the type of reaction simulation as a function of the current population. Such an approach was followed in [31], where an algorithm was proposed that would perform Langevin dynamics in regions of abundance, jump dynamics in regions where one of the involved chemical species is in small concentrations, and a mixture of both in intermediate regions.
In this paper inspired by the work in [31] we propose a hybrid -leap scheme (hereafter denoted hybrid ) that uses -leaping dynamics to simulate reactions in which the discreteness cannot be discounted. In particular, the proposed algorithm corresponds to a discretization of the CME and in the limit of small coincides with SSA. This is contrary to the algorithm proposed in [31], where the limit of small time-step does not coincide with SSA. In addition, similar to the approach in [31] our scheme does not explicitly keep track of fast and slow reactions, but rather, performs -leap dynamics in regions of abundance, jump dynamics in regions where one of the involved chemical species is in small concentrations, and a mixture of both in intermediate regions. The preference of jump over -leap dynamics is controlled for each individual reaction using a blending function, which is chosen to take value in regions of low concentration, in regions where all involved chemical species are abundant and smoothly interpolates in between. The choice of each blending region will depend on the reaction rate associated with the given reaction. The region should be generally chosen so that the resulting propensity is large in the -leaping region and small in the discrete region.
The rest of the paper is organized as follows. In §2, we review the standard approaches for simulating chemical kinetics such as SSA and the -leap method. Furthermore, we introduce some basic ideas associated with parameter estimation for chemical kinetics, highlighting the fact that since the underlying likelihood is intractable one needs to design inference algorithms based on using fast and accurate simulations of the underlying chemical system. Then, in §3, we introduce our new hybrid algorithm, while in §4 we perform a number of numerical simulations that demonstrate the excellent performance of the proposed numerical scheme when compared with other state-of-the-art methods. We conclude in §5 with a summary of our findings and a discussion of future directions.
2. Preliminaries
We will consider a biochemical network of species that interact through reaction channels within an isothermal reactor of fixed volume . We will denote with the number of molecules of species at time and let . Throughout this work, we will assume that the chemical species are well mixed and hence can be modelled as a continuous time discrete space Markov process [32]. More precisely, when in state , the th reaction gives rise to a transition with exponential distributed waiting time with inhomogeneous rate where and denote the propensity and stoichiometric vector corresponding to the th reaction, respectively.
Each reaction is of the form
where and , for . We will denote with and then we have that the stoichiometric vectors , satisfy
These vectors describe how much the number of molecules change when the th reaction takes place. For notational convenience, hereafter, . Under the assumptions of mass action kinetics, the associated propensity for the th reaction is
where is the number of molecules of . Again, for notational convenience, hereafter .
2.1. Algorithms for simulating chemical kinetics
The main assumption in modelling the evolution of is that within the time interval , the probability of the reaction firing is proportional to . The process can thus be expressed as the sum of Poisson processes with inhomogeneous rates . Furthermore, the process can be expressed [25,33] as a random time change of unit rate Poisson processes
| (2.1) |
where are independent unit-rate Poisson processes. This formulation of the stochastic process is very helpful in terms of designing numerical methods that produce either exact or approximate samples. In particular, the standard way of sampling realizations of is the Gillespie SSA [13], see Algorithm 2.1.
As we can see in Algorithm 2.1, in order to advance the system from time to time , one needs to generate two random variables. The next reaction method [14] exploits further the structure of (2.1) to provide a more efficient implementation of Gillespie’s SSA when simulating systems with many reaction channels. However, a fundamental computational issue with exact algorithms such as Gillespie’s SSA or the next reaction method is they become computationally expensive when the number of molecules becomes large. In particular, in this case, the time to the next reaction becomes small and, if one is interested in simulating the chemical systems to timescales of , will have to simulate a very high number of reaction events.
One approach for speeding up exact algorithms is to further exploit the structure of (2.1) to construct approximate algorithms. In particular, instead of explicitly calculating the time to the next reaction, one can choose a timescale of interest and then calculate how many reactions have occurred in each of the reaction channels. More precisely, one can use the following approximation:
| (2.2) |
and then using the formulation (2.1), it is not difficult to see that the number of reactions in the th channel can be approximated by
where is a Poisson random variable with mean given by . The corresponding algorithm is called -leaping [20], see also Algorithm 2.2. A discussion about under which assumptions the approximation (2.2) is valid as well as strategies for choosing can be found in [25,34,35].
The main computational savings here come from the fact that several reaction events are lumped together, while in addition under appropriate assumptions on the propensity functions of the system [34,36] the error induced by this approximation is not very large. However, unlike exact methods like SSA in principle, the simple -leap method might lead to negative populations, so one has to modify the original algorithm to avoid this issue [22,37].
2.2. Parameter estimation for chemical kinetics
In many practical applications one might be interested in estimating parameters of stochastic kinetics models such as reaction rates from time series data. In the typical setting [38,39], given a realization of the stochastic process , the law of which depends on some parameter , we consider the problem of inferring the value of while having access only to discrete and noisy observations of at discrete times .
In our setting, the true data is a realization of a stochastic chemical system . That true data is (for simplicity) measured and saved at integer times , during which measurement errors are possible. This leads to the noisy data (a realization of ). The observations are assumed to be conditionally independent among each other given .
We aim to characterize or sample from the probability density , to which end we use a Markov chain targeting that density. By Bayes’ theorem,
| (2.3) |
Here, is the prior assigned to . Using the law of total probability on the denominator, we obtain
| (2.4) |
As the following example reveals, the likelihood is intractable, even in the case where there is no noise in the data and one observes directly.
Example 2.1. We consider the simplest case where the data coincide exactly with . In this case, becomes
where is the solution to the CME. However, except for some very simple chemical systems [9], solutions to the CME are not analytically available, which in turn implies that the likelihood is in general intractable.
As the example 2.1 indicates, the likelihood is intractable. There are different ways of dealing with this issue, one of which is through approximate Bayesian computation [19]. However, here we choose to proceed by following the pseudo-marginal approach [40], similarly to what was done in [18]. In particular, the idea is that if we have access to an unbiased estimator of our intractable likelihood we can proceed in the standard manner to perform Bayesian inference within a Metropolis–Hastings framework by replacing the intractable likelihood by its unbiased estimator.
2.2.1. Particle pseudo-marginal Metropolis–Hastings algorithm
As discussed above within the pseudo-marginal framework, we need to have access to an unbiased estimator of our intractable likelihood. We do this by using a (bootstrap) particle filter [41] with importance resampling to iteratively construct the (unbiased) estimate of . Combining this unbiased estimate with a Metropolis–Hastings step gives rise to the particle pseudo-marginal Metropolis–Hastings algorithm (PPMMH) [39]; see Algorithm 2.3. In typical Metropolis–Hastings fashion, the state space is explored via a proposal kernel generating proposals from the current state , and the proposals are kept in the chain using a Metropolis–Hastings accept/reject mechanism.
The bootstrap particle filter (computed in line of Algorithm 2.3) relies on the fact that, for ,
| (2.5) |
This allows refining the naive approach of simply simulating realizations/particles up to time . To avoid ambiguities, we hereafter solely use the term ‘particle’ to denote realizations of the particle filter, and not chemical species. The iterative method consists of propagating the particles over a length time interval, evaluating the likelihood of each particle given the data, and using an importance resampling mechanism. Among others, this allows to avoid the degeneracy of the filter [42]. The unbiasedness of the estimator can be established using, e.g. [39, p. 290]. The initial step of the algorithm is performed by sampling from a given prior .
The steps are summarized in Algorithm 2.4.
Line 7 of Algorithm 2.4 entails the repeated simulation of K particles over a time interval, resulting in a computationally intensive process. In this work, we speed up those computations by using the hybrid τ algorithm.
Remark 2.1. Practically running the bootstrap particle filter requires to make a few algorithmic choices and perform some amount of fine-tuning, chief among which are determining the number of particles and the type and parameters of the proposal kernel . In this work, we make use of a Gaussian proposal kernel, and proceed in a bootstrap fashion by performing a sequence of exploratory runs in order to determine those quantities. Those exploratory runs allow to determine a first estimate of the mean and the covariance of the kernel (up to a tuning constant ). Following [43,44], the number of particles is then chosen such that the variance in the log-posterior is approximately . The tuning constant the kernel proposal is also determined in a similar bootstrap fashion, again following the approach outlined in [43], with the aim that the accept–reject ratio is close to . The practical details of our implementation are discussed in §4.2.2.
3. Hybrid -leap
We now introduce our proposed algorithm. The idea here is similar to the one in [31]. In particular, we will introduce one blending function for each reaction denoted by . One can then simply rewrite equation (2.1) in the following way:
Using the property of Poisson processes, it is now possible to rewrite the equation above in the following manner:
| (3.1) |
This rewriting might appear trivial at first sight, but it is essential in terms of explaining our algorithm, given the form of the blending functions . In particular, for a single-species system, a natural choice of blending function is the following piecewise linear function:
where . Furthermore, in the case of a chemical system with species, we can construct blending functions in the following way. Let be the indices of the chemical species involved in the th reaction (both as reactants and products of reaction), i.e. . Then we can define as follows:
| (3.2) |
where , are the boundaries for each individual chemical species. The boundaries and are user-defined and depend on the problem at hand—in the general case, they may depend on both the species and the reaction. They allow to separate the state space into a region where the reaction is simulated with SSA dynamics, pure -leap or transitory hybrid dynamics in between. As such, they should be chosen in such a way that the region where the -leaping is applied is a valid numerical approximation. Two natural simplifications of this approach are when the boundaries depend only on the species ( for ) and when the boundaries are independent of species and reaction ( for ). In our numerical experiments, we restrict ourselves to the latter case.
We now define the following sets:
| (3.3a) |
| (3.3b) |
| (3.3c) |
It is not difficult to see that translates to , while corresponds when . Hence combining (3.2) with (3.1) when , we will use SSA to simulate (3.1), while when we will use the -leap to simulate (3.1). It is only in the region that some reactions have blending functions obtaining values in and it is for these reactions that we use a combination of SSA for the term , and -leap for the term . Note that, except for the region where the system is simulated solely via SSA or -leap, the simulation regime might be quite diverse, with some reactions being simulated with SSA, while others are simulated with -leap and others still are in the hybrid regime. For convenience, we call this region ‘mixed’ in figure 1d, which is simply given by
Figure 1.
(a–c): Illustration of , and associated with each of the reactions of the chemical system in example 3.1; (d) Partition of state space as per applicable simulation regime.
We call the resulting algorithm the hybrid -method (see Algorithm 3.1). Note that, for clarity, we denote by -leap(, ) the shorthand for performing one -leap step through Algorithm 2.2, only expressing its dependence on the time-step and the involved propensities . Furthermore, for the propensities, the expression is to be understood component-wise.
Example 3.1. We consider here the following chemical system
Figure 1a–c illustrates the sets associated with each of the reactions, here . In addition, in figure 1d we can see the partition of the state space in terms of which simulation regime is applied where.
Remark 3.2. In Algorithm 3.1, two different time-stepping strategies are being used. There is that relates to the time-step used by the -leap method in the intermediate regime and that relates to the time-step used by the -leap method when only -leap is used for simulation. This is done to provide extra flexibility but is not crucial for the performance of the algorithm.
Remark 3.3. Choosing one blending function per reaction is a modelling choice that tries to fully exploit the multi-scale nature (when present) of the chemical kinetics. A more conservative approach would be to define a single blending function for all reactions, i.e. . This would cause the simulation regime of any reaction to be determined by the current state of all chemical species present in the system. As long as this choice of blending function sensibly partitions the state space, i.e. ensuring that the underlying stochastic process spends some time outside the SSA region, it would still lead to an algorithm that is more efficient than SSA.
Remark 3.4. The idea of partitioning the state space is rather general. In particular, one could replace -leap with the numerical method of their choice and the only thing that would need to be considered is how to do the simulation in the region of space where the numerical method co-exists with -leap. An example of this is the hybrid CLE method proposed in [31] where instead of using -leap one simulates the term in (3.1) by using the diffusion approximation.
4. Numerical investigations
We now present several different numerical experiments to illustrate the robustness and the accuracy of our proposed approach. In particular, in §4.1 we study three different model chemical systems and compare the performance of hybrid with other algorithms. Furthermore, in §4.2, we study the performance of the hybrid method when used as the stochastic simulator of choice for parameter estimation as described in §2.2.
4.1. Comparison with other numerical methods
4.1.1. Lotka–Volterra system
We begin by considering a stochastic version of the Lotka–Volterra system. It is a first example where the hybrid algorithm captures the correct statistical behaviour, while the standard CLE approximation (with reflective boundary conditions) completely fails to do so. The system is defined as:
Chemical system 4.1. Lotka–Volterra system
The molecules of and are in a predator–prey relationship, both populations oscillating between states of abundance and scarcity. As in [31], the reaction constants are set to , , . In figure 2, a histogram is generated using SSA realizations simulated until , which corresponds to one period of the solution to the corresponding RREs. The initial conditions are chosen to be . The system clearly exhibits a multi-scale behaviour, spending time in all possible configurations of scarcity and abundance for both species. Furthermore, a peculiarity of the system is that, for some realizations, the chemical species reaches ; in consequence, the system reduces to , i.e. exponential growth of the chemical species . The locally high copy numbers of species cause the simulation via SSA to become excessively slow (especially so in the situation of exponential growth, as the generated time-steps evolve as for rapidly growing , causing the simulation cost to become prohibitively expensive); this calls for employing approximate but accelerated schemes. Here we will consider two such schemes, the first being the CLE with reflective boundary conditions to ensure the non-negativity of the chemical species, and the second one being the hybrid CLE proposed in [31].
Figure 2.
Histogram of SSA simulations up to time of the Lotka–Volterra system with .
Figure 3a displays the numerical means of computed using respectively SSA, the hybrid , the hybrid CLE [31] and the CLE (with reflective boundary conditions) with samples. We use a Euler–Maryama discretization for the CLE with time-step , while for the hybrid algorithms, the parameters are set to and the step-sizes and . The step-sizes were chosen manually by computing the error for a number of short exploratory runs. A more sophisticated implementation of the hybrid algorithm would require an adaptive scheme for the -leap part of the process. As we can observe, the numerical means of hybrid and hybrid CLE follow the same trend as SSA, whereas the CLE simulation completely fails to capture the right behaviour. The mismatch is not due to the chosen step-size in the CLE simulations, but rather to the fact that the solution to the CLE with reflective boundary conditions is fundamentally different from that of the CME. This underlines the need for simulators directly based on the CME and not approximations thereof.
Figure 3.
Chemical system 4.1 (Lotka–Volterra). Simulators: SSA, -leap (with reflective boundary conditions), CLE (also with reflective BC), hybrid CLE, hybrid . All averages were performed over simulations.
We now investigate the gains in computational efficiency. To this end, we simulate the Lotka–Volterra system up to time and measure the average computational time (using realizations) as a function of time, using different simulation algorithms: SSA, -leap, CLE, hybrid CLE and the hybrid . For the hybrid algorithms, we used the blending region , and the time-steps are fixed to . The results are presented in figure 3b. The computational time for the SSA grows exponentially for increasing , while for the hybrid simulations the computational cost grows linearly with time. At , the computational cost of the SSA algorithm is two orders of magnitude higher than that of the hybrid and hybrid CLE. Note that the hybrid CLE and -leap perform similarly well in this situation.
4.1.2. Birth–death system
As a next example, we consider the following one-dimensional birth–death process:
Chemical system 4.2. Birth–death system
We modify the propensity function of the birth reaction to be , which ensures the process never leaves the interval [31]. We are interested in calculating the amount of time that it takes for the system to reach zero when starting from the value . Note that due to our modification of the birth reaction, once the system reaches zero, it stays there, therefore we refer to this time as the extinction time.
In our experiments, we chose the parameters , and , and simulated the system over times to record extinction times via SSA, -leaping, CLE, hybrid CLE and hybrid . For the hybrid and CLE, we used the blending region and time-step . This is the time-step that -leap and CLE use as well. Figure 4a shows the quantile–quantile plot of extinction times obtained via -leaping, CLE, hybrid and hybrid CLE, compared with those obtained from SSA. A quantile–quantile plot compares one set of quantiles from one distribution against another set. Therefore, the closer the plotted points are to the line, the more similar the distributions. In that perspective, we see that -leaping yields extinction time samples with a distribution significantly different to that of SSA, while the hybrid matches the distribution much better; the same statement is true for CLE and hybrid CLE. Figure 4b displays the same data, this time by comparing the empirical cumulative distribution functions. Furthermore, we report in table 1 the relative speed-ups of each of the approximate algorithms with respect to SSA. As we can see, all the approximate algorithms are faster than SSA, while the hybrid is a bit faster than the hybrid CLE while displaying similar accuracy with it. In principle further speed-ups could be observed for all the algorithms if one was to use larger time-steps but this would result is a loss in accuracy.
Figure 4.
Birth–death system. Statistical comparisons of extinction times obtained via SSA, -leap, CLE, hybrid and hybrid CLE, taken over simulations.
Table 1.
Simulation times of the birth–death system until extinction, averaged over simulations.
| algorithm | avg. sim. time (s) | ratio SSA |
|---|---|---|
| SSA | 1.760409e−02 | 1 |
| h- | 1.258614e−02 | 1.39869 |
| -L | 7.784003e−03 | 2.26157 |
| h CLE | 1.689645e−02 | 1.04188 |
| CLE | 8.669714e−03 | 2.03053 |
4.1.3. Schlögl system
We now study the Schlögl system taken from [45]. It is a nonlinear model where the density function of the main reactant displays bistability for a certain choice of reaction constants.
Chemical system 4.3. Schlögl system
where and are buffered species, i.e. their populations are kept at constant values and , respectively. In effect, only needs to be tracked and this results in the following propensity functions:
We set , , and . In figure 5a, we plot one trajectory of the system for this choice of parameters for time using the SSA. As we can see the system exhibits a bistable behaviour as it tends to send time around two peaks one located around and one around .
Figure 5.
Trajectories of the Schlögl chemical system.
We experimented similarly to what was done in [45], comparing the numerical probability distributions obtained from the SSA and hybrid . For the hybrid , different combinations of blending regions and time-steps were tested. The initial condition is given by . For each combination of parameters, paths were generated up to time . Note that this time is not large enough for the system to jump between the two peaks of distribution, as we can see in figure 5b in which we plot trajectories of the system using SSA.
These results are presented in figure 6, in which the lower plot represents the numerical probability distributions, and the upper plots are zoom-ins corresponding to the intervals where the peaks are located. It is seen that, when using (parameter sets 1–4), the position of the blending region and its width hardly affect the probability distribution, which aligns very well with that obtained via SSA. By contrast, a numerical bias is clearly visible when using the time-step (parameter sets 5–8). In the high peak region (upper right zoom-in of figure 6), the obtained numerical densities concentrate on the same probability distribution which is not aligned with the SSA distribution. This is of course to be expected, since the hybrid method coincides with standard -leap in this region due to the choice of the blending function.
Figure 6.
Numerical probability density functions (pdfs) at for the Schlögl system using hybrid , for different parameter sets of . See table 2 for the values of each parameter set. Upper left plot : zoom-in of numerical pdfs on . Upper right plot : zoom-in on .
The numerical densities appear less stable in the first peak. The kink in the parameter set density is probably due to the combination of the sharply varying step-size between and (two orders of magnitude), the transition from the hybrid regime to the pure -leaping regime at , and the non-trivial interplay of dynamics oscillating between these two regions. This is further justified by the fact that the distribution associated to the parameter set , which has the same blending function but smaller , does not display such a behaviour and on the contrary is well aligned with the SSA density.
Table 2 describes the average time taken (over realizations) for the simulation of realizations oscillating near the low peak, respectively, the high peak. Note that for the probability of switching between these two peaks is very small indeed. The last two columns display the ratio between the average time taken by SSA to simulate realizations in the low peak (resp. high peak) and that of the hybrid . This illustrates the potential computational benefits of the hybrid but also the caveats of the algorithm. In all cases except for the simulation of the low peak when using , hybrid outperforms SSA. The slow-down in the latter case can be attributed to the fact that a large portion of the mass of the probability density function (and hence, where the algorithm will spend more time) is located in a part that is still simulated in part with SSA with propensities weighted by . Observing a speed-up when the system mainly evolves in the hybrid region is still possible; see the lines corresponding to parameters in table 2. This, however, is only possible when carefully choosing the time-step in the hybrid dynamics region. Indeed, choosing too big will cause the hybrid to often accept the next reaction time proposed by the SSA process with modified propensities, hence causing the algorithm to advance (at most) at the speed of the SSA. On the other hand, choosing too small causes the algorithm to simply advance at the speed of that small time-step, which might be smaller than just propagating the system with SSA. A compromise is then found when the chosen time-step allows to consistently skip a few reactions within the hybrid dynamics region, i.e. it should correspond to a few multiples of the average time until next reaction of the SSA dynamics with propensities weighted by . Furthermore, we remark that these speed-ups are obtained even with the computational overhead that the hybrid carries at each iteration through its conditional logic.
Table 2.
Schlögl system simulation times for SSA and hybrid (H ) with multiple parameters. LP = low peak, HP = high peak. Timings show the average runtime (over simulations) to simulate a realization in LP or HP over the time interval . Ratio SSA columns show the ratio of that time with the time needed by the SSA for the same peak.
| timings (s) | ratio SSA | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| param. set | LP | HP | LP | HP | |||||
| 1 | 1.0e−2 | 5e−3 | 40 | 80 | 5.47e−03 | 3.51e−03 | 1.801 | 38.05 | |
| 2 | 1.0e−2 | 1e−2 | 20 | 40 | 3.03e−03 | 3.49e−03 | 3.2531 | 38.161 | |
| 3 | 1.0e−2 | 2e−3 | 50 | 200 | 2.98e−02 | 3.51e−03 | 0.3307 | 38.008 | |
| 4 | 1.0e−2 | 1e−2 | 40 | 100 | 7.88e−03 | 3.53e−03 | 1.2512 | 37.779 | |
| 5 | 2.5e−1 | 5e−3 | 40 | 80 | 2.77e−03 | 1.38e−04 | 3.554 | 968.82 | |
| 6 | 2.5e−1 | 1e−2 | 20 | 40 | 1.42e−04 | 1.34e−04 | 69.506 | 993.38 | |
| 7 | 2.5e−1 | 2e−3 | 50 | 200 | 2.95e−02 | 1.39e−04 | 0.33435 | 957.39 | |
| h | 8 | 2.5e−1 | 1e−2 | 40 | 100 | 6.60e−03 | 1.36e−04 | 1.4925 | 983 |
| SSA | 9.85e−03 | 1.33e−01 | 1 | 1 | |||||
4.1.4. Autorepressive system
Finally, we consider the autorepressive genetic system, taken from [28]. This is yet another example where chemical reactions happen on different scales. In this gene regulatory system, the DNA is only present in one or two copies (active or inactive), the messenger RNA (mRNA) and proteins may reach much higher numbers. The system is described as follows:
System 4.4. Autorepressive gene system
In essence, the active DNA is transcribed to mRNA at rate , which in turn produces proteins (P) at rate . A protein may repress the active DNA, causing it to become inactive (represented by DNA0) at rate . The inactive DNA reactivates at rate . Finally, the mRNA and the proteins are degraded at rates and , respectively.
The reaction rates are set to , , , , and . Figure 7, shows a simulation of the system up to time using SSA. As we can see DNA and DNA0 obtain very small values but mRNA and P obtain quite a long range of values.
Figure 7.

An SSA-simulated realization of the autorepressive gene system. The system displays a multiple-scales structure. The mRNA and P species go through all possible simulation regime zones with blending regions BR 1 = , BR 2 = and BR 3 = .
We now simulate this chemical system with the hybrid and the hybrid CLE for three different blending regions namely and ; the time-steps were set to and . For each combination of parameters, simulations were performed up to time . The means and variances of these different processes are detailed in tables 4 and 5 (in the appendix). The results are again fairly accurate for all combinations of parameters and algorithms, and indicate a certain robustness with respect to the chosen blending region. Albeit somewhat marginal, the hybrid seems to perform slightly more accurately than the hybrid CLE when using bigger time-steps. We do not compare the efficiency with respect to -leap or CLE; simulation via either of these methods would immediately break the ‘switch’ nature of the DNA, which is either activated ( and ) or not ( and ). Furthermore, in table 6 in the appendix, we report the times taken by each algorithm for each combination of parameters, as well as their speed-up compared with SSA. Both methods display a modest but consistent speed-up with respect to SSA, up to three times faster.
4.2. Parameter estimation
This section investigates the reliability of the hybrid algorithm for Bayesian inverse problems, in the setting described in §2.2.
4.2.1. Experiment setting
The system on which the parameter estimation is performed is defined by the reactions (see also [18]):
System 4.5. Bayesian inference system
| (4.1) |
and are production reactions, and are decay reactions, and is a second-order reaction. The reaction rates are given by
where is used as a parameter, that takes the values . We aim to infer the value of for each of those values. To ensure identifiability, is set to its true value in all simulations—hence practically, the Bayesian inference is performed on .
Following [18], the noisy measurements are assumed to follow the distribution
| (4.2) |
4.2.2. Methodology
We are now interested in calculating the posterior distribution . We do this using the Algorithms 2.3 and 2.4.
There are a number of modelling choices and parameter tuning that need to be done before we proceed with our numerical experiments and comparisons. In this work, we use a Gaussian proposal kernel with mean and a covariance which will be estimated using successive short exploratory runs. Using a first exploratory run of the particle filter with (Algorithm 2.3) allows us to determine a first estimate of the parameter by and the sample covariance matrix . The number of particles is then chosen such that lies between and . Finally, the scaling parameter is set such that the accept–reject ratio is close to . The choice of the number of particles and the acceptance probability are chosen following the guidelines outlined in [43,44]. We summarize the obtained values in table 3.
Table 3.
Experimental values obtained for particle filter simulation.
| SSA | hybrid | SSA | hybrid | |
|---|---|---|---|---|
| 800 | 320 | 0.05 | 2.0 | |
| 640 | 1280 | 4.0 | 1.0 | |
| 80 | 160 | 1.0 | 1.0 | |
| 320 | 160 | 2.0 | 1.0 | |
After those values are determined, a small burn-in phase of iterations is performed to ensure the particle filter starts in a credible region. Finally, the actual experiment is run with iterations, using the last explored state of the burn-in phase as the starting point. This procedure is repeated for each value of , and for simulations obtained via the SSA or via the hybrid . The tunable parameters in the hybrid simulations were set to , and and .
The values chosen in the set-up phase bootstrap are roughly of the same order for both forward simulators. This suggests that the hybrid simulates the system in the same way as SSA, and thus causes the particle filter to explore the state space in the same way (only much more efficiently when becomes large).
4.2.3. Numerical results
We run the inference procedure using either the standard SSA or the hybrid algorithm. As can be seen in the box-and-whiskers plots (figures 8 and 9), across all scales the inference of the parameters are similar no matter which simulator is used. In all plots, the dashed red line represents the true value to be inferred. The coloured boxes are delimited by the first and third quartiles, the whiskers have length (interquartile range), and the points outside are statistical outliers. The values and have no multi-scale dependence, while the parameters and do.
Figure 8.

Bayesian inference system. Box plots of samples of parameters from PPMMH algorithm, with simulator SSA and hybrid , respectively, for multi-scale parameter . The red line represents the true value to be inferred.
Figure 9.

Bayesian inference system. Box plots of samples of parameters from PPMMH algorithm, with simulator SSA and hybrid , respectively, for multi-scale parameter . The red line represents the true value to be inferred.
The major difference is noted in the computational times (figure 10 illustrates how); as the system displays stronger multi-scale behaviour, the simulation time using the hybrid algorithm is bounded, while the SSA simulation time grows linearly.
Figure 10.

Mean simulation time for system (4.1) (averaged over simulations) for different values of the parameter .
5. Conclusions
We have proposed a novel hybrid algorithm, inspired by the hybrid CLE method proposed in [31]. Unlike it, the quantities remain fully discrete at all times. The method leverages the splitting property of Poisson processes to rewrite the stochastic process as a sum of Poisson random variables that are simulated using SSA or -leaping; the computational gains become obvious when one manages to ensure that the reactions fired frequently are simulated using the -leaping, while those firing less often (and for which small stochastic variations may lead to important changes) are simulated using the exact SSA.
We point out that this algorithm really belongs to a larger class of hybrid schemes based on the splitting of the Poisson process into separate processes that are simulated differently. In this sense, there is a significant amount of flexibility in the simulation of (multi-scale) stochastic chemical kinetics. Straightforwardly, one could swap the -leaping by a more robust algorithm such as binomial -leaping, -leaping, etc. Other approaches such as a separation into multiple levels (e.g. micro-meso-macro) with a suitable simulation at each level are also possible.
The choice of blending function discussed in this article is a ‘cautious’ one, as it considers all the involved species in a given reaction (reactants and products). This can be understood as dynamically tagging a reaction to be simulated using the SSA if any species is low, -leaping if all are abundant or a combination of both in the intermediate regime. Including the reactants in the blending functions makes intuitive sense, among others it can make the algorithm particularly robust to the issue of negative species. However, if it is known a priori that certain products do not have a significant impact on system (no feedback loops, etc.), not including them in the blending function may prove to be computationally interesting as it would naturally result in a larger state space in which the system is simulated with -leaping.
The various experiments presented in this article display how the hybrid algorithm produces accurate and computationally efficient results. This is especially the case in the multi-scale setting. The algorithm is naturally amenable to that setting, as it handles it with no necessary additional modelling steps, unlike other algorithms specifically designed for the multi-scale case, such as piecewise deterministic Markov processes in [28]. The algorithm requires some user-prescribed values, the time-steps for the -leaping and for the intermediate regime, as well as the blending functions (additionally in our case, with their corresponding parameters and ). Numerically, it was observed that the dependence of the time-step sizes on the quality of the simulations is significantly more important than that of the blending regions. It would be of interest to investigate further the impact of the blending functions and regions, establishing criteria on how to suitably define them, as well as incorporating adaptive time-step mechanisms for the different simulation regimes. Additionally, in the future, it would be interesting to adopt time-step strategies similar to the ones in [35] for choosing . Finally, in terms of Bayesian inference, an interesting research direction would be to see if the proposed framework could be modified to allow particle trajectories to be conditioned on the next observation, similarly to the approach in [46], as this could allow for dealing with the shortcomings of the bootstrap particle filter. Similarly, it would be interesting to see if the proposed approach could be adjusted to perform inference using the procedure outlined in [47].
Appendix
We present here some tables summarizing our numerical simulations for the autorepressive gene regulatory system (tables 4–6).
Table 4.
Mean values of the autorepressive gene regulatory system at with sample size using SSA, hybrid (h ) and hybrid CLE with different parameters.
| DNA | DNA | proteins | mRNA | ||||
|---|---|---|---|---|---|---|---|
| 5 | 10 | 0.173 | 0.827 | 64.411 | 25.868 | ||
| 10 | 15 | 0.134 | 0.866 | 63.041 | 25.267 | ||
| 15 | 20 | 0.111 | 0.889 | 61.763 | 24.734 | ||
| 5 | 10 | 0.12 | 0.88 | 64.235 | 25.514 | ||
| 10 | 15 | 0.151 | 0.849 | 63.974 | 25.401 | ||
| h | 15 | 20 | 0.134 | 0.866 | 63.286 | 25.54 | |
| 5 | 10 | 0.133 | 0.867 | 63.148 | 25.241 | ||
| 10 | 15 | 0.125 | 0.875 | 62.039 | 24.962 | ||
| 15 | 20 | 0.121 | 0.879 | 63.462 | 25.546 | ||
| 5 | 10 | 0.122 | 0.878 | 64.336 | 25.797 | ||
| 10 | 15 | 0.133 | 0.867 | 61.483 | 24.616 | ||
| h CLE | 15 | 20 | 0.128 | 0.872 | 61.61 | 24.679 | |
| SSA | 0.137 | 0.863 | 64.323 | 25.775 | |||
Table 5.
Standard deviations of the autorepressive gene regulatory system at with sample size using SSA and hybrid (h ) with different parameters.
| DNA | DNA | proteins | mRNA | ||||
|---|---|---|---|---|---|---|---|
| 5 | 10 | 0.37825 | 0.37825 | 32.777 | 12.726 | ||
| 10 | 15 | 0.34065 | 0.34065 | 32.699 | 12.789 | ||
| 15 | 20 | 0.31413 | 0.31413 | 33.77 | 13.286 | ||
| 5 | 10 | 0.32496 | 0.32496 | 34.09 | 13.228 | ||
| 10 | 15 | 0.35805 | 0.35805 | 34.61 | 13.492 | ||
| h | 15 | 20 | 0.34065 | 0.34065 | 33.797 | 13.271 | |
| 5 | 10 | 0.33957 | 0.33957 | 33.043 | 13.051 | ||
| 10 | 15 | 0.33072 | 0.33072 | 32.518 | 12.759 | ||
| 15 | 20 | 0.32613 | 0.32613 | 32.486 | 12.933 | ||
| 5 | 10 | 0.32729 | 0.32729 | 33.769 | 13.232 | ||
| 10 | 15 | 0.33957 | 0.33957 | 33.414 | 13.085 | ||
| h CLE | 15 | 20 | 0.33409 | 0.33409 | 33.662 | 13.015 | |
| SSA | 0.34385 | 0.34385 | 33.101 | 13.346 | |||
Table 6.
Simulation times of the autorepressive gene regulatory system at , averaged over realizations.
| simulation time | ratio SSA | ||||
|---|---|---|---|---|---|
| 5 | 10 | 5.66759e−03 | 1.485 | ||
| 10 | 15 | 5.92247e−03 | 1.421 | ||
| 15 | 20 | 6.47657e−03 | 1.3 | ||
| 5 | 10 | 2.36346e−03 | 3.562 | ||
| 10 | 15 | 2.72807e−03 | 3.086 | ||
| h | 15 | 20 | 3.46922e−03 | 2.426 | |
| 5 | 10 | 6.98658e−03 | 1.205 | ||
| 10 | 15 | 7.31605e−03 | 1.151 | ||
| 15 | 20 | 8.07277e−03 | 1.043 | ||
| 5 | 10 | 2.78733e−03 | 3.02 | ||
| 10 | 15 | 3.28434e−03 | 2.563 | ||
| h CLE | 15 | 20 | 4.19815e−03 | 2.005 | |
| SSA | 8.41800e−03 | 1 | |||
Contributor Information
Thomas Trigo Trindade, Email: thomas.trigotrindade@epfl.ch; t.trigotrindade@gmx.ch.
Konstantinos C. Zygalakis, Email: K.Zygalakis@ed.ac.uk.
Ethics
This work did not require ethical approval from a human subject or animal welfare committee.
Data accessibility
Data and relevant code for this research work are stored in GitHub [48] and have been archived within the Zenodo repository [49].
Declaration of AI use
We have not used AI-assisted technologies in creating this article.
Authors’ contributions
T.T.T.: software, writing—original draft, writing—review and editing; K.C.Z.: conceptualization, writing—original draft, writing—review and editing.
Both authors gave final approval for publication and agreed to be held accountable for the work performed therein.
Conflict of interest declaration
We declare we have no competing interests.
Funding
No funding has been received for this article.
References
- 1. Arkin A, Ross J, McAdams HH. 1998. Stochastic kinetic analysis of developmental pathway bifurcation in phage lambda-infected Escherichia coli cells. Genetics 149, 1633–1648. ( 10.1093/genetics/149.4.1633) [DOI] [PMC free article] [PubMed] [Google Scholar]
- 2. Vilar JMG, Kueh HY, Barkai N, Leibler S. 2002. Mechanisms of noise-resistance in genetic oscillators. Proc. Natl Acad. Sci. USA 99, 5988–5992. ( 10.1073/pnas.092133899) [DOI] [PMC free article] [PubMed] [Google Scholar]
- 3. Kar S, Baumann WT, Paul MR, Tyson JJ. 2009. Exploring the roles of noise in the eukaryotic cell cycle. Proc. Natl Acad. Sci. USA 106, 6471–6476. ( 10.1073/pnas.0810034106) [DOI] [PMC free article] [PubMed] [Google Scholar]
- 4. McAdams HH, Arkin A. 1997. Stochastic mechanisms in gene expression. Proc. Natl Acad. Sci. USA 94, 814–819. ( 10.1073/pnas.94.3.814) [DOI] [PMC free article] [PubMed] [Google Scholar]
- 5. Swain PS, Elowitz MB, Siggia ED. 2002. Intrinsic and extrinsic contributions to stochasticity in gene expression. Proc. Natl Acad. Sci. USA 99, 12795–12800. ( 10.1073/pnas.162041399) [DOI] [PMC free article] [PubMed] [Google Scholar]
- 6. Doi M. 1976. Stochastic theory of diffusion-controlled reaction. J. Phys. A. Math. Gen. 9, 1479–1495. ( 10.1088/0305-4470/9/9/009) [DOI] [Google Scholar]
- 7. Erban R, Chapman SJ. 2009. Stochastic modelling of reaction-diffusion processes: algorithms for bimolecular reactions. Phys. Biol. 6, 1( 10.1088/1478-3975/6/4/046001) [DOI] [PubMed] [Google Scholar]
- 8. Higham DJ. 2008. Modeling and simulating chemical reactions. SIAM Rev. 50, 347–368. ( 10.1137/060666457) [DOI] [Google Scholar]
- 9. Jahnke T, Huisinga W. 2007. Solving the chemical master equation for monomolecular reaction systems analytically. J. Math. Biol. 54, 1–26. ( 10.1007/s00285-006-0034-x) [DOI] [PubMed] [Google Scholar]
- 10. Wolf V, Goel R, Mateescu M, Henzinger TA. 2010. Solving the chemical master equation using sliding windows. BMC Syst. Biol. 4, 42. ( 10.1186/1752-0509-4-42) [DOI] [PMC free article] [PubMed] [Google Scholar]
- 11. MacNamara S, Burrage K. 2009. Krylov and steady-state techniques for the solution of the chemical master equation for the mitogen-activated protein kinase cascade. Numer. Algorithms 51, 281–307. ( 10.1007/s11075-008-9239-y) [DOI] [Google Scholar]
- 12. Schnoerr D, Cseke B, Grima R, Sanguinetti G. 2017. Efficient low-order approximation of first-passage time distributions. Phys. Rev. Lett. 119, 210601. ( 10.1103/PhysRevLett.119.210601) [DOI] [PubMed] [Google Scholar]
- 13. Gillespie DT. 1977. Exact stochastic simulation of coupled chemical reactions. J. Phys. Chem. 81, 2340–2361. ( 10.1021/j100540a008) [DOI] [Google Scholar]
- 14. Gibson MA, Bruck J. 2000. Efficient exact stochastic simulation of chemical systems with many species and many channels. J. Phys. Chem. A 104, 1876–1889. ( 10.1021/jp993732q) [DOI] [Google Scholar]
- 15. Cao Y, Li H, Petzold L. 2004. Efficient formulation of the stochastic simulation algorithm for chemically reacting systems. J. Chem. Phys. 121, 4059–4067. ( 10.1063/1.1778376) [DOI] [PubMed] [Google Scholar]
- 16. Golightly A, Wilkinson DJ. 2011. Bayesian parameter inference for stochastic biochemical network models using particle Markov chain Monte Carlo. Interface Focus 1, 807–820. ( 10.1098/rsfs.2011.0047) [DOI] [PMC free article] [PubMed] [Google Scholar]
- 17. Wilkinson DJ. 2020. Stochastic modelling for systems biology, 3rd edn. Philadelphia, PA: Chapman & Hall/CRC. (Computational Biology Series). [Google Scholar]
- 18. Sherlock C, Golightly A, Gillespie CS. 2014. Bayesian inference for hybrid discrete-continuous stochastic kinetic models. Inverse Probl. 30, 114005. ( 10.1088/0266-5611/30/11/114005) [DOI] [Google Scholar]
- 19. Molyneux GW, Abate A. 2020. ABC(SMC)2: simultaneous inference and model checking of chemical reaction networks. In Computational methods in systems biology (eds Abate A, Petrov T, Wolf V), p. 255. Cham, Switzerland: Springer. ( 10.1007/978-3-030-60327-4_14) [DOI] [Google Scholar]
- 20. Gillespie DT. 2001. Approximate accelerated stochastic simulation of chemically reacting systems. J. Chem. Phys. 115, 1716–1733. ( 10.1063/1.1378322) [DOI] [Google Scholar]
- 21. Auger A, Chatelain P, Koumoutsakos P. 2006. R-leaping: accelerating the stochastic simulation algorithm by reaction leaps. J. Chem. Phys. 125, 084103. ( 10.1063/1.2218339) [DOI] [PubMed] [Google Scholar]
- 22. Tian T, Burrage K. 2004. Binomial leap methods for simulating stochastic chemical kinetics. J. Chem. Phys. 121, 10356–10364. ( 10.1063/1.1810475) [DOI] [PubMed] [Google Scholar]
- 23. Burrage K, Tian T. 2004. Poisson Runge-Kutta methods for chemical reaction systems. In Advances in scientific computing and applications (eds Lu Y, Sun W, Tang T), pp. 82–96. Beijing, China: Science Press. [Google Scholar]
- 24. Yates CA, Burrage K. 2011. Look before you leap: a confidence-based method for selecting species criticality while avoiding negative populations in τ-leaping. J. Chem. Phys. 134, 084109. ( 10.1063/1.3554385) [DOI] [PubMed] [Google Scholar]
- 25. Gillespie DT. 2000. The chemical Langevin equation. J. Chem. Phys. 113, 297–306. ( 10.1063/1.481811) [DOI] [Google Scholar]
- 26. Hepp B, Gupta A, Khammash M. 2015. Adaptive hybrid simulations for multiscale stochastic reaction networks. J. Chem. Phys. 142, 034118. ( 10.1063/1.4905196) [DOI] [PubMed] [Google Scholar]
- 27. Safta C, Sargsyan K, Debusschere B, Najm HN. 2015. Hybrid discrete/continuum algorithms for stochastic reaction networks. J. Comput. Phys. 281, 177–198. ( 10.1016/j.jcp.2014.10.026) [DOI] [Google Scholar]
- 28. Winkelmann S, Schütte C. 2017. Hybrid models for chemical reaction networks: multiscale theory and application to gene regulatory systems. J. Chem. Phys. 147, 114115. ( 10.1063/1.4986560) [DOI] [PubMed] [Google Scholar]
- 29. Haseltine EL, Rawlings JB. 2002. Approximate simulation of coupled fast and slow reactions for stochastic chemical kinetics. J. Chem. Phys. 117, 6959–6969. ( 10.1063/1.1505860) [DOI] [Google Scholar]
- 30. Crudu A, Debussche A, Radulescu O. 2009. Hybrid stochastic simplifications for multiscale gene networks. BMC Syst. Biol. 3, 89. ( 10.1186/1752-0509-3-89) [DOI] [PMC free article] [PubMed] [Google Scholar]
- 31. Duncan A, Erban R, Zygalakis KC. 2016. Hybrid framework for the simulation of stochastic chemical kinetics. J. Comput. Phys. 326, 398–419. ( 10.1016/j.jcp.2016.08.034) [DOI] [Google Scholar]
- 32. Gillespie DT. 1992. A rigorous derivation of the chemical master equation. Physica A Stat. Mech. Appl. 188, 404–425. ( 10.1016/0378-4371(92)90283-V) [DOI] [Google Scholar]
- 33. Anderson DF, Kurtz TG. 2011. Continuous time Markov chain models for chemical reaction networks. In Design and analysis of biomolecular circuits (eds Koeppl H, Setti G, di Bernardo M, Densmore D), pp. 3–42. New York, NY: Springer New York. ( 10.1007/978-1-4419-6766-4_1) [DOI] [Google Scholar]
- 34. Cao Y, Gillespie DT, Petzold LR. 2006. Efficient step size selection for the tau-leaping simulation method. J. Chem. Phys. 124, 044109. ( 10.1063/1.2159468) [DOI] [PubMed] [Google Scholar]
- 35. Moraes A, Tempone R, Vilanova P. 2014. Hybrid Chernoff tau-leap. Multiscale Model. Simul. 12, 581–615. ( 10.1137/130925657) [DOI] [Google Scholar]
- 36. Anderson DF, Koyama M. 2012. Weak error analysis of numerical methods for stochastic models of population processes. Multiscale Model. Simul. 10, 1493–1524. ( 10.1137/110849699) [DOI] [Google Scholar]
- 37. Cao Y, Gillespie DT, Petzold LR. 2005. Avoiding negative populations in explicit Poisson tau-leaping. J. Chem. Phys. 123, 054104. ( 10.1063/1.1992473) [DOI] [PubMed] [Google Scholar]
- 38. Andrieu C, Doucet A, Holenstein R. 2009. Particle Markov chain Monte Carlo for efficient numerical simulation. In Monte Carlo and quasi-Monte Carlo methods 2008 (eds L’ Ecuyer P, Owen A), pp. 45–60. Berlin, Germany: Springer. ( 10.1007/978-3-642-04107-5_3) [DOI] [Google Scholar]
- 39. Andrieu C, Doucet A, Holenstein R. 2010. Particle Markov chain Monte Carlo methods. J. R. Stat. Soc. Series B Stat. Methodol. 72, 269–342. ( 10.1111/j.1467-9868.2009.00736.x) [DOI] [Google Scholar]
- 40. Andrieu C, Roberts GO. 2009. The pseudo-marginal approach for efficient Monte Carlo computations. Ann. Statist. 37, 697. ( 10.1214/07-AOS574) [DOI] [Google Scholar]
- 41. Gordon NJ, Salmond DJ, Smith AFM. 1993. Novel approach to nonlinear/non-Gaussian Bayesian state estimation. IEE Proc. F 140, 107. ( 10.1049/ip-f-2.1993.0015) [DOI] [Google Scholar]
- 42. Doucet A, Godsill S, Andrieu C. 2000. On sequential Monte Carlo sampling methods for Bayesian filtering. Stat. Comput. 10, 197–208. ( 10.1023/A:1008935410038) [DOI] [Google Scholar]
- 43. Sherlock C, Thiery AH, Roberts GO, Rosenthal JS. 2015. On the efficiency of pseudo-marginal random walk metropolis algorithms. Ann. Statist. 43. ( 10.1214/14-AOS1278) [DOI] [Google Scholar]
- 44. Pitt MK, dos Silva RS, Giordani P, Kohn R. 2012. On some properties of Markov chain Monte Carlo simulation methods based on the particle filter. J. Econ. 171, 134–151. ( 10.1016/j.jeconom.2012.06.004) [DOI] [Google Scholar]
- 45. Abdulle A, Gander L, Rosilho de Souza G. 2023. Optimal explicit stabilized postprocessed τ-leap method for the simulation of chemical kinetics. J. Comput. Phys. 493, 112482. ( 10.1016/j.jcp.2023.112482) [DOI] [Google Scholar]
- 46. Golightly A, Sherlock C. 2019. Efficient sampling of conditioned Markov jump processes. Stat. Comput. 29, 1149–1163. ( 10.1007/s11222-019-09861-5) [DOI] [Google Scholar]
- 47. Altıntan D, Alt B, Koeppl H. 2023. Bayesian inference for jump-diffusion approximations of biochemical reaction networks. arXiv. ( 10.48550/arXiv.2304.06592) [DOI] [Google Scholar]
- 48. Thomas TT. 2024. hybrid-tau-schemePub. https://github.com/trigotri/hybrid-tau-scheme
- 49. Thomas TT. 2024. trigotri/hybrid-tau-scheme: article support code (v1.0.0). Zenodo. ( 10.5281/zenodo.13318872) [DOI]
Associated Data
This section collects any data citations, data availability statements, or supplementary materials included in this article.
Data Availability Statement
Data and relevant code for this research work are stored in GitHub [48] and have been archived within the Zenodo repository [49].






