摘要:
针对传统软件模块化指标在解决软件模块化问题时容易导致孤立簇(Isolated clusters)的问题,提出改进型软件模块化指标IMQ(Improved Modularization Quality)作为进化算法的适应函数以有效抑制孤立簇现象,并以IMQ最大化为目标建立软件模块化的数学规划模型,设计符合问题特点的基于相似度竞争和选择机制的改进遗传算法IGA求解该模型。首先运用边收缩方法的启发式策略生成高质量的初始解,并将其作为种子植入到初始种群中;然后利用IGA对模型进行求解,在提升搜索效率的同时进一步提高解的质量;最后运用真实数据和仿真数据进行对比实验。实验结果表明IMQ指标能有效降低孤立簇的数目,而IGA比传统的多点爬山算法(Improved Hill Climbing Algorithm, IHC)和基于GNE(Group Number Encoding)的遗传算法具有更强的寻优能力和鲁棒性。
中图分类号: