77范文网 - 专业文章范例文档资料分享平台

基于GA-PSO算法的路径测试数据自动生成(2)

来源:网络收集 时间:2021-01-20 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

PSO

第4期

周红,等:基于GA-PSO算法的路径测试数据自动生成

1367

遗传算法的基本步骤如下:

a)初始化产生问题解的初始种群;

b)计算种群适应度,如果找到最优解或迭代次数达到最大,则转到f);

c)选择操作;d)交叉操作;

e)变异操作,转向b);f)算法结束。

选择操作的方法有轮盘赌法、随机遍历抽样法、锦标赛选择法等,其中最常用的是轮盘赌法;交叉操作有单点交叉、多点交叉、均匀交叉等不同的交叉方法;变异操作随机选取符号串中的一个基因,并将其改变,以产生一个新的符号串。该操作将可变性引入群体,从而为逃离局部最优提供手段。1.2粒子群算法

粒子群算法(particl阜swarmoptimization,PSO)是由Eber-hart和Kennedy于1995年提出的一种源于对鸟类捕食行为的高效并行搜索寻优算法。PSO的基本算法流程如下:

a)在整个搜索空间上随机初始化整个粒子群的位置和速度,并计算每个粒子在当前位置处的适应度函数值兀,相应地初始化po诅=厶,po州=ma】【U,…Z,…Z),i=l,2,…,n。

b)在每次迭代过程中,每个粒子根据以下准则来更新自己的位置和速度。

出1=硝+cn(吨一*乞)+c2r2(出一吨)

(2)缸{蔓。芝:蔓

(3)z岔1=z乞+如

(4)并磊={

r玩一#乞>‰一

L—x抽z厶<一工缸

(5)

c)更新p:和p:。

d)如果满足中止准则,算法结束;否则,转向b)。

上述算法中以表示d维搜索空间中第i个粒子适应度函数值;丑表示第一次迭代前第i个粒子适应度函数值;pod表示

第一次迭代前整个种群d维搜索空间中的最佳位置。

式(2)为粒子速度更新准则,其中屹“表示d维搜索空间

中第i个粒子的第k+1代迭代速度;甜是惯性因子,一般采用

公式∞=∞一一I鼍急盖产获得,t表示当前代数,maxDT表示

最大迭代次数;c。、c:表示加速系数(或称学习因子),c。称为认知参数(cognitive),C:称为社会参数(social),分别调节向个体最好粒子和全局最好粒子方向飞行的最大步长;r。、r2为[O,1]之间的随机数。

式(4)为粒子位置更新准则,其中髫乞为所搜索的d维空间

中粒子i在第后次迭代中的当前位置;式(3)限制粒子的最大飞行速度;式(5)控制粒子的飞行范围。

2应用于测试数据自动生成的混合算法

软件测试数据自动生成方法一般可以分成功能测试数据自动生成方法和结构测试数据自动生成方法。本文结合遗传算法和粒子群算法的思想和各自的特性,将两者进行有机结合形成两者的混合算法GA-Pso算法,并将该算法应用于结构测试数据自动生成过程中。相应的流程如图l所示。

万 

方数据算法生成测试数据的步骤如下:

a)初始化种群。随机产生一定数目的初始种群,设为只,遗传算法作用于该种群。初始化种群P2={咖},用于粒子群算法运算,初始值为空。

b)计算种群P,适应度函数值。根据构造的适应度函数,分别计算每个粒子的适应度函数值。适应度值反映的是粒子实际经过路径与目标路径的距离。若实际路径满足条件,完全覆盖目标路径或者迭代次数达到最大,则转g)。

c)划分种群。按照适应度大小对P,中的粒子进行排序,筛选出种群P,中粒子基因较好的个体,即适应度值大的粒子,以中比例选取部分粒子加入到种群P2。

d)改进种群P2个体。对种群P2采用粒子群算法,根据自身和全局最优粒子更新种群P2,得到新的种群P2。计算更新后的种群P2所有粒子的适应度函数,判断是否找到最优解或迭代次数达到最大,若找到则转g)。

e)重构种群P。。除去迁移到P2中参加粒子群算法的粒子,随机产生函比例的粒子补充进入P,。补充币比例的粒子是为了保持参加遗传算法粒子的个数固定。

f)改进种群P。个体。种群P。采用遗传算法寻优,按照选择、交叉、变异方式得到新一代种群P。,转到b)。

g)输出最优解,算法结束。

3实验结果与分析

3.1

测试数据自动生成模型

GA—PSO算法测试数据生成的模型主要包括两个模块,即

测试环境构造模块和GA.PSO算法运行模块。模型结构如图2所示。

右侧GA-PSO算法包是系统的核心部分,它随机地产生第一代种群,按照输入参数的编码方式将种群中的粒子映射成实际参数值,并传递给左侧的驱动程序,驱动被测单元运行。被测单元运行时计算出当前测试数据的适应函数值返回给右侧的GA.PSO算法包,算法包据此来评价种群中每个粒子的优劣,评估每个粒子的适应度,若有满足要求的粒子则输出最优解,否则通过GA—PSO算法形成新一代种群,如此往复,直至找到覆盖选定路径的测试数据。左侧的测试环境构造模块利用程序插装技术,在被测程序源代码级插入用于评估当前输入参数值的适应度函数,并将适应度值返回GA—PSO算法包。本文中适应度函数采用分支函数叠加法构造,相关内容在3.3节介绍。

3.2测试实例

首先采用常用测试函数Rastrigin作为测试对象,f(x)=

^一l

三茗;一lOcos(21vxl)+lo(一10≤聋‘≤10),这是一个多峰函数,

最优值接近原点,基本遗传算法的寻优值为49.4664,基本粒子群算法的寻优值为49.3212,混合算法的寻优值为O,说明

混合算法的寻优能力更强。

其次本文选择具有代表性的三角形类型判别程序作为测试实例。因为该实例包含了清晰而又复杂的逻辑,是很多测试问题的首选程序。三角形判别程序总共包含三个输入变量(聋,Y,z),这个简单例子的程序如下:

public

void砸angIe(hat

x,inty。int

z)

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库基于GA-PSO算法的路径测试数据自动生成(2)在线全文阅读。

基于GA-PSO算法的路径测试数据自动生成(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/jiaoyu/1179105.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: