Libroadrunner

{{Short description|Software for modelling biological systems}}

{{Infobox software

| name = libroadrunner

| logo =

| screenshot =

| caption =

| collapsible =

| author =

| developer =

| released = {{Start date and age|2015|03|23}}

| latest release version = 2.6.0

| latest release date = {{Start date and age|2024|03|26}}

| programming language = Python, C++, C, FORTRAN

| operating system = Linux, macOS and Microsoft Windows

| size =

| language =

| status =

| genre =

| license = Apache License

| website = {{URL|https://github.com/sys-bio/roadrunner}}

}}

libRoadRunner is a C/C++ software library that supports simulation of SBML based models..{{cite journal |last1=Somogyi |first1=Endre T. |last2=Bouteiller |first2=Jean-Marie |last3=Glazier |first3=James A. |last4=König |first4=Matthias |last5=Medley |first5=J. Kyle |last6=Swat |first6=Maciej H. |last7=Sauro |first7=Herbert M. |title=libRoadRunner: a high performance SBML simulation and analysis library: Table 1. |journal=Bioinformatics |date=15 October 2015 |volume=31 |issue=20 |pages=3315–3321 |doi=10.1093/bioinformatics/btv363|pmid=26085503 |pmc=4607739 }} It uses LLVM to generate extremely high-performance code and is the fastest SBML-based simulator currently available.{{cite journal |last1=Maggioli |first1=F |last2=Mancini |first2=T |last3=Tronci |first3=E |title=SBML2Modelica: integrating biochemical models within open-standard simulation ecosystems |journal=Bioinformatics |date=1 April 2020 |volume=36 |issue=7 |pages=2165–2172 |doi=10.1093/bioinformatics/btz860|pmid=31738386 |arxiv=2106.02609 }} Its main purpose is for use as a reusable library that can be hosted by other applications, particularly on large compute clusters for doing parameter optimization where performance is critical. It also has a set of Python bindings that allow it to be easily used from Python as well as a set of bindings for Julia.{{cite journal |last1=Welsh |first1=Ciaran |last2=Xu |first2=Jin |last3=Smith |first3=Lucian |last4=König |first4=Matthias |last5=Choi |first5=Kiri |last6=Sauro |first6=Herbert M |title=libRoadRunner 2.0: a high performance SBML simulation and analysis library |journal=Bioinformatics |date=1 January 2023 |volume=39 |issue=1 |doi=10.1093/bioinformatics/btac770|pmid=36478036 |pmc=9825722 |arxiv=1503.01095 }}

libroadrunner is often paired with Tellurium,{{cite journal |last1=Choi |first1=Kiri |last2=Medley |first2=J. Kyle |last3=König |first3=Matthias |last4=Stocking |first4=Kaylene |last5=Smith |first5=Lucian |last6=Gu |first6=Stanley |last7=Sauro |first7=Herbert M. |title=Tellurium: An extensible python-based modeling environment for systems and synthetic biology |journal=Biosystems |date=September 2018 |volume=171 |pages=74–79 |doi=10.1016/j.biosystems.2018.07.006|pmid=30053414 |pmc=6108935 |bibcode=2018BiSys.171...74C }} which adds additional functionality such as Antimony{{cite journal |last1=Smith |first1=L. P. |last2=Bergmann |first2=F. T. |last3=Chandran |first3=D. |last4=Sauro |first4=H. M. |title=Antimony: a modular model definition language |journal=Bioinformatics |date=15 September 2009 |volume=25 |issue=18 |pages=2452–2454 |doi=10.1093/bioinformatics/btp401|pmid=19578039 |pmc=2735663 }} scripting.

Capabilities

  • Time-course simulation using the CVODE, RK45, and Euler solvers of ordinary differential equations, which can report on the system's variable concentrations and reaction rates over time.
  • Steady-state calculations using non-linear solvers such as kinsolve{{cite journal |last1=Hindmarsh |first1=Alan C. |last2=Brown |first2=Peter N. |last3=Grant |first3=Keith E. |last4=Lee |first4=Steven L. |last5=Serban |first5=Radu |last6=Shumaker |first6=Dan E. |last7=Woodward |first7=Carol S. |title=SUNDIALS: Suite of nonlinear and differential/algebraic equation solvers |journal=ACM Transactions on Mathematical Software |date=September 2005 |volume=31 |issue=3 |pages=363–396 |doi=10.1145/1089014.1089020|osti=15002968 |s2cid=6826941 }} and NLEQ2{{cite book |last1=Deuflhard |first1=P |title=Newton Methods for Nonlinear Problems |date=2004 |publisher=Springer-Verlag, NY}}
  • Supports both steady-state and time-dependent Metabolic control analysis, including calculating the elasticities towards the variable metabolites by algebraic or numerical differentiation of the rate equations, as well as the flux and concentration control coefficients by means of matrix inversion{{cite journal |last1=Hofmeyr |first1=Jannie |title=Metabolic control analysis in a nutshell |journal=Proceedings of the 2nd International Conference on Systems Biology |date=2001 |s2cid=17007756 |language=en}} and perturbation methods.{{cite journal |last1=Yip |first1=Evan |last2=Sauro |first2=Herbert |title=Computing Sensitivities in Reaction Networks using Finite Difference Methods |date=2021 |arxiv=2110.04335}}
  • libroadrunner will also compute the structural matrices (e.g. K- and L-matrices) of a stoichiometric model.{{cite journal |last1=Kerkhoven |first1=Eduard J. |last2=Achcar |first2=Fiona |last3=Alibu |first3=Vincent P. |last4=Burchmore |first4=Richard J. |last5=Gilbert |first5=Ian H. |last6=Trybiło |first6=Maciej |last7=Driessen |first7=Nicole N. |last8=Gilbert |first8=David |last9=Breitling |first9=Rainer |last10=Bakker |first10=Barbara M. |last11=Barrett |first11=Michael P. |title=Handling Uncertainty in Dynamic Models: The Pentose Phosphate Pathway in Trypanosoma brucei |journal=PLOS Computational Biology |date=5 December 2013 |volume=9 |issue=12 |pages=e1003371 |doi=10.1371/journal.pcbi.1003371|pmid=24339766 |pmc=3854711 |bibcode=2013PLSCB...9E3371K |doi-access=free }}
  • The stability of a system can be investigated by way of the system eigenvalues.
  • Data and results can be plotted via matplotlib, or saved in text files.
  • libroadrunner supports the import and export of standard SBML.

Applications

libroadrunner has been widely used in the systems biology community for doing research in systems biology modeling, as well as being a host for other simulation platforms.

= Software applications that use libroadrunner =

  • CompuCell3D
  • CRNT4SBML{{cite journal |last1=Reyes |first1=Brandon C |last2=Otero-Muras |first2=Irene |last3=Shuen |first3=Michael T |last4=Tartakovsky |first4=Alexandre M |last5=Petyuk |first5=Vladislav A |title=CRNT4SBML: a Python package for the detection of bistability in biochemical reaction networks |journal=Bioinformatics |date=1 June 2020 |volume=36 |issue=12 |pages=3922–3924 |doi=10.1093/bioinformatics/btaa241|pmid=32289149 |doi-access=free }}
  • DIVIPAC{{cite journal |last1=Nguyen |first1=Lan K. |last2=Degasperi |first2=Andrea |last3=Cotter |first3=Philip |last4=Kholodenko |first4=Boris N. |title=DYVIPAC: an integrated analysis and visualisation framework to probe multi-dimensional biological networks |journal=Scientific Reports |date=December 2015 |volume=5 |issue=1 |pages=12569 |doi=10.1038/srep12569|pmid=26220783 |pmc=4518224 |bibcode=2015NatSR...512569N }}
  • massPy{{cite journal |last1=Haiman |first1=Zachary B. |last2=Zielinski |first2=Daniel C. |last3=Koike |first3=Yuko |last4=Yurkovich |first4=James T. |last5=Palsson |first5=Bernhard O. |title=MASSpy: Building, simulating, and visualizing dynamic biological models in Python using mass action kinetics |journal=PLOS Computational Biology |date=28 January 2021 |volume=17 |issue=1 |pages=e1008208 |doi=10.1371/journal.pcbi.1008208|pmid=33507922 |pmc=7872247 |bibcode=2021PLSCB..17E8208H |doi-access=free }}
  • pyBioNetFit{{cite journal |last1=Neumann |first1=Jacob |last2=Lin |first2=Yen Ting |last3=Mallela |first3=Abhishek |last4=Miller |first4=Ely F |last5=Colvin |first5=Joshua |last6=Duprat |first6=Abell T |last7=Chen |first7=Ye |last8=Hlavacek |first8=William S |last9=Posner |first9=Richard G |title=Implementation of a practical Markov chain Monte Carlo sampling algorithm in PyBioNetFit |journal=Bioinformatics |date=4 March 2022 |volume=38 |issue=6 |pages=1770–1772 |doi=10.1093/bioinformatics/btac004|pmid=34986226 |pmc=10060707 }}
  • PhysiCell{{cite journal |last1=Ghaffarizadeh |first1=Ahmadreza |last2=Heiland |first2=Randy |last3=Friedman |first3=Samuel H. |last4=Mumenthaler |first4=Shannon M. |last5=Macklin |first5=Paul |title=PhysiCell: An open source physics-based cell simulator for 3-D multicellular systems |journal=PLOS Computational Biology |date=23 February 2018 |volume=14 |issue=2 |pages=e1005991 |doi=10.1371/journal.pcbi.1005991|pmid=29474446 |pmc=5841829 |bibcode=2018PLSCB..14E5991G |doi-access=free }}
  • pyViPR{{cite journal |last1=Ortega |first1=Oscar O. |last2=Lopez |first2=Carlos F. |title=Interactive Multiresolution Visualization of Cellular Network Processes |journal=iScience |date=January 2020 |volume=23 |issue=1 |pages=100748 |doi=10.1016/j.isci.2019.100748|pmid=31884165 |pmc=6941861 |bibcode=2020iSci...23j0748O }}
  • runBiosimulations{{cite journal |last1=Shaikh |first1=Bilal |last2=Marupilla |first2=Gnaneswara |last3=Wilson |first3=Mike |last4=Blinov |first4=Michael L |last5=Moraru |first5=Ion |last6=Karr |first6=Jonathan R |title=RunBioSimulations: an extensible web application that simulates a wide range of computational modeling frameworks, algorithms, and formats |journal=Nucleic Acids Research |date=2 July 2021 |volume=49 |issue=W1 |pages=W597–W602 |doi=10.1093/nar/gkab411|pmid=34019658 |pmc=8262693 }}
  • SBMLSim{{cite web |last1=Konig |first1=Matthias |title=SBMLSim |website=GitHub |url=https://github.com/matthiaskoenig/sbmlsim}}
  • Tellurium (simulation tool){{cite journal |last1=Choi |first1=Kiri |last2=Medley |first2=J. Kyle |last3=König |first3=Matthias |last4=Stocking |first4=Kaylene |last5=Smith |first5=Lucian |last6=Gu |first6=Stanley |last7=Sauro |first7=Herbert M. |title=Tellurium: An extensible python-based modeling environment for systems and synthetic biology |journal=Biosystems |date=September 2018 |volume=171 |pages=74–79 |doi=10.1016/j.biosystems.2018.07.006|pmid=30053414 |pmc=6108935 |bibcode=2018BiSys.171...74C }}
  • Tissue Forge (multi-cellular simulator){{cite journal |last1=Sego |first1=T. J. |last2=Sluka |first2=James P. |last3=Sauro |first3=Herbert M. |last4=Glazier |first4=James A. |title=Tissue Forge: Interactive biological and biophysics simulation environment |journal=PLOS Computational Biology |date=23 October 2023 |volume=19 |issue=10 |pages=e1010768 |doi=10.1371/journal.pcbi.1010768|doi-access=free |pmid=37871133 |pmc=10621971 |bibcode=2023PLSCB..19E0768S }}
  • TOPAS-Tissue{{cite journal |last1=García García |first1=Omar Rodrigo |last2=Ortiz |first2=Ramon |last3=Moreno-Barbosa |first3=Eduardo |last4=D-Kondo |first4=Naoki |last5=Faddegon |first5=Bruce |last6=Ramos-Méndez |first6=Jose |title=TOPAS-Tissue: A Framework for the Simulation of the Biological Response to Ionizing Radiation at the Multi-Cellular Level |journal=International Journal of Molecular Sciences |date=19 September 2024 |volume=25 |issue=18 |pages=10061 |doi=10.3390/ijms251810061|doi-access=free |pmid=39337547 |pmc=11431975 }}

= Research applications =

libroadrunner has been used in a large variety of research projects. The following lists a small number of those studies:

  • Tickman et al,{{cite journal |last1=Tickman |first1=Benjamin I. |last2=Burbano |first2=Diego Alba |last3=Chavali |first3=Venkata P. |last4=Kiattisewee |first4=Cholpisit |last5=Fontana |first5=Jason |last6=Khakimzhan |first6=Aset |last7=Noireaux |first7=Vincent |last8=Zalatan |first8=Jesse G. |last9=Carothers |first9=James M. |title=Multi-layer CRISPRa/i circuits for dynamic genetic programs in cell-free and bacterial systems |journal=Cell Systems |date=March 2022 |volume=13 |issue=3 |pages=215–229.e8 |doi=10.1016/j.cels.2021.10.008|pmid=34800362 |s2cid=244430298 |doi-access=free }} describe developing multi-layer CRIPRa/i circuits for genetic programs using Tellurium/libroadrunner as the computational application.
  • Salazar-Cavazos et al{{cite journal |last1=Salazar-Cavazos |first1=Emanuel |last2=Nitta |first2=Carolina Franco |last3=Mitra |first3=Eshan D. |last4=Wilson |first4=Bridget S. |last5=Lidke |first5=Keith A. |last6=Hlavacek |first6=William S. |last7=Lidke |first7=Diane S. |title=Multisite EGFR phosphorylation is regulated by adaptor protein abundances and dimer lifetimes |journal=Molecular Biology of the Cell |date=19 March 2020 |volume=31 |issue=7 |pages=695–708 |doi=10.1091/mbc.E19-09-0548|pmid=31913761 |pmc=7202077 |s2cid=210119415 }} used pyBioNetFit/libroadrunner to investigate Multisite EGFR phosphorylation.
  • Douilhet et al.{{cite bioRxiv |last1=Douilhet |first1=Gemma |last2=Niranjan |first2=Mahesan |last3=Vallejo |first3=Andres |last4=Clayton |first4=Kalum |last5=Davies |first5=James |last6=Sirvent |first6=Sofia |last7=Pople |first7=Jenny |last8=Ardern-Jones |first8=Michael R |last9=Polak |first9=Marta E |title=Genetic Algorithm with Rank Selection optimises robust parameter estimation for systems biology models |date=23 February 2022 |biorxiv =10.1101/2022.02.22.481394 }} used Tellurium/libroadrunner to investigate the use of genetic algorithms with rank selection optimization.
  • Schmiester et al.{{cite journal |last1=Schmiester |first1=Leonard |last2=Weindl |first2=Daniel |last3=Hasenauer |first3=Jan |title=Efficient gradient-based parameter estimation for dynamic models using qualitative data |journal=Bioinformatics |date=7 December 2021 |volume=37 |issue=23 |pages=4493–4500 |doi=10.1093/bioinformatics/btab512|pmid=34260697 |pmc=8652033 }} used pyBioNetFit/libroadrunner to investigate gradient-based parameter estimation using qualitative data.
  • Yang et al{{cite journal |last1=Yang |first1=Yongliang |last2=Filipovic |first2=David |last3=Bhattacharya |first3=Sudin |title=A Negative Feedback Loop and Transcription Factor Cooperation Regulate Zonal Gene Induction by 2, 3, 7, 8-Tetrachlorodibenzo-p-Dioxin in the Mouse Liver |journal=Hepatology Communications |date=April 2022 |volume=6 |issue=4 |pages=750–764 |doi=10.1002/hep4.1848|pmid=34726355 |pmc=8948569 |s2cid=240422386 }} used CompuCell3D/libroadrunner to model transcript factor cooperation in mouse liver.

Notability

  • libroadrunner was the first SBML simulation to use just-in-time compilation using LLVM.
  • It is the only SBML simulator that exploits AUTO2000 for bifurcation analysis.{{cite web |title=Bifurcation Analysis |url=https://libroadrunner.readthedocs.io/en/latest/bifurcation.html}}

A number of reviews and commentaries have been written that discuss libroadrunner:

  • Maggioli et al.{{cite journal |last1=Maggioli |first1=F |last2=Mancini |first2=T |last3=Tronci |first3=E |title=SBML2Modelica: integrating biochemical models within open-standard simulation ecosystems |journal=Bioinformatics |date=1 April 2020 |volume=36 |issue=7 |pages=2165–2172 |doi=10.1093/bioinformatics/btz860|pmid=31738386 |arxiv=2106.02609 }} conduct a speed comparison of various SBML simulators and conclude libroadrunner is the fastest SBML simulator currently available to researchers.
  • Koster et al,{{cite journal |last1=Köster |first1=Till |last2=Warnke |first2=Tom |last3=Uhrmacher |first3=Adelinde M. |title=Generating Fast Specialized Simulators for Stochastic Reaction Networks via Partial Evaluation |journal=ACM Transactions on Modeling and Computer Simulation |date=30 April 2022 |volume=32 |issue=2 |pages=1–25 |doi=10.1145/3485465|s2cid=247273613 }}discuss the speed advantages of libroadrunner for solving differential equations compared to solving stochastic systems.

Development

Development of libroadrunner is primarily funded through research grants from the National Institutes of Health{{cite web |title=Development Support |url=https://grantome.com/grant/NIH/R01-GM123032-04 |last1=Sauro |first1=Herbert }}

See also

References

{{reflist}}