CBMOS: a GPU-enabled Python framework for the numerical study of center-based models.
Cell-based model
Center-based model
CuPy
Implicit solver
NumPy
Numerical method
Python
Journal
BMC bioinformatics
ISSN: 1471-2105
Titre abrégé: BMC Bioinformatics
Pays: England
ID NLM: 100965194
Informations de publication
Date de publication:
31 Jan 2022
31 Jan 2022
Historique:
received:
26
08
2021
accepted:
11
01
2022
entrez:
1
2
2022
pubmed:
2
2
2022
medline:
3
2
2022
Statut:
epublish
Résumé
Cell-based models are becoming increasingly popular for applications in developmental biology. However, the impact of numerical choices on the accuracy and efficiency of the simulation of these models is rarely meticulously tested. Without concrete studies to differentiate between solid model conclusions and numerical artifacts, modelers are at risk of being misled by their experiments' results. Most cell-based modeling frameworks offer a feature-rich environment, providing a wide range of biological components, but are less suitable for numerical studies. There is thus a need for software specifically targeted at this use case. We present CBMOS, a Python framework for the simulation of the center-based or cell-centered model. Contrary to other implementations, CBMOS' focus is on facilitating numerical study of center-based models by providing access to multiple ordinary differential equation solvers and force functions through a flexible, user-friendly interface and by enabling rapid testing through graphics processing unit (GPU) acceleration. We show-case its potential by illustrating two common workflows: (1) comparison of the numerical properties of two solvers within a Jupyter notebook and (2) measuring average wall times of both solvers on a high performance computing cluster. More specifically, we confirm that although for moderate accuracy levels the backward Euler method allows for larger time step sizes than the commonly used forward Euler method, its additional computational cost due to being an implicit method prohibits its use for practical test cases. CBMOS is a flexible, easy-to-use Python implementation of the center-based model, exposing both basic model assumptions and numerical components to the user. It is available on GitHub and PyPI under an MIT license. CBMOS allows for fast prototyping on a central processing unit for small systems through the use of NumPy. Using CuPy on a GPU, cell populations of up to 10,000 cells can be simulated within a few seconds. As such, it will substantially lower the time investment for any modeler to check the crucial assumption that model conclusions are independent of numerical issues.
Sections du résumé
BACKGROUND
BACKGROUND
Cell-based models are becoming increasingly popular for applications in developmental biology. However, the impact of numerical choices on the accuracy and efficiency of the simulation of these models is rarely meticulously tested. Without concrete studies to differentiate between solid model conclusions and numerical artifacts, modelers are at risk of being misled by their experiments' results. Most cell-based modeling frameworks offer a feature-rich environment, providing a wide range of biological components, but are less suitable for numerical studies. There is thus a need for software specifically targeted at this use case.
RESULTS
RESULTS
We present CBMOS, a Python framework for the simulation of the center-based or cell-centered model. Contrary to other implementations, CBMOS' focus is on facilitating numerical study of center-based models by providing access to multiple ordinary differential equation solvers and force functions through a flexible, user-friendly interface and by enabling rapid testing through graphics processing unit (GPU) acceleration. We show-case its potential by illustrating two common workflows: (1) comparison of the numerical properties of two solvers within a Jupyter notebook and (2) measuring average wall times of both solvers on a high performance computing cluster. More specifically, we confirm that although for moderate accuracy levels the backward Euler method allows for larger time step sizes than the commonly used forward Euler method, its additional computational cost due to being an implicit method prohibits its use for practical test cases.
CONCLUSIONS
CONCLUSIONS
CBMOS is a flexible, easy-to-use Python implementation of the center-based model, exposing both basic model assumptions and numerical components to the user. It is available on GitHub and PyPI under an MIT license. CBMOS allows for fast prototyping on a central processing unit for small systems through the use of NumPy. Using CuPy on a GPU, cell populations of up to 10,000 cells can be simulated within a few seconds. As such, it will substantially lower the time investment for any modeler to check the crucial assumption that model conclusions are independent of numerical issues.
Identifiants
pubmed: 35100968
doi: 10.1186/s12859-022-04575-4
pii: 10.1186/s12859-022-04575-4
pmc: PMC8805507
doi:
Types de publication
Journal Article
Langues
eng
Sous-ensembles de citation
IM
Pagination
55Subventions
Organisme : NIBIB NIH HHS
ID : R01 EB014877
Pays : United States
Organisme : NIH HHS
ID : NIH/2R01EB014877-04A1
Pays : United States
Organisme : Vetenskapsrådet
ID : 2015-03964
Informations de copyright
© 2022. The Author(s).
Références
Philos Trans R Soc Lond B Biol Sci. 2017 May 19;372(1720):
pubmed: 28348253
JCO Clin Cancer Inform. 2019 Feb;3:1-13
pubmed: 30715927
Bioinformatics. 2014 Nov 1;30(21):3101-8
pubmed: 25064572
Nat Commun. 2017 Jan 23;8:13929
pubmed: 28112150
Bioinformatics. 2013 Jan 15;29(2):223-9
pubmed: 23162085
Nature. 2020 Sep;585(7825):357-362
pubmed: 32939066
PLoS Comput Biol. 2017 Feb 13;13(2):e1005387
pubmed: 28192427
Bioinformatics. 2010 Oct 15;26(20):2641-2
pubmed: 20709692
Phys Biol. 2005 Jul 12;2(3):133-47
pubmed: 16224119
FASEB J. 2004 Apr;18(6):731-3
pubmed: 14766791
Phys Biol. 2009 Apr 15;6(3):036001
pubmed: 19369704
Phys Rev Lett. 2000 May 1;84(18):4244-7
pubmed: 10990656
Cell Syst. 2019 Mar 27;8(3):261-266.e3
pubmed: 30904379
Wiley Interdiscip Rev Syst Biol Med. 2011 Jan-Feb;3(1):115-25
pubmed: 21064037
Biophys J. 2014 Jun 3;106(11):2291-304
pubmed: 24896108
Phys Rev E Stat Nonlin Soft Matter Phys. 2005 May;71(5 Pt 1):051910
pubmed: 16089574
Cell Prolif. 2001 Aug;34(4):253-66
pubmed: 11529883
Phys Rev Lett. 1992 Sep 28;69(13):2013-2016
pubmed: 10046374
J Theor Biol. 2007 Jul 7;247(1):186-204
pubmed: 17416390
Biophys J. 2005 Jan;88(1):62-75
pubmed: 15475585
PLoS Comput Biol. 2018 Feb 23;14(2):e1005991
pubmed: 29474446
Bull Math Biol. 2020 Oct 6;82(10):132
pubmed: 33025278
PLoS Comput Biol. 2019 Mar 28;15(3):e1006577
pubmed: 30921323