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 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.

The Costas Maranas Research group is not responsible if a program you download from this website does not work as expected.
Back to Software