GBA Solver: a user-friendly web server for growth balance analysis
Sajjad Ghaffarinasab, Hugo Dourado

TL;DR
GBA Solver is a web tool that simplifies the creation and analysis of growth balance models for cell metabolism.
Contribution
The novel contribution is a user-friendly, no-coding web interface for GBA modeling, integrating enzyme data and visualization tools.
Findings
GBA Solver allows models with up to 20 reactions and uses BRENDA database parameters.
The platform provides interactive visualizations and lowers technical barriers for GBA modeling.
It expands access to computational tools for studying cell metabolism and growth.
Abstract
GBA Solver is a web-based application that enables efficient construction and numerical solution of coarse-grained growth balance analysis (GBA) models containing up to 20 reactions. The platform features an intuitive spreadsheet-based interface that eliminates the need for programming, integrates kinetic parameters from the BRENDA enzyme database, and provides interactive visualizations for model exploration. By lowering technical barriers, GBA Solver makes GBA modeling accessible to a wider scientific community, expanding the computational toolkit for investigating cell metabolism and growth. GBA Solver is freely available at: https://cellgrowthsim.com/. The source code is available at: https://doi.org/10.5281/zenodo.17250925.
Genes, proteins, chemicals, diseases, species, mutations and cell lines named across the full text — each resolved to its canonical identifier and authoritative record.
Click any figure to enlarge with its caption.
Figure 1- —Deutsche Forschungsgemeinschaft10.13039/501100001659
- —European Union10.13039/501100000780
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsClimate change impacts on agriculture · Plant Water Relations and Carbon Dynamics · demographic modeling and climate adaptation
1 Introduction
Computational models are essential for studying the complex biochemical processes that govern cell growth and metabolism. Growth Balance Analysis (GBA) provides a simplified modeling framework for studying the optimal resource allocation in kinetic models that integrate metabolism, protein synthesis, and the dilution of all cell components at balanced growth (Dourado and Lercher 2020; Dourado et al. 2023). Different from other modeling frameworks, GBA does not require biomass composition as input; instead, it predicts the entire cellular composition by assuming optimal growth of a self-replicating system subject to mass conservation, nonlinear kinetic rate laws, and total density constraints. GBA outputs the cell growth rate, fluxes and biomass composition at different environments by solving a nonlinear optimization problem which requires as inputs a stoichiometric matrix, kinetic parameters and cell density. The numerical solution of such optimization problems are however computationally expensive and require programming skills. Here we present GBA Solver, a web-based application that enables efficient construction and numerical solution of coarse-grained GBA models. The platform provides an intuitive interface that eliminates the need for programming, making GBA more accessible to a wider community of researchers.
1.1 Platforms for modeling cell metabolism and growth
There are currently several platforms and frameworks available for modeling cell metabolism, each with different levels of detail, mathematical formalisms, and usability. For linear, constraint-based workflows such as flux balance analysis (FBA) (Orth et al. 2010) and its extensions, tools like CNApy (Thiele et al. 2022), Escher (King et al. 2015), ModelExplore (Martyushenko and Almaas 2019), CAVE (Mao et al. 2023), and Fluxer (Hari and Lobo 2020), provide convenient model construction and visualization. For nonlinear kinetic models, software applications include COPASI (Hoops et al. 2006), Tellurium (Choi et al. 2018), Virtual Cell (Schaff et al. 1997), and AMICI (Fröhlich et al. 2021), and web-based environments such as JWS Online (Olivier and Snoep 2004) and runBioSimulations (Shaikh et al. 2021). To contribute to the community and extend this ecosystem, we developed the GBA Solver, a web-based implementation of the GBA formalism for nonlinear self-replicating cell models. GBA models are unique in the sense they are nonlinear kinetic models that incorporate at the same time (1) the necessary production of proteins to catalyze each reaction in the model, (2) the dilution of all cell components by growth, including proteins and metabolites, and (3) a limited cell density including both metabolites and proteins. This approach allows GBA to predict the whole biomass composition (including metabolites and proteins) instead of requiring it as a modeling input, thus capturing global trade-offs in cell resource allocation without extra phenomenological assumptions. One downside of this approach is, as for any other type of kinetic model, the extreme computational expense to solve large nonlinear problems numerically. Here, we focus on a computational tool for GBA models including up to 20 reactions, which is sufficient to capture major cell functions in a coarse-grained manner (Molenaar et al. 2009; Scott et al. 2010; Hui et al. 2015; Weiße et al. 2015; Doan et al. 2022; Ghaffarinasab et al. 2023).
1.2 Coarse-grained cell models
Coarse-grained models are useful tools for studying fundamental principles of cell physiology. By simplifying complex networks into a few effective reactions and catalytic sectors, these models can capture important trade-offs, such as the growth law of ribosome allocation (Scott et al. 2010; Erickson et al. 2017), shifts in metabolic strategies (Molenaar et al. 2009), and proteome partitioning (Hui et al. 2015), without requiring exhaustive mechanistic detail (Hui et al. 2015; Doan et al. 2022; Ghaffarinasab et al. 2023). This type of simplification renders nonlinear optimization problems tractable while still providing insight into global resource allocation strategies (Molenaar et al. 2009; Scott et al. 2010; Weiße et al. 2015; Erickson et al. 2017). In this spirit, the GBA Solver is designed for coarse-grained self-replicator models, enabling the rapid, interpretable exploration of how metabolite concentrations and growth-driven dilution shape cell behavior.
2 Design and implementation
GBA Solver is built using the Shiny package (Chang et al. 2012) in R (version 4.4.1) (R Core Team 2024). The front-end architecture integrates HTML for content structure, CSS for visual styling, and JavaScript for dynamic interactions and enhanced client-side performance based on the Mazer dashboard template. We integrate comprehensive enzyme kinetic data from the BRENDA database (Chang et al. 2021), providing users access to curated turnover numbers ( ) and Michaelis constants ( ) filtered to include only wild-type enzyme parameters, which are then systematically organized by Enzyme Commission (EC) numbers. Through an interactive table powered by the reactable package (Lin 2019), users can efficiently search and filter enzyme parameters based on multiple criteria including organism, EC number classification, and substrate specificity. This streamlined interface simplifies the often challenging task of identifying appropriate kinetic parameters for metabolic models.
2.1 Input data structure and model configuration
GBA models account for kinetic rate laws by relating the reaction flux of each reaction with the respective concentration of the protein catalyzing that reaction (transport, enzymatic, or “ribosome” reaction producing proteins) and a turnover time function
where is a vector of external environment concentrations, and is a vector of internal metabolite concentrations, both in units . The functions also depend on kinetic parameters, which is the simplest case of a Michaelis–Menten kinetics are the turnover number ( ) and the Michaelis constants ( ). GBA Solver accounts for a larger set of possible kinetic rate laws by implementing the “convenience kinetics” (Liebermeister and Klipp 2006), a general framework that can describe either irreversible or reversible rate laws under regulatory effects from activators and inhibitors. This includes, for example, an irreversible reaction under some regulatory effects from activators, encoded by the function
where the kinetic parameters are the (forward) turnover number of that reaction , the Michaelis constants for external reactants involved on that reaction , the Michaelis constants for internal reactants involved on that reaction , and the activation constants that quantify activator effects of internal reactants on that reaction .
In GBA Solver we organize all the possible model parameters conveniently as matrices in different tabs of an open-source spreadsheet format (ODS), consisting of the following:
Mass fraction matrix (including external and internal reactants): quantifies the mass fraction of each reactant (row in the matrix) going through each reaction (column in the matrix), with negative entries representing reactant consumption and positive entries indicating product formation. Due to mass conservation, the sum of positive entries in each column must sum to 1, and the sum of negative entries must sum to −1. External reactants are denoted by the prefix “x_.” By default, the last row “ ” corresponds to the total protein concentration, while the last column corresponds to the ribosome reaction “ ” that produces protein. The matrix corresponds to the usual stoichiometric matrix , with each row multiplied by the molecular weight of the corresponding reactant, and then with each column normalized so its positive entries sum up to one.Michaelis constant matrix : Contains Michaelis constants in , organized with rows and columns in the same order as in . Every non-zero entry in must have a corresponding positive entry in , since the reactant is then involved in the reaction.Activation constants matrix and inhibition constants matrix : expressed in and organized with rows and columns in the same order as in . Zero values for individual entries indicate no inhibition nor activation effects for the corresponding internal reactant on the corresponding reaction .Turnover number matrix : organized in two rows, the first containing the forward-direction turnover numbers ( ), while the second containing the backward-direction values ( ), with columns ordered as in matrix and in unit of mass of product produced per mass of catalyst protein per hour (in ). An irreversible reaction has the corresponding backward turnover number .Matrix of environment conditions: defines parameters for each growth condition in each column. The first row “rho” specifies cell density in . Subsequent rows contain external reactant concentrations in , with the number of rows corresponding to the number of external reactants (with “x_” prefix) in .
GBA Solver provides a downloadable GBA model template as a reference for users developing their own models, which can then be edited by any spreadsheet editor. Alternatively, users can build models directly within the “Create Model” section of GBA Solver, by filling the corresponding matrices presented each on its own tab. The application employs the “shinyMatrix” R package (Neudecker 2019) to generate and display matrices across model tabs, with custom JavaScript modifications that enhance usability.
The model creation process begins by specifying the number of reactants and reactions, followed by entering their corresponding labels. The system automatically designates the label “r” (corresponding to the ribosome reaction) for the final column and the label “P” (corresponding to total protein) for the final row in the matrices , , , and . By default, the first columns in those matrices are reserved to transport reactions, so all columns are ordered as transport, enzymatic, and ribosome reactions. To help with the creation of new models, the tab for each kinetic parameter displays collapsible cards containing relevant data from the BRENDA database (Chang et al. 2021), with an additional option to query and filter parameters based on organism, EC numbers, and enzyme substrates.
In the “Condition” tab, users input the number of external reactants and “rho” for cell density. After uploading or creating a GBA model, the application presents a comprehensive preview of the input data. This allows users to review their model thoroughly and make direct modifications within the interface. Once finalized, users can export their refined model in ODS format for future use, supporting an iterative development approach that progressively enhances model performance and accuracy.
3 On GBA units and estimating kinetic parameters in coarse-grained models
In GBA, we use as the unit for concentrations and Michaelis constants (instead the more usual ) in order to simplify equations and avoid unnecessary assumptions about the molecular weight of components when building coarse-grained models. The GBA constraints of mass conservation and constant cell density (also in ) naturally fit this unit choice (Dourado and Lercher 2020). For genome-scale models, both choices are possible since the conversion between these units is done by simply using the corresponding molecular weights of actual molecules (in ). In coarse grained models, with idealized reactants representing some combination of molecules, the choice of molecular weights for this conversion is not only much less obvious, but also difficult to find since it needs to satisfy the relationship with the stoichiometric matrix , in order to guarantee that mass is conserved within each reaction (Dourado et al. 2023). Thus, we simplify the modeling process and bypass the need for the modeler to provide molecular weights by simply using the unit and enforcing that the columns of the mass fraction matrix sum to zero, which equivalently guarantee mass conservation within reactions in a much simpler way [see Dourado et al. (2023) for a more detailed explanation]. The same is true for using molecular weights in the conversion of turnover numbers in the usual unit to the matching unit of mass of product per mass of catalyst protein per hour, resulting in .
The existence of idealized reactions and reactants in coarse-grained models also mean that the modeler cannot simply retrieve kinetic parameters from databases, but somehow estimate these values. While this is a non-trivial task and a open problem for metabolic modeling in general, some common rule of thumb strategies for estimating include taking the mean when “lumping” reactions in parallel, and taking the harmonic mean when “lumping” reactions in series (Brown et al. 2014). For the Michaelis constants , a reasonable choice is to take half of the summed concentration of substrates involved in the lumped reaction, reflecting a typical saturation of enzymes (Dourado et al. 2021). Since the GBA Solver is only a tool to simplify modeling and analysis of self-replicating cell models, it cannot guarantee that any given choice is biologically realistic, but it provides a convenient way to test such assumptions.
4 Model validation and numerical optimization
Once a model is loaded, users can validate its compliance with the GBA framework requirements with the “Check Model” button. This comprehensive validation includes:
Data integrity: verifies that no missing (NA) or non-numeric values exist throughout the model;Dimensional consistency: confirms that all matrices maintain consistent dimensions, with matching numbers of reactions and reactants;Non-negative value verification: validates that all external concentrations are non-negative and that cell density is positive;Michaelis constant validation: identifies instances where substrates (negative entries in the matrix M) have Michaelis constants incorrectly set to zero. If these errors are detected, the system issues a warning and automatically applies the default low value of 0.1 to these parameters. Should any other validation criteria fail, the application displays a specific error message directing users to reset their session and revise the problematic aspects of their model.
Upon successful validation, the system notifies users that their model meets all requirements, enabling them to proceed to subsequent analysis steps. This validation workflow ensures that only properly formatted models enter the computational pipeline.
Users initiate the numerical solution of the GBA model by selecting the “Run” button. The optimization uses the nloptr R package (Ypma and Johnson 2011), which implements the augmented Lagrangian method for non-linear optimization via the auglag function. This method allows users to choose from three specialized local solvers; by default GBA Solver uses SLSQP (Sequential Least Squares Quadratic Programming) which is in general the best suited for smaller models up to 10 reactions, but users can also change to LBFGS (Low-storage BFGS) and MMA (Method of Moving Asymptotes) solvers with the “Advanced option” button. As for any other nonlinear optimization problem, it is in principle not possible to determine beforehand which numerical method will work best for each particular GBA model, and exploration is necessary in each case to find the faster and most accurate local solver. During optimization, a dynamic progress bar tracks completion for each growth condition, providing users with real-time estimates of the total processing time. For reference, the following GBA model example in Fig. 1 has five reactions and takes at the order of 0.1 s to be optimized per condition.
Example of a simple GBA model with five irreversible reactions following the Michaelis–Menten kinetics. (a) Schematic representation with reactions (squares) and their relationship (solid arrows) with reactants (internal metabolites as circles, total protein “P” as a rounded square, and external reactants as polygons). The GBA framework includes the dilution by growth of each internal reactant (metabolites and total protein) as indicated by dashed arrows, and the necessary protein synthesis by the ribosome reaction “r” to catalyze all reactions. (b) Parameters defining the model: (1) mass fraction matrix (M) of external and internal reactants, specifying the consumption and production of each reactant (rows) by each reaction (columns), with negative values indicating consumption and positive values indicating production, (2) the matrix of Michaelis constants, and (3) the density ρ. Note that since all backward turnover numbers kcat,b are zero, as so are the activation and inhibition matrices (not shown), the kinetics of all reactions (2) reduce to a simple Michaelis–Menten rate law.
The numerical solutions across all simulation conditions are presented as interactive visualizations using the apexcharter package (Perrier and Meyer 2019). These visualizations include growth rates, protein concentrations, protein fractions, reaction fluxes, and metabolite concentrations. Each interactive plot supports zooming and panning to enable researchers to investigate specific trends. Users can export these visualizations in both SVG and JPEG formats. GBA Solver also integrates d3flux (John 2021) to automatically generate interactive metabolic pathway diagrams directly within the web interface. These pathway visualizations dynamically represent the GBA analysis results from the first growth condition, with line thicknesses and node sizes proportionally reflecting flux magnitudes and concentration values, respectively.
5 Discussion
GBA Solver is a user-friendly web application for growth balance analysis (GBA) that increases accessibility and reproducibility in theoretical studies of optimal cell resource allocation at balanced growth. This platform provides an intuitive interface built with R/Shiny, supplemented by HTML, CSS, and JavaScript to enhance the user experience. The application allows users to construct and modify GBA models formatted as spreadsheets (here, .ods files), a familiar open-source format for many researchers. This design choice simplifies the process of inputting and managing model parameters and growth environments without requiring programming skills. GBA Solver also streamlines the incorporation of kinetic parameters into models by integrating data tables retrieved from the BRENDA enzyme database (Chang et al. 2021).
While the GBA formalism itself imposes no limit on model size, the numerical solution of the corresponding nonlinear optimization problem for large models is still out of reach with current available solvers. For this reason, GBA Solver is at the moment limited to coarse-grained models up to 20 reactions. Cell models up to that size can still capture major resource allocation patterns (Molenaar et al. 2009; Scott et al. 2010; Hui et al. 2015; Weiße et al. 2015; Doan et al. 2022; Ghaffarinasab et al. 2023), while resulting in feasible and relatively fast solutions for GBA models with the currently available solvers. This current limitation can in principle be removed by incorporating numerical solvers especially developed for the GBA problem, so larger, more detailed GBA models might be also accepted in this platform.
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1Brown S , Muhamad N, Pedley K et al The kinetics of enzyme mixtures. Mol Biol Res Commun 2014;3:21–32.27843974 PMC 5019218 · pubmed ↗
- 2Chang A , Jeske L, Ulbrich S et al BRENDA, the ELIXIR core data resource in 2021: new developments and updates. Nucleic Acids Res 2021;49:D 498–D 508.33211880 10.1093/nar/gkaa 1025 PMC 7779020 · doi ↗ · pubmed ↗
- 3Chang W , Cheng J, Allaire J et al shiny: web application framework for R. Institution: Comprehensive R Archive Network Pages: 1.9.1., 2012.
- 4Choi K , Medley JK, König M et al Tellurium: an extensible python-based modeling environment for systems and synthetic biology. Biosystems 2018;171:74–9.30053414 10.1016/j.biosystems.2018.07.006PMC 6108935 · doi ↗ · pubmed ↗
- 5Doan DT , Hoang MD, Heins A-L et al Applications of coarse-grained models in metabolic engineering. Front Mol Biosci 2022;9:806213.35350716 10.3389/fmolb.2022.806213 PMC 8957914 · doi ↗ · pubmed ↗
- 6Dourado H , Lercher MJ. An analytical theory of balanced cellular growth. Nat Commun 2020;11:1226.32144263 10.1038/s 41467-020-14751-w PMC 7060212 · doi ↗ · pubmed ↗
- 7Dourado H , Liebermeister W, Ebenhöh O et al Mathematical properties of optimal fluxes in cellular reaction networks at balanced growth. P Lo S Comput Biol 2023;19:e 1011156.37279246 10.1371/journal.pcbi.1011156 PMC 10275479 · doi ↗ · pubmed ↗
- 8Dourado H , Mori M, Hwa T et al On the optimality of the enzyme–substrate relationship in bacteria. P Lo S Biol 2021;19:e 3001416.34699521 10.1371/journal.pbio.3001416 PMC 8547704 · doi ↗ · pubmed ↗
