Information Theoretic Objective Function for Genetic Software Clustering

Habib Izadkhah, Mahjoubeh Tajgardan
2019 Proceedings of 5th International Electronic Conference on Entropy and Its Applications   unpublished
Software clustering is usually used for program comprehension. Since it is considered to be the most crucial NP-complete problem, therefore, several genetic algorithms have been proposed to solve this problem. In the literature, there exist some objective functions (i.e., fitness function) which are used by genetic algorithms for clustering. These objective functions determine the quality of each clustering obtained in the evolutionary process of genetic algorithm in terms of cohesion and
more » ... ng. The major drawbacks of these objective functions are the inability to (1) consider utility artifacts, and (2) apply on another software graph such as artifact feature dependency graph. To overcome the existing objective functions limitations, this paper presents a new objective function. A new objective function is based on information theory, aiming to produce a clustering in which information loss is minimized. For applying the new proposed objective function, we have developed a genetic algorithm aiming to maximize the proposed objective function. The proposed genetic algorithm, named ILOF, has been compared to that of some other well-known genetic algorithms. The results obtained confirm the high performance of the proposed algorithm in solving nine software systems. The performance achieved is quite satisfactory and promising for the tested benchmarks.
doi:10.3390/ecea-5-06681 fatcat:cbnb4w4xjjbxhmrr3w2xm5kgc4