I describe the formulation of a stochastic, non-autonomous toggle switch to model the dynamics of a gene regulatory network.
A toggle switch consists of two genes that mutually repress each other, and in the formulation that I use, they are also capable of auto-activation [Verd et al., 2014](https://bmcsystbiol.biomedcentral.com/ articles/10.1186/1752-0509-8-43). The basic formulation of the toggle switch involves a pair of coupled ordinary differential equation (ODE) terms:
In the ODEs, the rate of change of mRNA levels is a function of a production term, modelled by a hill function, and a decay term. In theabsence of a stochastic term, the toggle switch is deterministic - multiple simulations carried out at the same initial conditions with the same parameter set will always yield the same output trajectory. In addition, only the state-variables (X and Y) change with time and all parameter values are held constant throughout the simulations - the formulation is autonomous.
- toggle_equations.py python file contains the ODEs for the toggle switch
- steady_states.py python file describes how the stability of the steady states are determined. Essentially, it involves a linear stability analysis and the examination of the jacobian.
- sim_funcs.py python file describes the simulation of the stochastic oggle switch with the Euler-Maruyama scheme.
- attractor_stats.py python file describes how I determined several important properties of the stochastic trajectories - first passage time, exit time etc.
- plotting_funcs.py contains two helper functions used in making some of the plots
- mcmc_tcf.py contains the code for the ensemble MCMC method implemented from the emcee package.
In 01_deterministic.ipynb, I briefly explore the consequences of the deterministic, autonomous genetic toggle switch.
However, gene expression occurs at the molecular level and in certain circumstances, stochasticity can play a significant role in the process. By converting the continuous deterministic ODE representation above into a stochastic representation written in the form of the Chemical Langevin Equation Gillespie, 2000, I explore the effects of stochasticity in the toggle switch in 02_stochastic.ipynb .
The above two notebooks explore the toggle switch using an autonomous formulation. In reality, during embryonic development, cells experience a constantly changing signalling environment. To reflect this, I incorporated explicit time-dependence to the the external activation parameters and explored the effects of non-autonomy in silico. In 03_nonAutonomy.ipynb , I discover that some cells 'lag' behind in the wrong attractor, providing a possible mechanistic basis for the existence of 'rebellious' cells in my experimental data.
I sought to fit the computational models to the number of NMps at each developmental stage. I fitted a simple curve to the count data in 04_curve_fitting.ipynb
Using the stochastic toggle switch model, I simulated several trajectories initialised from an 18 somite-stage zebrafish HCR image. I then examined the gene regulatory networks that yielded a good fit to the data and explored the parameter values returned from the MCMC simulations. The results are still being finalised and are documented in 05_MCMC_fitting_autonomous.ipynb and 05b)MCMC_fitting_non-autonomous.ipynb .