libSBML Python API  5.18.0
Flux Balance Constraints

The libSBML “fbc” extension implements support for the SBML Level 3 Flux Balance Constraints package. It can be used in SBML Level 3 Version 1 and Version 2 documents.

Introduction

Constraint based modeling is a widely accepted methodology used to analyze and study biological networks on both a small and whole organism (genome) scale. Typically these models are underdetermined and constraint based methods (e.g. linear, quadratic optimization) are used to optimize specific model properties. This is assumed to occur under a defined set of constraints (e.g. stoichiometric, metabolic) and bounds (e.g. thermodynamic, experimental and environmental) on the values that the solution fluxes can obtain.

Perhaps the most well known (and widely used) analysis method is Flux Balance Analysis (FBA), which is performed on Genome Scale Reconstructions. When using FBA, a target flux is optimized (e.g., to maximize a flux to biomass or minimize ATP production) while other fluxes can be bounded to simulate a selected growth environment or specific metabolic state.

As constraint based models are generally underdetermined, i.e., few or none of the kinetic rate equations and related parameters are known, it is crucial that a model definition includes the ability to define optimization parameters such as objective functions, flux bounds and constraints. This is not well-supported in SBML Level 3 Core. The question of how to best encode constraint-based models in SBML is not new. However, advances in the methods used to construct genome scale constraint-based models and the wider adoption of constraint based modeling in biotechnological/medical applications have led to a rapid increase in both the number of models being constructed and the tools used to analyze them.

Faced with such growth, both in number and diversity, the need for a standardized data format for the definition, exchange and annotation of constraint based models has become critical. As the core model components (e.g., species, reactions, stoichiometry) can already be efficiently described in SBML, the Flux Balance Constraints (FBC) package is designed to extend SBML Level 3 Core by adding the elements necessary to encode current and future constraint-based models.

In version 2 of this package, the ability to encode gene products and gene product references was added, and the encoding of flux bounds was modified to reference parameters, instead of holding directly-encoded values.

Authors

The primary authors of the SBML Level, 3 Flux Balance Constraints package are Brett G. Olivier and Frank T. Bergmann.

The specification for this SBML package

This API documentation for libSBML does not provide a complete explanation of the SBML Level 3 Flux Balance Constraints (“fbc”) package. If you are developing software that uses “fbc”, you are strongly urged to read the actual specification for the package. A link to the specification document current is provided below, along with a link to the page of known issues (if any).

Specification for SBML Level 3 Flux Balance Constraints, current at the time of this libSBML release (5.18.0). Note: an Internet connection is required to access these documents.
Specification (in PDF format) Known issues
Flux Balance Constraints package, Version 1 Release 1 Errata page
Flux Balance Constraints package, Version 2 Release 1 Errata page
More...

Classes

class  libsbml.Association
 fbc Annotation helper class for “fbc” Version 1. More...
 
class  libsbml.CobraToFbcConverter
 fbc COBRA to SBML Level 3 “fbc” converter. More...
 
class  libsbml.FbcAnd
 fbc An “and” relationship for gene products More...
 
class  libsbml.FbcAssociation
 fbc Base class for FbcAnd, FbcOr, and GeneProductRef More...
 
class  libsbml.FbcExtension
 fbc Base extension class for the “fbc” package. More...
 
class  libsbml.FbcModelPlugin
 fbc Extension of Model. More...
 
class  libsbml.FbcOr
 fbc An “or” relationship for gene products More...
 
class  libsbml.FbcPkgNamespaces
 fbc SBMLNamespaces extension for the package. More...
 
class  libsbml.FbcReactionPlugin
 fbc Extension of Reaction by the “fbc” package. More...
 
class  libsbml.FbcSBMLDocumentPlugin
 fbc Extension of SBMLDocument for the “fbc” package. More...
 
class  libsbml.FbcSpeciesPlugin
 fbc Extension of Species. More...
 
class  libsbml.FbcToCobraConverter
 fbc SBML Level 3 “fbc” to COBRA converter. More...
 
class  libsbml.FbcV1ToV2Converter
 fbc Convert “fbc” Version 1 models to Version 2 More...
 
class  libsbml.FbcV2ToV1Converter
 fbc Convert “fbc” Version 2 models to Version 1 More...
 
class  libsbml.FluxBound
 fbc Max or min value for a reaction flux. More...
 
class  libsbml.FluxObjective
 fbc An objective function for a flux. More...
 
class  libsbml.GeneAssociation
 fbc Annotation helper class for “fbc” Version 1. More...
 
class  libsbml.GeneProduct
 fbc Association of a gene product with a Reaction More...
 
class  libsbml.GeneProductAssociation
 fbc Association between gene products and reactions More...
 
class  libsbml.GeneProductRef
 fbc Reference to a gene product of a reaction More...
 
class  libsbml.ListOfFbcAssociations
 fbc A list of FbcAssociation objects. More...
 
class  libsbml.ListOfFluxBounds
 fbc A list of FluxBound objects. More...
 
class  libsbml.ListOfFluxObjectives
 fbc A list of FluxObjective objects. More...
 
class  libsbml.ListOfGeneAssociations
 fbc A list of GeneAssociation objects. More...
 
class  libsbml.ListOfGeneProducts
 fbc A list of GeneProduct objects. More...
 
class  libsbml.ListOfObjectives
 fbc A list of Objective objects. More...
 
class  libsbml.Objective
 fbc An objective function. More...
 

Detailed Description

The libSBML “fbc” extension implements support for the SBML Level 3 Flux Balance Constraints package. It can be used in SBML Level 3 Version 1 and Version 2 documents.

Introduction

Constraint based modeling is a widely accepted methodology used to analyze and study biological networks on both a small and whole organism (genome) scale. Typically these models are underdetermined and constraint based methods (e.g. linear, quadratic optimization) are used to optimize specific model properties. This is assumed to occur under a defined set of constraints (e.g. stoichiometric, metabolic) and bounds (e.g. thermodynamic, experimental and environmental) on the values that the solution fluxes can obtain.

Perhaps the most well known (and widely used) analysis method is Flux Balance Analysis (FBA), which is performed on Genome Scale Reconstructions. When using FBA, a target flux is optimized (e.g., to maximize a flux to biomass or minimize ATP production) while other fluxes can be bounded to simulate a selected growth environment or specific metabolic state.

As constraint based models are generally underdetermined, i.e., few or none of the kinetic rate equations and related parameters are known, it is crucial that a model definition includes the ability to define optimization parameters such as objective functions, flux bounds and constraints. This is not well-supported in SBML Level 3 Core. The question of how to best encode constraint-based models in SBML is not new. However, advances in the methods used to construct genome scale constraint-based models and the wider adoption of constraint based modeling in biotechnological/medical applications have led to a rapid increase in both the number of models being constructed and the tools used to analyze them.

Faced with such growth, both in number and diversity, the need for a standardized data format for the definition, exchange and annotation of constraint based models has become critical. As the core model components (e.g., species, reactions, stoichiometry) can already be efficiently described in SBML, the Flux Balance Constraints (FBC) package is designed to extend SBML Level 3 Core by adding the elements necessary to encode current and future constraint-based models.

In version 2 of this package, the ability to encode gene products and gene product references was added, and the encoding of flux bounds was modified to reference parameters, instead of holding directly-encoded values.

Authors

The primary authors of the SBML Level, 3 Flux Balance Constraints package are Brett G. Olivier and Frank T. Bergmann.

The specification for this SBML package

This API documentation for libSBML does not provide a complete explanation of the SBML Level 3 Flux Balance Constraints (“fbc”) package. If you are developing software that uses “fbc”, you are strongly urged to read the actual specification for the package. A link to the specification document current is provided below, along with a link to the page of known issues (if any).

Specification for SBML Level 3 Flux Balance Constraints, current at the time of this libSBML release (5.18.0). Note: an Internet connection is required to access these documents.
Specification (in PDF format) Known issues
Flux Balance Constraints package, Version 1 Release 1 Errata page
Flux Balance Constraints package, Version 2 Release 1 Errata page