 Research
 Open Access
Double and multiple knockout simulations for genomescale metabolic network reconstructions
 Yaron AB Goldstein^{1}Email author and
 Alexander Bockmayr^{1}
https://doi.org/10.1186/s130150140028y
© Goldstein and Bockmayr; licensee BioMed Central. 2015
 Received: 30 March 2014
 Accepted: 4 December 2014
 Published: 9 January 2015
Abstract
Background
Constraintbased modeling of genomescale metabolic network reconstructions has become a widely used approach in computational biology. Flux coupling analysis is a constraintbased method that analyses the impact of single reaction knockouts on other reactions in the network.
Results
We present an extension of flux coupling analysis for double and multiple gene or reaction knockouts, and develop corresponding algorithms for an in silico simulation. To evaluate our method, we perform a full single and double knockout analysis on a selection of genomescale metabolic network reconstructions and compare the results.
Software
A prototype implementation of double knockout simulation is available at http://hoverboard.io/L4FC.
Keywords
 Constraintbased modeling
 Metabolic network
 Flux coupling analysis
 Reaction knockout
 Gene knockout
Background
Constraintbased modeling has become a widely used approach for the analysis of genomescale reconstructions of metabolic networks [1]. Given a set of metabolites and a set of reactions , the metabolic network is represented by its stoichiometric matrix \(S \in \mathbb {R}^{\mathcal {M} \times \mathcal {R}}\), and a subset of irreversible reactions \(\text {Irr} \subseteq \mathcal {R}\). The flux cone \(C = \{v \in \mathbb {R}^{\mathcal {R}} \mid Sv = 0, v_{r} \geq 0, r \in \text {Irr}\}\) contains all steadystate flux vectors satisfying the stoichiometric and thermodynamic irreversibility constraints. Based on this flux cone, many analysis methods have been proposed over the years (see e.g. [2] for an overview). Flux Balance Analysis (FBA) [3,4] solves a linear program (LP) max{z(v)∣S v=0,l≤v≤u} over the (truncated) flux cone in order to predict how efficiently an organism can realize a certain biological objective, represented by the linear objective function z(v). For example, one may compute the maximal biomass production rate under some specific growth conditions. Flux Coupling Analysis (FCA) [5,6] studies dependencies between reactions. Here the question is whether or not for all steadystate flux vectors v∈C, zero flux v _{ r }=0 through some reaction r implies zero flux v _{ s }=0, for some other reaction s.
Knockout analysis has become an important technique for the study of metabolic networks and in metabolic engineering. Starting from flux balance analysis (FBA), various in silico screening methods for genetic modifications have been developed, see [7,8] for an overview. On the one hand, complete methods have been proposed, which systematically explore all possible knockout sets up to a given size, e.g. [9,10]. On the other hand, there exist heuristic algorithms such as [1114], which may be considerably faster, but in general are not complete. Klamt et al. [1517] developed the related concept of minimal cut sets, which are (inclusionwise) minimal sets of reactions whose knockout will block certain undesired flux distributions while maintaining others.
Recent progress in the development of algorithms for flux coupling analysis (FCA) [6,18] may lead to a different approach. FCA [5] describes the impact of each possible single reaction knockout in a metabolic network. It analyzes which other reactions become blocked after removing one reaction (“directional coupling”), and which reactions are always active together (“partial coupling”). As we will see, using flux coupling information inside a double or multiple knockout simulation may significantly reduce the search space, without loosing any information.
In this paper, we present an algorithmic framework for double and multiple knockouts in qualitative models of metabolic networks. We will use a latticetheoretic approach [18], which includes classical constraintbased models at steadystate as a special case, but which is much more general. We illustrate and evaluate our method by computing full double knockout simulations on a selection of genomescale metabolic network reconstructions. In particular, we compare the impact of single vs. double reaction knockouts on the other reactions in the network. We also show how our method can be extended to gene (in contrast to reaction) knockouts, and provide computational results for both cases.
Our algorithms are based on an efficient search for the maximal element in suitably defined lattices [18]. To simulate all double or multiple reaction knockouts, we describe a method to select a subset of the reactions as representatives for the whole system. More precisely, we partition the reaction set in equivalence classes of partially coupled reactions. This enables us to obtain the information about all possible double or multiple reaction knockouts much faster and to store the results in a compact format.
The approach developed in this paper is a qualitative method. We do not measure the quantitative impact of knockout sets on the cellular growth rate (or other metabolic fluxes) as this would be done in an FBA approach. Instead, we count how many reactions become blocked by a knockout, similar to the flux balance impact degree introduced in [19]. However, even though we do not apply FBA to evaluate the impact of a knockout, the idea of working with representatives for reaction classes via partial coupling could also be applied in an FBA context. Thus, studies like [20] and even MILPbased approaches like [21] might benefit from this method.
Methods
Reaction coupling in the context of knockout analysis
To determine which reactions are coupled, a simple approach would be to solve for each pair of reactions (r,s) two linear programs (LPs) and to check whether max {v _{ s }  v ∈C,v _{ r }=0}= min {v _{ s }  v ∈C,v _{ r }=0}=0. During the last years, efficient flux coupling algorithms have been developed [6,18] that drastically reduce the number of LPs to be solved, so that that genomewide metabolic network reconstructions can now be analyzed in a few minutes on a desktop computer (compared to a couple of days of running time before).
Whether reactions are blocked or coupled does not depend on the specific flux values. It only matters whether or not v _{ r }=0 resp. v _{ s }=0. In this sense, flux coupling is a qualitative property that can be analysed by studying the set L ^{ C }={supp v  v ∈C} of all supports of flux vectors v∈C, where \(\text {supp}\; v = \{r\in \mathcal {R}\,\,v_{r} \neq 0\}\). Each element a∈L ^{ C } is the set of active reactions of some flux vector v∈C. Therefore, we can interpret L ^{ C } as the set of all possible reaction sets or pathways in the flux cone C. Since L ^{ C } does not contain any information about specific flux values, we also speak of a qualitative model of the metabolic network .
In [18,22], we have shown that flux coupling analysis can be extended to much more general qualitative models, where the space of possible pathways \(L \subseteq 2^{\mathcal {R}}\) can be any nonempty subset of the power set \(2^{\mathcal {R}}\), e.g. L={supp v∣v∈C,v satisfies thermodynamic loop law constraints}. The definition of flux coupling needs only be slightly modified in order to be applicable to these qualitative models. A reaction \(t\in \mathcal {R}\) is called blocked in L if and only if for all a∈L, we have t∉a. For reactions \(r, s \in \mathcal {R}\) that are unblocked in L, we define \(r \stackrel {=0}{\rightarrow } s\) in L, if for all a∈L, r∉a implies s∉a. To distinguish between the original flux coupling and its qualitative extension, we will call the latter reaction coupling from now on.
The goal of this paper is to study more general dependencies between reactions, where the flux through some reaction has to be zero, if the flux through two or more other reactions is zero.
Definition 1 (Joint reaction coupling).
Given a qualitative model \(L \subseteq 2^{\mathcal {R}}\) of a metabolic network , let \(r, s, t \in \mathcal {R}\) be unblocked reactions in L such that neither \({r \stackrel {=0}{\rightarrow } t}\) in L nor \({s \stackrel {=0}{\rightarrow } t}\) in L holds. We say t is jointly coupled to the pair {r,s} in L, written \( {\left \{ r, s \right \}}\stackrel {=0}{\rightarrow } t\) in L, if for all a∈L, r∉a and s∉a implies t∉a.
More generally, given a set \(\mathcal {K} \subseteq \mathcal {R}\) of unblocked reactions in L, we say that t is jointly coupled to in L, written \(\mathcal {K} \stackrel {=0}{\rightarrow } t\) in L, if for all a∈L, \(a \cap \mathcal {K} = \emptyset \) implies t∉a, and \( {\mathcal {K}'} \stackrel {=0}{\rightarrow } t\) in L does not hold for any \(\emptyset \neq \mathcal {K}' \subsetneq \mathcal {K}\).
Note that in the definition of the joint coupling \({\left \{ r, s \right \}}\stackrel {=0}{\rightarrow } t\) in L, we require that the simple couplings \({r \stackrel {=0}{\rightarrow }t}\) in L and \({s \stackrel {=0}{\rightarrow } t}\) in L both do not hold. Thus, joint coupling is about the synergistic effect of a pair of reactions r,s on some other reaction t, which cannot be obtained by either r or s alone. Similarly, \(\mathcal {K} \stackrel {=0}{\rightarrow }t\) in L can only hold if \({\mathcal {K}'} \stackrel {=0}{\rightarrow }t\) in L does not hold, for any smaller knockout set \(\emptyset \neq \mathcal {K}' \subsetneq \mathcal {K}\).
Lattices and maximal elements
In [18], we presented a generic algorithm for flux coupling analysis in qualitative models. This algorithm determines the pairs of coupled reactions by computing the maximal element in suitably defined lattices.
Given any lattice \(L \subseteq 2^{\mathcal {R}}\), we have shown in [18] that a reaction \(r \in \mathcal {R}\) is unblocked in L if and only if r∈1_{ L }. For two unblocked reactions r,s∈1_{ L }, the coupling relation \(r \stackrel {=0}{\rightarrow } s\) in L holds if and only if \(s \notin 1_{L_{\bot \{r\}}}\). In [18], we also presented an efficient algorithm to compute 1_{ L } and \(1_{L_{\bot \{r\}}}\). Once these maximal elements have been found, one can immediately determine the blocked and coupled reactions.
In this paper, we generalize these results to joint couplings. We present a method to compute the effects of double (resp. multiple) reaction knockouts based on the maximal element \(1_{L_{\bot \{r,s\}}}\) (resp. \(1_{L_{\bot \mathcal {K}}}\)).
Proposition 1.
Proof.
We prove only the first part. The second part follows by induction.
Assume \(\{r, s\} \stackrel {=0}{\rightarrow } t\) in L. By definition, we know t∉a for all \(a \in L_{\bot _{\left \{ r, s \right \}}}\), and therefore \(t \notin 1_{L_{\bot {\{r, s\}}}}\). If \(\{r, s\} \stackrel {=0}{\rightarrow } t\) in L, we also know that neither \(r \stackrel {=0}{\rightarrow } t \) in L nor \(s \stackrel {=0}{\rightarrow } t \) in L and that all three reactions are unblocked, i.e., r,s,t∈1_{ L }. As discussed in [18], we have \(r \stackrel {=0}{\rightarrow } t\) in L if and only if \(t \in 1_{L} \setminus 1_{L_{\bot \{r\}}}\phantom {\dot {i}\!}\). Since t∈1_{ L }, we conclude \(t \in 1_{L_{\bot \{r\}}}\), and by the same argument \(t \in 1_{L_{\bot \{s\}}}\phantom {\dot {i}\!}\). Hence, \( t \in \left (1_{L_{\bot \{r\}}} \cap 1_{L_{\bot \{s\}}} \right) \setminus 1_{L_{\bot \{r,s\}}}\phantom {\dot {i}\!}\).
If \( t \in \left (1_{L_{\bot \{r\}}} \cap 1_{L_{\bot \{s\}}} \right) \setminus 1_{L_{\bot \{r,s\}}}\) holds, then \(t \notin 1_{L_{\bot \{r,s\}}}\phantom {\dot {i}\!}\), which implies t∉a for all a∈L _{⊥{r,s}}. Since \(t \in 1_{L_{\bot \{r\}}} \cap 1_{L_{\bot \{s\}}}\), we can again apply [18] to see that \(r \stackrel {=0}{\rightarrow } t\) in L and \(s \stackrel {=0}{\rightarrow } t\) in L do not hold. Finally, since r,s,t∈1_{ L } are unblocked, we get \({\left \{ r,s \right \}} \stackrel {=0}{\rightarrow }t\) in L.
In [22], we considered even more general qualitative models \(\emptyset \neq P \subseteq 2^{\mathcal {R}}\), where P needs not be a lattice. We showed there that qualitative flux coupling analysis can be done in the lattice L ^{ P }=〈P〉 that is generated by P. The results we will present in this paper would be applicable to those qualitative models P as well, but for simplicity we will continue to work with models L that are lattices.
Classes of partially coupled reactions
To determine joint coupling relations \(\mathcal {K} \stackrel {=0}{\rightarrow } t\) in L, we will use as much as possible the information that can be obtained from standard couplings \(r \stackrel {=0}{\rightarrow } s\) in L, i.e., with normal FCA. If \(r \stackrel {=0}{\rightarrow } s\) in L, any pathway a∈L that does not use reaction r will also not use reaction s. Thus, knocking out s in addition to r will not affect the system, i.e., {a∈L  r,s∉a}={a∈L  r∉a}.
Additional improvements can be obtained by looking at partially coupled reactions. Two unblocked reactions r,s∈1_{ L } are called partially coupled in the lattice L, written r⇔s, if both \(r {\,\stackrel {=0}{\rightarrow }\,}s \;\text {in}\, L\) and \(s {\,\stackrel {=0}{\rightarrow }\,}r \text { in } L\). The relation ⇔ is reflexive, transitive and symmetric, and thus an equivalence relation. Any equivalence relation defines a partition of its ground set into equivalence classes. In our case, \(1_{L} = \bigcup _{r \in 1_{L}} \left [ r \right ]_{{\,\leftrightarrow \,}}\), where [r]_{⇔}={s∈1_{ L }  r⇔s}. An equivalence class can be represented by any of its elements, i.e., \([\!r]_{\leftrightarrow } = [\!\tilde r]_{\leftrightarrow }\) if \(r \leftrightarrow {\tilde r}\). By selecting one element from each equivalence class, we get a set of representatives Rep⊆1_{ L } that covers all unblocked reactions, i.e., \(1_{L} = \bigcup _{r \in \texttt {Rep}} [\!r]_{\leftrightarrow }\). We will call [ r]_{⇔} the coupling class or reaction class of reaction r. Biologically, coupling classes can be interpreted as subsets of reactions that are always active together, similarly to the notion of enzyme subsets in [23].
Knockout impact on different networks
Model  Single KOs  Double KOs  

ub  classes  Impact  Impact  ratio  
E. coli iJO1366  1718  1078  4.51 (16.6)  4.41 (10.1)  1.0% 
E. coli iAF1260  1543  975  4.12 (13.7)  4.04 (9.24)  0.8% 
S. cerevisiae iND750  631  371  5.42 (14.6)  5.52 (10.3)  2.7% 
M. tuberculosis iNJ661  744  370  4.74 (35.6)  1.99 (5.78)  5.1% 
S. aureus iSB619  465  207  11.7 (44.9)  7.31 (17.2)  9.2% 
H. pylori iIT341  436  150  6.65 (58.6)  4.71 (15.5)  9.7% 
E. coli textbook  87  55  1.96 (3.58)  15.7 (24.5)  12% 
Algorithms
In [18], we introduced an algorithm that performs flux coupling analysis by computing maximal elements of suitably defined finite lattices \(\tilde {L}\) (see also the section above on lattices and maximal elements). The basic ingredient of this algorithm is a method that checks if a given reaction \(r \in \mathcal {R}\) is blocked in \(\tilde {L}\), and if not returns a pathway \(a\in \tilde {L}\) with r∈a. The maximal element \(1_{\tilde {L}}\) of \(\tilde {L}\) is computed by improving lower and upper bounds \(lb,ub \in \tilde {L}\) with \(lb \subseteq 1_{\tilde {L}} \subseteq ub\). In each step of the algorithm, either lb is increased or ub is decreased, until finally \(lb = ub = 1_{\tilde {L}}\). The following Algorithm 1 is an extension of this method. It allows finding all the reactions in that are unblocked after a multiple knockout \(\mathcal {K} \subseteq 1_{L}\).
As discussed in [18], the flexibility of the latticebased approach comes from hiding the search for specific pathways in a separate function FindPath. For traditional steadystate based models, FindPath can be realized by solving the linear programs \(\max \{\pm v_{t}Sv = 0, v_{\text {Irr}} \geq 0, v_{k} = 0, k \in \mathcal {K}\}\). But, one can also use other modeling hypotheses and corresponding algorithmic methods (see [22] for the example of thermodynamic loop law constraints). The skeleton of Algorithm 1 will remain the same, only the auxiliary function FindPath has to be changed.
In Algorithm 1, we perform a multiple knockout analysis with a fixed knockout set . For a full ddimensional knockout analysis, we would have to iterate over all \(\mathcal {K} \subseteq 1_{L}\) with \(\mathcal {K} = d\), i.e., we would have to run the algorithm \(O\left (\binom {\mathcal {R}}{d}\right)\) times. In each iteration, we have to solve \(O(\mathcal {R})\) linear programs. Since linear programming can be done in polynomial time, full ddimensional knockout analysis is still polynomial (for fixed d), but computationally very expensive as soon as d>2. However, we can still use the partition of 1_{ L } into equivalence classes of partially coupled reactions. Thus, our next Algorithm 2 calculates representatives of all jointly coupled reactions in the case of double knockouts.
In Algorithm 2, we iterate over a subset of all possible double knockouts without loosing any information. For this, we filter redundant knockout pairs such as \(r \stackrel {=0}{\rightarrow } s\) in L (by checking \(s \in 1_{L_{\bot \{r\}}}\)). It is unnecessary to test such a pair, because a knockout of {r,s} is equivalent to the single knockout of r, see Figure 1b) for illustration. For higherdimensional knockout sets one can proceed in a similar fashion:

\(k_{i} {\,\stackrel {=0}{\rightarrow }\,}k_{j} \text { in } L\) for two reactions \(k_{i}, k_{j} \in \mathcal {K}\),

\(\left \{ k_{i_{1}}, k_{i_{2}} \right \} {\,\stackrel {=0}{\rightarrow }\,}k_{j} \text { in } L\) for three reactions \(k_{i_{1}}, k_{i_{2}}, k_{j} \in \mathcal {K}\),

\(\left \{ k_{i_{1}}, k_{i_{2}}, k_{i_{3}} \right \} {\,\stackrel {=0}{\rightarrow }\,}k_{j}\; \text {in}\; L\) for four reactions \(k_{i_{1}}, k_{i_{2}}, k_{i_{3}}, k_{j} \in \mathcal {K}\),

etc.
\(\mathcal {K}_{3, 1}\) contains all 3tuples of coupling class representatives that are not directionally coupled, and \(\mathcal {K}_{3, 2}\) all triples that do not contain reactions that are coupled with respect to knockouts up to cardinality 2. Similarly one could define \(\mathcal {K}_{d, m}\).
While these techniques are applied here only to reaction coupling analysis, they could also be combined with FBAbased methods. Thus, if one is interested to measure the impact of all possible triple knockouts on FBA, it would be sufficient to solve \(\max \left \{v_{\textit {biomass}} Sv = 0, v_{\text {Irr}} \geq 0, v_{\mathcal {K}} = 0\right \}\) for all \(\mathcal {K} \in \mathcal {K}_{3, 1}\) (if only FCA data is available) or all \(\mathcal {K} \in \mathcal {K}_{3, 2}\) (if FCA and joint coupling data is available).
The case of gene knockouts
Often metabolic networks contain regulatory rules for the gene products that catalyze the reactions, e.g. reaction r _{1} is catalyzed by the product of a gene g _{1} and reaction r _{2} is catalyzed by the gene product of g _{1} or g _{2}. Here r _{1} is only possible if g _{1} is active, and r _{2} can only be blocked by a simultaneous knockout of the two genes g _{1} and g _{2}. Typically, there is no 11 relationship between the set of genes and the set of reactions . On the one hand, there are reactions that only get blocked by a combination of two or more gene knockouts, as indicated above in r _{2}≡g _{1}∨g _{2}. On the other hand, the knockout of a single gene \(g \in \mathcal {G}\) may block more than one reaction. For example, reactions r _{1} and r _{3} may both depend on the gene g _{1}. Then one immediately gets that a knockout of g _{1} implies v _{1}=v _{3}=0. Let us further assume that FCA and double reaction knockout analysis have been performed, leading to \(3\stackrel {=0}{\rightarrow } 4\) in L and \(\left \{ 1, 3 \right \}\stackrel {=0}{\rightarrow } 6\) in L. Based on this information, we can extend the reactions that are blocked by the knockout of gene g _{1} to v _{1}=v _{3}=v _{4}=v _{6}=0. Thus, in this example we have 2 reactions (r _{1},r _{3}) that are associated to the gene g _{1} based on information that is directly available in the network reconstruction, but in total 4 reactions (r _{1},r _{3},r _{4},r _{6}) that are coupled to the gene g _{1}. We formalize these notions in the following definition.
Definition 2 (Gene coupling).
We say that the reaction r is coupled to the gene knockout Γ. If Γ={g} is a single gene, we simply write \(g\stackrel {=0}{\rightarrow } r\) in L.
Given the function \(\alpha : 2^{\mathcal {G}} \rightarrow 2^{\mathcal {R}}\), we can determine the reactions coupled to the gene set Γ by applying Algorithm 1 to the set of associated reactions \(\mathcal {K}_{\Gamma }\). Note that the definition of gene coupling slightly differs from the one of joint reaction coupling. Here, we do not exclude reactions that are already knocked out by single (or smaller set of) gene knockouts. This is to account for the possibility that, for example, a reaction r may be associated to a single gene knockout g _{1}, but not to the double knockout {g _{1},g _{2}} (assume r≡g _{1}∨¬g _{2}).
To simulate the impact of all single gene knockouts, one can perform an iteration over all genes \(g \in \mathcal {G}\). Similarly, one can determine all double gene knockout effects by an iteration over all pairs of genes \(\{g_{1}, g_{2}\} \subseteq \mathcal {G}\). However, in contrast to Algorithm 2, we cannot use gene class representatives to decrease the number of pairs that have to be analyzed.
Results and discussion
To evaluate our method, we simulated all single and double reaction knockouts for a number of genomescale metabolic network reconstructions from the BiGGdatabase [24]. The computations were done on a MacBook Air (2012), with 1.8 GHz Intel Core i5, 4GB RAM, and running Java Oracle JDK 1.7.45 under Mac OS X 10.9. To solve linear programs (LPs), we used CPLEX Version 12.6.
Impact of double knockouts
Table 1 shows the impact of single and double reaction knockouts for the different networks. In most cases, the knockout of a single reaction class (due to the knockout of one or more of its reactions) blocks the reactions in 4 to 5 other reaction classes in average. The least robust system is S. aureus iSB619, where a single knockout has an average impact of almost 12 coupled reaction classes. In S. aureus iSB619, about 9.2% of all possible double knockouts {r,s} have joint coupling effects, i.e., there exist reactions \(t \in \mathcal {R}\) that are blocked by the double knockout {r,s}, but not by a single knockout of r or s alone. This is a comparatively large number. For the bigger E. coli models iAF1260 and iJO1366, only around 1% of all double knockouts of two uncoupled reaction classes {r,s} have an impact that exceeds the effects of the corresponding two single knockouts. In S. aureus iSB619, double knockouts also have very strong combined effects. In addition to the reaction classes that would be knocked out by r or s alone, in average more than 7 reaction classes are coupled to a double knockout corresponding to a joint coupling \(\{r, s\}\stackrel {=0}{\rightarrow } t\) in L. But, even for the most robust system, M. tuberculosis iNJ661, a double knockout (if its impact is different from the two single knockouts) in average has a combined effect of 2 additional knocked out classes resp. 5.8 reactions.
Knockout options
Average number of knockout options
Model  Single KOs  Double KOs 

Options  Options  
E. coli iJO1366  35.1  143 
E. coli iAF1260  26.4  78.0 
S. cerevisiae iND750  25.6  106 
M. tuberculosis iNJ661  82.7  120 
S. aureus iSB619  65.9  245 
H. pylori iIT341  143  126 
E. coli textbook  6.92  132 
For most of the studied networks, the average number of knockout options for a given target reaction is in the range of 2585 single reactions and 100150 reaction pairs. With all double knockout information at hand, one can reduce the set of all possible knockout candidates for a wet lab experiment to a small number, and additionally decide beforehand which of them have the smallest side effects.
Impact on biomass production
Number of knockouts for the biomass reaction in selected networks
Model  Single knockouts  Double knockouts  

reaction id  cl. size  classes  reactions  cl. pairs  reac. pairs 
E. coli iJO1366  
Ec_biomass_iJO1366_WT_53p95M  20  101  343  130  339 
Ec_biomass_iJO1366_core_53p95M  1  80  288  90  268 
S. cerevisiae iND750  
biomass_SC4_bal  26  54  156  60  142 
M. tuberculosis iNJ661  
biomass_Mtb_9_60atp  160  64  154  48  83 
S. aureus iSB619  
SA_biomass_1a  8  25  63  59  157 
SA_biomass_5a  1  58  215  54  100 
H. pylori iIT341  
BiomassHP_published  189  36  76  41  81 
We observe that for most of the organisms, the number of single knockouts that block biomass production is very similar to the number of different double knockouts (corresponding to joint couplings) having this property, although the number of double knockout candidates is much larger (quadratic in 1_{ L }).
Algorithmic considerations
Runtime and number of solved LPs for double reaction knockouts (Algorithm 2)
Model  Step  Total  

Blocked  Couples  dko  
E. coli iJO1366  LPs  1718  9943  133225  144886 
time  2.0  42.2  4016.4  1h 8min  
E. coli iAF1260  LPs  1679  10780  52112  64571 
time  1.7  31.5  2688.2  45min 21s  
S. cerevisiae iND750  LPs  597  3987  90664  95248 
time  0.33  6.8  397.8  6min 45s  
M. tuberculosis iNJ661  LPs  327  3416  20647  24390 
time  0.33  5.6  177.7  3min 4s  
S. aureus iSB619  LPs  144  3638  19477  23259 
time  0.09  2.8  43.2  46.0s  
H. pylori iIT341  LPs  106  1812  6753  8671 
time  0.06  1.9  18.0  20.0s  
E. coli textbook  LPs  26  341  1739  2106 
time  0.004  0.06  0.62  0.68s 
Next we discuss the number of LPs we have to solve in order to obtain this additional information. For all our networks, double knockout analysis required solving 5 to 20 times as many LPs than single knockouts, i.e., classical FCA. While this seems to be a large number, it is relatively small compared to the complexity of the problem. A full double knockout simulation is comparable to iterating over all reactions r∈Rep, removing the reaction r and performing a single knockout simulation for each of the resulting subnetworks. Reusing known pathways as witnesses and including reaction coupling information as proposed in [18] allows performing Rep simulations with only 5 to 20 times the effort in LP solving. Table 1 shows that the median value for Rep is 370 for our networks.
In order to evaluate the runtime effect of our algorithmic improvements, we considered two variants of Algorithm 2: Variant A (no representatives) In the main loop of Algorithm 2, we do not iterate over all representatives r,s∈Rep,r<s, but over all pairs of uncoupled reactions r,s∈1_{ L },r<s, with not \(r \stackrel {=0}{\rightarrow } s\; in\; \textit {L}\) and not \(s \stackrel {=0}{\rightarrow } r\) in L. Variant B (no witnesses) Same as Variant A. Additionally we do not save witnesses, thus \(\mathcal {W} = \emptyset \).
Runtime of variants of Algorithm 2 for computing double reaction knockouts
Model  Algor. 2  Variant A  Variant B 

(no representatives)  (no witnesses)  
E. coli iJO1366  1h 8min  1h 59min  > 6h 
E. coli iAF1260  45min 21s  1h 30min  >6h 
S. cerevisiae iND750  6min 45s  8min 39s  > 6h 
M. tuberculosis iNJ661  3min 4s  7min 42s  > 6h 
S. aureus iSB619  46s  1min 59s  2h 32min 
H. pylori iIT341  20s  58.1s  52min 
E. coli textbook  0.68s  2.2s  23.0s 
Gene knockouts
Runtime and number of solved LPs for single and double gene knockouts
Model  Step  

gko  dgko  
E. coli iJO1366  LPs  719  263844 
time  1.2  3h 49min  
E. coli iAF1260  LPs  516  229498 
time  8.6  2h 55min  
S. cerevisiae iND750  LPs  1323  308145 
time  6.4  37min 36s  
M. tuberculosis iNJ661  LPs  175  77346 
time  1.2  15min 59s  
S. aureus iSB619  LPs  49  38689 
time  0.68  9min 42s  
H. pylori iIT341  LPs  27  19348 
time  0.24  1min 52s  
E. coli textbook  LPs  2  2023 
time  0.04  4.4s 
Conclusions

Algorithm 2 is an effective method for a complete double knockout analysis in genomescale metabolic networks.

Using Algorithm 1, it is possible to compute the impact of specific multiple knockout sets containing 3 or more reactions.

By exploiting the information present in reaction coupling data (obtained by FCA), one can significantly decrease the number of candidates that need to be tested in double and multiple knockout simulations.

In the genomescale metabolic network reconstructions that were considered in this study, 110% of the possible double knockout sets have joint coupling effects. Thus, given a randomly chosen reaction pair, the probability is high that the combined effect of the double knockout (in terms of other blocked reactions) will be the same as for the two corresponding single knockouts.

However, in all these networks, there exists a small number of double knockouts showing synergistic effects, blocking 5 to 20 additional reactions in average. These double knockouts cannot be predicted from the single knockout/reaction coupling data alone.
Due to the algorithmic improvements, we are now able to perform full double gene or reaction knockout simulations in a few hours of computation time. Thus, whenever one is interested in understanding the robustness of a network to knockouts, one should take the opportunity and run such an in silico simulation, before starting other more time consuming and expensive experiments.
A prototype implementation of double knockout simulation is available at http://hoverboard.io/L4FC.
Declarations
Acknowledgements
The PhD work of Yaron Goldstein was supported by the Berlin Mathematical School and the Gerhard C. Starck Stiftung.
Authors’ Affiliations
References
 Bordbar A, Monk JM, King ZA, Palsson B. Constraintbased models predict metabolic and associated cellular functions. Nat Rev Genet. 2014; 15(2):107–120.PubMedView ArticleGoogle Scholar
 Lewis NE, Nagarajan H, Palsson B. Constraining the metabolic genotypephenotype relationship using a phylogeny of in silico methods. Nat Rev Microbiol. 2012; 10(4):291–305.PubMed CentralPubMedGoogle Scholar
 Varma A, Palsson BO. Predictions for oxygen supply control to enhance population stability of engineered production strains. Biotechnol Bioeng. 1994; 43(4):275–285.PubMedView ArticleGoogle Scholar
 Orth JD, Thiele I, Palsson BO. What is flux balance analysis?. Nat Biotechnol. 2010; 28(3):245–248.PubMed CentralPubMedView ArticleGoogle Scholar
 Burgard AP, Nikolaev EV, Schilling CH, Maranas CD. Flux coupling analysis of genomescale metabolic network reconstructions. Genome Res. 2004; 14(2):301–312.PubMed CentralPubMedView ArticleGoogle Scholar
 Larhlimi A, David L, Selbig J, Bockmayr A. F2C2: a fast tool for the computation of flux coupling in genomescale metabolic networks. BMC Bioinformatics. 2012; 13(1):57.PubMed CentralPubMedView ArticleGoogle Scholar
 Tomar N, De RK. Comparing methods for metabolic network analysis and an application to metabolic engineering. Gene. 2013; 521(1):1–14.PubMedView ArticleGoogle Scholar
 Zomorrodi AR, Suthers PF, Ranganathan S, Maranas CD. Mathematical optimization applications in metabolic networks. Metabolic Eng. 2012; 14(6):672–686.View ArticleGoogle Scholar
 Burgard AP, Pharkya P, Maranas CD. Optknock: a bilevel programming framework for identifying gene knockout strategies for microbial strain optimization. Biotechnol Bioeng. 2003; 84(6):647–657.PubMedView ArticleGoogle Scholar
 Tepper N, Shlomi T. Predicting metabolic engineering knockout strategies for chemical production: accounting for competing pathways. Bioinformatics. 2010; 26(4):536–543.PubMedView ArticleGoogle Scholar
 Patil KR, Rocha I, Förster J, Nielsen J. Evolutionary programming as a platform for in silico metabolic engineering. BMC Bioinformatics. 2005; 6(1):308.PubMed CentralPubMedView ArticleGoogle Scholar
 Lun DS, Rockwell G, Guido NJ, Baym M, Kelner JA, Berger B, Galagan JE, Church GM. Largescale identification of genetic design strategies using local search. Mol Syst Biol. 2009; 5(1): 296.PubMed CentralPubMedGoogle Scholar
 Rocha I, Maia P, Evangelista P, Vilaça P, Soares S, Pinto JP, Nielsen J, Patil KR, Ferreira EC, Rocha M. Optflux: an opensource software platform for in silico metabolic engineering. BMC Syst Biol. 2010; 4(1):45.PubMed CentralPubMedView ArticleGoogle Scholar
 Ohno S, Shimizu H, Furusawa C. FastPros screening of reaction knockout strategies for metabolic engineering. Bioinformatics. 2014; 30(7):981–987.PubMed CentralPubMedView ArticleGoogle Scholar
 Klamt S, Gilles ED. Minimal cut sets in biochemical reaction networks. Bioinformatics. 2004; 20(2):226–234.PubMedView ArticleGoogle Scholar
 Jungreuthmayer C, Nair G, Klamt S, Zanghellini J. Comparison and improvement of algorithms for computing minimal cut sets. BMC Bioinformatics. 2013; 14(1):318.PubMed CentralPubMedView ArticleGoogle Scholar
 von Kamp A, Klamt S. Enumeration of smallest intervention strategies in genomescale metabolic networks. PLOS Comput Biol. 2014; 10(1):1003378.View ArticleGoogle Scholar
 Goldstein YAB, Bockmayr A. A latticetheoretic framework for metabolic pathway analysis In: Gupta A, Henzinger T, editors. Computational Methods in Systems Biology. Lecture Notes in Computer Science. Vol. 8130,Berlin: Springer: 2013. p. 178–191.Google Scholar
 Zhao Y, Tamura T, Akutsu T, Vert JP. Flux balance impact degree: a new definition of impact degree to properly treat reversible reactions in metabolic networks. Bioinformatics. 2013; 29(17):2178–2185.PubMed CentralPubMedView ArticleGoogle Scholar
 Nogales J, Gudmundsson S, Thiele I. An in silico redesign of the metabolism in thermotoga maritima for increased biohydrogen production. Int J Hydrogen Energy. 2012; 37(17):12205–12218.View ArticleGoogle Scholar
 Suthers PF, Zomorrodi A, Maranas CD. Genomescale gene/reaction essentiality and synthetic lethality analysis. Mol Syst Biol. 2009; 5(1):301.PubMed CentralPubMedGoogle Scholar
 Reimers AC, Goldstein YAB, Bockmayr A. Qualitative and thermodynamic flux coupling analysis. Technical Report #1054, Matheon (March 2014). http://nbnresolving.de/urn:nbn:de:0296matheon12801
 Pfeiffer T, SánchezValdenebro I, Nuño JC, Montero F, Schuster S. METATOOL: for studying metabolic networks. Bioinformatics. 1999; 15:251–257.PubMedView ArticleGoogle Scholar
 Schellenberger J, Park JO, Conrad TM, Palsson BO. BiGG: a biochemical genetic and genomic knowledgebase of large scale metabolic reconstructions. BMC Bioinformatics. 2010; 11(213):213.PubMed CentralPubMedView ArticleGoogle Scholar
Copyright
This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/4.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly credited. The Creative Commons Public Domain Dedication waiver (http://creativecommons.org/publicdomain/zero/1.0/) applies to the data made available in this article, unless otherwise stated.