Large-Scale Complex Network Community Detection Combined with Local Search and Genetic Algorithm
Abstract
:1. Introduction
2. Prior Research
3. Proposed Method
3.1. Complex Network Community Detection Concept
- (a)
- Calculate the edge number of each edge in the network.
- (b)
- Delete the edge with the largest median.
- (c)
- Recalculate the number of edges of the remaining edges in the network.
- (d)
- Repeat steps (b) and (c) until the nodes in the network are divided into separate communities.
- (a)
- Initialize the network into n communities and consider each node as an independent community.
- (b)
- Calculate the module Q value corresponding to the combination of the two communities, and increase or decrease the maximum or the maximum along the module increment ΔQ community consolidation in a small direction:
- (c)
- Repeat (b) until all the communities in the network are merged into one large community, the algorithm stops, and the community partition result corresponding to the maximum module degree in the merge process is found.
3.2. Particle Swarm Optimization
- (1)
- Initialization: Set the number of iterations of the algorithm, the learning factor and the initial velocity of all particles randomly generated and the position in the solution space.
- (2)
- Calculate the fitness value, individual excellent value and group excellent value of the particles in the population.
- (3)
- Update the velocity and position of the particles in the population, fitness function values, individual extremum and group extremum.
- (4)
- Check the overall performance of the new particle swarm. If the optimization effect is not achieved, skip to step (2) and continue.
- (5)
- Achieve the set number of iterations, end and output the optimal solution in the particle swarm (the optimal solution is the individual value with the best fitness value).
3.3. Genetic Algorithm
- (1)
- Coding: The coding of genetic algorithm is the genetic representation of the solution. It is usually expressed as a numeric string or a string. The solution data x in the solution space is the expression of the genetic algorithm. The binary coding method is the most important kind of coding method in the genetic algorithm.
- (2)
- Initialization: randomly generate N initial binary strings, that is, a total of N individuals in the initial population, and perform initialization operations on these string structures. The specific problem of the length of the string is specifically analyzed, and the above-mentioned individuals are the initial groups P(t), form a set of candidate solutions.
- (3)
- Individual evaluation: Calculate the fitness of each individual in the group P(t), and the individuals are sorted according to the size of the fitness value.
- (4)
- Selection operation: The selection operator is used for the parent group. The mouth is to directly inspect the selected high-quality individuals to the next generation for recombination and mutation. This also reveals the principle of survival of the fittest in the process of biologic evolution.
- (5)
- Crossover operation: also known as recombination, the crossover operator is applied to the group, and two pairs of parent individuals are randomly selected from the population according to a certain crossover probability, and part of the structural data are exchanged to form two new individuals.
- (6)
- Mutation operation: The mutation operator is used for the population, and some gene values of the individual are changed according to the small mutation probability, and the mutation operation can maintain the genetic diversity.
- (7)
- Iterative termination judgment: If the number of iterations t < MAXGEN, then let t = t + 1 and go back to step (2); if the iteration number t = MAXGEN, directly output the maximum fitness value, corresponding to its value. The individual is the optimal individual, the optimal solution is output, and the algorithm terminates.
3.4. Particle Swarm-Genetic Hybrid Algorithm
- (1)
- Set the parameters of the particle swarm and genetic hybrid algorithm. These parameters mainly include the population size POPSIZE, the iteration number Tmax of the algorithm operation, the self-adjustment range of the adaptive inertia weight factor W, and the variation range of the asynchronous change learning factors C1 and C2.
- (2)
- Initialize the population: Generate POPSIZE particles according to the parameters set in step 1). The particle swarm algorithm, the genetic algorithm’s operation object and the evolution strategy are not the same. Two initial chromosome codes should be copied for subsequent use. Evolutionary calculations that update the current fitness values of the particles.
- (3)
- Evolutionary strategy: Due to the particularity of the genetic algorithm evolution preservation strategy designed in this paper, both the crossover and the mutation operator will only evolve to better individuals. Therefore, the operation object of the genetic algorithm is the historically optimal individual chromosome code that each particle has found in the iterative search of the particle swarm. The particle swarm algorithm operates another chromosome code. When the corresponding fitness of this chromosome code is higher, the chromosome code covering the operation of the genetic algorithm is updated.
- (4)
- Perform particle swarm algorithm iteration: update the position vector and velocity vector of the particle. If the fitness corresponding to the new particle is higher than the local historical optimal feasible solution or the global historical optimal feasible solution, then the replacement is performed.
- (5)
- Crossover operation of genetic algorithm: Using a random matching strategy, the matched two particle individuals cross-evolve the specified chromosomal genes and compare the evolution results with the old individuals to decide whether to replace or discard. If a better individual is evolved, the local best is compared to the current global best individual, and if the individual is better than the current global best feasible solution, the global best feasible solution is replaced, otherwise no action is taken.
- (6)
- Variation operation of genetic algorithm: Similar to the strategy of step (5), if the fitness corresponding to the new particle is higher than the local historical optimal feasible solution or the global historical optimal feasible solution, then the corresponding replacement is performed.
- (7)
- Judgment: If the evolution stop condition is satisfied, the execution of the algorithm is stopped, otherwise it is returned to step (4) to repeat the execution.
- (8)
- Extraction: After the evolution stops, the best feasible solution of the original population is the best feasible solution to the target calculation problem.
4. Experiments
4.1. Experimental Data Set
4.2. Test Function
4.3. Parameter Settings
5. Results and Discussions
5.1. Comparison of Single Algorithm and Hybrid Algorithm
5.2. Comparison of Various Algorithms on the Real Network
5.3. Comparison of Various Algorithms on the Artificial Generation Network
6. Conclusions
- (1)
- Introduce the related concepts of complex network community detection and introduce the two-community structure quality evaluation indicators used in this paper: network module degree and NMI. Three common community detection algorithms GN, Fastgreedy and LFM are analyzed, and the corresponding principles and processes are introduced in the paper.
- (2)
- Analyze and introduce the principle and flow of particle swarm algorithm and genetic algorithm. A hybrid algorithm strategy combining the two is proposed, and the basic flow of the particle swarm-genetic hybrid algorithm is developed according to the strategy.
- (3)
- The single and hybrid algorithms are tested by test function, and the effectiveness of the proposed algorithm is verified. The algorithm and three other common community detection algorithms are tested on real networks and artificially generated network datasets. The results show that the combination of particle swarm optimization and genetic algorithm is superior to other algorithms and does improve the overall performance of the algorithm, avoids the disadvantages of weak local search ability of a single genetic algorithm, and the global search ability is better than the single particle swarm optimization algorithm.
Author Contributions
Funding
Conflicts of Interest
Abbreviations
PSO | particle swarm optimization |
GA | genetic algorithm |
NMI | normalization mutual information |
PIDCDS | parallel incremental dynamic community detection algorithm |
NN-PSO | particle swarm optimization-based approach to train neural networks |
DBS | deep brain stimulation |
BPSO | binary particle swarm optimization algorithm |
PSO-GA | particle swarm-genetic hybrid algorithm |
References
- Tan, H.; Wu, Y.; Zhang, H. Research on community discovery method for complex authorized networks. J. Chin. Inf. Process. 2018, 32, 111–119. [Google Scholar]
- Belhocine, A.; Omar, W.Z.W. A numerical parametric study of mechanical behavior of dry contacts slipping on the disc-pads interface. Int. J. Comput. Appl. 2017, 40, 42–60. [Google Scholar]
- Xiong, Z.; Wu, Y.; Ye, C.; Zhang, X.; Xu, F. Color image chaos encryption algorithm combining CRC and nine palace map. Multimed. Tools Appl. 2019, 22, 31035–31055. [Google Scholar] [CrossRef]
- Whang, J.J.; Gleich, D.F.; Dhillon, I.S. Overlapping community detection using neighborhood-inflated seed expansion. IEEE Trans. Knowl. Data Eng. 2016, 28, 1272–1284. [Google Scholar] [CrossRef]
- Beckett, S.J. Improved community detection in weighted bipartite networks. R. Soc. Open Sci. 2016, 3, 140536. [Google Scholar] [CrossRef] [Green Version]
- Wu, B.; Xiao, Y.; Zhang, Y. Parallel incremental dynamic community detection algorithm based on spark. Qinghua Daxue Xuebao/J. Tsinghua Univ. 2017, 57, 1030–1037. [Google Scholar]
- Belim, S.V.; Larionov, S.B. An algorithm of image segmentation based on community detection in graphs. Comput. Opt. 2017, 40, 904–910. [Google Scholar] [CrossRef] [Green Version]
- Žalik, K.R.; Žalik, B. Multi-objective evolutionary algorithm using problem-specific genetic operators for community detection in networks. Neural Comput. Appl. 2018, 30, 2907–2920. [Google Scholar] [CrossRef]
- Hmimida, M.; Kanawati, R. Community detection in multiplex networks: A seed-centric approach. NHM 2015, 10, 71–85. [Google Scholar] [CrossRef]
- Messaoudi, I.; Kamel, N. A multi-objective bat algorithm for community detection on dynamic social networks. Appl. Intell. 2019, 49, 2119–2136. [Google Scholar] [CrossRef]
- Hore, S.; Hore, S.; Hore, S.; Dey, N.; Ashour, A.S.; Balas, V.E. Particle swarm optimization trained neural network for structural failure prediction of multistoried rc buildings. Neural Comput. Appl. 2017, 28, 2005–2016. [Google Scholar]
- Peña, E.; Zhang, S.; Deyo, S.; Xiao, Y.Z.; Johnson, M.D. Particle swarm optimization for programming deep brain stimulation arrays. J. Neural Eng. 2017, 14, 016014. [Google Scholar] [CrossRef] [PubMed] [Green Version]
- Parija, S.R.; Sahu, P.K.; Singh, S.S. Cost reduction in location management using reporting cell planning and particle swarm optimization. Wirel. Pers. Commun. 2017, 96, 1–21. [Google Scholar] [CrossRef]
- Kim, J.J.; Lee, J.J. Trajectory optimization with particle swarm optimization for manipulator motion planning. IEEE Trans. Ind. Inform. 2015, 11, 620–631. [Google Scholar] [CrossRef]
- Tavakkolimoghaddam, R.; Safari, J.; Sassani, F. Reliability optimization of series-parallel systems with a choice of redundancy strategies using a genetic algorithm. Reliab. Eng. Syst. Saf. 2017, 93, 550–556. [Google Scholar] [CrossRef]
- Sekaj, I.; Veselý, V. Robust output feedback controller design: Genetic algorithm approach. Ima J. Math. Control Inf. 2018, 22, 257–265. [Google Scholar] [CrossRef]
- Volkanovski, A.; Mavko, B.; Bosevski, T.; Causevski, A.; Cepin, M. Genetic algorithm optimisation of the maintenance scheduling of generating units in a power system. Reliab. Eng. Syst. Saf. 2017, 93, 779–789. [Google Scholar] [CrossRef]
- Kalita, M.K.; Shivakoti, I.; Ghadai, R.K. Optimizing process parameters for laser beam micro-marking using a genetic algorithm and particle swarm optimization. Mater. Manuf. Process. 2017, 32, 1–8. [Google Scholar] [CrossRef]
- Ball, K.R.; Grant, C.; Mundy, W.R.; Shafer, T.J. A multivariate extension of mutual information for growing neural networks. Neural Netw. 2017, 95, 29–43. [Google Scholar] [CrossRef]
- Yang, A.; Li, Y.; Kong, F.; Wang, G.; Chen, E. Security Control Redundancy Allocation Technology and Security Keys Based on Internet of Things. IEEE Access. 2018, 6, 50187–50196. [Google Scholar] [CrossRef]
- Yang, Y.; Zhong, M.; Yao, H.; Yu, F.; Fu, X.; Postolache, O. Internet of Things for Smart Ports: Technologies and Challenges. IEEE Instrum. Meas. Mag. 2018, 21, 34–43. [Google Scholar] [CrossRef]
- Du, K.L.; Swamy, M.N.S. Particle Swarm Optimization. In Search and Optimization by Metaheuristics; Birkhäuser: Cham, Switzerland, 2016; pp. 153–173. [Google Scholar]
- Ali, M.; Zahra, S.T.; Jalal, K.; Saddiqa, A.; Hayat, M.F. Design of Optimal Linear Quadratic Gaussian (LQG) Controller for Load Frequency Control (LFC) using Genetic Algorithm (GA) in Power System. Int. J. Eng. Work. 2018, 5, 40–49. [Google Scholar]
Network Name | Number of Nodes | Number of Sides | Network Description |
---|---|---|---|
Karate | 34 | 78 | Karate club |
Dolphin | 62 | 159 | Dolphin social network |
Polbook | 105 | 441 | American Political Book Network |
Football | 115 | 613 | American college football game |
Netscience | 1589 | 2742 | Scientist partnership network |
Optimal Average (PSO) | Optimal Average (PSO-GA) | |
---|---|---|
Time(s) | 0.109 | 0.031 |
Optimal Average (GA) | Optimal Average (PSO-GA) | |
---|---|---|
Cycles | 78 | 15 |
© 2020 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Lyu, D.; Wang, B.; Zhang, W. Large-Scale Complex Network Community Detection Combined with Local Search and Genetic Algorithm. Appl. Sci. 2020, 10, 3126. https://doi.org/10.3390/app10093126
Lyu D, Wang B, Zhang W. Large-Scale Complex Network Community Detection Combined with Local Search and Genetic Algorithm. Applied Sciences. 2020; 10(9):3126. https://doi.org/10.3390/app10093126
Chicago/Turabian StyleLyu, Desheng, Bei Wang, and Weizhe Zhang. 2020. "Large-Scale Complex Network Community Detection Combined with Local Search and Genetic Algorithm" Applied Sciences 10, no. 9: 3126. https://doi.org/10.3390/app10093126
APA StyleLyu, D., Wang, B., & Zhang, W. (2020). Large-Scale Complex Network Community Detection Combined with Local Search and Genetic Algorithm. Applied Sciences, 10(9), 3126. https://doi.org/10.3390/app10093126