An Iterated Local Search Strengthened by a Q-learning-based Hyper-heuristic for Software Modularization

Document Type : Original Article

Authors

1 Department of Computer Science, Faculty of Mathematics, Statistics, and Computer Science, University of Tabriz, Tabriz, Iran,

2 University of Tabriz

3 Department of Computer Science, Faculty of Mathematics, Statistics, and Computer Science, University of Tabriz

Abstract

Software comprehension plays an important role during its improvement and maintenance process. Software modularization is a key activity for recovering the software architecture, which improves software understanding. Since the software modularization problem is NP-hard, meta-heuristics such as evolutionary algorithms (EAs) are usually used to solve it. EAs are problem-dependent, and they also require considerable space and time. Recently, the use of hyper-heuristic approaches growing to obtain more generality. In this paper, an iterated local search (ILS) strengthened by a Q-learning-based hyper-heuristic is proposed for software modularization that overcomes the limitations of EAs. In the proposed algorithm, two main components of ILS, i.e., perturbation and local search components, are intelligently selected using a Q-learning-based hyper-heuristic in each iteration. The performance of the proposed algorithm is evaluated on eleven real-world software systems with small and medium sizes. The results of the experiments demonstrate that the proposed ILS produces modularizations that have higher or equal quality compared to the quality of the modularizations obtained by selected algorithms.

Keywords

Main Subjects



Articles in Press, Accepted Manuscript
Available Online from 19 July 2023
  • Receive Date: 11 March 2023
  • Revise Date: 13 May 2023
  • Accept Date: 14 July 2023