Literature DB >> 34878104

CNApy: a CellNetAnalyzer GUI in Python for Analyzing and Designing Metabolic Networks.

Sven Thiele1, Axel von Kamp1, Pavlos Stephanos Bekiaris1, Philipp Schneider1, Steffen Klamt1.   

Abstract

SUMMARY: Constraint-based reconstruction and analysis (COBRA) is a widely used modeling framework for analyzing and designing metabolic networks. Here we present CNApy, an open source cross-platform desktop application written in Python, which offers a state-of-the-art graphical front-end for the intuitive analysis of metabolic networks with COBRA methods. While the basic look-and-feel of CNApy is similar to the user interface of the MATLAB toolbox CellNetAnalyzer (CNA), it provides various enhanced features by using components of the powerful Qt library. CNApy supports a number of standard and advanced COBRA techniques and further functionalities can be easily embedded in its GUI facilitating modular extension in the future.
AVAILABILITY AND IMPLEMENTATION: CNApy can be installed via conda and its source code is freely available at https://github.com/cnapy-org/CNApy under the Apache 2 license.
© The Author(s) 2021. Published by Oxford University Press.

Entities:  

Year:  2021        PMID: 34878104      PMCID: PMC8826044          DOI: 10.1093/bioinformatics/btab828

Source DB:  PubMed          Journal:  Bioinformatics        ISSN: 1367-4803            Impact factor:   6.937


1 Introduction

Constraint-based reconstruction and analysis (COBRA) has become a powerful and widely used modeling framework for analyzing and redesigning metabolic networks (Bordbar ). Several software packages in different environments have been developed to support COBRA studies. These include command line-based tools, such as the MATLAB-based COBRA toolbox (Heirendt ) or the Python packages COBRApy (Ebrahim ) and ReFramed (https://github.com/cdanielmachado/reframed), as well as software with graphical user interface (GUI), e.g. OptFlux (Rocha ), implemented in Java, or the web-based platform DD-DeCaf (http://dd-decaf.eu/). Various constraint-based analysis techniques are also provided by the MATLAB toolbox CellNetAnalyzer (CNA) (Klamt ; von Kamp ), where these methods can be accessed within a GUI (via interactive network maps) or from command line (via API functions). The interactive network maps are a characteristic feature of CNA and support typical use cases of COBRA-based analyses within network visualizations. An example of such a use case is a data input (e.g. measured metabolic fluxes), followed by a computation (e.g. growth rate maximization) and the display of the resulting metabolic flux distribution in the maps. To overcome the dependency on proprietary software and to enable the integration of more advanced GUI features, we developed the Python package CNApy, which is presented herein. CNApy adopts CNA’s basic concept of interactive network maps but extends it with various enhanced features for an interactive analysis of COBRA models and allows the connection to the universe of Python-based packages and modules.

2 Implementation and features

2.1 Architecture of CNApy

CNApy is a cross-platform desktop application written in Python that provides a state-of-the-art graphical front-end for the intuitive analysis of metabolic models with COBRA methods. The metabolic model is internally part of an instance of a CNApy project class, which also contains metadata, e.g. the associated network maps. The metabolic model can be built from scratch within the GUI or be imported from a Systems Biology Markup Language (SBML) file (Keating ). Import/export of metabolic models in SBML format uses functionalities of the COBRApy package (Ebrahim ) and the models are internally represented as COBRApy model objects. This also allows the direct use of standard COBRA analysis methods [such as flux balance analysis (FBA), flux variability analysis (FVA) etc.] provided by COBRApy. Further analyses, such as computation of elementary flux modes (EFM) and elementary flux vectors (EFV) (Klamt ) or of minimal cut sets (MCS) (Schneider ), are directly supported in CNApy by newly developed custom stand-alone Python packages (these can also be found on https://github.com/cnapy-org). Certain advanced features of EFM, EFV and MCS computation currently require functions of the original CNA toolbox. These functions can be accessed (on the fly) through a MATLAB or, as an open-source alternative, Octave bridge. The results of these computations are reported to CNApy, where the project is updated and results are displayed in the user interface. The same approach is currently also used for yield optimization (which is more complicated than classical FBA) (Klamt ). The MATLAB/Octave bridge could also be employed to perform specific calculations with other packages, such as the COBRA toolbox. However, outsourcing of advanced calculations will become obsolete when modules for the respective algorithms become available in Python. Regarding the graphical front-end, CNApy implements a Model–View–Controller (MVC) architecture. The MVC model is realized in the form of an application state class. This class includes the data of the currently loaded project as well as data for the general program settings and user interface features. The view and the controller make use of objects (widgets) of the powerful Qt library (https://www.qt.io/). These objects include maps, lists, diagrams etc. and are integrated in a single application window. The advanced cross-platform UI toolkit Qt is accessed by its Pyside2 binding for Python (https://pypi.org/project/PySide2/). In contrast to CNA written in MATLAB, Qt allows the use of network graphics in scalable vector graphics format enabling an improved visualization of (and zooming in) metabolic network maps. As in CNA, the metabolic maps must be provided or generated by the user, e.g. by using available pathway maps from web resources (such as the BioCyc or KEGG database) or by drawing metabolic maps using general drawing programs (e.g. Inkscape) or specialized tools for metabolic networks, such as Escher (King ) or OMIX (Droste ). However, GUI-based model analysis is also possible and useful without any network visualization.

2.2 Key features of CNApy

CNApy supports metabolic network analysis with various standard and advanced COBRA methods including FBA, FVA, parsimonious FBA, phase plane analysis, yield optimization and computation of EFM, EFV and MCS (as mentioned above, partially via the MATLAB/Octave engine connecting CNApy with CNA). While many improvements over the original CNA arise from the usage of a modern UI toolkit, CNApy also offers smoother workflows. For example, the setup, import/export and editing of flux scenarios has been simplified and an edit history allows one to undo/redo changes in a scenario. CNApy projects can now be saved in a self-contained project file (*.cna) that includes graphics, the metabolic (SBML) model and other metadata. This makes it easier to copy and share CNApy projects. Additionally, it is now possible to import and export the coordinates of reaction boxes in a map, which allows reuse of maps and text coordinates in different projects. Further, CNApy facilitates an intuitive exploration and traversing of the network model, e.g. by jumping from a reaction to its associated metabolites and from a metabolite to its associated reactions. With this feature, and since calculation results (fluxes) are also displayed in the reaction list (see Fig. 1, right side), efficient model inspection and analysis is possible even if a network visualization is not available. Finally, CNApy integrates a Jupyter python console that allows the user to directly interact with the application from command line. Several example projects of CNApy (including genome-scale and core models of Escherichia coli) are provided in a project repository at https://github.com/cnapy-org/CNApy-projects.
Fig. 1.

Screenshot of CNApy

Screenshot of CNApy

3 Conclusion

CNApy is a new stand-alone desktop application with a powerful and user-friendly graphical front-end for metabolic network analysis and it is the first of its kind developed in Python. CNApy provides several unique GUI features including integrated model navigation and editing. It already supports a number of standard and advanced COBRA techniques, but other routines and new algorithms can easily be embedded in its GUI facilitating modular extension of the toolbox in the future. CNApy is an open-source project and contributions are encouraged on GitHub (https://github.com/cnapy-org).

Funding

This work was supported by the German Federal Ministry of Education and Research (de.NBI partner project ‘ModSim’ (FKZ: 031L104B)]; and by the European Research Council (721176). Conflict of Interest: none declared.
  11 in total

Review 1.  Use of CellNetAnalyzer in biotechnology and metabolic engineering.

Authors:  Axel von Kamp; Sven Thiele; Oliver Hädicke; Steffen Klamt
Journal:  J Biotechnol       Date:  2017-05-10       Impact factor: 3.307

Review 2.  Constraint-based models predict metabolic and associated cellular functions.

Authors:  Aarash Bordbar; Jonathan M Monk; Zachary A King; Bernhard O Palsson
Journal:  Nat Rev Genet       Date:  2014-01-16       Impact factor: 53.242

3.  OptFlux: an open-source software platform for in silico metabolic engineering.

Authors:  Isabel Rocha; Paulo Maia; Pedro Evangelista; Paulo Vilaça; Simão Soares; José P Pinto; Jens Nielsen; Kiran R Patil; Eugénio C Ferreira; Miguel Rocha
Journal:  BMC Syst Biol       Date:  2010-04-19

4.  Creation and analysis of biochemical constraint-based models using the COBRA Toolbox v.3.0.

Authors:  Laurent Heirendt; Sylvain Arreckx; Thomas Pfau; Sebastián N Mendoza; Anne Richelle; Almut Heinken; Hulda S Haraldsdóttir; Jacek Wachowiak; Sarah M Keating; Vanja Vlasov; Stefania Magnusdóttir; Chiam Yu Ng; German Preciat; Alise Žagare; Siu H J Chan; Maike K Aurich; Catherine M Clancy; Jennifer Modamio; John T Sauls; Alberto Noronha; Aarash Bordbar; Benjamin Cousins; Diana C El Assal; Luis V Valcarcel; Iñigo Apaolaza; Susan Ghaderi; Masoud Ahookhosh; Marouen Ben Guebila; Andrejs Kostromins; Nicolas Sompairac; Hoai M Le; Ding Ma; Yuekai Sun; Lin Wang; James T Yurkovich; Miguel A P Oliveira; Phan T Vuong; Lemmer P El Assal; Inna Kuperstein; Andrei Zinovyev; H Scott Hinton; William A Bryant; Francisco J Aragón Artacho; Francisco J Planes; Egils Stalidzans; Alejandro Maass; Santosh Vempala; Michael Hucka; Michael A Saunders; Costas D Maranas; Nathan E Lewis; Thomas Sauter; Bernhard Ø Palsson; Ines Thiele; Ronan M T Fleming
Journal:  Nat Protoc       Date:  2019-03       Impact factor: 13.491

5.  Structural and functional analysis of cellular networks with CellNetAnalyzer.

Authors:  Steffen Klamt; Julio Saez-Rodriguez; Ernst D Gilles
Journal:  BMC Syst Biol       Date:  2007-01-08

6.  Escher: A Web Application for Building, Sharing, and Embedding Data-Rich Visualizations of Biological Pathways.

Authors:  Zachary A King; Andreas Dräger; Ali Ebrahim; Nikolaus Sonnenschein; Nathan E Lewis; Bernhard O Palsson
Journal:  PLoS Comput Biol       Date:  2015-08-27       Impact factor: 4.475

Review 7.  From elementary flux modes to elementary flux vectors: Metabolic pathway analysis with arbitrary linear flux constraints.

Authors:  Steffen Klamt; Georg Regensburger; Matthias P Gerstl; Christian Jungreuthmayer; Stefan Schuster; Radhakrishnan Mahadevan; Jürgen Zanghellini; Stefan Müller
Journal:  PLoS Comput Biol       Date:  2017-04-13       Impact factor: 4.475

8.  A mathematical framework for yield (vs. rate) optimization in constraint-based modeling and applications in metabolic engineering.

Authors:  Steffen Klamt; Stefan Müller; Georg Regensburger; Jürgen Zanghellini
Journal:  Metab Eng       Date:  2018-02-07       Impact factor: 9.783

9.  An extended and generalized framework for the calculation of metabolic intervention strategies based on minimal cut sets.

Authors:  Philipp Schneider; Axel von Kamp; Steffen Klamt
Journal:  PLoS Comput Biol       Date:  2020-07-27       Impact factor: 4.475

Review 10.  SBML Level 3: an extensible format for the exchange and reuse of biological models.

Authors:  Sarah M Keating; Dagmar Waltemath; Matthias König; Fengkai Zhang; Andreas Dräger; Claudine Chaouiya; Frank T Bergmann; Andrew Finney; Colin S Gillespie; Tomáš Helikar; Stefan Hoops; Rahuman S Malik-Sheriff; Stuart L Moodie; Ion I Moraru; Chris J Myers; Aurélien Naldi; Brett G Olivier; Sven Sahle; James C Schaff; Lucian P Smith; Maciej J Swat; Denis Thieffry; Leandro Watanabe; Darren J Wilkinson; Michael L Blinov; Kimberly Begley; James R Faeder; Harold F Gómez; Thomas M Hamm; Yuichiro Inagaki; Wolfram Liebermeister; Allyson L Lister; Daniel Lucio; Eric Mjolsness; Carole J Proctor; Karthik Raman; Nicolas Rodriguez; Clifford A Shaffer; Bruce E Shapiro; Joerg Stelling; Neil Swainston; Naoki Tanimura; John Wagner; Martin Meier-Schellersheim; Herbert M Sauro; Bernhard Palsson; Hamid Bolouri; Hiroaki Kitano; Akira Funahashi; Henning Hermjakob; John C Doyle; Michael Hucka
Journal:  Mol Syst Biol       Date:  2020-08       Impact factor: 11.429

View more
  1 in total

1.  Analyzing and Resolving Infeasibility in Flux Balance Analysis of Metabolic Networks.

Authors:  Steffen Klamt; Axel von Kamp
Journal:  Metabolites       Date:  2022-06-23
  1 in total

北京卡尤迪生物科技股份有限公司 © 2022-2023.