GateLevel Circuit Partitioning Algorithm Based on Clustering and an Improved Genetic Algorithm
Abstract
:1. Introduction
2. Preliminary Knowledge
 1.
 Y = k − 1;
 2.
 For ∀ ${v}^{\prime}\in V\backslash Y$, ∀ $v\in Y$, it has c(v) ≥ c(v′).
 1.
 ${v}_{max}\notin Y$;
 2.
 ∀$v\in V\backslash Y$, $d\left({v}_{max}\right)$≥$d\left(v\right)$.
3. GateLevel Circuit Partitioning Algorithm Based on Cluster and an Improved Genetic Algorithm
 1.
 The clustering algorithm based on betweenness centrality. It applies BFS (breadthfirst search) to identify the clusters in a graph and realize the coarse partition. These clusters can ensure a certain load balancing and greatly reduce the scale of the graph; that is, the solution space of the subsequent fine partitioning algorithm is reduced.
 2.
 The constraintbased genetic algorithm. It adopts the absolute genetic strategy for nodes in clusters and the probabilistic genetic strategy for other nodes, so as to achieve the rapid convergence of the algorithm and to match with the coarse partition. The genetic algorithm takes the minimum cutsize as the optimal goal and outputs the best partition scheme.
3.1. GateLevel Circuit Modeling and Preprocessing
3.2. Clustering Algorithm Based on Betweenness Centrality
Algorithm 1: A clustering algorithm based on betweenness centrality 
Input: ${G}_{0}$, the number of subsets k, high betweenness node set Y, lower limit of a cluster LR, upper limit UR, cluster set Vc Output: Vc, minimum graph ${G}_{k}$. Variables: a cluster ${V}_{i}$ 

Algorithm 2: The BFS algorithm with judgment logic 
Input: ${v}_{max},$ ${G}_{0},{V}_{c}$, ${V}_{i}$LR, UR Output: ${V}_{i}$ Variable: The initial value of the queue is an empty list, stopping condition: whether the BFS search algorithm has searched for a node that belongs to set Y.

3.3. ConstraintBased Genetic Algorithm
3.3.1. Chromosome Encoding and Population Initialization
3.3.2. Crossing, Mutation Operators
3.3.3. Joint Function
 (1)
 All genes related to the nodes in ${V}_{c}$ will be copied to the complete chromosomes, according to subscript. That is, they are absolute genetic genes.
 (2)
 For any chromosome CompleteChromosome_i, the other genes are copied from the related short chromosome Chromosome_i in the population.
3.3.4. New Fitness Function
3.3.5. Split Function
3.3.6. ConstraintBased Genetic Algorithm
Algorithm 3: Constraintbased genetic algorithm 
Input: ${G}_{0}$, Vc Output: The partition scheme Variable: The current population ${P}_{i}$, the maximum evolution generation of population generation_max, i is the generation number, Crossover_rate, Mutation_rate.

3.4. Complexity Analysis on the Complete Circuit Partitioning Algorithm
4. Experimental Results and Analysis
4.1. Analysis of the Results of the TwoWay Partition
4.2. Analysis of the Results of the ThreeWay Partition
5. Conclusions
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
References
 Simoglou, S.; Sotiriou, C.; Blias, N. Timing Errors in STAbased GateLevel Simulation. In Proceedings of the 26th IEEE International Symposium on Asynchronous Circuits and Systems (ASYNC), Salt Lake City, UT, USA, 17–20 May 2020; pp. 1–2. [Google Scholar]
 Ye, X.J.; Dong, W.; Li, P. Hierarchical Multialgorithm Parallel Circuit Simulation. IEEE Trans. Comput.Aided Des. Integr. Circuits Syst. 2011, 30, 45–58. [Google Scholar] [CrossRef]
 Kim, Y.J.; Mavris, D.; Fujimoto, R. Time and spaceparallel simulation of air traffic networks. Simulation 2019, 95, 1213–1228. [Google Scholar] [CrossRef]
 D’Angelo, G.; Ferretti, S. Adaptive parallel and distributed simulation of complex networks. J. Parallel Distrib. Comput. 2022, 163, 30–44. [Google Scholar] [CrossRef]
 Kernighan, B.W.; Lin, S. An efficient heuristic procedure for partitioning graphs. Bell Syst. Tech. J. 1970, 2, 291–307. [Google Scholar] [CrossRef]
 Sahu, P.K.; Manna, K.; Shah, N. Extending Kernighan–Lin partitioning heuristic for application mapping onto NetworkonChip. J. Syst. Archit. 2014, 60, 562–578. [Google Scholar] [CrossRef]
 Lei, X.; Liang, W.; Li, K.C. A New Multilevel Circuit Partitioning Algorithm Based on the Improved KL Algorithm. In Proceedings of the Intl Conference on Big Data Security on Cloud, IEEE Intl Conference on High Performance and Smart Computing, IEEE Intl Conference on Intelligent Data and Security, Washington, DC, USA, 27–29 May 2019; pp. 178–182. [Google Scholar]
 Fiduccia, C.M.; Mattheyses, R.M. A linear time heuristic for improving network partitions. In Proceedings of the 19th IEEE Design Automation Conference, Las Vegas, NV, USA, 14–16 June 1982; pp. 175–181. [Google Scholar]
 Zhu, W.X.; Cheng, H. Scatter Search Algorithm for VLSI Circuit Partitioning. Tien Tzu Hsueh Pao/Acta Electron. Sin. 2012, 40, 1207–1212. [Google Scholar]
 Kim, Y.H.; Yoon, Y.; Geem, Z.W. A comparison study of harmony search and genetic algorithm for the maxcut problem. Swarm Evol. Comput. 2019, 44, 130–135. [Google Scholar] [CrossRef]
 Zhai, Q.; He, Y.; Wang, G. A general approach to solving hardware and software partitioning problem based on evolutionary algorithms. Adv. Eng. Softw. 2021, 159, 102998. [Google Scholar] [CrossRef]
 Su, Y.; Zhou, K.; Zhang, X.; Cheng, R.; Zheng, C. A parallel multiobjective evolutionary algorithm for community detection in largescale complex networks. Inf. Sci. 2021, 576, 374–392. [Google Scholar] [CrossRef]
 Jin, D.; Liu, J.; Yang, B. Genetic algorithm with local search for community detection in largescale complex networks. Acta Autom. Sin. 2011, 37, 873–882. [Google Scholar]
 Dong, Y.; Cao, L.; Zuo, K. Genetic Algorithm Based on a New Similarity for Probabilistic Transformation of Belief Functions. Entropy 2022, 24, 1680. [Google Scholar] [CrossRef] [PubMed]
 Guo, W.Z.; Chen, G.L.; Xiong, N.X.; Peng, S.J. Hybrid particle swarm optimization algorithm for VLSI circuit partitioning. J. Softw. 2011, 22, 833–842. [Google Scholar] [CrossRef]
 Wu, L.; Qu, J.; Shi, H.; Li, P. Node Deployment Optimization for Wireless Sensor Networks Based on Virtual ForceDirected Particle Swarm Optimization Algorithm and Evidence Theory. Entropy 2022, 24, 1637. [Google Scholar] [CrossRef]
 Guru, R.P.; Vaithianathan, V. An efficient VLSI circuit partitioning algorithm based on satin bowerbird optimization (SBO). J. Comput. Electron. 2020, 19, 1232–1248. [Google Scholar] [CrossRef]
 Li, X.Y.; Pang, Y.F.; Zhao, C.X.; Liu, Y. A new multilevel algorithm for balanced partition problem on large scale directed graphs. Adv. Aerodyn. 2021, 3, 23. [Google Scholar] [CrossRef]
 Trifunović, A.; Knottenbelt, W. Parallel multilevel algorithms for hypergraph partitioning. J. Parallel Distrib. Comput. 2008, 68, 563–581. [Google Scholar] [CrossRef] [Green Version]
 Hendrickson, B. A MultiLevel Algorithm for Partitioning Graphs. Supercomputing ’95. In Proceedings of the 1995 ACM/IEEE Conference on Supercomputing, San Diego, CA, USA, 8 December 1995; p. 28. [Google Scholar]
 Karypis, G.; Kumar, V. METIS—Unstructured Graph Partitioning and Sparse Matrix Ordering System, Version 2.0. technical report. Appl. Phys. Lett. 2010, 97, 124101. [Google Scholar]
 Karypis, G.; Aggarwal, R.; Kumar, V. Multilevel hypergraph partitioning: Application in VLSI domain. IEEE Trans. Very Large Scale Integr. (VLSI) 1999, 7, 69–79. [Google Scholar] [CrossRef]
 Kumar, R.; Caverlee, J.; Tong, H. Streaming METIS Partitioning. In Proceedings of the 8th IEEE/ACM International Conference on Advances in Social Networks Analysis and Mining (ASONAM), San Francisco, CA, USA, 18–21 August 2016; pp. 17–24. [Google Scholar]
 He, T.X.; Xiao, Z.; Chen, C.; Liu, C.B.; Li, K.L. DAG Partition Algorithm for Hardware Accelerated Function Verification. J. Softw. 2022, 33, 3236–3248. [Google Scholar]
 Shao, C.; Du, X.; Yu, J.; Chen, J. Clusterbased improved isolation forest. Entropy 2022, 24, 611. [Google Scholar] [CrossRef]
 Shalileh, S.; Mirkin, B. Community partitioning over featurerich networks using an extended kmeans method. Entropy 2022, 24, 626. [Google Scholar] [CrossRef] [PubMed]
 Malzer, C.; Baum, M. Constraintbased hierarchical cluster selection in automotive radar data. Sensors 2021, 21, 3410. [Google Scholar] [CrossRef]
 Cuzzocrea, A.; Gaber, M.M.; Fadda, E.; Grasso, G.M. An innovative framework for supporting big atmospheric data analytics via clusteringbased spatiotemporal analysis. J. Ambient. Intell. Humaniz. Comput. 2019, 10, 3383–3398. [Google Scholar] [CrossRef]
 Prieto Santamaría, L.; García del Valle, E.P.; Lagunes García, G.; Zanin, M.; Rodríguez González, A.; Menasalvas Ruiz, E.; Pérez Gallardo, Y.; Hernández Chan, G.S. Analysis of new nosological models from disease similarities using clustering. In Proceedings of the 33rd IEEE International Symposium on ComputerBased Medical Systems (CBMS), Rochester, MN, USA, 28–30 July 2020; pp. 183–188. [Google Scholar]
 GaminoSánchez, F.; HernándezGutiérrez, I.V.; RosalesSilva, A.J.; GallegosFunes, F.J.; MújicaVargas, D.; RamosDíaz, E.; CarvajalGámez, B.E.; Kinani, J.M.V. BlockMatching Fuzzy CMeans clustering algorithm for segmentation of color images degraded with Gaussian noise. Eng. Appl. Artif. Intell. 2018, 73, 31–49. [Google Scholar] [CrossRef]
 Vianney Kinani, J.M.; Rosales Silva, A.J.; Gallegos Funes, F.; Mújica Vargas, D.; Ramos Díaz, E.; Arellano, A. Medical imaging lesion detection based on unified gravitational fuzzy clustering. J. Healthc. Eng. 2017, 2017, 8536206. [Google Scholar] [CrossRef] [PubMed] [Green Version]
 Dzuba, S.; Krylov, D. Cluster analysis of financial strategies of companies. Mathematics 2021, 9, 3192. [Google Scholar] [CrossRef]
 Jin, H.; Yu, W.; Li, S. A clustering algorithm for determining community structure in complex networks. Phys. A Stat. Mech. Appl. 2018, 492, 980–993. [Google Scholar] [CrossRef]
 Freeman, L.C. Centrality in social networks conceptual clarification. Soc. Netw. 1978, 1, 215–239. [Google Scholar] [CrossRef] [Green Version]
 Bian, T.; Hu, J.; Deng, Y. Identifying influential nodes in complex networks. Phys. A Stat. Mech. Appl. 2012, 391, 1777–1787. [Google Scholar]
 Abbasi, A.; Hossain, L.; Leydesdorff, L. Betweenness centrality as a driver of preferential attachment in the evolution of research collaboration networks. J. Informetr. 2012, 6, 403–412. [Google Scholar] [CrossRef] [Green Version]
 Newman, M.; Girvan, M. Finding and Evaluating Community Structure in Networks. Phys. Rev. E 2004, 69, 026113. [Google Scholar] [CrossRef] [PubMed] [Green Version]
 Kolar, D.; Puksec, J.D.; Branica, I. VLSI circuit partition using simulated annealing algorithm. In Proceedings of the Electrotechnical Conference, Dubrovnik, Croatia, 12–15 May 2004; pp. 205–208. [Google Scholar]
Circuit  The Number of Logic Gates before and after Preprocessing  The Number of Signal Lines before and after Preprocessing 

Cjtag  68/66  141/140 
Mmu  302/236  391/360 
s298  142/139  237/237 
s349  196/180  227/221 
s382  188/180  286/285 
s344  195/188  241/241 
s953  463/426  729/722 
s1238  554/532  565/554 
c1355  619/617  1089/1089 
c1908  938/936  1519/1519 
c2670  1642/1389  2288/2117 
c3540  1741/1741  2958/2958 
Circuit  Metis  KL  Gene  Proposed Algorithm  

Min  Avg  Min  Avg  Min  Avg  Min/LR  Avg  
Cjtag  6  6  7  21  16  25  6/0.3  8 
Mmu  1  1  108  123  1  18  1/0.3  1 
s298  21  21  58  61  26  43  17/0.3  26 
s349  8  8  41  72  33  62  7/0.3  12 
s382  16  16  84  96  36  41  13/0.3  21 
s344  11  11  44  56  31  97  10/0.3  23 
s953  26  26  195  216  128  143  28/0.32  36 
s1238  36  36  114  176  85  93  32/0.34  43 
c1355  51  51  416  432  126  285  64/0.34  72 
c1908  48  48  583  634  175  243  45/0.34  53 
c2670  38  38  682  704  269  302  41/0.36  47 
c3540  87  87  864  971  338  376  84/0.40  91 
Circuit  Metis  Gene  Proposed Algorithm  

Min  Avg  Min  Avg  Min/LR  Avg  
Cjtag  13  13  25  33  8/0.18  10 
Mmu  53  53  82  86  33/0.18  37 
s298  41  41  51  68  37/0.18  49 
s349  10  10  81  92  9/0.18  10 
s382  39  39  113  126  30/0.18  41 
s344  10  10  70  87  9/0.18  11 
s953  40  40  148  189  47/0.20  51 
s1238  57  57  220  248  60/0.24  65 
c1355  93  93  288  317  91/0.26  96 
c1908  81  81  343  403  92/0.28  102 
c2670  60  60  529  581  76/0.28  79 
c3540  141  141  692  743  203/0.28  224 
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. 
© 2023 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 (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Cheng, R.; Yin, L.Z.; Jiang, Z.H.; Xu, X.M. GateLevel Circuit Partitioning Algorithm Based on Clustering and an Improved Genetic Algorithm. Entropy 2023, 25, 597. https://doi.org/10.3390/e25040597
Cheng R, Yin LZ, Jiang ZH, Xu XM. GateLevel Circuit Partitioning Algorithm Based on Clustering and an Improved Genetic Algorithm. Entropy. 2023; 25(4):597. https://doi.org/10.3390/e25040597
Chicago/Turabian StyleCheng, Rui, LinZi Yin, ZhaoHui Jiang, and XueMei Xu. 2023. "GateLevel Circuit Partitioning Algorithm Based on Clustering and an Improved Genetic Algorithm" Entropy 25, no. 4: 597. https://doi.org/10.3390/e25040597