1
|
Welsh C, Xu J, Smith L, König M, Choi K, Sauro HM. libRoadRunner 2.0: a high performance SBML simulation and analysis library. Bioinformatics 2023; 39:6883908. [PMID: 36478036 PMCID: PMC9825722 DOI: 10.1093/bioinformatics/btac770] [Citation(s) in RCA: 0] [Impact Index Per Article: 0] [Reference Citation Analysis] [Abstract] [MESH Headings] [Grants] [Track Full Text] [Figures] [Journal Information] [Subscribe] [Scholar Register] [Received: 06/15/2022] [Revised: 11/22/2022] [Accepted: 12/07/2022] [Indexed: 12/13/2022] Open
Abstract
MOTIVATION This article presents libRoadRunner 2.0, an extensible, high-performance, cross-platform, open-source software library for the simulation and analysis of models expressed using the systems biology markup language (SBML). RESULTS libRoadRunner is a self-contained library, able to run either as a component inside other tools via its C++, C and Python APIs, or interactively through its Python or Julia interface. libRoadRunner uses a custom just-in-time (JIT) compiler built on the widely used LLVM JIT compiler framework. It compiles SBML-specified models directly into native machine code for a large variety of processors, making it fast enough to simulate extremely large models or repeated runs in reasonable timeframes. libRoadRunner is flexible, supporting the bulk of the SBML specification (except for delay and non-linear algebraic equations) as well as several SBML extensions such as hierarchical composition and probability distributions. It offers multiple deterministic and stochastic integrators, as well as tools for steady-state, sensitivity, stability and structural analyses. AVAILABILITY AND IMPLEMENTATION libRoadRunner binary distributions for Windows, Mac OS and Linux, Julia and Python bindings, source code and documentation are all available at https://github.com/sys-bio/roadrunner, and Python bindings are also available via pip. The source code can be compiled for the supported systems as well as in principle any system supported by LLVM-13, such as ARM-based computers like the Raspberry Pi. The library is licensed under the Apache License Version 2.0.
Collapse
Affiliation(s)
- Ciaran Welsh
- Department of Bioengineering, University of Washington, Seattle, WA 98195, USA
| | - Jin Xu
- Department of Bioengineering, University of Washington, Seattle, WA 98195, USA
| | - Lucian Smith
- Department of Bioengineering, University of Washington, Seattle, WA 98195, USA
| | - Matthias König
- Institute of Biology, Institute of Theoretical Biology, Humboldt-University Berlin, Berlin 10115, Germany
| | - Kiri Choi
- School of Computational Sciences, Korea Institute for Advanced Study, Seoul 02455, Republic of Korea
| | | |
Collapse
|
2
|
Lüders C, Sturm T, Radulescu O. ODEbase: a repository of ODE systems for systems biology. BIOINFORMATICS ADVANCES 2022; 2:vbac027. [PMID: 36699350 PMCID: PMC9710575 DOI: 10.1093/bioadv/vbac027] [Citation(s) in RCA: 0] [Impact Index Per Article: 0] [Reference Citation Analysis] [Abstract] [Track Full Text] [Subscribe] [Scholar Register] [Received: 03/21/2022] [Revised: 04/07/2022] [Accepted: 04/21/2022] [Indexed: 01/28/2023]
Abstract
Summary Recently, symbolic computation and computer algebra systems have been successfully applied in systems biology, especially in chemical reaction network theory. One advantage of symbolic computation is its potential for qualitative answers to biological questions. Qualitative methods analyze dynamical input systems as formal objects, in contrast to investigating only part of the state space, as is the case with numerical simulation. However, corresponding tools and libraries have a different set of requirements for their input data than their numerical counterparts. A common format used in mathematical modeling of biological processes is Systems Biology Markup Language (SBML). We illustrate that the use of SBML data in symbolic computation requires significant pre-processing, incorporating external biological and mathematical expertise. ODEbase provides suitable input data derived from established existing biomodels, covering in particular the BioModels database. Availability and implementation ODEbase is available free of charge at https://odebase.org.
Collapse
Affiliation(s)
- Christoph Lüders
- Institute of Mathematics, University of Kassel, 34132 Kassel, Germany,To whom correspondence should be addressed.
| | - Thomas Sturm
- CNRS, Inria and the University of Lorraine, 54506 Nancy, France,MPI Informatics and Saarland University, 66123 Saarbrücken, Germany
| | - Ovidiu Radulescu
- Laboratory of Pathogen Host Interactions UMR 5235, University of Montpellier and CNRS, 34095 Montpellier, France
| |
Collapse
|
3
|
Schölzel C, Blesius V, Ernst G, Goesmann A, Dominik A. Countering reproducibility issues in mathematical models with software engineering techniques: A case study using a one-dimensional mathematical model of the atrioventricular node. PLoS One 2021; 16:e0254749. [PMID: 34280231 PMCID: PMC8289093 DOI: 10.1371/journal.pone.0254749] [Citation(s) in RCA: 2] [Impact Index Per Article: 0.7] [Reference Citation Analysis] [Abstract] [MESH Headings] [Track Full Text] [Download PDF] [Figures] [Journal Information] [Subscribe] [Scholar Register] [Received: 03/11/2021] [Accepted: 07/03/2021] [Indexed: 11/22/2022] Open
Abstract
One should assume that in silico experiments in systems biology are less susceptible to reproducibility issues than their wet-lab counterparts, because they are free from natural biological variations and their environment can be fully controlled. However, recent studies show that only half of the published mathematical models of biological systems can be reproduced without substantial effort. In this article we examine the potential causes for failed or cumbersome reproductions in a case study of a one-dimensional mathematical model of the atrioventricular node, which took us four months to reproduce. The model demonstrates that even otherwise rigorous studies can be hard to reproduce due to missing information, errors in equations and parameters, a lack in available data files, non-executable code, missing or incomplete experiment protocols, and missing rationales behind equations. Many of these issues seem similar to problems that have been solved in software engineering using techniques such as unit testing, regression tests, continuous integration, version control, archival services, and a thorough modular design with extensive documentation. Applying these techniques, we reimplement the examined model using the modeling language Modelica. The resulting workflow is independent of the model and can be translated to SBML, CellML, and other languages. It guarantees methods reproducibility by executing automated tests in a virtual machine on a server that is physically separated from the development environment. Additionally, it facilitates results reproducibility, because the model is more understandable and because the complete model code, experiment protocols, and simulation data are published and can be accessed in the exact version that was used in this article. We found the additional design and documentation effort well justified, even just considering the immediate benefits during development such as easier and faster debugging, increased understandability of equations, and a reduced requirement for looking up details from the literature.
Collapse
Affiliation(s)
- Christopher Schölzel
- Technische Hochschule Mittelhessen—THM University of Applied Sciences, Giessen, Germany
- Justus Liebig University Giessen, Giessen, Germany
- * E-mail:
| | - Valeria Blesius
- Technische Hochschule Mittelhessen—THM University of Applied Sciences, Giessen, Germany
- Justus Liebig University Giessen, Giessen, Germany
| | - Gernot Ernst
- Vestre Viken Hospital Trust, Kongsberg, Norway
- University of Oslo, Oslo, Norway
| | | | - Andreas Dominik
- Technische Hochschule Mittelhessen—THM University of Applied Sciences, Giessen, Germany
| |
Collapse
|
4
|
Schölzel C, Blesius V, Ernst G, Dominik A. Characteristics of mathematical modeling languages that facilitate model reuse in systems biology: a software engineering perspective. NPJ Syst Biol Appl 2021; 7:27. [PMID: 34083542 PMCID: PMC8175692 DOI: 10.1038/s41540-021-00182-w] [Citation(s) in RCA: 3] [Impact Index Per Article: 1.0] [Reference Citation Analysis] [Abstract] [Key Words] [MESH Headings] [Track Full Text] [Download PDF] [Figures] [Journal Information] [Subscribe] [Scholar Register] [Received: 10/18/2019] [Accepted: 04/19/2021] [Indexed: 02/06/2023] Open
Abstract
Reuse of mathematical models becomes increasingly important in systems biology as research moves toward large, multi-scale models composed of heterogeneous subcomponents. Currently, many models are not easily reusable due to inflexible or confusing code, inappropriate languages, or insufficient documentation. Best practice suggestions rarely cover such low-level design aspects. This gap could be filled by software engineering, which addresses those same issues for software reuse. We show that languages can facilitate reusability by being modular, human-readable, hybrid (i.e., supporting multiple formalisms), open, declarative, and by supporting the graphical representation of models. Modelers should not only use such a language, but be aware of the features that make it desirable and know how to apply them effectively. For this reason, we compare existing suitable languages in detail and demonstrate their benefits for a modular model of the human cardiac conduction system written in Modelica.
Collapse
Affiliation(s)
- Christopher Schölzel
- Technische Hochschule Mittelhessen - University of Applied Sciences, Giessen, Germany.
| | - Valeria Blesius
- Technische Hochschule Mittelhessen - University of Applied Sciences, Giessen, Germany
| | - Gernot Ernst
- Vestre Viken Hospital Trust, Kongsberg, Norway
- University of Oslo, Oslo, Norway
| | - Andreas Dominik
- Technische Hochschule Mittelhessen - University of Applied Sciences, Giessen, Germany
| |
Collapse
|
5
|
Porubsky V, Smith L, Sauro HM. Publishing reproducible dynamic kinetic models. Brief Bioinform 2021; 22:bbaa152. [PMID: 32793969 PMCID: PMC8138891 DOI: 10.1093/bib/bbaa152] [Citation(s) in RCA: 1] [Impact Index Per Article: 0.3] [Reference Citation Analysis] [Abstract] [Key Words] [MESH Headings] [Grants] [Track Full Text] [Journal Information] [Subscribe] [Scholar Register] [Received: 02/07/2020] [Revised: 05/19/2020] [Accepted: 06/17/2020] [Indexed: 11/14/2022] Open
Abstract
Publishing repeatable and reproducible computational models is a crucial aspect of the scientific method in computational biology and one that is often forgotten in the rush to publish. The pressures of academic life and the lack of any reward system at institutions, granting agencies and journals means that publishing reproducible science is often either non-existent or, at best, presented in the form of an incomplete description. In the article, we will focus on repeatability and reproducibility in the systems biology field where a great many published models cannot be reproduced and in many cases even repeated. This review describes the current landscape of software tooling, model repositories, model standards and best practices for publishing repeatable and reproducible kinetic models. The review also discusses possible future remedies including working more closely with journals to help reviewers and editors ensure that published kinetic models are at minimum, repeatable. Contact: hsauro@uw.edu.
Collapse
Affiliation(s)
- Veronica Porubsky
- Department of Bioengineering, University of Washington, Seattle, 98105,USA
| | - Lucian Smith
- Department of Bioengineering, University of Washington, Seattle, 98105,USA
| | - Herbert M Sauro
- Department of Bioengineering, University of Washington, Seattle, 98105,USA
| |
Collapse
|
6
|
Visualisation of Control Software for Cyber-Physical Systems. INFORMATION 2021. [DOI: 10.3390/info12050178] [Citation(s) in RCA: 0] [Impact Index Per Article: 0] [Reference Citation Analysis] [Abstract] [Track Full Text] [Journal Information] [Subscribe] [Scholar Register] [Indexed: 11/16/2022] Open
Abstract
Cyber-physical systems are typically composed of a physical system (plant) controlled by a software (controller). Such a controller, given a plant state s and a plant action u, returns 1 iff taking action u in state s leads to the physical system goal or at least one step closer to it. Since a controller K is typically stored in compressed form, it is difficult for a human designer to actually understand how “good” K is. Namely, natural questions such as “does K cover a wide enough portion of the system state space?”, “does K cover the most important portion of the system state space?” or “which actions are enabled by K in a given portion of the system space?” are hard to answer by directly looking at K. This paper provides a methodology to automatically generate a picture of K as a 2D diagram, starting from a canonical representation for K and relying on available open source graphing tools (e.g., Gnuplot). Such picture allows a software designer to answer to the questions listed above, thus achieving a better qualitative understanding of the controller at hand.
Collapse
|
7
|
Sinisi S, Alimguzhin V, Mancini T, Tronci E, Leeners B. Complete populations of virtual patients for in silico clinical trials. Bioinformatics 2020; 36:5465-5472. [PMID: 33325489 DOI: 10.1093/bioinformatics/btaa1026] [Citation(s) in RCA: 11] [Impact Index Per Article: 2.8] [Reference Citation Analysis] [Abstract] [Track Full Text] [Journal Information] [Subscribe] [Scholar Register] [Received: 05/06/2020] [Revised: 10/30/2020] [Accepted: 11/30/2020] [Indexed: 02/06/2023] Open
Abstract
MOTIVATION Model-based approaches to safety and efficacy assessment of pharmacological drugs, treatment strategies, or medical devices (In Silico Clinical Trial, ISCT) aim to decrease time and cost for the needed experimentations, reduce animal and human testing, and enable precision medicine. Unfortunately, in presence of non-identifiable models (e.g., reaction networks), parameter estimation is not enough to generate complete populations of Virtual Patient (VPs), i.e., populations guaranteed to show the entire spectrum of model behaviours (phenotypes), thus ensuring representativeness of the trial. RESULTS We present methods and software based on global search driven by statistical model checking that, starting from a (non-identifiable) quantitative model of the human physiology (plus drugs PK/PD) and suitable biological and medical knowledge elicited from experts, compute a population of VPs whose behaviours are representative of the whole spectrum of phenotypes entailed by the model (completeness) and pairwise distinguishable according to user-provided criteria. This enables full granularity control on the size of the population to employ in an ISCT, guaranteeing representativeness while avoiding over-representation of behaviours.We proved the effectiveness of our algorithm on a non-identifiable ODE-based model of the female Hypothalamic-Pituitary-Gonadal axis, by generating a population of 4 830 264 VPs stratified into 7 levels (at different granularity of behaviours), and assessed its representativeness against 86 retrospective health records from Pfizer, Hannover Medical School and University Hospital of Lausanne. The datasets are respectively covered by our VPs within Average Normalised Mean Absolute Error of 15%, 20%, and 35% (90% of the latter dataset is covered within 20% error).
Collapse
Affiliation(s)
- S Sinisi
- Computer Science Department, Sapienza University of Rome, Italy
| | - V Alimguzhin
- Computer Science Department, Sapienza University of Rome, Italy
| | - T Mancini
- Computer Science Department, Sapienza University of Rome, Italy
| | - E Tronci
- Computer Science Department, Sapienza University of Rome, Italy
| | - B Leeners
- Division of Reproductive Endocrinology, University Hospital Zurich, Switzerland
| |
Collapse
|