OptKnock suggests gene deletion strategies leading to the overproduction of a pre-specified metabolite using the provided metabolic model. A nested optimization framework identifies the gene deletions by coupling the production of the desired product with biomass formation. Formulation details can be found in the following articles:
Burgard, A.P., Pharkya, P., Maranas, C.D. (2003), "OptKnock: A Bilevel Programming Framework for Identifying Gene Knockout Strategies for Microbial Strain Optimization," Biotechnology and Bioengineering, 84(6), 647-657. [221 kb]
Pharkya, P., A.P. Burgard, and C.D. Maranas (2003), "Exploring the overproduction of amino acids using the bilevel optimization framework OptKnock," Biotechnology and Bioengineering, 84(7), 887-899. [1411 kb]
GAMS codes for the OptKnock procedure is given for two separate models:
- The genome-scale metabolic model for Escherichia coli (iAF1260), and
- A small model of core metabolism (AntCore).
The GAMS code provided here is complete with all the required model files (reactions, metabolites, stoichiometry etc.). Applying the OptKnock procedure requires following the following steps:
Step 1: Identify the initial metabolic flux bounds for the wild-type strain
As outlined in the papers, the OptKnock procedure requires that bounds are provided for all fluxes. It will run faster if the tightest possible bounds are provided for all fluxes consistent with a minimum required biomass formation rate for a given amount of substrate (e.g., glucose). These bounds are estimated using program Bounds.gms (for both models). The output of this file must be stored inside the model directory (iAF1260 and AntCore directories, respectively).
Step 2: Estimating maximum theoretical yields for product and biomass
MaxBiomass.gms
and MaxSuccinate.gms
programs can be used to estimate the maximum theoretical biomass and succinate yield per 100 mmol / g DW hr of glucose.
Based on these estimates, the users can then establish their own targets (as a percent of maximum) for the minimum biomass yield desired from the overproducing phenotype.
Step 3: Identifying the knockouts using OptKnock procedure
Run the GAMS file OptKnock.gms
after changing or specifying the number (i.e., k) of genetic / reaction knockouts desired within the code
(the variable corresponding to this is allowknock
). In addition, the users must also update the minimum biomass required by adjusting the scalar parameter minbiomass
.
Here are the list of files included:
File Name | Description |
---|---|
Bounds.gms |
Identifies the minimum and the maximum allowable fluxes for all he reactions in the network subject to constraints from the primal problem (stoichiometry, uptakes, minimum biomass production desired). |
OptKnock.gms |
Identifies "k" number of reaction knockouts that couples the formation of biomass at the same time maximizing the synthesis of the product. |
MaxBiomass.gms |
Used to estimate the maximum biomass yield and to arrive at an estimate of the minimum biomass desired from the overproducing phenotype. |
MaxSuccinate.gms |
Used to estimate the theoretical maximum yield of succinate (or any other desired product). |
[Model]_sij.txt |
Contains the stoichiometric indices of all metabolites and reactions included in the model * |
[Model]_rxn.txt |
Contains the set of all reactions included in the model * |
[Model]_cmp.txt |
Contains the set of all metabolites included in the model * |
[Model]_transporters.txt |
Contains the set of all transporters and exchange reactions that needs to be excluded from the knockout sets * |
* All these files are available in the respective model folders (iAF1260 and AntCore).
The code is freely available for academic users. Before downloading our software, we ask for your name and institution so we may better design future versions of our software. Every consideration has been made during the design, writing, and posting of this code to ensure the program works properly.