Introduction
METAFLUX employs constraint-based metabolic modeling to infer
intracellular metabolic fluxes from gene expression data. This vignette
provides a comprehensive overview of the mathematical framework
underlying the algorithm.
Theoretical Background
A genome-scale metabolic model (GEM) represents the complete set of
metabolic reactions in an organism. Human-GEM, used by METAFLUX,
contains:
- 8,378 metabolites
- 13,082 reactions
- 3,625 metabolic genes
Stoichiometric Matrix
The stoichiometric matrix
encodes the structure of the metabolic network:
where: -
= number of metabolites (8,378) -
= number of reactions (13,082) -
= stoichiometric coefficient of metabolite
in reaction
Flux Balance Analysis (FBA)
Steady-State Assumption
At metabolic steady state, the rate of production equals the rate of
consumption for each metabolite:
where
is the flux vector.
Optimization Problem
METAFLUX solves a quadratic programming problem:
subject to:
where: -
= identity matrix (regularization) -
= objective coefficients (biomass maximization) -
= flux bounds from MRAS
Biomass Objective
The objective function maximizes biomass production:
Gene-Protein-Reaction (GPR) Rules
GPR rules define the relationship between genes, proteins, and
reactions:
-
Isoenzymes (OR relationship): Multiple genes can
catalyze the same reaction
-
Enzyme complexes (AND relationship): Multiple genes
required for one reaction
Scoring Algorithm
Isoenzyme Score (OR)
For reactions with multiple isoenzymes:
where: -
= expression level of gene
-
= gene occurrence weight (frequency in GPR rules)
Complex Score (AND)
For enzyme complexes:
The rate-limiting subunit determines the complex activity.
Mixed Relationships
For complex GPR rules with both AND and OR:
Normalization
Scores are normalized per sample:
Flux Bounds Construction
Reversible Reactions
For reversible reactions
():
Irreversible Reactions
For irreversible reactions
():
Exchange Reactions
Exchange reactions represent nutrient uptake/secretion:
For
cell types, the community matrix is:
where: -
= exchange matrix for cell type
-
= intracellular stoichiometry -
= external medium exchange
Weighted Objective
Cell type fractions weight the objective:
where
is the fraction of cell type
.
Solver: OSQP
METAFLUX uses the OSQP (Operator Splitting Quadratic Program)
solver:
Algorithm Settings
settings <- osqp::osqpSettings(
max_iter = 1000000L, # Maximum iterations
eps_abs = 1e-04, # Absolute tolerance
eps_rel = 1e-04, # Relative tolerance
adaptive_rho_interval = 50,
verbose = FALSE
)
Convergence
The solver converges when:
Typical precision:
Computational Complexity
| MRAS calculation |
|
| FBA (per sample) |
|
| Community model |
|
where: -
= number of reactions -
= number of metabolites -
= number of genes -
= number of cell types
References
Huang Y, et al. (2023). Characterizing cancer metabolism from
bulk and single-cell RNA-seq data using METAFlux. Nature
Communications, 14, 4883.
Robinson JL, et al. (2020). An atlas of human metabolism.
Science Signaling, 13, eaaz1482.
Orth JD, et al. (2010). What is flux balance analysis? Nature
Biotechnology, 28, 245-248.
Stellato B, et al. (2020). OSQP: An operator splitting solver for
quadratic programs. Mathematical Programming Computation, 12,
637-672.