~ The algorithmic approach ~
1. Investigating the model assumptions
To begin with the creation of a good model, we started to develop a first simple version. The rules that are defining the model are called assumptions. For a model to be efficient, the balance must be found between the complexity and the simplicity. A model that is too simple might not be representative of reality whereas one that is to complexe might be too complicated to implement for very low improvements.
This is why the assumptions that are chosen in the first place should be as simple as possible. We started with a very simple set of rules to have an idea of the process.
To define the correct rules, it was important to understand the problem of how bacteria are growing and how minicells are produced in parallel.
What we want to model is a group of bacteria that is growing over time. But bacterial growth can be considered either constant or depending on the size of the E.coli. Since the observation of growth of colonies has shown that they grow exponentially, size dependent-growth seems more appropriate.
Figure 1. Comparison between constant growth in A and exponential growth in B
The size will be an important factor in our model. Looking at E.coli, the data say that its size ranges in most cases between 1 and 2 microns. Now that the rules have been defined on how bacteria grow, the division criteria has to be defined as well.
From biology, a cell can divide only once all its material has been duplicated. This can be interpreted as: when the cell’s size has doubled, it will divide into two equal sized cells. This gives a rule that when the threshold size of 2 microns is reached, the cell splits in 2.
With these main assumptions we already have cells that can grow and divide following what actually happens in biology. So to complete our simulation, the minicell production has to be added. As we said, it is an unequal division.
Despite our research, we have not found any model of how minicells are produced. This is therefore the major challenge of modelling. We had to find out ways to determine if some factors exist that can monitor minicell production. While doing simulations, the good way of doing it is to try several different assumptions and observe which one fits the best to the reality.
There are still some facts about minicells that are known and that we tried to characterize during our iGEM project (see the minicell characterization section).
Minicell are derived from E.coli cells and are produced during the unequal division of these so-called mother cells.
It is the same mechanisms used for either splitting into two equal sized cells or splitting into a cell and a minicell.
So implementing minicell production the same way as implementing the bacterial division seems biologically plausible. It is also interesting for the model because it is very simple to include. This is a very strong assumption that we based ourselves on for the entire simulation part. Even if the mechanism is the same, what are the factors that initiate this unequal division is still an open question.
Either that phenomenon could be
Monitored by the cell and thus issued from a constant or size-dependent production rate.
A completely random phenomenon with no regulation.
Minicell also have different sizes. From our experiments, it is not evident what their size distribution is. Once again several options can be investigated, minicells could
Have a preferential size and the distribution is centered around it
Have no preference for a particular size and each size in the minicell size range has the same chance of being produced
2. Programming of the first version
The first step to write the implementation was to figure out what the parameters are according to our assumptions. Some of the parameters are going to be fixed during the entire computation. They are all the thresholds and the limits, namely E.coli maximal and minimal size and minicell size or size range.
Conversely, the other parameters are going to be variables and their value will change during the simulation.
Then, the simulation needs initial conditions. As we want to observe the growth of a cell culture, the initialisation will be done using a set of cells of defined sizes. We decided to have only one cell of size 1 and this will be our culture at time=0.
The script will simulate growth, regular division and unequal division mechanisms at each time point.
Figure 2. Growth simulation curve of a cell lineage
We run simulations for size-depend (B) minicell production. The minicell production rate has been set to m=0.02. On the graph, the growth of one minicell and its lineage can be observed. The grey dots and underscores represent respectively a division and a minicell synthesis. On a low timescale we can’t see the ratio of mother cell and minicell. However, for a 5 hour culture we found the following counts:
Number of cells = 34316   &   Number of minicells = 14420
Also, what we observe is that both populations grow exponentially but the ratio of minicells/mothercells seems to be preserved and is around 0.4 with our parameters and assumptions.
Figure 3. Curve of the minicell and mothercell population (A)
and their ratio (B) over time
Thanks to this model, it is already possible to have an idea of how minicell production is happening at the scale of a few cells.
However, what is more interesting is to study what happens in real laboratory conditions where bacterial cultures are made of several millions of cells. By doing this, the simulation can actually be compared to real experiments to show if it fits reality.