Literature DB >> 20920235

Computationally efficient flux variability analysis.

Steinn Gudmundsson1, Ines Thiele.   

Abstract

BACKGROUND: Flux variability analysis is often used to determine robustness of metabolic models in various simulation conditions. However, its use has been somehow limited by the long computation time compared to other constraint-based modeling methods.
RESULTS: We present an open source implementation of flux variability analysis called fastFVA. This efficient implementation makes large-scale flux variability analysis feasible and tractable allowing more complex biological questions regarding network flexibility and robustness to be addressed.
CONCLUSIONS: Networks involving thousands of biochemical reactions can be analyzed within seconds, greatly expanding the utility of flux variability analysis in systems biology.

Entities:  

Mesh:

Year:  2010        PMID: 20920235      PMCID: PMC2963619          DOI: 10.1186/1471-2105-11-489

Source DB:  PubMed          Journal:  BMC Bioinformatics        ISSN: 1471-2105            Impact factor:   3.169


Background

Flux balance analysis (FBA) [1,2] is concerned with the following linear program (LP) where the matrix S is an m × n stoichiometry matrix with m metabolites and n reactions and c is the vector representing the linear objective function. The decision variables v represent fluxes, with V ⊆ ℝand vectors vand vspecify lower and upper bounds, respectively. The constraints Sv = 0 together with the upper and lower bounds specify the feasible region of the problem. Flux variability analysis (FVA) [3] is used to find the minimum and maximum flux for reactions in the network while maintaining some state of the network, e.g., supporting 90% of maximal possible biomass production rate. Applications of FVA for molecular systems biology include, but are not limited to, the exploration of alternative optima of (1) [3], studying flux distributions under suboptimal growth [4], investigating network flexibility and network redundancy [5], optimization of process feed formulation for antibiotic production [6], and optimal strain design procedures as a pre-processing step [7,8]. Let w represent some biological objective such as biomass or ATP production. After solving (1) with c = w, FVA solves two optimization problems for each flux vof interest where Z0 = wv0 is an optimal solution to (1), γ is a parameter, which controls whether the analysis is done w.r.t. suboptimal network states (0 ≤ γ <1) or to the optimal state (γ = 1). Assuming that all n reactions are of interest, FVA requires the solution of 2n LPs. While FVA is clearly an embarrassingly parallel problem and is therefore ideally suited for computer clusters, this note focuses on how FVA can be run efficiently on a single CPU. A multi-CPU implementation of fastFVA can be done in the same way as for FVA, i.e., by distributing subsets of the n reactions to individual CPUs. It is expected to give almost linear speedup for sufficiently large problems.

Implementation

A direct implementation of FVA iterates through all the n reactions and solves the two optimization problems in (2) from scratch each time by calling a specialized LP solver, such as GLPK [9] or CPLEX (IBM Inc.) At iteration i, i = 1, 2, ..., n all elements of c are zero except c= 1. Since the only difference between each iteration is a change in the objective function, i.e., the feasible region does not change, solving the LPs from scratch is wasteful. Each time a LP is solved, the solver has to spend some effort in finding a feasible solution. Once a feasible solution is found, the solver then proceeds to locate the optimum. The small changes in the objective function suggest that, on average, the optimum for iteration i does not lie far away from the optimum for iteration i + 1. With Simplex-type LP algorithms, this property can be exploited by solving problem (1) from scratch and then solving the subsequent 2n problems of (2) by starting from the last optimum solution each time (warm-starts). It should be noted that the default behavior of some Simplex-type solvers is to use warm-starts when a sequence of LPs is solved within the same application call. However, current implementations of FVA do not make use of this option (c.f. [10]). Furthermore, for increased efficiency, model preprocessing (presolving) should be disabled after solving the initial problem P. Given a value of 0 <γ ≤ 1, fastFVA performs the following procedure Setup problem (1), denote it by P Solve P from scratch to get v0 and Z0 Add the constraint wv ≥ γZ0 to P for i = 1 to n Let c= 1 and c= 0, ∀j ≠ i Maximize P, starting from 1 to get vand Z maxFlux= Z Once all maximization problems have been solved, the minimization problems are solved in the same way, starting from v0 = v. An important difference between the various LP solvers available is their ability to exploit multiple core CPUs or multi-processor CPUs to increase performance. The GLPK solver, for example, is a single threaded application. When running on a quad-core machine with hyperthreading enabled, the CPU load is only at 12-13%. On multi-core machines, a significant speedup can often be achieved by simply running multiple instances of fastFVA, each working on a different subset of the n reactions. The fastFVA package runs within the Matlab environment, which will facilitate the use of fastFVA by users less experienced in programming. In addition, many biochemical network models can be imported into Matlab using the Systems Biology Markup Language (SBML) and the COBRA toolbox [10]. The fastFVA code is written in C++ and is compiled as a Matlab EXecutable (MEX) file (additional file 1). Matlab's PARFOR command is used to exploit multi-core machines. Two different solvers are supported, the open-source GLPK package [9], and the industrial strength CPLEX solver from IBM.

Results and Discussion

We evaluated the performance of fastFVA on six biochemical network models ranging from approx. 650 up to 13,700 reactions (Table 1, additional file 2).
Table 1

The models used in the experiments

ModelReferencesReactionsMetabolites
T. maritima[13]647565
P. putida[14]1060911
E. coli[15]23821668
Human[16]38202785
E-matrix[17]1369411991
Ecoupled-matrix[5]1372613047
The models used in the experiments

Performance evaluation

Four metabolic networks and two versions of a genome-scale network of the transcriptional and translational (tr/tr) machinery of E. coli were used for testing the fastFVA code (Table 1). The biomass reaction was used as an objective in the metabolic models, while the demand of ribosomal 50 S subunit was used as the objective in the tr/tr models. In all cases, flux distributions corresponding to at least 90% of optimal network functionality were sought. The fastFVA code was tested on a DELL T1500 desktop computer with a 2.8 GHz quad core Intel i7 860 processor with hyperthreading enabled and Windows 7.

Running times

The running times are given in Table 2 where fastFVA is compared to the direct implementation of FVA found in the COBRA toolbox [10]. The observed speedup is significant, ranging from 30 to 220 times faster for GLPK and from 20 to 120 times faster for CPLEX. The minimum and maximum flux values obtained with fastFVA were essentially identical to the values obtained with the direct approach (data not shown).
Table 2

Running time (s) for fastFVA versus a direct FVA implementation

GLPKCPLEX
FVAfastFVAFVAfastFVA
T. maritima10.30.34.30.2
P. putida37.01.112.30.3
E. coli340.02.5119.51.5
Human2217.812.5659.85.4
E-matrix12263.1184.09514.6108.1
Ecoupled-matrix> 120 h1919.430630.11421.7
Running time (s) for fastFVA versus a direct FVA implementation

Other uses of fastFVA

The fastFVA code can be used to compute the flux-spectrum [11], a variant of metabolic flux analysis, simply by setting γ = 0 in (2). The α-spectrum [12], which has been used to study flux distributions in terms of extreme pathways, can also be computed with fastFVA. In this case, the parameter γ in (2) is set to zero and the S matrix is replaced by a matrix P containing the extreme pathways as its columns.

Conclusions

With this efficient FVA tool in hand, new questions can be addressed to study the flexibility of biochemical reaction networks in different environmental and genetic conditions. It is now possible to design computational experiments requiring hundreds or even thousands of FVAs.

Availability and requirements

The fastFVA package is freely available at http://notendur.hi.is/ithiele/software/fastfva.html together with pre-compiled binaries for Linux and Microsoft Windows. The fastFVA code runs under Matlab and relies on third-party solvers to solve linear optimization problems. Two such solvers are supported, the open source GLPK [9] and the industrial strength CPLEX (IBM Inc.) The fastFVA code is written in C++ and is compiled as a Matlab EXecutable function (MEX). It is released under GNU LGPL.

Authors' contributions

IT conceived and designed the study. SG implemented fastFVA and carried out the experiments. Both authors wrote the manuscript and approved its final version.

Additional file 1

This file contains the C++ source code, the pre-compiled binaries, an example on how to use fastFVA and scripts for carrying out the experiments described above. Click here for file

Additional file 2

This file contains the six metabolic networks used in the experiments. Click here for file
  15 in total

1.  An optimization framework for identifying reaction activation/inhibition or elimination candidates for overproduction in microbial systems.

Authors:  Priti Pharkya; Costas D Maranas
Journal:  Metab Eng       Date:  2005-09-30       Impact factor: 9.783

2.  Network analysis of intermediary metabolism using linear optimization. I. Development of mathematical formalism.

Authors:  J M Savinell; B O Palsson
Journal:  J Theor Biol       Date:  1992-02-21       Impact factor: 2.691

3.  Global reconstruction of the human metabolic network based on genomic and bibliomic data.

Authors:  Natalie C Duarte; Scott A Becker; Neema Jamshidi; Ines Thiele; Monica L Mo; Thuy D Vo; Rohith Srivas; Bernhard Ø Palsson
Journal:  Proc Natl Acad Sci U S A       Date:  2007-01-31       Impact factor: 11.205

4.  Quantitative prediction of cellular metabolism with constraint-based models: the COBRA Toolbox.

Authors:  Scott A Becker; Adam M Feist; Monica L Mo; Gregory Hannum; Bernhard Ø Palsson; Markus J Herrgard
Journal:  Nat Protoc       Date:  2007       Impact factor: 13.491

5.  An interval approach for dealing with flux distributions and elementary modes activity patterns.

Authors:  F Llaneras; J Picó
Journal:  J Theor Biol       Date:  2007-01-05       Impact factor: 2.691

6.  Reconstructing metabolic flux vectors from extreme pathways: defining the alpha-spectrum.

Authors:  Sharon J Wiback; Radhakrishnan Mahadevan; Bernhard Ø Palsson
Journal:  J Theor Biol       Date:  2003-10-07       Impact factor: 2.691

7.  Functional characterization of alternate optimal solutions of Escherichia coli's transcriptional and translational machinery.

Authors:  Ines Thiele; Ronan M T Fleming; Aarash Bordbar; Jan Schellenberger; Bernhard Ø Palsson
Journal:  Biophys J       Date:  2010-05-19       Impact factor: 4.033

8.  Fat synthesis in adipose tissue. An examination of stoichiometric constraints.

Authors:  D A Fell; J R Small
Journal:  Biochem J       Date:  1986-09-15       Impact factor: 3.857

9.  Genome-scale in silico models of E. coli have multiple equivalent phenotypic states: assessment of correlated reaction subsets that comprise network states.

Authors:  Jennifer L Reed; Bernhard Ø Palsson
Journal:  Genome Res       Date:  2004-09       Impact factor: 9.043

10.  A genome-scale metabolic reconstruction for Escherichia coli K-12 MG1655 that accounts for 1260 ORFs and thermodynamic information.

Authors:  Adam M Feist; Christopher S Henry; Jennifer L Reed; Markus Krummenacker; Andrew R Joyce; Peter D Karp; Linda J Broadbelt; Vassily Hatzimanikatis; Bernhard Ø Palsson
Journal:  Mol Syst Biol       Date:  2007-06-26       Impact factor: 11.429

View more
  112 in total

1.  Quantitative assignment of reaction directionality in a multicompartmental human metabolic reconstruction.

Authors:  H S Haraldsdóttir; I Thiele; R M T Fleming
Journal:  Biophys J       Date:  2012-04-18       Impact factor: 4.033

2.  A Markov chain model for N-linked protein glycosylation--towards a low-parameter tool for model-driven glycoengineering.

Authors:  Philipp N Spahn; Anders H Hansen; Henning G Hansen; Johnny Arnsdorf; Helene F Kildegaard; Nathan E Lewis
Journal:  Metab Eng       Date:  2015-10-29       Impact factor: 9.783

3.  Quantitative flux coupling analysis.

Authors:  Mojtaba Tefagh; Stephen P Boyd
Journal:  J Math Biol       Date:  2018-12-10       Impact factor: 2.259

4.  Anoxic Conditions Promote Species-Specific Mutualism between Gut Microbes In Silico.

Authors:  Almut Heinken; Ines Thiele
Journal:  Appl Environ Microbiol       Date:  2015-04-03       Impact factor: 4.792

5.  Reply to "Challenges in modeling the human gut microbiome".

Authors:  Stefanía Magnúsdóttir; Almut Heinken; Ronan M T Fleming; Ines Thiele
Journal:  Nat Biotechnol       Date:  2018-08-06       Impact factor: 54.908

Review 6.  Recent advances in elementary flux modes and yield space analysis as useful tools in metabolic network studies.

Authors:  Predrag Horvat; Martin Koller; Gerhart Braunegg
Journal:  World J Microbiol Biotechnol       Date:  2015-06-12       Impact factor: 3.312

Review 7.  Constraining the metabolic genotype-phenotype relationship using a phylogeny of in silico methods.

Authors:  Nathan E Lewis; Harish Nagarajan; Bernhard O Palsson
Journal:  Nat Rev Microbiol       Date:  2012-02-27       Impact factor: 60.633

8.  A unifying modelling formalism for the integration of stoichiometric and kinetic models.

Authors:  Jorge Júlvez; Stephen G Oliver
Journal:  J R Soc Interface       Date:  2020-08-05       Impact factor: 4.118

9.  MetaboTools: A Comprehensive Toolbox for Analysis of Genome-Scale Metabolic Models.

Authors:  Maike K Aurich; Ronan M T Fleming; Ines Thiele
Journal:  Front Physiol       Date:  2016-08-03       Impact factor: 4.566

10.  A community-driven global reconstruction of human metabolism.

Authors:  Ines Thiele; Neil Swainston; Ronan M T Fleming; Andreas Hoppe; Swagatika Sahoo; Maike K Aurich; Hulda Haraldsdottir; Monica L Mo; Ottar Rolfsson; Miranda D Stobbe; Stefan G Thorleifsson; Rasmus Agren; Christian Bölling; Sergio Bordel; Arvind K Chavali; Paul Dobson; Warwick B Dunn; Lukas Endler; David Hala; Michael Hucka; Duncan Hull; Daniel Jameson; Neema Jamshidi; Jon J Jonsson; Nick Juty; Sarah Keating; Intawat Nookaew; Nicolas Le Novère; Naglis Malys; Alexander Mazein; Jason A Papin; Nathan D Price; Evgeni Selkov; Martin I Sigurdsson; Evangelos Simeonidis; Nikolaus Sonnenschein; Kieran Smallbone; Anatoly Sorokin; Johannes H G M van Beek; Dieter Weichart; Igor Goryanin; Jens Nielsen; Hans V Westerhoff; Douglas B Kell; Pedro Mendes; Bernhard Ø Palsson
Journal:  Nat Biotechnol       Date:  2013-03-03       Impact factor: 54.908

View more

北京卡尤迪生物科技股份有限公司 © 2022-2023.