13
© Springer International Publishing Switzerland 2015 H. Handa et al. (eds.), Proc. of the 18th Asia Pacific Symp. on Intell. & Evol. Systems – Vol. 1, 311 Proceedings in Adaptation, Learning and Optimization 1, DOI: 10.1007/978-3-319-13359-1_25 MA-Net: A Reliable Memetic Algorithm for Community Detection by Modularity Optimization Leila Moslemi Naeni 1,2 , Regina Berretta 1,2 , and Pablo Moscato 1,2 1 The Priority Research Centre in Bioinformatics, Biomarker Discovery and Information-based Medicine, Hunter Medical Research Institute, Australia 2 School of Electrical Engineering and Computer Science, The University of Newcastle, Australia [email protected], {Regina.Berreta,Pablo.Moscato}@newcastle.edu.au Abstract. The information that can be transformed in knowledge from data in challenging real-world problems follows the accelerated rate of the advance- ment of technology in many different fields from biology to sociology. Com- plex networks are a useful representation of many problems in these domains One of the most important and challenging problems in network analysis lies in detecting community structures. This area of algorithmic research has attract- ed great attention due to its possible application in many fields. In this study we propose the MA-Net, memetic algorithm to detect communities in network by optimizing modularity value which is fast and reliable in the sense that it con- sistently produces sound solutions. Experiments using well-known real-world benchmark networks indicate that in comparison with other state-of-the-art al- gorithms, MA-Net has an outstanding performance on detecting communities. Keywords: community detection, modularity, memetic algorithm. 1 Introduction A variety of real-world complex systems in the fields of biology, sociology and phys- ics can all be represented as complex networks. Patterns of connections or interactions between elements of a given system can be represented as a network, which in its simplest form, can mathematically be modelled as an undirected graph. In a graph representation, the components of the network are typically encoded as nodes and their interactions are represented as edges. For instance, chemical reactions between molecules and proteins in the cell [1-3], hyperlinks between webpages [4, 5], physical connection between neurons [6-8] in the brain, and even consumer behavior models [9] all can be represented as graphs. An underlying hypothesis of these studies is that the pattern of interactions and the structure of a graph greatly affect the behavior of the associated system. One of the important and challenging problems in graph analysis lies in finding groups hidden in a graph, which is generically called the community detection prob- lem. While there is no universally agreed definition for a community [10], Girvan and

[Proceedings in Adaptation, Learning and Optimization] Proceedings of the 18th Asia Pacific Symposium on Intelligent and Evolutionary Systems, Volume 1 Volume 1 || MA-Net: A Reliable

Embed Size (px)

Citation preview

Page 1: [Proceedings in Adaptation, Learning and Optimization] Proceedings of the 18th Asia Pacific Symposium on Intelligent and Evolutionary Systems, Volume 1 Volume 1 || MA-Net: A Reliable

© Springer International Publishing Switzerland 2015 H. Handa et al. (eds.), Proc. of the 18th Asia Pacific Symp. on Intell. & Evol. Systems – Vol. 1,

311

Proceedings in Adaptation, Learning and Optimization 1, DOI: 10.1007/978-3-319-13359-1_25

MA-Net: A Reliable Memetic Algorithm for Community Detection by Modularity Optimization

Leila Moslemi Naeni1,2, Regina Berretta1,2, and Pablo Moscato1,2

1 The Priority Research Centre in Bioinformatics, Biomarker Discovery and Information-based Medicine, Hunter Medical Research Institute, Australia

2 School of Electrical Engineering and Computer Science, The University of Newcastle, Australia

[email protected], {Regina.Berreta,Pablo.Moscato}@newcastle.edu.au

Abstract. The information that can be transformed in knowledge from data in challenging real-world problems follows the accelerated rate of the advance-ment of technology in many different fields from biology to sociology. Com-plex networks are a useful representation of many problems in these domains One of the most important and challenging problems in network analysis lies in detecting community structures. This area of algorithmic research has attract-ed great attention due to its possible application in many fields. In this study we propose the MA-Net, memetic algorithm to detect communities in network by optimizing modularity value which is fast and reliable in the sense that it con-sistently produces sound solutions. Experiments using well-known real-world benchmark networks indicate that in comparison with other state-of-the-art al-gorithms, MA-Net has an outstanding performance on detecting communities.

Keywords: community detection, modularity, memetic algorithm.

1 Introduction

A variety of real-world complex systems in the fields of biology, sociology and phys-ics can all be represented as complex networks. Patterns of connections or interactions between elements of a given system can be represented as a network, which in its simplest form, can mathematically be modelled as an undirected graph. In a graph representation, the components of the network are typically encoded as nodes and their interactions are represented as edges. For instance, chemical reactions between molecules and proteins in the cell [1-3], hyperlinks between webpages [4, 5], physical connection between neurons [6-8] in the brain, and even consumer behavior models [9] all can be represented as graphs. An underlying hypothesis of these studies is that the pattern of interactions and the structure of a graph greatly affect the behavior of the associated system.

One of the important and challenging problems in graph analysis lies in finding groups hidden in a graph, which is generically called the community detection prob-lem. While there is no universally agreed definition for a community [10], Girvan and

Page 2: [Proceedings in Adaptation, Learning and Optimization] Proceedings of the 18th Asia Pacific Symposium on Intelligent and Evolutionary Systems, Volume 1 Volume 1 || MA-Net: A Reliable

312 L.M. Naeni, R. Berretta, and P. Moscato

Newman [11] defined communities as groups of vertices, where the connections are dense within the group, but the connections are sparse between the groups (See Fig.1). With this definition, the community detection problem can be formalised as an optimization problem in undirected graphs, however, due to the huge number of pos-sible ways for partitioning the set of vertices of a graph, even when the graph is small, the community detection problem, like many other clustering problems defined in graphs, naturally lead to formulations of the problems which give rise to NP-hard computational problems [12].

Fig. 1. A small network with three communities that have highly intra-group interactions and sparse inter-group interactions

In order to identify a good community structure in a network, many outstanding community detection algorithms have been proposed following different approaches during the last decade (see a recent comprehensive review in [13]). Optimization-based algorithms are among the most popular methods and the modularity function that was introduced by Newman and Girvan [14] has played a great role in optimiza-tion algorithms. Modularity is a quality measure that compares the number of edges in a detected community with the number of edges that are expected to be observed in a random graph. Therefore, higher levels of modularity indicate a greater difference between the detected partition and a random graph, thus modularity optimization acts as a proxy for detecting a better community structure. In this manner, the community detection problem can be considered as a combinatorial optimization problem with the objective function of maximizing the modularity. In a given graph = ( , ) with the adjacency matrix A, the modularity can be written as follows:

= ∑ − , (1)

where, is the total number of edges in the graph and the summation runs over the communities of the partition; and stands for the number of edges inside the com-munity . The summation of degrees of all vertices in the community is denoted by

. Instead of running modularity equation over communities, it can be reformulated to run over all pairs of nodes. Modularity function can easily be modified to measure the quality of partitions in weighted graphs [15]. It has been proven that modularity optimization gives rise to decision problems which are NP-complete [16].

Page 3: [Proceedings in Adaptation, Learning and Optimization] Proceedings of the 18th Asia Pacific Symposium on Intelligent and Evolutionary Systems, Volume 1 Volume 1 || MA-Net: A Reliable

MA-Net: A Reliable Memetic Algorithm for Community Detection 313

Although some exact algorithms have also been proposed to solve the modularity optimization problem in small size networks by using column generation algorithms [17, 18], heuristic algorithms are always in need to find good solutions in a reasonable time, particularly in large-scale networks. Many different heuristic algorithms have been proposed for modularity optimization with different approaches, such as label propagation algorithms (LPA) [19] and agglomerative hierarchical clustering [20-24] that iteratively join pairs of nodes to increase the level of modularity. To enhance the performance of heuristic algorithms a variety of metaheuristic algorithms have been proposed to detect communities, for instance, simulated annealing [25, 26], conforma-tional space annealing [27], genetic algorithm [28-30] and memetic algorithm [31-34]. To reduce the running time of the algorithm for large-scale networks some parallel metaheuristics have been proposed [35-37].

While modularity is the most popular objective function for community detection, there are some proven limitations in detecting communities by optimizing modularity [38, 39]. For instance, modularity optimization has a tendency to merge small clusters even when their individual size is small in comparison with the whole network. Moreover, the number of local maxima increases dramatically when the size of the network grows, thus it is easy to get trapped in a local optimal solution. Some various objective functions have been proposed to overcome modularity limitations. For in-stance, modularity density [40], community score and community fitness [41]. In addi-tion, a few multi-objective algorithms have been proposed to optimize more than a single objective function rather than only optimizing the modularity[42].

In this study we develop a reliable memetic algorithm, MA-Net, to optimize modu-larity and to detect community structure of the given network. We compare our re-sults with state-of-the-art algorithms. As a future research direction, we aim to extend the proposed algorithm to a multi-objective optimization algorithm.

2 Proposed Algorithm

The proposed algorithm is designed in the framework of Memetic Algorithms (MA). We have taken this approach due to proven successful results and its effectiveness to address many NP-hard combinatorial optimization problems [43]. The modularity function can then be used to evaluate the quality of the communities. Thus, we have chosen it as an objective function for the first implementation of MA-Net, and to al-low us to compare the performance of MA-Net against existing state-of-the-art algo-rithms. Algorithm 1 shows the main framework of our proposed MA-Net. A graph is the main input of the algorithm. In MA-Net, to facilitate and speed up the computa-tions we use the adjacency list which uses less memory compared to the adjacency matrix. We will describe the initialize_population procedure, genetic operators (mod-ularity based recombination and mutation), local search strategy and up-date_population procedure in the following sections.

Page 4: [Proceedings in Adaptation, Learning and Optimization] Proceedings of the 18th Asia Pacific Symposium on Intelligent and Evolutionary Systems, Volume 1 Volume 1 || MA-Net: A Reliable

314 L.M. Naeni, R. Berretta, and P. Moscato

2.1 Representation and Initialization

To represent a partition of a given graph with nodes, we use string-coding rep-resentation as = [ , , … , ]. Here, is an integer number, shows the commu-nity label, and refers to the community that node belongs to. So by having k com-munities in partition P, can be any integer number between 1 and (i.e. 1 ≤≤ ). Obviously, nodes having the same community label are considered in the same community. A simple example of string-coding representation is illustrated in Fig. 2.

Fig. 2. Example of the solution representation structure. Left: a graph of 10 nodes and parti-tioned in three communities shown by different colors. Right: the string coding represents this partition.

The initialize_population procedure generates the initial population. We first as-sign a random community label to each node. The random label is an integer number between 1 and the total number of nodes, therefore there is no previous assumption

Algorithm 1. MA-Net framework Input: Graph = ( , );

:population size;

:acceptable number of generation without improvement; : mutation probability

Result: ∗: A partition of the graph vertices that aims to achieve maximum modularity:

1: = , , … , ← _ ( , )

2: repeat 3: ← _ _ ( ) 4: ← _ ( , ) 5: ← _ ℎ( ) 6: ← _ ( ) 7: ∗ ← fittest member of 8: until _ ( , ) 9: return ∗

node 1 2 3 4 5 6 7 8 9 10

string [1, 1, 1, 2, 1, 2, 3, 3, 3, 2 ]

Page 5: [Proceedings in Adaptation, Learning and Optimization] Proceedings of the 18th Asia Pacific Symposium on Intelligent and Evolutionary Systems, Volume 1 Volume 1 || MA-Net: A Reliable

MA-Net: A Reliable Memetic Algorithm for Community Detection 315

for the number of the communities. Ours is an unsupervised algorithm and it aims at discovering the best number of communities for the graph to maximize modularity. These random solutions are of very low quality as even pairs unconnected nodes can be assigned to the same community. In the second step, to speed up the convergence of the algorithm, we improve the quality of the solution with another procedure. For each solution, we generate a random sequence { , , … , } of nodes then for each node in the sequence, move the node to one of its neighbors’ community that results in the greatest improvement in the modularity score. We repeat this operation for all solutions of the initial population. To reduce the computational cost of the im-provement procedure, we calculate ∆ by moving one node into one of its neigh-bors’ community [22]. The improvement procedure avoids unnecessary communities by considering only connected neighbors in moving of nodes. This heuristic im-provement procedure is easy to implement and very effective to improve the quality of the initial population.

2.2 Genetic Operators

MA-Net explores the search space by two specially designed genetic operators: modularity-based recombination and an adaptive mutation operator. These operators play important roles, working together, in preventing the algorithm to getting trapped into a local optimal solution and exploring the configuration space.

Modularity-Based Recombination Operator The recombination operator generates an offspring that inherits some characteristic from its two parents, therefore it plays an important role in the global search of the solution space [43]. Traditional recombination operators, including uniform crosso-ver, one-point and two-point crossover can hardly convey community structure of the parents to the offspring and seem less suitable for this case. We propose a modularity-based recombination operator which is an efficient operator specifically designed for the community detection problem by which descendants can inherit useful communi-ties of their parents. The main idea of this operator is to take the communities as the genetic material and try to preserve the best communities of parents for the offspring. The modularity-based recombination procedure is described next.

Firstly, two random members of the population are selected as parents. Since we can safely assume that all members of the population are of a relatively good quality (after the improvement step of the population initialization procedure), a randomly selection strategy could work well in maintaining the population diversity. Let and

be the parents and and represent the number of communities in each parent, respectively. Then, we sort ( + ) communities in the list according to their fit-ness. According to the modularity function (equation 1), the solution fitness is the total sum of the modularity of all communities in the partition. Therefore, we have already computed the fitness of each community from the fitness of the solution. Next, we choose the fittest community from list and form a same community in the offspring. Then for the second good community in , we try to form a similar com-munity in the offspring with the nodes that are not assigned to any community before.

Page 6: [Proceedings in Adaptation, Learning and Optimization] Proceedings of the 18th Asia Pacific Symposium on Intelligent and Evolutionary Systems, Volume 1 Volume 1 || MA-Net: A Reliable

316 L.M. Naeni, R. Berretta, and P. Moscato

We repeat this procedure till all nodes in offspring solution have been assigned to a community.

Fig. 3 illustrates the modularity-based crossover procedure applied to a small graph with 13 nodes. Two random partitions of the graph are selected as parents (Fig. 3 (a) and (b)). The underlined number close to each community shows the ranking of the community according to its modularity, for instance, a community with 5 nodes in parent (a) has the highest fitness and its rank is 1. Communities are transferred to the offspring according to their rank, so in first step nodes of the community rank 1 in parent (a), {1, 2, 3, 4, 5} are assigned in a same community in the offspring. The se-cond priority is for nodes {9, 12, 13} in parent (b) that are not assigned to a communi-ty in the offspring in previous step; they form the second community in the offspring. The third priority is for nodes {10, 11, 12, 13} in parent (a). But nodes 12 and 13 were assigned before, so only nodes 10 and 11 are put in a community. The forth priority is for nodes {6, 7, 8} in parent (b) that can be exactly formed a same commu-nity in the offspring. In this stage we can see that all nodes in the offspring are parti-tioned. As shown in Fig. 3, the offspring has 4 communities that are inherited from parents.

Fig. 3. A schematic illustration of the modularity-based crossover. (a) and (b) are two partition of a simple graph with 12 nodes that are selected as parents. (c) shows the offspring generated from parents by modularity-based crossover.

The modularity-based recombination operator’s aim is that offsprings inherit the best structures observed in both originating solutions. While this recombination operator can increase the number of communities, we proposed a local search proce-

(c)

(b) (a)

Page 7: [Proceedings in Adaptation, Learning and Optimization] Proceedings of the 18th Asia Pacific Symposium on Intelligent and Evolutionary Systems, Volume 1 Volume 1 || MA-Net: A Reliable

MA-Net: A Reliable Memetic Algorithm for Community Detection 317

dure that can merge communities to improve the modularity. As stated, one of the weaknesses of some modularity optimization algorithms [20, 21] is their tendency to merge the small communities and create huge communities with a large fraction of nodes, but after applying the modularity-based recombination operator the number of communities in offspring is generally more than the number of communities in par-ents. Therefore, this operator leads the algorithm to explore small communities.

Adaptive Mutation Operator In order to maintain the diversity of the population and to avoid useless explorations of the search space, we use the neighbour-based mutation strategy [44]. The mutation operator changes the community label of node to the community label of one of its neighbours randomly. Considering only neighbours’ communities for changing the community label of each node helps the algorithm to explore search space more wise-ly. Here we apply the adaptive mutation operator to the existing offspring and gener-ate a new offspring.

The mutation probability indicates the likelihood of a mutation to be per-formed for each node. Here, we proposed an adaptive mutation operator where is modified by the ability of the algorithm to find a better solution. It means that muta-tion probability is increasing when the algorithm could not improve the solution. The higher , the more changes in the offspring and the broader exploration of the search space.

One of the algorithm’s parameters is that indicates the acceptable number of generations without improvement and we used this parameter as the termination criterion, so the algorithm is terminated when the number of generations without improvement in the best solution exceed the value . While the number of gen-erations without improvement is increasing, the mutation probability will increase to expand the capacity of diversification of the algorithm by increasing the amount of changes in the mutated individual. is an algorithm parameter and it will growth linearly to according to how close the algorithm is to reaching its termination criteria. For instance, in experimental tests (Section 3) is set to 0.05 and the ter-mination criterion is set to 30 generations without improvement. Therefore in the first generation, is 0.05 and when the algorithm is run for 15 generations without

improvement, the mutation probability will increase to . ∗ ( . + ).

2.3 Local Search

In this study, we employ the vertex movement heuristic. Different implementations of vertex movement heuristics have been used in existing algorithms [22, 23, 45, 46]. In MA-Net, we use a vertex movement heuristic with a stochastic hill climbing strategy to exploit the neighborhood of each solution. In a given graph with nodes, we define the neighbour solution of a partition = [ , , … , ] with communities as a partition where a single node is reassigned to another community. Therefore, a movement of a node from its own community to any other community generates a neighbour solution. The local search procedure works as follows:

Page 8: [Proceedings in Adaptation, Learning and Optimization] Proceedings of the 18th Asia Pacific Symposium on Intelligent and Evolutionary Systems, Volume 1 Volume 1 || MA-Net: A Reliable

318 L.M. Naeni, R. Berretta, and P. Moscato

Firstly, a random sequence of nodes = { , , … , } is generated. Then, for each node in the sequence, the modularity gain ∆ of moving this node to the community of one of its random neighbour (i.e. ( , ) ∈ ) is computed. If this movement improves the fitness of the partition, the node obtains the community label of . If the movement does not improve the fitness, another random neighbour of is selected to compute ∆ . This process stops when node is moved or we found that there is no movement for that improves the fitness of the partition. The same procedure is repeated for all nodes in the random sequence .

It should be noted that the stochastic hill climbing algorithm does not examine all the neighbours before deciding where to move the node. Therefore, the random neighbour selection strategy of the local search procedure helps to avoid getting stuck in local optima which is the limitation of deterministic hill climbing techniques. Due to the sensitivity of the local search procedure to the nodes sequence, we generate a random sequence each time to assure that we start the local search from different nodes. In addition, to speed up the local search procedure we compute a variation of the modularity ∆Q [34] when moving a node into its neighbour community.

2.4 Updating Strategy

In MA-Net, we use an elitism strategy for the update_population procedure. It means that the population is updated for the next generation by replacing the new individual with the least fitted member. But if the new individual is worse than the least fitted member of the population, the population will not change. This strategy guarantees that the better solutions are always retained in the population and remain eligible to be selected as parents in the next generation.

3 Experimental Results

In this section we evaluate the proposed algorithm (MA-Net) on five well-known real-world networks. The proposed algorithm is implemented in Python 2.7 and the experiments are performed on a machine with Intel(R) Xeon(R) CPU E5-1620 at a clock speed of 3.60GHz (4 cores and 8 logical processors) and 16 GB of memory. After initial experiments and applying Wilcoxon singed-rank test [47] to set the pa-rameters, we tuned the algorithm’s parameters as follows: population size, N , is set to 40, the mutation probability, , is set to 0.05 and the termination criterion is set to 30 generations without improvement in the best solution.

We choose five well-known benchmark networks to compare MA-Net perfor-mance with the state-of-the-art algorithms: Zachary’s karate club network (Karate) [48], the bottlenose dolphin social network (Dolphin) [49], American political books (Polbook) [50], American college football network (Football) [11] and the jazz musicians network (Jazz) [51]. Some configurations data of these networks are shown in Table 1.

We ran MA-Net a total of 50 times on each network and we report the average modularity, maximum modularity and the standard deviation of the modularity (runs

Page 9: [Proceedings in Adaptation, Learning and Optimization] Proceedings of the 18th Asia Pacific Symposium on Intelligent and Evolutionary Systems, Volume 1 Volume 1 || MA-Net: A Reliable

MA-Net: A Reliable Memetic Algorithm for Community Detection 319

are independent of each other, that is, we do not use the results of the previous runs to guide the algorithm in the future runs). To evaluate the performance of the MA-Net, we compare the results given by MA-Net with those of five well-known existing algo-rithms for modularity maximization: GN (a greedy heuristic algorithm) [11], CNM (an improved heuristic algorithm) [20], GATHB (a genetic algorithm) [28] and Meme-Net (a memetic algorithm) [32] and MA-COM (a memetic algorithm) [31]. The MA-Net results in Table 1 include maximum modularity (Q ), average modu-larity (Q ) and the standard deviation of modularity (Q ) in 50 runs.

Table 1. Benchmark networks configurations

Network Nodes Edges

Average degree

1 Karate 34 78 4.59 2 Dolphin 62 159 5.13 3 Polbook 105 441 8.40 4 Football 115 613 10.66 5 Jazz 199 2742 27.70

Table 2. The maximum, average and standard deviation of the modularity ( , , ) obtatined by MA-Net in comprasion with the maximal modularity achived by GN, CNM, GATHB, Meme-Net and MA-COM

MA-Net

Network GN CNM GATHB Meme-Net MA-COM

1 Karate 0.401 0.381 0.402 0.402 0.420 0.420 0.419 0.002 2 Dolphin 0.519 0.515 0.522 0.518 0.529 0.529 0.523 0.004 3 Polbook 0.510 0.502 0.518 0.523 0.527 0.527 0.526 0.002 4 Football 0.599 0.565 0.551 0.604 0.605 0.605 0.601 0.003 5 Jazz 0.439 0.439 0.445 0.438 0.445 0.445 0.445 0.000

Firstly, the comparison between the maximum modularity in Table 2 shows that

for all benchmark networks the maximum modularity ( ) obtained by MA-Net is superior to the maximum modularity achieved by GN, CNM, GATHB and Meme-Net and it is equal to MA-COM results. We need to highlight that the MA-COM has in-deed obtained the best solution for community detection problem in these five net-works. Thus considering and the MA-COM results, this implies that MA-Net also finds the best partition with the highest modularity value in all studied networks.

Moreover, comparing with the best results of others shows that across all networks, even the average results obtained through 50 runs of MA-Net are better than the best results of GN, CNM and GATHB. Only for the Jazz network the best result of GATHB is same as average result of MA-Net. The comparison between the two memetic algorithms of MA-Net and Meme-Net, show that the average results of MA-Net (Q ) in four networks (Karate, Dolphin, Polbook and Jazz network) are

Page 10: [Proceedings in Adaptation, Learning and Optimization] Proceedings of the 18th Asia Pacific Symposium on Intelligent and Evolutionary Systems, Volume 1 Volume 1 || MA-Net: A Reliable

320 L.M. Naeni, R. Berretta, and P. Moscato

better than the maximal results of Meme-Net and only in the football network the is less than Meme-Net result.

Finally, to show the reliability of MA-Net in community detection, we reported the that means the standard deviation of modularity values obtained after 50 runs of

the algorithm in each network. Across all benchmark networks obtained by MA-Net are very small and always less than 0.005. Surprisingly, in all trials MA-Net obtained the optimal solution for the Jazz network. Therefore the standard deviation

in Jazz network is equal to zero. To conclude, the experimental results demonstrate that although the proposed algo-

rithm is a memetic algorithm with a randomized behavior and no performance guar-antee, in compares very well with state-of-the-art algorithms, it is highly reliable in finding good partitions and it is robust in handling different networks and detecting high quality community structures.

4 Conclusion and Future Work

Nowadays, the growth of complex systems research brings the need of novel sets of analytical methods aimed at understanding the underling properties and mechanisms by decomposing it in tightly coupled subsystems. One of the challenging problems in complex network analysis is detecting the community structure in large-scale net-works. In this study, we proposed a novel approach to reveal community structure of the network. The proposed strategy is a memetic algorithm with problem-specific recombination and mutation operators. The experimental comparisons on real-world benchmark networks illustrate that our proposed MA-Net performs better than tradi-tional algorithms on the same set of instances and is highly competitive with state-of-the-art methods. In addition, our experiments have shown that the MA-Net approach can always discover good solutions for the community detection problem with a small deviation from the optimal solution for modularity optimization. Future work will aim at investigating the algorithm’s performance for larger networks and converting the single modularity optimization problem into a multi-objective problem, which can overcome the weakness of modularity in detecting small communities.

References

1. Gavin, A.-C., et al.: Proteome survey reveals modularity of the yeast cell machinery. Na-ture 440, 631–636 (2006)

2. Krogan, N.J., et al.: Global landscape of protein complexes in the yeast Saccharomyces cerevisiae. Nature 440(7084), 637–643 (2006)

3. Lee, J., Hidden, L.J.: information revealed by optimal community structure from a protein-complex bipartite network improves protein function prediction (2013), http://www.ncbi.nlm.nih.gov/pubmed/23577106

4. Brin, S., Page, L.: The anatomy of a large-scale hypertextual Web search engine. Comput-er Networks and ISDN Systems 30(1-7), 107–117 (1998)

Page 11: [Proceedings in Adaptation, Learning and Optimization] Proceedings of the 18th Asia Pacific Symposium on Intelligent and Evolutionary Systems, Volume 1 Volume 1 || MA-Net: A Reliable

MA-Net: A Reliable Memetic Algorithm for Community Detection 321

5. Smith, M.A., Kollock, P.: Communities in cyberspace, vol. 1, p. 1999. Routledge, London (1999)

6. Ahn, Y.-Y., Bagrow, J.P., Lehmann, S.: Link communities reveal multiscale complexity in networks. Nature 466(7307), 761–764 (2010)

7. Stam, C.J., Reijneveld, J.C.: Graph theoretical analysis of complex networks in the brain. Nonlinear Biomedical Physics 1(1), 3 (2007)

8. Bullmore, E., Sporns, O.: Complex brain networks: graph theoretical analysis of structural and functional systems. Nature Reviews Neuroscience 10(3), 186–198 (2009)

9. de Vries, N.J., Carlson, J., Moscato, P.: A Data-Driven Approach to Reverse Engineering Customer Engagement Models: Towards Functional Constructs. PloS One 9(7), e102768 (2014)

10. Gong, M., et al.: An Improved Memetic Algorithm for Community Detection in Complex Networks. In: WCCI 2012 IEEE World Congress on Computational Intelligence (2012)

11. Girvan, M., Newman, M.E.J.: Community structure in social and biological networks. Pro-ceedings of the National Academy of Sciences 99(12), 7821–7826 (2002)

12. Brandes, U., et al.: On Modularity Clustering. IEEE Transactions on Knowledge and Data Engineering 20(2), 172–188 (2008)

13. Fortunato, S.: Community detection in graphs. Physics Reports 486(3-5), 75–174 (2010) 14. Newman, M.E.J., Girvan, M.: Finding and evaluating community structure in networks.

Physical Review E 69(2), 026113 (2004) 15. Newman, M.E.J.: Analysis of weighted networks. Physical Review E 70(5), 056131

(2004) 16. Brandes, U., et al.: Maximizing Modularity is hard. eprint arXiv:physics/0608255 (2006) 17. Xu, G., Tsoka, S., Papageorgiou, L.G.: Finding community structures in complex networks

using mixed integer optimisation. The European Physical Journal B 60(2), 231–239 (2007) 18. Aloise, D., et al.: Column generation algorithms for exact modularity maximization in

networks. Physical Review E 82(4), 046112 (2010) 19. Barber, M.J., Clark, J.W.: Detecting network communities by propagating labels under

constraints. Physical Review E 80(2), 026129 (2009) 20. Clauset, A., Newman, M.E.J., Moore, C.: Finding community structure in very large net-

works. Physical Review E 70 (2004) 21. Newman, M.E.J.: Fast algorithm for detecting community structure in networks. Physical

Review E 69(6), 066133 (2004) 22. Blondel, V.D., et al.: Fast unfolding of communities in large networks. Physics and Socie-

ty (2008) 23. Waltman, L., Eck, N.: A smart local moving algorithm for large-scale modularity-based

community detection. The European Physical Journal B 86(11), 1–14 (2013) 24. Shiokawa, H., Fujiwara, Y., Onizuka, M.: Fast Algorithm for Modularity-based Graph

Clustering. In: Twenty-Seventh AAAI Conference on Artificial Intelligence (2013) 25. Liu, J., Liu, T.: Detecting community structure in complex networks using simulated an-

nealing with -means algorithms. Physica A: Statistical Mechanics and its Applica-tions 389(11), 2300–2309 (2010)

26. Rosvall, M., Bergstrom, C.T.: An information-theoretic framework for resolving commu-nity structure in complex networks. Proceedings of the National Academy of Scienc-es 104(18), 7327–7331 (2007)

27. Lee, J., Gross, S.P., Lee, J.: Modularity optimization by conformational space annealing. Physical Review E 85(5), 056702 (2012)

28. Tasgin, M., Bingol, H.: Community Detection in Complex Networks Using Genetic Algo-rithm. Cornell University Library (2007)

Page 12: [Proceedings in Adaptation, Learning and Optimization] Proceedings of the 18th Asia Pacific Symposium on Intelligent and Evolutionary Systems, Volume 1 Volume 1 || MA-Net: A Reliable

322 L.M. Naeni, R. Berretta, and P. Moscato

29. Li, J., Song, Y.: Community detection in complex networks using extended compact ge-netic algorithm. Soft Computing 17(6), 925–937 (2013)

30. Pizzuti, C.: GA-Net: A Genetic Algorithm for Community Detection in Social Networks. In: Rudolph, G., Jansen, T., Lucas, S., Poloni, C., Beume, N. (eds.) PPSN X. LNCS, vol. 5199, pp. 1081–1090. Springer, Heidelberg (2008)

31. Gach, O., Hao, J.-K.: A Memetic Algorithm for Community Detection in Complex Net-works. In: Coello, C.A.C., Cutello, V., Deb, K., Forrest, S., Nicosia, G., Pavone, M. (eds.) PPSN 2012, Part II. LNCS, vol. 7492, pp. 327–336. Springer, Heidelberg (2012)

32. Gong, M., et al.: Memetic algorithm for community detection in networks. Physical Re-view E 84(5) (2011)

33. Liu, D., et al.: Genetic Algorithm with a Local Search Strategy for Discovering Communi-ties in Complex Networks. International Journal of Computational Intelligence Sys-tems 6(2), 354–369 (2013)

34. Ma, L., et al.: Multi-level learning based memetic algorithm for community detection. Ap-plied Soft Computing 19(0), 121–133 (2014)

35. Song, Y., et al.: Community detection using parallel genetic algorithms. In: 2012 IEEE Fifth International Conference on Advanced Computational Intelligence (ICACI) (2012)

36. Riedy, J., Bader, D.A., Meyerhenke, H.: Scalable Multi-threaded Community Detection in Social Networks. In: 2012 IEEE 26th International Parallel and Distributed Processing Symposium Workshops & PhD Forum (IPDPSW) (2012)

37. Riedy, E.J., Meyerhenke, H., Ediger, D., Bader, D.A.: Parallel Community Detection for Massive Graphs. In: Wyrzykowski, R., Dongarra, J., Karczewski, K., Waśniewski, J. (eds.) PPAM 2011, Part I. LNCS, vol. 7203, pp. 286–296. Springer, Heidelberg (2012)

38. Good, B.H., de Montjoye, Y.-A., Clauset, A.: Performance of modularity maximization in practical contexts. Physical Review E 81(4), 046106 (2010)

39. Fortunato, S., Barthélemy, M.: Resolution limit in community detection. In: PNAS, USA (2007)

40. Li, Z., et al.: Quantitative function for community detection. Physical Review E 77(3), 036109 (2008)

41. Pizzuti, C.: A Multi-objective Genetic Algorithm for Community Detection in Networks. In: 21st International Conference on Tools with Artificial Intelligence, ICTAI 2009 (2009)

42. Gong, M., et al.: Community detection in networks by using multiobjective evolutionary algorithm with decomposition. Physica A: Statistical Mechanics and its Applica-tions 391(15), 4050–4060 (2012)

43. Neri, F., Cotta, C., Moscato, P.: Handbook of Memetic Algorithms. SCI, vol. 379. Spring-er, Heidelberg (2011)

44. Pizzuti, C.: A multiobjective genetic algorithm to find communities in complex networks. IEEE Transactions on Evolutionary Computation 16(3), 418–430 (2012)

45. Liu, X., Murata, T.: Advanced modularity-specialized label propagation algorithm for de-tecting communities in networks. Physica A: Statistical Mechanics and its Applica-tions 398(7) (2010)

46. Rotta, R., Noack, A.: Multilevel local search algorithms for modularity clustering. J. Exp. Algorithmics 16, 2.1–2.27 (2011)

47. Derrac, J., et al.: A practical tutorial on the use of nonparametric statistical tests as a meth-odology for comparing evolutionary and swarm intelligence algorithms. Swarm and Evo-lutionary Computation 1(1), 3–18 (2011)

48. Zachary, W.W.: An Information Flow Model for Conflict and Fission in Small Groups. Journal of Anthropological Research 33(4), 452–473 (1977)

Page 13: [Proceedings in Adaptation, Learning and Optimization] Proceedings of the 18th Asia Pacific Symposium on Intelligent and Evolutionary Systems, Volume 1 Volume 1 || MA-Net: A Reliable

MA-Net: A Reliable Memetic Algorithm for Community Detection 323

49. Lusseau, D., et al.: The bottlenose dolphin community of Doubtful Sound features a large proportion of long-lasting associations. Behavioral Ecology and Sociobiology 54(4), 396–405 (2003)

50. Krebs, V.: A network of books about US politics sold by Amazon.com (2008), http://www.orgnet.com/

51. Duch, J., Arenas, A.: Community detection in complex networks using Extremal Optimi-zation. Physical Review E 72, 027104 (2005)