Cell and Molecular Biology Application. The Wasabi project
1. About Bioinformatics & Cellular Molecular biology
Bioinformatics is a research where physicists, mathematicians, biologists and computer scientists work together on a the problem of biology.
The bioinformatics recherches focus on genome analysis, modeling of animal population evolution in a specific environment. This analysis involves molecular modeling, image analysis, genome assembly and phylogenetic tree reconstitution.
On the bioinformatics environment we speak about « in-silico biology » by analogy with in vitro or in vivo.
1.2 Cellular and Molecular biology
Cellular and Molecular biology is a scientific discipline that brings together genetics, biochemistry and physics. Its purpose is the understanding of the functioning mechanisms of the cell at the cellular or molecular level.
2. What is Wasabi Project ?
|partners / contributors|
|Arnaud Bonnafoux||LBMC, Laboratoire de Biologie et Modélisation de la Cellule|
|Olivier Gandrillon||LBMC, Laboratoire de Biologie et Modélisation de la Cellule|
The WASABI (Wave Analysis Based Inference) Project is an application of bioinformatics developed by biologist Arnaud Bonnafoux from the laboratory LBMC of the ENS de Lyon. This application was designed with the objective of identifying the gene network (GRN) that controls the behavior of a cell.
The Wasabi project is set up to identify in silico networks of candidate genes that behave similarly to in vitro networks. The goal of the Wasabi project is to understand the mechanisms of cellular behavior but also to have the knowledge to predict the reactions of cells according to the situations encountered.
Simulations involve acting on candidate gene networks. Following each simulation, the identification of candidate networks is done by integrating the new genes into the new candidate networks generated (Figure 1).
At each stage of identification, networks are calibrated and then selected or rejected according to a set of criteria and mathematical formulas to compare their similarities to in-vitro data.
The workflow required a lot of memory if we launch it on the same machine. Setting up a dynamic workflow on several machines using a client-server is therefore necessary.
2.2 The DIET Client-Server
Realization of the restructuring of the Wasabi application to interface with DIET (client-server oriented). It was necessary to review the code architecture in order to make it usable and optimal on the distributed computing middleware.
It was therefore necessary to consider splitting the code into three distinct parts (Figure 3) in order to transform the main (Wasabi.py) into a client. We distinguish in green a part corresponding to the development of the network of genes. The red part is used to optimize the calculations (comparison with in vitro data). And the yellow part is the selection of the best gene networks.
The interface is the link between the client-server and Wasabi application and allows to hide the entire DIET part to users.
The WebBoard has two main parts: one corresponding to the launch of the Wasabi simulations and another allowing access to a table of jobs and the results obtained following the simulations.
The simulation part consists of retrieving the data transmitted by the user via the form and transmitting them to the client-server in order to execute the Wasabi application (Figure 4).
Once the simulation is launched, a new job is created and appears in the job board. For each job, we find the date and time of the beginning and the end of the simulation. The table also shows the progress of the simulation and its status (initialized, in progress, completed, …) (Figure 5).
To access all the results of a job, select it. Then all the data corresponding to the selected job are displayed (Figure 5).
3.1 The needs
- C / Python for the client and servers
- Python pour l’application Wasabi
- Angular2, PHP, HTML, CSS pour l’interface
- Compiler(s): gcc
- Library(ies): none
- System(s): Linux
- Memory: Up to 2 GB.
- Disk: From a few MB to hundreds of GB
- Mean execution time: From a few seconds to several days.
- Databases : Yes