A multi-agent evolutionary algorithm for software module clustering problems

Jinhuang HUANG, Jing LIU, Xin YAO

Research output: Journal PublicationsJournal Article (refereed)peer-review

34 Citations (Scopus)


The aim of software module clustering problems (SMCPs) is to automatically find a good quality clustering of software modules based on relationships among modules. In this paper, we propose a multi-agent evolutionary algorithm to solve this problem, labeled as MAEA-SMCPs. With the intrinsic properties of SMCPs in mind, three evolutionary operators are designed for agents to realize the purpose of competition, cooperation, and self-learning. In the experiments, practical problems are used to validate the performance of MAEA-SMCPs. The results show that MAEA-SMCPs can find clusters with high quality and small deviations. The comparison results also show that MAEA-SMCPs outperforms two existing multi-objective algorithms, namely MCA and ECA, and two existing single-objective algorithms, namely GGA and GNE, in terms of MQ. © 2016, Springer-Verlag Berlin Heidelberg.
Original languageEnglish
Pages (from-to)3415-3428
Number of pages14
JournalSoft Computing
Issue number12
Early online date4 Feb 2016
Publication statusPublished - Jun 2017
Externally publishedYes

Bibliographical note

This work is partially supported by the EU FP7-PEOPLE-2009-IRSES project under Nature Inspired Computation and its Applications (NICaiA) (247619), the Outstanding Young Scholar Program of National Natural Science Foundation of China (NSFC) under Grant 61522311, the General Program of NSFC under Grant 61271301, the Overseas, Hong Kong and Macao Scholars Collaborated Research Program of NSFC under Grant 61528205, the Research Fund for the Doctoral Program of Higher Education of China under Grant 20130203110010, and the Fundamental Research Funds for the Central Universities under Grant K5051202052.


  • Modularization quality
  • Multi-agent evolutionary algorithm
  • Software module clustering


Dive into the research topics of 'A multi-agent evolutionary algorithm for software module clustering problems'. Together they form a unique fingerprint.

Cite this