Presentation on theme: "Mathematical Modelling for Synthetic Biology aGEM Workshop on Mathematical Modelling July 22, 2012, Lethbridge, AB Brian Ingalls Department of Applied."— Presentation transcript:
Mathematical Modelling for Synthetic Biology aGEM Workshop on Mathematical Modelling July 22, 2012, Lethbridge, AB Brian Ingalls Department of Applied Mathematics University of Waterloo Waterloo, ON
Workshop Outline Introduction to mathematical modelling of biochemical reaction networks Modelling of gene regulatory networks Lab I: simulation of kinetic models Tools for model analysis Lab II: model-based design of gene regulatory networks
Models in Science and Engineering Models are abstractions of reality
Models in Science and Engineering Models are abstractions of reality Models can be physical Ball-and-stick model of molecular structure http://mariovalle.name/ChemViz/representations/index.htmlhttp://srxawordonhealth.com/2012/04/ Mouse model of obesity
Models in Science and Engineering Models are abstractions of reality Models can be physical or conceptual http://www.nature.com/scitable/topicpage/gpcr-14047471 Interaction diagram model of G-protein signalling Kinetic model of bacterial chemotaxis signalling pathway
Models in Science and Engineering Models are abstractions of reality Models can be physical or conceptual Mathematical models are mechanistic (based on physico-chemical laws) and predictive (allow inferences beyond the data used for their construction)
How are mathematical models used in molecular biology? Models summarize data Models allow of falsification of hypotheses Models allow exploration of system behaviour (in silico experiments) Model-based design allows easy exploration of design space
Numerical simulation of differential equation models Approximate derivative by a difference quotient Rearrange to yield an update rule:
Implemented in MATLAB, XPPAUT, Copasi, Mathematica, Maple, … Tutorials in notes for XPPAUT (freeware, simulation and analysis of differential equation models) MATLAB (licensed, general-use computational software) Repeated application of the update rule (starting from known initial concentration):
Example network model networ k simulation model
Separation of time-scales Every model is formulated around a specific time-scale Processes occurring on a slower time-scale are treated as frozen in time Processes occurring on a faster time-scale are presumed to occur instantaneously
Treating rapid processes Rapid equilibrium approximation: presume at all times. Quasi-steady-state approximation: presume [A] is in steady-state with respect to [B] at all times.
Sensitivity analysis Measure sensitivity of steady-state species concentrations to changes in model parameters
Applications of Sensitivity analysis Identification of optimal drug targets (steps with high sensitivities) Bakker et al. 1999, ‘What controls glycolysis in bloodstream form Trypanosoma brucei? JBC 274.
Applications of Sensitivity analysis Interpretation of regulation schemes: role of negative feedback
Cooperativity: Hill function kinetics Processes involving multiple interacting components can exhibit sigmoidal activity (e.g. cooperative binding of O 2 to hemoglobin) Hill function (empirical fit)
Lab I Goals: 1)Simulate a differential equation model in XPPAUT 2)Determine sensitivity coefficients for a simple network model 3)Explore system behaviour in models of gene regulatory networks: the Collins toggle switch, the repressilator, the Hasty/Stricker oscillator
Lab I 1)Simulate a differential equation model in XPPAUT a) Open XPPAUT with file Lab1.ode or generate your own file, content is simply: par k=1 x’=-k*x init x=1 done b) Select Initialconds|Go (I|G). Resize the window with Window/zoom|Fit (W|F). Then choose Initialconds|New (I|N) and run a simulation with initial value of x set to 0.5. c) Open the param window, change the value of k to 1. Re-run your simulations from x(0)=1 and x(0)=0.5. How has the behaviour changed? 2) Determine sensitivity coefficients for a simple network model a)Open XPPAUT with file Lab2.ode b)Select Initialconds|Go (I|G). Use the Data window to view all four species concentrations. Select Graphic stuff|Add curve (G|A) to add additional time-series to the plot. c)Open the param window. Explore the effect of changing the parameter values. Consider the sensitivities of the steady state of [A] with respect to (i) k1; (ii) k2; and (ii) k3. 3 ) Explore system behaviour in models of gene regulatory networks: the Collins toggle switch, the repressilator, the Hasty/Stricker oscillator a) Open XPPAUT with one of the files Lab_toggle.ode, Lab_repressilator.ode, or Lab_hastyosc.ode b) Select Initialconds|Go (I|G). Verify the system’s desired behaviour: oscillations or bistability (for bistability, modify the initial conditions). c) Explore the effect of modifying the model parameters (param window) on the desired behaviour
Tools for analysis of dynamic mathematical models
Lab II Goal: Model-based design analysis of the Collins toggle switch and the Hasty/Stricker oscillator
Lab II 1)Model-based design analysis of the Collins toggle switch a)Open XPPAUT with Lab_toggle.ode. b)Generate a phase plane (Viewaxis|2D -- select P1 and P2 for the axes, set the window to [0,4]x[0,4]). Select Initialconds|mIce (I|I) and generate multiple trajectories c)Generate the nullclines: Nullclines|New (N|N) d)Open the param window and change b to b=1. Reconstruct trajectories and nullclines. (Erase the previous phase portrait.) How has the behaviour changed? e)Explore a range of values for each parameter. What changes improve the robustness of the bistability? Which changes eliminate it? What design choices can you recommend? 2 ) Model-based design analysis of the Hasty/Stricker oscillator relaxation a)Open XPPAUT with Lab_hastyosc.ode b)Repeat (b) and (c) above. (Set the window to X,Y [0,4]x[0,4]). c)Open the param window and change alpha to alpha=5. Reconstruct trajectories and nullclines. (Erase the previous phase portrait.) How has the behaviour changed? d)Explore a range of values for each parameter. What changes eliminate the oscillations? What design choices can you recommend? 3 ) Stability analysis Determine the robustness of steady-state stability by determining the eigenvalues of the system Jacobian: select Sing. pts.|Mouse, click near an equilibrium, print eigenvalues (negative real part signifies stability) 4) Bifurcation analysis Generate a bifurcation diagram. Set parameters to their default values. Run a trajectory to steady state. Hit (I|L) a few times to ensure steady state has been reached. Open AUTO: F|A. Set the parameter of interest to Par1 in the Parameter window. Set the window size in the Axes window. Set the parameter value range (Par Min and Par Max) in the Numerics window. Tap Run.