# Libroadrunner

> Mediated Wiki article. Canonical URL: https://mediated.wiki/source/Libroadrunner
> Markdown URL: https://mediated.wiki/source/Libroadrunner.md
> Source: https://en.wikipedia.org/wiki/Libroadrunner
> Source revision: 1355437043
> License: Creative Commons Attribution-ShareAlike 4.0 International (https://creativecommons.org/licenses/by-sa/4.0/)

{{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](/source/Python_(programming_language)), [C++](/source/C%2B%2B), [C](/source/C_(programming_language)), [FORTRAN](/source/FORTRAN)
| operating system       = [Linux](/source/Linux), [macOS](/source/macOS) and [Microsoft Windows](/source/Microsoft_Windows)
| size                   = 
| language               = 
| status                 = 
| genre                  = 
| license                = [Apache License](/source/Apache_License)
| website                = {{URL|https://github.com/sys-bio/roadrunner}}
}}
'''libRoadRunner''' is a [C](/source/C_(programming_language))/[C++](/source/C%2B%2B) [software library](/source/software_library) that supports simulation of [SBML](/source/SBML) based models..<ref>{{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 }}</ref> It uses [LLVM](/source/LLVM) to generate extremely high-performance code and is the fastest SBML-based simulator currently available.<ref>{{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 }}</ref> 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](/source/Python_(programming_language)) bindings that allow it to be easily used from Python as well as a set of bindings for [Julia](/source/Julia_(programming_language)).<ref>{{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 |article-number=btac770 |doi=10.1093/bioinformatics/btac770|pmid=36478036 |pmc=9825722 |arxiv=1503.01095 }}</ref>

libroadrunner is often paired with [Tellurium](/source/Tellurium_(simulation_tool)),<ref>{{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 }}</ref> which adds additional functionality such as [Antimony](/source/Antimony_(language))<ref>{{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 }}</ref> 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<ref>{{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 }}</ref> and NLEQ2<ref>{{cite book |last1=Deuflhard |first1=P |title=Newton Methods for Nonlinear Problems |date=2004 |publisher=Springer-Verlag, NY}}</ref>

* [Stochastic simulation](/source/Stochastic_simulation) using the standard [Gillespie algorithm](/source/Gillespie_algorithm).

* Supports both steady-state and time-dependent [Metabolic control analysis](/source/Metabolic_control_analysis), including calculating the [elasticities](/source/Elasticity_coefficient) 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<ref>{{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}}</ref> and [perturbation methods](/source/Numerical_differentiation).<ref>{{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}}</ref> 

* libroadrunner will also compute the structural matrices (e.g. K- and L-matrices) of a stoichiometric model.<ref>{{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 |article-number=e1003371 |doi=10.1371/journal.pcbi.1003371|pmid=24339766 |pmc=3854711 |bibcode=2013PLSCB...9E3371K |doi-access=free }}</ref>

* The stability of a system can be investigated by way of the system [eigenvalues](/source/eigenvalues). 

* Data and results can be plotted via matplotlib, or saved in text files.

* libroadrunner supports the import and export of standard [SBML](/source/SBML).

== Applications ==

libroadrunner has been widely used in the [systems biology](/source/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](/source/CompuCell3D)
* CRNT4SBML<ref>{{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 }}</ref>
* DIVIPAC<ref>{{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 |article-number=12569 |doi=10.1038/srep12569|pmid=26220783 |pmc=4518224 |bibcode=2015NatSR...512569N }}</ref>
* massPy<ref>{{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 |article-number=e1008208 |doi=10.1371/journal.pcbi.1008208|pmid=33507922 |pmc=7872247 |bibcode=2021PLSCB..17E8208H |doi-access=free }}</ref>
* pyBioNetFit<ref>{{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 }}</ref>
* PhysiCell<ref>{{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 |article-number=e1005991 |doi=10.1371/journal.pcbi.1005991|pmid=29474446 |pmc=5841829 |bibcode=2018PLSCB..14E5991G |doi-access=free }}</ref>
* pyViPR<ref>{{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 |article-number=100748 |doi=10.1016/j.isci.2019.100748|pmid=31884165 |pmc=6941861 |bibcode=2020iSci...23j0748O }}</ref>
* runBiosimulations<ref>{{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 }}</ref>
* SBMLSim<ref>{{cite web |last1=Konig |first1=Matthias |title=SBMLSim |website=[GitHub](/source/GitHub) |url=https://github.com/matthiaskoenig/sbmlsim}}</ref>
* Tellurium (simulation tool)<ref>{{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 }}</ref>
* Tissue Forge (multi-cellular simulator)<ref>{{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 |article-number=e1010768 |doi=10.1371/journal.pcbi.1010768|doi-access=free |pmid=37871133 |pmc=10621971 |bibcode=2023PLSCB..19E0768S }}</ref>
* TOPAS-Tissue<ref>{{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 |article-number=10061 |doi=10.3390/ijms251810061|doi-access=free |pmid=39337547 |pmc=11431975 }}</ref>

=== 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,<ref>{{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 }}</ref> describe developing multi-layer CRIPRa/i circuits for genetic programs using Tellurium/libroadrunner as the computational application.

* Salazar-Cavazos et al<ref>{{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 }}</ref> used pyBioNetFit/libroadrunner to investigate Multisite EGFR phosphorylation.

* Douilhet et al.<ref>{{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 }}</ref> used Tellurium/libroadrunner to investigate the use of genetic algorithms with rank selection optimization.

* Schmiester et al.<ref>{{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 }}</ref> used pyBioNetFit/libroadrunner to investigate gradient-based parameter estimation using qualitative data. 

* Yang et al<ref>{{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 }}</ref> used CompuCell3D/libroadrunner to model transcript factor cooperation in mouse liver. 

== Notability ==

* libroadrunner was the first [SBML](/source/SBML) simulation to use [just-in-time compilation](/source/just-in-time_compilation) using [LLVM](/source/LLVM).
* It is the only SBML simulator that exploits [AUTO2000](/source/AUTO2000) for [bifurcation analysis](/source/bifurcation_theory).<ref>{{cite web |title=Bifurcation Analysis |url=https://libroadrunner.readthedocs.io/en/latest/bifurcation.html}}</ref>

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

* Maggioli et al.<ref>{{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 }}</ref> conduct a speed comparison of various SBML simulators and conclude libroadrunner is the fastest SBML simulator currently available to researchers. 

* Koster et al,<ref>{{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 }}</ref> 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](/source/National_Institutes_of_Health)<ref>{{cite web |title=Development Support |url=https://grantome.com/grant/NIH/R01-GM123032-04 |last1=Sauro |first1=Herbert }}</ref>

== See also ==
* [List of systems biology modeling software](/source/List_of_systems_biology_modeling_software)

== References ==
{{reflist}}

== External links ==
* [https://github.com/sys-bio/roadrunner GitHub page]

<!--- Categories --->

Category:Systems biology
Category:Ordinary differential equations
Category:Software using the Apache license

---
Adapted from the Wikipedia article [Libroadrunner](https://en.wikipedia.org/wiki/Libroadrunner) by Wikipedia contributors ([contributor history](https://en.wikipedia.org/wiki/Libroadrunner?action=history)). Available under [Creative Commons Attribution-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/). Changes may have been made.
