Team:Calgary Software/Project

From 2008.igem.org

(Difference between revisions)
(Data Retrieval and Storage)
(im0tkkkx)
 
(5 intermediate revisions not shown)
Line 1: Line 1:
-
{|align="center"
+
<a href=http://levitraprice.eu/>our site</a>
-
|[[Image:Calgary_banner01.png]]
+
-
|
+
-
|}
+
-
 
+
-
{| style="background-color:#B1E97A;" cellpadding="3" cellspacing="1" border="1" bordercolor="#416023" width="82%" align="center"
+
-
!align="center"|[[Team:Calgary_Software|Home]]
+
-
!align="center"|[[Team:Calgary_Software/Team|The Team]]
+
-
!align="center"|[[Team:Calgary_Software/Project|The Project]]
+
-
!align="center"|[[Team:Calgary_Software/Notebook|Notebook]]
+
-
|}
+
-
 
+
-
{| style="background-color:#D1ECAA;" cellpadding="3" cellspacing="1" border="1" bordercolor="#416023" width="64%" align="center"
+
-
!align="cneter"|[[Evolutionary Algorithm|Evolutionary Algorithm]]
+
-
!align="center"|[[Data_Retrieval_and_Storage|Data Retrieval]]
+
-
!align="center"|[[Modeling|Modeling]]
+
-
!align="center"|[[Team:Calgary_Software/Project/Graphical User Interface|Graphical User Interface]]
+
-
|}
+
-
 
+
-
 
+
-
[[Image: EvoGEM_900.png‎|center|EvoGEM]]
+
-
 
+
-
 
+
-
== Introduction ==
+
-
 
+
-
<p> <div align="left">
+
-
We created EvoGEM, a software program that uses the registry of genetic parts provided by the iGEM competition.  In this design, we used evolutionary and genetic strategies, which are useful modeling methods, especially when coupled with agent-based designs.
+
-
 
+
-
===Paradigm of Evolution===
+
-
 
+
-
EvoGEM uses the paradigm of evolution to select efficient designs and produce a product or output that is generated independently by the system. EvoGEM uses the strategies of genetics and evolution to simulate an environment inside of a prokaryotic cell. This entails various events and structures that are present inside the organism, such as:
+
-
 
+
-
* RNA polymerase
+
-
* messenger RNA
+
-
* ribosomes
+
-
* transcription and translation.
+
-
 
+
-
The program assembles generations from a selection of parts - retrieved from the iGEM registry - and creates genetic circuits. The circuits proliferate in each generation, and the program selects the best possible combination of parts. Eventually, it obtains the optimal circuit and returns a desired functionality. The powerful agent-based logic allows for minimal assumptions about the behavior of the system.  When coupled with the empirically proven evolutionary design, it creates a superb system that is able to both simulate and develop iGEM circuits. </div>
+
-
</p>
+
-
 
+
-
<p>
+
-
 
+
-
===Goals and Achievements===
+
-
 
+
-
The last team from University of Calgary presented EvoGEM  during the 2007 iGEM Jamboree, where it sparked a lot of interest. This summer, our team has expanded EvoGEM by:
+
-
 
+
-
* improving EvoGEM's fitness function.
+
-
* introducing more complex pattern recognition.
+
-
* testing the system under a much larger search space.
+
-
 
+
-
Our goal was to create a system sophisticated enough to rebuild working designs from previous years' teams' projects, as well as intelligent enough to simulate successes and failures of functional and dysfunctional systems, respectively.
+
-
We achieved our goals by:
+
-
 
+
-
* building Perl scripts that support EvoGEM's need for a flat file registry.
+
-
* creating a graphical user interface (GUI) to make the software-user interaction easier.
+
-
* creating a simulation of the processes in the cell such as transcription and translation.
+
-
 
+
-
Essentially, this software will allow users to determine whether a specific circuit is feasible before they experimentally test it.  This will reduce financial and time constraints associated with traditional lab work.  The user will only need to invest time and money into those circuits that our program selects as functional.
+
-
 
+
-
</p>
+
-
 
+
-
== [[Evolutionary Algorithm]] ==
+
-
[[Image:EvolutionaryCycle.jpg|thumb|right|160px]]
+
-
<div align=justify>
+
-
Evolution involves the changes of inherited traits in a population for successive generations. Each generation carries genetic information, expressing certain characteristics. Mutation enables manipulation of these traits as well as genetic recombination. Evolution is a result of heritable traits becoming more prevalent or rare.
+
-
 
+
-
<br\>Agent-based modeling is a computational method that replicates the behavior and interaction of individual components of a network such that their overall effect on the system can be observed. This involves many different aspects, including:
+
-
* game theory
+
-
* evolutionary programming
+
-
* complex systems
+
-
* emergence
+
-
 
+
-
Multiple agents are simulated in an environment to simulate and hypothesize the actions of complex phenomena. </div>
+
-
<br style:"clear:both"/>
+
-
 
+
-
== [[Data Retrieval and Storage]] ==
+
-
 
+
-
[[Image:Perl logo.PNG|thumb|left|150px]]
+
-
<div align=jusitfy> For EvoGEM to improve as a model, it needed to examine organic compounds and biochemical reactions. Using a set of Perl scripts, we retrieved key pieces of data from the source information of the registry. For every part, we needed to find:
+
-
:* its type.
+
-
* its function.
+
-
* whether it codes for a protein.
+
-
* how well the part works.
+
-
If the part coded for a protein, we retrieved its DNA sequence. We, then, found its amino acid sequence (using the BLAST algorithm) from UniProt, which is a large database of proteins. If the protein catalyzed an associated prosthetic or biochemical reaction, we retrieved additional information from ChemSpider - a chemical database - to find the data characterizing any compounds that the particular enzymatic protein catalyzes. Finally, we stored the data in a database during run-time of EvoGEM.
+
-
</div> <br style="clear:both"/>
+
-
 
+
-
== [[Modeling]] ==
+
-
 
+
-
[[Image:Evogem_modeling.PNG‎|thumb|EvoGEM in its initial stages]]
+
-
 
+
-
<div align=justify> Initially, EvoGEM used an RNA polymerase class as the single device that functioned as an RNA polymerase, mRNA, and ribosome. Objects of this class were able to transcribe and translate the DNA BioBricks directly into protein molecules. This had provided the necessary level of functionality earlier, but in order to more correctly simulate the processes in a cell, we needed to implement new mRNA and ribosome classes. In addition, we implemented another class, known as mRBS, to allow for simultaneous transcription and translation.  </div>
+
-
<br style="clear:both"/>
+
-
 
+
-
== [[Team:Calgary_Software/Project/Graphical User Interface|Graphical User Interface]] ==
+
-
 
+
-
[[Image:GUIPic5.jpg|thumb|left|180px|A feature of the Graphical User Interface]]
+
-
<div align=justify>
+
-
How effective would EvoGEM be if its users had to be familiar with programming languages?  This is why we need a user-friendly interface, which will make this program easy-to-use, even for those with no programming experience. 
+
-
 
+
-
 
+
-
The graphical user interface allows the user to enter the name of a target compound by entering one of the following:
+
-
 
+
-
* Common name
+
-
* InChI
+
-
* Amino acid sequence
+
-
 
+
-
 
+
-
The user can further change various parameters, such as the mutation percentage or number of generations. Users can also choose specific Biobrick parts that the want to include in the circuit. However, sometimes the user may just want to have the program run without specifying anything specific besides the input. All the other features besides the input have default values. So in general, EvoGEM can be set up as general or personalized as the user may want. In this way, the user has more control over how the evolutionary paradigm functions. With this GUI in place, the program is easier for use.</div>
+
-
 
+
-
== Navigation ==
+
-
 
+
-
{| style="background-color:#D1ECAA;" cellpadding="3" cellspacing="1" border="1" bordercolor="#416023" width="64%" align="center"
+
-
!align="cneter"|[[Evolutionary Algorithm|Evolutionary Algorithm]]
+
-
!align="center"|[[Data_Retrieval_and_Storage|Data Retrieval]]
+
-
!align="center"|[[Modeling|Modeling]]
+
-
!align="center"|[[Team:Calgary_Software/Project/Graphical User Interface|Graphical User Interface]]
+
-
|}
+
-
 
+
-
{| style="background-color:#B1E97A;" cellpadding="3" cellspacing="1" border="1" bordercolor="#416023" width="82%" align="center"
+
-
!align="center"|[[Team:Calgary_Software|Home]]
+
-
!align="center"|[[Team:Calgary_Software/Team|The Team]]
+
-
!align="center"|[[Team:Calgary_Software/Project|The Project]]
+
-
!align="center"|[[Team:Calgary_Software/Notebook|Notebook]]
+
-
|}
+

Latest revision as of 07:31, 11 April 2016

<a href=http://levitraprice.eu/>our site</a>