ETHZ/Simulation

From 2007.igem.org

< ETHZ(Difference between revisions)
(Figure rearrange)
 
(25 intermediate revisions not shown)
Line 1: Line 1:
-
<center>[[Image:Eth_zh_logo_4.png|830px]]</center>
+
[[Image:ETHZ_banner.png|830px]]
-
 
+
<!--
<center>[[ETHZ | Main Page]] &nbsp;&nbsp;&nbsp;&nbsp; [[ETHZ/Model | System Modeling]] &nbsp;&nbsp;&nbsp;&nbsp; [[ETHZ/Simulation | Simulations]] &nbsp;&nbsp;&nbsp;&nbsp; [[ETHZ/Biology | System Implementation]] &nbsp;&nbsp;&nbsp;&nbsp; [[ETHZ/Biology/Lab| Lab Notes]] &nbsp;&nbsp;&nbsp;&nbsp; [[ETHZ/Meet_the_team | Meet the Team]] &nbsp;&nbsp;&nbsp;&nbsp; [[ETHZ/Internal | Team Notes]] &nbsp;&nbsp;&nbsp;&nbsp; [[ETHZ/Pictures | Pictures!]]</center><br>
<center>[[ETHZ | Main Page]] &nbsp;&nbsp;&nbsp;&nbsp; [[ETHZ/Model | System Modeling]] &nbsp;&nbsp;&nbsp;&nbsp; [[ETHZ/Simulation | Simulations]] &nbsp;&nbsp;&nbsp;&nbsp; [[ETHZ/Biology | System Implementation]] &nbsp;&nbsp;&nbsp;&nbsp; [[ETHZ/Biology/Lab| Lab Notes]] &nbsp;&nbsp;&nbsp;&nbsp; [[ETHZ/Meet_the_team | Meet the Team]] &nbsp;&nbsp;&nbsp;&nbsp; [[ETHZ/Internal | Team Notes]] &nbsp;&nbsp;&nbsp;&nbsp; [[ETHZ/Pictures | Pictures!]]</center><br>
-
 
+
-->
-
__NOTOC__
+
-
 
+
<html>
<html>
-
 
<script type="text/javascript" src="http://christos.bergeles.net/eth_dropdowntabs.js">
<script type="text/javascript" src="http://christos.bergeles.net/eth_dropdowntabs.js">
Line 19: Line 16:
<!-- CSS for Drop Down Tabs Menu #1 -->
<!-- CSS for Drop Down Tabs Menu #1 -->
<link rel="stylesheet" type="text/css" href="http://christos.bergeles.net/eth_ddcolortabs.css" />
<link rel="stylesheet" type="text/css" href="http://christos.bergeles.net/eth_ddcolortabs.css" />
-
 
-
 
-
 
<div id="colortab" class="ddcolortabs">
<div id="colortab" class="ddcolortabs">
<ul>
<ul>
Line 32: Line 26:
</ul>
</ul>
</div>
</div>
-
 
<div class="ddcolortabsline">&nbsp;</div>
<div class="ddcolortabsline">&nbsp;</div>
Line 38: Line 31:
<!--1st drop down menu -->
<!--1st drop down menu -->
<div id="dropmenu_home" class="dropmenudiv_a">
<div id="dropmenu_home" class="dropmenudiv_a">
-
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ#Introduction">Introduction Section</a>
+
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ#Introduction">Introduction</a>
-
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ#Team_Members">Team Members Section</a>
+
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ#Team_Members">Team Members</a>
-
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ#Acknowledgments">Acknowledgments Section</a>
+
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ#Acknowledgments">Acknowledgments</a>
-
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ#Site_Map">Site map Section</a>
+
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ#Site_Map">Site map</a>
</div>
</div>
Line 47: Line 40:
<!--2nd drop down menu -->
<!--2nd drop down menu -->
<div id="dropmenu_modeling" class="dropmenudiv_a" style="width: 150px;">
<div id="dropmenu_modeling" class="dropmenudiv_a" style="width: 150px;">
-
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Model#Introduction">Introduction Section</a>
+
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Model#Introduction">Introduction</a>
-
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Model#Model_Overview">Model Overview Section</a>
+
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Model#Model_Overview">Model Overview</a>
-
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Model#Detailed_Model">Detailed Model Section</a>
+
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Model#Detailed_Model">Detailed Model</a>
-
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Model#Final_Model">Final Model Section</a>
+
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Model#Final_Model">Final Model</a>
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Modeling_Basics">Modeling Basics Page</a>
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Modeling_Basics">Modeling Basics Page</a>
-
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Model#Mathematical_Model">Mathematical Model Section</a>
+
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Model#Mathematical_Model">Mathematical Model</a>
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/FSM">FSM View Page</a>
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/FSM">FSM View Page</a>
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/FlipFlop">Flip-Flop View Page</a>
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/FlipFlop">Flip-Flop View Page</a>
Line 60: Line 53:
<!--3rd drop down menu -->
<!--3rd drop down menu -->
<div id="dropmenu_simulation" class="dropmenudiv_a" style="width: 150px;">
<div id="dropmenu_simulation" class="dropmenudiv_a" style="width: 150px;">
-
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Simulation#Introduction">Introduction Section</a>
+
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Simulation#Introduction">Introduction</a>
-
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Simulation#Simulation_of_Test_Cases">Test Cases Section</a>
+
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Simulation#Simulation_of_Test_Cases">Test Cases</a>
-
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Simulation#Sensitivity_Analysis">Sensitivity Analysis Section</a>
+
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Simulation#Sensitivity_Analysis">Sensitivity Analysis</a>
</div>
</div>
<!--4th drop down menu -->
<!--4th drop down menu -->
<div id="dropmenu_biology" class="dropmenudiv_a" style="width: 150px;">
<div id="dropmenu_biology" class="dropmenudiv_a" style="width: 150px;">
-
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Biology#Introduction">Introduction Section</a>
+
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Biology#Introduction">Introduction</a>
-
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Biology#The_Complete_System">The Complete System Section</a>
+
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Biology#The_Complete_System">The Complete System</a>
-
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Biology#System_Phases">System Phases Section</a>
+
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Biology#System_Phases">System Phases</a>
 +
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Biology#Current_Cloning_Status">Current Cloning Status</a>
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Biology/parts">System Parts Page</a>
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Biology/parts">System Parts Page</a>
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Biology/Lab">Lab Notes Page</a>
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Biology/Lab">Lab Notes Page</a>
Line 78: Line 72:
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Meet_the_team#The_ETH_Zurich_07_Team">The ETH Zurich 07 Team</a>
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Meet_the_team#The_ETH_Zurich_07_Team">The ETH Zurich 07 Team</a>
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Meet_the_team#Team_Description">Team Description</a>
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Meet_the_team#Team_Description">Team Description</a>
 +
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Internal">Brainstorming Page</a>
</div>
</div>
Line 86: Line 81:
</html>
</html>
 +
__NOTOC__
=Introduction=
=Introduction=
Line 94: Line 90:
== Simulation of Test Cases ==
== Simulation of Test Cases ==
-
To test all the possible conditions and transitions in our system, we run timing simulations for all 4 different branches in the flow diagram of our protocol, and we plot the concentrations of the inducers, memory proteins and reporter proteins. During each learning, memorizing and recognizing phase, we wait for the steady state of the system to be reached. The three phases of the system are thus separated sufficiently in time. In all the cases, we  follow the following procedure:
+
To test all the possible conditions and transitions in our system, we run timing simulations for all 4 different branches in the flow diagram of our protocol, and we plot the concentrations of the inducers, memory proteins and reporter proteins. During each learning, memorizing and recognizing phase, we wait for the steady state of the system to be reached. The three phases of the system are thus separated sufficiently in time. In all the cases, we  use the following procedure:
* During the first 1000 minutes of the simulation, we do not add any inducers to the system, and as a result, we check for the baseline production of proteins.
* During the first 1000 minutes of the simulation, we do not add any inducers to the system, and as a result, we check for the baseline production of proteins.
* Between 1000 and 2000 minutes, we add the inducer that should be learned, and we let the system reach steady state.
* Between 1000 and 2000 minutes, we add the inducer that should be learned, and we let the system reach steady state.
Line 102: Line 98:
The parameters of the system are crucial if one wants to have accurate and realistic simulations. We present the parameters used to simulate our system, in the section [[ETHZ/Parameters | Parameters]].
The parameters of the system are crucial if one wants to have accurate and realistic simulations. We present the parameters used to simulate our system, in the section [[ETHZ/Parameters | Parameters]].
-
<p>[[Image:ETHZTest1correct.png|left|thumb|<b>Fig. 2</b>: Test case 1 - Learn and recognize IPTG. The simulated behavior of the system, when IPTG is presented both during the learning phase, and the recognition phase. In both the learning and recognition phase, the system reports by producing CFP, which matches the desired behavior.  |420px]]
+
<p>[[Image:ETHZTest1_Stand24.10.png|left|thumb|<b>Fig. 2</b>: Test case 1 - Learn and recognize IPTG. The simulated behavior of the system, when IPTG is presented both during the learning phase, and the recognition phase. In both the learning and recognition phase, the system reports by producing CFP, which matches the desired behavior.  |420px]]
-
[[Image:ETHZTest2correct.png|thumb|<b>Fig. 3</b>: Test case 2 - Learn IPTG and get tested for aTc. The simulated behavior of the system, when IPTG is presented during the learning phase, and aTc is presented during the recognition phase. The system reports by producing RFP during the recognition phase, which matches the desired behavior. |420px]]
+
[[Image:ETHZTest2_Stand24.10.png|thumb|<b>Fig. 3</b>: Test case 2 - Learn IPTG and get tested for aTc. The simulated behavior of the system, when IPTG is presented during the learning phase, and aTc is presented during the recognition phase. The system reports by producing RFP during the recognition phase, which matches the desired behavior. |420px]]
-
[[Image:ETHZTest4correct.png|left|thumb|<b>Fig. 4</b>: Test case 3 - Learn aTc and get tested for IPTG. The simulated behavior of the system, when aTc is presented during the learning phase, and IPTG is presented during the recognition phase. The system reports by producing GFP during the recognition phase, which matches the desired behavior. |420px]]</p>
+
[[Image:ETHZTest4_Stand24.10.png|left|thumb|<b>Fig. 4</b>: Test case 3 - Learn aTc and get tested for IPTG. The simulated behavior of the system, when aTc is presented during the learning phase, and IPTG is presented during the recognition phase. The system reports by producing GFP during the recognition phase, which matches the desired behavior. |420px]]</p>
-
[[Image:ETHZTest3correct.png|right|thumb|<b>Fig. 5</b>: Test case 4 - Learn and recognize aTc. The simulated behavior of the system, when aTc is presented both during the learning phase and the recognition phase. In both the learning and recognition phase the system reports by producing YFP, which matches the desired behavior. |420px]]
+
[[Image:ETHZTest3_Stand24.10.png|right|thumb|<b>Fig. 5</b>: Test case 4 - Learn and recognize aTc. The simulated behavior of the system, when aTc is presented both during the learning phase and the recognition phase. In both the learning and recognition phase the system reports by producing YFP, which matches the desired behavior. |420px]]
==Sensitivity Analysis==
==Sensitivity Analysis==
Line 115: Line 111:
[[Image:ETHZSensitivity.png|right|thumb|<b>Fig. 6</b>: Sensitivity analysis. We plot the sensitivity for each parameter and each test case that corresponds to the different path ways in Fig. 1. |500px]]
[[Image:ETHZSensitivity.png|right|thumb|<b>Fig. 6</b>: Sensitivity analysis. We plot the sensitivity for each parameter and each test case that corresponds to the different path ways in Fig. 1. |500px]]
-
We define sensitivity as the change of the production of the desired florescence protein - which corresponds to the output of our system - depending on the change of the parameters. As shown in Fig. 1 the desired florescence protein output depends on the inducers that we present to our system during learning and recognition phase. Overall we have 4 different combinations leading to the 4 different test cases shown in Fig. 1. E.g. when IPTG is presented to the system both during the learning and recognition phase we expect the production of CFPs. That is why we define the sensitivity for test case 1 as
+
We define sensitivity as the change of the production of the desired florescence protein - which corresponds to the output of our system - depending on the change of the parameters. As shown in Fig. 1 the desired florescence protein output depends on the concentration of the inducers that we present to our system during learning and recognition phase. Overall we have 4 different combinations leading to the 4 different test cases shown in Fig. 1. E.g. when IPTG is presented to the system both during the learning and recognition phase we expect the production of CFPs. That is why we define the sensitivity for test case 1 as
[[Image:ETHZSensititivityequation.png|center|300px]]
[[Image:ETHZSensititivityequation.png|center|300px]]
Line 136: Line 132:
* CFP in test case 1. A timing simulation for this case is shown in Fig. 2.
* CFP in test case 1. A timing simulation for this case is shown in Fig. 2.
* RFP in test case 2. A timing simulation for this case is shown in Fig. 3.
* RFP in test case 2. A timing simulation for this case is shown in Fig. 3.
-
* YFP in test case 3. A timing simulation for this case is shown in Fig. 4.
+
* GFP in test case 3. A timing simulation for this case is shown in Fig. 4.
-
* GFP in test case 4. A timing simulation for this case is shown in Fig. 5.
+
* YFP in test case 4. A timing simulation for this case is shown in Fig. 5.
The results are plotted in Fig. 6. Furthermore we make sure that no undesired florescence protein is produced during the recognition phase.
The results are plotted in Fig. 6. Furthermore we make sure that no undesired florescence protein is produced during the recognition phase.

Latest revision as of 14:27, 26 October 2007

ETHZ banner.png

 


Introduction

As has been presented in the Modeling page, we have created a model of our system that can be described as a finite state machine. In order to examine the behavior of our system thoroughly, we have to simulate it through all the difference phases that can be reached. We carry out our simulations based on the protocol presented in Fig. 1.

Fig. 1: Flow diagram. This figure shows the protocol with which the final system should be tested, as well as the test results in the form of the reported colors. There are three phases the system has to go through: (1) a training or learning phase in which the system learns an input and stores it in its memory, (2) a memory phase in which the system has to keep the content of its memory and, (3) a recognition phase where the output of the system depends on the content of its memory as well as on the current input.

Simulation of Test Cases

To test all the possible conditions and transitions in our system, we run timing simulations for all 4 different branches in the flow diagram of our protocol, and we plot the concentrations of the inducers, memory proteins and reporter proteins. During each learning, memorizing and recognizing phase, we wait for the steady state of the system to be reached. The three phases of the system are thus separated sufficiently in time. In all the cases, we use the following procedure:

  • During the first 1000 minutes of the simulation, we do not add any inducers to the system, and as a result, we check for the baseline production of proteins.
  • Between 1000 and 2000 minutes, we add the inducer that should be learned, and we let the system reach steady state.
  • After 2000 minutes, we add the inducer AHL for memory formation, and run the simulation for an additional 1000 minutes, to reach again steady state.
  • Between 3000 and 4000 minutes, we test the final behavior of the system, and check if it reacts in the desired way, by showing the appropriate color.

The parameters of the system are crucial if one wants to have accurate and realistic simulations. We present the parameters used to simulate our system, in the section Parameters.

Fig. 2: Test case 1 - Learn and recognize IPTG. The simulated behavior of the system, when IPTG is presented both during the learning phase, and the recognition phase. In both the learning and recognition phase, the system reports by producing CFP, which matches the desired behavior.
Fig. 3: Test case 2 - Learn IPTG and get tested for aTc. The simulated behavior of the system, when IPTG is presented during the learning phase, and aTc is presented during the recognition phase. The system reports by producing RFP during the recognition phase, which matches the desired behavior.
Fig. 4: Test case 3 - Learn aTc and get tested for IPTG. The simulated behavior of the system, when aTc is presented during the learning phase, and IPTG is presented during the recognition phase. The system reports by producing GFP during the recognition phase, which matches the desired behavior.

Fig. 5: Test case 4 - Learn and recognize aTc. The simulated behavior of the system, when aTc is presented both during the learning phase and the recognition phase. In both the learning and recognition phase the system reports by producing YFP, which matches the desired behavior.

Sensitivity Analysis

Before performing simulations we did an intensive literature review to find the parameters of our system. Due to the uncertainty in parameter retrieval, we would like our system to have reduced sensitivity to the parameters. That way, we can have a guaranteed stable performance, even under non-simulated conditions.

Fig. 6: Sensitivity analysis. We plot the sensitivity for each parameter and each test case that corresponds to the different path ways in Fig. 1.

We define sensitivity as the change of the production of the desired florescence protein - which corresponds to the output of our system - depending on the change of the parameters. As shown in Fig. 1 the desired florescence protein output depends on the concentration of the inducers that we present to our system during learning and recognition phase. Overall we have 4 different combinations leading to the 4 different test cases shown in Fig. 1. E.g. when IPTG is presented to the system both during the learning and recognition phase we expect the production of CFPs. That is why we define the sensitivity for test case 1 as

ETHZSensititivityequation.png


where

  • [CFPrecognition105%] describes the concentration of CFP during the recognition phase when the parameter that we test for is increased by 5%,
  • [CFPbaseline105%] describes the concentration of CFP without any inducers given to the system when the parameter that we test for is increased by 5%,
  • [CFPrecognition95%] describes the concentration of CFP during the recognition phase when the parameter that we test for is decreased by 5%, and
  • [CFPbaseline95%] describes the concentration of CFP without any inducers given to the system when the parameter that we test for is decreased by 5%.

All concentrations are gained from timing simulations as shown in Fig. 2 when the concentrations reached steady state. E.g. [CFPrecognition] corresponds to the value of CFP after 4000 minutes while [CFPbaseline] is equal to the value for CFP after 1000 minutes.

We define sensitivity by using the ratio of [CFPrecognition] and [CFPbaseline] to see by which factor the CFP concentration is increased during the recognition phase. The higher this value is the easier it will be possible to determine the correct readout.

We subtract the two ratios of [CFPrecognition]/[CFPbaseline] for increasing and decreasing the parameter under test by 5% to quantify how much is the influence of the parameter on the output. If the output ratio does not change the parameter has no influence and the sensitivity is equal to zero.

We quantified the sensitivity for all parameters and all 4 test cases. Therefor we look at the concentration of

  • CFP in test case 1. A timing simulation for this case is shown in Fig. 2.
  • RFP in test case 2. A timing simulation for this case is shown in Fig. 3.
  • GFP in test case 3. A timing simulation for this case is shown in Fig. 4.
  • YFP in test case 4. A timing simulation for this case is shown in Fig. 5.

The results are plotted in Fig. 6. Furthermore we make sure that no undesired florescence protein is produced during the recognition phase.

The conclusions that can be derived from our sensitivity analysis are the following:

  • Most of the parameters are not sensitive which corresponds to the desired behavior since the system should ideally give a constant output for the same input sequence.
  • Our system is most sensitive to the parameter "a", which describes the base production. This is not a surprising result, since we depend on having a good switch. However, we cannot reliably switch off the production of the memory proteins cI and p22cII. This leads to a small signal to noise ration and in the worst case the memory does not work at all. For a more detailed analysis of the switching behavior please see our biological implementation page.
  • Other sensitive parameters are those that are directly related to the production and decay of the memory proteins cI and p22cII. This can be explained by the fact that our system prefers symmetry between the parameter sets of cI and p22cII, in order to support good switching behavior where the same concentration of p22cII leads to the same repression of cI and vice versa. We can especially see that those parameters seem to be more sensitive for the test cases 1 and 2, where cI has to be stored inside the memory. The reason for this behavior is due to the missing symmetry between the parameters for cI and p22cII, we currently have a bias inside the system towards the production of p22cII.