Predicting direct protein interactions from affinity purification mass spectrometry data
 Ethan DH Kim^{1},
 Ashish Sabharwal^{2},
 Adrian R Vetta^{3} and
 Mathieu Blanchette^{1}Email author
https://doi.org/10.1186/17487188534
© Kim et al; licensee BioMed Central Ltd. 2010
 Received: 18 February 2010
 Accepted: 29 October 2010
 Published: 29 October 2010
Abstract
Background
Affinity purification followed by mass spectrometry identification (APMS) is an increasingly popular approach to observe proteinprotein interactions (PPI) in vivo. One drawback of APMS, however, is that it is prone to detecting indirect interactions mixed with direct physical interactions. Therefore, the ability to distinguish direct interactions from indirect ones is of much interest.
Results
We first propose a simple probabilistic model for the interactions captured by APMS experiments, under which the problem of separating direct interactions from indirect ones is formulated. Then, given idealized quantitative APMS data, we study the problem of identifying the most likely set of direct interactions that produced the observed data. We address this challenging graph theoretical problem by first characterizing signatures that can identify weakly connected nodes as well as dense regions of the network. The rest of the direct PPI network is then inferred using a genetic algorithm.
Our algorithm shows good performance on both simulated and biological networks with very high sensitivity and specificity. Then the algorithm is used to predict direct interactions from a set of APMS PPI data from yeast, and its performance is measured against a highquality interaction dataset.
Conclusions
As the sensitivity of APMS pipeline improves, the fraction of indirect interactions detected will also increase, thereby making the ability to distinguish them even more desirable. Despite the simplicity of our model for indirect interactions, our method provides a good performance on the test networks.
Keywords
 Genetic Algorithm
 Candidate Solution
 Dense Region
 Monte Carlo Sampling
 Indirect Interaction
Background
Understanding the organization of proteinprotein interactions (PPIs) as a complex network is one of the main pursuits in proteomics today. With the help of highthroughput experimental techniques, a large amount of PPI data has recently become available, providing us with a rough picture of how proteins interact in biological systems. However, the interaction data from these highthroughput experiments suffer from low resolution as compared to data from lowthroughput technologies such as protein cocrystallization, and to make matters worse, they are prone to problems including relatively high error rates and protocolspecific biases. Therefore, inferring the direct, physical PPI network from highthroughput data remains a challenge in systems biology.
The leading technologies for identifying PPIs are Yeast 2Hybrid (Y2H) [1, 2] and Affinity Purification followed by Mass Spectrometry (APMS) [3–6]. Due to the ability to perform in vivo at biologically reasonable expression levels, as well as the ability to detect protein complexes with fewer falsepositives [6], APMS approaches have become increasingly popular, although their throughput is lower than Y2 H approaches. In an APMS experiment, a protein of interest (the bait) is tagged and expressed in vivo. The bait is then immunoprecipitated (IP), together with all of its interacting partners (the preys), and finally, preys are identified using mass spectrometry. For a more detailed overview of the technique, see [6, 7]. Like Y2 H and other highthroughput experimental methods, however, APMS suffers from experimental noise. A number of approaches have been proposed to separate true interactions from falsepositives. These approaches mostly focus on reducing falsepositives due to protein misidentification from MS data [8–10], on detecting contaminants [11], or a combination of both [7, 12–16]. These methods often make use of the guiltybyassociation principle, and quantify the confidence level of an interaction by considering alternative paths between two protein molecules. In this context, authors say that a true interaction between bait b and prey p is a true positive if, at some point in the set of cells considered, there exists a complex that contains both b and p. We note that as the sensitivity of the APMS methods improves and the stability of the complexes that can be detected decreases, the transience of detectable interactions will increase, to a point where, eventually, every protein may be shown to marginally interact with every other protein.
A key property of APMS approaches is that a significant number of the copurified prey proteins are in fact indirect interaction partners of the bait protein, in the sense that they do not interact physically and directly with the bait, but interact with it through a chain of physical interactions involving other proteins in the complex. Therefore, it is critical, when interpreting APMSderived PPI networks, to understand the meaning of the term "interaction". Although not designed to identify physical interactions, APMS experiments produce data that may allow separating direct physical interactions from indirect ones. This is the problem we consider in this paper: given the results of a set of APMS experiments, filtered for protein misidentifications and contaminants, how can we distinguish direct (physical) interactions from indirect interactions? Note that since the falsepositive filtering methods listed above consider indirect interactions as truepositives, they cannot be used to address this problem. Gordân et al. [17] study the related problem of distinguishing direct vs. indirect interactions between transcription factors (TF) and DNA. While the objective of their study is similar to ours, their method makes use of information specific to TFDNA interactions (e.g. TF binding data, motifs from protein binding microarrays), and thus is not immediately applicable to the problem on general PPI networks. In fact, to our knowledge, no existing approach seems directly applicable.
This paper is organized as follows. We first describe the mathematical modelling of an APMS experiment and introduce an algorithmic formulation of the problem. We then describe an overview of our method, which is based on a collection of graph theoretic approaches that succeeds at inferring a large fraction of the network nearly exactly, followed by a genetic algorithm that infers the remainder of the network. The accuracy of the proposed method is assessed using both biological and simulated PPI networks. Finally, we apply our algorithm to the prediction of direct interactions based on a large set of APMS PPI data in yeast [18]. Our work opens the way to a number of interesting and challenging problems, and the results obtained indicate that useful inferences can be made despite the simplicity of our modelling.
Results
Because the main contribution of this paper is methodological, we start by giving an overview of the approach developed before detailing the results obtained.
Throughout this work, we make the assumption that appropriate methods have been used to reduce as much as possible protein misidentifications and contaminants, in such a way that all interactions detected are either direct or indirect interactions. Our task is to separate the former from the latter. To avoid confusion, we note that falsepositives (resp. falsenegatives) henceforth refer to falsely detected (resp. undetected) direct interactions inferred by our algorithm.
Mathematical modelling of APMS data
We first describe a simple model of the APMS PPI data that shall be used throughout this paper. Although admittedly rather simplistic, our model has the benefit of allowing the formulation of a welldefined computational problem.
Although quantitative APMS remains at its infancy, prey abundance can be estimated fairly accurately using approaches such as the peptide count [19], spectral count [20], sequence coverage [21], and protein abundance index [22]. Combined with increasing accuracy and sensitivity of mass spectrometers, these methods are becoming more reliable. Throughout the discussions in this paper, we assume that this quantitative data is available to us.
 1.
All direct interactions (u, v) ∈ E_{ direct } survive with the uniform probability $\widehat{p}$, and fail independently with probability 1  $\widehat{p}$.
 2.
All possible direct interactions take place at the same time, irrespective of the presence of other interactions, and with the same frequency.
Although these assumptions are clearly unrealistic, they provide a useful starting point for separating direct interactions from indirect ones (see Discussion for possible relaxation of these assumptions). Despite its simplicity, our mathematical modelling of APMS does fit existing biological data reasonably well (see Model validation). We note that Asthana et al. [23] have proposed a probabilistic graph model that is similar to ours. However, their model measures the likelihood of a protein's membership in a protein complex, and thus is not applicable to our problem.
Problem formulation
A set of APMS experiments where all proteins have been tagged and used as baits yields an approximation of A(x, y) for all pairs of proteins (x, y), which can be transformed into an estimate M(x, y) of ${P}_{{G}_{direct}}(x,y)$ through appropriate normalization. We are thus interested in inferring G_{ direct } from M:
EXACT DIRECT INTERACTION GRAPH FROM CONNECTIVITY MATRIX (EDIGCOM)
Given: A connectivity matrix M_{ n × n }
Find: A graph G = (V, E) such that P_{ G } (u, v) = M(u, v) for each u, v ∈ V.
In a more realistic setting, the connectivity matrix M would not be observed precisely, and the EDIGCOM problem may not admit a solution. We are thus interested in an approximate, optimization version of the problem:
APPROXIMATE DIRECT INTERACTION GRAPH FROM CONNECTIVITY MATRIX (ADIGCOM)
Given: A connectivity matrix M_{ n× n } and a tolerance level 0 ≤ δ ≤ 1
Find: A graph G = (V, E) such that the number of pairs (u, v) ∈ V × V such that P_{ G } (u, v)  M(u, v) ≤ δ is maximized.
Note that although the computational complexity of the DIGCOM problems is currently unknown, the fact that simply verifying a candidate solution is #PComplete suggests that the problem may be hard and may not belong to $\mathcal{N}\mathcal{P}$  candidate solutions to problems in NP can, by definition, be verified in polynomial time, whereas #P is widely believed to require superpolynomial time computations. Related problems include network design problems that have been studied extensively in the computer networking community. For example, one related, but different, problem is to choose a minimal set of edges over a set of nodes so that the resulting network has at least the prescribed allpairs terminal reliability; various algorithms including branchandbound heuristics [27] and genetic algorithms [28, 29] have been proposed.
Algorithm overview
Our algorithm for the ADIGCOM problem has three main phases outlined here and detailed in Methods.
Phase I. We start by identifying, based on the connectivity matrix M, vertices from G_{ direct } with low degree, together with edges incident to them. As most PPI networks exhibit the properties of scalefree networks [30], this resolves the edges incident to a significant portion of the vertices (~75% in our networks; see below).
Phase II. At the other end of the spectrum, G_{ direct } contains densely clustered regions (cliques or quasicliques), possibly corresponding to protein complexes. We use a heuristic to detect these dense regions from the connectivity matrix M.
Phase III. To infer the remainder of the network, we use a genetic algorithm. This highly customized genetic algorithm makes use of the findings from the previous two steps in order to dramatically reduce the dimension of the problem space, and to guide the mating process between parent candidates to create good offspring solutions.
In what follows, we highlight the main theoretical results on which these three phases rely. Details are given in Methods and proofs in Appendix.
Ia. Finding cut edges
A cut edge in a graph G is an edge (u, v) whose removal would result in u and v belonging to two distinct connected components (e.g. edge (3,4) in Figure 2). The following theorem allows the identification of all cut edges based on the connectivity matrix P_{ G } .
Theorem 1. A pair of vertices u and v from V forms a cut edge in G if and only if the following two conditions hold.
(i) ${P}_{G}(u,v)=\widehat{p}$
(ii) V can be partitioned into V = V_{ u } ∪ V_{ v } , where V_{ u } = {x ∈ V : P_{ G } (x, u) ≥ P_{ G } (x, v)} and V_{ v } = {x ∈ V : P_{ G } (x, u) <P_{ G } (x, v)} , such that ∀s ∈ V_{ u } and ∀t ∈ V_{ v } , ${P}_{G}(s,t)={P}_{G}(s,u)\widehat{p}{P}_{G}(v,t)$.
The above theorem immediately provides an efficient algorithm, requiring time O(V^{2}), to test whether a pair of vertices forms a cut edge. Observe that removing a cut edge (u, v) from a connected graph allows us to decompose the graph into two connected components (subgraphs induced by V_{ u } and V_{ v } , respectively), and the probability of connectivity between every pair of vertices in V_{ u } (V_{ v } , resp.) remains the same after removing (u, v). Therefore, the submatrices that correspond to V_{ u } and V_{ v } can be treated as independent subproblems, and one can recursively detect cut edges in the remaining subproblems. Note that if the input graph is assumed to be a tree, such a recursive algorithm would identify the entire graph exactly. On the other hand, PPI networks are sparse in general, and contain many cut edges and degree1 vertices. As a result, this algorithm allows a significant simplification of our problem by identifying all cut edges.
Ib. Finding degree2 vertices
We now consider the problem of identifying degree2 vertices from the connectivity matrix M. After degree1 vertices, which are identified in the previous step, they constitute the next most frequent vertices in the biological networks we studied. While we do not have a full characterization of these vertices, the following theorem gives a set of necessary conditions.
Theorem 2. Let s be a degree2 vertex in G such that N(s) = {u, v}. Then, the following three conditions must hold.
(i) Low connectivity: for each t ∈ V, ${P}_{G}(s,t)<2\widehat{p}{\widehat{p}}^{2}$.
(ii) Neighborhood: for each t ∈ V  {s, u, v}, P_{ G } (s, t) <P_{ G } (s, u) = P_{ G } (s, v).
(iii) "Triangle" inequality: for each t ∈ V  {s, u, v}, P_{ G } (s, t) <max{P_{ G } (u, t), P_{ G } (v, t)}.
These necessary conditions allow us to rule out vertices that cannot be of degree 2, and give rise to a O(V^{2}) heuristic for predicting degree2 vertices (see Algorithm 1 in Methods). In practice, our studies have shown that vertices satisfying these conditions while having degree higher than two are extremely rare (see below).
II. Detecting densely connected regions
We now turn to the problem of finding densely connected regions in the network. These regions may correspond to protein complexes, where tagging any one of the members of the complex results in the identification of all other members of the complex with high probability. While correctly predicting the physical interactions within each complex is a difficult task, separating these dense regions from the remainder of the network is essential to improving the accuracy of the genetic algorithm (part III).
Based on the connectivity matrix M, our algorithm identifies (possibly overlapping) clusters of proteins of size at least k such that, for every pair u, v in each cluster, M(u, v) ≥ t_{ k } for some threshold t_{ k } . For appropriately chosen values of k and t_{ k } (see Methods), the set of clusters found corresponds to cliques in G_{ direct } with high accuracy (see below).
The dense regions discovered at this phase provide us (1) the set of edges within each dense region; and (2) sparse cuts between disjoint dense regions. The edge set within each cluster will be used in the initial candidates for the genetic algorithm, whereas the cuts defined by the clusters will be used as crossover points during the crossover operation in the genetic algorithm.
III. Cutbased genetic algorithm
To predict the remaining section of the network, we use a customized genetic algorithm that aims at finding an optimal solution to the ADIGCOM problem. We first devise a solution to a generalization of the ADIGCOM problem, and then show how the results of parts I and II of the algorithm are used to improve performance.
Genetic algorithms have been shown to be an effective family of heuristics for a wide variety of optimization problems [31], including network design under connectivity constraints [28, 29]. A genetic algorithm models a set of candidate solutions as individuals of a population. From this population, pairs of promising candidate solutions are mated, and their off spring solutions inherit properties of the parents with some random mutations. Over generations, this process of natural selection improves the fitness of the population.
The ADIGCOM problem is a hard optimization problem, because (i) the size of the search space is huge  ${2}^{\left(\begin{array}{l}n\\ 2\end{array}\right)}$ for a graph of size n, and (ii) there is no known polynomialtime algorithm to evaluate a proposed candidate solution (i.e. compute P_{ G } from G). For these reasons, a straightforward genetic algorithm implementation failed to produce satisfactory results (data not shown). Instead, we use a more sophisticated approach by making use of the results obtained in previous sections in order to reduce the search space and to guide the mating operations for more effective search. Details are given in Methods.
Model validation
In order to test our approach, we first sought to validate our model of APMS indirect interactions. To this end, we used one of the most comprehensive APMSbased networks published to date on yeast, obtained by Krogan et al. [18]. The dataset reports the Mascot score [32] and the number of peptides detected for each baitprey pair (peptide count). The complete set of interactions reported contains 2186 proteins and 5496 interactions (Krogan et al. Table S six); we call the resulting network G_{ KroganFull } . The authors identified a subset of these interactions as highconfidence, based on their Mascot scores (Krogan et al. Table S five). We call this set of highconfidence interactions G_{ KroganHigh } ; this network consists of 1210 proteins and 2357 interactions. We expect that G_{ KroganHigh } is relatively rich in direct interactions, whereas the complete set of interactions G_{ KroganFull } consists in part of indirect interactions.
Considering G_{ KroganHigh } as a direct interaction network, we simulated Monte Carlo sampling to estimate ${P}_{{G}_{KroganHigh}}$, using $\widehat{p}=0.5$ and 50,000 samples, which yields a 95% confidence interval of size at most 0.007 on each ${P}_{{G}_{KroganHigh}}(u,v)$ entry. Next, we normalized the peptide counts of the interactions in G_{ KroganFull } using protein lengths (See Methods). We then compared ${P}_{{G}_{KroganHigh}}$ to the normalized peptide counts of the interactions in G_{ KroganFull } . We expect that a significant fraction of lowconfidence interactions in G_{ KroganFull }  G_{ KroganHigh } are likely to be indirect interactions. If our model is correct, their peptide counts should then be correlated with the corresponding entries in ${P}_{{G}_{KroganHigh}}$. Indeed, the positive linear correlation between the predicted connectivity ${P}_{{G}_{KroganHigh}}$ and the observed normalized peptide counts is very significant (regression pvalue of 8.17 × 10^{11}, Student ttest; see Additional file 1). Furthermore, this correlation is strongest when $\widehat{p}\approx 0.5$, as compared to $\widehat{p}=0.3$ or 0.7, justifying the use of this value in our subsequent analyses.
Accuracy of the prediction algorithm
The ideal validation of the accuracy of our algorithm would involve (i) constructing a connectivity matrix M using actual quantitative APMS data; (ii) predict direct interactions based on M using our algorithm; and then (iii) comparing our predictions to experimentally generated direct interaction data. Yeast 2Hybrid (Y2H) experiments are less prone to detect indirect interactions than are APMS methods, and several largescale efforts have been reported [2, 33, 34]. Unfortunately, for a number of technical reasons, the overlap between APMS PPI networks and Y2H networks remains very small [35]. As a consequence, Y2 H data cannot be used directly to validate predictions made on APMS data. Instead, we had to rely on partiallysynthetic data set, where an actual network of highquality Y2 H interactions is assumed to form the direct interaction graph, and a connectivity matrix is generated from it using Monte Carlo sampling, under our model. Two sets of Y2 H interactions were used: (i) G_{ Y u } is the network constructed from the gold standard dataset of Yu et al. [35]. This network consists of 1090 proteins and 1318 interactions with high confidence of direct interactions; (ii) G_{ DIP } is the core, highquality, physical interaction network of yeast, available at DIP database, version 20090126CR [36], consisting of 1406 proteins and 1967 interactions. These biological networks were complemented with two artificial 1000vertices networks. The first was generated using the preferential attachment model (PAM) [30]. For the second, we used the duplication model (DM) [37], which, in contrast to the PAM, generates graphs containing several dense clusters. The resulting artificial "direct" interactions graphs are called G_{ PAM } and G_{ DM } and contain 1500 ~ 2000 interactions each. We then used the Monte Carlo sampling approach described above to estimate the connectivity matrices ${P}_{{G}_{Yu}},{P}_{{G}_{DIP}},{P}_{{G}_{PAM}}$, and ${P}_{{G}_{DM}}$. These will form the input to our inference algorithm, whose output will then be compared to the corresponding direct interaction graph. It is important to note that these input matrices are not perfectly accurate and may contain sampling errors. However, it is easy to bound the size of the errors with high probability and use it as a tolerance level within our algorithm. We also note that the results presented in this section only aim at evaluating the performance of the inference algorithm on input data that was generated exactly according to our probabilistic model. As such, the error rates reported may be considered as lower bounds for those on actual biological data. An assumptionfree evaluation in provided later in this section.
Identification of weakly connected vertices
Theorem 1 provides an efficient algorithm that guarantees the identification of all cut edges, provided that the given connectivity matrix is precise. We say that a vertex v is a 1cut vertex if all edges incident on v are cut edges. By applying Theorem 1 recursively to detect cut edges and decomposing the graph into two connected components, we can detect and remove all 1cut vertices from the input connectivity matrix.
Performance of detecting weakly connected vertices
(i) 1cut vertices  (ii) Degree 2 vertices  

Network  Total  real  pred.  FDR(%)  FNR(%)  real  pred.  FDR(%)  FNR(%)  Remaining 
Yu  1090  552  552  0  0  195  207  7.7  2.05  331 
DIP  1406  656  656  0  0  309  326  5.82  0.64  424 
PAM  1000  457  457  0  0  351  363  3.58  0.28  180 
DM  1000  323  323  0  0  117  126  11.9  5.12  551 
Algorithm 1 (see Methods) guarantees to efficiently identify all degree2 vertices (again, provided that the connectivity matrix is known), but may also incorrectly flag some higherdegree vertices. As seen in Table 1 (ii), nearly all degree2 vertices were identified, with a low falsediscovery rate ranging from 6 to 9%. Moreover, the falsepositives incorrectly detected as degree2 vertices indeed had small degrees, and their predicted neighbors were mostly correct (but incomplete) predictions. Flagging degree2 vertices reduces the problem size further by 15 to 36%.
After repeatedly detecting and removing 1cut vertices and degree2 vertices from the problem space, the edges adjacent to approximately 70% of the vertices are detected with very low error rate. The remaining vertices only constitute approximately 30% of the original network. We call this remaining subset the hard core of the connectivity matrix. Because it is more densely connected than the rest of the network, the topology of hard core is more difficult to reconstruct.
Running our algorithm on the PAM simulated data yields similar resolution and error rate as on the Y2 H networks. However, our DM network is found to be less amenable to these strategies, leaving 55% of vertices unresolved and resulting in an error rate approximately twice that seen for other networks. This is simply due to the fact that networks generated by the duplication model do not contain as many 1cut vertices or degree 2 vertices when compared to other networks, including the biological Y2 H networks.
Identification of dense regions
Performance of quasiclique predictions
Network  k= 7  k= 6  k= 5  

real  pred.  FD(%)  FN(%)  real  pred.  FD(%)  FN(%)  real  pred.  FD(%)  FN(%)  
Yu  42  54  22.22  0  66  104  36.53  0  146  308  55.19  5.48 
DIP  0  42  100  0  86  112  26.79  4.65  184  266  35.34  6.52 
PAM  0  31  100  0  0  45  100  0  0  96  100  0 
DM  254  346  28.32  2.36  194  267  29.21  2.57  488  718  34.96  4.30 
Cutbased genetic algorithm
Performance of genetic algorithm and overall algorithm
Network  (i) reduced network  (ii) overall network  

real  pred.  FDR(%)  FNR(%)  real  pred.  FDR(%)  FNR(%)  
Yu  563  552  43.65  44.76  1318  1390  14.96  10.31 
DIP  931  890  35.50  38.34  1967  2041  17.34  14.23 
PAM  473  421  49.88  55.39  1538  1462  16.14  20.28 
DM  1138  1295  43.39  35.58  1869  1804  32.81  35.15 
Comparison of our method to simple hillclimbing approach
Network  Real  Predicted  FDR(%)  FNR(%) 

(i) Hillclimbing  1318  2108  86.67  78.68 
(ii) Hillclimbing + weakly conn. nodes  1318  1517  43.57  35.05 
(iii) Our approach (GA)  1318  1390  14.96  10.31 
Running times of the algorithm
Network  (i) 1cut & degree 2 vertices (secs)  (ii) Quasiclique predictions  (iii) Genetic algorithm 

Yu  0:00:29  0:31:02  15:00:00 
DIP  0:00:41  0:48:14  15:00:00 
PAM  0:00:19  0:29:49  15:00:00 
DM  0:00:24  1:18:03  15:00:00 
Inferring direct interactions from APMS experimental data
In order to apply our algorithm to biological data from APMS experiments, we used the raw data reported by Krogan et al. [18] for the 2186 putative interactions of G_{ KroganFull } . We only considered the subnetwork of tagged proteins, and further focussed our efforts on the analysis of 77 proteins that are well separated in the taginduced subnetwork. Quantitative abundance estimates were derived from the peptide counts reported for each prey, and an experimentally derived connectivity matrix M was obtained after normalization (see Methods). Our full prediction algorithm was then run on the estimated connectivity matrix, resulting in a direct interaction graph prediction we call G_{ Kim } that consists of 164 interactions (See Additional File 2). The network G_{ Kim } was compared to G_{ KroganHigh } , the set of highconfidence interactions reported by Krogan et al., and to ${G}_{KroganHigh}^{Top}$, a subset of G_{ KroganHigh } consisting of the 164 (to compare against G_{ Kim } ) most confident interactions they reported.
Both G_{ KroganFull } and G_{ KroganHigh } overlap G_{ Kim } quite substantially. These three sets of predictions were then compared against a set of highquality binary interactions from G_{ Yu } . In Y2 H experiments, the interaction partners are separately screened using a genetic readout. Therefore, interactions from G_{ Y u } are believed to be direct, and thus used to test against the predictions from APMS data. On the other hand, these interactions may reflect only a subset of all direct interactions among the 77 proteins.
Discussion and conclusion
The approaches for determining baitprey abundance remain in their infancy, and to date, no largescale PPI networks have this type of quantitative data. As these approaches gain in accuracy, so will the results of our approach. Furthermore, as the sensitivity of APMS pipelines improves, the fraction of indirect interactions detected will also increase, thereby making the ability to distinguish them even more critical. In this paper, we lay the bases of modelling the indirect interactions in APMS experiments. We formulate the DIGCOM problem, which aims at distinguishing direct interactions from indirect ones, and provide a set of theoretical and heuristic approaches that are shown to be highly accurate on both biological PPI networks and simulated networks. Despite the unrealistic assumptions that should eventually be relaxed, our results show that the predicted set of interactions fits the experimental data reasonably well. In addition, applying our algorithms to a largescale APMS data set from Krogan et al. results in predictions that overlap Y2H data approximately 35% more often than the equivalent number of topscoring interactions reported by these authors.
The DIGCOM problems raise a number of challenging, yet fascinating computational and mathematical problems to investigate. Is the solution to the exact DIGCOM problem, if it exists, always unique? We suspect it is. What is the computational complexity of the exact and approximate DIGCOM problems?
We believe they are NPhard, and possibly not even in NP. Are there types of graph substructures, other than those discussed here, that can be unambiguously inferred from P_{ G } ? Are there special properties of PPI networks, other than the powerlaw degree distribution, of which an algorithm can take advantage to make more accurate predictions and/or provide approximation or probabilistic guarantees?
The modelling and algorithm proposed here is only a first step toward an accurate detection of direct interactions from APMS data. Several generalizations and improvements are worth investigating. First, the abundance of an interaction is not constant and needs to be modelled more accurately. Second, the strength of all physical interactions is nonuniform, and some interactions may be more prone to disruption by the affinity purification process than others. Given sufficient quantitative APMS data, one may study a generalization of the DIGCOM problem that aims at identifying not only the set of direct interactions, but also their individual strengths and abundances. While modelling these aspects is in theory possible, the amount and quality of experimental data required is currently unavailable, and the computational complexity of the resulting problems is likely to be daunting.
Perhaps a more significant limitation of our model is that all direct interactions are assumed to occur simultaneously, though it is clear that certain interactions are either mutually exclusive, or restricted to specific subcellular compartments or conditions. We are currently investigating approaches to decompose the observed network into a family of simultaneously occurring interactions in such a way that the observed interaction abundances are the sum of the direct and indirect interactions over all cell compartments and conditions. However, it is clear that complementary experimental data, such as comprehensive protein localization assays or cell cycle expression data, would be required to reduce the space of possible solutions in a biologically meaningful manner.
An additional assumption that may need to be relaxed is the independence of the edge failures, which may not hold in cases where the loss of an interaction between two proteins causes a significant destabilization of the larger complex they belong to. Unfortunately, in the presence of strong dependencies between edge failures, it becomes almost impossible to distinguish direct from indirect interactions. Nonetheless, it may be possible to at least identify complexes where such dependencies hold, by studying subsets of proteins for which the APMS data differs significantly from our model.
In conclusion, this paper opens the door to a number of fascinating modelling and algorithmic questions that will lead to important implications in systems biology. Any improvements in tackling these questions would take us one step further towards this goal.
Methods
In this section, we describe the algorithmic details of our approach to the DIGCOM problem.
Identification of weakly connected vertices
The algorithm to identify 1cut vertices is trivial given Theorem 1: recursively find edges satisfying conditions in Theorem 1, and decompose the input matrix into two independent subproblems. On the other hand, the conditions in Theorem 2 yields Algorithm 1, which predicts the set of degree 2 vertices as well as the edges adjacent to them. It is easy to see that the algorithm to identify 1cut vertices runs in time O(V^{4}) and Algorithm 1 runs in time O(V^{2}).
Note that the identification algorithm for 1cut vertices allows us to remove these vertices, i.e., the corresponding rows and columns in the input matrix. This is possible due to the fact that removing a cut edge does not change the connectivity between any two nodes on the same side of the cut. On the other hand, we cannot simply remove degree2 vertices without affecting the remaining entries in the matrix. Therefore, as shown in Algorithm 1, degree2 vertices and their incident edges will be marked as such in the solution, but are not removed from the input matrix.
Predict degree2 vertices
Input: Probability matrix M and vertex set V
Output: Degree 2 vertices V^{2} and their incident edges E^{2}
foreach vertex s ∈ V do
if s satisfies conditions in Theorem 2 then
V^{2}← V^{2} ∪ {s};
u, v ← the two vertices with M_{ s, u } = M_{ s, v } = max{M_{ s, t } : ∀t ∈ V  {s}};
E^{2}← E^{2} ∪ {(s, u), (s, v)};
end
end
Return V^{2} and E^{2}
Algorithm 1: Prediction of degree 2 vertices
Detect dense clusters in the network
Input: Probability matrix M, and minimum cluster size k
Output: Set of possible kcliques in G_{ direct } .
t ← CliqueConn(k) (the connectivity between two vertices in an mclique; see Appendix)
G_{ t } ← (V, E_{ t } ), where E_{ t } = {(u, v): u, v ∈ V and M(u, v) ≥ t}
foreach connected component S ⊆ V do
Find cliques of size k in S
end
Return cliques discovered.
Algorithm 2: Detecting dense clusters in the network
Identification of densely connected regions
Densely connected regions are identified using a cliquecover algorithm (see Algorithm 2). We note that the algorithm guarantees to identify all cliques of size k' ≥ k contained within G_{ direct } . However, sets of vertices that do not form a kclique may also be reported, provided that they are sufficiently connected among themselves, possibly via vertices outside the set. However, for sufficiently large values of k, we found this to be a very rare occurrence. While finding cliques in a graph is a computationally intensive task in general, the construction of G_{ t } for large values of k creates few small connected components and leaves the remaining vertices isolated. Therefore, in practice, Algorithm 2 can be implemented to run in a reasonable amount of time.
Cutbased genetic algorithm
The genetic algorithm aims at solving a generalization of the ADIGCOM. First, we allow each edge (u, v) in the network to survive with a nonuniform probability $\widehat{p}(u,v)$, instead of one probability $\widehat{p}$ over all edges. Secondly, we assume that we are given two sets of edges E_{ YES } and E_{ NO } that indicate the set of edges that are guaranteed to be in the solution, and guaranteed not to be in the solution, respectively. This will later allow us to factor in the outcome of the previous sections. Therefore, the edges whose presence remains to be determined are ${E}_{MAYBE}=\overline{{E}_{YES}\cup {E}_{NO}}$.
Encoding of candidate solutions
To represent a candidate solution, we first create a hash table that maps each putative edge in E_{ MAYBE } to an integer. Each candidate is then encoded as a list of integers (edges). Edges in E_{ YES } , which are part of all solutions, are not explicitly listed, in order to save space. Since the networks we consider are sparse (E = O(V)), such an encoding technique significantly reduces the space requirements.
Initial population
The initial population of candidates is generated using a preferential attachment model [30] using the following observations: (i) The average connectivity of vertex u, $avgCon(u)=\frac{1}{\leftV\right}{\displaystyle {\sum}_{v\in V\left\{u\right\}}M(u,v)}$ is strongly positively correlated with the degree of u in G_{ direct } ; (ii) the age of a vertex, measured by when the vertex was introduced to the graph, is positively correlated with the degree of the vertex. Therefore, during the generation of each candidate, we choose the next vertex to be added with probability proportional to its average connectivity. This results in a candidate solution where the degree of most vertices is likely to be close to the their true degree in G_{ direct } . Furthermore, in order to create candidates that are clustered similarly to the true direct interaction graph, we include the set of edges predicted by Algorithm 2 to each initial candidate.
Fitness function
The fitness of a candidate solution G, fitness(G) is obtained by first estimating the probability matrix P_{ G } using 500 Monte Carlo samples, and then counting the number of vertex pairs (u, v) whose estimated connectivity P_{ G } (u, v) is within the tolerance level δ, i.e., M(u, v) ± δ (See below for choosing the tolerance level δ ).
Crossover
While choosing a random cut as the crossover point is a reasonable strategy to construct a new pair of offsprings, our studies have shown that a planned strategy in choosing the crossover points results in better performance and less chance of premature convergence. In particular, if the crossover point is chosen at a dense cut in the parent networks, then the connectivity among vertices within each partition would be deteriorated significantly. This results in offsprings with much poorer fitness than their parents. On the other hand, if the parents are hybridized at a sparse cut, the connectivity among vertices within each partition are more localized. Therefore, crossover operations are best done by selecting sparse balanced cuts (V_{1} ≈ V_{2}). Finding sparse balanced cuts is a wellstudied problem in combinatorial optimization, for which various approximation algorithms exist [38, 39]. However, these algorithms assume that the graph itself, not the connectivity matrix M, is given as input. We therefore use a simple heuristic that avoids cutting through the dense regions of the network. To generate these sparse cuts, we contract each dense region identified in Algorithm 2 to a single vertex, and then generate weighted (by the number of vertices in each dense region) balanced partitioning of the vertices at random.
Mutation
In order to introduce variability to the population of candidates, a small number of edges (5 ~ 10%) are randomly inserted or deleted. Moreover, observe that the child network constructed as above may not remain connected. Aside from the random mutation, therefore, we employ a simple local search that greedily adds edges to keep the network connected.
Genetic algorithm parameter selection
The various parameters of the genetic algorithm were selected based on the resulting performance on the Yu et al. data set. Two main parameters that affect the performance significantly are the population size and the selection criteria. For selection criteria, we tested several different selection criteria by setting the probability of choosing a candidate as a parent. The best compromise between running time and accuracy was obtained using a population size of 500, and selection probability for a parent proportional to fitness(c_{ i } )  minFit, where minFit is the fitness of the worst candidate in the population (data not shown).
Restricting the solution space
While our genetic algorithm offers a plausible method for the ADIGCOM problem, one can reduce the size of the solution space, which typically results in faster convergence to better solutions, using the results in Theorem 1 and 2. First, recall that finding all cut edges decomposes the problem into independent subproblems on 2edgeconnected components. Second, the identification of degree2 vertices defines two sets of edges E_{ YES } and E_{ NO } that constitute all putative edges incident to the identified degree2 vertices. In other words, E_{ MAY BE } forms the subgraph of G induced by the set V^{3+} of vertices with degree ≥ 3. Furthermore, observe that the edges in E_{ Y ES } form parallel paths between vertices in V^{3+}. A classical result in network reliability (see Fact 2 in Appendix) suggests that these parallel paths can be merged into a single metaedge whose reliability can be efficiently computed. To be more formal, let $\mathcal{P}$ (u, v) = {P_{1}(u, v), P_{2}(u, v), ..., P_{ k } (u, v)} be the set of paths between u and v in E_{ Y ES } . These paths can then be replaced by a single edge (u, v) with its survival probability $\widehat{p}(u,v)=1{\Pi}_{i=\mathrm{1...}k}\left(1{\widehat{p}}^{{P}_{i}(u,v)}\right)$. By merging every set of parallel paths, we obtain a compact network over V^{3+} that efficiently encodes the edges in E_{ Y ES } . Since our genetic algorithm handles the case where the edge survival probability is nonuniform, this compact encoding results in substantial gains in running time for estimating the fitness of the candidates, as well as in time and space requirements for handling large population sizes. In our applications, this allows us to remove approximately 70 ~ 75% of the original set of vertices.
Randomized hillclimbing algorithm
where $D(u,v)=M(u,v){P}_{{G}^{i}}(u,v)$. If the selected pair u, v are connected by an edge in G^{ i } , but M(u, v) >${P}_{{G}^{i}}$ (u, v), then we remove (u, v) from G^{ i } . On the other hand, if u and v are not connected by an edge, but M(u, v) <${P}_{{G}^{i}}$ (u, v), then we add (u, v) to G^{ i } . We repeat this local optimization heuristic while making sure the candidate solution remains connected.
Choosing a tolerance level δ and handling numerical errors
 1.
When n = 20000 (computation of our input matrix M from test networks), we obtain a 95% confidence interval of size at most 2·δ = 2·0.007 = 0.014.
 2.
When n = 500 (computation of the connectivity matrix for each candidate solution in our genetic algorithm), the 95% confidence interval is of size at most 2·δ = 2·0.04 = 0.08.
With the chosen tolerance level δ, we modify our algorithm as appropriate each time we compare two connectivity probabilities. For example, in Theorem 1, the first condition P_{ G } (u, v) = $\widehat{p}$ is modified to${P}_{G}(u,v)\in \left[\widehat{p}\delta ,\widehat{p}+\delta \right]$; and in Theorem 2, we modify the first condition ${P}_{G}(s,t)<2\widehat{p}{\widehat{p}}^{2}$ to ${P}_{G}(s,t)<2\widehat{p}{\widehat{p}}^{2}+\delta $.
Generation of scalefree networks
In order to generate artificial scalefree networks, we used two generation models: the preferential attachment model, and the duplication model. In the preferential attachment model, we evaluated the degree distribution of the two biological networks (G_{ Y u } and G_{ DIP } ) and used the BarabásiAlbert algorithm to construct a scalefree network with attachment factor 1.5 (each iteration adds a new vertex with 1 ~ 2 edges attached to existing vertices). In the duplication model, at each iteration, we randomly pick a vertex to duplicate with probability proportional to its degree and randomly drop the duplicated edges with probability at 0.5 in order to t the degree distributions and sparsity of biological networks.
Calculation of connectivity matrix from peptide counts
where the parameters α, β are chosen so that the computed distribution of $\widehat{p}$ fits the simulated connectivity distribution of G_{ Y u } , using a χ^{2} test (α = 2.8921, β = 0.6318). In the cases where R(i, j) differ from R(j, i), we choose the average of the two entries to symmetrize the matrix.
Appendix
We start with two basic results that will prove useful when proving more complex theorems. Let G_{1} = (V_{1}, E_{1}) and G_{2} = (V_{2}, E_{2}) be two graphs. Then the following are true.
Fact 1. (Series composition) Suppose V_{1} ∩ V_{2} = {c}, and a new graph G is constructed by joining G_{1}and G_{2}at c. Then, for any s ∈ V_{1} {c} and for any$t\in {V}_{2}\left\{c\right\},{P}_{G}(s,t)={P}_{{G}_{1}}(s,c)\xb7{P}_{{G}_{2}}(c,t)$.
Fact 2. (Parallel composition) Suppose V_{1} ∩ V_{2} = {s, t}, and a new graph G is constructed by joining G_{1}and G_{2}at s and t (possibly leading to parallel edges between s and t). Then, ${P}_{G}(s,t)={P}_{{G}_{1}}(s,t)+{P}_{{G}_{2}}(s,t){P}_{{G}_{1}}(s,t)\xb7{P}_{{G}_{2}}(s,t)$.
Proof of Theorem 1
Proof. Necessity is trivial. For sufficiency, suppose the conditions (i) and (ii) hold, and (u, v) is not a cut edge. Then, to keep the graph connected, there must be an edge (s, t) ≠ (u, v) joining V_{ u } and V_{ v } . Since (s, t) is an edge, $p(s,t)\ge \widehat{p}$. However, by assumption, we have $p(s,t)=p(s,u)\widehat{p}p(v,t)<\widehat{p}$, which is a contradiction. □
Proofs of Theorem 2
Proof. We prove each condition separately.
Condition (i) Low connectivity
Since s has degree 2, it becomes disconnected from the rest of the graph with probability ${(1\widehat{p})}^{2}$. Thus, ${P}_{G}(s,t)\le 1{(1\widehat{p})}^{2}=2\widehat{p}{\widehat{p}}^{2}$. The equality can only hold if P_{ G } (s, u) = P_{ G } (s, v) = 1, which is impossible.
Condition (ii) Neighborhood
 (i)
{s, u, v}, {t}: s, u, v belong to the same component, and t belongs to another component.
 (ii)
{s, u}, {v}, {t}: s, u belong to the same component, and each of v and t belongs to distinct components.
 (iii)
{s, u}, {v, t}: s, u belong to the same component, and v, t belong to another component.
It is easy to see that the cases (i) and (ii) are nonempty, since (s, u), (s, v) ∈ E(G).
Finally, consider the set of subgraphs in $(s,t,\overline{u})$. Let H be a subgraph in this set. Since s and u belong to distinct components, (s, u) ∉ E(H), and thus (s, v) ∈ E(H) in order to have s and t connected. We then make the following operation on H to construct H': (1) remove (s, v) from H, and (2) insert (s, u). Then, H' now has s and u in the same component, and v and t in another component  and therefore, H' belongs the case (iii) of $(s,\overline{t},u)$. Furthermore, note that H and H' have the same number of edges. Therefore, there is a mapping from subgraphs in $(s,t,\overline{u})$ to subgraphs in case (iii) of $(s,\overline{t},u)$ with equal number of edges. Since the cases (i) and (ii) are nonempty, it follows that P_{ G } (s, t) <P_{ G } (s, u).
Condition (iii) "Triangle" inequality
Given the probabilistic graph G, we partition the subgraphs of G into four cases depending on the existence of the two edges (s, u) and (s, v).

(s, u), (s, v) ∈ E: occurs with probability ${\widehat{p}}^{2}$.

(s, u) ∈ E, (s, v) ∉ E: occurs with probability $\widehat{p}(1\widehat{p})$.

(s, u) ∉ E, (s, v) ∈ E: occurs with probability$\widehat{p}(1\widehat{p})$.

(s, u), (s, v) ∉ E: occurs with probability${(1\widehat{p})}^{2}$.
If ${P}_{G\left\{s\right\}}(u,t)>\widehat{p}{P}_{G\left\{S\right\}}(v,t)$, it follows that P_{ G } (u, t) > P_{ G } (s, t). Otherwise, ${P}_{G\left\{s\right\}}(u,t)\le \widehat{p}{P}_{G\left\{s\right\}}(v,t)$ implies $\widehat{p}{P}_{G\left\{s\right\}}(v,t)<{P}_{G\left\{s\right\}}(v,t)$, and it follows that P_{ G } (v, t) >P_{ G } (s, t). □
Connectivity in an n clique
Here we construct a formula to compute the connectivity of an nclique K_{ n } , defined as CliqueConn(n) in Algorithm 2.
First, we recall a classical result in graph enumeration.
Lemma 1
Now we show the formula for the case when $\widehat{p}=\frac{1}{2}$, which is the value we used for our analyses. The formula for other values of $\widehat{p}$ can be formulated using a similar proof.
Lemma 2
Declarations
Acknowledgements
We thank Mathieu LavalléeAdam, Benoit Coulombe and Javad Sadri for useful discussions, and three anonymous reviewers for their useful suggestions. This work was funded by NSERC grants to MB and AV, and by an NSERC PGSD to EK. AS was supported by IISI, Cornell University (AFOSR grant FA95500410151) and by NSF (Expeditions grant 0832782 and IIS grant 0514429).
Authors’ Affiliations
References
 Ito T, Tashiro K, Muta S, Ozawa R, Chiba T, Nishizawa M, Yamamoto K, Kuhara S, Sakaki Y: Toward a proteinprotein interaction map of the budding yeast: A comprehensive system to examine twohybrid interactions in all possible combinations between the yeast proteins. Proceedings of the National Academy of Sciences of the United States of America. 2000, 97 (3): 11431147. 10.1073/pnas.97.3.1143PubMedPubMed CentralView ArticleGoogle Scholar
 Uetz P, Giot L, Cagney G, Mansfield TA, Judson RS, Knight JR, Lockshon D, Narayan V, Srinivasan M, Pochart P, QureshiEmili A, Li Y, Godwin B, Conover D, Kalbfleisch T, Vijayadamodar G, Yang M, Johnston M, Fields S, Rothberg JM: A comprehensive analysis of proteinprotein interactions in Saccharomyces cerevisiae. Nature. 2000, 403 (6770): 623627. 10.1038/35001009PubMedView ArticleGoogle Scholar
 Rigaut G, Shevchenko A, Rutz B, Wilm M, Mann M, Seraphin B: A generic protein purification method for protein complex characterization and proteome exploration. Nat Biotech. 1999, 17 (10): 10301032. 10.1038/13732View ArticleGoogle Scholar
 Gavin A, Bösche M, Krause R, Grandi P, Marzioch M, Bauer A, Schultz J, Rick JM, Michon A, Cruciat C, Remor M, Höfert C, Schelder M, Brajenovic M, Ruffner H, Merino A, Klein K, Hudak M, Dickson D, Rudi T, Gnau V, Bauch A, Bastuck S, Huhse B, Leutwein C, Heurtier M, Copley RR, Edelmann A, Querfurth E, Rybin V, Drewes G, Raida M, Bouwmeester T, Bork P, Seraphin B, Kuster B, Neubauer G, SupertiFurga G: Functional organization of the yeast proteome by systematic analysis of protein complexes. Nature. 2002, 415 (6868): 141147. 10.1038/415141aPubMedView ArticleGoogle Scholar
 Ho Y, Gruhler A, Heilbut A, Bader GD, Moore L, Adams S, Millar A, Taylor P, Bennett K, Boutilier K, Yang L, Wolting C, Donaldson I, Schandorff S, Shewnarane J, Vo M, Taggart J, Goudreault M, Muskat B, Alfarano C, Dewar D, Lin Z, Michalickova K, Willems AR, Sassi H, Nielsen PA, Rasmussen KJ, Andersen JR, Johansen LE, Hansen LH, Jespersen H, Podtelejnikov A, Nielsen E, Crawford J, Poulsen V, Sørensen BD, Matthiesen J, Hendrickson RC, Gleeson F, Pawson T, Moran MF, Durocher D, Mann M, Hogue CWV, Figeys D, Tyers M: Systematic identification of protein complexes in Saccharomyces cerevisiae by mass spectrometry. Nature. 2002, 415 (6868): 180183. 10.1038/415180aPubMedView ArticleGoogle Scholar
 Coulombe B, Blanchette M, Jeronimo C: Steps towards a repertoire of comprehensive maps of human protein interaction networks: the Human Proteotheque Initiative (HuPI). Biochemistry and Cell Biology. 2008, 86 (2): 149156. 10.1139/O08006PubMedPubMed CentralView ArticleGoogle Scholar
 Cloutier P, AlKhoury R, LavalléeAdam M, Faubert D, Jiang H, Poitras C, Bouchard A, Forget D, Blanchette M, Coulombe B: Highresolution mapping of the protein interaction network for the human transcription machinery and affinity purification of RNA polymerase IIassociated complexes. Methods (San Diego, Calif.). 2009, 48 (4): 381386.View ArticleGoogle Scholar
 Zhang B, Park B, Karpinets T, Samatova N: From pulldown data to protein interaction networks and complexes with biological relevance. Bioinformatics. 2008, 24 (7): 97986. 10.1093/bioinformatics/btn036PubMedView ArticleGoogle Scholar
 Gilmore J, Auberry D, Sharp J, White A, Anderson K, Daly D: A Bayesian estimator of proteinprotein association probabilities. Bioinformatics. 2008, 24 (13): 15545. 10.1093/bioinformatics/btn238PubMedView ArticleGoogle Scholar
 Nesvizhskii A: Protein identification by tandem mass spectrometry and sequence database searching. Methods Mol Biol. 2007, 367: 87119.PubMedGoogle Scholar
 Breitkreutz A, Choi H, Sharom J, Boucher L, Neduva V, Larsen B, Breitkreutz B, Stark C, Liu G, Ahn J, DewarDarch D, Qin Z, Pawson T, Gingras A, Nesvizhskii AI, Tyers M: A global protein kinase and phosphatase interaction network in yeast. Science. 2010, 328 (5981): 10431046. 10.1126/science.1176495PubMedPubMed CentralView ArticleGoogle Scholar
 Saito R, Suzuki H, Hayashizaki Y: Interaction generality, a measurement to assess the reliability of a proteinprotein interaction. Nucl Acids Res. 2002, 30 (5): 11631168. 10.1093/nar/30.5.1163PubMedPubMed CentralView ArticleGoogle Scholar
 Saito R, Suzuki H, Hayashizaki Y: Construction of reliable proteinprotein interaction networks with a new interaction generality measure. Bioinformatics. 2003, 19 (6): 756763. 10.1093/bioinformatics/btg070PubMedView ArticleGoogle Scholar
 Pei P, Zhang A: A topological measurement for weighted protein interaction network. Computational Systems Bioinformatics Conference, 2005. Proceedings. 2005 IEEE. 2005, 268278.Google Scholar
 Chen J, Hsu W, Lee ML, Ng S: Increasing confidence of protein interactomes using network topological metrics. Bioinformatics. 2006, 22 (16): 19982004. 10.1093/bioinformatics/btl335PubMedView ArticleGoogle Scholar
 Collins SR, Kemmeren P, Zhao X, Greenblatt JF, Spencer F, Holstege FCP, Weissman JS, Krogan NJ: Toward a Comprehensive Atlas of the Physical Interactome of Saccharomyces cerevisiae. Molecular & Cellular Proteomics. 2007, 6 (3): 439450.View ArticleGoogle Scholar
 Gordân R, Hartemink AJ, Bulyk ML: Distinguishing direct versus indirect transcription factorDNA interactions. Genome Research. 2009, 19 (11): 20902100. 10.1101/gr.094144.109PubMedPubMed CentralView ArticleGoogle Scholar
 Krogan NJ, Cagney G, Yu H, Zhong G, Guo X, Ignatchenko A, Li J, Pu S, Datta N, Tikuisis AP, Punna T, PeregrínAlvarez JM, Shales M, Zhang X, Davey M, Robinson MD, Paccanaro A, Bray JE, Sheung A, Beattie B, Richards DP, Canadien V, Lalev A, Mena F, Wong P, Starostine A, Canete MM, Vlasblom J, Wu S, Orsi C, Collins SR, Chandran S, Haw R, Rilstone JJ, Gandi K, Thompson NJ, Musso G, Onge PS, Ghanny S, Lam MHY, Butland G, AltafUl AM, Kanaya S, Shilatifard A, O'Shea E, Weissman JS, Ingles CJ, Hughes TR, Parkinson J, Gerstein M, Wodak SJ, Emili A, Greenblatt JF: Global landscape of protein complexes in the yeast Saccharomyces cerevisiae. Nature. 2006, 440 (7084): 637643. 10.1038/nature04670PubMedView ArticleGoogle Scholar
 Gao J, Opiteck G, Friedrichs M, Dongre A, Hefta S: Changes in the protein expression of yeast as a function of carbon source. J Proteome Res. 2003, 2 (6): 643649. 10.1021/pr034038xPubMedView ArticleGoogle Scholar
 Liu H, Sadygov R, Yates : A model for random sampling and estimation of relative protein abundance in shotgun proteomics. Anal Chem. 2004, 76 (14): 41934201. 10.1021/ac0498563PubMedView ArticleGoogle Scholar
 Florens L, Washburn M, Raine J, Anthony R, Grainger M, Haynes J, Moch J, Muster N, Sacci J, Tabb D: A proteomic view of the Plasmodium falciparum life cycle. Nature. 2002, 419 (6906): 520526. 10.1038/nature01107PubMedView ArticleGoogle Scholar
 Ishihama Y, Oda Y, Tabata T, Sato T, Nagasu T, Rappsilber J, Mann M: Exponentially modified protein abundance index (emPAI) for estimation of absolute protein amount in proteomics by the number of sequenced peptides per protein. Mol Cell Proteomics. 2005, 4 (9): 12651272. 10.1074/mcp.M500061MCP200PubMedView ArticleGoogle Scholar
 Asthana S: Predicting Protein Complex Membership Using Probabilistic Network Reliability. Genome Research. 2004, 14 (6): 11701175. 10.1101/gr.2203804PubMedPubMed CentralView ArticleGoogle Scholar
 Valiant LG: The Complexity of Enumeration and Reliability Problems. SIAM Journal on Computing. 1979, 8 (3): 410421. 10.1137/0208032View ArticleGoogle Scholar
 Colbourn CJ: The Combinatorics of Network Reliability. 1987, Oxford University Press, Inc,Google Scholar
 Provan JS, Ball MO: The Complexity of Counting Cuts and of Computing the Probability that a Graph is Connected. SIAM Journal on Computing. 1983, 12 (4): 777788. 10.1137/0212053View ArticleGoogle Scholar
 Jan R, Hwang F, Chen S: Topological optimization of a communication network subject to a reliability constraint. Reliability, IEEE Transactions on. 1993, 42: 6370. 10.1109/24.210272View ArticleGoogle Scholar
 Dengiz B, Altiparmak F, Smith A: Efficient optimization of allterminal reliable networks, using an evolutionary approach. Reliability, IEEE Transactions on. 1997, 46: 1826. 10.1109/24.589921View ArticleGoogle Scholar
 Dengiz B, Altiparmak F, Smith A: Local search genetic algorithm for optimal design of reliable networks. Evolutionary Computation, IEEE Transactions on. 1997, 1 (3): 179188. 10.1109/4235.661548View ArticleGoogle Scholar
 Barabasi AL, Albert R: Emergence of scaling in random networks. Science. 1999, 286 (5439): 509512. 10.1126/science.286.5439.509PubMedView ArticleGoogle Scholar
 Goldberg DE: Genetic Algorithms in Search, Optimization, and Machine Learning. 1989, AddisonWesley Professional,Google Scholar
 Perkins DN, Pappin DJC, Creasy DM, Cottrell JS: Probabilitybased protein identification by searching sequence databases using mass spectrometry data. Electrophoresis. 1999, 20 (18): 35513567. 10.1002/(SICI)15222683(19991201)20:18<3551::AIDELPS3551>3.0.CO;22PubMedView ArticleGoogle Scholar
 FromontRacine M, Rain J, Legrain P: Toward a functional analysis of the yeast genome through exhaustive twohybrid screens. Nat Genet. 1997, 16 (3): 277282. 10.1038/ng0797277PubMedView ArticleGoogle Scholar
 Ito T, Chiba T, Ozawa R, Yoshida M, Hattori M, Sakaki Y: A comprehensive twohybrid analysis to explore the yeast protein interactome. Proceedings of the National Academy of Sciences of the United States of America. 2001, 98 (8): 45694574. 10.1073/pnas.061034498PubMedPubMed CentralView ArticleGoogle Scholar
 Yu H, Braun P, Yildirim MA, Lemmens I, Venkatesan K, Sahalie J, HirozaneKishikawa T, Gebreab F, Li N, Simonis N, Hao T, Rual J, Dricot A, Vazquez A, Murray RR, Simon C, Tardivo L, Tam S, Svrzikapa N, Fan C, de Smet A, Motyl A, Hudson ME, Park J, Xin X, Cusick ME, Moore T, Boone C, Snyder M, Roth FP, Barabasi A, Tavernier J, Hill DE, Vidal M: HighQuality Binary Protein Interaction Map of the Yeast Interactome Network. Science. 2008, 322 (5898): 104110. 10.1126/science.1158684PubMedPubMed CentralView ArticleGoogle Scholar
 Xenarios I, Salwínski L, Duan XJ, Higney P, Kim SM, Eisenberg D: DIP, the Database of Interacting Proteins: a research tool for studying cellular networks of protein interactions. Nucleic Acids Res. 2002, 30: 303305. 10.1093/nar/30.1.303PubMedPubMed CentralView ArticleGoogle Scholar
 Bhan A, Galas D, Dewey T: A duplication growth model of gene expression networks. Bioinformatics. 2002, 18: 14861493. 10.1093/bioinformatics/18.11.1486PubMedView ArticleGoogle Scholar
 Leighton T, Rao S: Multicommodity maxflow mincut theorems and their use in designing approximation algorithms. Journal of the ACM. 1999, 48: 787832. 10.1145/331524.331526View ArticleGoogle Scholar
 Vazirani V: Approximation algorithms. 2004, Springer,Google Scholar
 Gilbert E: Enumeration of labeled graphs. Canad J Math. 1956, 8: 405411.View ArticleGoogle Scholar
 Gross J, Yellen J: Handbook of Graph Theory (Discrete Mathematics and Its Applications). 2003, CRC,Google Scholar
Copyright
This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.