欢迎来到天天文库
浏览记录
ID:31363464
大小:111.50 KB
页数:9页
时间:2019-01-09
《一种改进粒子群算法的测试数据自动生成方法》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、一种改进粒子群算法的测试数据自动生成方法 摘要:线性递减惯性权重粒子群算法中,搜索后期较小的惯性权重使粒子具有很强的局部搜索能力。但惯性权重太小,容易使所有的粒子聚在一起损失多样性,找到最优解的可能性较低,易产生早熟现象。提出了一种利用方差动态调整惯性权重的方法,引入基于适应度方差的惯性权重调整因子。当出现早熟现象时,通过调整因子适当增大惯性权重的值,以扩大搜索范围,增加找到最优解的可能性。当未出现早熟现象时,继续采用线性递减惯性权重策略,加快收敛速度。实验结果表明,该算法具有较高的搜索成功率。 关键词:惯性权重;早熟收敛;LDWPSO算
2、法;SPSO算法;搜索成功率 DOIDOI:10.11907/rjdk.161971 中图分类号:TP312 文献标识码:A文章编号文章编号:16727800(2016)009004603 基金项目基金项目: 作者简介作者简介:安新(1990-),女,山东泰安人,山东科技大学计算机科学与工程学院硕士研究生,研究方向为软件项目管理、软件测试;何明祥(1969-),男,安徽合肥人,博士,山东科技大学计算机科学与工程学院副教授、硕士生导师,研究方向为数据库系统、信息处理、人工智能、数字矿山。本文通讯作者为何明祥。9 0引言 软件测试是
3、发现软件缺陷的过程,贯穿于软件生命周期的各个阶段,是保证软件质量的重要手段。软件测试中大约40%的时间用在测试数据设计阶段[1]。随着软件复杂度和软件规模的增大,测试开销和工作量也相应增加,传统的手工生成测试数据已不能满足要求,测试数据自动生成对提高测试效率、减少测试开销具有重要意义。在对测试数据自动生成方法的研究中,粒子群算法以其设置参数少、简单易实现、收敛快而受到研究者的青睐。 Shi等[2]提出线性递减惯性权重策略,使得搜索初期,粒子具有较好的全局搜索能力,搜索后期具有较好的局部搜索能力。但后期过小的惯性权重容易使整个粒子群陷入早熟,
4、找到最优解的可能性较小;田甜等[3]提出一种非线性动态调整惯性权重策略,解决了线性递减权重策略中容易出现的早熟现象。 针对粒子群算法中易出现的早熟问题,本文提出一种基于方差的动态调整惯性权重的粒子群优化(FCWPSO)算法。算法思想为:总体上遵循线性递减惯性权重策略,当出现早熟现象时,通过调整因子适当增大惯性权重的值,跳出局部极值,扩大搜索范围,增加找到最优解的可能性。 1基本粒子群算法 粒子群优化(ParticleSwarmOptimization,PSO)算法由Eberhart9、Kennedy[3]于1995年提出,基本思想是研究
5、和模拟鸟类的觅食行为。每只鸟相当于一个粒子,属于问题的候选解,飞行空间相当于问题的搜索空间,捕食过程相当于寻找最优解的过程[4]。设粒子总数为N,起始状态为所有粒子被随机分配在D维搜索空间中,每个粒子均有一个D维位置向量Xi=(xi1,xi2,…,xiD)和一个D维速度向量Vi=(vi1,vi2,…,viD),每个粒子通过跟踪个体极值Pbesti=(pi1,pi2,…,piD)和全局极值Gbest=(g1,g2,…,gD)来更新自身的位置速度。个体极值是该粒子自身搜索到的历史最优值,全局极值是粒子群体搜索到的最优值。每个粒子通过不断更新自身位
6、置和速度找到最优解。位置和速度更新见式(1)、式(2)。 Vt+1i=wVti+C1Rand1()(Pbesti-Xti)+C2Rand2()(Gbest-Xti)(1) Xt+1i=Xti+Vt+1i(2) 其中:Vti、Xti分别为第t代中第i个粒子的速度和位置;Vt+1i、Xt+1i分别为第t+1代中第i个粒子的速度和位置;w为惯性权重,是保持原速度的系数;C1为粒子追随自身个体极值的权重,即粒子对自身的认识,一般设为2;C2为粒子追随粒子群全局极值的权重,即粒子对群体的认识,一般设为2;Rand1()、Rand2()为0到1之间
7、的随机数;Pbesti为第i个粒子的历史最优值;Gbest为群体的最优值。 2基于方差的动态调整惯性权重方案 2.1常用粒子群优化算法及存在问题 (1)简化粒子群优化(SPSO)算法。胡旺等[5]指出粒子群的进化过程与速度无关,速度大小可能导致粒子不能沿正确的进化方向运动,最终不能有效地找到最优解。因此,提出了无速度参数的简化粒子群优化(SimpleParticleSwarm9Optimization,SPSO)算法,如式(3)所示,避免了由速度导致的后期收敛慢、精度低的问题,且简化了粒子进化过程。 Xt+1i=wXti+C1Rand
8、1()(Pbesti-Xti)+C2Rand2()(Gbest-Xti)(3) (2)线性递减惯性权重粒子群优化(LDWPSO)算法。Shi等[2]指出惯性权重较
此文档下载收益归作者所有