Title :
Software module clustering using a hyper-heuristic based multi-objective genetic algorithm
Author :
Kumari, A.C. ; Srinivas, K. ; Gupta, M.P.
Author_Institution :
Dept. of Phys. & Comput. Sci., Dayalbagh Educ. Inst., Agra, India
Abstract :
This paper presents a Fast Multi-objective Hyper-heuristic Genetic Algorithm (MHypGA) for the solution of Multi-objective Software Module Clustering Problem. Multi-objective Software Module Clustering Problem is an important and challenging problem in Software Engineering whose main goal is to obtain a good modular structure of the Software System. Software Engineers greatly emphasize on good modular structure as it is easier to comprehend, develop and maintain such software systems. In recent times, the problem has been converted into a Search-based Software Engineering Problem with multiple objectives. This problem is NP hard as it is an instance of Graph Partitioning and hence cannot be solved using traditional optimization techniques. The MHypGA is a fast and effective metaheuristic search technique for suggesting software module clusters in a software system while maximizing cohesion and minimizing the coupling of the software modules. It incorporates twelve low-level heuristics which are based on different methods of selection, crossover and mutation operations of Genetic Algorithms. The selection mechanism to select a low-level heuristic is based on reinforcement learning with adaptive weights. The efficacy of the algorithm has been studied on six real-world module clustering problems reported in the literature and the comparison of the results prove the superiority of the MHypGA in terms of quality of solutions and computational time.
Keywords :
genetic algorithms; graph theory; learning (artificial intelligence); minimisation; pattern clustering; search problems; software engineering; MHypGA; cohesion maximization; computational time; fast multiobjective hyper-heuristic genetic algorithm; genetic algorithms; graph partitioning; low-level heuristics; metaheuristic search technique; modular software systems; modular structure; multiobjective software module clustering problem; mutation operations; optimization techniques; real-world module clustering problems; reinforcement learning; search-based software engineering problem; software engineering; software engineers; software module clusters; software module coupling minimization; Couplings; Genetic algorithms; Optimization; Search problems; Sociology; Software; Statistics; Genetic Algorithm; Hyper-heuristics; Multi-objective optimization; Reinforcement learning; Search-based Software Engineering; Software Module Clustering;
Conference_Titel :
Advance Computing Conference (IACC), 2013 IEEE 3rd International
Conference_Location :
Ghaziabad
Print_ISBN :
978-1-4673-4527-9
DOI :
10.1109/IAdCC.2013.6514331