摘要
对多目标软件模块聚类问题进行研究,提出一种基于改进的非支配排序遗传算法(Non dominated Sorting Genetic Algorithm-Ⅱ,NSGA-Ⅱ)(GNSGA-Ⅱ)多目标软件模块聚类算法。利用软件模块质量(Modularization Quality,MQ)与非孤立分布(Non-isolated Distribution,NSD)两个目标,将软件模块聚类建立为多目标优化模型。在NSGA-Ⅱ算法的基础上引入外部存档用以存放搜索到的非支配个体,使得迭代NSGA-Ⅱ过程中能够同步更新外部存档,保留精英解,改善解集分布差,提高算法的多样性。实验结果表明,相较于NSGA-Ⅱ算法、分组遗传算法(Grouping Gene-tic Algorithm,GGA)和爬山算法(Hill Climbing,HC),所提算法获得的各系统模块聚类结果的软件模块质量和非孤立分布平均提高1.18倍和1.02倍,聚类结果更好。
For multi-objective software module clustering problem,a multi-objective software module clustering algorithm based on NSGA-Ⅱ(GNSGA-Ⅱ)is proposed.Using the two objectives of non-isolated distribution and Modularization Quality(MQ),the software module clustering is established as a multi-objective optimization model.Based on the NSGA-Ⅱalgorithm,an external archive is introduced to store the searched non-dominated individuals,so that the external archive can be updated synchronously in the iterative process,the elite solution can be preserved,the poor distribution of the solution set can be improved,and the diversity of the algorithm can be increased.The experiment results show that compared with NSGA-Ⅱ algorithm,grouping genetic algorithm(GGA)and hill climbing(HC),the software module quality and non-isolated distribution of the clustering results of each system module obtained by the proposed algorithm have an average improvement of 1.18 times and 1.02 times,and the clustering results are better.
作者
孙家泽
张凡
SUN Jiaze;ZHANG Fan(School of Computer Science and Technology,Xi'an University of Posts and Telecommunications,Xi'an 710121,China)
出处
《西安邮电大学学报》
2022年第3期69-76,共8页
Journal of Xi’an University of Posts and Telecommunications
基金
陕西省重点研发计划项目(2020GY-010)
西安市科技计划项目(2019218114GXRC017CG018-GXYD17.10)。
关键词
软件重构
软件模块化
多目标软件模块聚类
非支配排序遗传算法
非孤立分布
software reconstruction
software modularization
multi-objective software module clustering
non-dominated sorting genetic algorithm-Ⅱ
non-isolated