SlideShare una empresa de Scribd logo
1 de 25
Descargar para leer sin conexión
Computer Science Large Practical:
                The Stochastic Simulation Algorithm (SSA)

                                              Stephen Gilmore

                                              School of Informatics


                                          Friday 5th October, 2012




Stephen Gilmore (School of Informatics)         Stochastic simulation   Friday 5th October, 2012   1 / 25
Stochastic: Random processes




         Fundamental to the principle of stochastic modelling is the idea that
         molecular reactions are essentially random processes; it is impossible
         to say with complete certainty the time at which the next reaction
         within a volume will occur.




Stephen Gilmore (School of Informatics)   Stochastic simulation   Friday 5th October, 2012   2 / 25
Stochastic: Predictability of macroscopic states



         In macroscopic systems, with a large number of interacting molecules,
         the randomness of this behaviour averages out so that the overall
         macroscopic state of the system becomes highly predictable.
         It is this property of large scale random systems that enables a
         deterministic approach to be adopted; however, the validity of this
         assumption becomes strained in in vivo conditions as we examine
         small-scale cellular reaction environments with limited reactant
         populations.




Stephen Gilmore (School of Informatics)   Stochastic simulation   Friday 5th October, 2012   3 / 25
Stochastic: Propensity function



 As explicitly derived by Gillespie, the stochastic model uses basic
 Newtonian physics and thermodynamics to arrive at a form often termed
 the propensity function that gives the probability aµ of reaction µ
 occurring in time interval (t, t + dt).

                                          aµ dt = hµ cµ dt

 where the M reaction mechanisms are given an arbitrary index µ
 (1 ≤ µ ≤ M), hµ denotes the number of possible combinations of reactant
 molecules involved in reaction µ, and cµ is a stochastic rate constant.




Stephen Gilmore (School of Informatics)    Stochastic simulation   Friday 5th October, 2012   4 / 25
Stochastic: Grand probability function




 The stochastic formulation proceeds by considering the grand probability
 function Pr(X; t) ≡ probability that there will be present in the volume V
 at time t, Xi of species Si , where X ≡ (X1 , X2 , . . . XN ) is a vector of
 molecular species populations.

 Evidently, knowledge of this function provides a complete understanding of
 the probability distribution of all possible states at all times.




Stephen Gilmore (School of Informatics)   Stochastic simulation   Friday 5th October, 2012   5 / 25
Stochastic: Infinitesimal time interval


 By considering a discrete infinitesimal time interval (t, t + dt) in which
 either 0 or 1 reactions occur we see that there exist only M + 1 distinct
 configurations at time t that can lead to the state X at time t + dt.

               Pr(X; t + dt)
                        = Pr(X; t) Pr(no state change over dt)
                               M
                       +       µ=1 Pr(X   − vµ ; t) Pr(state change to X over dt)

 where vµ is a stoichiometric vector defining the result of reaction µ on
 state vector X, i.e. X → X + vµ after an occurrence of reaction µ.




Stephen Gilmore (School of Informatics)      Stochastic simulation   Friday 5th October, 2012   6 / 25
Stochastic: State change probabilities


 Pr(no state change over dt)
                                                     M
                                              1−          aµ (X)dt
                                                   µ=1

 Pr(state change to X over dt)
                                      M
                                           Pr(X − vµ ; t)aµ (X − vµ )dt
                                     µ=1




Stephen Gilmore (School of Informatics)         Stochastic simulation     Friday 5th October, 2012   7 / 25
Stochastic: Partial derivatives




 We are considering the behaviour of the system in the limit as dt tends to
 zero. This leads us to consider partial derivatives, which are defined thus:

                           ∂ Pr(X; t)       Pr(X; t + dt) − Pr(X; t)
                                      = lim
                              ∂t       dt→0            dt




Stephen Gilmore (School of Informatics)   Stochastic simulation   Friday 5th October, 2012   8 / 25
Stochastic: Chemical Master Equation



 Applying this, and re-arranging the former, leads us to an important
 partial differential equation (PDE) known as the Chemical Master
 Equation (CME).
                                     M
              ∂ Pr(X; t)
                         =                aµ (X − vµ ) Pr(X − vµ ; t) − aµ (X) Pr(X; t)
                 ∂t
                                   µ=1




Stephen Gilmore (School of Informatics)         Stochastic simulation    Friday 5th October, 2012   9 / 25
The problem with the Chemical Master Equation



         The CME is really a set of nearly as many coupled ordinary
         differential equations as there are combinations of molecules that can
         exist in the system!
         The CME can be solved analytically for only a very few very simple
         systems, and numerical solutions are usually prohibitively difficult.

        D. Gillespie and L. Petzold.
        chapter Numerical Simulation for Biochemical Kinetics, in System Modelling
        in Cellular Biology, editors Z. Szallasi, J. Stelling and V. Periwal.
        MIT Press, 2006.




Stephen Gilmore (School of Informatics)   Stochastic simulation   Friday 5th October, 2012   10 / 25
Advertisement: Athena SWAN
Last day to take part




         As part of the School of Informatics’ commitment to diversity, and to
         a workplace where all students are treated fairly, we have decided to
         undertake a gender equality culture survey.
         The focus of this survey is gender diversity, as this is a cross-cutting
         diversity issue where we feel we can have the greatest positive impact;
         contributing to development and advancement of the School, for all
         our students.




Stephen Gilmore (School of Informatics)   Stochastic simulation   Friday 5th October, 2012   11 / 25
Advertisement: Athena SWAN
Last day to take part




         The survey results will tell us what we are doing well in terms of
         gender equality, and where we need to make any improvements.
         The School is committed to using this data to improve our policies
         and practices. This will also feed into our Athena SWAN application.
         The link to the survey is https:
         //www.survey.ed.ac.uk/informatics_student_culture2012/




Stephen Gilmore (School of Informatics)   Stochastic simulation   Friday 5th October, 2012   12 / 25
Advertisement: Athena SWAN
Last day to take part




         Your response will be confidential and only anonymous results will be
         seen by management, and communicated to staff (students).
         The survey should take only about 10 minutes to complete and will
         be available until 5th October (today).




Stephen Gilmore (School of Informatics)   Stochastic simulation   Friday 5th October, 2012   13 / 25
Stochastic simulation algorithms


Stochastic simulation algorithms




 Gillespie’s Stochastic Simulation Algorithm (SSA) is essentially an exact
 procedure for numerically simulating the time evolution of a well-stirred
 chemically reacting system by taking proper account of the randomness
 inherent in such a system.




Stephen Gilmore (School of Informatics)              Stochastic simulation   Friday 5th October, 2012   14 / 25
Stochastic simulation algorithms


Gillespie’s exact SSA (1977)


         The algorithm takes time steps of variable length, based on the rate
         constants and population size of each chemical species.
         The probability of one reaction occurring relative to another is
         dictated by their relative propensity functions.
         According to the correct probability distribution derived from the
         statistical thermodynamics theory, a random variable is then used to
         choose which reaction will occur, and another random variable
         determines how long the step will last.
         The chemical populations are altered according to the stoichiometry
         of the reaction and the process is repeated.




Stephen Gilmore (School of Informatics)              Stochastic simulation   Friday 5th October, 2012   15 / 25
Stochastic simulation algorithms


Gillespie’s exact SSA (1977)
As described by in “Stochastic Simulation Algorithms for Chemical Reactions” by Ahn,
Cao and Watson, 2008


         Suppose a biochemical system or pathway involves N molecular
         species {S1 , . . . , SN }.
         Xi (t) denotes the number of molecules of species Si at time t.
         People would like to study the evolution of the state vector
         X (t) = (X1 (t), . . . , XN (t)) given that the system was initially in the
         state vector X (t0 ).

  Example
 The enzyme-substrate example had N = 4 molecular species, (E , S, C , P),
 and the initial state vector X (t0 ) was (5, 5, 0, 0). If t = 200 we might find
 that X (t) was (5, 0, 0, 5).

Stephen Gilmore (School of Informatics)              Stochastic simulation   Friday 5th October, 2012   16 / 25
Stochastic simulation algorithms


Gillespie’s exact SSA (1977)
As described by in “Stochastic Simulation Algorithms for Chemical Reactions” by Ahn,
Cao and Watson, 2008




         Suppose the system is composed of M reaction channels
         {R1 , . . . , RM }.
         In a constant volume Ω, assume that the system is well-stirred and in
         thermal equilibrium at some constant temperature.

  Example
 The enzyme-substrate example had M = 3 reaction channels, f , b and p.




Stephen Gilmore (School of Informatics)              Stochastic simulation   Friday 5th October, 2012   17 / 25
Stochastic simulation algorithms


Gillespie’s exact SSA (1977)
As described by in “Stochastic Simulation Algorithms for Chemical Reactions” by Ahn,
Cao and Watson, 2008



         There are two important quantities in reaction channels Rj :
                 the state change vector vj = (v1j , . . . , vNj ), and
                 propensity function aj .
         vij is defined as the change in the Si molecules’ population caused by
         one Rj reaction,
         aj (x)dt gives the probability that one Rj reaction will occur in the
         next infinitesimal time interval [t, t + dt).

  Example
 The reaction f: E + S -> C has state change vector (−1, −1, 1, 0).


Stephen Gilmore (School of Informatics)              Stochastic simulation   Friday 5th October, 2012   18 / 25
Stochastic simulation algorithms


Gillespie’s exact SSA (1977)
As described by in “Stochastic Simulation Algorithms for Chemical Reactions” by Ahn,
Cao and Watson, 2008




         The SSA simulates every reaction event.
         With X (t) = x, p(τ, j | x, t)dτ is defined as the probability that the
         next reaction in the system will occur in the infinitesimal time interval
         [t + τ, t + τ + dτ ), and will be an Rj reaction.
                                             M
         By letting a0 (x) ≡                 j=1 aj (x),         the equation

                                      p(τ, j | x, t) = aj (x) exp(−a0 (x)τ ),

         can be obtained.



Stephen Gilmore (School of Informatics)              Stochastic simulation      Friday 5th October, 2012   19 / 25
Stochastic simulation algorithms


Gillespie’s exact SSA (1977)
As described by in “Stochastic Simulation Algorithms for Chemical Reactions” by Ahn,
Cao and Watson, 2008




         A Monte Carlo method is used to generate τ and j.
         On each step of the SSA, two random numbers r1 and r2 are
         generated from the uniform (0,1) distribution.
         From probability theory, the time for the next reaction to occur is
         given by t + τ , where
                                                               1       1
                                                     τ=             ln( ).
                                                             a0 (x)    r1




Stephen Gilmore (School of Informatics)              Stochastic simulation   Friday 5th October, 2012   20 / 25
Stochastic simulation algorithms


Gillespie’s exact SSA (1977)
As described by in “Stochastic Simulation Algorithms for Chemical Reactions” by Ahn,
Cao and Watson, 2008




         The next reaction index j is given by the smallest integer satisfying
                                                    j
                                                         aj (x) > r2 a0 (x).
                                                  j =1

         After τ and j are obtained, the system states are updated by
         X (t + τ ) := x + vj , and the time is updated by t := t + τ .
         This simulation iteration proceeds until the time t reaches the final
         time.



Stephen Gilmore (School of Informatics)              Stochastic simulation     Friday 5th October, 2012   21 / 25
Stochastic simulation algorithms


Sampling from a probability distribution
 In order to sample from a non-uniform probability distribution we can
 think of an archer repeatedly blindly firing random arrows at a patch of
 painted ground. Because the arrows are uniformly randomly distributed
 they are likely to hit the larger painted areas more often than the smaller
 painted areas.




   Archer
      133                           110                           50         50             40          30



  Note
 We cannot predict beforehand where any particular arrow will land.

Stephen Gilmore (School of Informatics)              Stochastic simulation        Friday 5th October, 2012   22 / 25
Stochastic simulation algorithms


Sampling from a probability distribution
 Here we interpret the picture as meaning that there are five reaction
 channels (the red reaction, the blue reaction, the green reaction, the
 yellow reaction and the black reaction). These have different propensities,
 with the red reaction being the most likely to fire and the black reaction
 being the least likely to fire.




   Archer
      133                           110                           50         50             40          30



  Note
 We know that the blue reaction fires because 110 + 50 > 133.

Stephen Gilmore (School of Informatics)              Stochastic simulation        Friday 5th October, 2012   23 / 25
Stochastic simulation algorithms


Gillespie’s SSA is a Monte Carlo Markov Chain simulation




 The SSA is a Monte Carlo type method. With the SSA one may
 approximate any variable of interest by generating many trajectories and
 observing the statistics of the values of the variable. Since many
 trajectories are needed to obtain a reasonable approximation, the efficiency
 of the SSA is of critical importance.




Stephen Gilmore (School of Informatics)              Stochastic simulation   Friday 5th October, 2012   24 / 25
Stochastic simulation algorithms


Excellent introductory papers



        T.E. Turner, S. Schnell, and K. Burrage.
        Stochastic approaches for modelling in vivo reactions.
        Computational Biology and Chemistry, 28:165–178, 2004.

        D. Gillespie and L. Petzold.
        System Modelling in Cellular Biology, chapter Numerical Simulation for
        Biochemical Kinetics,.
        MIT Press, 2006.




Stephen Gilmore (School of Informatics)              Stochastic simulation   Friday 5th October, 2012   25 / 25

Más contenido relacionado

La actualidad más candente

How to do ahp analysis in excel
How to do ahp analysis in excelHow to do ahp analysis in excel
How to do ahp analysis in excel
J.Roberto S.F
 

La actualidad más candente (20)

Swarm Intelligence
Swarm IntelligenceSwarm Intelligence
Swarm Intelligence
 
Introduction to optimization technique
Introduction to optimization techniqueIntroduction to optimization technique
Introduction to optimization technique
 
K-means and GMM
K-means and GMMK-means and GMM
K-means and GMM
 
Nature-Inspired Optimization Algorithms
Nature-Inspired Optimization Algorithms Nature-Inspired Optimization Algorithms
Nature-Inspired Optimization Algorithms
 
Calculus in Machine Learning
Calculus in Machine Learning Calculus in Machine Learning
Calculus in Machine Learning
 
Bayesian network
Bayesian networkBayesian network
Bayesian network
 
Brief introduction on GAN
Brief introduction on GANBrief introduction on GAN
Brief introduction on GAN
 
Introduction to Optimization.ppt
Introduction to Optimization.pptIntroduction to Optimization.ppt
Introduction to Optimization.ppt
 
Machine Learning and Real-World Applications
Machine Learning and Real-World ApplicationsMachine Learning and Real-World Applications
Machine Learning and Real-World Applications
 
Dynamic Topic Modeling via Non-negative Matrix Factorization (Dr. Derek Greene)
Dynamic Topic Modeling via Non-negative Matrix Factorization (Dr. Derek Greene)Dynamic Topic Modeling via Non-negative Matrix Factorization (Dr. Derek Greene)
Dynamic Topic Modeling via Non-negative Matrix Factorization (Dr. Derek Greene)
 
Seminar On Kalman Filter And Its Applications
Seminar On  Kalman  Filter And Its ApplicationsSeminar On  Kalman  Filter And Its Applications
Seminar On Kalman Filter And Its Applications
 
Clustering:k-means, expect-maximization and gaussian mixture model
Clustering:k-means, expect-maximization and gaussian mixture modelClustering:k-means, expect-maximization and gaussian mixture model
Clustering:k-means, expect-maximization and gaussian mixture model
 
A brief introduction of Artificial neural network by example
A brief introduction of Artificial neural network by exampleA brief introduction of Artificial neural network by example
A brief introduction of Artificial neural network by example
 
Machine Learning lecture6(regularization)
Machine Learning lecture6(regularization)Machine Learning lecture6(regularization)
Machine Learning lecture6(regularization)
 
Lecture 9 Markov decision process
Lecture 9 Markov decision processLecture 9 Markov decision process
Lecture 9 Markov decision process
 
How to do ahp analysis in excel
How to do ahp analysis in excelHow to do ahp analysis in excel
How to do ahp analysis in excel
 
Optimization tutorial
Optimization tutorialOptimization tutorial
Optimization tutorial
 
Business Analytics CHAPTER 16 STOCHASTIC MODELS Business Analytics.PPTX
Business Analytics CHAPTER 16 STOCHASTIC MODELS Business Analytics.PPTXBusiness Analytics CHAPTER 16 STOCHASTIC MODELS Business Analytics.PPTX
Business Analytics CHAPTER 16 STOCHASTIC MODELS Business Analytics.PPTX
 
Дискримінантний аналіз
Дискримінантний аналізДискримінантний аналіз
Дискримінантний аналіз
 
Machine Learning project presentation
Machine Learning project presentationMachine Learning project presentation
Machine Learning project presentation
 

Destacado

Foundations and methods of stochastic simulation
Foundations and methods of stochastic simulationFoundations and methods of stochastic simulation
Foundations and methods of stochastic simulation
Springer
 
More Stochastic Simulation Examples
More Stochastic Simulation ExamplesMore Stochastic Simulation Examples
More Stochastic Simulation Examples
Stephen Gilmore
 
Elements Of Stochastic Processes
Elements Of Stochastic ProcessesElements Of Stochastic Processes
Elements Of Stochastic Processes
MALAKI12003
 
Deterministic vs stochastic
Deterministic vs stochasticDeterministic vs stochastic
Deterministic vs stochastic
sohail40
 
Ee2201 measurement-and-instrumentation-lecture-notes
Ee2201 measurement-and-instrumentation-lecture-notesEe2201 measurement-and-instrumentation-lecture-notes
Ee2201 measurement-and-instrumentation-lecture-notes
Jayakumar T
 
Discrete And Continuous Simulation
Discrete And Continuous SimulationDiscrete And Continuous Simulation
Discrete And Continuous Simulation
Nguyen Chien
 
Stochastic Process
Stochastic ProcessStochastic Process
Stochastic Process
knksmart
 
Theories of aging s14
Theories of aging s14Theories of aging s14
Theories of aging s14
Leesah Mapa
 

Destacado (18)

Foundations and methods of stochastic simulation
Foundations and methods of stochastic simulationFoundations and methods of stochastic simulation
Foundations and methods of stochastic simulation
 
More Stochastic Simulation Examples
More Stochastic Simulation ExamplesMore Stochastic Simulation Examples
More Stochastic Simulation Examples
 
Elements Of Stochastic Processes
Elements Of Stochastic ProcessesElements Of Stochastic Processes
Elements Of Stochastic Processes
 
4 stochastic processes
4 stochastic processes4 stochastic processes
4 stochastic processes
 
Stochastic modelling and its applications
Stochastic modelling and its applicationsStochastic modelling and its applications
Stochastic modelling and its applications
 
Deterministic vs stochastic
Deterministic vs stochasticDeterministic vs stochastic
Deterministic vs stochastic
 
Feedback on Part 1 of the CSLP
Feedback on Part 1 of the CSLPFeedback on Part 1 of the CSLP
Feedback on Part 1 of the CSLP
 
Spatial Clustering to Uncluttering Map Visualization in SOLAP
Spatial Clustering to Uncluttering Map Visualization in SOLAPSpatial Clustering to Uncluttering Map Visualization in SOLAP
Spatial Clustering to Uncluttering Map Visualization in SOLAP
 
Ee2201 measurement-and-instrumentation-lecture-notes
Ee2201 measurement-and-instrumentation-lecture-notesEe2201 measurement-and-instrumentation-lecture-notes
Ee2201 measurement-and-instrumentation-lecture-notes
 
Bridge ckt eim
Bridge ckt eimBridge ckt eim
Bridge ckt eim
 
Discrete And Continuous Simulation
Discrete And Continuous SimulationDiscrete And Continuous Simulation
Discrete And Continuous Simulation
 
AC bridges ( Weins bridge, Desauty bridge, Maxwell's inductance bridge)
AC bridges ( Weins bridge, Desauty bridge, Maxwell's inductance bridge)AC bridges ( Weins bridge, Desauty bridge, Maxwell's inductance bridge)
AC bridges ( Weins bridge, Desauty bridge, Maxwell's inductance bridge)
 
Stochastic Process
Stochastic ProcessStochastic Process
Stochastic Process
 
basics of stochastic and queueing theory
basics of stochastic and queueing theorybasics of stochastic and queueing theory
basics of stochastic and queueing theory
 
Theories of aging s14
Theories of aging s14Theories of aging s14
Theories of aging s14
 
The Aging Process
The Aging ProcessThe Aging Process
The Aging Process
 
Queuing theory network
Queuing theory networkQueuing theory network
Queuing theory network
 
Aging Theories
Aging TheoriesAging Theories
Aging Theories
 

Similar a The Stochastic Simulation Algorithm

Bayesian inference for mixed-effects models driven by SDEs and other stochast...
Bayesian inference for mixed-effects models driven by SDEs and other stochast...Bayesian inference for mixed-effects models driven by SDEs and other stochast...
Bayesian inference for mixed-effects models driven by SDEs and other stochast...
Umberto Picchini
 
MUMS: Bayesian, Fiducial, and Frequentist Conference - Generalized Probabilis...
MUMS: Bayesian, Fiducial, and Frequentist Conference - Generalized Probabilis...MUMS: Bayesian, Fiducial, and Frequentist Conference - Generalized Probabilis...
MUMS: Bayesian, Fiducial, and Frequentist Conference - Generalized Probabilis...
The Statistical and Applied Mathematical Sciences Institute
 
Robust Immunological Algorithms for High-Dimensional Global Optimization
Robust Immunological Algorithms for High-Dimensional Global OptimizationRobust Immunological Algorithms for High-Dimensional Global Optimization
Robust Immunological Algorithms for High-Dimensional Global Optimization
Mario Pavone
 
Investigations of certain estimators for modeling panel data under violations...
Investigations of certain estimators for modeling panel data under violations...Investigations of certain estimators for modeling panel data under violations...
Investigations of certain estimators for modeling panel data under violations...
Alexander Decker
 
20080620 Formal systems/synthetic biology modelling re-engineered
20080620 Formal systems/synthetic biology modelling re-engineered20080620 Formal systems/synthetic biology modelling re-engineered
20080620 Formal systems/synthetic biology modelling re-engineered
Jonathan Blakes
 

Similar a The Stochastic Simulation Algorithm (20)

Bayesian inference for mixed-effects models driven by SDEs and other stochast...
Bayesian inference for mixed-effects models driven by SDEs and other stochast...Bayesian inference for mixed-effects models driven by SDEs and other stochast...
Bayesian inference for mixed-effects models driven by SDEs and other stochast...
 
isi
isiisi
isi
 
Program on Mathematical and Statistical Methods for Climate and the Earth Sys...
Program on Mathematical and Statistical Methods for Climate and the Earth Sys...Program on Mathematical and Statistical Methods for Climate and the Earth Sys...
Program on Mathematical and Statistical Methods for Climate and the Earth Sys...
 
Introduction to Reinforcement Learning for Molecular Design
Introduction to Reinforcement Learning for Molecular Design Introduction to Reinforcement Learning for Molecular Design
Introduction to Reinforcement Learning for Molecular Design
 
Project 7
Project 7Project 7
Project 7
 
Leiden_VU_Delft_seminar short.pdf
Leiden_VU_Delft_seminar short.pdfLeiden_VU_Delft_seminar short.pdf
Leiden_VU_Delft_seminar short.pdf
 
Metaheuristic Optimization: Algorithm Analysis and Open Problems
Metaheuristic Optimization: Algorithm Analysis and Open ProblemsMetaheuristic Optimization: Algorithm Analysis and Open Problems
Metaheuristic Optimization: Algorithm Analysis and Open Problems
 
RuleML2015: Input-Output STIT Logic for Normative Systems
RuleML2015: Input-Output STIT Logic for Normative SystemsRuleML2015: Input-Output STIT Logic for Normative Systems
RuleML2015: Input-Output STIT Logic for Normative Systems
 
A Tutorial of the EM-algorithm and Its Application to Outlier Detection
A Tutorial of the EM-algorithm and Its Application to Outlier DetectionA Tutorial of the EM-algorithm and Its Application to Outlier Detection
A Tutorial of the EM-algorithm and Its Application to Outlier Detection
 
Sat
SatSat
Sat
 
Discrete time prey predator model with generalized holling type interaction
Discrete time prey predator model with generalized holling type interactionDiscrete time prey predator model with generalized holling type interaction
Discrete time prey predator model with generalized holling type interaction
 
intro
introintro
intro
 
MUMS Opening Workshop - UQ Data Fusion: An Introduction and Case Study - Robe...
MUMS Opening Workshop - UQ Data Fusion: An Introduction and Case Study - Robe...MUMS Opening Workshop - UQ Data Fusion: An Introduction and Case Study - Robe...
MUMS Opening Workshop - UQ Data Fusion: An Introduction and Case Study - Robe...
 
MUMS: Bayesian, Fiducial, and Frequentist Conference - Generalized Probabilis...
MUMS: Bayesian, Fiducial, and Frequentist Conference - Generalized Probabilis...MUMS: Bayesian, Fiducial, and Frequentist Conference - Generalized Probabilis...
MUMS: Bayesian, Fiducial, and Frequentist Conference - Generalized Probabilis...
 
Perspective of feature selection in bioinformatics
Perspective of feature selection in bioinformaticsPerspective of feature selection in bioinformatics
Perspective of feature selection in bioinformatics
 
Robust Immunological Algorithms for High-Dimensional Global Optimization
Robust Immunological Algorithms for High-Dimensional Global OptimizationRobust Immunological Algorithms for High-Dimensional Global Optimization
Robust Immunological Algorithms for High-Dimensional Global Optimization
 
Investigations of certain estimators for modeling panel data under violations...
Investigations of certain estimators for modeling panel data under violations...Investigations of certain estimators for modeling panel data under violations...
Investigations of certain estimators for modeling panel data under violations...
 
20080620 Formal systems/synthetic biology modelling re-engineered
20080620 Formal systems/synthetic biology modelling re-engineered20080620 Formal systems/synthetic biology modelling re-engineered
20080620 Formal systems/synthetic biology modelling re-engineered
 
International Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentInternational Journal of Engineering Research and Development
International Journal of Engineering Research and Development
 
Non-parametric analysis of models and data
Non-parametric analysis of models and dataNon-parametric analysis of models and data
Non-parametric analysis of models and data
 

Más de Stephen Gilmore

Testing Android apps with Robotium
Testing Android apps with RobotiumTesting Android apps with Robotium
Testing Android apps with Robotium
Stephen Gilmore
 
Fixing errors in Android Java applications
Fixing errors in Android Java applicationsFixing errors in Android Java applications
Fixing errors in Android Java applications
Stephen Gilmore
 
Continuing Android development
Continuing Android developmentContinuing Android development
Continuing Android development
Stephen Gilmore
 
Project management for the individual practical
Project management for the individual practicalProject management for the individual practical
Project management for the individual practical
Stephen Gilmore
 
Beginning Android development
Beginning Android developmentBeginning Android development
Beginning Android development
Stephen Gilmore
 
CS/SE Individual practical - DDMS and AVD
CS/SE Individual practical - DDMS and AVDCS/SE Individual practical - DDMS and AVD
CS/SE Individual practical - DDMS and AVD
Stephen Gilmore
 

Más de Stephen Gilmore (20)

Feedback on Part 1 of the Software Engineering Large Practical
Feedback on Part 1 of the Software Engineering Large PracticalFeedback on Part 1 of the Software Engineering Large Practical
Feedback on Part 1 of the Software Engineering Large Practical
 
Arrays in Objective-C
Arrays in Objective-CArrays in Objective-C
Arrays in Objective-C
 
Testing Android apps with Robotium
Testing Android apps with RobotiumTesting Android apps with Robotium
Testing Android apps with Robotium
 
Common Java problems when developing with Android
Common Java problems when developing with AndroidCommon Java problems when developing with Android
Common Java problems when developing with Android
 
Quick quiz on Objective-C
Quick quiz on Objective-CQuick quiz on Objective-C
Quick quiz on Objective-C
 
Getting started with Xcode
Getting started with XcodeGetting started with Xcode
Getting started with Xcode
 
Working with databases in Android
Working with databases in AndroidWorking with databases in Android
Working with databases in Android
 
Crash Course in Objective-C
Crash Course in Objective-CCrash Course in Objective-C
Crash Course in Objective-C
 
SELP: Debugging, AVDs and Manifests
SELP: Debugging, AVDs and ManifestsSELP: Debugging, AVDs and Manifests
SELP: Debugging, AVDs and Manifests
 
Beginning Android Development
Beginning Android DevelopmentBeginning Android Development
Beginning Android Development
 
Computer Science Large Practical coursework
Computer Science Large Practical courseworkComputer Science Large Practical coursework
Computer Science Large Practical coursework
 
Software Engineering Large Practical coursework
Software Engineering Large Practical courseworkSoftware Engineering Large Practical coursework
Software Engineering Large Practical coursework
 
Introduction to the CSLP and the SELP
Introduction to the CSLP and the SELPIntroduction to the CSLP and the SELP
Introduction to the CSLP and the SELP
 
Fixing errors in Android Java applications
Fixing errors in Android Java applicationsFixing errors in Android Java applications
Fixing errors in Android Java applications
 
Feedback on Part 1 of the Individual Practical
Feedback on Part 1 of the Individual PracticalFeedback on Part 1 of the Individual Practical
Feedback on Part 1 of the Individual Practical
 
Creating and working with databases in Android
Creating and working with databases in AndroidCreating and working with databases in Android
Creating and working with databases in Android
 
Continuing Android development
Continuing Android developmentContinuing Android development
Continuing Android development
 
Project management for the individual practical
Project management for the individual practicalProject management for the individual practical
Project management for the individual practical
 
Beginning Android development
Beginning Android developmentBeginning Android development
Beginning Android development
 
CS/SE Individual practical - DDMS and AVD
CS/SE Individual practical - DDMS and AVDCS/SE Individual practical - DDMS and AVD
CS/SE Individual practical - DDMS and AVD
 

Último

1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
QucHHunhnh
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
ciinovamais
 
Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdf
Chris Hunter
 

Último (20)

Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 
Asian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptxAsian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptx
 
Role Of Transgenic Animal In Target Validation-1.pptx
Role Of Transgenic Animal In Target Validation-1.pptxRole Of Transgenic Animal In Target Validation-1.pptx
Role Of Transgenic Animal In Target Validation-1.pptx
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701
 
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdf
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
Food Chain and Food Web (Ecosystem) EVS, B. Pharmacy 1st Year, Sem-II
Food Chain and Food Web (Ecosystem) EVS, B. Pharmacy 1st Year, Sem-IIFood Chain and Food Web (Ecosystem) EVS, B. Pharmacy 1st Year, Sem-II
Food Chain and Food Web (Ecosystem) EVS, B. Pharmacy 1st Year, Sem-II
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 

The Stochastic Simulation Algorithm

  • 1. Computer Science Large Practical: The Stochastic Simulation Algorithm (SSA) Stephen Gilmore School of Informatics Friday 5th October, 2012 Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 1 / 25
  • 2. Stochastic: Random processes Fundamental to the principle of stochastic modelling is the idea that molecular reactions are essentially random processes; it is impossible to say with complete certainty the time at which the next reaction within a volume will occur. Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 2 / 25
  • 3. Stochastic: Predictability of macroscopic states In macroscopic systems, with a large number of interacting molecules, the randomness of this behaviour averages out so that the overall macroscopic state of the system becomes highly predictable. It is this property of large scale random systems that enables a deterministic approach to be adopted; however, the validity of this assumption becomes strained in in vivo conditions as we examine small-scale cellular reaction environments with limited reactant populations. Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 3 / 25
  • 4. Stochastic: Propensity function As explicitly derived by Gillespie, the stochastic model uses basic Newtonian physics and thermodynamics to arrive at a form often termed the propensity function that gives the probability aµ of reaction µ occurring in time interval (t, t + dt). aµ dt = hµ cµ dt where the M reaction mechanisms are given an arbitrary index µ (1 ≤ µ ≤ M), hµ denotes the number of possible combinations of reactant molecules involved in reaction µ, and cµ is a stochastic rate constant. Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 4 / 25
  • 5. Stochastic: Grand probability function The stochastic formulation proceeds by considering the grand probability function Pr(X; t) ≡ probability that there will be present in the volume V at time t, Xi of species Si , where X ≡ (X1 , X2 , . . . XN ) is a vector of molecular species populations. Evidently, knowledge of this function provides a complete understanding of the probability distribution of all possible states at all times. Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 5 / 25
  • 6. Stochastic: Infinitesimal time interval By considering a discrete infinitesimal time interval (t, t + dt) in which either 0 or 1 reactions occur we see that there exist only M + 1 distinct configurations at time t that can lead to the state X at time t + dt. Pr(X; t + dt) = Pr(X; t) Pr(no state change over dt) M + µ=1 Pr(X − vµ ; t) Pr(state change to X over dt) where vµ is a stoichiometric vector defining the result of reaction µ on state vector X, i.e. X → X + vµ after an occurrence of reaction µ. Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 6 / 25
  • 7. Stochastic: State change probabilities Pr(no state change over dt) M 1− aµ (X)dt µ=1 Pr(state change to X over dt) M Pr(X − vµ ; t)aµ (X − vµ )dt µ=1 Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 7 / 25
  • 8. Stochastic: Partial derivatives We are considering the behaviour of the system in the limit as dt tends to zero. This leads us to consider partial derivatives, which are defined thus: ∂ Pr(X; t) Pr(X; t + dt) − Pr(X; t) = lim ∂t dt→0 dt Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 8 / 25
  • 9. Stochastic: Chemical Master Equation Applying this, and re-arranging the former, leads us to an important partial differential equation (PDE) known as the Chemical Master Equation (CME). M ∂ Pr(X; t) = aµ (X − vµ ) Pr(X − vµ ; t) − aµ (X) Pr(X; t) ∂t µ=1 Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 9 / 25
  • 10. The problem with the Chemical Master Equation The CME is really a set of nearly as many coupled ordinary differential equations as there are combinations of molecules that can exist in the system! The CME can be solved analytically for only a very few very simple systems, and numerical solutions are usually prohibitively difficult. D. Gillespie and L. Petzold. chapter Numerical Simulation for Biochemical Kinetics, in System Modelling in Cellular Biology, editors Z. Szallasi, J. Stelling and V. Periwal. MIT Press, 2006. Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 10 / 25
  • 11. Advertisement: Athena SWAN Last day to take part As part of the School of Informatics’ commitment to diversity, and to a workplace where all students are treated fairly, we have decided to undertake a gender equality culture survey. The focus of this survey is gender diversity, as this is a cross-cutting diversity issue where we feel we can have the greatest positive impact; contributing to development and advancement of the School, for all our students. Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 11 / 25
  • 12. Advertisement: Athena SWAN Last day to take part The survey results will tell us what we are doing well in terms of gender equality, and where we need to make any improvements. The School is committed to using this data to improve our policies and practices. This will also feed into our Athena SWAN application. The link to the survey is https: //www.survey.ed.ac.uk/informatics_student_culture2012/ Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 12 / 25
  • 13. Advertisement: Athena SWAN Last day to take part Your response will be confidential and only anonymous results will be seen by management, and communicated to staff (students). The survey should take only about 10 minutes to complete and will be available until 5th October (today). Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 13 / 25
  • 14. Stochastic simulation algorithms Stochastic simulation algorithms Gillespie’s Stochastic Simulation Algorithm (SSA) is essentially an exact procedure for numerically simulating the time evolution of a well-stirred chemically reacting system by taking proper account of the randomness inherent in such a system. Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 14 / 25
  • 15. Stochastic simulation algorithms Gillespie’s exact SSA (1977) The algorithm takes time steps of variable length, based on the rate constants and population size of each chemical species. The probability of one reaction occurring relative to another is dictated by their relative propensity functions. According to the correct probability distribution derived from the statistical thermodynamics theory, a random variable is then used to choose which reaction will occur, and another random variable determines how long the step will last. The chemical populations are altered according to the stoichiometry of the reaction and the process is repeated. Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 15 / 25
  • 16. Stochastic simulation algorithms Gillespie’s exact SSA (1977) As described by in “Stochastic Simulation Algorithms for Chemical Reactions” by Ahn, Cao and Watson, 2008 Suppose a biochemical system or pathway involves N molecular species {S1 , . . . , SN }. Xi (t) denotes the number of molecules of species Si at time t. People would like to study the evolution of the state vector X (t) = (X1 (t), . . . , XN (t)) given that the system was initially in the state vector X (t0 ). Example The enzyme-substrate example had N = 4 molecular species, (E , S, C , P), and the initial state vector X (t0 ) was (5, 5, 0, 0). If t = 200 we might find that X (t) was (5, 0, 0, 5). Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 16 / 25
  • 17. Stochastic simulation algorithms Gillespie’s exact SSA (1977) As described by in “Stochastic Simulation Algorithms for Chemical Reactions” by Ahn, Cao and Watson, 2008 Suppose the system is composed of M reaction channels {R1 , . . . , RM }. In a constant volume Ω, assume that the system is well-stirred and in thermal equilibrium at some constant temperature. Example The enzyme-substrate example had M = 3 reaction channels, f , b and p. Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 17 / 25
  • 18. Stochastic simulation algorithms Gillespie’s exact SSA (1977) As described by in “Stochastic Simulation Algorithms for Chemical Reactions” by Ahn, Cao and Watson, 2008 There are two important quantities in reaction channels Rj : the state change vector vj = (v1j , . . . , vNj ), and propensity function aj . vij is defined as the change in the Si molecules’ population caused by one Rj reaction, aj (x)dt gives the probability that one Rj reaction will occur in the next infinitesimal time interval [t, t + dt). Example The reaction f: E + S -> C has state change vector (−1, −1, 1, 0). Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 18 / 25
  • 19. Stochastic simulation algorithms Gillespie’s exact SSA (1977) As described by in “Stochastic Simulation Algorithms for Chemical Reactions” by Ahn, Cao and Watson, 2008 The SSA simulates every reaction event. With X (t) = x, p(τ, j | x, t)dτ is defined as the probability that the next reaction in the system will occur in the infinitesimal time interval [t + τ, t + τ + dτ ), and will be an Rj reaction. M By letting a0 (x) ≡ j=1 aj (x), the equation p(τ, j | x, t) = aj (x) exp(−a0 (x)τ ), can be obtained. Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 19 / 25
  • 20. Stochastic simulation algorithms Gillespie’s exact SSA (1977) As described by in “Stochastic Simulation Algorithms for Chemical Reactions” by Ahn, Cao and Watson, 2008 A Monte Carlo method is used to generate τ and j. On each step of the SSA, two random numbers r1 and r2 are generated from the uniform (0,1) distribution. From probability theory, the time for the next reaction to occur is given by t + τ , where 1 1 τ= ln( ). a0 (x) r1 Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 20 / 25
  • 21. Stochastic simulation algorithms Gillespie’s exact SSA (1977) As described by in “Stochastic Simulation Algorithms for Chemical Reactions” by Ahn, Cao and Watson, 2008 The next reaction index j is given by the smallest integer satisfying j aj (x) > r2 a0 (x). j =1 After τ and j are obtained, the system states are updated by X (t + τ ) := x + vj , and the time is updated by t := t + τ . This simulation iteration proceeds until the time t reaches the final time. Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 21 / 25
  • 22. Stochastic simulation algorithms Sampling from a probability distribution In order to sample from a non-uniform probability distribution we can think of an archer repeatedly blindly firing random arrows at a patch of painted ground. Because the arrows are uniformly randomly distributed they are likely to hit the larger painted areas more often than the smaller painted areas. Archer 133 110 50 50 40 30 Note We cannot predict beforehand where any particular arrow will land. Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 22 / 25
  • 23. Stochastic simulation algorithms Sampling from a probability distribution Here we interpret the picture as meaning that there are five reaction channels (the red reaction, the blue reaction, the green reaction, the yellow reaction and the black reaction). These have different propensities, with the red reaction being the most likely to fire and the black reaction being the least likely to fire. Archer 133 110 50 50 40 30 Note We know that the blue reaction fires because 110 + 50 > 133. Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 23 / 25
  • 24. Stochastic simulation algorithms Gillespie’s SSA is a Monte Carlo Markov Chain simulation The SSA is a Monte Carlo type method. With the SSA one may approximate any variable of interest by generating many trajectories and observing the statistics of the values of the variable. Since many trajectories are needed to obtain a reasonable approximation, the efficiency of the SSA is of critical importance. Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 24 / 25
  • 25. Stochastic simulation algorithms Excellent introductory papers T.E. Turner, S. Schnell, and K. Burrage. Stochastic approaches for modelling in vivo reactions. Computational Biology and Chemistry, 28:165–178, 2004. D. Gillespie and L. Petzold. System Modelling in Cellular Biology, chapter Numerical Simulation for Biochemical Kinetics,. MIT Press, 2006. Stephen Gilmore (School of Informatics) Stochastic simulation Friday 5th October, 2012 25 / 25