25/10/20151andrew phillips - 2006 simulating biological systems in the stochastic -calculus andrew...
Post on 03-Jan-2016
218 Views
Preview:
TRANSCRIPT
20/04/23 1Andrew Phillips - 2006
Simulating Biological Systems in the Stochastic
-calculusAndrew Phillips
with Luca Cardelli
Microsoft Research, Cambridge UKhttp://research.microsoft.com/~aphillip/spim
20/04/23 3Andrew Phillips - 2006
Modelling Biology The Human Genome project:
Scientists hoped that DNA code would help predict system behaviour Functional meaning of the code is still a mystery
Systems Biology: Understand and precisely describe the behaviour of biological systems
Two complementary approaches: Look at experimental results and “infer” general system properties Build detailed models of systems and test these in the lab
Biological Modelling: Need tools for modelling complex parallel systems. Should also scale up to very large systems. The beginnings of a biological programming language...
20/04/23 4Andrew Phillips - 2006
Programming BiologyLanguages for complex, parallel computer systems:
Languages for complex, parallel biological systems:
stochastic -calculus
20/04/23 5Andrew Phillips - 2006
Reactions vs. ComponentsTraditional modelling: model individual reactions
Stochastic -calculus: model components
20/04/23 6Andrew Phillips - 2006
Build complex models incrementally, by direct composition of simpler components:
Compositional Modelling
20/04/23 7Andrew Phillips - 2006
Model Analysis A mathematical programming language
A range of analysis techniques (types, equivalences, model checking)
Could provide insight into fundamental properties of biological systems
20/04/23 8Andrew Phillips - 2006
Related Work Stochastic -calculus proposed by [Priami, 1995]
Used to model and simulate a range of biological systems: RTK MAPK pathway [Regev et al., 2001] Gene Regulation by positive Feedback [Priami et al., 2001] Cell Cycle Control in Eukaryotes [Lecca and Priami, 2003]
First simulator for stochastic -calculus [BioSPI] A subset of -calculus with limited choice Compiles a calculus process to an FCP procedure Executed by the FCP Logix platform [Silverman et al., 1987]
20/04/23 11Andrew Phillips - 2006
Graphical Stochastic -calculus
Display stochastic -calculus models as graphs [Phillips and Cardelli, Bioconcur 2005] Helps make the stochastic -calculus more accessible Defined a graphical calculus and graphical execution model Proved equivalent to the stochastic -calculus [Phillips, Cardelli and Castagna, TCSB 2006]
PROVED EQUIVALENT
20/04/23 12Andrew Phillips - 2006
The Stochastic Pi Machine A simulation algorithm for stochastic -calculus
[Phillips and Cardelli, Bioconcur 2004] Based on standard theory of chemical kinetics [Gillespie 1977] The probability of a reaction is proportional to the rate of the reaction
times the number of reactants. Proved correct with respect to the stochastic -calculus.
PROVED CORRECT
20/04/23 13Andrew Phillips - 2006
The SPiM Simulator Simulation algorithm mapped to functional code (OCaml / F#)
Used as the basis for implementing the SPiM simulator. [Phillips, SPiM 2006] Correct specification improves confidence in simulation results Close correspondence between formal algorithm and functional code Used in various research centres (UK, France, Italy, Sweden...)
http://research.microsoft.com/~aphillip/spim
20/04/23 14Andrew Phillips - 2006
Gene Networks Library Proposed a combinatorial library of gene gates
[Blossey, Cardelli, Phillips, TCSB 2006] Used as building blocks to model complex gene networks Explain behaviour of controversial gene networks engineered
in vivo
© 2000 Elowitz, M.B., Leibler. S. A Synthetic Oscillatory Network of Transcriptional Regulators. Nature 403:335-338.
20/04/23 15Andrew Phillips - 2006
Immune System Modelling Model of MHC Class I Antigen Presentation
A key pathway in the immune system [Goldstein, MPhil Dissertation 2005] Ongoing collaboration with Immunologists at Southampton University [Cardelli, Elliott, Goldstein, Phillips, Werner. In preparation]
© 2003 Nature Reviews Immunology, 3(12):952–96.© 2003 Current Opinion in Immunology, 15:75–81.
20/04/23 17Andrew Phillips - 2006
Gene with Negative Control
let Neg(a,b) = do delay@t; (Protein(b) | Neg(a,b)) or ?a; delay@u; Neg(a,b)
and Protein(b) = do !b; Protein(b) or delay@d
Graph.txt
rate(a,b,c) = 1.0u = 0.0001
d = 0.001t = 0.1
Source.txt
Neg(a,b)
ba
A gene that produces protein b and is blocked by protein a
20/04/23 24Andrew Phillips - 2006
Repressilator [Elowitz and Leibler, 2000]
© 2000 Elowitz, M.B., Leibler. S. A Synthetic Oscillatory Network of Transcriptional Regulators. Nature 403:335-338.
20/04/23 25Andrew Phillips - 2006
Repressilator Combination of Neg gates Program: Neg(a,b) | Neg(b,c) | Neg(c,a)
b
Neg(a,b)
Neg(c,a)
Neg(b,c)
ca
20/04/23 26Andrew Phillips - 2006
Repressilator: Debugging (1)
One copy of Neg(a,b), Neg(b,c), Neg(c,a) Any protein can be transcribed at rate 0.1
Graph.txt
20/04/23 27Andrew Phillips - 2006
Repressilator: Debugging (2)
Protein(b) can block Neg(b,c) with fast rate 1.0
20/04/23 28Andrew Phillips - 2006
Repressilator: Debugging (3)
Neg(b,c) is blocked. No Protein(c) can be transcribed.
20/04/23 29Andrew Phillips - 2006
Repressilator: Debugging (4)
Protein(a) can block Neg(a,b) with fast rate 1.0
20/04/23 30Andrew Phillips - 2006
Repressilator: Debugging (5)
Neg(a,b) is blocked. No Protein(b) can be transcribed.
20/04/23 31Andrew Phillips - 2006
Repressilator: Debugging (363)
All of Protein(b) eventually degrades at rate 0.001 Meanwhile, lots of Protein(a) are transcribed
20/04/23 32Andrew Phillips - 2006
Repressilator: Debugging (2173)
Eventually, Neg(b,c) unblocks at rate 0.0001 Protein(c) can now be transcribed...
20/04/23 33Andrew Phillips - 2006
0
20
40
60
80
100
120
140
0 20000 40000 60000 80000 100000 120000 140000 160000 180000 200000
!a
!b
!c
Repressilator: Results Alternate oscillation of proteins: a,c,b,a,c,b...
Results
20/04/23 34Andrew Phillips - 2006
Repressilator [Elowitz and Leibler, 2000]
A gene network engineered in live bacteria. Modelled as a simple combination of Neg gates:
Neg(LacI,TetR)
| Neg(TetR,LambdacI)
| Neg(LambdacI,LacI)
| Neg(TetR,GFP)
Source.txt
0
20
40
60
80
100
120
140
160
0 20000 40000 60000 80000 100000 120000 140000 160000 180000 200000
!TetR
!LambdacI
!LacI
!GFP
Results
© 2000 Elowitz, M.B., Leibler. S. A Synthetic Oscillatory Network of Transcriptional Regulators. Nature 403:335-338.
20/04/23 35Andrew Phillips - 2006
Refined Neg Gate
let Neg(a,b) = (
new u1@10000.0
do delay@t; (Protein(b) | Neg(a,b))
or !a(u1); Blocked(a,b,u1)
)
and Blocked(a,b,u1) = (
new u2@0.0001
do ?u1; Neg(a,b)
or !a(u2); ?u2; Blocked(a,b,u1)
)
and Protein(b) = (
do delay@d
or ?b(u); !u; Protein(b)
)
Graph.txt
Source.txt Refined Neg gate with cooperative binding Same main program: Neg(a,b) | Neg(b,c) | Neg(c,a)
20/04/23 36Andrew Phillips - 2006
Neg Gate with Inhibitor
let Negp(a:chan,b:chan,r:chan) =
do delay@t; (Proteinp(b,r) | Negp(a,b,r))
or ?a; delay@u; Negp(a,b,r)
and Proteinp(b:chan,r:chan) =
do !b; Proteinp(b,r)
or ?r
or delay@d
let Inh(r:chan) = !r; Inh(r)
Graph.txt
rate(a,b,r) = 1.0u = 0.0001
d = 0.001t = 0.1
Source.txt
Negp(a,b,r)
ba
r
20/04/23 37Andrew Phillips - 2006
Bacteria Logic Gates [Guet et al., 2002]
3 genes: tetR, lacI, cI 5 promoters: PL1, PL2, PT, P-, P+ 125 possible networks consisting of 3 promoter-gene units 2 inputs: IPTG (represses Tet), aTc (represses Lac) 1 output: GFP (linked to P-)
© 2002 Guet et al. Combinatorial Synthesis of Genetic Networks. Science 296 (5572): 1466 - 1470
20/04/23 38Andrew Phillips - 2006
Bacteria Logic Gates [Guet et al., 2002]
IPTG and aTc as boolean inputs, GFP as boolean output
© 2002 Guet et al. Combinatorial Synthesis of Genetic Networks. Science 296 (5572): 1466 - 1470
20/04/23 39Andrew Phillips - 2006
Combinatorial Library of Genes
Model complex gene networks from simpler building blocks. Use simulation to formulate hypotheses about system behaviour.
D038() = tet() | lac() | cI() | gfp()tet() = Negp(TetR,TetR,aTc)lac() = Negp(TetR,LacI,IPTG)cI() = Neg(LacI,lcI)gfp() = Neg(lcI,GFP)
D038() D038() | Inh(aTc)D038() | Inh(IPTG)D038() | Inh(aTc) | Inh(IPTG)
20/04/23 40Andrew Phillips - 2006
Gene Networks Designed in Silico
with
Luca Cardelli (Microsoft Research)
20/04/23 41Andrew Phillips - 2006
Evolution in Silico [Francois and Hakim, 2004]
Gene networks can be evolved in silico to perform specific functions, e.g. a bistable switch:
Genes a and b can produce proteins A and B respectively: A and B can bind irreversibly to produce AB, which degrades. A can also bind reversibly to gene b, to inhibit transcription of B
20/04/23 42Andrew Phillips - 2006
Stochastic -calculus Model
val tB = 0.37 val tB' = 0.027
val dB = 0.002 val unbind = 0.42
let b() =
do delay@tB; ( B() | b() )
or ?inhibit(u); b_A(u)
and b_A(u:chan) =
do !u; b()
or delay@tB'; ( B() | b_A(u) )
and B() =
do delay@dB
or ?bind(u); B_A(u)
and B_A(u:chan) = ()
val tA = 0.20
val dA = 0.002 val dAB = 0.53
new bind@0.72 new inhibit@0.19
let a() = delay@tA; ( A() | a() )
and A() = (
new u@unbind:chan
do delay@dA
or !bind(u); A_B(u)
or !inhibit(u); A_b(u)
)
and A_b(u:chan) = ?u; A()
and A_B(u:chan) = delay@dAB
run (a() | b())
20/04/23 43Andrew Phillips - 2006
Bistable Network: Protein A
Gene a can transcribe a new protein A at rate tA
20/04/23 44Andrew Phillips - 2006
Bistable Network: Protein A
Protein A can bind to gene b to inhibit production of protein B
20/04/23 46Andrew Phillips - 2006
Protein A can unbind from gene b using private channel u
Bistable Network: Protein A
u
20/04/23 48Andrew Phillips - 2006
Gene b can transcribe a new protein B with rate tB
Bistable Network: Protein B
20/04/23 49Andrew Phillips - 2006
Bistable Network: Protein B
Gene a can transcribe a new protein A at rate tA
20/04/23 52Andrew Phillips - 2006
Bistable Network: Protein B
Complex AB can degrade with rate dAB
u
20/04/23 54Andrew Phillips - 2006
Bistable Network: Results Random Initialisation:
Stable Switching:
20/04/23 55Andrew Phillips - 2006
Immune System Modelling:
MHC I Antigen Presentationwith
Luca Cardelli (MSRC)Leonard Goldstein (Cambridge University)
Tim Elliott (Southampton University)Joern Werner (Southampton University)
20/04/23 56Andrew Phillips - 2006
MHC I Antigen Presentation
A key pathway of the immune system:
MHC I complexes can signal when a cell is infected.
They present peptides (small pieces of virus or bacteria) at the surface of infected cells.
A way of marking infected cells for destruction.
© 2003 Jonathan W. Yewdell, Eric Reits, and Jacques Neefjes. Making sense of mass destruction: quantitating MHC class I antigen presentation. Nature Reviews Immunology, 3(12):952–96.
20/04/23 57Andrew Phillips - 2006
MHC I Antigen Presentation [Copyright 2005 from Immunobiology, Sixth Edition by Janeway et al. Repro
duced by permission of Garland Science/Taylor & Francis LLC.]
20/04/23 58Andrew Phillips - 2006
MHC I Assembly MHC I complexes follow an assembly line:
© 2003 Antony N Antoniou, Simon J Powis, and Tim Elliott. Assembly and export of MHC class I peptide ligands. Current Opinion in Immunology, 15:75–81.
20/04/23 59Andrew Phillips - 2006
Peptide Selection: Flytrap Model
MHC I captures peptides like a Venus Flytrap. Sensitive to disease peptides only.
peptide enters open MHC
disease peptide is capturedand presented at cell surface
non diseasepeptide escapes
20/04/23 64Andrew Phillips - 2006
Simulation Results A specific molecule called Tapasin allows disease peptides to be
rapidly selected in favour of non-disease peptides.
Next steps: Investigate influence of tapasin in the lab. Incrementally build a more detailed immune system model. Construct a minimal functional model of the system.
No Tapasin Always with Tapasin Transient binding to Tapasin
20/04/23 65Andrew Phillips - 2006
Simplified Flytrap Similar results obtained with a simpler model Hypothesis: Tapasin is the 2nd stage of a 2-stage filter Perhaps an explanation of system function.
20/04/23 66Andrew Phillips - 2006
Future Plans Improve core SPiM algorithm (scalability, debugging, analysis) Immune System Modelling (Southampton University) Improve the graphical interface for SPiM (ENS Paris) Extend SPiM with membranes Stochastic -calculus and ODEs (IRI Lille, CCBI Cambridge.) Interface SPiM with stochastic analysis tools (Birmingham
University) Collaborate with medical researchers to model and simulate a
range of biological systems Collaborate with pharmaceutical industry to design a next-
generation programming language for Systems Biology
top related