Abstract
Parametric sensitivity of biochemical networks is an indispensable tool for studying system robustness properties, estimating network parameters, and identifying targets for drug therapy. For discrete stochastic representations of biochemical networks where Monte Carlo methods are commonly used, sensitivity analysis can be particularly challenging, as accurate finite difference computations of sensitivity require a large number of simulations for both nominal and perturbed values of the parameters. In this paper we introduce the common random number (CRN) method in conjunction with Gillespie’s stochastic simulation algorithm, which exploits positive correlations obtained by using CRNs for nominal and perturbed parameters. We also propose a new method called the common reaction path (CRP) method, which uses CRNs together with the random time change representation of discrete state Markov processes due to Kurtz to estimate the sensitivity via a finite difference approximation applied to coupled reaction paths that emerge naturally in this representation. While both methods reduce the variance of the estimator significantly compared to independent random number finite difference implementations, numerical evidence suggests that the CRP method achieves a greater variance reduction. We also provide some theoretical basis for the superior performance of CRP. The improved accuracy of these methods allows for much more efficient sensitivity estimation. In two example systems reported in this work, speedup factors greater than 300 and 10 000 are demonstrated.
INTRODUCTION
Stochastic models of chemical reaction networks have gained significant attention recently due in large part to the increasing appreciation of the important role that stochastic effects and intrinsic noise have on biological networks.1, 2 These networks involve some molecular species, which are present only in small copy numbers so that the discrete and stochastic nature of the system cannot be neglected. In fact in the presence of nonlinearities, the continuous deterministic model described by reaction rate equations may not even capture the average behavior of these systems correctly.
Chemical reaction models typically depend on a set of kinetic parameters whose values are often unknown or fluctuate due to an uncertain environment, such as is the case for gene regulatory networks. Even small changes to the parameters may significantly alter the system output, and thus it is critical to characterize such effects. Parametric sensitivity analysis studies the change in system outputs to variations in kinetic parameters and is an indispensable analysis technique in the study of kinetic models. It is instrumental in deducing system properties, such as robustness in an uncertain environment. In large networks, sensitivity analysis can pinpoint critical or rate limiting pathways and aid in reduced order modeling, or in the biological context, guide drug targeting.
Sensitivity analysis may focus on the effects of finite or infinitesimal perturbations of certain parameters. In deterministic chemical kinetics the infinitesimal sensitivities are computed easily via the integration of the linearization of the reaction rate equations. If one is interested in effects of larger perturbations for which linear approximation is not adequate, one typically recomputes the solution to the reaction rate equations for the perturbed parameter values. In the stochastic setting the simplest and most common method for finite perturbations is via Monte Carlo simulations to compute a finite difference. The approach here is to characterize the sensitivity to a finite perturbation h of a parameter c about a nominal value c=c0 via a finite difference, such as (E[f(X(T,c0+h))]−E[f(X(T,c0))])∕h, of the expected values. Here f is a function of interest of the final state X(T) of the chemical system. One uses Monte Carlo simulations to estimate the expected values via sample means. The simplest approach would be to use two independent streams of random numbers to generate samples of X(T,c0) andX(T,c0+h), the so called independent random number (IRN) approach. A recent study used this approach in combination with the Fisher information matrix to generate several different sensitivity measures.3 However the use of IRNs may result in a statistical estimator with large variance, thereby increasing the computational effort as large samples may be required. In this paper we show how the approach of using the same stream of common random numbers (CRNs) to generate samples of X(T,c0) and X(T,c0+h) can typically result in an estimator with low variance and thus requires far fewer samples and hence yields increased computational efficiency. We also propose a new method of computing sensitivities called the common reaction path (CRP) method that uses CRNs in the particular setting of random time change (RTC) representation of Markov processes.4 We show that both the CRN and CRP methods can dramatically reduce computation time over IRN, with CRP performing better than CRN. In addition to numerical evidence, we also provide a theoretical explanation (but not a rigorous proof) as to why CRP is expected to perform better.
The finite difference (E[f(X(T,c0+h))]−E[f(X(T,c0))])∕h characterizes sensitivity to the perturbation h. When h is sufficiently small, one may treat the finite difference estimate as an approximation to the infinitesimal sensitivity given by the partial derivative (∂∕∂h)E[f(X(T,c0+h))] at h=0. Instead of using the finite difference, one may directly compute the infinitesimal sensitivity. One such approach is based on the Girsanov measure transformation,5 and another employs polynomial chaos methods.6
The contents of the paper are organized as follows. Section 2 provides a brief introduction to stochastic chemical kinetics. The RTC representation of discrete stochastic chemical systems is presented in Sec. 3, which is used to formulate a variant of the stochastic simulation algorithm (SSA) that handles computations corresponding to individual reaction paths in Sec. 3B. Section 4 discusses Monte Carlo finite difference schemes using IRNs and CRNs in the context of accuracy of estimates. Section 4B introduces the CRP algorithm, which exploits the RTC representation in conjunction with CRNs to achieve higher efficiencies. All three methods are compared via numerical examples in Sec. 5.
STOCHASTIC CHEMICAL KINETICS
Let us consider a chemical reaction system consisting of n chemical species whose evolution in continuous time is discrete and stochastic. Under the well stirred assumption7 the random state of the system at time t is characterized by the n dimensional vector X(t,ω) whose ith entry Xi(t,ω) is a non-negative integer corresponding to the number of molecules of the ith species at time t. Here ω captures the randomness and refers to an element of the sample space Ω consisting of sample trajectories. In what follows we sometimes drop ω for simplicity of presentation. The system consists of M reaction channels whose firings transition the system from one state to another, changing the population by a discrete amount given by the stoichiometric vectors νj, j=1,…,M. Each reaction channel has associated with it a propensity functionaj(X(t),c), j=1,…,M, which is typically a function of the system state and one or more kinetic parameters contained in the vector c. The propensity function aj is defined by the prescription that conditioned on being in state X(t) at time t, aj(X(t),c)δt gives the probability for the jth reaction to occur in the infinitesimally small time interval (t,t+δt]. The functional form for the propensity functions is usually combinatorial (and hence polynomial) in nature and is obtained from physical reasoning.7 Alternative forms using rational functions are also found in literature.8
It follows that this system is a continuous time Markov process whose probability mass function evolves in time according to the chemical master equation (CME).7 The analytical solution of the CME is usually intractable, but generating exact sample trajectories of the system is easy using a SSA such as the direct and first reaction methods presented by Gillespie7 or the next reaction method presented by Gibson and Bruck.9
RANDOM TIME CHANGE REPRESENTATION
In this section we describe the RTC description of a stochastic chemical process. In general such a description is possible for any Markov process whose state space is an integer lattice.4 We provide a physical interpretation that will help visualize the RTC representation from Ref. 4 in the context of chemical reactions.
In the RTC description, one may envisage each reaction channel to be carrying its own internal clock, which runs at a rate that equals its propensity function. In other words the internal timesSj(t,ω) for the reaction channels j=1,…,M are defined by
| (1) |
It should be noted that although we refer to Sj(t,ω) as the internal times in order to aid the interpretation, the Sj are in fact dimensionless quantities. The key point of Ref. 4 is that viewed from their respective internal times the reaction channels will fire as though they are independent unit rate Poissons. This is made mathematically precise by the following equation:
| (2) |
where Y1,…,YM are independent unit rate Poisson processes corresponding to the reaction channels. The advantage of this representation is that the “driving noise” processes are described independently of the state and the particular characteristics of the system, namely, νj and aj. The equation above holds pathwise, i.e., for each realization ω. For a given realization Yj(.,ω), j=1,…,M of the driving noise processes the computation of the state process X is a deterministic procedure specified according to the above equation. Thus the total number of times the reaction channel j fires between times 0 and t is given by evaluating the unit rate Poisson process Yj at the random internal time Sj(t). We shall describe this computation in more detail later.
Since we are interested in the sensitivity with respect to parameters we include the dependence on parameters c and write the equation as follows:
| (3) |
where
| (4) |
Note that the νj are independent of parameters while the propensities aj are dependent on the parameters: aj=aj(x,c). It is also important to note that the noise processes Yj are Poisson with unit rate in their respective internal time frames, and do not depend on c explicitly. We shall mainly be interested in situations where the initial condition is independent of c and deterministic: X(0,ω,c)=x0. Equation 3 enables us to couple two processes X(.,.,c1) and X(.,.,c2) corresponding to different parameter values. In other words they are represented as functions of the same sample space and this allows for direct comparison. For instance the question “how does a given sample trajectory vary when the parameter is perturbed?” is mathematically well posed.
Pathwise computations based on random time change representation
Given a realization Y1(.,ω),…,YM(.,ω) of the noise we wish to solve for X(.,ω,c) from Eq. 3. This may be done as follows. Let us denote the random internal jump times of the Poisson process Yj by , where j=1,…,M and i=1,2,…. Thus
for each j. For a value t of physical time if , then the ith firing of the jth reaction channel will occur at that time t. Let us denote this physical time at which the ith firing of the jth reaction channel occurs by . Thus by definition . Let us also introduce Ti(ω,c) and Ji(ω,c) for i=1,2,… as the random times at which the ith reaction event of any type occurs and the random type of this reaction channel, respectively. Thus Ji is a number in {1,2,…,M}. It is clear that the collection (Ti,Ji) for i=1,2,… carries the same information as the collection for i=1,2,… and j=1,…,M. It is also clear that either one of the above will uniquely determine the trajectory X(.,ω,c). Thus we focus on the computation of Ti and Ji.
An important point to note is that Sj(t,ω,c) is piecewise linear in t. In fact for Ti≤t<Ti+1,
This allows for easy computation.
To further facilitate the computation we define for j=1,…,M by
In words, is the internal time of the next firing of reaction channel j at physical time t. It is convenient to keep track of .
Assuming T1,…,Ti and J1,…,Ji are known for some i we compute Ti+1 and Ji+1 as follows. First note that knowing this information we also know for j=1,…,M and X(Ti). It follows that
| (5) |
To see this, first observe that when the physical time equals Ti, the internal times of the processes are given by Sj(Ti). Second during t∊[Ti,Ti+1) the internal times Sj(t) are increasing at the constant respective rates aj(X(Ti)). Third the next internal times of firing of the reactions are given by . Thus the elapsed physical time Ti+1−Ti before the next firing of a reaction is the minimum of taken over j. Furthermore Ji+1 is the index of the minimum. Thus . It must be remarked that the minimum is unique except for a set of ω with probability zero. This is because given Ti, the are continuously jointly distributed.
The above reasoning also gives us the first jump time T1. It is given by
| (6) |
and J1(ω,c) is the index of the minimum. Thus. The pathwise computations described above are illustrated visually for a simple example in Fig. 1.
Figure 1.
RTC representation of a birth-death example. Panel A shows the two reactions describing the birth-death of species S. The propensity for reaction 1 is a1(X)=c1, which is independent of the population count X. Panels B1–B3 describe the RTC representation for the birth-death example. For this example, three time clocks can be envisioned. One maintains global time for an observer watching the reaction system. Two other clocks maintain internal times S1 and S2 for reactions 1 and 2, respectively. The rate of each internal clock is given by the propensity of the corresponding reaction: ai(X(s)), i=1,2. The integral of each internal clock rate gives that respective clock’s time Si (plotted in panels B1 and B2 against global time, t). Randomness is generated through two independent unit rate Poisson processes, Y1 and Y2, one for each reaction. The jump times for Y1 and Y2 can be generated ahead of time, and these in turn determine the path of the entire process as follows: At time t=0 the population count starts at X(0) and remains there until the firing of the next reaction at time T1 (B3). As global time flows past t=0, the internal times also flow each according to their respective rate: ai(X). In between reactions, aj(X) will be constant and hence, its integral, the clock time Si, will be piecewise linear. A reaction fires when its internal time coincides with the jump time for its corresponding Poisson process. These are shown by the red, horizontal arrows emanating from the jump times . In this example, this happens first for reaction 1 at global time T1, when . When a reaction fires, the population X changes according to the reaction stoichiometry. This change in X will subsequently affect the rates of reaction clocks whose propensity depends on X (reaction 2 in this example). The process proceeds until a final time is reached. The advantage of this random time representation is that the driving randomness is decoupled from the state.
The random time change algorithm for simulation of stochastic chemical systems
The above methods of pathwise computation allow us to write an alternative algorithm for the exact simulation of stochastic chemical systems, which we term as the RTC simulation algorithm. The algorithm uses variables Sj, and indices kj for j=1,…,M. Also we assume that M streams of unit exponential random numbers (for j=1,…,M andi=1,2,…) are available. These random numbers represent the (internal) times between successive firings of the unit rate Poisson processes Yj and are related to the internal firing times by . Note that if we can generate M independent streams of uniform random numbers in [0,1), then we can easily convert these to M independent streams of unit rate exponentials.
In what follows, kj is the index into the jth stream of exponential numbers, Sj is the current internal time of jth reaction channel, and is the internal time at which the next firing of reaction channel j occurs. Note that explicit dependence on parameters c is omitted to simplify notation.
RTC simulation algorithm.
| (1) Initialization Set i=0, T0=0, X(T0)=x0; Sj=0, kj=1 and for j=1,…,M |
| General step and Sj are known. |
| (2) Exit if terminal condition is reached, otherwise continue. |
| (3) Calculate propensity functions aj(X(Ti)) for j=1,…,M. |
| (4) Compute . |
| Let j* be the index of the minimum in above equation. |
| (5) Set X(Ti+1)=X(Ti)+νj*. |
| (6) For j=1,…,M set Sj←Sj+aj(X(Ti))(Ti+1−Ti). |
| (7) Increment kj*. |
| (8) Set . |
| (9) Increment i and return to step 1. |
As there are several widely used exact SSAs available, it is worthwhile discussing here where the RTC simulation algorithm fits into the present landscape. Gibson and Bruck’s next reaction method,9 Anderson’s modified next reaction method,10 and our proposed RTC method are all stochastically equivalent to Gillespie’s direct method as well as first reaction method7 in that they are all exact simulation methods. The main differences are algorithmic and are outlined next.
Gillespie’s direct method differs from the rest of the methods mentioned in that it explicitly generates a uniform random number to determine which reaction channel fired, whereas all the other methods make this determination by taking the minimum of M different firing times. Gibson and Bruck’s next reaction method resembles Gillespie’s first reaction method in that it keeps in memory M IRNs at every step, one per each reaction channel. However, following the initialization step in which M random numbers are drawn to set the firing times of each reaction, the next reaction method only generates one random number at each iteration because the next firing times for all reactions besides the one that fired are reused. This feature is shared with the modified next reaction and RTC methods. Gillespie’s first reaction method differs from these three methods in that it discards the unused M−1 random numbers from the previous step and generates another M random numbers.
The difference between Anderson’s modified next reaction method and Gibson and Bruck’s next reaction method is algorithmically insignificant but conceptually significant. The first works with internal times (which naturally arise in the RTC representation) while the latter with physical time. The advantage of this conceptual framework also allowed Anderson10 to efficiently simulate systems with time dependent propensities.
While the RTC is most similar to the modified reaction method, it differs from it in a subtle but important way: RTC draws from M independent, parallel streams of random numbers (for j=1,…,M) corresponding to each reaction channel rather than drawing them from a single stream. This tweak to the algorithm makes a difference when doing sensitivity analysis. In particular, it ensures that keeping the same M parallel streams of random numbers is equivalent to keeping the same paths for the processes Yj. See Appendix A for an illustration.
The next reaction method as it originally appeared in Ref. 9 makes use of dependency graphs and priority queues. These increase efficiency compared to the direct method by updating only those propensities that change following a particular reaction firing and by using specific data structures to make update operations faster. While the modified next reaction method and our proposed RTC method do not employ these tools, they could easily be incorporated to improve efficiency.
MONTE CARLO BASED SENSITIVITY ANALYSIS OF STOCHASTIC CHEMICAL NETWORKS
Now we consider the problem of using Monte Carlo simulation to estimate the stochastic analog to the sensitivity coefficient of deterministic dynamical systems.11 Typically one is interested in the sensitivity of the expected value of a function f of the state X(T) at some final time T, E[f(X(T,c0))], to perturbations in a nominal parameter c0. We may characterize the sensitivity by the finite difference
where h is a variation in the parameter c0. As h approaches 0 this limits to the partial derivative
evaluated at h=0. It is useful to define the random variable Z whose expected value is what we seek to compute,
| (7) |
Since X is a stochastic process whose distribution cannot typically be obtained analytically, one can compute a sample of independent realizations of Z and estimate E(Z). Any exact SSA—the first reaction and direct methods,7 the next reaction method,9 the modified next reaction method,10 or the RTC simulation algorithm of Sec. 3B—is suitable to generate independent samples of f(X(T,c0)) and of f(X(T,c0+h)) to estimate E(Z). At first it would seem natural to generate the sample of f(X(T,c0+h)) to be independent of the sample of f(X(T,c0)). This approach is referred to as the IRN method. Here we describe the overall structure of such an algorithm.
Algorithm for sensitivity estimation using IRN.
| (1) For i=1 to Ntr, where Ntr is the number of trajectories to be simulated: |
| (2) Initialize random number generator with random seed. |
| (3) Let c=c0 and run any version of the SSA algorithm to compute: X(T,c0). All random numbers needed are generated bysuccessive calls to a random number generator. |
| (4) Let c=c0+h and use same version of SSA algorithm to compute X(T,c0+h). All random numbers needed are generated independent of the numbers used in step 2 by successive calls to a randomnumber generator. This can be accomplished by continuing to drawfrom the same stream without resetting the state, or by reinitializing the random number generator with a different random seed. |
| (5) Compute sensitivity for the ith trajectory: Zi=f(X(T,c0+h))−f(X(T,c0))∕h. |
| (6) End For loop in i. |
| (7) Compute sample mean and sample standard deviation of{Zi|i=1,…,Ntr}. |
Although this procedure is straightforward and easy to implement, one must simulate the system a great many times Ntr in order to generate accurate estimates using IRN. To see this, let us briefly recall the problem of estimating E(Z) from an independent sample of random variables Z1,…,ZNtr, all having the same distribution as Z.
The standard estimator of E(Z) is the sample mean. The accuracy of the estimator may be measured in terms of its standard deviation. The standard deviation of is equal to
where σZ is the standard deviation of Z. The relative standard error (RSE) in the estimation [assuming E(Z)≠0] is
In the sensitivity estimation problem at hand, Z is the sensitivity from Eq. 7. For notational simplicity setY1=f(X(T,c0)) and Y2=f(X(T,c0+h)). HenceZ=(Y2−Y1)∕h. Thus its standard deviation is
| (8) |
and the RSE is
| (9) |
Thus the RSE in general depends on cov(Y1,Y2), h, and Ntr. In the IRN method, X(T,c0) and X(T,c0+h) are independent random variables and hence cov(Y1,Y2)=0.
Increasing h reduces RSE; however if one aims to estimate the infinitesimal sensitivity via the finite difference, then a large h leads to a bias. Thus if the goal is to estimate the infinitesimal sensitivity, the proper selection of h in the finite difference scheme equation 7 involves a tradeoff between its variance and its bias: h must be small to reduce the bias, yet large enough to keep the estimator variance in check. An appropriately chosen sequence of diminishing h values can yield optimal convergence rates (to the infinitesimal sensitivity).12, 13 However this investigation is not the focus of this paper.
Given that h is determined by other considerations, the only option left to reduce the RSE using the IRN algorithm is to increase Ntr, i.e., to generate more independent samples of f(X(T,c0)) and f(X(T,c0+h)). In Sec. 4A and 4B, we provide ways to decrease RSE by increasing cov(Y1,Y2).
It is worth noting here that other finite difference schemes, such as the central difference approximation, could be used in place of Eq. 7. The approach presented below is also applicable to these estimators, but we only consider the scheme in Eq. 7 throughout for the sake of simplicity.
Using common random numbers to reduce the sensitivity estimator variance
The easiest and most common method to achieve variance reduction is to introduce dependence among the random variables being estimated by using CRNs in simulations.14
The concept behind CRN is simple. By using CRNs for the simulation of both X(T,c0) and X(T,c0+h), one introduces nonzero covariance between the two processes. Positive covariance is not guaranteed in general, but when h approaches zero, under some mild assumptions, var(Y1−Y2) approaches zero as well (see Appendix C), which is equivalent to cov(Y1,Y2) approaching var(Y1).
Here we present a straightforward implementation of CRN as applied to a SSA such as Gillespie’s direct method.7 When one computes the sensitivity with the direct method SSA, implementation of the method of CRN is achieved by using the same stream of uniform random numbers that generate r1 and r2 at each step, i.e., the random variables used to determine the time increment until the next reaction firing and the random type of reaction channel which fires, respectively. The practical implementation of CRN can be achieved multiple ways; here we reseed the random number generator prior to computing X(T,c0+h) with the same initial seed used to simulate X(T,c0) at each step.
To present the algorithm for sensitivity estimation employing CRN more generally, we define the functions rand( ) to return a uniform random number in the interval [0,1) and seed(w) to initialize rand( ) with seed w. The function time(NULL) returns the current system time for the purpose of generating a random seed.
Algorithm for sensitivity estimation using CRN.
| (1) For i=1 to Ntr |
| (2) Generate random seed: w=time(NULL). |
| (3) Seed the random number generator: seed(w). |
| (4) Let c=c0 and run any version of the SSA algorithm to compute X(T,c0). Here all random numbers needed are generated by successive calls to rand( ). |
| (5) Reseed random number generator using same w as before: seed(w). |
| (6) Let c=c0+h and run the same version of the SSA algorithm to compute X(T,c+h). All random numbers needed are again generated by successive calls to rand( ). |
| (7) Compute sensitivity for ith trajectory:Zi=f(X(T,c0+h))−f(X(T,c0))∕h. |
| (8) End For loop in i. |
| (9) Compute sample mean and sample standard deviation of{Zi|i=1,…,Ntr}. |
The common reaction path method for sensitivity estimation
It is apparent from the above discussion that the sensitivity estimates obtained with any of the popular SSA variants (the first reaction and direct methods,7 the next reaction method,9 and the modified next reaction method10) will be improved by using CRN rather than IRN. In this section we present a particular form of CRN method, namely, the use of CRNs in the context of the RTC simulation algorithm presented in Sec. 3B, which we refer to as the CRP algorithm. The rationale for this terminology is as follows. The sequence of samples taken from the jth stream of random numbers during simulation, which determine the internal jump times of that reaction channel, can be interpreted as the reaction path of the jth reaction channel. Collectively, the set of M reaction paths uniquely determines the evolution of the state, as detailed previously in Sec. 3A.
In the following we assume the existence of M independent streams of unit rate exponential random numbers. Suppose the jth stream is accessed by E=rande(j), and jth stream is seeded by seed(j,w). Let Ntr be the number of trajectories that will be generated. The algorithm described here randomly seeds each stream before each new trajectory is generated using the current system clock as the seed. This is to ensure independence of the streams. In practice other implementations may be used so long as care is taken to preserve independence of the streams.
The CRP method, like the CRN method, also requires a viable way of sharing the reaction paths between simulations of the processes with parameters c0 and c0+h. One way to implement this is to generate a trajectory of X(c0) and to store the random numbers in an M dimensional array, making sure that they are ordered exactly as they were generated during simulation and into the row corresponding to their reaction channel. Then a trajectory of X(c0+h) would be generated using the numbers from the array in the identical order. However from a practical standpoint, this approach has several disadvantages, including possible storage bottlenecks when used for simulations with many reaction channels and∕or jump events. A more practical approach which we take here is to seed each stream and then store the seed prior to generating a trajectory for X(c0), and then reseed each stream with the identical seeds before generatingX(c0+h).
CRP sensitivity analysis algorithm.
| (1) For i=1 to Ntr. |
| (2) Seed the streams: For j=1,…,M, w(j)=time(NULL), seed(j,w(j)). |
| (3) Let c=c0 and run RTC simulation algorithm to compute X(T,c0). Here the for j=1,…,M are generated by successive calls to rande(j). |
| (4) Reseed the streams with same w(j) as before: seed(j,w(j))for j=1,…,M. |
| (5) Let c=c0+h and run algorithm RTC to compute X(T,c0+h). Here the for j=1,…,M are generated by successive calls to rande(j). |
| (6) Compute sensitivity for ith trajectory:Zi=f(X(T,c0+h))−f(X(T,c0))∕h. |
| (7) End For loop in i. |
| (8) Compute sample mean and sample standard deviation of{Zi|i=1,…,Ntr}. |
It is clear how to run this algorithm for any general number of p parameter values c0,c0+h1,…,c0+hp instead of p=1 as described above. First, it must be noted that CRP is a special case of CRN. Second it is important to point out the distinction between the CRP algorithm and the more general CRN algorithm. If CRN is used with Gillespie’s direct SSA, although the same set of random numbers is used to generate X(t,c0) and X(t,c0+h), the internal jump times for each reaction channel will likely be different. When CRN is used with either the next reaction method or the modified next reaction method, at each step in the simulation the random number drawn from the single common stream may set the internal time for a different reaction than that in the unperturbed simulation (see Appendix A for an illustration). The resulting deviations in the internal jump times for each channel will likely limit the positive correlation at each replicate. In contrast, by sharing M independent streams (one per reaction channel) in the CRP algorithm, one ensures that each of the reaction paths will be identical between the perturbed and unperturbed processes. This we believe more tightly couples the processes thus, increasing the covariance compared to using CRN with the other simulation algorithms.
Our numerical examples demonstrate that CRP tends to achieve a lower variance than the other CRN estimators discussed. This is further borne out by a continuity property enjoyed by CRP estimators (and not shared by the other CRN estimators), which more tightly couples the nominal and perturbed trajectories to achieve the observed reduction in variance. The plot of estimator variances as a function of perturbation size h for three examples shown in Fig. 5 justifies our intuition that the CRP estimator has lower variance. Furthermore, the trajectories perturb in a more continuous manner with respect to the parameters c in the CRP method than in the CRN method implemented with any existing SSA variants. While the states at any fixed time are integers and hence cannot be expected to change continuously with respect to parameters c (for any fixed sequence of random numbers), the times Tn of reaction events typically change continuously in the CRP method while only piecewise continuously in a general CRN method. In Appendix B we explore this continuity property of CRP and CRN in conjunction with Gillespie’s direct method.
Figure 5.
Variance of the difference estimator, X(T,c0+h)−X(t,c0), for decreasing perturbation size h shown for the (a) birth-death process, (b) genetic toggle switch, and (c) chemical oscillator numerical examples. The data points are the variances of each method estimated from many independent samples, the dashed lines indicate the 68% (one standard deviation) confidence intervals of the estimates, and the solid lines are least-squares linear regressions for the estimates. Although the variance at a fixed h depends upon the problem, the variance of the CRP and CRN estimators decrease linearly as h→0 for each numerical example considered. For all examples greater variance reduction was observed in the CRP estimator than CRN, and the (problem dependent) ratio of variances is constant for small h.
In Appendix C we show under some modest assumptions that the variance of the CRP and CRN estimators approaches 0 as the perturbation h approaches 0. In numerical examples we observe that the variances behave as O(h) for small h (see Fig. 5). In contrast the variance of the IRN estimator does not approach 0, but rather a nonzero value as h→0. This observation leads to the following conclusions. The ratio of the variances of the CRP and CRN estimators is constant for small h while the ratio of CRP (or CRN) and IRN estimator variances depends on h. As h gets smaller, both CRP and CRN become increasingly better than IRN and thus the advantage can be made arbitrarily large although all methods become increasingly computationally expensive. Moreover, the advantage (or disadvantage) of CRP over CRN remains constant for all sufficiently small h. Our numerical examples suggest that both CRP and CRN (in conjunction with Gillespie’s direct method) perform much better than IRN for h small enough to estimate infinitesimal sensitivity. Also we observe in Sec. 5 that CRP performs better than CRN in each example. Although the advantage depends on the specific problem, in all examples the advantage is substantial, as even a factor as small as two may translate to a savings of hours or even days of computation time in larger problems.
NUMERICAL EXAMPLES
We provide three examples in this section to compare the performance of IRN, CRN with Gillespie’s direct method, and CRP.
Birth-death process
To illustrate how the CRN and CRP methods are used in the sensitivity analysis of discrete chemical systems, we first consider the simple example of a one species birth-death process,
| (10) |
in which a chemical species S, whose population is denoted by X, is created at constant rate c1 and decays proportionally to its current population at rate c2X. The solution for the evolution of the state X(t) is known exactly for this example.15 For deterministic initial condition X(t0,ω,c)=x0, the distribution at time t is the sum of independent Binomial and Poisson random variables with distributions B(N,p) and P(λ), respectively, where N=x0, p=e−c2t, and λ=(c1∕c2)(1−e−c2t). The expected value and variance of X(t,c) are thus computed exactly as follows:
| (11) |
| (12) |
For this example, consider the initial condition x0=0 and parameters c1=2.5, c2=0.1.
The proposed CRP algorithm was used to estimate the sensitivities of the population of X at time T=115 to changes in the death rate, c2. The sensitivity also was computed via Gillespie’s direct algorithm7 using both IRNs and CRNs. Figures 234 show comparisons between the sensitivity estimates obtained by each method.
Figure 2.
Estimated sensitivities of E(X(T,c)) at final time T=115 to changes in parameter c2 for the birth-death process computed by (a) CRP and IRN methods and (b) IRN and CRN methods. Estimates were computed from independent samples of various sizes with fixed h=5×10−4 for each of the methods. (a) The CRP sensitivity estimator exhibits significantly lower variance than those in the IRN. The inset rescales the axes to show detail of the CRP estimates.
Figure 3.
(a) Estimated sensitivity coefficient for the birth-death process with respect to changes in the death rate c2 computed by IRN and CRP methods. Insert: rescaled axes detail the low variance estimates found using the CRP method. (b) Sensitivity estimates computed by the CRN and CRP methods. Estimates, plotted as markers, were computed using Ntr=105 trajectories simulated by the algorithm indicated. The black dashed line corresponds to the finite difference approximation computed from the exact solution in Eq. 12. Shaded regions indicate the 95% confidence intervals for the estimates.
Figure 4.
(a) RSE and (b) computational speed up for birth-death process sensitivity computations. (a) The RSE, computed from 1.25×105 samples, is substantially lower for both the CRN and CRP estimators than the IRN estimator for all h. (b) With h fixed and the IRN computation time set as the reference value, the CRP method speeds up the sensitivity computation by a factor of 370, which is more than one order of magnitude higher than the speedup achieved by using the CRN method.
Figure 2 shows results of the three sensitivity estimators computed by each method using different numbers of independent samples for fixed h=5×10−4. The CRP estimator converges to the exact sensitivity coefficient (−248.7) much faster and with much lower variance than the IRN estimator [Fig. 2a]. CRP also outperforms estimates computed using CRN, shown in Fig. 2b.
In Fig. 3a, Ntr=105 samples were used by the CRP and IRN methods to estimate the sensitivity coefficient from different sized perturbations h to c2. While the exact sensitivity coefficient lies within the confidence intervals for both estimators, the CRP estimator demonstrates far lower variance for small h compared to the IRN method. As seen in Fig. 3b the CRP estimator is also more accurate than the CRN estimator, achieving tighter confidence intervals especially for smaller h. When larger magnitude h was used, however, the sample paths of X(c) and X(c+h) lose their strong positive correlation and the advantage is decreased. These results are seen more clearly by examining the RSE and the speedup factor of each method, shown in Figs. 4a, 4b.
RSE computed from Eq. 9 compares the standard deviation of the estimator relative to the process mean. As demonstrated in Fig. 4a, the RSE of the estimates for each method is low for large h and increases as the magnitude of h diminishes. RSE first exceeds one and begins a steep ascent at approximately h=10−3 for the IRN estimator and near h=7×10−5 for the CRN estimator. In comparison RSE of the CRP estimator stays below one for h values as low as 5×10−6.
The practical benefit of computing sensitivity with CRN or CRP instead of IRN is more clearly seen by the computational speedup of Fig. 4b. The actual computation times depend on the architecture and implementation, therefore we define the speedup factor for a method as the time required to compute the sensitivity within a desired accuracy using that method divided by the time required using IRN. Using this metric, the sensitivity estimates with the desired standard deviation are computed nearly 30-fold faster with CRN and more than 350-fold faster with CRP than with IRN.
Note that it is proven in Appendix C that for both CRN and CRP the estimator variance approaches 0 as h approaches 0. In fact the behavior is O(h) as verified numerically in Fig. 5a.
Table 1(a) lists the CPU time and number of unique uniform random numbers generated as two measures of the computational cost required of estimating the sensitivity coefficient using each method. The IRN and CRN methods take nearly the same amount of CPU time to compute the estimate from a given number of samples, while it takes ≈6% longer to generate the CRP estimate. The reduction in variance far exceeds the minimal increase in computational effort; however, the confidence interval for the CRP estimate from 104 samples (14.1) is only roughly 5% that of the IRN estimator (283.1) and 27% that of the CRN estimator (52.3).
Table 1.
Numerical statistics for the sensitivity analysis performed for (a) the birth-death example and (b) the genetic toggle switch example. The confidence intervals included with the estimate correspond to two standard deviations (approximately 95%). The “Random numbers” column gives the quantity of unique random numbers actually used during simulation for each method.
| Samples generated | Method | (a) Birth-death example | h=5×10−4 | (b) Toggle switch example | h=1×10−3 | ||
|---|---|---|---|---|---|---|---|
| Estimated sensitivity | Random numbers | CPU time (s) | Estimated sensitivity | Random numbers | CPU time (s) | ||
| ⋯ | Exact | −248.7 | ⋯ | ⋯ | 1.19 | ⋯ | ⋯ |
| 10 000 | IRN | −306.4±283.1 | 2.20×10+07 | 1.8 | 231.5±573.4 | 2.53×10+07 | 3.3 |
| CRN | −250.8±52.3 | 1.10×10+07 | 1.8 | −1.1±8.0 | 1.27×10+07 | 3.2 | |
| CRP | −251.0±14.1 | 5.52×10+06 | 1.9 | −1.3±4.6 | 6.34×10+06 | 3.7 | |
| 25 000 | IRN | −245.4±179.0 | 5.51×10+07 | 4.4 | 215.1±362.6 | 6.33×10+07 | 8.2 |
| CRN | −231.8±33.1 | 2.76×10+07 | 4.4 | −2.5±5.0 | 3.16×10+07 | 7.9 | |
| CRP | −247.0±8.9 | 1.38×10+07 | 4.7 | 0.5±2.9 | 1.59×10+07 | 9.2 | |
| 50 000 | IRN | −343.8±126.6 | 1.10×10+08 | 8.8 | 92.6±256.4 | 1.27×10+08 | 16.1 |
| CRN | −243.3±23.4 | 5.52×10+07 | 8.8 | −1.2±3.6 | 6.33×10+07 | 15.8 | |
| CRP | −248.0±6.3 | 2.76×10+07 | 9.3 | 0.6±2.1 | 3.18×10+07 | 18.5 | |
| 75 000 | IRN | −349.4±103.4 | 1.65×10+08 | 13.1 | 78.5±209.4 | 1.90×10+08 | 24.1 |
| CRN | −244.6±19.1 | 8.28×10+07 | 13.2 | −0.8±2.9 | 9.49×10+07 | 23.8 | |
| CRP | −247.5±5.2 | 4.14×10+07 | 13.9 | 1.0±1.7 | 4.77×10+07 | 27.9 | |
| 100 000 | IRN | −326.5±89.5 | 2.20×10+08 | 17.5 | 23.7±181.3 | 2.54×10+08 | 32.1 |
| CRN | −247.0±16.6 | 1.10×10+08 | 17.6 | −1.1±2.5 | 1.27×10+08 | 31.9 | |
| CRP | −248.7±4.5 | 5.52×10+07 | 18.6 | 0.9±1.5 | 6.37×10+07 | 37.4 | |
Additionally, because the CRN and CRP methods reuse random numbers between simulations, fewer unique random numbers must be generated. The CRN method uses half the amount of random numbers as IRN, while CRP uses only one-quarter of the number of random numbers. It should be noted that the CRN and CRP algorithms used to generate these results were programed with ease of implementation as the primary concern. Because only the seeds and states of the random number generator were reused between simulations, each CRN was actually generated twice. An alternative implementation that stores random numbers generated between sequential simulations may be able to exploit this property for modest improvements in computation time. However, this clearly will have no effect on the variance properties.
Genetic toggle switch
A more interesting example of a stochastic biochemical system is that of the genetic toggle switch.16 This system consists of two repressor-promoter gene pairs that interact to form a bistable switch for a given set of parameters, and is a prototype for mutually inhibitory genetic circuits exhibiting bistability. The synthesis of one gene product represses the production of the other, and the stochastic nature of the system enables the system to randomly switch between states for which one product is present in large quantities and the other is nearly completely absent. Bistable stochastic genetic switches are of particular relevance because they arise naturally in biology17 and have also have been constructed in synthetic biological networks.16 Here we consider a simplified stochastic version of the model presented in Ref. 16. The model describes two species, U and V, whose respective populations are described by the state vector,X(t,c)=[X1(t,c)X2(t,c)]′. The system transitions between states according to four reactions,
with the following propensity functions aj and stoichiometry vectors νj associated with each reaction channel j:
| (13) |
| (14) |
For this example, we analyze the system having the nominal set c=c0 of model parameters,
beginning at T=0 with initial conditions X1(0)=X2(0)=0.
The probability densities for the toggle switch example can be solved to an arbitrarily high degree of accuracy using the finite state projection (FSP) algorithm.18 The sensitivity of E(X1(t)) for t=10 with respect to perturbations in parameter α1 was computed using the IRN, CRN, and CRP methods. The results are presented in comparison with the exact distributions as computed by the FSP in Figs. 5b, 67 and Table 1(b). Figure 5b numerically verifies that the variances of the CRN and CRP estimators are of O(h) as h→0, indicating that these methods should achieve significant variance reduction for small enough h.
Figure 6.
Sensitivity of E(X1(T,c)) at T=10 with respect to changes in α1 for genetic toggle switch example computed by (a) the IRN and CRP methods and (b) the CRN and CRP methods. Estimates were computed from 105 samples simulated using the algorithm indicated. The exact sensitivity coefficient as computed from the distributions obtained by the FSP corresponds to the black dashed line. The CRN and CRP methods achieve much lower variance estimates than the IRN method for small h, with CRP having a slight advantage over the CRN estimator.
Figure 7.
Relative error and computational speedup for genetic toggle switch sensitivity computations. (a) The relative error (computed from 105 samples) is substantially lower for both the CRN and CRP estimators than the IRN estimator. (b) Using either the CRN or CRP methods will compute estimates of a given accuracy over 5000 times faster than using IRN, which is used as the basis for comparison. The CRP method is roughly twice as fast as the CRN method for this example, with a speedup factor of 14 000 over IRN.
Figure 6a shows that the CRP estimator outperformed the IRN method in computing the sensitivity coefficient by achieving significantly lower variance, especially at small h. The CRP estimator has slightly lower variance than the CRN estimates for all h [Fig. 6b]. Unlike the previous example, the discrepancy between the CRN and CRP methods is not as large. This is further illustrated in the plots for RSE and computational speedup, shown in Fig. 7. The RSE of CRP is roughly 60% that of CRN, and the speedup is over double compared to CRN. However the CRN and CRP methods calculate estimates of comparable accuracy over 5000- and 14 000-fold faster than the IRN, respectively, making them much more efficient than the IRN method. We note that the although the advantage in speedup using CRP over CRN is much smaller here (2.7) compared to the previous example (12.7) that this advantage is still significant in cases where simulations can take hours or days to compute.
Comparison among the computational times and number of unique random numbers that were needed for the simulations, listed in Table 1(b), shows consistent trends with what was seen in the birth-death example. Namely, the IRN and CRN methods had comparable computation times, while the CRP method required ≈16% more CPU time to compute an estimate from the same number of samples.
Chemical oscillator
As another example, consider the model of a chemical oscillator19 in which one repressor protein R and one activator protein A are under the control of their respective promoters Pr and Pa. Protein A is able to bind with both Pa and Pr to significantly enhance the transcription of mRNAa and mRNAr and subsequent synthesis of proteins A and R. The repressor R inhibits this activity by forming the intermediate complex A_R with protein A before inducing its degradation. This system is capable of inducing periodic oscillations. In total the model consists of nine chemical species participating in 14 chemical reactions, whose propensities depend on 17 kinetic parameters. The reactions and parameters for the model are listed in Table 2. The population of each species was set to zero initially, except for promoters Pa and Pr, which were set to one. The sensitivity of protein A atT=20 was estimated using the CRN and CRP methods as described previously.
Table 2.
Model reactions and parameters for chemical oscillator example.
| Reactions | Parameter | Value |
|---|---|---|
| c1 | 50.0 | |
| c2 | 0.01 | |
| c3 | 500.0 | |
| c4 | 100.0 | |
| c5 | 20.0 | |
| c6 | 0.0 | |
| c7 | 20.0 | |
| c8 | 0.0 | |
| c9 | 1.0 | |
| c10 | 100.0 | |
| c11 | 1.0 | |
| c12 | 0.2 | |
| c13 | 10.0 | |
| c14 | 0.5 | |
| c15 | 10.0 | |
| αa | 10.0 | |
| αr | 5000 |
The estimator variances as a function of h are shown for this example in Fig. 5c. The variances for both the CRN and CRP estimators behave as O(h) for small h, consistent with the prior two examples and again confirming the proof in Appendix C. Additionally, the ratio of CRP variance to CRN variance indicates that CRP performs much better than CRN in this example, resembling the significant advantage in variance reduction observed previously in example VA.
CONCLUSIONS AND FUTURE WORK
We have demonstrated two efficient alternatives to the familiar approach of using IRNs in Monte Carlo finite difference sensitivity analysis of discrete stochastic chemical networks: the CRN and CRP methods. Sensitivity analysis with CRN can be readily implemented with any version of the popular SSAs by merely running the perturbed and unperturbed trajectories with the same stream of random numbers. The CRP method uses CRNs in the setting of RTC representation of jump Markov processes. The implementation of the CRP algorithm is also relatively easy; the only additional requirement is the availability of a modern random number generator which supports multiple, independent streams of random numbers. Both methods result in an estimator with reduced variance, thereby requiring fewer samples to achieve the same accuracy, although the CRP method performs better than CRN by achieving greater variance reduction.
We showed via numerical examples that both CRP and CRN achieve significant computational speedup over IRN (factors of over 10 000 were observed in one example). The CRP method outperformed the CRN method in all the examples. We also demonstrated that typically in the CRP method the times of reaction events perturb continuously when the parameters are perturbed while in CRN they perturb only piecewise continuously. This we believe is the reason for the greater covariance between the perturbed and unperturbed trajectories and hence the reduced variance of the finite difference estimator in the case of CRP over CRN.
Ongoing work involves direct (without using finite differences) Monte Carlo estimation of infinitesimal sensitivities using the CRP approach as well as theoretical investigations of the CRP approach.
ACKNOWLEDGMENTS
The authors wish to acknowledge financial support from the National Science Foundation under Grant Nos. NSF-DMS-0610013, NSF-IGERT DGE02-21715, NSF-ECCS-0835847, and NSF-ECCS-0802008, by the National Institutes of Health under Grant No. R01-GM04983, and by the Institute for Collaborative Biotechnologies through Grant No. DAAD19-03-D-0004 from the U.S. Army Research Office.
APPENDIX A: THE SIGNIFICANCE OF USING M PARALLEL STREAMS OF RANDOM NUMBERS
Consider the example depicted in Fig. 1. If CRN method is chosen in conjunction with the modified next reaction method proposed by Anderson,10 the internal times and will be generated from a single stream of unit rate exponentials. Suppose the first five numbers of this single stream are 0.52, 0.2, 1.1, 0.9, and 1.2. For the situation depicted in the figure, the order in which the reaction channels 1 and 2 fire is 1, 2, 1, 1, 2,…. Thus the internal times are assigned values in the order and , and their values are (keeping in mind that for j=1,2)
Now if keeping the same single stream of random numbers 0.52, 0.2, 1.1, 0.9, 1.2,…, one recomputes the modified next reaction method for a different choice of parameter values c1,c2 since the propensities change, the order in which the reactions fire might change. Suppose this order changes to 1, 2, 1, 2, 1…. Then the internal times will be assigned the values
Thus even though the same stream of random numbers are used, the reaction paths as specified by the values of are assigned with different values. In the CRP method, by keeping M parallel streams of (unit rate exponential) random numbers, we can ensure that the same values of are used when a simulation is repeated with different parameter values. To see this suppose that in the same example, two parallel streams (one for each reaction channel) of unit rate exponential random numbers are used. Suppose the first few numbers of this double stream are 0.43, 1.3, 0.7,… and 0.9, 1.1, 0.1,…. By using the first stream exclusively for reaction channel 1 and the second for reaction channel 2 we ensure the following assignment of values for the internal times irrespective of parameter values and thus the exact order in which reactions occur:
and
APPENDIX B: CONTINUITY PROPERTIES OF CRP AND CRN
It can be shown that in the CRP method the reaction times Tn are continuous functions of the parameters c in most cases,20 while for CRN implemented in conjunction with other methods, the reaction times Tn are only piecewise continuous in parameters c. Here we use a simple example to show why this is the case for CRP and for CRN implemented in conjunction with Gillespie’s direct method.
Let Tn denote the time of the nth reaction event and Jn denote the type of the nth reaction event (Jn is a number in the set {1,2,…,M}). Let us denote the stream of uniform random number pairs used in Gillespie’s direct method by Un and Vn, where Un decides the time of nth reaction event and Vn its type. Then we may write
and Jn(c) is the smallest number J in {1,2,…,M} such that
In addition it follows that
Once we fix the sequence of numbers Un,Vn, the above three deterministic equations govern the evolution of Tn and Xn for n=1,2,…. Assume the initial condition X0=x0 (deterministic) and set T0=0. For simplicity let us focus on the birth-death example with a1(x,c)=c1 and a2(x,c)=c2x. Then
which is a continuous function of both c1 and c2. Suppose c1 is varied. It is easy to see that in the neighborhood of a typical value of c1, T1(c) and J1(c) are continuous functions (the latter being constant). However when c1 is varied across some critical value c1=c*, J1(c) will jump. Here c* satisfies c*=V1(c*+c2x0) or equivalently,
This causes X1(c) to jump across c1=c* as well. In fact when c1<c*, J1(c)=2 and X1(c)=x0−1. (We have assumedx0>0.) When c1>c* we have X1(c)=x0+1. It follows that T2(c) is given by
for c1>c* and
for c1<c* indicating a discontinuous change across c1=c*. Likewise J2 jumps across c1=c*. However in addition to the discontinuity at c1=c* inherited from that of J1(c), there will be additional discontinuities in J2(c). One additional discontinuity occurs at c1=c** given by
if [c2(x0+1)]∕(1−V2)>c* and another one at c1=c*** given by
if [c2(x0−1)]∕(1−V2)<c*. Depending on how c*,c**,c*** are ordered (clearly c**<c***) one or both c** and c*** will be discontinuities. Likewise X2(c) and T3(c) both will have discontinuities at the same c1 values as J2(c).
Thus we conclude that for a typical stream of random numbers, the reaction firing times Tn are only piecewise continuous in the parameters c, and the number of discontinuities in Tn increases with n.
On the other hand let us examine what happens when the RTC algorithm is used again with the aid of the birth-death example. Suppose for j=1,2 is a given double stream of unit rate exponential random numbers. Then we obtain the following formulas for Tn and Jn:
and Jn(c) equals the j value at which the minimum occurs. Furthermore as before, Xn=Xn−1+νJn. Again note that X0=x0 and T0=0. In particular, we have
As in the case of CRN with Gillespie’s direct method, T1(c) will be continuous in c (because the minimum of M different continuous functions is still a continuous function) and J1(c) will undergo a jump as c1 is varied across the value c1=c* given by , or equivalently
First note that this jump occurs at a point when both reactions fire simultaneously. In other words T2=T1 at c1=c*. Also J1(c)=2, X1(c)=x0−1 for c1<c* and J1(c)=2,X1(c)=x0+1 for c1>c*. Let us examine what happens for c1=c*(1+ϵ) when ϵ>0 is arbitrarily small. The internal times elapsed by T1 are given by
and
where we have used 1∕(1+ϵ)≈1−ϵ. Then T2 is given by
Thus for ϵ near 0, the next reaction to fire will be J2=2 and T2=T1+O(ϵ). Similarly examining c1=c*(1−ϵ) for arbitrarily small ϵ>0, we see that J2=1 and T2=T1+O(ϵ). This shows that T2 remains continuous across c1=c* even though the order of reactions changes from J1=1, J2=2 forc1>c* to J1=2, J2=1 for c1<c*.
The critical reason for the continuity property of CRP is that in instances when one reaction is close to firing but loses out to a competing reaction, the reaction times are rescaled rather than reset, ensuring that it will next fire soon. When parameters change, the two reactions swap order of firing with two successive firings occurring very close in physical time. In Gillespie’s direct method that a reaction “lost out” to another reaction—no matter how close to firing it was—is forgotten after the winning reaction fires. Thus when reaction firing orders change, the times for the subsequent reactions also undergo a discontinuous change.
There are exceptions to this continuity property of reaction times Tn in CRP. This happens when the firing of one reaction changes the propensity of a competing reaction to zero, thus preventing it from firing immediately thereafter. A detailed investigation of this phenomenon is beyond the scope of this paper. However our reasoning shows that typically the number of discontinuities of Tn are fewer (if any at all) in CRP when compared to CRN with Gillespie’s direct method.
APPENDIX C: ACCURACY OF THE STATISTICAL ESTIMATION OF SENSITIVITY
In Sec. 4A it was noted that methods using CRN (or CRP) decreased the variance of the estimator especially for small h. Typically for the CRP as well as CRN methods when h is sufficiently small, the covariance cov(Y1,Y2) is positive and close to var(Y1) and equivalently var(Y1−Y2) is close to 0. However for the independent sample SSA when c0 and c0+h are close var(Y1−Y2) is close to 2var(Y1).
We shall show that var(Y1−Y2) approaches 0 as h approaches 0. To see this, first note that in CRN and CRP methods, for a given fixed set of CRNs, as h→0,X(T,c0+h)→X(T,c0) with probability 1. We shall now show that E[(f(X(T,c0+h))−f(X(T,c0)))2]→0. Suppose that E(f(X(T,c))4) exists and is continuous in c in a closed ball centered at c0∊Rp. Let M be the maximum value of E(f(X(T,c))4) in this closed ball. Suppose c0+h belongs to this ball. Then using the inequality (a−b)4≤24(a4+b4) one obtains that
Let Y(h)=f(X(T,c0+h))−f(X(T,c0)) be a family of random variables indexed by h. It follows the family (Y(h))2 is bounded in L2 (two norm) and hence is uniformly integrable.21 Since as h→0, X(T,c0+h)→X(T,c0) with probability 1, it follows that (Y(h))2→0 with probability 1. By uniform integrability, we obtain that E((Y(h))2)→0, proving that E[(f(X(T,c+h))−f(X(T,c)))2]→0.
References
- McAdams H. and Arkin A., Proc. Natl. Acad. Sci. U.S.A. 94, 814 (1997). 10.1073/pnas.94.3.814 [DOI] [PMC free article] [PubMed] [Google Scholar]
- Thattai M. and van Oudenaarden A., Proc. Natl. Acad. Sci. U.S.A. 98, 8614 (2001). 10.1073/pnas.151588598 [DOI] [PMC free article] [PubMed] [Google Scholar]
- Gunawan R., Cao Y., Petzold L., and Doyle F. J., Biophys. J. 88, 2530 (2005). 10.1529/biophysj.104.053405 [DOI] [PMC free article] [PubMed] [Google Scholar]
- Ethier S. N. and Kurtz T. G., Markov Processes: Characterization and Convergence (Wiley, New York, 1986). [Google Scholar]
- Plyasunov S. and Arkin A. P., J. Comput. Phys. 221, 724 (2007). 10.1016/j.jcp.2006.06.047 [DOI] [Google Scholar]
- Kim D., Debusschere B. J., and Najm H. N., Biophys. J. 92, 379 (2007). 10.1529/biophysj.106.085084 [DOI] [PMC free article] [PubMed] [Google Scholar]
- Gillespie D., J. Phys. Chem. 81, 2340 (1977). 10.1021/j100540a008 [DOI] [Google Scholar]
- Rao C. and Arkin A., J. Chem. Phys. 118, 4999 (2003). 10.1063/1.1545446 [DOI] [Google Scholar]
- Gibson M. A. and Bruck J., J. Phys. Chem. 104, 1876 (2000). [Google Scholar]
- Anderson D. F., J. Chem. Phys. 127, 214107 (2007). 10.1063/1.2799998 [DOI] [PubMed] [Google Scholar]
- Varma A., Morbidelli M., and Wu H., Parametric Sensitivity in Chemical Systems (Cambridge University Press, Cambridge, 1999). [Google Scholar]
- Glynn P. W., Proceedings of the Winter Simulation Conference (ACM, New York, 1989), p. 90.
- L’Ecuyer P., Ann. Operat. Res. 39, 121 (1992). 10.1007/BF02060938 [DOI] [Google Scholar]
- Glasserman P. and Yao D. D., Manage. Sci. 38, 884 (1992). 10.1287/mnsc.38.6.884 [DOI] [Google Scholar]
- Rathinam M. and El-Samad H., J. Comput. Phys. 224, 897 (2007). 10.1016/j.jcp.2006.10.034 [DOI] [Google Scholar]
- Gardner T., Cantor C. R., and Collins J. J., Nature (London) 403, 339 (2000). 10.1038/35002131 [DOI] [PubMed] [Google Scholar]
- Bhalla U. and Iyengar R., Science 283, 381 (1999). [DOI] [PubMed] [Google Scholar]
- Munsky B. and Khammash M., J. Chem. Phys. 124, 044104 (2006). 10.1063/1.2145882 [DOI] [PubMed] [Google Scholar]
- Vilar J. M. G., Kueh H. Y., Barkai N., and Leibler S., Proc. Natl. Acad. Sci. U.S.A. 99, 5988 (2002). 10.1073/pnas.092133899 [DOI] [PMC free article] [PubMed] [Google Scholar]
- Discontinuity in jump times occurs only when in a sample path two reactions happen to fire simultaneously and the firing of one of these reactions causes the propensity of the other to go to zero.
- Williams D., Probability with Martingales (Cambridge University Press, Cambridge, 1991). [Google Scholar]







