A Multiobjective GO based Approach to Protein Complex Detection

Similar documents
Towards Detecting Protein Complexes from Protein Interaction Data

Analysis and visualization of protein-protein interactions. Olga Vitek Assistant Professor Statistics and Computer Science

MTopGO: a tool for module identification in PPI Networks

2 GENE FUNCTIONAL SIMILARITY. 2.1 Semantic values of GO terms

An Efficient Algorithm for Protein-Protein Interaction Network Analysis to Discover Overlapping Functional Modules

Protein Complex Identification by Supervised Graph Clustering

MIPCE: An MI-based protein complex extraction technique

DESIGN OF OPTIMUM CROSS-SECTIONS FOR LOAD-CARRYING MEMBERS USING MULTI-OBJECTIVE EVOLUTIONARY ALGORITHMS

Functional Characterization and Topological Modularity of Molecular Interaction Networks

A Max-Flow Based Approach to the. Identification of Protein Complexes Using Protein Interaction and Microarray Data

Phylogenetic Analysis of Molecular Interaction Networks 1

EFFICIENT AND ROBUST PREDICTION ALGORITHMS FOR PROTEIN COMPLEXES USING GOMORY-HU TREES

Generalization of Dominance Relation-Based Replacement Rules for Memetic EMO Algorithms

Biological Networks: Comparison, Conservation, and Evolution via Relative Description Length By: Tamir Tuller & Benny Chor

Robust Community Detection Methods with Resolution Parameter for Complex Detection in Protein Protein Interaction Networks

Motif Prediction in Amino Acid Interaction Networks

PROTEINS are the building blocks of all the organisms and

A MAX-FLOW BASED APPROACH TO THE IDENTIFICATION OF PROTEIN COMPLEXES USING PROTEIN INTERACTION AND MICROARRAY DATA (EXTENDED ABSTRACT)

Predicting Protein Functions and Domain Interactions from Protein Interactions

Multi-objective approaches in a single-objective optimization environment

Introduction to Bioinformatics

Comparison of Protein-Protein Interaction Confidence Assignment Schemes

Robust Multi-Objective Optimization in High Dimensional Spaces

Protein function prediction via analysis of interactomes

Network by Weighted Graph Mining

Interaction Network Analysis

Protein complex detection using interaction reliability assessment and weighted clustering coefficient

Model Accuracy Measures

An overlapping module identification method in protein-protein interaction networks

Evidence for dynamically organized modularity in the yeast protein-protein interaction network

Graph Alignment and Biological Networks

Structure and Centrality of the Largest Fully Connected Cluster in Protein-Protein Interaction Networks

On Resolution Limit of the Modularity in Community Detection

CS224W: Social and Information Network Analysis Jure Leskovec, Stanford University

SI Appendix. 1. A detailed description of the five model systems

arxiv: v1 [q-bio.mn] 5 Feb 2008

Differential Modeling for Cancer Microarray Data

Phylogenetic Networks, Trees, and Clusters

Markov Random Field Models of Transient Interactions Between Protein Complexes in Yeast

Iteration Method for Predicting Essential Proteins Based on Orthology and Protein-protein Interaction Networks

Crossover Gene Selection by Spatial Location

Complex detection from PPI data using ensemble method


Computational methods for predicting protein-protein interactions

Data Mining Techniques

Effects of Gap Open and Gap Extension Penalties

Jure Leskovec Joint work with Jaewon Yang, Julian McAuley

PIBEA: Prospect Indicator Based Evolutionary Algorithm for Multiobjective Optimization Problems

A Non-Parametric Statistical Dominance Operator for Noisy Multiobjective Optimization

CISC 636 Computational Biology & Bioinformatics (Fall 2016)

Research Article Prediction of Protein-Protein Interactions Related to Protein Complexes Based on Protein Interaction Networks

Detecting temporal protein complexes from dynamic protein-protein interaction networks

Integration of functional genomics data

BIOINFORMATICS: An Introduction

CSC 4510 Machine Learning

Learning in Bayesian Networks

Bioinformatics I. CPBS 7711 October 29, 2015 Protein interaction networks. Debra Goldberg

Overview. Overview. Social networks. What is a network? 10/29/14. Bioinformatics I. Networks are everywhere! Introduction to Networks

Comparative Network Analysis

Genetic Algorithm for Solving the Economic Load Dispatch

Network alignment and querying

Network Biology: Understanding the cell s functional organization. Albert-László Barabási Zoltán N. Oltvai

CS4220: Knowledge Discovery Methods for Bioinformatics Unit 6: Protein-Complex Prediction. Wong Limsoon

Monotonicity Analysis, Evolutionary Multi-Objective Optimization, and Discovery of Design Principles

A Study on Non-Correspondence in Spread between Objective Space and Design Variable Space in Pareto Solutions

Bioinformatics: Network Analysis

Relation between Pareto-Optimal Fuzzy Rules and Pareto-Optimal Fuzzy Rule Sets

SUPPLEMENTAL DATA - 1. This file contains: Supplemental methods. Supplemental results. Supplemental tables S1 and S2. Supplemental figures S1 to S4

Modular organization of protein interaction networks

Cell biology traditionally identifies proteins based on their individual actions as catalysts, signaling

V 5 Robustness and Modularity

Cluster Analysis of Gene Expression Microarray Data. BIOL 495S/ CS 490B/ MATH 490B/ STAT 490B Introduction to Bioinformatics April 8, 2002

Computational Complexity and Genetic Algorithms

Haploid & diploid recombination and their evolutionary impact

Lecture 9 Evolutionary Computation: Genetic algorithms

An Improved Ant Colony Optimization Algorithm for Clustering Proteins in Protein Interaction Network

Modularity and Graph Algorithms

Networks & pathways. Hedi Peterson MTAT Bioinformatics

Chapter 16. Clustering Biological Data. Chandan K. Reddy Wayne State University Detroit, MI

Research Article A Topological Description of Hubs in Amino Acid Interaction Networks

Evolutionary Robotics

CS4220: Knowledge Discovery Methods for Bioinformatics Unit 6: Protein-Complex Prediction. Wong Limsoon

In order to compare the proteins of the phylogenomic matrix, we needed a similarity

Networks. Can (John) Bruce Keck Founda7on Biotechnology Lab Bioinforma7cs Resource

Biclustering Gene-Feature Matrices for Statistically Significant Dense Patterns

Multiobjective Optimization

Application of a GA/Bayesian Filter-Wrapper Feature Selection Method to Classification of Clinical Depression from Speech Data

The Role of Network Science in Biology and Medicine. Tiffany J. Callahan Computational Bioscience Program Hunter/Kahn Labs

[11] [3] [1], [12] HITS [4] [2] k-means[9] 2 [11] [3] [6], [13] 1 ( ) k n O(n k ) 1 2

Computational Genomics. Systems biology. Putting it together: Data integration using graphical models

Evolving more efficient digital circuits by allowing circuit layout evolution and multi-objective fitness

Identification of protein complexes from multi-relationship protein interaction networks

Analysis of Biological Networks: Network Robustness and Evolution

Bayesian Hierarchical Classification. Seminar on Predicting Structured Data Jukka Kohonen

Sorting Network Development Using Cellular Automata

Supplementary text for the section Interactions conserved across species: can one select the conserved interactions?

Construction of dynamic probabilistic protein interaction networks for protein complex identification

Learning latent structure in complex networks

Research Article A Novel Ranking Method Based on Subjective Probability Theory for Evolutionary Multiobjective Optimization

CS612 - Algorithms in Bioinformatics

Transcription:

Available online at www.sciencedirect.com Procedia Technology 4 (2012 ) 555 560 C3IT-2012 A Multiobjective GO based Approach to Protein Complex Detection Sumanta Ray a, Moumita De b, Anirban Mukhopadhyay c a,b,c Department of Computer Science and Engineering, University of Kalyani, Kalyani-741235, West Bengal, India Emails: a sumanta ray86@rediffmail.com, b moumita.de2013@gmail.com, c anirban@klyuniv.ac.in Abstract Considering the large number of proteins and the high complexity of the protein interaction network, decomposing it into smaller and manageable modules is a valuable step toward the analysis of biological processes and pathways. There are different types of graph clustering approaches available for modularization of PPI networks. But most of them seek to identify groups or clusters of proteins on the basis of the local density of the interaction graph in the network. So they find the denser region in the interaction graph, as the denser regions are expected to have the high chance to form a protein complex. In this article we present a novel Multiobjective Gene Ontology based Clustering (MGOC) in PPI network- to find protein complexes. We consider both graphical properties of PPI network as well as biological properties based on GO semantic similarity as objective functions. The proposed technique is demonstrated on yeast PPI data and the results are compared with that of some existing algorithms. c 2011 Published by Elsevier Ltd.Selection and/or peer-review under responsibility of C3IT Open access under CC BY-NC-ND license. Keywords: Protein-protein interaction, protein complex, multiobjective genetic algorithm, gene ontology. 1. Introduction A PPI network can be described as a complex system of proteins linked by interactions. The simplest representation takes the form of a mathematical graph consisting of nodes and edges [1]. Proteins are represented as nodes and the interaction of two proteins are represented as adjacent nodes connected by an edge. The component proteins within protein-protein interaction (PPI) networks are associated in two types of groupings: protein complexes and functional modules. Protein complexes are assemblages of proteins that interact with each other at a given time and place, forming a single multimolecular machine. Functional modules consist of proteins that participate in a particular cellular process while binding to each other at various times and places. For the sake of simplicity, in this paper we use protein complexes and functional modules as a same concept. The main objective of PPI network clustering is finding dense subgraphs that represent functional modules and protein complexes. Identification of functional modules in protein interaction networks is the first step in understanding the organization and dynamics of cell function. Previous PPI network clustering methods detect near-clique subgraphs in a network [2, 3, 4]. Clique is a complete graph where there is an edge between each pair of its vertices. A molecular complex detection 2212-0173 2012 Published by Elsevier Ltd. doi:10.1016/j.protcy.2012.05.088 Open access under CC BY-NC-ND license.

556 Sumanta Ray et al. / Procedia Technology 4 ( 2012 ) 555 560 (MCODE) algorithm is proposed in [5] that is an efficient approach for detecting densely-connected regions in the PPI networks. In this article the problem of finding protein complexes in a Protein-Protein Interaction Network (PPIN) is modeled as a Multiobjective Optimization problem. The searching is performed over a number of objectives and the final solution set contains a number of Pareto-optimal solutions (each solution represents a protein complex). Here we used the information content based semantic similarity measure between GO terms of each pair of proteins as an objective. Some of the graphical properties of protein interaction network are used as other objectives. The results were evaluated by comparing to other well-known MCODE [5] and ClusterONE [6] approaches. 2. Multi-objective Optimization using Genetic Algorithms The multi-objective optimization can be formally stated as follows [7]: Find the vector x = [x1, x 2,...,x n] T of the decision variables which will satisfy the m inequality constraints: g i (x) 0, i = 1, 2,...,m, the p equality constraints h i (x) = 0, i = 1, 2,...,p, and optimizes the vector function f (x) = [ f 1 (x), f 2 (x),..., f k (x)] T. The constraints define the feasible region F which contains all the admissible solutions. The vector x denotes an optimal solution in F. The concept of Pareto optimality comes handy in the domain of multiobjective optimization. A formal definition of Pareto optimality from the viewpoint of minimization problem may be given as follows: A decision vector x is called Pareto optimal if and only if there is no x that dominates x, i.e., there is no x such that i {1, 2,...,k}, f i (x) f i (x ) and i {1, 2,...,k}, f i (x) < f i (x ). In words, x is Pareto optimal if there exists no feasible vector x which causes a reduction on some criterion without a simultaneous increase in at least one other. In general, Pareto optimum usually admits a set of solutions called non-dominated solutions. There are different approaches to solving multi-objective optimization problems [8] e.g., aggregating, population based non-pareto and Pareto-based techniques. Here we use NSGA-II [9] as underlying multi-objective algorithm for finding protein complex. 3. GO-based Semantic Similarity Measure The Gene Ontology (GO) project [10] is a collaborative effort to provide consistent description of genes and gene products. GO provides a collection of well-defined biological terms, which are called GO terms. The GO terms are shared across different organisms. They comprise three categories as the most general concepts: biological processes, molecular functions and cellular components. The GO terms are structured by the relationships to each other, such as is-a and part-of. The measurement of semantic similarity between two concepts can be easily extended to measure the degree of similarity between terms in the GO structures. In Information Content based method the semantic similarity between two concepts can be measured based on the commonality of their information contents. The information content of the concept C is formulated by the negative log likelihood log p(c), where p(c) is the probability of encountering a concept. According to Lin [11] every object is considered to belong to a class of taxonomy. Similarity between two objects is the similarity between those two classes. In this article we use three different taxonomies i.e Biological Process, Molecullar Function, Cellular Component of the Lin [11] measure and use this measures as objective function for computing three different results. 4. Proposed Method In this section the multiojective GO based clustering (MGOC) algorithm in PPI network is described. 4.1. Chromosome Representation A protein complex is nothing but a subgraph of the whole protein protein interaction graph. Here a protein complex is encoded as a chromosome. So in the resulting population a chromosome of the type: n 1 n 2 n 3... n p represent a protein complex consisting of p number nodes or proteins. All nodes in the chromosome are not necessarily connected.

Sumanta Ray et al. / Procedia Technology 4 ( 2012 ) 555 560 557 Fig. 1. Example of outward interconnecting nodes of a chromosome: Black nodes represents chromosome and yellow nodes are outward interconnecting nodes to this chromosome. 4.2. Population Initialization Initially the whole network is broken in several numbers of biclusters. Biclustering is done by applying K-means clustering from both the dimensions of PPI matrix and taking intersections of the clusters formed in these two dimensions. Each bicluster represents a densely connected region in the network. We sort these biclusters on the basis of density and pick up first 50 biclusters and use these in the initial population. The next and subsequent populations are created using the genetic operator of multiobjective GA. 4.3. Representation of Objective Functions Here we use two types of objective functions: one is totally depended on the typical graph properties of protein interaction network and another is based on Gene Ontological annotations of proteins. 4.3.1. Graph Based Objective All graph theoretic approaches for finding protein complexes seek to identify dense subgraph by maximizing the density of each subgraph on the basis of local network topology. The density of a graph is the ratio of the number of edges present in a graph to the possible number of edges in a complete graph of the same size. As there are large number of interaction (or edges) between proteins (or nodes) in a protein complex (or subgraph) so the density of each complex (or subgraph) is generally very high. So using density as an objective function and maximizing it for individual subgraphs will yield much better and denser complexes. For choosing next objective we count the number of interconnecting nodes that are not present in the current cluster. For example in Fig 1 the chromosome is represented as black nodes and the interconnecting nodes of this chromosome (which are not present in the current chromosome) is shown in yellow colored nodes. This may be written as: N(C) = iɛc n i, where C is any cluster in G and n i is the number of nodes which are connected with node i in C, and are not present in C. Minimizing this will result clusters, which have lesser number of outward interaction partners and we get compact clusters. 4.3.2. Semantic Similarity Based Objective The semantic similarity measured between two GO terms can be directly converted to a measurement of the similarity between two proteins. Since a protein is annotated to multiple GO terms, several researchers [12] have defined the similarity between two proteins as the average similarity of the GO term cross pairs, which are associated with both interacting proteins. The package csbl.go is used for calculating similarity matrix S. Here we use the similarity measure proposed by Lin [11] to compute the similarity matrix. Now for calculating the fitness of a chromosome in our proposed multiobjective approach the average similarity of each pair of protein comprising the chromosome is computed. For example to compute the fitness of the chromosome: {n 1 n 2... n p } we compute a submatrix s with rows and columns comprising these nodes from the similarity matrix S. Now the fitness function may be written as: sim(s) = functionally similar proteins in same cluster, by maximizing this function. iɛ p jɛ p s(i, j) p. We can group the 4.4. Selection and Mutation The popularly used genetic operations are selection, crossover, and mutation. General crossover operation between two chromosomes results many disconnected subgraphs and produces a large number of

558 Sumanta Ray et al. / Procedia Technology 4 ( 2012 ) 555 560 Table 1. Summary of the PPI network data set used here Data Set #Proteins #Interactions Min. Degree Avg. Degree Max. Degree DIP 4669 21217 0 9.2305 241 Table 2. Network modularity comparison between the MCODE, ClusterONE and MGOC approaches MCODE ClustreONE MGOC bp MGOC cc MGOC mf Q Value -16572751-10742041 -819555-124669 -255601 isolated nodes. So crossover is not performed here and instead mutation is performed with high probability (mutation probability =0.9). The selection operation used here is the crowded binary tournament selection used in NSGA-II. If a chromosome is selected to be mutated then addition or deletion of nodes in the chromosome is performed in the following way: for a chromosome a random node is selected and either of the two tasks is performed with equal probability: Delete the node or add the nodes which, are direct neighbor of node n i and, are not included in the parent chromosome. The whole operation is performed five times to create new diversified chromosome from the parent chromosome. 5. Experimental Results We run the proposed algorithm MGOC on the PPI network of Saccharomyces Cerevisiae (yeast) dataset downloaded from the DIP [13]. Out of 5000 S.Cerevisiae proteins we use 4669 proteins due to the availability of their annotation data. Table 1 summarizes the PPI network. For comparison of the result of MGOC with other algorithms MCODE and ClusterONE the following parameters are used: For MCODE the basic parameters used are: Node Score Cuttoff=0.2, Maximum Depth=100, K-Score=2. For ClusterONE the basic parameters used are: Minimum Cluster Size=10, Minimum Density=0.3, Overlap Threshold=0.8. For MGOC the basic parameters are Population Size=50, Number of Generations=5, Mutation Probability=0.9. We compute the proposed MGOC algorithm based on each of the three orthogonal taxonomies or aspects that hold terms describing the Molecular Function (mf), Biological Process (bp) and Cellular Component (cc) for a gene product. The results are verified by biological and non-biological criteria [14, 15]. One of the non-biological or topological criteria of comparison is network modularity proposed by Garvin and Newman [16]. The network modularity is a metric for assessment of partitioning a network into clusters defined as, Q = i(e ii a 2 i ), where i is the index of cluster, e ii is the number of edges or interactions which have both ends located in the i th cluster, and a i is the number of interactions or edges which have exactly one end located in the i th cluster. In Table 2 we compare MCODE and ClusterONE with our proposed algorithm MGOC depending on the value of Q. It shows that network modularity of MGOC is higher than that of the other methods. For biological validation we match our clustering result with the known protein complexes consist of 491 complexes, downloaded from the site http://yeast-complexes.russelllab.org/. We build a Contingency Table with rows as protein complexes and columns as resulting clusters. So, the contingency table T is a n m matrix having n complexes and m resulting clusters, where row i corresponds to the i-th annotated complex, and column j to the j-th cluster. The value of a cell T i, j indicates the number of proteins found in common between complex i and cluster j. Some proteins belong to several complexes, and some proteins may be assigned to multiple clusters or not assigned to any cluster. Sensitivity, positive predictive value (PPV), and accuracy are classically used to measure the correspondence between the result of a classification and a reference. Now we compare the results with respect to these measures. 5.1. Sensitivity Sensitivity is the fraction of proteins of complex i found in predicted cluster j: Sn i, j = T i, j N i, where N i is the number of proteins belonging to complex i. A complex-wise sensitivity Sn coi may be defines as:

Sumanta Ray et al. / Procedia Technology 4 ( 2012 ) 555 560 559 Table 3. Summery of clustering result with respect to Senesitivity, PPV and Accuracy MCODE ClusterONE MGOC mf MGOC bp MGOC cc General Sensitivity 0.1168 0.2135 0.2490 0.2726 0.2321 General PPV 0.4922 0.4078 0.8186 0.8184 0.6891 Accuracy 0.2397 0.2951 0.4515 0.4711 0.4000 Table 4. The number of complexes covered by different algorithm MCODE ClusterONE MGOC mf MGOC bp MGOC cc Number Of Cluster 53 64 50 50 50 Matched Complex 197 163 301 308 266 Matched Cluster 42 61 50 50 50 Sn coi = max m j=1 Sn i, j. The General Sensitivity (S n ) is the weighted average of Sn coi over all complexes and ni=1 N defined as: S n = i Sn coi ni=1 N i. 5.2. Positive Predictive Value The positive predictive value is the proportion of members of predicted cluster j which belong to complex i, relative to the total number of members of this cluster assigned to all complexes: PPV i, j = T i, j ni=1 T i, j = T i, j T. j where T. j is the marginal sum of a column j. Cluster-wise positive predictive value PPV cl j represents the maximal fraction of proteins of cluster j found in the same complex: PPV cl j = max n i=1 PPV i, j. The General PPV(PPV) of a clustering result is the weighted average of clustering-wise-ppv(ppv cl j ) over all predicted clusters: PPV = mj=1 T. j PPV cl j mj=1 T. j. 5.3. Accuracy The Geometric Accuracy (Acc) represents a tradeoff between sensitivity and the positive predictive value and it is defined as: Acc = S n PPV. It is the geometrical mean of the S n and the PPV. The advantage of taking the geometric is that it yields a low score when either the S n or the PPV metric is low. High accuracy values thus require a high performance for both criteria. Table 3 shows the general sensitivity, PPV and accuracy of different algorithms including our proposed technique. From this table it is clear that our proposed algorithm MGOC shows much better result with respect to sensitivity and positive predictive value. Table 4 shows the number of protein complexes covered by different algorithms. First row represents the number of clusters which are identified by the corresponding methods or algorithm in the whole network. The second row represents the number of complexes covered by the corresponding algorithm. Here we say that a complex is matched against any one of the cluster, when at least one of the core protein in that complex is included in any one of the clusters. In Table 4 we see that MGOC identifies over 300 of such protein complexes which is much better than the MCODE or ClusterONE algorithm. The third row represent the number of clusters in which at least one of the core proteins belongs. In MCODE 11 clusters and in ClusterONE 3 clusters have no core proteins, but in MGOC we see that all clusters have at least one of the core proteins within it. 6. Conclusions In this article we present a Multiobjective GO based Genetic Algorithm for finding protein complexes in the protein-protein interaction network. Here some graphical properties of PPIN is used as objective functions. To incorporate the functional similarity we use the semantic similarity measure of GO terms between protein pairs as another objective function. The information content based semantic similarity measure proposed by Lin [11] is used. As a future work other semantic similarity measures can be used as objective functions.

560 Sumanta Ray et al. / Procedia Technology 4 ( 2012 ) 555 560 References [1] A.Wagner, How the global structure of protein interaction networks evolves, Proceedings of The Royal Society 270 (2004) 457 466. [2] B. Adamcsek, G. Palla, I. J. Farkas, I. Derenyi, T. Vicsek, Cfinder: Locating cliques and overlapping modules in biological networks, Bioinformatics 22 1021. [3] Q. Yang, S. Lonardi, A parallel edge-betweenness clustering tool for protein-protein interaction networks, Int. J. Data Min. Bioinformatics 1 (2007) 241 247. [4] L. Gao, P.-G. Sun, J. Song, Clustering algorithms for detecting functional modules in protein interaction networks, J. Bioinformatics and Computational Biology 7 (1) (2009) 217 242. [5] H. C. Bader G., An automated method for finding molecular complexes in large protein interaction networks, BMC Bioinformatics 4. [6] Nepusz.T, Yu.H, Paccanaro.A, Detecting overlapping protein complexes from protein-protein interaction networks., in preparation. [7] C. Coello, A comprehensive survey of evolutionary-based multiobjective optimization techniques, Knowledge and Information Systems 1 (3) (1999) 129 156. [8] K. Deb, Multi-objective Optimization Using Evolutionary Algorithms, John Wiley and Sons, Ltd, England, 2001. [9] K. Deb, A. Pratap, S. Agrawal, T. Meyarivan, A fast and elitist multiobjective genetic algorithm: NSGA-II, IEEE Transactions on Evolutionary Computation 6 (2002) 182 197. [10] The gene ontology (go) project in 2006., Nucleic Acids Research. [11] D. Lin, An information-theoretic definition of similarity, in: Proc. 15th International Conference on Machine Learning, Morgan Kaufmann Publishers Inc., 1998, pp. 296 304. [12] H.Wang, F.Azuaje, O.Bodenreider, J.Dopazo, Gene expression correlation and gene ontology-based similarity: an assessment of quantitative relationships, Proceedings of IEEE Symposium on Computational Intelligence in Bioinformatics and Computational Biology (2004) 25 31. [13] I. Xenarios, L. Salwinski, X. Duan, P. Higney, S. Kim, D.Eisenberg, DIP, the database of interacting proteins: a research tool for studying cellular networks of protein interaction, Nucleic Acids Research 30 (2002) 303 305. [14] S. Brohe, J.V.Helden, Evaluation of clustering algorithms for protein-protein interaction networks, BMC Bioinformatics. [15] V. Mirny, L. Spirin, Protein complexes and functional modules in molecular networks, Proc. Natl Acad. Sci 100(21). [16] M. Newman, M. Girvan., Finding and evaluating community structure in networks., Phys. Rev. E 69.