Team:Calgary/Modelling/Blog

From 2009.igem.org

(Difference between revisions)
Line 59: Line 59:
<tr>
<tr>
<div id="leftmenu">
<div id="leftmenu">
-
<td width="210" rowspan=13 bgcolor="#414141" valign="top">
+
<td width="210" rowspan=15 bgcolor="#414141" valign="top">
<br>
<br>
<div class="heading">MODELLING UPDATES</div>
<div class="heading">MODELLING UPDATES</div>
Line 72: Line 72:
</div>
</div>
</td>
</td>
-
<td width="10" rowspan=13 bgcolor="#222222">
+
<td width="10" rowspan=15 bgcolor="#222222">
</div>
</div>
<td width="750" bgcolor="#414141" valign="top">
<td width="750" bgcolor="#414141" valign="top">
Line 80: Line 80:
</div>
</div>
<div class="desc">These updates have been posted with newest ones at the top.</div>
<div class="desc">These updates have been posted with newest ones at the top.</div>
 +
<br>
 +
</td>
 +
</tr>
 +
 +
<tr>
 +
<td width="750" height="10" bgcolor="#222222">
 +
</td>
 +
</tr>
 +
 +
<tr>
 +
<td width="750" bgcolor="#414141" valign="top">
 +
<br>
 +
<div class="heading">August 17, 2009 - Carol, Chinee, Kevin, Vicki</div>
 +
<div class="heading">Sensitivity analysis... Models... Have feelings too!</div>
 +
<div class="desc">
 +
<strong>Vicki</strong> and <strong>Chinee </strong>has put quite an amout of time into tracking down those sensitive ones in our system. <strong>Vicki</strong> is currently working with the Sensitivity analysis tool in Matlab commandline in order to find the sensitive parameters that influence the GFP output the most. The following graph is the result her sensitivity analysis model has generated so far: (click to enlarge)
 +
<br><br>
 +
<a href="http://4.bp.blogspot.com/_IGdrqKj3CPQ/Sonfv6lZhuI/AAAAAAAAAAc/zui4qrcPrnk/s1600-h/Normalized_sensitivity.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 199px;" src="http://4.bp.blogspot.com/_IGdrqKj3CPQ/Sonfv6lZhuI/AAAAAAAAAAc/zui4qrcPrnk/s320/Normalized_sensitivity.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5371070044888991458" /></a>
 +
<Br><br>
 +
The closer the graph gets to 0, the lower the influence this parameter has on the GFP output, and vice versa. According to this graph, the kForward (reaction rates)values 1, 3, and 4 seems the most influential parameters relative to 2 and 5; thus these parameters will be looked at further.
 +
<br><br>
 +
From these results, Vicki performed parameter optimization on them. In parameter optimization function, she was able to play with the individual parameter values in order to come up with a best fit line model to the predicted levels of GFP output. The following is the graphical result of the above function.
 +
<br><br>
 +
<a href="http://2.bp.blogspot.com/_IGdrqKj3CPQ/SonplJCGetI/AAAAAAAAAA0/sTU1uXlzUww/s1600-h/Parameter_optimization.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 255px;" src="http://2.bp.blogspot.com/_IGdrqKj3CPQ/SonplJCGetI/AAAAAAAAAA0/sTU1uXlzUww/s320/Parameter_optimization.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5371080854905191122" /></a>
 +
<br><br>
 +
Here, the circles represent the made up predicted data, and the colored lines represent each optimized parameters. The optimized rate constants for kForward1, 3, and 4 fit nicely to the pattern of the predicted data; however, the optimized rate constants for kForward 2 and 5 do not, meaning that these parameters do not play a big role in determining the GFP output values.
 +
<br><br>
 +
From these two functions, Vicki would be able to, once we get some lab results, optimize our significant rate constants to fit the behavior of our AI-2 system.
 +
<br><br>
 +
Along with Vicki, <strong>Chinee</strong> was also working on the parameter sensitivity; however, with a different tool. In Simbiology, Chinee was able to outline the key difference between the initial amount and the reaction rates of the parameter. The following is the graph when all the parameters have a reaction rate value of 1:
 +
<br><br>
 +
<a href="http://1.bp.blogspot.com/_IGdrqKj3CPQ/Sonpv1laAaI/AAAAAAAAAA8/oImCWzwPyeo/s1600-h/k2.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 100px;" src="http://1.bp.blogspot.com/_IGdrqKj3CPQ/Sonpv1laAaI/AAAAAAAAAA8/oImCWzwPyeo/s320/k2.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5371081038663123362" /></a>
 +
<br><br>
 +
The following is the graph when all the parameters have a reaction rate value of 10:
 +
<br><br>
 +
<a href="http://2.bp.blogspot.com/_IGdrqKj3CPQ/SonqAdrRIlI/AAAAAAAAABE/Fum_V3yUsbo/s1600-h/k1.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 100px;" src="http://2.bp.blogspot.com/_IGdrqKj3CPQ/SonqAdrRIlI/AAAAAAAAABE/Fum_V3yUsbo/s320/k1.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5371081324303032914" /></a>
 +
<br><br>
 +
The only difference between the above two graphs are that the lines in the second graph are much more steep than the lines in the first graph. This means that the reaction rate only influences how immediate the reactions happen.
 +
<br><br>
 +
And finally, the graph when all the parameters have an initial amount of 10:
 +
<br><br>
 +
<a href="http://1.bp.blogspot.com/_IGdrqKj3CPQ/SonrGiHraAI/AAAAAAAAABM/jR2-BAy-2II/s1600-h/initial1.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 100px;" src="http://1.bp.blogspot.com/_IGdrqKj3CPQ/SonrGiHraAI/AAAAAAAAABM/jR2-BAy-2II/s320/initial1.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5371082528086779906" /></a>
 +
<br><br>
 +
The above graph is very different from the ones above. From this, one can see how initial amounts of parameter play a much bigger role than the rate constants of each parameters.
 +
<br><br>
 +
I, <strong>Kevin</strong>, and <strong>Carol</strong> attempted to fix some biological misunderstandings within the reactions, and produce a graph that displays the pattern of each parameters. The following is the graph:
 +
<br><br>
 +
<a href="http://1.bp.blogspot.com/_IGdrqKj3CPQ/SonuHOA5bZI/AAAAAAAAABU/TgUtF7CuAwk/s1600-h/WithoutAI2graph.bmp"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 100px;" src="http://1.bp.blogspot.com/_IGdrqKj3CPQ/SonuHOA5bZI/AAAAAAAAABU/TgUtF7CuAwk/s320/WithoutAI2graph.bmp" border="0" alt=""id="BLOGGER_PHOTO_ID_5371085838404382098" /></a>
 +
<br><br>
 +
The patterns observed are reasonable and match what was expected. The lab data is needed to get an accurate model of our system; however, from it we can still test the sensitivity of each parameters by changing them one by one and simulating the results.
 +
<br><br>
 +
We hope to get some lab data by this week.
 +
</div>
<br>
<br>
</td>
</td>

Revision as of 19:29, 21 August 2009

University of Calgary

UNIVERSITY OF CALGARY



MODELLING UPDATES
Every Monday (started at the end of June), our modelling team uses our Synthetic BLOGology blog to update both the public and the rest of the team of their progress in the modelling projects. For more details regarding Synthetic BLOGology, please click HERE.

INDEX OF UPDATES

WHAT WE'VE BEEN UP TO IN MODELLING
These updates have been posted with newest ones at the top.


August 17, 2009 - Carol, Chinee, Kevin, Vicki
Sensitivity analysis... Models... Have feelings too!
Vicki and Chinee has put quite an amout of time into tracking down those sensitive ones in our system. Vicki is currently working with the Sensitivity analysis tool in Matlab commandline in order to find the sensitive parameters that influence the GFP output the most. The following graph is the result her sensitivity analysis model has generated so far: (click to enlarge)



The closer the graph gets to 0, the lower the influence this parameter has on the GFP output, and vice versa. According to this graph, the kForward (reaction rates)values 1, 3, and 4 seems the most influential parameters relative to 2 and 5; thus these parameters will be looked at further.

From these results, Vicki performed parameter optimization on them. In parameter optimization function, she was able to play with the individual parameter values in order to come up with a best fit line model to the predicted levels of GFP output. The following is the graphical result of the above function.



Here, the circles represent the made up predicted data, and the colored lines represent each optimized parameters. The optimized rate constants for kForward1, 3, and 4 fit nicely to the pattern of the predicted data; however, the optimized rate constants for kForward 2 and 5 do not, meaning that these parameters do not play a big role in determining the GFP output values.

From these two functions, Vicki would be able to, once we get some lab results, optimize our significant rate constants to fit the behavior of our AI-2 system.

Along with Vicki, Chinee was also working on the parameter sensitivity; however, with a different tool. In Simbiology, Chinee was able to outline the key difference between the initial amount and the reaction rates of the parameter. The following is the graph when all the parameters have a reaction rate value of 1:



The following is the graph when all the parameters have a reaction rate value of 10:



The only difference between the above two graphs are that the lines in the second graph are much more steep than the lines in the first graph. This means that the reaction rate only influences how immediate the reactions happen.

And finally, the graph when all the parameters have an initial amount of 10:



The above graph is very different from the ones above. From this, one can see how initial amounts of parameter play a much bigger role than the rate constants of each parameters.

I, Kevin, and Carol attempted to fix some biological misunderstandings within the reactions, and produce a graph that displays the pattern of each parameters. The following is the graph:



The patterns observed are reasonable and match what was expected. The lab data is needed to get an accurate model of our system; however, from it we can still test the sensitivity of each parameters by changing them one by one and simulating the results.

We hope to get some lab data by this week.


August 8, 2009 - Afshin & Iman
Membrane Computing Update
Hi Everyone!

This will be our first update on Membrane Computing (MC) and agent-based approach to model our complex biological system.

In regards to modeling of Autoinducer-II Quorum Signaling, we have been able to successfully complete our implementation of this signaling cascade. Monitoring each cell as an agent, we are able to monitor the system at both, cell level and population level.

Currently our simulation uses a well known algorithm called Gillespie's Algorithm. In simple words, the Gillespie algorithm keeps stochasticity (randomness) in our simulation. Why is it important to have this randomness in our model? Because this will push our model one step closer to actual biological system. Because cells don't interact with each other or their environment at discrete steps. As an example consider protein-protein interactions versus cell division. These two interactions have quite different time scales. Our implementation of Gillespie Algorithm takes care of accounting for such cases.

At this stage our model is able to produce concentration graphs and allows user to review how the system behaves at the cell level and also at colony level. We are working on implementing powerful visualizations and a user-friendly interface for our model.

We are also working on addition of new updating scheme for cells during simulation. Currently our algorithm updates state of each cell at single steps. It is worth mentioning that because of the way our Gillespie Algorithm is setup, time delays between each step can be as short as 0.0001 second (considered instantaneous) or a given step could take as long as one minute. This will compensate for different interactions and the time it takes for each interaction to complete. The second scheme which we are working now to complete hopefully before aGEM is where all cells in the system are updated at the same time. This allows cells to be in sync when applying interactions. With single-step updating scheme, as the number of cells increase over time, it takes longer and longer for cells to update their state based on changes in their environment. This side effect of non-synchronous updating scheme only kicks in when we have high population of cells. Since we have introduced cell division to our simulation where our system could start with one cell and end up with 300, a synchronous updating system could take us one step closer to how the actual biological system works.

We will post updates at least once a week on our current progress; We also hope to have some screen shots on our visualizations and interface in near future.

Thanks for following our progress :)


August 3, 2009 - Carol
Modelling: Collaborative Work
Hi Everyone! Not much to update for modelling this week. We had a big meeting with all the teams on friday, and the two modelling teams (Membrane Computing and Mathematical Modelling) will meet every tuesday and thursday for meetings. This will give us time to draw parallel between the two types of modelling. We have also discussed about how to seperate all the experiments to characterize our signalling system. All this detail will be touched tomorrow at the meeting. Other than that, not much to update. Hopefully next week, we have more to add! Peace :)


July 27, 2009 - Carol
Modelling: Learning to Write
Hi everyone, its Carol again!

This week for modeling, we focused mainly on writing up several ways to characterize the AI-2 signaling system. The characterization methods that we decided to explore are the following:

1. Static Performance
2. Dynamic Response
3. Response Time
4. Robustness

The robustness part of characterizing the system would be the most interesting. The degree of robustness depends on how sensitive the system is to fluctuations and changes. If this part of the signaling system can be explored in more detail, it will be an advantageous component to our project. We spent the past week summarizing this in paper format. I am currently working on a promoter library, which will play a huge role in exploring the expression of luxPQ. Once the circuits are done, some of these experiments can be done in a few days. We will hopefully by the end this summer have some characterization done. Stay tuned! Signing off now, peace!


July 21, 2009 - Vicki
iGEM's Next Top Model?
Hey there! So I’m a little late with this entry…hopefully none of you are too crushed by this. As a refresher, I’m Vicki, and we’ve already met repeatedly over lab editions. With my fabulous team of brilliance – Carol, Chinee, Kevin, Afshin and Iman – we’re going to give the term “America’s next top model” a whole new meaning.

It has been a very busy week of searching for reaction constants for our differential and membrane-computing efforts. Indeed, the literature is vast, but it sure isn’t easy to navigate. And it doesn’t help when published authors don’t really seem to make effective communication a priority. Regardless, we’re progressing, slowly but surely.

We have also been discussing how we’re going to approach the circuit characterisation matter. After a long and fruitful chat on what others have done previously to characterise their signalling circuits, we came up with a list of areas for which quantitative characterisation would be useful AND realistic to achieve. Because as much as we want to pay for sequencing every day to assess circuit stability, it doesn’t seem like the most effective use of our funds, especially with so other areas (read: ice cream parties) where the money would be better spent! We also outlined general procedure approaches that would enable us to collect the data to come up with and validate our models. Stay tuned!


July 13, 2009 - Kevin
Techy Biologist


July 6, 2009 - Carol
Modelling: How Engineers Understand the Social Life of Bacteria
Hi! My name is Carol and I’m heading into my third year of biomedical and chemical engineering in the fall, and I have completed a degree in biomedical sciences. I love watching sports (especially football and hockey) and I enjoy cooking and reading. I’m part of the laboratory and modelling team, so you’ll be hearing from me lots this summer!

In the past few weeks, the modelling team focused on familiarizing with Matlab and Simbiology. Before I move on, I should introduce you to my team mates that make this team possible! Vicki is a recent graduate from Engineering from the University of Toronto and she has worked with Matlab and its applications extensively throughout her studies. Chinee is also a third year chemical engineering and has some experience with Matlab as well. Finally, Kevin who is going into his second year of Kinesiology is just helping out because he is just a nice individual! With all the skills from each team member, we believe that we can produce a great model for our project. Back to modelling, one of our facilitators (Dr. Nygren) gave us an assignment that helped us understand the program more. We had to model the three gene repressilator in Matlab via two different methods, stochastic and deterministic. I’m going to spend some time now to explain the two methods that we will be using to model our quorum sensing model.

Differential (Deterministic) Model
This model uses equations that involve derivatives to illustrate concentrations of different molecules within a network. In our case, we will be using equations to describe the concentrations of different molecules within the Autoinducer-II (AI-2) cascade. With the ability to solve the differential equations, we can investigate how the concentration of different molecules within the cascade modifies compared with initial conditions. However, this method of modelling is often used with systems with high concentrations of chemicals and we expect that the importance of rare events is low. Furthermore, this type of modelling is often used in smaller networks.

Stochastic Models
The other type of model that can be used to describe our model is through probabilistic equations that can describe the probability that a certain chemical reaction will occur between certain types of molecules at any instant. Furthermore, these equations can also be used to calculate the quantities of all species at the end of a small time step. Therefore, it is plausible to evaluate how the molecules within the cascade change over time by repeating this process over many steps. Since random variable input is involved with this type of modelling, each simulation run can produce varying results. By using averages through numerous simulation runs, a trend can be predicted. This type of modelling is used for small numbers of molecules because they take more computing power. This is because of the random nature of molecular interaction and it accounts for the probability of rare events occurring.

Our goal for this week is to successfully build the AI-2 system in Simbiology. We’ve been busy the last few weeks reading up on literature and we were able to successfully find some phosphorylation rates that can be incorporated into our model. Next week, we will show you what we’ve built in Simbiology and give you a tour of Simbiology and Matlab! Stay Tuned!