Fourth CoLoMoTo meeting (Paris, July 17-19 2017)

The fourth CoLoMoTo meeting took place in Paris, from the 17th to the 19th of July, 2017. As usual, the meeting covered a wide range of topics related to logical modelling, from methodological and software developments to biological applications. It was hosted by IBENS in the center of Paris (46 rue d’Ulm).

This meeting was organized by Aurélien Naldi (IBENS, Paris), Claudine Chaouiya (IGC, Lisbon), Denis Thieffry (IBENS, Paris), Gautier Stoll (INSERM, IGR, U. Paris Descartes), and Laurence Calzone (Curie Institute, Paris).

July 17 - Scientific Presentations

TimeSpeakerTopic
13:00Introductory remarks
13:20Gautier StollUsing MaBoSS for modeling heterogeneous cell behavior
13:40Samuel CollombetDeciphering the regulatory network of blood cells specification and reprogramming
14:00Coffee Break
14:30Loïc PaulevéModelling and analysis of transient dynamics of qualitative models (tutorial)
14:50Enio GjergaEfficient modelling of signalling networks derived from mass spectrometry phosphoproteomic data using Integer Linear Programming
15:10Ping ZhangControl and Diagnosis of Boolean Networks
15:30Coffee Break
16:00Anna NiarakisIntegrative modelling and analysis of molecular pathways involved in Rheumatoid Arthritis
16:20Arnau MontagudConceptual and computational framework for logical modelling of deregulated biological networks
16:40Claudine ChaouiyaStandards for logical models: current status of SBML qual & SED-ML
17:00Discussion - planning workgroups

July 18 - Working groups and Presentations

TimeSpeakerTopic
09:00Working group on tooling
Aurélien NaldiModel conversion, modification, and analysis with bioLQM
Loïc PaulevéJupyter Notebook
Claudine ChaouiyaFuture extensions to SBML qual and SED ML
12:30Lunch break
13:30Working group on applications
Laurence CalzoneModel composition
Gautier StollModelling the immune system
15:30Working group on methods
Pedro T. MonteiroOn the structure and robustness of gene regulatory network Boolean functions
Adrien FauréA circuit-preserving mapping from multilevel to Boolean dynamics
Aurélien NaldiTrap-spaces and global reachability mapping
17:30Wrapping-up

July 19 - Wrapping up and hacking

TimeTopic
10:00MaBoSS Tutorial
10:00Docker session
12:00Discussion and Wrapping-up

Summary of discussions

Tool integration & distribution

Discussion moderated by Loïc Paulevé

Aim: share and reproduce computational systems biology workflows

Objectives:

We also discussed teaching aspects, and potential publications.

CoLoMoTo Docker

Docker is used in many cloud environments, including data science and bioinformatics, to promote accessible and reproducible software (see for instance the BioContainers project). Docker provides a container system, which makes easy to provide complete environments for running executables. On Linux, it does not require any virtualisation, hence have no performance drop. On Mac OSX and Windows, it can exploit latest virtualisation technologies embedded in processors to minimise the overhead. Once the docker system is installed on the machine, installing and running a docker image can be done with a single command.

Our objective is to provide a docker image including the main software tools for manipulating and analysing logical models of biological networks. It may include, for instance, BioLQM, EpiLog, GINsim, clingo, MaBoSS, NuSMV, Pint, Boolsim, Node.JS, bns, Boolnet, espresso, etc.

Such an image will be useful in two main use cases:

Actions taken, status of the project

IPython Jupyter Notebook

Jupyter is an interactive web interface allowing to write notebooks combining code (python or R functions) and structured text for documentations. See http://nbviewer.jupyter.org/github/pauleve/pint/blob/master/notebook/quick-tutorial.ipynb for an example of notebook using GINsim and Pint.

A notebook consists in a single file that can shared and re-executed. Ultimately, one should be able to write a complete model workflow analysis in a single notebook, showing explicitly the full pipeline of tools and analysis parameters.

Although Python is the standard environment for Jupyter, a notebook can combine commands of different languages, including R.

Collectively, we aim to provide Python API for the tools shipped in the CoLoMoTo docker. Writing a Python API for tools requires limited effort, as it may simply call the commands in the background with the appropriate parameters. The main work consists typically in returning python objects for the results, which enables further treatments of the results with other tools (through the python API), or with a standard library, for instance for data analysis and visualisation (e.g. using scipy, pandas, or matplotlib, just to name a few).

A typical workflow will often include a “manual” modification of a model, for instance, edge/node addition/removal. We could design an API to ease such modifications, e.g. through a dedicated python module to manipulate Boolean/multi-valued networks, or through some extension of the BioLQM script interface.

Other model manipulation to be considered include model merging, the handling of compartments, the integration of multicellular EpiLog grammar. These points would deserve further discussion.

User interface considerations: Jupyter allows to add custom menus and widgets (using javascript). Custom menus could help to launch pre-defined commands (see the Pint tutorial for an example), while custom widgets can ease the handling of command parameters.

Proposed action: organize a 2-3 days hackathon with developers of CoLoMoTo tools to define and implement python interfaces, ideally still in 2017. Loïc will send a message to the mailing to start preparing it.

Demonstration

The docker image and Jupyter notebook capabilities should be demonstrated on at least two different workflows combining different tools. Workflow proposals:

Inspiration: SBML-qual paper, Curie workflow (Arnau Montagud), PNAS paper (Samuel Collombet).

Teaching aspect

The question of the usage of Docker and Jupyter notebook in a teaching class environment has been raised by Denis. Requiring students to install docker and pull the image (which may weigh several hundreds of megabytes) does not seem tractable. However, one could rely on cloud infrastructures supporting Docker to provide an easy access to the tools: the student would simply have to connect to a given URL in order to write workflows through the Jupyter web interface. In France, IFB can deploy Docker images and provide resources and access to students (this has been done already for courses using Jupyter notebook for bioinformatic tutorials).

Publication

A paper for promoting the docker and the Jupyter notebook to ease the writing and sharing of computational systems biology workflows could be sent to Frontiers Research Topic on Logical Modeling of Cellular Processes: From Software Development to Network Dynamics (abstract 1st September, submission 1st February). The paper may show an instantiation of the docker and Jupyter notebook on two workflows.

“Screenshots” of the discussion:

SBML-qual and SED-ML

Discussion moderated by Claudine Chaouiya

SBML-qual

A number of other possible extensions were discussed, but it was agreed to postpone their consideration.

SED-ML

It was agreed that simulation is one type of model analysis. For example, we will need to cover:

Model composition

Discussion moderated by Laurence Calzone

Individual models have already been developed and validated. They can be found in the repository of GINsim, in CellCollective, and to a certain extent in BioModels. These individual models can be seen as modules of “cell cycle”, “apoptosis”, “DNA repair”, etc. The question is: when creating a new model, could we use existing models and, if so, how to assemble them?

There are two types of possible compositions:

The idea of composing a model from already existing logical models poses several questions:

We are aware that a software tool to compose models cannot fully automate the merging, but it should ease merging and suggest options for pending issues.

We could get some inspiration from the SBML-comp package to define the rules for composing two models.

To ensure the construction of comprehensive regulatory graph, when merging two models, we could test using OmniPath that all the connections between the nodes, that are found in other databases, are added to the composed model and annotated with publications.

The following proposed workflow/objectives emerged from the discussion:

Note that EpiLog has a grammar for simple integration functions, which could be extended to cope for more complex cases.

Modelling the immune system

Discussion moderated by Gautier Stoll.

Immune system is a complex machinery, implying multiple signalling pathways in an heterogeneous environment. Understanding (part of) immune is a very important challenge in biology, with a lot of potential medical applications (infection, autoimmune diseases, cancer, etc.)

Immune system parts that are modeled

Modeling the full immune system (including cell types and genes/proteins) is probably out of reach with the available tools. Nevertheless, some members of CoLoMoTo consortium are currently modelling subparts of the immune system:

Phenotypes

It can be interesting to describe which phenotypes can be studied with the Logical Modelling approach:

One question arises: are these “phenotypes” really specific to the immune system? The answer is no, as each of them could be found in other biological processes. But it remains interesting to regroup immune system models, at least because modelers may have specific problems/results to share.

Experimental data

There are specific methods for obtaining data to characterize the immune system:

Methods

Logical Modelling widely applied to signaling pathways. For the immune system, modelers use the following approaches:

Participants