{"title":"Hybrid of genetic algorithm and krill herd for software clustering problem","authors":"M. Akbari, Habib Izadkhah","doi":"10.1109/KBEI.2019.8734939","DOIUrl":null,"url":null,"abstract":"Clustering techniques are usually utilized to partition a software system, aiming to understand it. Understanding a program helps to maintain the legacy source code. Since the partitioning of a software system is an NP-hard problem, using the evolutionary approaches seems reasonable. Krill herd (KH) evolutionary algorithm is an effective algorithm for solving optimization problems with continuous state space which imitates the individual and group behavior of krill. According to its nature, is unable to solve the discrete space problems. The main advantage of this algorithm is to keep the information flow between different individuals during the evolutionary process. Genetic algorithm (GA) is an evolutionary algorithm utilizing the search techniques to find the closest solution to optimal; however, its main problem is a lack of strong effective information flow between different generations. This paper proposes a new evolutionary method, named GAKH, for software clustering inspired by Krill herd and Genetic algorithm. In the proposed evolutionary algorithm, the strengths of these two algorithms have been utilized and better results have been achieved in software clustering by changing GA cycle and operators, adding swarm intelligence and inspiring from Krill movements. The initial results achieved from the application of the proposed algorithm on ten software systems indicate higher quality results of clustering compared to other algorithms.","PeriodicalId":339990,"journal":{"name":"2019 5th Conference on Knowledge Based Engineering and Innovation (KBEI)","volume":"19 3","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2019-02-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"9","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2019 5th Conference on Knowledge Based Engineering and Innovation (KBEI)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/KBEI.2019.8734939","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 9
Abstract
Clustering techniques are usually utilized to partition a software system, aiming to understand it. Understanding a program helps to maintain the legacy source code. Since the partitioning of a software system is an NP-hard problem, using the evolutionary approaches seems reasonable. Krill herd (KH) evolutionary algorithm is an effective algorithm for solving optimization problems with continuous state space which imitates the individual and group behavior of krill. According to its nature, is unable to solve the discrete space problems. The main advantage of this algorithm is to keep the information flow between different individuals during the evolutionary process. Genetic algorithm (GA) is an evolutionary algorithm utilizing the search techniques to find the closest solution to optimal; however, its main problem is a lack of strong effective information flow between different generations. This paper proposes a new evolutionary method, named GAKH, for software clustering inspired by Krill herd and Genetic algorithm. In the proposed evolutionary algorithm, the strengths of these two algorithms have been utilized and better results have been achieved in software clustering by changing GA cycle and operators, adding swarm intelligence and inspiring from Krill movements. The initial results achieved from the application of the proposed algorithm on ten software systems indicate higher quality results of clustering compared to other algorithms.