Team:TCU Taiwan/Modeling

From 2014.igem.org

(Difference between revisions)
 
(13 intermediate revisions not shown)
Line 6: Line 6:
<head>
<head>
<meta name="google-site-verification" content="pY8JgIYK6zMi9LoymHQcUKbj-xnD-rcPBrYI-xllU9o" />
<meta name="google-site-verification" content="pY8JgIYK6zMi9LoymHQcUKbj-xnD-rcPBrYI-xllU9o" />
 +
<script type="text/x-mathjax-config">
 +
  MathJax.Hub.Config({tex2jax: {inlineMath: [['$','$'], ['\\(','\\)']]}});
 +
</script>
 +
<script type="text/javascript"
 +
  src="https://c328740.ssl.cf1.rackcdn.com/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
 +
</script>
</head>
</head>
</html>
</html>
Line 111: Line 117:
     <ul>
     <ul>
       <li><a href="https://2014.igem.org/Team:TCU_Taiwan/Team"><font size="3">Members</font></a></li>
       <li><a href="https://2014.igem.org/Team:TCU_Taiwan/Team"><font size="3">Members</font></a></li>
 +
      <li><a href="https://2014.igem.org/Team:TCU_Taiwan/Achievements"><font size="3">Achievements</font></a></li>
       <li><a href="https://igem.org/Team.cgi?id=1473" target="_blank"><font size="3">Official Team Profile</font></a></li>
       <li><a href="https://igem.org/Team.cgi?id=1473" target="_blank"><font size="3">Official Team Profile</font></a></li>
       <li><a href="https://2014.igem.org/Team:TCU_Taiwan/Contact"><font size="3">Contact</font></a></li>
       <li><a href="https://2014.igem.org/Team:TCU_Taiwan/Contact"><font size="3">Contact</font></a></li>
Line 237: Line 244:
     <td>
     <td>
     <fieldset>
     <fieldset>
-
   <legend class="qnum" align="center"><font face="Trebuchet MS" size="6" color="#0092C7">3.Model Reliability</font><br>
+
   <legend class="qnum" align="center"><font face="Trebuchet MS" size="6" color="#0092C7">3.Building the Model</font><br>
   <font size="3" face="Verdana" color="#333"></font></legend>
   <font size="3" face="Verdana" color="#333"></font></legend>
-
<div class="wrapper" style="background-color: white;"><font size="3" face="Verdana" color="#333"><p>To build the model,we created, trained, and tested <strong>F</strong>uzzy <strong>I</strong>nference <strong>S</strong>ystem(FIS).We performed the following tasks:</p>
+
<div class="wrapper" style="background-color: white;">
-
   <p>1.Data <a href="http://en.wikipedia.org/wiki/Data_pre-processing" target="_blank">pre-processing</a><br>
+
  <p><font color="#333" size="3" face="Verdana">To build the model,we created, trained, and tested <strong>A</strong>daptive <strong>N</strong>etwork-based <strong>F</strong>uzzy <strong>I</strong>nference <strong>S</strong>ystem
 +
  (ANFIS).We performed the following tasks:</font></p>
 +
   <p><font color="#333" size="3" face="Verdana">1.Data <a href="http://en.wikipedia.org/wiki/Data_pre-processing" target="_blank">pre-processing</a><br>
   2.Loading the Data<br>
   2.Loading the Data<br>
-
   3.Generating  the Initial FIS Structure<br>
+
   3.Generating  the Initial ANFIS Structure<br>
-
   3.Training the FIS<br>
+
   4.Training the ANFIS<br>
-
   4.Validating the Trained FIS</p>
+
   5.Validating the Trained ANFIS</font></p><font size="3" face="Verdana" color="#333">
-
   <font face="Trebuchet MS" size="5" color="#90B849"><p>Data pre-processing</p></font>
+
   <font face="Trebuchet MS" size="5" color="#90B849"><p>&nbsp;</p>
-
   <font size="3" face="Verdana" color="#333"><p>&nbsp;</p>
+
  <p>1.Data pre-processing</p>
-
  <font face="Trebuchet MS" size="5" color="#90B849"><p>Loading the Data</p></font>
+
  </font>
 +
    
 +
  <p>We generated 70 data from our experiment and then picked $1\over 5$ of them randomly as Training Data. The other $4\over 5$ is treated as Testing Data.</p>
 +
 
 +
  <p>Because our results are too large (at least 10<sup>8</sup>), we divided them by 1 x 10<sup>6</sup>. This can help us analyzed these results more quickly.</p><font size="3" face="Verdana" color="#333"><font face="Trebuchet MS" size="5" color="#90B849">
 +
  <p>2.Loading the Data</p>
 +
  </font>
   </font>
   </font>
-
   <p>To train the FIS, we must begin by loading a Training data set that contains the desired input/output data of the system to be modeled. Any data set we load must be an array with the data arranged as column vectors, and the output data in the last column.We also loaded Testing data.</p>
+
   <p>To train the ANFIS, we must begin by loading a Training data set that contains the desired input/output data of the system to be modeled. Any data set we load must be an array with the data arranged as column vectors, and the output data in the last column.We also loaded Testing data.</p>
-
   <p><font face="Trebuchet MS" size="5" color="#90B849">Generating the Initial FIS Structure</font></p>
+
  <p>&nbsp;</p>
 +
   <p><font face="Trebuchet MS" size="5" color="#90B849">3.Generating the Initial ANFIS Structure</font></p>
</font>
</font>
-
   <p><font color="#333" size="3" face="Verdana">Before we start the FIS training, we specify an initial FIS model structure as below:</font></p><table width="70%" border="1" cellspacing="0" cellpadding="0" align="center">
+
   <p><font color="#333" size="3" face="Verdana">Before we start the ANFIS training, we specify an initial ANFIS model structure as below:</font></p>
 +
  <p>&nbsp;</p>
 +
  <table width="70%" border="0" cellspacing="0" cellpadding="0" align="center">
     <tr>
     <tr>
         <td align="center"><img src="https://static.igem.org/mediawiki/2014/8/8c/TCU_MD_Structure.png" width="100%"></td>
         <td align="center"><img src="https://static.igem.org/mediawiki/2014/8/8c/TCU_MD_Structure.png" width="100%"></td>
       </tr>
       </tr>
       <tr>
       <tr>
-
         <td align="center"><font size="3" face="Verdana"><strong>Fig3.1&nbsp;&nbsp;Initial FIS Model Structure</strong></font></td>
+
         <td align="center"><font size="3" face="Verdana"><strong>Fig3.1&nbsp;&nbsp;Initial ANFIS Model Structure</strong></font></td>
       </tr>
       </tr>
   </table>
   </table>
-
   <p><font face="Trebuchet MS" size="5" color="#90B849">Training the FIS</font></p>
+
   <font color="#333" size="3" face="Verdana">
-
  <p><font color="#333" size="3" face="Verdana">T</font></p>
+
  <p>The branches in this graph are color coded. Color coding of branches characterize the rules and indicate whether or not<em> and</em>, <em>not</em>, or <em>or</em> are used in the rules. The input is represented by the left-most node and the output by the right-most node. The node represents a normalization factor for the rules. </p></font>
-
   <p><font face="Trebuchet MS" size="5" color="#90B849">Validating the Trained FIS</font></p>
+
  <p>&nbsp;</p>
-
   <p><font color="#333" size="3" face="Verdana">T</font></p>
+
   <p><font face="Trebuchet MS" size="5" color="#90B849">4.Training the ANFIS</font></p>
-
   <font size="3" face="Verdana" color="#333"> </font>
+
   <p><font color="#333" size="3" face="Verdana">After loading the training data and generating the initial ANFIS structure, we started training the ANFIS. The number of training Epochs(Epochs means number of iterations) is over 2500.</font></p>
-
 
+
   <p><font color="#333" size="3" face="Verdana">During training we can see how Training error develops as below:</font><br><br>
-
 
+
   <p>
-
 
+
   <table width="85%" border="0" cellspacing="0" cellpadding="0" align="center">
-
    
+
-
</font>
+
-
   <table width="85%" border="1" cellspacing="0" cellpadding="0" align="center">
+
     <tr>
     <tr>
         <td align="center"><img src="https://static.igem.org/mediawiki/2014/d/dd/TCU_MD_Training_error.png" width="100%"></td>
         <td align="center"><img src="https://static.igem.org/mediawiki/2014/d/dd/TCU_MD_Training_error.png" width="100%"></td>
       </tr>
       </tr>
       <tr>
       <tr>
-
         <td align="center"><font size="3" face="Verdana"><strong>Fig.1&nbsp;&nbsp;Training Error</strong></font></td>
+
         <td align="center"><font size="3" face="Verdana"><strong>Fig3.2&nbsp;&nbsp;Training Error</strong></font></td>
       </tr>
       </tr>
-
   </table></div>
+
   </table></p>
 +
  <p>&nbsp;</p>
 +
  <p><font face="Trebuchet MS" size="5" color="#90B849">5.Validating the Trained ANFIS</font></p>
 +
  <p><font color="#333" size="3" face="Verdana">Finally,we had to test our data against the trained ANFIS.After the ANFIS is trained, validate the model using a Testing data that differs from the one we used to train the ANFIS. </font></p>
 +
  <p><font color="#333" size="3" face="Verdana">When we test the testing data against the ANFIS, it looks satisfactory.</font></p>
 +
  <p>&nbsp;</p>
 +
<table width="85%" border="0" cellspacing="0" cellpadding="0" align="center">
 +
    <tr>
 +
        <td align="center"><img src="https://static.igem.org/mediawiki/2014/e/e1/TCU_MD_Test.png" width="100%"></td>
 +
      </tr>
 +
      <tr>
 +
        <td align="center"><font size="3" face="Verdana"><strong>Fig3.3&nbsp;&nbsp;Testing our data against the trained ANFIS</strong></font></td>
 +
      </tr>
 +
  </table>
 +
 
 +
 
 +
 
 +
</font>
 +
  </div>
<br>
<br>
<div class="wrapper" style="background-color: white;"></div></fieldset></td>
<div class="wrapper" style="background-color: white;"></div></fieldset></td>
Line 289: Line 322:
   <font size="3" face="Verdana" color="#333"></font></legend>
   <font size="3" face="Verdana" color="#333"></font></legend>
<div class="wrapper" style="background-color: white;"><br>
<div class="wrapper" style="background-color: white;"><br>
-
   <p><font face="Trebuchet MS" size="5" color="#90B849">Model 1 : Release</font> </p><p><font size="3" face="Verdana" color="#333">We chose two variables to find the best  release amount of phage after helper phage infecting. The first variable is the  time after we input helper phages M13KO7 into <em>E.Coli </em>(JM101) with phagemid pBluescript II SK(-).(We have put<a href="http://parts.igem.org/Part:BBa_I13521" target="_blank"> BBa_I13521</a> inside as an reporter gene.)This is the time for helper phages to infect bacterium.<br><br>
+
   <p><font face="Trebuchet MS" size="5" color="#90B849">Model 1 : Release</font> </p><p><font size="3" face="Verdana" color="#333">We chose two variables to find the best  release amount of phage after helper phage infecting. The first variable is the  time after we input helper phages M13KO7 into <em>E.coli </em>(JM101) with phagemid pBluescript II SK(-).(We have put<a href="http://parts.igem.org/Part:BBa_I13521" target="_blank"> BBa_I13521</a> inside as an reporter gene.)This is the time for helper phages to infect bacterium.<br><br>
     After the infection, we added kanamycin  into these JM101 for selection becauseJM101  can get kanamycin resistance only when they are infected by M13KO7. Then we  incubated these JM101 so they can have time to release phagemid-carrying phage,  and the incubating time is the second variable in our test.<br><br>
     After the infection, we added kanamycin  into these JM101 for selection becauseJM101  can get kanamycin resistance only when they are infected by M13KO7. Then we  incubated these JM101 so they can have time to release phagemid-carrying phage,  and the incubating time is the second variable in our test.<br><br>
     As we can see in this figure, the most  amount of phage being released is at the time when we add kanamycin after 30  minutes of infection and then incubate them for 14 hours. Under this condition,  the best releasing amount of phage is 4×10<sup>10</sup> pfu/ml.</font></p>
     As we can see in this figure, the most  amount of phage being released is at the time when we add kanamycin after 30  minutes of infection and then incubate them for 14 hours. Under this condition,  the best releasing amount of phage is 4×10<sup>10</sup> pfu/ml.</font></p>
Line 296: Line 329:
     <br>
     <br>
   </p></font>
   </p></font>
-
   <table width="80%" border="1" cellspacing="0" cellpadding="0" align="center">
+
   <table width="80%" border="0" cellspacing="0" cellpadding="0" align="center">
     <tr>
     <tr>
         <td align="center"><img src="https://static.igem.org/mediawiki/2014/d/d8/TCU_MD_Surface1.jpg" width="837" height="421"></td>
         <td align="center"><img src="https://static.igem.org/mediawiki/2014/d/d8/TCU_MD_Surface1.jpg" width="837" height="421"></td>
Line 310: Line 343:
     <font size="3" face="Verdana" color="#333"><p>Then we came up with another question: Under  which condition will we get the best infection rate of our phagemid-carrying  phage? We believe this is influenced by the MOI between phages and bacterium.  MOI means multiplicity of infection, it is the ratio of agents (phage-carrying  phage) to infection targets (<em>E.coli</em> JM101). So we choose MOI as the variable, and incubate bacterium for 1 hour  after infecting.<br>
     <font size="3" face="Verdana" color="#333"><p>Then we came up with another question: Under  which condition will we get the best infection rate of our phagemid-carrying  phage? We believe this is influenced by the MOI between phages and bacterium.  MOI means multiplicity of infection, it is the ratio of agents (phage-carrying  phage) to infection targets (<em>E.coli</em> JM101). So we choose MOI as the variable, and incubate bacterium for 1 hour  after infecting.<br>
       In our test, we found that as long as the  MOI is higher than 6 pfu/cfu, the infection rate can access 100%. This is an  exciting result!!</p></font><br><br>
       In our test, we found that as long as the  MOI is higher than 6 pfu/cfu, the infection rate can access 100%. This is an  exciting result!!</p></font><br><br>
-
       <table width="70%" border="1" cellspacing="0" cellpadding="0" align="center">
+
       <table width="70%" border="0" cellspacing="0" cellpadding="0" align="center">
       <tr>
       <tr>
-
         <td  align="right">Tip:Move to the points,it will show the values.</td>
+
         <td  align="right">Tip: Clicking on the points indicates information about the value.</td>
       </tr>
       </tr>
       <tr>
       <tr>

Latest revision as of 17:02, 17 October 2014



 
Modeling
 
 
1.Introduction

Because our Trogene Horse use phages as vector, it is very important to know how to make the best of these phages. This means we need to get a condition under which these phages can work most efficiently.

In our experiment, the phage display can be descripted as:
Prepare E.coli JM101 with phagemid→ Add M13KO7 to infect JM101 → Add kanamycin for selection → Incubate for phagemid-carrying phage releasing → Use phagemid-carrying phage infect blank JM101.

Thus, we chose two events as characters of phage’s efficiency:

1. The release amount of phage after helper phage infection.
2. The infection rate of our phagemid-carrying phage

So we collected some experimental data for modeling. And here comes the result.
We wolud like to give our appreciation to NCTU-Formosa, they taught us how to make this modeling.


 
 
2.Software

MATLAB

MATLAB(MATrix LABoratory) is a high-level language and interactive environment for numerical computation, visualization, and programming. Using MATLAB, you can analyze data, develop algorithms, and create models and applications. The language, tools, and built-in math functions enable you to explore multiple approaches and reach a solution faster than with spreadsheets or traditional programming languages, such as C/C++ or Java™.





ANFIS

The architecture and learning procedure underlying ANFIS (Adaptive Network-based Fuzzy Inference System) is presented, which is a fuzzy inference system implemented in the framework of adaptive networks. By using a hybrid learning procedure, the proposed ANFIS can construct an input-output mapping based on both human knowledge (in the form of fuzzy if-then rules) and stipulated input-output data pairs. In the simulation, the ANFIS architecture is employed to model nonlinear functions, identify nonlinear components on-line in a control system, and predict a chaotic time series, all yielding remarkable results. Comparisons with artificial neural networks and earlier work on fuzzy modeling are listed and discussed.


 
3.Building the Model

To build the model,we created, trained, and tested Adaptive Network-based Fuzzy Inference System (ANFIS).We performed the following tasks:

1.Data pre-processing
2.Loading the Data
3.Generating the Initial ANFIS Structure
4.Training the ANFIS
5.Validating the Trained ANFIS

 

1.Data pre-processing

We generated 70 data from our experiment and then picked $1\over 5$ of them randomly as Training Data. The other $4\over 5$ is treated as Testing Data.

Because our results are too large (at least 108), we divided them by 1 x 106. This can help us analyzed these results more quickly.

2.Loading the Data

To train the ANFIS, we must begin by loading a Training data set that contains the desired input/output data of the system to be modeled. Any data set we load must be an array with the data arranged as column vectors, and the output data in the last column.We also loaded Testing data.

 

3.Generating the Initial ANFIS Structure

Before we start the ANFIS training, we specify an initial ANFIS model structure as below:

 

Fig3.1  Initial ANFIS Model Structure

The branches in this graph are color coded. Color coding of branches characterize the rules and indicate whether or not and, not, or or are used in the rules. The input is represented by the left-most node and the output by the right-most node. The node represents a normalization factor for the rules.

 

4.Training the ANFIS

After loading the training data and generating the initial ANFIS structure, we started training the ANFIS. The number of training Epochs(Epochs means number of iterations) is over 2500.

During training we can see how Training error develops as below:

Fig3.2  Training Error

 

5.Validating the Trained ANFIS

Finally,we had to test our data against the trained ANFIS.After the ANFIS is trained, validate the model using a Testing data that differs from the one we used to train the ANFIS.

When we test the testing data against the ANFIS, it looks satisfactory.

 

Fig3.3  Testing our data against the trained ANFIS

 
4.Results

Model 1 : Release

We chose two variables to find the best release amount of phage after helper phage infecting. The first variable is the time after we input helper phages M13KO7 into E.coli (JM101) with phagemid pBluescript II SK(-).(We have put BBa_I13521 inside as an reporter gene.)This is the time for helper phages to infect bacterium.

After the infection, we added kanamycin into these JM101 for selection becauseJM101 can get kanamycin resistance only when they are infected by M13KO7. Then we incubated these JM101 so they can have time to release phagemid-carrying phage, and the incubating time is the second variable in our test.

As we can see in this figure, the most amount of phage being released is at the time when we add kanamycin after 30 minutes of infection and then incubate them for 14 hours. Under this condition, the best releasing amount of phage is 4×1010 pfu/ml.

This modleing is been helper by NCTU-Formosa. They analyzed our data and made this modeling.

Thanks NCTU-Formosa!!! You are our best friend!

Fig4.1  Model1

 

 



Model 2 : Infection Rate

Then we came up with another question: Under which condition will we get the best infection rate of our phagemid-carrying phage? We believe this is influenced by the MOI between phages and bacterium. MOI means multiplicity of infection, it is the ratio of agents (phage-carrying phage) to infection targets (E.coli JM101). So we choose MOI as the variable, and incubate bacterium for 1 hour after infecting.
In our test, we found that as long as the MOI is higher than 6 pfu/cfu, the infection rate can access 100%. This is an exciting result!!



Tip: Clicking on the points indicates information about the value.

Fig4.2  Model2

 
^


    
Team Members Project Parts Human Pratics Modeling Safety Notebook Attributions

Lost the way? Use it to help you if you're lost.

^