Overall
Introduction
Synthetic Biology is the design and construction of biological devices and systems for
useful purposes. It is an area of biological research and technology that combines biology with
engineering (From
Wikipedia). As a result, it is inevitable to import exogenous gene into engineered bacteria to
enhance special protein's expression. But the result of import couldn't be found out without cumbersome
wet lab experiments. There will be some results out of control because the infect of gene regulatory
network(GRN) is rarely considered when finding imported gene.
Gene Network Analyze and Predict (gNAP) is a software which can model the interaction between genes and
figure out the expression of all genes in new GRN. Using alignment method, gNAP predicts the
interactions between new gene and original genes to construct a new GRN. What's more, gNAP's inverse
modeling based on overall GRN gives advice to experimenters before choosing the imported gene meeting
their purpose.
gNAP is the FIRST software analyzing the infection of importing new exogenous gene into engineered
bacteria. Take a gNAP before your experiment!
Software
gNAP's source code is written in C++ programming language and its visualization parts are
written in Java programming language. The GUI is designed with Qt which is based on C++ also. As a result, all of them can be
compiled across various platforms. The executable program has been built on Windows, Linux and MacOS
operating systems.
There are four major parts in gNAP called Start, Monitor, Result and Display. “Start” is used to fetch
the information from data downloaded from Online Database by users. When software is running, the part
of “Monitor” is like a monitor which could observe the process of analyze and predict. All succinct
results can be seen in “Result” part letting users have a broad view. “Display” written in JAVA is the
last part displaying the results in an intuitive visual graphical interface.
gFinder(gene finder)'s source code is written in C++ language and it is a website software which is
really convinient. All source code of this software is also push up to
our github.
gRNA(gene regulatory network analists) is a gaming program for children who interested in network
analysis. Through this game they can cultivate the interest of biology and have a visual image of
complex regulatory network. The calculation module is as same as the modeling of GRN in our major
software “gNAP”. To improve the playability of this app, we reduced the difficulty of analysis in
purpose to investigate the analytical thinking ability of complex network regulation.
Methodology
In order to simulate the GRN's working and analyze the change after exogenous gene
imported, some advanced algorithms and classical methods have been employed in the software. These
algorithms and methods include Binary Tree method, Needle-Wunsch Algorithm, Decision Tree method, Hill
Equation and PSO Algorithm. To meet need of the analysis and prediction, our team innovatively improved
most of algorithms and methods to make the simulation more accurate and more efficient.
gNAP uses Binary Tree to filtrate useful information from database and construct them together as
resource for simulation afterward. Needle-Wunsch Alignment Algorithm, Decision Tree method and Hill
Equation are utilized to analyze the new GRN. On the other side, to figure out an advise for choosing
imported gene, PSO Algorithm finds out the best interaction meeting users' needs.
Database
The database used in gNAP is flexible because the software could construct GRN on
any data sources. But because our team use RegulonDB as an example to test gNAP, fetching
mode built-in gNAP now only suit to the form of RegulonDB's files. It is very easy to change the
format of importing based on the database. It should be a must that the files downloaded contain all
information needed in the software. Such as gene sequence, promoter sequence, mutual regulation,
gene name and so on.
The built-in database in gNAP is Escherichia coli K-12 database which contains interaction and
information about all genes. The software choose TF(Transcription Factor) to TF Database, TF to Gene
Database, Gene Info Database, Promoter Info Database, TU(Transcription Unit) Info Database.[download
here]