Difference between revisions of "Team:Tongji Software/Model"

Line 145: Line 145:
 
         }
 
         }
 
         /* -------------------------------- footer style-------------------------------- */
 
         /* -------------------------------- footer style-------------------------------- */
      .footer-distributed {
 
            margin-bottom: 0;
 
            position: absolute;
 
            width: 100vw;
 
            height: auto;
 
            background-color: rgba(0, 0, 0, 0.4);
 
            margin-left: auto;
 
            margin-right: auto;
 
            color: white;
 
            /* box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.4); */
 
            box-shadow: 0 0 10px 0 rgba(255, 255, 255, 0.1)
 
        }
 
       
 
        .footer-left {
 
            position: absolute;
 
            left: 2vw;
 
            top: 0;
 
            width: 60%;
 
            text-align: left;
 
            padding-right: 5%;
 
            padding-left: 5%;
 
        }
 
       
 
        .footer-right {
 
            position: absolute;
 
            right: 0;
 
            top: 0;
 
            width: 40%;
 
            text-align: left;
 
            padding-left: 5%;
 
            padding-top: 3%;
 
        }
 
       
 
        #footer-info {
 
            width: 100%;
 
            text-align: center;
 
            height: 2em;
 
        }
 
       
 
        .footer-all {
 
            height: 14em;
 
            width: 100%;
 
        }
 
       
 
        .footer-links {
 
            padding-top: 3em;
 
        }
 
       
 
        .sponsors {
 
            height: 5vh;
 
            margin-right: 1em;
 
            margin-bottom: 0.6em;
 
        }
 
       
 
        .my-content-p3 {
 
            font-family: "arial", sans-serif;
 
            font-size: 1em;
 
            line-height: 2em;
 
            color: white;
 
        }
 
       
 
        @media only screen and (max-width:600px) {
 
            .sponsors {
 
                width: 2.5em;
 
                margin-right: 0.5em;
 
                margin-bottom: 0.3em;
 
            }
 
            .my-content-p3 {
 
                font-family: "arial", sans-serif;
 
                font-size: 1 em;
 
                line-height: 1em;
 
                color: white;
 
            }
 
            .footer-distributed {
 
                margin-top: 0%;
 
                position: relative;
 
                width: 90%;
 
                height: auto;
 
                background-color: #D1D1D2;
 
                margin-left: auto;
 
                margin-right: auto;
 
            }
 
        }
 
 
 
 
         /* --------------------------------  
 
         /* --------------------------------  
  
Line 342: Line 257:
 
             font-size: 1.4em;
 
             font-size: 1.4em;
 
             overflow: unset;
 
             overflow: unset;
text-shadow:0 0 20px #fff,1px 1px 2px #fff;
+
            text-shadow: 0 0 20px #fff, 1px 1px 2px #fff;
font-weight:bold;
+
            font-weight: bold;
 
+
 
         }
 
         }
 
         /*总标题*/
 
         /*总标题*/
Line 357: Line 271:
 
             padding-bottom: 1.2em;
 
             padding-bottom: 1.2em;
 
             overflow: unset;
 
             overflow: unset;
text-shadow:0 0 20px #fff,1px 1px 5px #fff;
+
            text-shadow: 0 0 20px #fff, 1px 1px 5px #fff;
 
+
 
         }
 
         }
 
         /*三个部分的大标题*/
 
         /*三个部分的大标题*/
Line 371: Line 284:
 
             padding-bottom: 1.2em;
 
             padding-bottom: 1.2em;
 
             overflow: unset;
 
             overflow: unset;
text-shadow:0 0 20px #fff,1px 1px 3px #fff;
+
            text-shadow: 0 0 20px #fff, 1px 1px 3px #fff;
 
+
 
         }
 
         }
 
          
 
          
Line 384: Line 296:
 
             padding-bottom: 0.5em;
 
             padding-bottom: 0.5em;
 
             /*padding-top: 2em;*/
 
             /*padding-top: 2em;*/
text-shadow:0 0 20px #fff,1px 1px 3px #fff;
+
            text-shadow: 0 0 20px #fff, 1px 1px 3px #fff;
 
+
 
         }
 
         }
 
          
 
          
Line 443: Line 354:
 
          
 
          
 
         @media only screen and (min-width: 768px) {
 
         @media only screen and (min-width: 768px) {
            /*.cd-section h1 {
 
    font-size: 30px;
 
    font-size: 1.875rem;
 
  }*/
 
            /*p的字体设置*/
 
 
             #SectionContainer .cd-section p {
 
             #SectionContainer .cd-section p {
 
                 /*font-size: 1px;*/
 
                 /*font-size: 1px;*/
Line 569: Line 475:
 
             -o-transform-origin: 100% 50%;
 
             -o-transform-origin: 100% 50%;
 
             transform-origin: 100% 50%;
 
             transform-origin: 100% 50%;
text-shadow:0 0 20px #fff,1px 1px 3px #fff;
+
            text-shadow: 0 0 20px #fff, 1px 1px 3px #fff;
 
+
 
         }
 
         }
 
         /* Touch devices */
 
         /* Touch devices */
Line 718: Line 623:
 
                 bottom: 40px;
 
                 bottom: 40px;
 
             }
 
             }
         }  
+
         }
 
     </style>
 
     </style>
  
Line 781: Line 686:
 
                     </div>
 
                     </div>
 
                     <img src="https://static.igem.org/mediawiki/2019/3/3a/T--Tongji_Software--model_DFS.gif" class="PushImage" width="40%" alt="DFS">
 
                     <img src="https://static.igem.org/mediawiki/2019/3/3a/T--Tongji_Software--model_DFS.gif" class="PushImage" width="40%" alt="DFS">
<br><p style="text-align: center;font-size: 1.1vw;">Gif1. Search process of DFS</p><br><br>
+
                    <br>
 +
                    <p style="text-align: center;font-size: 1.1vw;">Gif1. Search process of DFS</p><br><br>
 
                 </div>
 
                 </div>
  
Line 792: Line 698:
 
                 <br>
 
                 <br>
 
                 <img src="https://static.igem.org/mediawiki/2019/3/37/T--Tongji_Software--model_Optimization_of_DFS.png" class="PushImage" width="80%" alt="DFS"><br>
 
                 <img src="https://static.igem.org/mediawiki/2019/3/37/T--Tongji_Software--model_Optimization_of_DFS.png" class="PushImage" width="80%" alt="DFS"><br>
<p style="text-align: center;font-size: 1.1vw;">Fig1. Time consuming between DFS & optimized DFS in different depths</p><br><br>
+
                <p style="text-align: center;font-size: 1.1vw;">Fig1. Time consuming between DFS & optimized DFS in different depths</p><br><br>
 
                 <br>
 
                 <br>
  
Line 802: Line 708:
 
                 <br>
 
                 <br>
 
                 <img src="https://static.igem.org/mediawiki/2019/d/da/T--Tongji_Software--model_Another_choice_BFS1.png" class="PushImage" width="80%" alt="DFS"><br>
 
                 <img src="https://static.igem.org/mediawiki/2019/d/da/T--Tongji_Software--model_Another_choice_BFS1.png" class="PushImage" width="80%" alt="DFS"><br>
<p style="text-align: center;font-size: 1.1vw;">Fig2. Time consuming of DFS exponentially increases by search depth</p><br><br>
+
                <p style="text-align: center;font-size: 1.1vw;">Fig2. Time consuming of DFS exponentially increases by search depth</p><br><br>
 
                 <img src="https://static.igem.org/mediawiki/2019/5/5a/T--Tongji_Software--model_Another_choice_BFS2.gif" class="PushImage" width="40%" alt="DFS"><br>
 
                 <img src="https://static.igem.org/mediawiki/2019/5/5a/T--Tongji_Software--model_Another_choice_BFS2.gif" class="PushImage" width="40%" alt="DFS"><br>
<p style="text-align: center;font-size: 1.1vw;">Gif2. Search process of Greedy</p><br><br>
+
                <p style="text-align: center;font-size: 1.1vw;">Gif2. Search process of Greedy</p><br><br>
 
                 <br>
 
                 <br>
  
Line 814: Line 720:
 
                     that when users require less needed paths, Greedy performs very well, and when users required only 1, the error rate is almost no more than 1%. Overall, the Greedy error rate is very low and does not significantly affect user usage.</p>
 
                     that when users require less needed paths, Greedy performs very well, and when users required only 1, the error rate is almost no more than 1%. Overall, the Greedy error rate is very low and does not significantly affect user usage.</p>
 
                 <br>
 
                 <br>
                 <p>In addition, in terms of speed, we conducted 20 random tests (Fig. 6) and found that the speed of Greedy could be much faster than that of DFS. But larger random tests have shown that the operation time of Greedy is very unstable. When there
+
                 <p>In addition, in terms of speed, we conducted 20 random tests (Fig. 6) and found that the speed of Greedy could be much faster than that of DFS. But larger random tests have shown that the operation time of Greedy is very unstable. When
                     is no pathway between the two compounds, the Greedy needs to search data of the same size as DFS. Since the Greedy needs to maintain a priority queue, its single-step search takes much longer than DFS, and the operation time of Greedy is unacceptably
+
                     there is no pathway between the two compounds, the Greedy needs to search data of the same size as DFS. Since the Greedy needs to maintain a priority queue, its single-step search takes much longer than DFS, and the operation time
                    long. So we can't just use Greedy instead of DFS.</p>
+
                    of Greedy is unacceptably long. So we can't just use Greedy instead of DFS.</p>
 
                 <br>
 
                 <br>
 
                 <img src="https://static.igem.org/mediawiki/2019/2/24/T--Tongji_Software--model_BFS_Heatmap.png" class="PushImage" width="60%" alt="DFS"><br><br><br>
 
                 <img src="https://static.igem.org/mediawiki/2019/2/24/T--Tongji_Software--model_BFS_Heatmap.png" class="PushImage" width="60%" alt="DFS"><br><br><br>
 
                 <img src="https://static.igem.org/mediawiki/2019/e/e0/T--Tongji_Software--model_Validation_of_BFS.png" class="PushImage" width="80%" alt="DFS"><br>
 
                 <img src="https://static.igem.org/mediawiki/2019/e/e0/T--Tongji_Software--model_Validation_of_BFS.png" class="PushImage" width="80%" alt="DFS"><br>
<p style="text-align: center;font-size: 1.1vw;">Fig3. Comparison of time consuming between DFS & Greedy</p><br><br>
+
                <p style="text-align: center;font-size: 1.1vw;">Fig3. Comparison of time consuming between DFS & Greedy</p><br><br>
  
 
                 <p><b>Build a model</b></p>
 
                 <p><b>Build a model</b></p>
Line 840: Line 746:
 
                 <br>
 
                 <br>
 
                 <img src="https://static.igem.org/mediawiki/2019/8/86/T--Tongji_Software--model_Build_a_model3.png" class="PushImage" width="60%" alt="DFS">
 
                 <img src="https://static.igem.org/mediawiki/2019/8/86/T--Tongji_Software--model_Build_a_model3.png" class="PushImage" width="60%" alt="DFS">
                 <p>After the above steps, we trained a random forest regression model and obtained 3000 random test samples to verify it. The results showed that the calculation of these test samples only using DFS took about 10,000 seconds. With Greedy alone,
+
                 <p>After the above steps, we trained a random forest regression model and obtained 3000 random test samples to verify it. The results showed that the calculation of these test samples only using DFS took about 10,000 seconds. With Greedy
                     it takes about 260,000 seconds; When the best algorithm is used every time, it takes about 7000 seconds. When using the model for prediction, it takes 9,100 seconds. Our model makes our running speed close to the theoretical optimal
+
                     alone, it takes about 260,000 seconds; When the best algorithm is used every time, it takes about 7000 seconds. When using the model for prediction, it takes 9,100 seconds. Our model makes our running speed close to the theoretical
                     value of about 30%.</p>
+
                     optimal value of about 30%.</p>
 
             </section>
 
             </section>
 
             <!-- cd-section -->
 
             <!-- cd-section -->
Line 875: Line 781:
 
                 <p>Among this statistic, if there is pH record in database, it will be added to the pH list. If not, we count the KM value from other enzymes that exists in the same organism. And get the median as the substitute. Temperature is the same.</p>
 
                 <p>Among this statistic, if there is pH record in database, it will be added to the pH list. If not, we count the KM value from other enzymes that exists in the same organism. And get the median as the substitute. Temperature is the same.</p>
 
                 <img src="https://static.igem.org/mediawiki/2019/5/57/T--Tongji_Software--model_flow.png" class="PushImage" width="110%" alt="DFS"><br>
 
                 <img src="https://static.igem.org/mediawiki/2019/5/57/T--Tongji_Software--model_flow.png" class="PushImage" width="110%" alt="DFS"><br>
<p style="text-align: center;font-size: 1.1vw;">Fig4. pH & temperature distribution in E.coli & yeast environment</p><br><br>
+
                <p style="text-align: center;font-size: 1.1vw;">Fig4. pH & temperature distribution in E.coli & yeast environment</p><br><br>
 
                 <p>Base on this model, we consider the frequency as the similarity score.</p>
 
                 <p>Base on this model, we consider the frequency as the similarity score.</p>
 
                 <br>
 
                 <br>
Line 920: Line 826:
 
                     of E.coli is 0.58, so we set the target GC content range as [0.574, 0.586]. And the results are as follow.</p>
 
                     of E.coli is 0.58, so we set the target GC content range as [0.574, 0.586]. And the results are as follow.</p>
 
                 <img src="https://static.igem.org/mediawiki/2019/5/55/T--Tongji_Software--model_condon_plot1.png" class="PushImage" width="100%" alt="DFS"><br>
 
                 <img src="https://static.igem.org/mediawiki/2019/5/55/T--Tongji_Software--model_condon_plot1.png" class="PushImage" width="100%" alt="DFS"><br>
<p style="text-align: center;font-size: 1.1vw;">Fig5. Codon optimization result showed by CAI value (left) & GC content (right) </p><br><br>
+
                <p style="text-align: center;font-size: 1.1vw;">Fig5. Codon optimization result showed by CAI value (left) & GC content (right) </p><br><br>
  
  
Line 937: Line 843:
 
             </section>
 
             </section>
 
             <!-- cd-section -->
 
             <!-- cd-section -->
        </div>
 
<footer class="footer-distributed">
 
        <div class="footer-all">
 
            <div class="footer-right">
 
                <h3 style="font-size: 1.5vw;"><b>Contact</b></h3>
 
                <br>
 
                <p class="my-content-p3">College of Life Science and Technology</p>
 
                <p class="my-content-p3">Tongji university </p>
 
                <p class="my-content-p3">No.1239, Yangpu District, Shanghai, China</p>
 
                <p class="my-content-p3" style="word-wrap:break-word;">Email: Tongji_Software2019@126.com</p>
 
            </div>
 
 
         </div>
 
         </div>
  
        <div class="footer-left">
 
 
            <div class="footer-links">
 
                <img class="sponsors" src="../images/logo.png" alt="Tongji University">
 
                <img class="sponsors" src="../images/tjlf.png" alt="Tongji University">
 
                <img class="sponsors" src="../images/GENEWIZI.PNG" alt="Tongji University">
 
                <br><br><br>
 
                <img class="sponsors" src="../images/kegg.png" alt="Tongji University">
 
                <img class="sponsors" src="../images/BRENDA_y_s.png" alt="Tongji University">
 
                <img class="sponsors" src="../images/alpha_ant.png" alt="Tongji University">
 
                <img class="sponsors" src="../images/Pathlab-white.png" alt="Tongji University">
 
                <img class="sponsors" src="../images/T--Tongji_Software--picture-logo2.png" alt="Tongji University">
 
                <img class="sponsors" src="../images/EUCST.png" alt="Tongji University">
 
            </div>
 
 
        </div>
 
 
        <div id="footer-info" class="inner">
 
            <p class="my-content-p3" style="color: #777; text-align: center !important;">Copyright © 2019 Tongji_Software</p>
 
        </div>
 
    </footer>
 
  
 
         <script src="https://2019.igem.org/Template:Tongji_Software/js/jquery_210_min_js?action=raw&ctype=text/javascript"></script>
 
         <script src="https://2019.igem.org/Template:Tongji_Software/js/jquery_210_min_js?action=raw&ctype=text/javascript"></script>
 
         <script src="https://2019.igem.org/Template:Tongji_Software/js/ProjectMain_js?action=raw&ctype=text/javascript"></script>
 
         <script src="https://2019.igem.org/Template:Tongji_Software/js/ProjectMain_js?action=raw&ctype=text/javascript"></script>
 +
 
     </div>
 
     </div>
 
     <!-- Resource jQuery -->
 
     <!-- Resource jQuery -->

Revision as of 20:42, 20 October 2019

Tongji Software | Pathlab

PROJECT Open navigation

MODEL

ENZYME SELECTION



Overview

For each enzyme in the pathway by searching or just for one enzyme selection, we can get it’s physical and chemical properties in each organism that exist the selected enzyme. First of all, we make a hypothesis that the users’ experimental engineering bacteria is E.coli or yeast. So we compare all the organism with E.coli or yeast with physical and chemical properties.


After reading paper, we found that there is no standard or formula for this compare methods, and the environment is stable[] in every organism. So we build our enzyme score model by talking about with teachers.


KKM and KM comparison score

After we get many enzyme records, considering the difference of magnitude, we use the standardization of dispersion to calculate the comparison score.


Among this statistic, if there is KM record in database, it will be added to the KM list. If not, we count the KM value from other enzymes that catalytic the same substrate. And get the median as the substitute.


First, we get all KM value and KKM value for selected enzymes as two list. We calculate the KM and KKM position in the interval of KM list and KKM list. And the position distribution is the KKM and KM comparison score.

DFS

The way of calculate KKM score is the same.

DFS

pH and temperature similarity score

We make a statistic in the data to build a model for the comparison between experimental engineering bacteria and select enzyme.


We statistic every physical and chemical properties of enzyme come from E.coli or yeast. And we make the statistic data as a hist plot. Like the plot show, this distribution is normally distributed. So we use this model to score the similarity between enzyme and host’s environment.


For this statistic, we first combine pHR (pH range) and pHO(pH optinism) together, combine TR(Tempereature range) and TO(Temperature optimism) together, choose the median as the suitable pH and Temperature value for the selected enzymes.


Among this statistic, if there is pH record in database, it will be added to the pH list. If not, we count the KM value from other enzymes that exists in the same organism. And get the median as the substitute. Temperature is the same.

DFS

Fig4. pH & temperature distribution in E.coli & yeast environment



Base on this model, we consider the frequency as the similarity score.


Score formula


Considering the priority of each physical and chemical properties, we simulation this formula as the enzyme score model.


DFS

After ranking selected enzymes by the score get from this formula, we can get the enzyme selection result for each enzyme.

CODON OPTIMIZATION



Codon termed

In the section of codon optimization, we want to make the enzyme sequence that we get from different organisms have a stable and even a high expression level in our target organism, and meanwhile keep the original codon environment of exogenous gene as possible as we could. So, we abandoned the popular method called “codon harmonization”, using the thinking of random point mutation to instead, only replace specific codons but not almost change them all like what “codon harmonization” do. So, in order to decide which codons could be replaced, we introduce a parameter to represent the relative adaptiveness of a codon termed wi. The wi represents the ratio between the using frequency of the current codon (fi) and the using frequency of the most frequent synonymous codon for that amino acid (max(fj)), and in a way wi represents the codon usage bias of chassis.


DFS

GC content

The using frequency of every codon in E.coli and yeast can be accessed from kazusa online database[1] or GenBank[2]. When we get a table of using frequency, a threshold can be set to screen and find codons with low wi score which may cause negative influence on expression. So here we can have a candidate codon list filled by codons which were filtered out in previous step, later we can random choice some of them to be replaced with its synonymous codon which has a higher using frequency. To figure out how many codons should be replaced and to evaluate the probable effect on expression level, we introduce GC content and CAI as our parameters. A sequence’s GC content can be computed from the ratio between the sum of base G and base C and the total number of bases. If the GC content of an exogenous gene is similar to the GC content of target organism’s genome, this exogenous gene is considered to have a better expressing performance in target organism.


DFS

Codon Adaptation Index (CAI)

And the Codon Adaptation Index (CAI) is the most widespread technique for analyzing codon usage bias and predicting the level of expression of a gene based on its codon sequence [3]. The range of CAI is between 0 and 1, if its value is closer to 1 which means that sequence may have better expressing level in that target organism. The CAI can be calculated from the geometric mean of the relative adaptiveness of each codon (wi) over the total number of codons (L).


DFS

All the preparations have been done, and here comes to codon optimization. First, we generate a candidate sequence list from input sequence by replacing codon in candidate codon list in different random combinations, then we consider both GC content and CAI to filter and rank our candidate sequence list, and finally give the optimized sequence which has best GC content or highest CAI value.


Example

Here we show an example. We use the sequences of acetyl-CoA C-acetyltransferase [EC:2.3.1.9] from different organisms (donors) and try to optimize them to let them have a higher possibility to express better in E.coli. the average GC content of E.coli is 0.58, so we set the target GC content range as [0.574, 0.586]. And the results are as follow.

DFS

Fig5. Codon optimization result showed by CAI value (left) & GC content (right)



REFERENCE



[1] C. Brininger, S. Spradlin, L. Cobani, C. Evilia. The more adaptive to change, the more likely you are to survive: Protein adaptation in extremophiles, Seminars in Cell & Developmental Biology, Volume 84,2018, Pages 158-169, ISSN 1084-9521, https://doi.org/10.1016/j.semcdb.2017.12.016.

[2]. http://www.kazusa.or.jp/codon/

[3]. https://www.ncbi.nlm.nih.gov/genbank/

[4]. Sharp, Paul M.; Li, Wen-Hsiung. The codon adaptation index-a measure of directional synonymous codon usage bias, and its potential applications. Nucleic Acids Research. 1987.15 (3): 1281–1295. doi:10.1093/nar/15.3.1281.