What's New in Teams Calling, Meetings and Devices March 2024
An introduction to moment closure techniques
1. An introduction to moment closure techniques
Colin Gillespie
School of Mathematics & Statistics
Newcastle University
July 30, 2008
Colin Gillespie An introduction to moment closure techniques
2. Modelling
Let’s start with a simple birth-death model.
Birth-death model
X −→ X − 1 and X −→ X + 1
which has the propensity functions µX and λX .
The deterministic model is
dX (t)
= (λ − µ)X (t) ,
dt
which can be solved to give X (t) = X (0) exp[(λ − µ)t].
Colin Gillespie An introduction to moment closure techniques
3. Deterministic Solution: λ < µ
50
40
Population
30
20
10
0
0 1 2 3 4
Time
Colin Gillespie An introduction to moment closure techniques
4. Stochastic Simulation
It’s very easy to simulate the birth-death process using
Gillespie’s method:
1 Update reaction clock;
2 Choose a reaction to occur;
3 Repeat.
Colin Gillespie An introduction to moment closure techniques
5. Four Stochastic Simulations
4 Simulations of a birth-death process
0 1 2 3 4
Simulation 3 Simulation 4
50
40
30
20
10
Population
0
Simulation 1 Simulation 2
50
40
30
20
10
0
0 1 2 3 4
Time
Colin Gillespie An introduction to moment closure techniques
6. Stochastic Mean and Variance
If we simulated the process a large number of times (say
109 ), then we could calculate the population mean and
variance.
We could construct an approximate 95% tolerance interval
√
Mean ± 2 Variance
Colin Gillespie An introduction to moment closure techniques
7. Four Stochastic Simulations
Mean (Green), tolerance interval (red), simulation
(blue)
0 1 2 3 4
Simulation 3 Simulation 4
50
40
30
20
10
Population
0
Simulation 1 Simulation 2
50
40
30
20
10
0
0 1 2 3 4
Colin Gillespie An introduction to moment closure techniques
8. Mean and Variance
In this talk we will look at a quick method for estimating the
mean and variance, without using stochastic simulation
Colin Gillespie An introduction to moment closure techniques
9. Moment generating function
Let pn (t) be the probability that the population is of size n
at time t.
The moment generating function is defined as
∞
M(θ; t) ≡ pn (t)enθ .
n=0
If we differentiate M(θ; t) w.r.t θ and set θ = 0, we get
E[N(t)], i.e. the mean.
If we differentiate M(θ; t) w.r.t θ twice, and set θ = 0, we
get E[N(t)2 ] and hence
Var[N(t)] = E[N(t)2 ] − E[N(t)]2 .
Colin Gillespie An introduction to moment closure techniques
10. General idea
The birth-death process has the following CME:
dpn
= λ(n − 1)pn−1 + µ(n + 1)pn+1 − (λ + µ)npn
dt
After multiplying the CME by enθ and summing over n, we
obtain
∂M ∂M
= [λ(eθ − 1) + µ(e−θ − 1)]
∂t ∂θ
Colin Gillespie An introduction to moment closure techniques
11. Moment Equations
If we differentiate this p.d.e. w.r.t θ and set θ = 0, we get:
dE[N(t)]
= (λ − µ)E[N(t)]
dt
where E[N(t)] is the mean. This is a single ODE that we
can solve to obtain a value for the mean.
If we differentiate the p.d.e. w.r.t θ twice and set θ = 0, we
get:
dE[N(t)2 ]
= (λ − µ)E[N(t)] + 2(λ − µ)E[N(t)2 ]
dt
and hence the variance Var[N(t)] = E[N(t)2 ] − E[N(t)]2
So instead of simulating the process 109 to estimate the
mean and variance, we can simply solve two ODEs.
Colin Gillespie An introduction to moment closure techniques
12. Moment Equations
If we differentiate this p.d.e. w.r.t θ and set θ = 0, we get:
dE[N(t)]
= (λ − µ)E[N(t)]
dt
where E[N(t)] is the mean. This is a single ODE that we
can solve to obtain a value for the mean.
If we differentiate the p.d.e. w.r.t θ twice and set θ = 0, we
get:
dE[N(t)2 ]
= (λ − µ)E[N(t)] + 2(λ − µ)E[N(t)2 ]
dt
and hence the variance Var[N(t)] = E[N(t)2 ] − E[N(t)]2
So instead of simulating the process 109 to estimate the
mean and variance, we can simply solve two ODEs.
Colin Gillespie An introduction to moment closure techniques
13. Part I
Examples
Colin Gillespie An introduction to moment closure techniques
14. Simple Dimerisation model
The dimerisation model has the following biochemical
reactions:
Dimerisation
2X1 −→ X2 and X2 −→ 2X1
We can formulate the dimer model in terms of moment
equations, namely,
dE[X1 ] 2
= 0.5k1 (E[X1 ] − E[X1 ]) − k2 E[X1 ]
dt
2
dE[X1 ] 2 2
= k1 (E[X1 X2 ] − E[X1 X2 ]) + 0.5k1 (E[X1 ] − E[X1 ])
dt
2
+ k2 (E[X1 ] − 2E[X1 ])
where E[X1 ] is the mean of X1 and E[X1 ] − E[X1 ]2 is the
2
variance of X1 .
Colin Gillespie An introduction to moment closure techniques
15. Simple Dimerisation model
The dimerisation model has the following biochemical
reactions:
Dimerisation
2X1 −→ X2 and X2 −→ 2X1
We can formulate the dimer model in terms of moment
equations, namely,
dE[X1 ] 2
= 0.5k1 (E[X1 ] − E[X1 ]) − k2 E[X1 ]
dt
2
dE[X1 ] 2 2
= k1 (E[X1 X2 ] − E[X1 X2 ]) + 0.5k1 (E[X1 ] − E[X1 ])
dt
2
+ k2 (E[X1 ] − 2E[X1 ])
where E[X1 ] is the mean of X1 and E[X1 ] − E[X1 ]2 is the
2
variance of X1 .
The i th moment equation depends on the (i + 1)th
equation.
Colin Gillespie An introduction to moment closure techniques
16. Simple Dimerisation model
The dimerisation model has the following biochemical
reactions:
Dimerisation
2X1 −→ X2 and X2 −→ 2X1
We can formulate the dimer model in terms of moment
equations, namely,
dE[X1 ]
= 0.5k1 E[X1 ](E[X1 ] − 1) + 0.5k1 Var[X1 ] − k2 E[X1 ]
dt
2
where E[X1 ] is the mean of X1 and E[X1 ] − E[X1 ]2 is the
variance of X1 .
The deterministic equation is an approximation to the
stochastic mean.
Colin Gillespie An introduction to moment closure techniques
17. Simple Dimerisation model
To close the equations, we usually assume that the
underlying distribution is Normal or Lognormal.
The easiest option is to assume an underlying Normal
distribution, i.e.
E[X1 ] = 3E[X1 ]E[X1 ] − 2E[X1 ]3
3 2
But we could also use, the Poisson
E[X1 ] = E[X1 ] + 3E[X1 ]2 + E[X1 ]3
3
or the Lognormal
2 3
3 E[X1 ]
E[X1 ] =
E[X1 ]
Colin Gillespie An introduction to moment closure techniques
18. Simple Dimerisation model
To close the equations, we usually assume that the
underlying distribution is Normal or Lognormal.
The easiest option is to assume an underlying Normal
distribution, i.e.
E[X1 ] = 3E[X1 ]E[X1 ] − 2E[X1 ]3
3 2
But we could also use, the Poisson
E[X1 ] = E[X1 ] + 3E[X1 ]2 + E[X1 ]3
3
or the Lognormal
2 3
3 E[X1 ]
E[X1 ] =
E[X1 ]
Colin Gillespie An introduction to moment closure techniques
19. Simple Dimerisation model
300
Protein Population
250
200
150
0 5 10 15 20 25
Time
Colin Gillespie An introduction to moment closure techniques
20. Heat Shock Model
Proctor et al, 2005 - 23 reactions, 17 chemical species
A single stochastic simulation up to t = 2000 takes about
35 minutes.
If we convert the model to moment equations, we get 139
equations.
A python script automatically generates the ODEs from an
SBML file
These can be solved in less than 5 minutes using Maple
Hopefully I’ll start outputting in sundials, so this should be
even quicker
Colin Gillespie An introduction to moment closure techniques
21. Heat Shock Model
1200
600
Native Protein (10,000’s)
1000
590
800
ADP
600 580
400 570
200
560
0 500 1000 1500 2000 0 500 1000 1500 2000
Time Time
Colin Gillespie An introduction to moment closure techniques
22. Univariate Distributions
600 800 1000 1200 1400
Time t=200 Time t=2000
0.006
Density
0.004
0.002
0.000
600 800 1000 1200 1400
ADP
Colin Gillespie An introduction to moment closure techniques
23. Bivariate Distributions at time t = 2000
7e+06
6e+06
NatP
5e+06
4e+06
800 900 1000 1100 1200
ADP
Colin Gillespie An introduction to moment closure techniques
24. P53-Mdm2 Oscillations model
Proctor and Grey, 2008 - 16 chemical species and about a
dozen reactions.
The model contains two events.
If we convert the model to moment equations, we get 139
equations.
However, in this case the moment closure approximation
doesn’t do to well!
Colin Gillespie An introduction to moment closure techniques
25. P53-Mdm2 Oscillations model
Proctor and Grey, 2008 - 16 chemical species and about a
dozen reactions.
The model contains two events.
If we convert the model to moment equations, we get 139
equations.
However, in this case the moment closure approximation
doesn’t do to well!
Colin Gillespie An introduction to moment closure techniques
26. P53 Mean
MC(black), True (red)
300
250
200
P53 Population
150
100
50
0
0 5 10 15 20 25 30
Time
Colin Gillespie An introduction to moment closure techniques
27. P53 Mean
MC(black), True (red), Deterministic(green)
300
250
200
P53 Population
150
100
50
0
0 5 10 15 20 25 30
Time
Colin Gillespie An introduction to moment closure techniques
28. What went wrong?
The Moment closure (tends) to fail when there is a large
difference between the deterministic and stochastic
formulations.
I believe it failed because of strongly correlated species
Typically when the MC approximation fails, it gives a
negative variance
The MC approximation does work well for other parameter
values for the p53 model.
Colin Gillespie An introduction to moment closure techniques
29. Software
Python script that takes in a SBML file and outputs the
moment equations.
Currently outputs as a Maple file (University has a site
licence)
Hopefully it will soon output as a sundials/GSL C file
(Sort of) supports events.
Currently only handles polynomial rate laws, but could be
upgrade to handle more complicated rate laws.
Colin Gillespie An introduction to moment closure techniques
30. References
For an introduction to Moment closure see papers by Matis
et al over the last 20 years.
Gillespie, C.S. Moment closure approximations for
mass-action models. IET Systems Biology, in press
Colin Gillespie An introduction to moment closure techniques