Using Multi-Agent Collective Intelligence for Detecting Overlapping Communities in Social Networks
Mohammad Akafan a, Behrouz Minaei-Bidgoli b*, Alireza Bagheri c
a Islamic Azad University, North Tehran Branch
b Iran University of Science and Technology, School of Computer Engineering
c Amirkabir University of Technology, Department of Computer Engineering
Abstract
A social network is a social structure composed of a set of social actors (such as individuals or organizations) and a set of bilateral relationships between these actors.
The social networking vision provides a clear way of analyzing the structure of the entire social network. The recognition of communities in networks is one of the major challenges in network science. One of the biggest concerns after community detection is to identify the main community of active nodes in the network that belong to several communities, this problem is still one of the interests of researchers in this field. Finding societies that overlap in social networks is an important topic in social networks analysis.
The algorithm presented in this paper is based on the multi-agent particle swarm optimization as a collective intelligence due to the connection between several simple components which enables them to regulate their behavior and relationships with the rest of the group according to certain rules. As a result, self-organizing in collective activities can be seen, collective intelligence increases the speed and accuracy of global search, and uses a special type of coding to identify the number of communities. In this method, the modularity function is used as a fitness function to optimize particle swarm. Several experiments show that the proposed algorithm (MAPSOCD) is capable of detecting nodes in overlapping communities with high accuracy. The point in using the previously presented particle swarm optimization algorithms for community detection is that they are only able to recognize non-overlapping communities.
Keywords:Particle swarm optimization, Clustering, Multi-agent, Graph clustering, Overlapping communities, Social networks
1. Introduction
A social network is a social structure composed of a set of social actors (such as individuals or organizations) and a set of bilateral relationships between these actors. The social networks perspective provides a clear way of analyzing the structure of the entire social institution. Studying these structures through the analysis of social networks provides identification of local and global patterns, locating effective institutions, and evaluating the network's dynamics. Overall, social networks are consistent, emerging and complex. Sophisticated networks are widely used in different aspects of life, such as the communication network between individuals in a community, rail transport network, road-to-delivery networks, the cellular communication network, and the global Internet network. such networks are considered as complex networks. Recognition of community is still one of the important topics in the research of complex networks. By using
less interconnected and internally more connected. Clustering helps to analyze complex networks faster and easier. One of the biggest challenges in splitting a large network into smaller subnetworks is that there are nodes that are active between these subnetworks.
these nodes lead to incorrect recognizing of their communities.
The novelty of this paper is using of the multi-agent concept for detection of overlapping communities and also using a special kind of particle coding for the division of complex communication networks into subnetworks for identifying the number of communities. In this research, the fitness function for particle evaluation is the modularity, and then, using existing community coding, find nodes that lead to the overlapping of the network and then, by measuring the modularity, we determine their main community. In this end, the binary particle swarm optimization algorithm is used to improve detection.
This algorithm uses modularity to classify communities. The proposed algorithm consists of four main components, and in this case, four questions are answered. First, what is the coding of the optimization and, secondly, how is the mechanism of updating the particles and, thirdly, how the fitness function is defined to determine the society and, lastly, how the pattern of overlapping communities is detected?
In the second section of the paper, we briefly review the particle optimization algorithm, the concept of multi-agent and clustering, then in the third section of the paper, the multi- agent algorithm is proposed and in section four, several experimental results are presented on the datasets which are used by the researchers. Finally, we conclude in section 5.
2. Background and Related Works 2.1. Particle Swarm Optimization
Particle swarm optimization was developed by Kennedy and Eberhart (Eberhart &
Kennedy, 1995), inspired by flying birds, and this method is one of the most popular methods for finding optimal global. At first, the particle swarm optimization algorithm by producing a completely random population generates the initial population of particle swarm and begins to search for optimized particle using particle updates.
The idea of optimizing particle swarm is based on a particle and determination of particle's velocity and position by using two values of personal best position (pbest) and global best position (gbest). The particle motion in the problem space results in changes in the particle fitting function.
In a loop, the values of pbest and gbest are updated, and the velocity and position of the particles change. Finally, with respect to the fitness function, the best possible solution for the problem is obtained, the particle swarm optimization mechanism is based on the following equations.
1
1 1 2 2
1 2
k k k k k k
i i i i i i
v wv c r pbest x c r gbest x
(1)
1 1
k k k
i i i
x x v (2)
max max
max max
, ,
ij ij
ij
ij ij
v v v v
v v v v v
(3)
1, 2, 3,...
i i i i iq
v v v v v (4)
1, 2, 3,...
i i i i iq
x x x x x (5)
Eq (1) is the vector of particle velocity and eq (2) is the vector of particle position, and r1, r2 are two random numbers in the interval [0,1], k also indicates the kth generation of particles, w is a coefficient for particle velocity as inertia of particle, and c1 is the acceleration coefficient for pbest and c2 is considered as the acceleration coefficient for gbest and Vmax is an upper bound on the velocity of a particle. Part 1 of eq (1) expresses the particle's self-cognition mechanism and Part 2 of eq (1) represents the mechanism of the particle's socialization (Cheng, Xinhong, Dongdong, & Lei, 2016).
The above mechanism is proposed as the standard particle swarm optimization (SPSO), which is suitable for solving problems with continuous fitness function. To solve hybrid optimization problems, a binary PSO is proposed (Wang, Gandomi, Alavi, & Deb, 2016), with a sigmoid function, the particle position values are mapped to zero or one, but their velocities change according to the standard PSO.
1, 1
0, , exp 1
k k
i i k
i
x S S Sigmoid v
S v
(6)
In eq (6), ρ is a random number between [0,1].
2.2. Multi-Agent Systems
A Multi-Agent System (MAS) is made of up a group of autonomous software agents which are able to complete desired objectives in a cooperative manner. The basic characteristics of an agent that are accounted for typical are autonomy, learning, and cooperation. These attributes indicate that agents have the capability of independent and asynchronous execution, discover pertinent knowledge from the environment and other agents that may help in attaching the preferred goals, and cooperation with other agents (Ahmad, Lee, Rahimi, & Gupta, 2007).
Multi-Agent Collaborative Search (MACS) is a framework for the implementation of hybrid, population-based approaches for multi-objective optimization. In this framework, a number of intelligent technologies are merged together to get a balanced global and local exploration. In particular, the search for Pareto optimal solutions is conducted by a population of agents operationalizing a combination of social and individualistic actions.
An external archive is then utilized to save all Pareto optimal solutions.
Individualistic actions aim to permit each agent to independently converge to the Pareto optimal set. Individualistic actions involve local moves as in memetic algorithms (Massimiliano & Lorenzo, 2016).
2.3. Modularity
Modularity (Ismail & Ismail, 2017) is an indicator of evaluation for communities, the main idea behind this indicator is to compare the density of community with the density of a random network based on eq 7.
,
1
i
i j
ij C P j C
Q A K K
W W
(7)Where C is a community of all communities, i and j are two nodes of community, Ai j is the value of the item of adjacency matrix, and W is the sum of the weights of the inputs and outputs communicators in the graph resulting from the grid, every node calculated twice in an undirected graph. And Ki is the degree of the i-th node.
The Q value is defined as a number between zero and one, and the larger the number, the better the community is detected on the network, and it can be said more accurately.
2.4. Related Works
The researchers developed community discovery based on several algorithms such as Girvan and Newman algorithms (Girvan & Newman, 2002), the largest fractional flow (Lovro & Marko, 2014), hierarchical clustering, spectral clustering, partitional clustering (Santo.Fortunato, February 2010). Newman presented a parameter called a platform for assessing the modularity of community detection (Girvan & Newman, 2004), which is widely accepted among researchers. This parameter led the community detection from a complex network division problem or a complex network clustering problem into smaller networks, making it an optimization issue.
In recent years, research by researchers to address the problem of optimization has led to the use of intelligent biological algorithms such as genetic algorithms (Ronghua.Shang, Jing.Bai, Licheng.Jiao, & Chao.Jin, 2013), ant colony algorithms, simulated annealing algorithms (Di Jin, Dayou Liu, Bo Yang, Jie Liu, Dongxiao He, 2013) and particle swarm optimization (Shadi.Rahimi, Alireza.Abdollahpouri, & Parham.Moradi, 2018) to improve the accuracy of community detection. This is because of less complexity of these algorithms than other algorithms. In many cases, to solve the problem, we need much memory and very powerful processors to cover the computational complexity of some of the algorithms. Chaotian and et al, based on experiments that have done, believe that the discovery of a society based on particle congestion in a unique way optimizes the amount of moderation (Wu, Li, Teng, & Chen, 2015). The point in using the previously presented particle swarm optimization algorithms for community detection is that they are only able to recognize non-overlapping communities, and this goes back to the genes that are produced in this regard. For example, in (Palla, Derényi, Farkas, & Vicsek, 2005), it finds sub-communities in non-overlapping networks. They provide a method for PSO in which instead of having a gbest, there is a leader in every repetition. In this approach, the particles follow the leader in order to decrease the number of repetitions to reach optimize the solution. In fact, the method offers personal updating based on local information. The major problem with this method is that it only functions on the non-overlapping network.
Recently, many efforts have focused on defining effective methods for recognizing overlapping communities, in which the method of link clustering has been one of the successful ways for discovering overlapping communities, these types of methods rather than clustering nodes, cluster communication links between nodes. The advantage of this method is that the cluster obtained from the clustering is a subgraph of the main network, thus allowing a node to be present in several sub-graphs (Palla, Derényi, Farkas, &
Vicsek, 2005) (Huang, et al., 2017).
For example, at Stanford University in 2011 through 2013, several research papers by Yang and Leskovec (Yang & Leskovec, 2012) (Yang & Leskovec, 2013) have been presented. Their primary axis is to analyze the graph dependency model (AGM), in which a new measure for community detection is presented. In this method, the representation of the graph is a two-part structure consisting of nodes and communities. For the relationship between a node and community, the weight of belonging the node to the community has been used. This is the basis of some of the methods presented in these types of research, which is interpreted from its final approach to Bigclam. This is a new approach to community detection, which is based on model estimations, but this method has a big problem, and it has problems with societies in which nodes become dense.
Particle swarm optimization was proposed by James Kennedy and Russell Eberhart (Eberhart & Kennedy, 1995) in 1995, whose main idea was to simulate the processing of birds moving. The collective intelligence is derived from the connection between several simple components, each of which adjusts its behaviors and connections with other members of the group based on some certain rules (Schutte, et al., 2005). The collective intelligence of particles is able to converge rapidly and has quantitative parameters for processing, and it can solve problems in a nonlinear way and combines with other optimization algorithms, to not quickly gets stuck in the optimal locale.
Researchers consider two main attributes for collective intelligence: the first characteristic is the impact of the environment, which includes responses to environmental stimuli; this is especially important in communities in which there is no difference between several components of the society, and the second one called self- organization that involves attuning the movement of a component based on both its previous experience and the movement of other components of the group (Schutte, et al., 2005).
3. Proposed Method (MAPSOCD)
In this section, we introduce the proposed algorithm for overlapping community detection problem. This algorithm is based on PSO and multi-agent concept, so we name it MAPSOCD (Multi agent particle swarm optimization overlapping community detection). The proposed algorithm uses modularity to classify communities. This algorithm consists of four main sections, and we answer four questions in this regard.
First, what is the coding of the optimization and, secondly, how is the mechanism of updating the particles and, thirdly, how the fitness function is defined to determine the society and fourth, how the pattern of overlapping communities is detected?
In the proposed method (MAPSOCD), each agent runs independently and learns its knowledge of the environment. Each of the agents gives the best of its particles as a result, which is the best solution for detecting network communities, so each agent detects a non-overlapping community. Since the main goal is the detection of overlapping communities, a coordinator analyzes the results of the agents and discovers overlapping communities.
3.1. Encoding of particle swarm optimization and particle splitting
In evolutionary computing, there are three proprietary methods for particle coding:
binary code, integer code, and real number code.
In our proposed method (MAPSOCD), first, it is assumed that each node is only in one community and communities do not overlap. Encoding is based on assigning a tag to each community and is defined as follows:
1 2
( , ,..., ,..., )
i i i ij iv
P p p p p ,
1, ,..., ,...,2
ij k m
p l l l l (8)
Pi is a particle and Pij shows the community label of node j in particle Pi and lk is the label of community k.
Figure 1: (a) Communities of a social network such that L1, L2 are labels of these communities, and ni are the nodes of network, (b) Particle coding and Pi is particle i.
Given the above, if Pij=Lk , then the node j belongs to the community k.
The method is able to automatically identify the number of communities based on community labeling.
The proposed method (MAPSOCD) is able to calculate the number of communities in the network without any prior knowledge.
To this end, our algorithm first divides the network into two communities in the first stage.
The main challenge starts after the first stage because the process for community detection has not yet been completed because the nodes of society have been located in two communities, and the community may have more subnetworks that we have not investigated. To divide the network into other subnetworks, a divisional scenario is needed that we use a recursive division scenario, which means that at first a community is divided into two communities, then each of its communities is divided into two other communities into the following stages until the following conditions are satisfied:
1) The number of repetitions will be completed
2) In each step, the value of the fitness function is less than the previous one Speed, position, best personal position, and best global position are features of a particle, but eventually, the output of PSO in the first stage is the best particle of particles that have the best gbest (global best) and gbestcost (global best cost) in during repetitions.
In other words, if the algorithm is performed with 200 particles and 100 repetitions, the ultimate outcome will be the optimized particle that has the best global position among the other particles following 100 updates.
If there is a network with 34 nodes, after the first stage, we will have a particle with 34 members, which are located at community 0 or 1.
So, this network is divided into two subnetworks, community 0 and community 1 groups:
1) 16 members in the community 0 = {1, 2, 3, 4, 5, 6, 7, 11, 12, 13, 16, 18, 20, 21, 26, 32}
2) 18 members in the community 1 = {8, 9, 10, 13, 14, 15, 17, 19, 22, 23, 24, 25, 27, 28, 29, 30, 31, 33, 34}
Figure 2: Particle code representation of network.
3.2. Particle swarm update
Particle updates include the velocity and position of each particle. Particle velocity update is performed using eq (1) according to the standard PSO, but particle position update is not performed using the standard PSO. The particle position update is performed using the sigmoid function, which is either 0 or 1, and for there, a random threshold is considered. Therefore, we have a new function that specifies the position of a particle in community 0 or in community 1.
0, 0
1, 0
new
X x
x
(9) 3.3. PSO fitness function
To change the problem of overlapping community detection from a division problem into an optimization problem, a fitness function must be selected to be optimized. In this research, the modularity function is used as a fitness function. Newman and Girvan (Girvan & Newman, 2004) presented the first modularity function as a quality assessment index for community detection, so that by changing the value of this function from zero to one, the division of the graph as a social network into smaller societies is performing more accurately, and with more quality.
A social network can be modeled as a G = (V, E) graph, such that V is a set of nodes and E is a set of edges that interact between nodes. In this graph, we form the proximity matrix of the graph edges, the value of mij represents an element of the adjacency matrix that is placed in row i and column j. If the relationship is between the two elements, its value is equal to 1as defined before.
, 1, ( , )
ij ji x y
m m if v v E (10)
Therefore, the modularity function Q is defined as eq (11) [10].
( 2)
n
ij i
i
Q
e a (11)x i y j
x y
xy v c v c i j
xy v V v V
m e
m
(12)i ij j
a
e (13)eij is the number of communication links between community i and community j and ai is the number of communication links from all communities to community i.
3.4. Overlapping Community
In the proposed algorithm (MAPSOCD), every agent that runs a particle is produced, which each node in the particle is placed in one community. This process divides a community into two communities or more communities on a recursive basis so that each agent has detected a non-overlapping community.
In the proposed algorithm, the number of agents increased from one to N, after the execution of the above process, each agent has detected a non-overlapping community, the concept shown in figure 3. A coordinator is used to evaluate and supervise the response of each of the agents to identify the nodes that are activated between these subnetworks. Detecting overlapping community based on these nodes is done.
Figure 3:Multi Agent Particle Swarm Optimization for the Detection of Overlapping Communities Model (MAPSOCD).
The output of each agent is a particle. one particle consists of nodes that are members of several communities, so in each particle, there are a set of nodes that are members of the community lk. The coordinator finds the nodes that led to the overlapping network by intersection operations between particles. In the intersection operation, the following three states may occur:
1) All nodes are shared between sets of particles, in which case the discovered community is non-overlapping.
2) Some of the nodes are shared between the set of the particles, these nodes are the active nodes that have led to the creation of overlap in the communities.
3) There is no common node between particles, which does not occur due to the fitness function.
Due the second case, assume that when the results of the agents indicate that one node is member more than one community, so it does not matter if this node is a member of the community M or a member of the community N, so this node is a good candidate to be selected as an active node that has led to the creation of overlapping networks.
4. Experimental Results and Analysis
In order to compare the experimental results with other algorithms, we have taken three standard networks for which the partitioning is known. The maximum number of iterations in the evaluation function is 100.
Several experiments show that the division of the society may be different, but they have the same modularity (with a precision of four-tenths), so the space of the issue has much modularity and the PSO is supposed to achieve one of the best modularity. The modularities found as gbest are very close to each other, so the problem has several solutions.
Now, when multiple agents are used in the problem, each agent results in a particle that is optimally global. This particle has a modularity value. This value is very close to the modularity of the particles obtained from other agents. The test experience of the proposed algorithm shows that if the response of the two agents is different in terms of division. their difference is in one or two nodes, but their modularity is either the same or with a precision of 0.0001 difference in value.
Two of the available algorithms are compared with the proposed algorithm presented in this article, which details are given in this section.
4.1. Description of the datasets
In this section, three experiments will be done to validate the performance of the algorithm on different real networks. The datasets used by researchers in this field is known and you can refer to “http://www-personal.umich.edu/~mejn/netdata” for access to the datasets.
Table 1 - Description of real-world networks.
Networks #Nodes #Edges #Clusters Description
Karate 34 78 2 Zachary’s karate club
Dolphins 62 159 2 Dolphin social network
Football 115 613 12 American College football
We have taken three standard networks for which the number of partitions is known and that have been taken into consideration to evaluate the effectiveness of the proposed technique. These three standard networks are known as the Zachary’s Karate Club (KumarMishra, HemantBisht, TribhuvanSingh, & VictorChang, 2018), the American College Football (KumarMishra, HemantBisht, TribhuvanSingh, & VictorChang, 2018), and the Dolphin social network (KumarMishra, HemantBisht, TribhuvanSingh, &
VictorChang, 2018). The community structures of these networks are already known. The
details of these networks can also be found at “http://www- personal.umich.edu/~mejn/netdata”. The description of these networks is given in Table1.
4.2. Settings of the experiments
The implementation of the proposed algorithm is performed with the settings in Table 2 for each dataset.
Particle size is the number of nodes in the graph, w is a coefficient for particle velocity as the inertia of particle, and C1 is the acceleration coefficient for personal best and C2 is considered as the acceleration coefficient for global best which must be set before running the algorithm.
Table 2 - Setting of the algorithm per datasets.
American College football
Dolphin social network Zachary’s karate
club
Data Sets
Parameters
115 62
34 Particle Size
200 200
Initial 200 Population
100 100
100 Iteration
1.5 1.5
1.5 W
2 2
2 C1
2 2
2 C2
Our experiments are conducted on a personal computer equipped with an Intel Corei7 CPU (2.5 GHz) and 8 Gigabyte memory. The algorithms are validated and implemented under the environment of Matlab R2016b.
In these experiments, the number of executive agents is considered ten. Another agent is considered as a coordinator for evaluating common nodes in situations wherein subsection 3.4 was expressed.
4.3. Experimental results
Table 3 shows the modularity of the three datasets using the MR-MOEA algorithm (Zhang, Pan, Su, Zhang, & Niu, 2017) based particle swarm optimization algorithm and MAPSOCD algorithm. In the table below, the first value from the top represents the American college football dataset, in which the modularity of MAPSOCD algorithm is 0.318 and modularity the MR-MOEA algorithm is 0.306, also in Zachary's karate club dataset second row, the modularity of MAPSOCD algorithm is 0.236 and modularity the MR-MOEA algorithm is 0.229 and also in the Dolphin social network dataset last row, the modularity of MAPSOCD algorithm is 0.283 and modularity the MR-MOEA algorithm is 0.271.
Table 3 – Compare MR-MOEA (Zhang, Pan, Su, Zhang, & Niu, 2017) and MAPSOCD.
MAPSOCD MR-MOEA
Algorithm
Modularity Community Detected#
Modularity Data Set
0.318 9
0.306 American College football
0.236 4
0.229 Zachary’s karate club
0.283 3
0.271 Dolphin social network
According to the results of the experiments carried out in accordance with the tables, the proposed algorithm outlined in this article has improved on the Dolphin social network and Zachary's karate club and American college football datasets in modularity of community detection. Therefore, it can be said that the use of MAPSOCD algorithm to determine nodes in communities has improved the modularity of community detection.
Table 4, compares the IMOQPSO algorithm (Li, Wang, Chen, Jiao, & Shang, August 2015) with the proposed method, which shows that the proposed method is more effective in clustering than the IMOQPSO algorithm in the dataset of the American College football, Zachary Karate Club and the Dolphin Network.
Table 4 – Compare of modularity of IMOQPSO (Li, Wang, Chen, Jiao, & Shang, August 2015) and MAPSOCD.
Our proposed algorithm has been implemented with 10 agents on Zachary’s karate club dataset and the condition for stopping each agent is to find two communities, the results are shown in figure 4 and figure 5.
Figure 4: The graph derived from the proposed method and detecting nodes that lead to overlapping of the communities.
Figure 5: The number written in each cell represents the node number and the color of the Modularity
Algorithm
MAPSOCD IMOQPSO
Data set
0.318 0.243
American College football
0.236 0.213
Zachary’s karate club
0.283 0.264
Dolphin social network
According to Figure 5, two communities have been discovered that some nodes belong to more than one community. The nodes that belong to more than one community have led to overlapping communities. Accordingly, four nodes have been discovered as nodes that lead to overlapping communities. These four nodes are marked in yellow in figure 5.
The main community of node 3 is the first community and the main community of nodes 9,10 and 31 is the second community.
5. Conclusion and Future Work
The algorithm presented in this paper is based on the multi-agent particle swarm optimization as a collective intelligence due to the connection between several simple components which enables them to regulate their behavior and relationships with the rest of the group according to certain rules. As a result, self-organizing in collective activities can be seen, collective intelligence increases the accuracy of the global search. Our algorithm uses a special type of coding to identify the number of communities. In our method, the modularity function is used as a fitness function to optimize particle swarm.
Several experiments showed that the proposed algorithm (MAPSOCD) is capable of detecting nodes in overlapping communities with high accuracy.
The point in using the previously presented PSO algorithms for community detection is that they recognize non-overlapping communities, and this goes back to the representation of genes by these methods, but the use of multi-agent collective intelligence by our algorithm has led to the identification of nodes in overlapping communities.
In the future, using MAPSOCD in overlapping networks, we try to discover common nodes in communities so that the percentage of each node belongs to each community is identified.
References
[1] Ahmad, R., Lee, Y. C., Rahimi, S., & Gupta, B. (2007, April). A multi-agent based approach for particle swarm optimization. In 2007 International Conference on Integration of Knowledge Intensive Multi-Agent Systems (pp. 267-271). IEEE. doi: 10.1109/KIMAS.2007.369820.
[2] Bickel, P. J., & Sarkar, P. (2016). Hypothesis testing for automated community detection in networks. Journal of the Royal Statistical Society: Series B (Statistical Methodology), 78(1), 253- 273. doi: https://doi.org/10.1111/rssb.12117.
[3] Eberhart, R., & Kennedy, J. (1995, October). A new optimizer using particle swarm theory. In MHS'95. Proceedings of the Sixth International Symposium on Micro Machine and Human Science (pp. 39-43). IEEE. Doi: 10.1109/MHS.1995.494215.
[4] Fortunato, S. (2010). Community detection in graphs. Physics reports, 486(3-5), 75-174. doi:
https://doi.org/10.1016/j.physrep.2009.11.002.
[5] Girvan, M., & Newman, M. E. (2002). Community structure in social and biological networks.
Proceedings of the national academy of sciences, 99(12), 7821-7826. doi:
https://doi.org/10.1073/pnas.122653799.
[6] Hajibagheri, A., Hamzeh, A., & Sukthankar, G. (2013, August). Modeling information diffusion and community membership using stochastic optimization. In Proceedings of the 2013 IEEE/ACM International Conference on Advances in Social Networks Analysis and Mining (pp. 175-182).
ACM. doi: 10.1145/2492517.2492545.
[7] Huang, F., Li, X., Zhang, S., Zhang, J., Chen, J., & Zhai, Z. (2017). Overlapping community detection for multimedia social networks. IEEE Transactions on Multimedia, 19(8), 1881-1893. doi:
10.1109/TMM.2017.2692650.
[8] Ismail, S., & Ismail, R. (2017, January). Modularity approach for community detection in complex networks. In Proceedings of the 11th International Conference on Ubiquitous Information Management and Communication (p. 56). ACM. doi: 10.1145/3022227.3022282.
[9] Jin, D., Liu, D., Yang, B., Liu, J., & He, D. (2011). Ant colony optimization with a new random walk model for community detection in complex networks. Advances in Complex Systems, 14(05), 795-815.
[10] Li, Y., Wang, Y., Chen, J., Jiao, L., & Shang, R. (2015). Overlapping community detection through an improved multi-objective quantum-behaved particle swarm optimization. Journal of Heuristics, 21(4), 549-575. doi: https://doi.org/10.1007/s10732-015-9289-y.
[11] Massimiliano, V., & Lorenzo, R. (24 August 2016). Multi Agent Collaborative Search. Springer, 223-252. doi: https://doi.org/10.1007/978-3-319-44003-3_10.
[12] Mishra, K. K., Bisht, H., Singh, T., & Chang, V. (2018). A direction aware particle swarm optimization with sensitive swarm leader. Big data research, 14, 57-67. doi:
https://doi.org/10.1016/j.bdr.2018.03.001.
[13] Newman, M. E., & Girvan, M. (2004). Finding and evaluating community structure in networks.
Physical review E, 69(2), 026113. doi: https://doi.org/10.1103/PhysRevE.69.026113.
[14] Palla, G., Derényi, I., Farkas, I., & Vicsek, T. (2005). Uncovering the overlapping community structure of complex networks in nature and society. nature, 435(7043), 814. doi:
https://doi.org/10.1038/nature03607.
[15] Rahimi, S., Abdollahpouri, A., & Moradi, P. (2018). A multi-objective particle swarm optimization algorithm for community detection in complex networks. Swarm and Evolutionary Computation, 39, 297-309. doi: https://doi.org/10.1016/j.swevo.2017.10.009.
[16] Schutte, J. F., Koh, B. I., Reinbolt, J. A., Haftka, R. T., George, A. D., & Fregly, B. J. (2005).
Evaluation of a particle swarm algorithm for biomechanical optimization. Journal of Biomechanical Engineering, 127(3), 465-474. doi:10.1115/1.1894388.
[17] Shang, R., Bai, J., Jiao, L., & Jin, C. (2013). Community detection based on modularity and an improved genetic algorithm. Physica A: Statistical Mechanics and its Applications, 392(5), 1215- 1231. doi: https://doi.org/10.1016/j.physa.2012.11.003.
[18] Šubelj, L., & Bajec, M. (2014). Group detection in complex networks: an algorithm and comparison of the state of the art. Physica A: Statistical Mechanics and Its Applications, 397, 144-156. doi:
https://doi.org/10.1016/j.physa.2013.12.003.
[19] Wang, G. G., Gandomi, A. H., Alavi, A. H., & Deb, S. (2016). A hybrid method based on krill herd and quantum-behaved particle swarm optimization. Neural Computing and Applications, 27(4), 989-1006. doi: https://doi.org/10.1007/s00521-015-1914-z.
[20] Wu, C., Li, T., Teng, F., & Chen, X. (2015, November). An improved PSO algorithm for community detection. In 2015 10th International Conference on Intelligent Systems and Knowledge Engineering (ISKE) (pp. 138-143). IEEE. doi: 10.1109/ISKE.2015.53.
[21] Yang, J., & Leskovec, J. (2012, December). Community-affiliation graph model for overlapping network community detection. In 2012 IEEE 12th International Conference on Data Mining (pp.
1170-1175). IEEE. doi: 10.1109/ICDM.2012.139.
[22] Yang, J., & Leskovec, J. (2013, February). Overlapping community detection at scale: a nonnegative matrix factorization approach. In Proceedings of the sixth ACM international conference on Web search and data mining (pp. 587-596). ACM. doi: 10.1145/2433396.2433471.
[23] Zhang, C., Hei, X., Yang, D., & Wang, L. (2016). A memetic particle swarm optimization algorithm for community detection in complex networks. International Journal of Pattern Recognition and Artificial Intelligence, 30(02), 1659003.
[24] Zhang, L., Pan, H., Su, Y., Zhang, X., & Niu, Y. (2017). A mixed representation-based multiobjective evolutionary algorithm for overlapping community detection. IEEE Transactions on Cybernetics, 47(9), 2703-2716.doi: 10.1109/TCYB.2017.2711038.