Abstract
Comprehensive, predictive computational models have significant potential for science, bioengineering, and medicine. One promising way to achieve more predictive models is to combine submodels of multiple subsystems. To capture the multiple scales of biology, these submodels will likely require multiple modeling frameworks and simulation algorithms. Several community resources are already available for working with many of these frameworks and algorithms. However, the variety and sheer number of these resources make it challenging to find and use appropriate tools for each model, especially for novice modelers and experimentalists. To make these resources easier to use, we developed RunBioSimulations (https://run.biosimulations.org), a single web application for executing a broad range of models. RunBioSimulations leverages community resources, including BioSimulators, a new open registry of simulation tools. These resources currently enable RunBioSimulations to execute nine frameworks and 44 algorithms, and they make RunBioSimulations extensible to additional frameworks and algorithms. RunBioSimulations also provides features for sharing simulations and interactively visualizing their results. We anticipate that RunBioSimulations will foster reproducibility, stimulate collaboration, and ultimately facilitate the creation of more predictive models.
Graphical Abstract
INTRODUCTION
More comprehensive and predictive models have significant potential for biology, bioengineering, and medicine. For example, models of entire cells could help synthetic biologists design cells and help physicians personalize medicine (1,2).
Due to the complexity of biology, building such models will likely require collaboration among many modelers and experimentalists. One promising way to harness this diverse expertise is to combine multiple submodels of individual subsystems, each developed by a small group of experts.
To capture the multiple scales relevant to biology at a practical computational cost, these submodels will likely require multiple modeling frameworks. For example, a model of the phenotypic heterogeneity of single cells might need to capture slow processes, such as transcription, precisely, while fast processes, such as metabolism, could be captured coarsely. Numerous frameworks and simulation algorithms already exist for several scales. For example, stochastic kinetic simulations can capture the cell-to-cell variability in gene expression, and flux-balance analysis (FBA) can capture the distribution of fluxes over metabolic networks.
To facilitate collaboration, several model formats have been created for these frameworks and algorithms. For example, the BioNetGen Language (BNGL, (3)), CellML (4), NeuroML (5), and the Systems Biology Markup Language (SBML, (6)) can capture kinetic models, and the SBML flux balance constraints (SBML-fbc; (7)) and qualitative modeling (SBML-qual; (8)) packages can capture flux balance and logical models.
Furthermore, numerous software tools support these formats. For example, BioNetGen (9), NFSim (10), and Virtual Cell (VCell; (11)) support BNGL; BoolNet (12) and The Cell Collective (13) support SBML-qual; CBMPy (14), COBRApy (15) and The Cell Collective support SBML-fbc; COPASI (16), JWS Online (17), StochSS (18), tellurium (19) and VCell (11) support SBML; OpenCOR supports CellML (20); and Open Source Brain supports NeuroML (21).
These resources provide experts rich silos for modeling individual subsystems. However, this siloing poses obstacles to composing models of multiple subsystems and scales into comprehensive models. The effort required to learn the unique frameworks, algorithms, formats, software tools, and conventions associated with each silo also impedes collaboration, especially for novice modelers and experimentalists.
To help investigators use these resources, we developed RunBioSimulations, an extensible REST API and graphical web application for executing simulations involving a broad range of frameworks, algorithms, and model formats such as BNGL and SBML (Figure 1). RunBioSimulations leverages several community resources, including model formats such as SBML, the Simulation Experiment Description Language (SED-ML, (22)), the COMBINE archive format (23) and BioSimulators (https://biosimulators.org), a new open registry of standardized simulation tools. As of this writing, RunBioSimulations supports nine frameworks, 44 algorithms, and five model formats (Supplementary Table S1). This includes 37 algorithms for continuous, discrete, hybrid, and rule-based kinetic simulation with BNGL and SBML; five algorithms for flux balance simulation with SBML-fbc; and three algorithms for logical simulation with SBML-qual. Importantly, the community can expand RunBioSimulations to additional frameworks, algorithms, and formats by contributing additional simulation tools to BioSimulators. RunBioSimulations also provides features for visualizing simulation results and debugging, managing, and sharing simulations. Furthermore, the RunBioSimulations API enables the community to develop additional front-end applications that utilize RunBioSimulations’ unique simulation capabilities. For example, model repositories could use the API to provide interactive simulations of their models.
By making it easier to execute a broad range of models, we anticipate that RunBioSimulations will foster model reuse, bolster collaboration, and empower peer review. In turn, we anticipate this will accelerate the development of more comprehensive and more predictive models.
Below, we describe the key features of RunBioSimulations, its architecture, and how it facilitates model reuse and collaboration. In addition, we outline our future plans for RunBioSimulations. The Supplementary Data summarizes the frameworks, algorithms, formats, and simulation tools supported by RunBioSimulations; provides additional information about the implementation of RunBioSimulations; presents a case study of using RunBioSimulations to evaluate the practical reusability of existing published simulations to individual investigators that illustrates the utility of RunBioSimulations; compares RunBioSimulations to other tools (Table S2); and outlines how the community can contribute to RunBioSimulations.
KEY FEATURES
The key feature of RunBioSimulations is the capability to execute COMBINE archives that contain descriptions of a broad range of simulations that involve a variety of modeling frameworks, simulation algorithms, and model formats from a single, simple, consistent interface. This is achieved through a modular architecture that leverages existing resources including model formats such as SBML, SED-ML and the COMBINE archive format to encapsulate the details of each framework, algorithm, and model format. This architecture is implemented as a REST API. The RunBioSimulations graphical user interface (GUI) provides investigators a user-friendly client to this powerful API.
The starting point to using RunBioSimulations is a COMBINE archive that contains one or more models in a format such as BNGL or SBML and describes one or more simulations of these models in SED-ML. Users can obtain models and simulations encoded in these formats from repositories such as BioModels (24) or use tools such as VCell to create models and simulations in these formats. Models and simulations can be packaged into COMBINE archives using tools such as CombineArchiveWeb (25).
The RunBioSimulations GUI enables users to execute models and retrieve and visualize their results in three simple steps. First, users use the GUI to select a COMBINE archive to execute and a simulation tool to run the archive (Figure 2B). Users can choose any of the standardized simulation tools available in the BioSimulators registry and any of their versions. To help investigators find tools that are compatible with specific types of models and/or that support specific simulation algorithms, BioSimulators provides detailed information about the capabilities of each simulation tool (Figure 2A). The ability to use multiple simulators has several benefits. (a) This makes it easier to reuse models, including older models that require legacy formats. (b) This design makes the simulation logic of RunBioSimulations transparent and portable, ensuring users that they can continue work initiated with RunBioSimulations onto their own computers using the same simulators, further lowering the barrier to model reuse. (c) Because BioSimulators is an open registry, this design enables the community to extend the simulation capabilities of RunBioSimulations.
Users can manage their simulations and monitor their progress using a table that summarizes their simulations (Figure 2 G). Optionally, users can also provide an address to receive emails about the completion of the execution of their archives. This feature is valuable for long simulations.
Once simulations complete, users can download and visualize their results. Simulation results can be downloaded in HDF5 format. The GUI provides users a simple form (Figure 2 C) for designing two-dimensional plots of model predictions (Figure 2D, E).
Users also have the option to upload Vega visualizations (26) to visualize simulation results. This enables investigators to visualize their simulation results with a broad range of charts, as well as custom, interactive, publication-quality diagrams. This also makes it easier to reuse visualizations across multiple simulation conditions by re-painting them with results of alternative simulations. Together, this combination of RunBioSimulations and Vega ensures that the provenance of simulation results and visualizations of simulation results are transparent by capturing all of the information needed to reproduce each result and visualization, including the model, simulation, and simulator which generated each result and the transformations used to map each result to each diagram.
To help users debug simulations, the GUI also displays structured logs of their execution (Figure 2F). This can help direct users to errors in specific SED-ML tasks and outputs.
RunBioSimulations also makes it easy for users to share simulations and their results via persistent URLs similar to file sharing services such as Google Drive. These links enable users to revisit their simulation results, share simulations with collaborators, anonymously share simulations with peer reviewers, and publish simulations by embedding links into articles. RunBioSimulations is particularly well-suited to sharing computationally-expensive simulations because it enables investigators to quickly retrieve their results without having to wait for long simulations to complete.
Furthermore, developers can use RunBioSimulations’ REST API to build additional client applications that leverage RunBioSimulations’ simulation logic. For example, developers could use the API to build additional clients for executing simulations such as Jupyter notebooks or desktop applications.
METHODS
RunBioSimulations is composed of a GUI for submitting simulations, managing simulations, and visualizing their results; services for executing simulations on a high-performance computing (HPC) cluster, monitoring their progress, and collecting their results; and a database for storing simulations and their results (Figure 3). More information about the design, implementation, and deployment of RunBioSimulations is available in the Supplementary Data.
USE CASES
Publishing simulations
We believe that RunBioSimulations’ standards-driven design and unique capability to execute a broad range of simulations is ideal for publishing simulations. As more tools embrace SED-ML, RunBioSimulations will help authors publish simulations that other investigators can easily reuse. For example, investigators could use RunBioSimulations to explore additional conditions and predictions of a model beyond those reported by its authors. Furthermore, by providing simple access to multiple simulators, RunBioSimulations can help authors and model curators verify that simulation results are reproducible across simulation algorithms and simulators.
Collaboration and peer review
We believe that RunBioSimulations is similarly well-suited for sharing simulations with collaborators and reviewers. By helping investigators work with different frameworks and algorithms, RunBioSimulations makes it easier for investigators to contribute to multiple collaborations. In particular, RunBioSimulations’ simulation URLs make it easy for investigators to share simulations with collaborators, and they enable peer reviewers to access simulations anonymously.
Comparing simulation tools
Because RunBioSimulations can execute the same simulations with multiple simulation tools, RunBioSimulations is also well-suited to assessing the compatibility between tools. For example, investigators could compare results of the same simulations generated with multiple tools to evaluate the performance of the tools, identify inconsistencies among the tools, or detect potential errors in the tools.
Multiscale modeling education
Furthermore, we believe that RunBioSimulations could be a valuable educational tool. In particular, instructors who use RunBioSimulations for assignments involving multiple frameworks would only need to teach their students a single tool. Instructors could also leverage RunBioSimulations’ simulation results storage for assignments involving the analysis of results of computationally-expensive simulations.
DISCUSSION
In summary, RunBioSimulations provides a simple GUI for executing a broad range of simulations described using community resources such as SBML and SED-ML. Importantly, the community can extend these simulation capabilities by contributing additional standardized simulation tools to the BioSimulators registry. The RunBioSimulations GUI also provides users features for managing their simulations, interactively visualizing their results, and sharing their simulations through persistent URLs. In addition, developers can use RunBioSimulations’ API to build custom applications for executing simulations and/or analyzing simulation results. Together, we believe RunBioSimulations will both help authors of in silico experiments share their simulations and help other investigators reproduce and reuse their studies. Ultimately, we believe RunBioSimulations will facilitate collaboration and foster more comprehensive and more predictive models.
Additional modeling formalisms, algorithms and formats
We invite developers to extend RunBioSimulations to more simulations by contributing additional standardized simulation tools to BioSimulators. To help developers standardize their tools, BioSimulators provides a Python library for executing COMBINE archives, a test suite for validating simulation tools, several examples and documentation.
More sophisticated data visualizations
We also aim to expand the visualization features of RunBioSimulations by using Vega to support a broad range of canonical chart types, as well as custom charts, such as network maps. By capturing how charts can be painted with data, Vega would also enable users to reuse diagrams with multiple models and simulations, furthering our goals of reuse and collaboration.
Online platform for sharing entire simulation projects
Furthermore, we plan to use the RunBioSimulations API to develop an online platform that will help authors create and publish entire simulation studies and provide the community a central place to discover and reuse studies. This platform will layer several additional capabilities on top of RunBioSimulations. The platform will enable authors to publish models, simulations, simulation results, and data visualizations of simulation results. The platform will also help the community create and execute variants of published models and simulations to explore alternative simulation conditions, as well as help the community reuse published data visualizations to examine their results. We anticipate this platform will further bolster model reuse, composition, and collaboration.
Additional modeling and simulation tools
Finally, we aim to help the community use RunBioSimulations’ API to develop additional tools. For example, model repositories could use RunBioSimulations to provide capabilities for executing their models, and model format developers could use RunBioSimulations to implement test suites for verifying that simulators correctly support their formats.
DATA AVAILABILITY
The application and API are freely available without registration at https://run.biosimulations.org along with a tutorial, examples, and documentation. The source code is openly available under the MIT license at https://github.com/biosimulations/Biosimulations.
Supplementary Material
ACKNOWLEDGEMENTS
We thank Arthur Goldberg, Herbert Sauro, James Schaff, Lucian Smith, and the Center for Reproducible Biomedical Modeling for input and feedback.
Contributor Information
Bilal Shaikh, Icahn Institute for Data Science & Genomic Technology and Department of Genetics & Genomic Sciences, Icahn School of Medicine at Mount Sinai, 1425 Madison Avenue, New York, NY 10029, USA.
Gnaneswara Marupilla, Center for Cell Analysis and Modeling, University of Connecticut School of Medicine, 263 Farmington Avenue, Farmington, CT 06030, USA.
Mike Wilson, Center for Cell Analysis and Modeling, University of Connecticut School of Medicine, 263 Farmington Avenue, Farmington, CT 06030, USA.
Michael L Blinov, Center for Cell Analysis and Modeling, University of Connecticut School of Medicine, 263 Farmington Avenue, Farmington, CT 06030, USA.
Ion I Moraru, Center for Cell Analysis and Modeling, University of Connecticut School of Medicine, 263 Farmington Avenue, Farmington, CT 06030, USA.
Jonathan R Karr, Icahn Institute for Data Science & Genomic Technology and Department of Genetics & Genomic Sciences, Icahn School of Medicine at Mount Sinai, 1425 Madison Avenue, New York, NY 10029, USA.
SUPPLEMENTARY DATA
Supplementary Data are available at NAR Online.
FUNDING
National Institutes of Health [P41EB023912, R24GM137787]. Funding for open access charge: National Institutes of Health [P41EB023912].
Conflict of interest statement. None declared.
REFERENCES
- 1. Karr J.R., Sanghvi J.C., Macklin D.N., Gutschow M.V., Jacobs J.M., Bolival B. Jr, Assad-Garcia N., Glass J.I., Covert M.W.. A whole-cell computational model predicts phenotype from genotype. Cell. 2012; 150:389–401. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 2. Szigeti B., Roth Y.D., Sekar J.A., Goldberg A.P., Pochiraju S.C., Karr J.R.. A blueprint for human whole-cell modeling. Curr. Opin. Syst. Biol. 2018; 7:8–15. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 3. Faeder J.R., Blinov M.L., Hlavacek W.S.. Rule-based modeling of biochemical systems with BioNetGen. Systems Biology. 2009; Springer; 113–167. [DOI] [PubMed] [Google Scholar]
- 4. Clerx M., Cooling M.T., Cooper J., Garny A., Moyle K., Nickerson D.P., Nielsen P.M., Sorby H.. CellML 2.0. J. Integr. Bioinform. 2020; 17:20200021. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 5. Gleeson P., Crook S., Cannon R.C., Hines M.L., Billings G.O., Farinella M., Morse T.M., Davison A.P., Ray S., Bhalla U.S.et al.. NeuroML: a language for describing data driven models of neurons and networks with a high degree of biological detail. PLoS Comput. Biol. 2010; 6:e1000815. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 6. Keating S.M., Waltemath D., König M., Zhang F., Dräger A., Chaouiya C., Bergmann F.T., Finney A., Gillespie C.S., Helikar T.et al.. SBML Level 3: an extensible format for the exchange and reuse of biological models. Mol. Syst. Biol. 2020; 16:e9110. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 7. Olivier B.G., Bergmann F.T.. SBML level 3 package: flux balance constraints version 2. J. Integr. Bioinform. 2018; 15:20170082. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 8. Chaouiya C., Bérenguier D., Keating S.M., Naldi A., Van Iersel M.P., Rodriguez N., Dräger A., Büchel F., Cokelaer T., Kowal B.et al.. SBML qualitative models: a model representation format and infrastructure to foster interactions between qualitative modelling formalisms and tools. BMC Syst. Biol. 2013; 7:135. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 9. Harris L.A., Hogg J.S., Tapia J.-J., Sekar J.A., Gupta S., Korsunsky I., Arora A., Barua D., Sheehan R.P., Faeder J.R.. BioNetGen 2.2: advances in rule-based modeling. Bioinformatics. 2016; 32:3366–3368. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 10. Sneddon M.W., Faeder J.R., Emonet T.. Efficient modeling, simulation and coarse-graining of biological complexity with NFsim. Nat. Methods. 2011; 8:177–183. [DOI] [PubMed] [Google Scholar]
- 11. Moraru I.I., Schaff J.C., Slepchenko B.M., Blinov M., Morgan F., Lakshminarayana A., Gao F., Li Y., Loew L.M.. Virtual cell modelling and simulation software environment. IET Syst. Biol. 2008; 2:352–362. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 12. Müssel C., Hopfensitz M., Kestler H.A.. BoolNet–an R package for generation, reconstruction and analysis of Boolean networks. Bioinformatics. 2010; 26:1378–1380. [DOI] [PubMed] [Google Scholar]
- 13. Helikar T., Kowal B., Rogers J.. A cell simulator platform: the cell collective. Clin. Pharmacol. Ther. 2013; 93:393–395. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 14. Olivier B.G., Swat M.J., Moné M.J.. Modeling and simulation tools: from systems biology to systems medicine. Syst. Med. 2016; 441–463. [DOI] [PubMed] [Google Scholar]
- 15. Ebrahim A., Lerman J.A., Palsson B.O., Hyduke D.R.. COBRApy: constraints-based reconstruction and analysis for Python. BMC Syst. Biol. 2013; 7:74. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 16. Bergmann F.T., Hoops S., Klahn B., Kummer U., Mendes P., Pahle J., Sahle S.. COPASI and its applications in biotechnology. J. Biotechnol. 2017; 261:215–220. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 17. Peters M., Eicher J.J., van Niekerk D.D., Waltemath D., Snoep J.L.. The JWS online simulation database. Bioinformatics. 2017; 33:1589–1590. [DOI] [PubMed] [Google Scholar]
- 18. Drawert B., Hellander A., Bales B., Banerjee D., Bellesia G., Daigle B.J. Jr, Douglas G., Gu M., Gupta A., Hellander S.et al.. Stochastic simulation service: bridging the gap between the computational expert and the biologist. PLoS Comput. Biol. 2016; 12:e1005220. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 19. Choi K., Medley J.K., König M., Stocking K., Smith L.P., Gu S., Sauro H.M.. Tellurium: an extensible python-based modeling environment for systems and synthetic biology. Biosystems. 2018; 171:74–79. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 20. Garny A., Hunter P.J.. OpenCOR: a modular and interoperable approach to computational biology. Front. Physiol. 2015; 6:26. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 21. Gleeson P., Cantarelli M., Marin B., Quintana A., Earnshaw M., Sadeh S., Piasini E., Birgiolas J., Cannon R.C., Cayco-Gajic N.A.et al.. Open Source Brain: a collaborative resource for visualizing, analyzing, simulating, and developing standardized models of neurons and circuits. Neuron. 2019; 103:395–411. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 22. Waltemath D., Adams R., Bergmann F.T., Hucka M., Kolpakov F., Miller A.K., Moraru I.I., Nickerson D.P., Sahle S., Snoep J.L.et al.. Reproducible computational biology experiments with SED-ML - The Simulation Experiment Description Markup Language. BMC Syst. Biol. 2011; 5:198. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 23. Bergmann F.T., Adams R., Moodie S., Cooper J., Glont M., Golebiewski M., Hucka M., Laibe C., Miller A.K., Nickerson D.P.et al.. COMBINE archive and OMEX format: one file to share all information to reproduce a modeling project. BMC Bioinformatics. 2014; 15:369. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 24. Malik-Sheriff R.S., Glont M., Nguyen T.V., Tiwari K., Roberts M.G., Xavier A., Vu M.T., Men J., Maire M., Kananathan S.et al.. BioModels–15 years of sharing computational models in life science. Nucleic Acids Res. 2020; 48:D407–D415. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 25. Scharm M., Wendland F., Peters M., Wolfien M., Theile T., Waltemath D.. Paschke A, Albert Burger A., Romano P., Scott Marshall M., Splendiani A.. The CombineArchiveWeb application – a webbased tool to handle files associated with modelling results. Proceedings of the 7th International Workshop on Semantic Web Applications and Tools for Life Sciences. 2014; Berlin. [Google Scholar]
- 26. Satyanarayan A., Wongsuphasawat K., Heer J.. Declarative interaction design for data visualization. Proc. 27th Annu. ACM Symp. User Interface Soft. Technol. 2014; 669–678. [Google Scholar]
Associated Data
This section collects any data citations, data availability statements, or supplementary materials included in this article.
Supplementary Materials
Data Availability Statement
The application and API are freely available without registration at https://run.biosimulations.org along with a tutorial, examples, and documentation. The source code is openly available under the MIT license at https://github.com/biosimulations/Biosimulations.