|
|
|
Parameter balancing for kinetic metabolic models |
Main |
Online Balancing |
Documentation |
Download |
Contact
User manual
Download User Manual
Clearing the session
The variables of the browser session can be reset by clicking the 'Clear Session' button on bottom
of the online balancing page. This can be handy, if e.g. large files have caused proxy errors and
the tool shows random behaviour.
Overview
What is parameter balancing?
Parameter balancing is a way to determine consistent parameter sets for kinetic models of metabolism.
Inserting experimentally measured values directly into a model will probably yield incomplete or
inconsistent parameter sets, violating the thermodynamic Haldane relationships. Balanced parameter
sets avoid this problem. They are computed based on kinetic constants and other data collected from
experiments or the literature, but also based on known constraints between biochemical quantities and
on assumptions about typical ranges, represented by prior values and bounds.
How can I run parameter balancing?
After preparing your model and data files, you can run
parameter balancing interactively on this website. If you
prefer working in the commandline, or if you would like to
include parameter balancing in your programs, you may check
out the various opportunities based on Python3 and Matlab code.
Which parameters of a metabolic model can be balanced?
In general, parameter balancing concerns the kinetic and thermodynamic constants in kinetic metabolic models.
It can also cover metabolite concentrations, chemical potentials, and reaction Gibbs free energies (or,
equivalently, "reaction affinities" or "driving forces"). Metabolic fluxes cannot be balanced, but they can
be included in the analysis (this is described below). There are different typical application cases:
- Kinetic constants, where equilibrium constants are fixed and given
This can be done separately
for each individual reaction. If a network is large and equilibrium constants can be predefined (for instance,
by parameter balancing), we suggest to split the network into single reactions and to run parameter balancing
separately for every reaction.
- Kinetic constants and equilibrium constants in a network
- Equilibrium constants and concentrations in a network
- Equilibrium constants, kinetic constants, and concentrations in a network
What input data are needed?
Parameter balancing employs SBML (Systems
Biology Markup Language) files or SBtab files for model structures and
SBtab table files for data and configuration files. Parameter balancing imports a model (SBML, obligatory) and a
data table (SBtab, optional) with experimental data values. Furthermore, tables with information on the prior
distributions and balancing options are possible. Parameter balancing produces tables with balanced
parameters (SBtab) and a model with rate laws and balanced parameters included (SBML). Please prepare your SBtab files as
described below. The validity of these files can be checked on the SBtab website. The quantities
described in your data table will be linked to elements of the SBML model, via the entries in the columns !SBML:reaction:id and
!SBML:species:id. The IDs in these columns must match the IDs chosen in the SBML file.
References and citation
Parameter balancing has been developed at Humboldt Universität Berlin and Charité - Universitätsmedizin Berlin. The concept of parameter
balancing is described in The Journal of Physical Chemistry B.
Please cite this publication if you use parameter balancing for your research.
Parameter balancing is applied as part of larger workflows in Stanford et al. (Plos One) and Noor et al. (Plos Computational Biology).
Additional information on Systems Biology applications can be found in "Systems Biology: A textbook" by Edda Klipp, Wolfram Liebermeister, Christoph Wierling, and Axel Kowald.
How to run parameter balancing online
Parameter balancing helps you find a consistent parameter set
for a kinetic model, based on (i) kinetic constants and other data collected from
experiments or the literature; (ii) constraints between biochemical quantities due
to their definition or the laws of thermodynamics; (iii) assumptions about typical
ranges, represented by prior distributions and pseudo values. As our standard rate
laws, we use
modular
rate laws.
- Prepare your SBML model. Please make sure that your SBML model is
valid. You can use the official SBML online validator for this.
- Prepare your data file. The
SBtab Quantity table holds the kinetic parameters for the
balancing. Here again, make sure that the SBtab file is
valid. You can use the
official SBtab
online validator for this. Please also keep in mind that
the SBML species and reaction IDs need to comply with the IDs
that are used in the SBtab file.
- Prepare your parameter prior file
(optional). This file holds information on the prior
distributions on the parameter types
(see Download area
for example files). Initially, you can use the default
prior table which is already loaded. If you want to use an
alternative prior table, you can create your own prior table (keep in mind to adhere to
the syntax of the prior tables).
- Prepare your options file (optional). This file can be used to
change settings of the parameter balancing algorithm (see Download area
for example files).
- Upload the files, run
parameter balancing, and download the balanced parameters and model.
If the balancing process was successful, you can download
the SBML file with the balanced parameters and convenience
kinetics. Analogously, you can download
the SBtab parameter file with the balanced parameters.
Alternately, you provide all aforementioned information (model structure,
experimental data, prior file, options file) in one single SBtab document, which consists
of several SBtab tables. Mandatory for this option is an SBtab Reaction table, which can
be translated to an SBMl model. Optional are
SBtab Compartment, Parameter, and Compound tables, which are employed as additional model
building information (see more information on the SBtab <-> SBML conversion on www.sbtab.net).
The three additional tables (for data, parameter priors, and settings) can also be included.
File formats
The model can be provided in SBML format.
Input files for parameter balancing must be prepared in the SBtab format.
Example files can be found here.
- Data tables must be provided as tab-seperated text (.tsv) in a specific file format. The columns
!QuantityType, !SBML:reaction:id, !SBML:species:id, and !Mean (data value, arithmetic mean) are obligatory,
while the columns !Std (data value, standard error), !Unit, and other columns are optional.
Example files can be found here.
- Entries in the data table have to refer to species and reactions in the SBML file via the SBML
element identifiers ("id") given in the columns !SBML:species:id and !SBML:reaction:id.
- Please make sure that the modifiers (inhibitors or stimulators) in your model are identified
clearly by the corresponding SBO terms (inhibitor:20, stimulator:459). Otherwise, the software
will not recognize them, and allosteric regulations will be ignored.
Table of biochemical quantities
At the beginning of parameter balancing, a metabolic network structure is read from
an SBML file. It is assumed that all kinetic rate laws will be substituted by
modular rate laws and
the necessary kinetic constants and some dynamic quantities (referring to a specific metabolic state of
the system) are estimated from collected data. The relevant quantities are listed below.
Quantity Type |
Symbol |
Unit |
BiologicalElement |
MathematicalType |
PhysicalType |
Dependence |
PriorMedian |
PriorStd/GeometricStd |
SBML element |
Abbreviation |
Standard chemical potential |
μ0 |
kJ/mol |
Species |
Additive |
Thermodynamic |
Basic |
-880 kJ/mol |
1500 kJ/mol |
Global parameter |
scp |
Catalytic rate constant geometric mean |
kV |
1/s |
Reaction |
Multiplicative |
Kinetic |
Basic |
10 s-1 |
100 |
Local parameter |
kcrg |
Michaelis constant |
kM |
mM |
Reaction/Species |
Multiplicative |
Kinetic |
Basic |
0.1 mM |
10 |
Local parameter |
kmc |
Activation constant |
kA |
mM |
Reaction/Species |
Multiplicative |
Kinetic |
Basic |
0.1 mM |
10 |
Local parameter |
kac |
Inhibitory constant |
kI |
mM |
Reaction/Species |
Multiplicative |
Kinetic |
Basic |
0.1 mM |
10 |
Local parameter |
kic |
Concentration |
c |
mM |
Species |
Multiplicative |
Dynamic |
Basic |
0.1 mM |
10 |
Species (conc.) |
|
Concentration of enzyme |
u |
mM |
Reaction |
Multiplicative |
Dynamic |
Basic |
0.001 mM |
100 |
Local parameter |
eco |
Equilibrium constant |
keq |
dimensionless |
Reaction |
Multiplicative |
Thermodynamic |
Derived |
1 |
100 |
Local parameter |
keq |
Substrate catalytic rate constant |
kcat+ |
1/s |
Reaction |
Multiplicative |
Kinetic |
Derived |
10 s-1 |
100 |
Local parameter |
kcrf |
Product catalytic rate constant |
kcat- |
1/s |
Reaction |
Multiplicative |
Kinetic |
Derived |
10 s-1 |
100 |
Local parameter |
kcrr |
Chemical potential |
μ |
kJ/mol |
Species |
Additive |
Dynamic |
Derived |
-880 kJ/mol |
1500 |
|
|
Reaction affinity |
A |
kJ/mol |
Reaction |
Additive |
Dynamic |
Derived |
0.0 kJ/mol |
10.0 kJ/mol |
|
|
Forward maximal velocity |
vmax+ |
mM/s |
Reaction |
Multiplicative |
Dynamic |
Derived |
0.001 mM/s |
100 |
Local parameter |
vmaf |
Reverse maximal velocity |
vmax- |
mM/s |
Reaction |
Multiplicative |
Dynamic |
Derived |
0.001 mM/s |
100 |
Local parameter |
vmar |
Remarks
Note that the thermodynamic quantities refer to biochemical
reactants (e.g.ATP) rather than chemical species
(e.g. ATP4-). Therefore, they
represent transformed quantities. In Alberty's exact notation,
they would be written as K' (for keq), μ' (for μ), and
μ'0 (for μ0).
In parameter balancing, all quantities representing energies (in
kJ/mol) are treated in their original scale, while all other
quantities are converted to logarithmic scale (column
"Scaling"). Since the latter quantities are described by
log-normal (instead of normal) distributions, we need to
distinguish between their mean and median values. For more
information on this topic, see the review
Biochemical thermodynamics
by R. Alberty.
-
We further distinguish between basic and
derived quantities (column "Type"). The difference is
that the basis quantities can be freely chosen (e.g., as a result
of an estimation), while the derived quantities depend on the
basic quantities and are computed from them. In parameter
balancing, we define typical ranges for the basic quantities by
prior distributions and for the derived quantities by
pseudo values.
-
When inserted into the SBML model, most quantities are inserted into
kinetic rate laws as local parameters. Exceptions are concentrations
(initial concentration attribute in species), standard chemical
potentials (global parameters), and reaction affinities and chemical
potentials, which could just be computed from other elements.
Some quantities depend on the specific definition of the reaction sum formula (nominal direction,
appearance of small molecules like water); in particular for equilibrium constants, catalytic rate
constants, and maximal velocities, make sure that the definitions match between model and data set.
Gibbs free energies can be used as proxies for the standard chemical potentials. However, make sure
not to mix values from different data sets. It is possible that they will follow different conventions
(setting the GFE for some large molecules to zero values for convenience) and will therefore be
incompatible.
Frequently asked questions
Where is the parameter balancing method described?
Parameter balancing is described in Lubitz et al. (2010).
If you use
parameter balancing in your work, please refer to this article. A modelling workflow based on parameter balancing is described
in Stanford et al. (2013).
How does parameter balancing work mathematically?
Parameter balancing employs Bayesian estimation to determine
a consistent set of all model parameters. To use it
efficiently, it is good to know about some of its
details. For technical reasons, all quantities are
internally converted to natural scaling. This means that for
energy quantities (in kJ/mol), we keep the original values
while for all other quantities, we take the natural
logarithms. Furthermore, we distinguish between basic
quantities and derived quantities (which are uniquely
determined by the basic quantities). See
the overview of all quantities shown above. During balancing, we
integrate information from data (values and standard
errors), prior distributions (typical values and spread for
basic quantities), and pseudo values (typical values and
spread for derived quantities). All these values and spreads
are represented by normal distributions (priors, data with
standard errors, pseudo values, and posteriors) for the
naturally scaled quantities. When converting back to
non-logarithmic values, we obtain log-normal distributions,
which makes it crucial to distinguish between median and
mean values. Eventually, the median values (which are more
realistic and guaranteed to satisfy the relevant
constraints) are inserted into the model.
Which kinetic rate laws are assumed in parameter balancing?
Parameter balancing is based on modular
rate laws, a generalised version of the convenience kinetics. The modular rate laws include reversible mass-action
and reversible Michaelis-Menten rate laws as special cases. Modular rate laws are also supported by
SBMLsqueezer, which allows you to directly insert
rate laws into SBML models. In parameter balancing, rate laws and rate constants can be directly inserted into your model
at the end of the workflow. Note that all rate laws previously present in your model will be removed.
What files do I need to prepare?
A valid SBML file and a corresponding data file, provided in the SBtab format.
Where can I find example files?
A number of example files (SBML models and SBtab data tables for parameter balancing) can be found
here.
What is the SBtab format?
SBtab tables can express various kinds of data. For the parameter balancing you need an
SBtab file of the type "Quantity". You can also edit the prior distribution for the
different parameter types by providing an SBtab file of the type "QuantityInfo". Finally,
you can configure several options for the parameter balancing process by providing an
SBtab file of the type "Config". Examples for each of these SBtab files are on the
corresponding pages of the workflow and in the Downloads section. The current SBtab format is explained
here. SBtab files are provided in the .tsv-format (tab
separated values).
What does a SBtab file look like?
In writing SBtab files, please regard the following facts:
- The SBtab file begins with a specification line:
"!!SBtab TableType='QuantityType' Level='1' Version '0.1'". Please do not alter
this specification row, it will lead to trouble.
- The next row holds the headers of the different columns.
Each header has to be started with an exclamation mark to be recognized as a header
name properly.
- There are several mandatory column headers: !QuantityType,
!SBMLReactionID, ! SBMLSpeciesID, !Mean, !Std, !Unit
- Please consider the following rules concerning the columns:
- !QuantityType can only hold the specific names of parameter
types. You can have a look at the QuantityTypes.tsv-file in the Download area to see
which those are. Watch spelling!
- !SBML:reaction:id and !SBML:species:id hold the identifiers of the
corresponding reaction and species. Watch out: they HAVE TO be the same identifier
names like in the SBML file that is used. Watch spelling, too. No capital switches
or anything.
- !Mean: this column HAS TO hold a numeric value. If you do not
have one, you do not need this row.
- !Std: the standard deviation of the mean value. This can be
left blank, if you have no std.
- !Unit: please enter the unit of the mean value here.
- Please note that different parameter types need either the
!SBML:reaction:id (e.g. equilibrium constant), or the !SBML:species:id (e.g. concentration),
or even both (e.g. Michaelis constant). If this is not entered correctly, the value
will not be taken into account. Whether you need Reaction, Species, or both you can
see in the default prior table.
- To support consistent style, please stick to the presented order of the columns.
Where can I find kinetic and other data for parameter balancing?
The parameter balancing relies on a posterior distribution of the different parameter
types and on a collection of kinetic data provided by the user.
Typical input data for estimating kinetic parameters comprise catalytic constants (kcat values), Michaelis-Menten
constants (KM values), equilibrium constants, standard reaction Gibbs free energies, and Gibbs free energies of formation.
Typical input data for estimating metabolic states also comprise metabolite concentrations.
Data obtained from experiments can be found in the
literature and in web resources:
- A large collection of kinetic data is provided by the BRENDA
Enzyme Database.
- Thermodynamic data for many reactions can be obtained from the website
eQuilibrator. This comprises calculated equilibrium constants and
standard reaction Gibbs free energies for different values of pH and ionic strength. We provide a collection of
these data for parameter balancing here.
What physical units are used?
The units are predefined in the prior table and cannot be changed,
unless you provide your own customised prior table.
Can I also use flux data?
Metabolic fluxes do not directly fit into the dependence scheme that parameter balancing uses internally to link
different quantitities. Therefore, fluxes cannot be used as input data, nor can they be predicted directly.
However, they can be used in an indirect way, as described in
Stanford et al. (2013).
The idea is as follows: In parameter balancing including metabolite levels and reaction Gibbs free energies, known
flux directions can be used to define the signs of all reaction Gibbs free energies. The resulting rate laws and
metabolite levels will be consistent with the predefined fluxes. The kinetic model, parametrised in this way, and
with the balanced metabolite levels, will yield reaction rates with the same signs as the predefined fluxes. By
rescaling the Vmax values (i.e., scaling the catalytic constants, enzyme levels, or both), reaction rates and fluxes
can be matched. The resulting model will correlate to the predefined flux distribution by construction. Note that, in order
for this to work, the predefined fluxes must be thermodynamically feasible (i.e., loop-free, and realisable for the
(potentially predefined) external metabolite levels.
How can I define or modify the priors on model parameters?
Experimental data alone will usually not suffice to determine all model parameters. To determine underdetermined
parameters, and to keep parameters in realistic ranges, parameter balancing uses prior distributions and constraints
for each type of parameter. These priors and constraints are defined in a data table, which can be customised by the
user. The table is described here.
What known caveats exist in parameter balancing?
Parameter balancing makes specific assumptions about the rate laws
used. In some cases, this can lead to problems, or parameter
balancing may not be suitable for your modelling. Here we list points
that can typically lead to problems:
- Large models
Large networks lead to large parameter
sets, which increase
the numerical effort of parameter balancing. One possibility to
avoid this problem is to use fixed, precalculated equilibrium
constants. Then, the kinetic constants of each reaction can be
balanced separately, which reduces the effort.
- Biomass reaction or polymerisation reactions
Many
metabolic models (especially, models used in flux balance analysis)
contain a "biomass" reaction that involves a large number of
compounds with largely varying stoichiometric coefficients.
Modular rate laws, as assumed in parameter balancing, use the
stoichiometric coefficients as exponents in the formula. For
biomass reactions or polyerisation reactions, this is not very
realistic as assumption. Furthermore, these reactions usually
do not have to be thermodynamically consistent. For both reasons,
it is advisable to discard the automatically proposed kinetics,
and insert a more realistic kinetics instead (see, for instance,
the rate laws proposed in
Hofmeyr et al., (2013)).
- Very large or small parameter values
Very large or small parameter values can lead to unrealistic models and
numerical problems. Extreme values should be avoided by using proper bounds. In any case, we suggest to have a look at all
balanced values and to see if they are in realistic ranges.
- Large uncertainties and strongly shifted mean values
Each
balanced parameter value comes with an uncertainty.
The uncertainties are described by normal distributions for the
logarithmic parameter values, so median and mean value on
logarithmic scale will be identical. For the non-logarithmic
values, we obtain a log-normal distribution, and median and mean
value will differ. If the uncertainty is large (which can easily
happen if a value is not constrained by any data values), the
mean and median can become very different, and the mean value can
become very high. This can be avoided by reducing the uncertainty
range - by providing more data that constraints the parameter
value, by using narrower priors or constraints, or by using "pseudo"
values.
- What if the model cannot be simulated?
Problems in
simulating the model (e.g., using COPASI) may be caused by
unrealistically high or low parameter values. If you notice such
parameter values in your model and would like to avoid them, you
may use tighter priors or pseudo values to exclude extreme
parameter values.
Who can answer my other questions?
Please refer to the Contact Page.
Main |
Online Balancing |
Documentation |
Download |
Contact
|