Team:Edinburgh/modelling/maths

From 2014.igem.org

The ODE Model

Formulae

Description of Parameters

Parameters Description
P1, P2, P3 Amount of bacteria for each population.
r Rate of bacterial growth.
k Capacity: number of bacteria when the steady state for the amount of bacteria is reached.
th1, th2 Thresholds for population 1, which establish the required amount of bacteria from population 2 and 3 (respectively) for this strain to start growing.
th3, th4 Thresholds for population 2, which establish the required amount of bacteria from population 1 and 3 (respectively) for this strain to start growing.
th5, th6 Thresholds for population 3, which establish the required amount of bacteria from population 1 and 2 (respectively) for this strain to start growing.
s1, s2, s3 Concentration of signalling metabolites.
αp Rate of signal production from mRNA (translation).
βp Rate of signal degradation.
signal_uptake Rate of signal absorption by bacteria.
m1, m2, m3 Concentration of the three different mRNA molecules (one for each signalling metabolite).
αm Rate of mRNA production.
βm Rate of mRNA degradation.

Description of the Model

Formulas 1, 2 and 3 correspond to the growth of the three populations (P1, P2 and P3). The first part of the formula is the logistic growth, and indicated in figure 3. r is a constant growth rate being the same for the three populations. If more details are to be added, this can be changed for each population to have its own growth rate. k is the capacity, the maximum amount of P1, P2 or P3 obtained when the logistic growth reaches the steady state.

The second part of these formulae correspond to the biological AND gate. Each input is modelled as a logistic function (figure 1), which approximates these inputs as biological binary signals (high and low concentrations). This function is widely used in artificial neural networks as activation functions, so I thought it could model these biological inputs accurately.


Figure 1: Logistic function. The in exion point is centered at 0.

What is the th parameter (th1, th2 etc.) in the exponents? The logistic function has a property: adding a positive value to the exponent shifts the function. If no value is added, the inflexion point is centered at 0 (figure 1), but we want the inputs to be positive (near 1) once a certain threshold is reached. This is just a convention for our modelling. The th values added to these exponents are such thresholds. These are defined as parameters, so they can be varied.

Why is the output of the AND gate defined as the product of the two in- puts? Following the basics of boolean algebra, an AND gate is defined as the boolean product of the inputs, so that the output is 0 in case one of the inputs is 0: 01 = 0, 11 = 1, etc. An OR gate would be defined as the boolean sum: 0 + 1 = 1, 1 + 1 = 1, 0 + 0 = 0, etc. This case involves continuous values instead of binary ones, ranging from 0 to 1. However, the product still works very well. For example, if one input 1 is 0:1 and input 2 is 0.9, the product 0.10.9 = 0.09 returns a very small value, approximating the boolean product 01 = 0 in a realistic way. If inputs are 0.90.9 = 0.81 the product returns a high value.

Formulas 4, 5,6 correspond to the signal translation from mRNA, where production and natural degradation are involved, including the signal uptake done by bacteria, which also involves the degradation of signals due to the metabolic reactions involved inside the cells which absorb it.

Formulas 5, 6,7 just involve the mRNA production of degradation. This mRNA is the one used to produce the signals, and depends directly on the current amount of population (see how P1, P2 and P3 are involved in these equations).

Output

In this section, an explanation of the simulation is given. Figure 2 shows the amount of bacteria the three different bacterial strains. Population 1 depends upon population 2 and 3, i.e., it will not start growing faster till population 2 and 3 reach a larger amount of bacteria.


Figure 2

BSim Model

Agent-based models are a powerful tool to create and simulate models of bacte- rial populations where spatial location is important. We used BSim (an agent- based models library for Java) to create an animation of what the system would look like inside a bioreactor (figure 3). However, the model is a simplification which would require further development to be as realiable as the ODE model. In this case, there is a global condition which allows the blue population to grow once the other two populations reach a certain threshold. The improvements would involve the implementation of chemical discussion of the signals through the media and the corresponding ODE equations inside the cells for the transcription, translation and consumption of signals.

In summary, a complete simulation with BSim would be very powerful and reliable when implementing the inter-cellular interactions with the tools agent- based model others (chemical diffusion, for example), and the intracellular func- tionallity with ODEs, also allowed by this library. We encourage future teams working on population-based systems to create a full ODE model and an agent- based model (ABM) to compare its performance.


Figure 3

Our intention was to create a web interface which abstracts the modeller from programming in Java when building and ABM. Due to a lack of time it was not possible to do, but we encourage future teams to do it or supervisors to propose this idea as a project for their students.

Simulation of Degradation Rates

A more simple task consisted on the simulation of different degrons and their effects with a bistable system.