Difference between revisions of "Team:Grenoble-Alpes/Model"

Line 121: Line 121:
  
 
<p>The variation of the number of phages V over time is:</p>
 
<p>The variation of the number of phages V over time is:</p>
A gain equal to the number of phages released after the lysis of previously infected bacteria, where h is the average number of phages created inside an infected host : +h*b*S(t-K)*V(t-K)
+
<ul><li><p>A gain equal to the number of phages released after the lysis of previously infected bacteria, where h is the average number of phages created inside an infected host: <b>+h*b*S(t-K)*V(t-K)</b></p></li>
A loss equal to the number of phages that infected bacteria : -b*S*V
+
<li><p>A loss equal to the number of phages that infected bacteria: <b>-b*S*V</b></p></li>
A loss equal to the degradation of phages in the solution : -m*V
+
<li><p>A loss equal to the degradation of phages in the solution: <b>-m*V</b></p></li></ul>
  
As we can see the equations here are relatively simple, and the only real difficulty to solve them is the presence of a Delay Differential Equation (DDE) in the form of S(t-K)*V(t-K).
+
<p>As we can see the equations here are relatively simple, and the only real difficulty to solve them is the presence of a Delay Differential Equation (DDE) in the form of <b>S(t-K)*V(t-K)</b>.</p>
  
To solve those equations we chose to use MATLAB, because we were used to this computing language (and because we obtained a license through the iGEM competition framework). Thanks to this computing environment we can solve those DDE with a built-in function called “dde23”.  
+
<p>To solve those equations we chose to use MATLAB because we were used to this computing language (and because we obtained a license through the iGEM competition framework). Thanks to this computing environment we can solve those DDE with a built-in function called “dde23”. </p><p>
This function comes with some options, one of which allows us to indicate the function what happen for t<K. In our case we want that for t<K the number of phages is equal to 0. Indeed in this modelling we assume that we add phages for t=0.
+
This function comes with some options, one of which allows us to indicate the function what happens for t < K. In our case, we want that for t<K the number of phages is equal to 0. Indeed in this modeling, we assume that we add phages for t = 0.</p>
  
We started by implementing the system as described in the article, then to obtain equations that fitted our need we added :
+
<p>We started by implementing the system as described in the article, then to obtain equations that fitted our need we added :
a variable D representing the quantity of DNA freed during the lysis of the bacteria by the phage
+
<ul><li><p>A variable <b>D</b> representing the quantity of DNA freed during the lysis of the bacteria by the phage</p></li>
a carrying capacity C (modelling the fact that a solution can be saturated in term of bacteria),
+
<li><p>A carrying capacity <b>C</b> (modeling the fact that a solution can be saturated in term of bacteria)</p></li>
a degradation factor r (for bacteria) and l (for DNA)
+
<li><p>A degradation factor <b>r</b> (for bacteria) and l (for DNA)</p></li>
a factor d modelling the average quantity of DNA freed after lysis
+
<li><p>A factor <b>d</b> modeling the average quantity of DNA freed after lysis</p></li></ul>
  
  
Here are the final equation in our code:
+
<p>Here are the final equation in our code:</p>
  
 
<br>
 
<br>
Line 143: Line 143:
 
<br>
 
<br>
  
It is important to note that we were able to implement the DNA variable D quite easily because we did implement a toxin variable in order to work with Ruth from the Nottingham iGEM team. After working with Ruth we also decided to use a carrying capacity factor.  And we ended up agreeing on the fact that the carrying capacity is a common factor for both S and I (therefore S+R+ICand not S+I+R3*C).
+
<p>It is important to note that we were able to implement the DNA variable D quite easily because we did implement a toxin variable in order to work with Ruth from the Nottingham iGEM team. After working with Ruth we also decided to use a carrying capacity factor.  And we ended up agreeing on the fact that the carrying capacity is a common factor for both S and I (therefore <b>(S+R+I)/C</b> and not <b>(S+I+R3)*C</b>.</p>
  
Implementing a tool to compare different type of phages-bacteria interaction:
+
<p>Implementing a tool to compare different type of phages-bacteria interaction:</p>
  
Thanks to our iGEM Meet’up in Marseille we were able to explain a first version of this modelling, and on the advice of one of the participant we looked into implementing a tool for comparing the different type of phages-bacteria interaction.
+
<p>Thanks to our iGEM Meet’up in Marseille we were able to explain the first version of this modeling and on the advice of one of the participants we looked into implementing a tool for comparing the different type of phages-bacteria interaction.</p>
  
  
We would have like to do this with as much phages as possible, unfortunately we did not manage to obtain key parameters for a lot of different strains of phages, therefore we only offer to the user the possibility to choose between 2 phages-bacteria interaction : C.jejuni and C.difficile for which we had complete set of parameters (respectively thanks to this article and to our partnership with Nottingham).
+
<p>We would have like to do this with as many phages as possible, unfortunately we did not manage to obtain key parameters for a lot of different strains of phages, therefore we only offer to the user the possibility to choose between 2 phages-bacteria interaction: C.jejuni and C.difficile for which we had complete set of parameters (respectively thanks to this article and to our partnership with Nottingham).</p>
  
However we offer to the user to choose interesting set of parameters, that are not related to any particular strain of phage, but show the wide spectrum of different interaction possible. We also added the possibility for the user to change any parameters after he chose one strain of phage.
+
<p>However, we offer to the user to choose an interesting set of parameters, that are not related to any particular strain of phage, but show the wide spectrum of different interaction possible. We also added the possibility for the user to change any parameters after he chose one strain of phage.</p>
We implemented 5 interesting set of parameters :
+
<p>We implemented 5 interesting set of parameters:</p>
high phages multiplication
+
<ul><li><p>High phages multiplication</p></li>
fast growing bacteria
+
<li><p>Fast-growing bacteria</p></li>
low phages binding rate
+
<li><p>Low phages binding rate</p></li>
slow lysis
+
<li><p>Slow lysis</p></li>
low carrying capacity
+
<li><p>Low carrying capacity</p></li></ul>
  
Phages needed for a therapy :
+
<h3>Phages needed for a therapy:</h3>
Finally Ruth gave us the idea of computing this 3D figure :
+
<p>Finally Ruth gave us the idea of computing this 3D figure:</p>
  
 
<br>
 
<br>
Line 167: Line 167:
 
<br>
 
<br>
  
The idea behind this figure is that the doctor wants to know how much phages he has to administer in order to obtain a certain amount of bacteria after a giving time.
+
<p>The idea behind this figure is that the doctor wants to know how much phages he has to administer in order to obtain a certain amount of bacteria after a giving time.</p><p>
  
From this graph we can actually see pretty easily than the most important factor is the time and not the number of initial bacteria.
+
From this graph we can actually see pretty easily than the most important factor is the time and not the number of initial bacteria.</p>
  
User interface :
+
<h3>User interface:</h3>
In order to give a more user friendly modelling to the user we implemented 3 interactive dialog prompt.  
+
<p>In order to give a more user-friendly modeling to the user, we implemented 3 interactive dialog prompt. </p>
The first one allow the user to choose the phages-bacteria interaction :
+
<p>The first one allow the user to choose the phages-bacteria interaction:</p>
  
 
<br>
 
<br>
Line 179: Line 179:
 
<br>
 
<br>
  
The second one allow the user to choose the initial population of phages and bacteria. It also allow the user to choose 2 parameters that have an impact on the computing time :timespan and accuracy of the modeling. And finally it gives the user the option of choosing a file name for the modelling figure that will be saved as an image in the current folder at the end of the process.
+
<p>The second one allows the user to choose the initial population of phages and bacteria. It also allows the user to choose 2 parameters that have an impact on the computing time: timespan and accuracy of the modeling. And finally, it gives the user the option of choosing a file name for the modeling figure that will be saved as an image in the current folder at the end of the process.</p>
  
 
<br>
 
<br>
Line 185: Line 185:
 
<br>
 
<br>
  
The third one allows the user to change directly the key parameters of the system modeling.
+
<p>The third one allows the user to change directly the key parameters of the system modeling.</p>
  
 
<br>
 
<br>
Line 191: Line 191:
 
<br>
 
<br>
  
Results :
+
<h3>Results:</h3>
  
 
<br>
 
<br>

Revision as of 20:02, 14 October 2018

Template loop detected: Template:Grenoble-Alpes

MODELING

In order to optimize the lysis step in our system, we used a modeling of the interaction between phages and bacteria. However, the purpose of this system is also to promote therapy. With this in mind, we used our modeling to give the doctor a tool to optimize the therapy dose needed by the patient.

After working on this model for some time we reached out to Ruth Bentley from the Nottingham iGEM team, we were able to work together and to discuss different modeling aspects.

It is important to note, that even though we worked on a lot of the theory together, we implemented the model with different languages, as Ruth coded on python and our work was done in Matlab.

All our modeling codes can be found here [download link of .zip with files]




For our modelling we based ourselves on an article [1], in which the authors model the interactions between phages and bacteria using the following equations:



Where :

  • S is the number of susceptible bacteria (the one that can be infected by phages)

  • R is the number of mutated bacteria (the one who became resistant to phages)

  • I is the number of infected bacteria, and therefore will be killed by the phage after a latent time

  • V is the number of phages

The parameters are described in the table below:


Table n°1 : the different parameters of the modelling and their unit.

We can represent the situation with the following graph:


Figure n°1 : representation of the problem.



The variation of the number of susceptible bacteria S over time is:

  • A gain equal the growth of those bacteria: +a*S

  • A loss equal to the number of bacteria that mutates into phage-resistant bacteria: -f*S

  • A loss equal to the number of bacteria infected by phages: -b*S*V



The variation of the number of resistant bacteria R over time is:

  • A gain equal to the growth of those bacteria: +a*R

  • A gain equal to the number of bacteria that mutates into phage-resistant bacteria: +f*S



The variation of the number of infected bacteria I over time is:

  • A gain equal to the number of bacteria infected by phages: +b*S*V

  • A loss equal to the number of bacteria infected by phages at time t-K (where K is the time needed for a phage to kill a bacterium): -b*S(t-K)*V(t-K)



The variation of the number of phages V over time is:

  • A gain equal to the number of phages released after the lysis of previously infected bacteria, where h is the average number of phages created inside an infected host: +h*b*S(t-K)*V(t-K)

  • A loss equal to the number of phages that infected bacteria: -b*S*V

  • A loss equal to the degradation of phages in the solution: -m*V

As we can see the equations here are relatively simple, and the only real difficulty to solve them is the presence of a Delay Differential Equation (DDE) in the form of S(t-K)*V(t-K).

To solve those equations we chose to use MATLAB because we were used to this computing language (and because we obtained a license through the iGEM competition framework). Thanks to this computing environment we can solve those DDE with a built-in function called “dde23”.

This function comes with some options, one of which allows us to indicate the function what happens for t < K. In our case, we want that for t

We started by implementing the system as described in the article, then to obtain equations that fitted our need we added :

  • A variable D representing the quantity of DNA freed during the lysis of the bacteria by the phage

  • A carrying capacity C (modeling the fact that a solution can be saturated in term of bacteria)

  • A degradation factor r (for bacteria) and l (for DNA)

  • A factor d modeling the average quantity of DNA freed after lysis

Here are the final equation in our code:



It is important to note that we were able to implement the DNA variable D quite easily because we did implement a toxin variable in order to work with Ruth from the Nottingham iGEM team. After working with Ruth we also decided to use a carrying capacity factor. And we ended up agreeing on the fact that the carrying capacity is a common factor for both S and I (therefore (S+R+I)/C and not (S+I+R3)*C.

Implementing a tool to compare different type of phages-bacteria interaction:

Thanks to our iGEM Meet’up in Marseille we were able to explain the first version of this modeling and on the advice of one of the participants we looked into implementing a tool for comparing the different type of phages-bacteria interaction.

We would have like to do this with as many phages as possible, unfortunately we did not manage to obtain key parameters for a lot of different strains of phages, therefore we only offer to the user the possibility to choose between 2 phages-bacteria interaction: C.jejuni and C.difficile for which we had complete set of parameters (respectively thanks to this article and to our partnership with Nottingham).

However, we offer to the user to choose an interesting set of parameters, that are not related to any particular strain of phage, but show the wide spectrum of different interaction possible. We also added the possibility for the user to change any parameters after he chose one strain of phage.

We implemented 5 interesting set of parameters:

  • High phages multiplication

  • Fast-growing bacteria

  • Low phages binding rate

  • Slow lysis

  • Low carrying capacity

Phages needed for a therapy:

Finally Ruth gave us the idea of computing this 3D figure:



The idea behind this figure is that the doctor wants to know how much phages he has to administer in order to obtain a certain amount of bacteria after a giving time.

From this graph we can actually see pretty easily than the most important factor is the time and not the number of initial bacteria.

User interface:

In order to give a more user-friendly modeling to the user, we implemented 3 interactive dialog prompt.

The first one allow the user to choose the phages-bacteria interaction:



The second one allows the user to choose the initial population of phages and bacteria. It also allows the user to choose 2 parameters that have an impact on the computing time: timespan and accuracy of the modeling. And finally, it gives the user the option of choosing a file name for the modeling figure that will be saved as an image in the current folder at the end of the process.



The third one allows the user to change directly the key parameters of the system modeling.



Results:


REFERENCES

[1] [1]Cairns BJ, Timms AR, Jansen VAA, Connerton IF, Payne RJH (2009) Quantitative Models of In Vitro Bacteriophage–Host Dynamics and Their Application to Phage Therapy. PLoS Pathog 5(1): e1000253. doi:10.1371/journal.ppat.1000253