What is flux balance analysis?

Flux balance analysis is a mathematical approach for analyzing the flow of metabolites through a metabolic network. This primer covers the theoretical basis of the approach, several practical examples and a software toolbox for performing the calculations. Flux balance analysis (FBA) is a widely used approach for studying biochemical networks, in particular the genome-scale metabolic network reconstructions that have been built in the past decade1–5. These network reconstructions contain all of the known metabolic reactions in an organism and the genes that encode each enzyme. FBA calculates the flow of metabolites through this metabolic network, thereby making it possible to predict the growth rate of an organism or the rate of production of a biotechnologically important metabolite. With metabolic models for 35 organisms already available (http://systemsbiology.ucsd.edu/In_Silico_Organisms/Other_Organisms) and highthroughput technologies enabling the construction of many more each year6, 7, FBA is an important tool for harnessing the knowledge encoded in these models. In this primer, we illustrate the principles behind FBA by applying it to the prediction of the specific growth rate of Escherichia coli in the presence and absence of oxygen. The principles outlined can be applied in many other contexts to analyze the phenotypes and capabilities of organisms with different environmental and genetic perturbations (a supplementary tutorial provides six additional worked examples with figures and computer code). Flux balance analysis is based on constraints The first step in FBA is to mathematically represent metabolic reactions (Box 1). The core feature of this representation is a tabulation, in the form of a numerical matrix, of the stoichiometric coefficients of each reaction . These stoichiometries impose constraints on the flow of metabolites through the network. Constraints such as these lie at the heart of FBA, differentiating the approach from theory-based models based on biophysical equations that require many difficult-to-measure kinetic parameters8, 9. Constraints are represented in two ways, as equations that balance reaction inputs and outputs and as inequalities that impose bounds on the system. The matrix of stoichiometries imposes flux (that is, mass) balance constraints on the system, ensuring that the total amount of any compound being produced must be equal to the total amount being consumed at steady state . Every reaction can also be given upper and lower bounds, which define the maximum and minimum allowable fluxes of the reactions. These balances and NIH Public Access Author Manuscript Nat Biotechnol. Author manuscript; available in PMC 2011 June 6. Published in final edited form as:  28(3): 245–248.  N IH PA Athor M anscript N IH PA Athor M anscript N IH PA Athor M anscript bounds define the space of allowable flux distributions of a system—that is, the rates at which every metabolite is consumed or produced by each reaction. Other constraints can also be added10. From constraints to optimizing a phenotype The next step in FBA is to define a biological objective that is relevant to the problem being studied . In the case of predicting growth, the objective is biomass production, the rate at which metabolic compounds are converted into biomass constituents such as nucleic acids, proteins, and lipids. Mathematically, the objective is represented by an ‘objective function’ that indicates how much each reaction contributes to the phenotype. A ‘biomass reaction’ that drains precursor metabolites from the system at their relative stoichiometries to simulate biomass production is selected by the objective function in order to predict growth rates. This reaction is scaled so that the flux through it is equal to the exponential growth rate (μ) of the organism. Taken together, the mathematical representations of the metabolic reactions and of the phenotype define a system of linear equations. In flux balance analysis, these equations are solved using linear programming. Many computational linear programming algorithms exist, and they can very quickly identify optimal solutions to large systems of equations. The COBRA Toolbox11 is a freely available Matlab toolbox for performing these calculations (Box 2). In the growth example, suppose we are interested in the aerobic growth of E. coli under the assumption that uptake of glucose, and not oxygen, is the limiting constraint on growth. This involves capping the maximum rate of glucose uptake to a physiologically realistic level (e.g. 18.5 mmol glucose gDW−1 hr−1) and setting the maximum rate of oxygen uptake to an unrealistically high level, so that is does not constrain growth. Then, linear programming is used to determine the flux through the metabolic network that maximizes growth rate, resulting in a predicted exponential growth rate of 1.65 hr−1. . Anaerobic growth of E. coli can be calculated by constraining the maximum rate of uptake of oxygen to zero and solving the system of equations, resulting in a predicted growth rate of 0.47 hr−1. Studies have shown that these predicted aerobic and anaerobic growth rates agree well with experimental measurements12. Although growth is easy to experimentally measure, computational approaches such as flux balance analysis shine in simulations to predict metabolic reaction fluxes and simulations of growth on different substrates or with genetic manipulations. FBA does not require kinetic parameters and can be computed very quickly even for large networks, so it can be applied in studies that characterize many different perturbations. An example of such a case is given in Supplementary Example 6, which explores the effects on growth of deleting every pairwise combination of 136 E. coli genes to find double gene knockouts that are essential for survival of the bacteria. FBA has limitations, however. Because it does not use kinetic parameters, it cannot predict metabolite concentrations. It is also only suitable for determining fluxes at steady state. Except in some modified forms, FBA does not account for regulatory effects such as activation of enzymes by protein kinases or regulation of gene expression, so its predictions may not always be accurate. Orth et al.  2011 June 6. N IH PA Athor M anscript N IH PA Athor M anscript N IH PA Athor M anscript The many uses of flux balance analysis Because the fundamentals of flux balance analysis are simple, the method has found diverse uses in physiological studies, gap-filling efforts and genome-scale synthetic biology3. By altering the bounds on certain reactions, growth on different media (Supplementary Example 1) or with multiple gene knockouts (Supplementary Example 6) can be simulated12. FBA can then be used to predict the yields of important cofactors such as ATP, NADH, or NADPH13 (Supplementary Example 2). Whereas the example described here yielded a single optimal growth phenotype, in large metabolic networks, it is often possible for more than one solution to lead to the same desired optimal growth rate. For example, an organism may have two redundant pathways that both generate the same amount of ATP, so either pathway could be used when maximum ATP production is the desired phenotype. Such alternate optimal solutions can be identified through flux variability analysis, a method that uses FBA to maximize and minimize every reaction in a network14 (, or by using a mixedinteger linear programming based algorithm15. More detailed phenotypic studies can be performed such as robustness analysis16, in which the effect on the objective function of varying a particular reaction flux can be analyzed (Supplementary Example 4). A more advanced form of robustness analysis involves varying two fluxes simultaneously to form a phenotypic phase plane17 (Supplementary Example 5). All genome-scale metabolic reconstructions are incomplete, as they contain ‘knowledge gaps’ where reactions are missing. FBA is the basis for several algorithms that predict which reactions are missing by comparing in silico growth simulations to experimental results18, 19. Constraint-based models can also be used for metabolic engineering where FBA based algorithms, such as OptKnock20, can predict gene knockouts that allow an organism to produce desirable compounds21, 22. This primer and the accompanying tutorials based on the COBRA toolbox (Box 2) should help those interested in harnessing the growing cadre of genome-scale metabolic reconstructions that are becoming available. Box 1: Mathematical representation of metabolism Metabolic reactions are represented as a stoichiometric matrix (S), of size m*n. Every row of this matrix represents one unique compound (for a system with m compounds) and every column represents one reaction (n reactions). The entries in each column are the stoichiometric coefficients of the metabolites participating in a reaction. There is a negative coefficient for every metabolite consumed, and a positive coefficient for every metabolite that is produced. A stoichiometric coefficient of zero is used for every metabolite that does not participate in a particular reaction. S is a sparse matrix since most biochemical reactions involve only a few different metabolites. The flux through all of the reactions in a network is represented by the vector v, which has a length of n. The concentrations of all metabolites are represented by the vector x, with length m. The system of mass balance equations at steady state (dx/dt = 0) is given in  Any v that satisfies this equation is said to be in the null space of S. In any realistic largescale metabolic model, there are more reactions than there are compounds (n > m). In other words, there are more unknown variables than