    # Recent Progress on Graph Partitioning Problems Using Evolutionary Computation

The graph partitioning problem (GPP) is a representative combinatorial optimization problem which is NP-hard. Currently, various approaches to solve GPP have been introduced. Among these, the GPP solution using evolutionary computation (EC) is an effective approach. There has not been any survey on the research applying EC to GPP since 2011. In this survey, we introduce various attempts to apply EC to GPP made in the recent seven years.

## Authors

##### This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

## 1 Introduction

The graph partitioning problem (GPP) is an NP-hard combinatorial optimization problem. In other words, it is a problem with the same subset size as the minimal number of cut sizes when dividing a graph into two or more subsets. The -way graph partitioning problem is a problem to partition a graph into subsets. When = 2, it is referred as graph bisection or bi-partitioning. As obtaining accurate optima of GPP is rather challenging, we can obtain approximate solutions with approaches such as the Kernighan-Lin algorithm , Fiduccia-Mattheyses algorithm 

, and multi-level method. Furthermore, a heuristic approach is often adopted depending on the nature of problem. Kim

et al. 

first reviewed researches focusing on genetic algorithms. After this, there have been much studies on GPP using evolutionary computation, but there has been no research surveying these studies. Recently, Buluç

et al.  conducted a survey to examine recent trends in graph partitioning approaches, but it was a comprehensive survey research focusing on GPP. In this research, we organized a stream of research over the last seven years on evolutionary computation to solve GPP. This paper is organized as follows. In section 2, research related to the encoding of genetic algorithm (GA) is covered. In Section 3, local optimization used in the multi-level heuristic, and the hybrid method are introduced. In Section 4, other approaches are covered. A summary of the paper is presented in Section 5.

## 2 Encoding

Yoon and Kim  studied heuristics for vertex ordering and an approach to partition vertex ordering into clusters. This approach was applied to integrate the reordering of GA and identification of clustered structures in graphs. Kim et al.  introduced edge-set encoding based on spanning trees. Unlike the existing vertex-based encoding, edge subsets derived from the spanning tree correspond to the genes in the encoding. This encoding has the advantage of presenting feasible solutions only, so there is no need to apply a repair process.

## 3 Local Optimization

### 3.1 Multi-level Heuristics

Sanders and Schulz [16, 17] used multi-level graph partitioners to solve GPP. This partitioner provides effective crossover and mutation operators. The crossover and mutation operators were incorporated with an extendible communication protocol, which allows many inputs to be processed in a short period of time. Pope et al. 

used genetic programming to develop the multi-level graph partition method adjusted for a specific application program. Using this, they demonstrated the results using evolved partitioners in traditional random graph models, as well as in a real-world computer network dataset. Andre

et al.  focused on the quality of solutions when solving problems and developed a multi-level memetic algorithm. To develop this algorithm, effective multi-level recombination and mutation processes were developed. Biedermann et al.  proposed a general memetic algorithm to solve a graph clustering problem. In this algorithm, natural recombination operators using ensemble clustering and multi-level techniques were adopted.

### 3.2 Local Search Algorithm in Hybrid GAs

Lee et al. 

presented a circuit bipartitioning algorithm. The key idea of this algorithm is to embed local search heuristics into a quantum-inspired evolutionary algorithm (QEA). The Fiduccia-Mattheyses algorithm

 was used for local optimization and operators were revised to apply QEA. Hwang et al.  demonstrated heuristic distinguishing clusters in the population of locally optimized random partitions. This becomes the seed of the memetic algorithm (MA), and once MA is executed, beneficial cluster moves can be performed. Kim  presented an incremental GA to solve the GPP. By proposing graph expansion methodologies and vertex ordering schemes, Kim defined an appropriate sequence of subproblems. Kim et al.  proposed a simulated catalytic reaction method to explore optimization problems. With the catalytic reactions applied to optimization problems, one can figure out the hidden information, and to solve GPP, an applied framework is also proposed.

## 4 Other Approaches

First, among non-traditional GAs, Wang et al.  proposed an algorithm that improved QEA through linkage learning. The existing QEAs synchronize individuals to prevent QEA from finding multiple optima, while this algorithm overcame this shortcoming. In addition, the niching approach replaced migration to increase the convergence speed, avoid genetic drift, and locate all global optima. There is also research adopting parallel GAs. Wang et al. 

developed a nonlinear mixed integer programming model. In this problem, they devised a parallel GA to solve large-scale, real-world instances. In GPP research using a particle swarm optimization (PSO) algorithm, Li

et al. 

proposed a link density-based multi-objective optimization model to solve a community detection problem. Also, a multi-objective PSO algorithm was presented to solve this model. By using each single run of the proposed algorithm, one can generate a Pareto solution set, and a network community structure can be presented as the set is uniformly distributed. There are two studies that solved GPP using ant colony optimization (ACO). Sachdeva and Kaur

 partitioned an application program to minimize energy consumption in an applied GPP problem. This study proposed an ACO-based approach to deploy software in the mobile cloud. Liu et al.  used the MapReduce programming model and proposed ant brood clustering with intelligent ants that cluster financial time series data. The algorithm used an alternate number of mappers in each iteration for data parallelism and indirect communication between mappers. Research has also been conducted on the harmony search algorithm. Kim et al.  was the first to use a harmony search algorithm to solve a max-cut problem. Compared with GA, harmony search algorithm is better in that good individuals can be generated at each iteration. After considering all existing individuals, fewer parameters should be determined compared with those of GA, which is seen as a major advantage of this algorithm. Lastly, Zadeh and Kobti  developed a multi-population cultural algorithm using knowledge-based evolutionary computation to solve GPP-applied problems. This algorithm guides search direction as knowledge is derived from the network and the optimal solution is found accordingly.

## 5 Summary

Some applications of GPP are circuit placement and community detection, and they occur in varying fields. Research on heuristic approaches to solve GPP has been continuously conducted. The evolutionary approach is also viewed as an effective approach to expect fair outcomes in GPP. In Table 1, GPP studies using evolutionary computation (EC) shown in this research are summarized. Many researchers mentioned in the study used various EC approaches to solve GPP. Moreover, they achieved competitive results to demonstrate the effects of algorithms built upon the results. This research summarized and organized various EC-based approaches, such as encoding and local optimization, applied to GPP. The research is expected to contribute to future research using EC approaches to solve GPP.

## References

•  Andre, R., Schlag, S., and Schulz, C. Memetic multilevel hypergraph partitioning. arXiv:1710.01968 (2017).
•  Biedermann, S., Henzinger, M., Schulz, C., and Schuster, B. Memetic graph clustering. arXiv:1802.07034 (2018).
•  Buluç, A., Meyerhenke, H., Safro, I., Sanders, P., and Schulz, C. Recent advances in graph partitioning. In Algorithm Engineering. Springer, 2016, pp. 117–158.
•  Fiduccia, C. M., and Mattheyses, R. M. A linear-time heuristic for improving network partitions. In 19th Design Automation Conference (1988), pp. 241–247.
•  Hwang, I., Kim, Y.-H., and Yoon, Y. Moving clusters within a memetic algorithm for graph partitioning. Mathematical Problems in Engineering 2015 (2015).
•  Kernighan, B. W., and Lin, S. An efficient heuristic procedure for partitioning graphs. The Bell System Technical Journal 49, 2 (1970), 291–307.
•  Kim, J. An Incremental Genetic Algorithm for Graph Optimization Problems. PhD thesis, Seoul National University, 2016.
•  Kim, J., Hwang, I., Kim, Y.-H., and Moon, B.-R. Genetic approaches for graph partitioning: a survey. In Proceedings of the 13th Annual Conference on Genetic and Evolutionary Computation (2011), pp. 473–480.
•  Kim, Y.-H., and Kang, S. J. Optimization by simulated catalytic reaction: application to graph bisection. KSII Transactions on Internet and Information Systems (2018), (in press).
•  Kim, Y.-H., Yoon, Y., and Geem, Z. W. A comparison study of harmony search and genetic algorithm for the max-cut problem. Swarm and Evolutionary Computation (2018), (in press).
•  Lee, D., Ahn, J., and Choi, K. A memetic quantum-inspired evolutionary algorithm for circuit bipartitioning problem. In International SoC Design Conference (2012), pp. 159–162.
•  Li, Z., He, L., and Li, Y. A novel multiobjective particle swarm optimization algorithm for signed network community detection. Applied Intelligence 44, 3 (2016), 621–633.
•  Liu, Y. Y., Thulasiraman, P., and Thulasiram, R. K. Parallelizing active memory ants with mapreduce for clustering financial time series data. In IEEE International Conferences on Big Data and Cloud Computing, Social Computing and Networking, Sustainable Computing and Communications (2016), pp. 137–144.
•  Pope, A. S., Tauritz, D. R., and Kent, A. D. Evolving multi-level graph partitioning algorithms. In IEEE Symposium Series on Computational Intelligence (2016), pp. 1–8.
•  Sachdeva, S., and Kaur, K. ACO based graph partitioning algorithm for optimistic deployment of software in MCC. In International Conference on Innovations in Information, Embedded and Communication Systems (2015), IEEE, pp. 1–5.
•  Sanders, P., and Schulz, C. Distributed evolutionary graph partitioning. In Proceedings of the 14h Workshop on Algorithm Engineering and Experiments (2012), pp. 16–29.
•  Sanders, P., and Schulz, C. High quality graph partitioning. Graph Partitioning and Graph Clustering 588, 1 (2012).
•  Seo, K., Hyun, S., and Kim, Y.-H. An edge-set representation based on a spanning tree for searching cut space. IEEE Transactions on Evolutionary Computation 19, 4 (2015), 465–473.
•  Wang, B., Xu, H., and Yuan, Y. Quantum-inspired evolutionary algorithm with linkage learning. In IEEE Congress on Evolutionary Computation (2014), pp. 2467–2474.
•  Wang, L., Zhao, J., Wang, W., and Zhan, Z. Genetic algorithm for regionalization problem with adaptive equity constraint. In 10th Asian Control Conference (2015), pp. 1–6.
•  Yoon, Y., and Kim, Y.-H. Vertex ordering, clustering, and their application to graph partitioning. Applied Mathematics & Information Sciences 8, 1 (2014), 135–138.
•  Zadeh, P. M., and Kobti, Z. A multi-population cultural algorithm for community detection in social networks. Procedia Computer Science 52 (2015), 342–349.