qpso(最新)..docVIP

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
qpso(最新).

基于QPSO算法的软件测试数据自动生成 李文瑞,张伟,任洪丽 摘要:针对目前进化算法生成测试数据方法存在算法复杂、参数设置不易、易陷入局部最优解等缺陷,提出了一种应用于软件测试中的基于量子粒子群算法(QPSO)的测试数据自动生成算法。该算法是在PSO算法基础上引入量子理论的思想。解决了PSO算法搜索空间有限,容易陷入局部最优解的问题。通过具体实验证明,该方法是有效可行的,其效率也明显高于GA算法和PSO算法。 关键字:软件测试;测试数据生成;粒子群算法;量子粒子群算法 0 引言 软件测试是软件开发过程中必须完成的重要活动之一,而测试数据的自动生成是软件测试的最关键的问题,可以有效的提高软件测试的效率。软件测试数据自动生成通常包括功能测试数据自动生成和结构测试数据自动生成,目前通过进化算法生成测试数据方面的研究取得的很大的进展。 文献[1]将遗传算法(GA)应用于面向对象软件的单元测试中,文献[2]提出“分支函数叠加法”来构造适应值函数。文献[3]对遗传算法在软件测试用例生成的性能进行研究,并提出了两种提高遗传算法生成测试用例效率的方法。文献[4]将把量子理论应用于PSO 算法中从而提出一种改进的粒子群优化算法。文献[7]在传统的遗传算法中注入免疫算子,提出了基于免疫遗传算法生成软件测试数据的方法。文献[8]提出一种基于PSO算法的软件测试数据生成方法。但是遗传算法及其改进算法都存在算法复杂、参数设置不易等问题,PSO算法具有搜索空间有限、容易陷入局部最优解的缺陷。本文提出一种基于QPSO的软件测试数据生成方法,并通过实验验证,其效率明显优于遗传算法和粒子群算法,解决了PSO算法容易陷入局部最优解的缺陷。 1 基本概念 1.1 粒子群算法 设Xi = ( xi1 , xi2 ,…, xin ) 为粒子i的当前位置;Vi = ( vi1 ,vi2 ,…, vin ) 为粒子i的当前飞行速度;Pi = ( pi1 , pi2 , …, pin ) 为粒子i所经历过的具有最好适应值的位置。Pg = ( pg1 , pg2 , …,pgn ) 为群体中所有粒子所经过的最好的位置( gbest)。ij (t+1) = wvij(t) + c1r1j(pij(t) - xij(t)) + c2r2(t)(pgj(t) - xij(t)) (1) xij(t+1) = xij(t) + vij(t+1) (2) 其中c1 , c2 为加速常数,w为惯性权重,r1 = ( r11 , r12 , ?, r1n ) , r2 = ( r21 , r22 ,?, r2n ) 为两两相互独立的[0, 1 ]范围内变化的随机数。 1.2 量子粒子群算法 文献[4]从量子力学的角度出发提出了一种新的PSO算法模型,认为粒子具有量子的行为,并根据这种模型提出了量子粒子群算法。,粒子的速度和位置是不能同时确定的,波函数ψx → t)来描述粒子的状态, 并通过求解薛定谔方程得到粒子在空间某一点出现的概率密度函数。随后通过蒙特卡罗随机模拟的方式得到粒子的位置方程为X(t) = P± (3) P = (4) 其中、、U是在(0,1)之间产生的随机数,在文献[3]中L被定义为: L ( t + 1) = 2 * β |m best - X ( t) | (5) m best = = (,,… ,) (6) 其中β称为收缩扩张系数,可控制算法的收敛速度。M 为群体中所含粒子的数目, D为粒子的维数,Pi为第i个粒子的 pbest。最后得到粒子的位置方程为: X(t+1) = P±β * |m best - X ( t) | * ln() (7) 在迭代过程中,±是由u 的大小决定的,当u 大于0.5 时,取-号,其他情况取+号。在QPSO算法中,粒子的状态只需要位置向量来描述,并且算法中只有一个控制参数β。 2 基于QPSO的软件测试数据自动生成系统 基于QPSO算法测试数据生成的系统模型可分为三部分:测试环境构造、量子粒子群算法包、测试运行环境。 测试模块输入的是输入空间D的参数集x(x1,x2,…, xn),输出用“分支函数叠加法”[6]构造的分值函数,对分支函数和适应值函数的插装。适应度值是衡量粒子个体优劣的指标,适应值函数的构造直接影响QPSO算

文档评论(0)

xznh + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档