Team:TCU Taiwan/Modeling

From 2014.igem.org

(Difference between revisions)
Line 239: Line 239:
   <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.Model Reliability</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><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><font size="3" face="Verdana" color="#333">
   <p>1.Data <a href="http://en.wikipedia.org/wiki/Data_pre-processing" target="_blank">pre-processing</a><br>
   <p>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>
+
   3.Training the ANFIS<br>
-
   4.Validating the Trained FIS</p>
+
   4.Validating the Trained ANFIS</p>
   <font face="Trebuchet MS" size="5" color="#90B849"><p>&nbsp;</p>
   <font face="Trebuchet MS" size="5" color="#90B849"><p>&nbsp;</p>
   <p>Data pre-processing</p>
   <p>Data pre-processing</p>
Line 253: Line 255:
   </font>
   </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>&nbsp;</p>
   <p>&nbsp;</p>
-
   <p><font face="Trebuchet MS" size="5" color="#90B849">Generating the Initial FIS Structure</font></p>
+
   <p><font face="Trebuchet MS" size="5" color="#90B849">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><table width="70%" border="1" 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>
   <font color="#333" size="3" face="Verdana"><p>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. </p></font>
   <font color="#333" size="3" face="Verdana"><p>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. </p></font>
-
  <p><font face="Trebuchet MS" size="5" color="#90B849">Training the FIS</font></p>
 
-
  <p><font color="#333" size="3" face="Verdana">T</font></p>
 
   <p>&nbsp;</p>
   <p>&nbsp;</p>
-
   <p><font face="Trebuchet MS" size="5" color="#90B849">Validating the Trained FIS</font></p>
+
   <p><font face="Trebuchet MS" size="5" color="#90B849">Training the ANFIS</font></p>
-
   <p><font color="#333" size="3" face="Verdana">T</font></p>
+
   <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>
-
   <font size="3" face="Verdana" color="#333"> </font>
+
   <p><font color="#333" size="3" face="Verdana">During training we can see how Training error develops as below:</font>
-
 
+
-
 
+
-
 
+
-
 
+
-
</font>
+
   <table width="85%" border="1" cellspacing="0" cellpadding="0" align="center">
   <table width="85%" border="1" cellspacing="0" cellpadding="0" align="center">
     <tr>
     <tr>
Line 282: Line 277:
       </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><font face="Trebuchet MS" size="5" color="#90B849">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 FIS, it looks satisfactory.</font></p>
 +
<table width="85%" border="1" 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>

Revision as of 20:28, 16 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.Model Reliability

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
3.Training the ANFIS
4.Validating the Trained ANFIS

 

Data pre-processing

 

 

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.

 

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.

 

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

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 FIS, 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.

^