ETHZ/Simulation

From 2007.igem.org

< ETHZ(Difference between revisions)
m (Changed figures to the correct ones.)
 
(47 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 28: Line 22:
<li><a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Simulation" title="Simulations" rel="dropmenu_simulation"><span>Simulations</span></a></li>
<li><a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Simulation" title="Simulations" rel="dropmenu_simulation"><span>Simulations</span></a></li>
<li><a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Biology" title="System Implementation" rel="dropmenu_biology"><span>System Implementation</span></a></li>
<li><a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Biology" title="System Implementation" rel="dropmenu_biology"><span>System Implementation</span></a></li>
-
<li><a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Biology/Lab" title="Lab Notes" rel="dropmenu_labnotes"><span>Lab Notes</span></a></li>
 
<li><a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Meet_the_team" title="Meet the team" rel="dropmenu_meettheteam"><span>Meet the team</span></a></li>
<li><a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Meet_the_team" title="Meet the team" rel="dropmenu_meettheteam"><span>Meet the team</span></a></li>
<li><a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Pictures" title="Pictures!" rel="dropmenu_pictures"><span>Pictures!</span></a></li>
<li><a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Pictures" title="Pictures!" rel="dropmenu_pictures"><span>Pictures!</span></a></li>
</ul>
</ul>
</div>
</div>
-
 
<div class="ddcolortabsline">&nbsp;</div>
<div class="ddcolortabsline">&nbsp;</div>
Line 52: Line 44:
<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#Detailed_Model">Detailed Model</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/Model#Final_Model">Final Model</a>
-
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Modeling_Basics">Modeling Basics</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</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</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</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/Parameters">Parameters</a>
+
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Parameters">Parameters Page</a>
</div>
</div>
Line 62: Line 54:
<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</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#Simulations_of_Test_Cases">Test Cases</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/Model#Sensitivity_Analysis">Sensitivity Analysis</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_modeling" 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/Model#Introduction">Introduction</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/Model#Model_Overview">Model Overview</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/Model#Detailed_Model">Detailed Model</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/Model#Final_Model">Final Model</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/Modeling_Basics">Modeling Basics</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/Model#Mathematical_Model">Mathematical Model</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/FSM">FSM View</a>
+
</div>
-
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/FlipFlop">Flip-Flop View</a>
+
 
-
<a href="https://2007.igem.org/wiki/index.php?title=ETHZ/Parameters">Parameters</a>
+
<!--5th drop down menu -->
 +
<div id="dropmenu_meettheteam" class="dropmenudiv_a" style="width: 150px;">
 +
<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/Internal">Brainstorming Page</a>
</div>
</div>
Line 85: Line 81:
</html>
</html>
 +
__NOTOC__
=Introduction=
=Introduction=
Line 90: Line 87:
As has been presented in the [[ETHZ/Model | 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.
As has been presented in the [[ETHZ/Model | 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.
-
[[Image:ETHzFlowdiagram2.png|center|thumb|<b>Fig. 1</b>: 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. |380px]]
+
[[Image:ETHzFlowdiagram2.png|center|thumb|<b>Fig. 1</b>: 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. |500px]]
== 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 101: 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 cyan florescent proteins (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 is presented aTc during the recognition phase. The system reports by producing red fluorescent proteins (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:ETHZTest3correct.png|left|thumb|<b>Fig. 4</b>: Test case 3 - 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 yellow fluorescent proteins (YFP), which matches the desired behavior. |420px]]
+
[[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:ETHZTest4correct.png|right|thumb|<b>Fig. 5</b>: Test case 4 - 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 green florescent proteins (GFP) during the recognition phase, which matches the desired behavior. |420px]]</p>
+
 
 +
[[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==
-
In order for one to ensure a biological system will operate as it was modeled, he/she should understand the sensitivity of the system's behavior to all involved parameters. Due to the uncertainty in parameter retrieval, we would like our system to have reduced sensitivity to the parameters that are affected mostly by noise. That way, we can have a guaranteed stable performance, even under non-simulated conditions.
+
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.
 +
 
 +
[[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 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]]
 +
 
 +
<!---<math>Sensitivity = \left | \frac{[ CFP^{105%}_{recognition} ] }{\left [ CFP^{105%}_{baseline}\right ] }- \frac{\left [ CFP^{95%}_{recognition} \right ] }{\left [ CFP^{95%}_{baseline} \right ] }\right |</math>--->
-
[[Image:ETHZSensitivity.png|right|thumb|<b>Fig. 5</b>: Sensitivity analysis |420px]]
+
where
 +
* [CFP<sub>recognition</sub><sup>105%</sup>] describes the concentration of CFP during the recognition phase when the parameter that we test for is increased by 5%,
 +
* [CFP<sub>baseline</sub><sup>105%</sup>] describes the concentration of CFP without any inducers given to the system when the parameter that we test for is increased by 5%,
 +
* [CFP<sub>recognition</sub><sup>95%</sup>] describes the concentration of CFP during the recognition phase when the parameter that we test for is decreased by 5%, and
 +
* [CFP<sub>baseline</sub><sup>95%</sup>] describes the concentration of CFP without any inducers given to the system when the parameter that we test for is decreased by 5%.
-
We simulated the behavior of our system throughout all its phases, while sweeping the parameters by 5%, one at a time. More specifically for the case presented in Fig. 1, we carried out the following procedure:
+
All concentrations are gained from timing simulations as shown in Fig. 2 when the concentrations reached steady state. E.g. [CFP<sub>recognition</sub>] corresponds to the value of CFP after 4000 minutes while [CFP<sub>baseline</sub>] is equal to the value for CFP after 1000 minutes.
-
For each parameter, we did the timing simulation as shown in Fig. 2. Once we increased the parameter by 5%, and once we decreased the parameter by 5%. Since in test case 1 (Fig. 2) we are interested in having a high concentration of CFP during the recognition phase with respect to the base line, we divide the steady state CFP concentration at 4000 minutes by the baseline concentration at 1000 minutes. Finally, as shown in the following equation, we define the sensitivity by subtracting the resulting factor that we get with an increased parameter, from the resulting factor that we get by a decreased parameter.
+
-
[[Image:ETHZSensititivityequation.png|center|320px]]
+
We define sensitivity by using the ratio of [CFP<sub>recognition</sub>] and [CFP<sub>baseline</sub>] 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 can summarize that, if there is no difference in the concentration of the desired output during the recognition phase with respect to baseline when sweeping a parameter by +/-5%, the sensitivity of that parameter is equal to zero. Otherwise the sensitivity gives us a measure of how much the concentration changes.
+
We subtract the two ratios of [CFP<sub>recognition</sub>]/[CFP<sub>baseline</sub>] 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 test cases. The results are plotted in Fig. 5.
+
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:
The conclusions that can be derived from our sensitivity analysis are the following:
-
* 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, and our signal-to-noise ratio, or output to baseline production level, depends  highly on the fact that we can reliably switch off the production of the memory proteins cI and p22cII. For a more detailed analysis of the switching behavior please see our [[ETHZ/Biology | biological implementation]] page.
+
* 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 [[ETHZ/Biology | 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.
* 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.

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.