CORC  > 中国矿业大学(徐州)
基于协同进化的并行程序路径覆盖测试数据生成方法
巩敦卫 ; 田甜 ; 姚香娟 ; 秦备 ; 吴川 ; 张功杰 ; 钟超群 ; 陈永伟 ; 王金鑫
2015-09-06 ; 2015-09-06
关键词协同进化 并行程序 路径覆盖 测试数据
中文摘要基于协同进化的测试数据生成方法,旨在提供一种能够高效生成覆盖并行程序目标路径的测试数据自动生成方法,具体步骤如下:(1)建立测试数据生成问题的数学模型,将并行程序路径覆盖测试数据生成问题建模为一个单目标优化问题;(2)设计协同进化遗传算法求解上述模型。该方法根据进程路径与程序输入分量的相关性,将种群划分为多个子种群和一个合作团体群。每个子种群独立优化某一进程路径相关的部分输入分量。当进化到一定周期后,子种群的优良个体组合形成合作团体群的初始个体,用以优化完整的程序输入。当合作团体群进化到一定周期后,向子种群返回优良个体。通过合作团体群和子种群的交替协同进化,生成期望的测试数据。; 专利类型: 发明专利 申请(专利)号: CN201410155745.5 申请日期: 2014年4月17日 公开(公告)日: 2014年7月2日 公开(公告)号: CN103902457A 主分类号: G06F11/36,G06F11/00,G,G06,G06F,G06F11 分类号: G06F11/36,G06F11/00,G06N3/12,G06N3/00,G,G06,G06F,G06N,G06F11,G06N3,G06F11/36,G06F11/00,G06N3/12,G06N3/00 申请(专利权)人: 中国矿业大学 发明(设计)人: 巩敦卫,田甜,姚香娟,秦备,吴川,张功杰,钟超群,陈永伟,王金鑫 主申请人地址: 221116 江苏省徐州市中国矿业大学信电学院 国别省市代码: 江苏;32 主权项: 基于协同进化的并行程序路径覆盖测试数据生成方法,其特征在于步骤如下: 步骤1.1:针对并行程序,建立了路径覆盖测试数据生成问题的数学模型,其特征在于采用某一输入数据的穿越路径与目标路径的相似度作为目标函数,以体现符合要求的测试数据应该具备的条件,由于并行程序的多进程并行执行,一条并行程序路径包含多条进程路径,并行程序两条路径之间的相似度,需要综合考虑多条进程路径之间的相似度,以最大化测试数据穿越路径与目标路径的相似度为目标,建立并行程序路径覆盖测试数据生成问题的数学模型如下: 其中,是由程序的输入变量构成的决策向量,为体现两条并行程序路径相似度的目标函数,D为程序的输入空间,也称为决策空间;步骤1.2:针对步骤1.1建立的数学模型,设计了一种基于协同进化的求解方法,为每个种群设计不同的适应度函数,给出合作团体群个体的构成方式,基于此,能够通过子种群和合作团体群等两类种群的交替协同进化,优化数学模型,其特征在于包含如下步骤: 步骤1.2.1:设计适应度函数,对于子种群Mi,个体穿越进程路径pi与目标进程路径p*i的相似度s(p*i,pi)越大,越接近于期望的测试数据对应p*i的分量,从而的质量越高,特别的,如果s(p*i,pi)=1,那么,pi即为目标进程路径,从而即为期望的测试数据对应p*i的分量。根据进程路径相似度的定义,衡量性能的适应度函数Fi表示为:对于合作团体群GM,个体穿越路径p与目标路径p*的相似度s(p*,p)越大,越接近于期望的测试数据,从而的质量越高;特别的,如果s(p*,p)=1,那么,p即为目标路径,从而即为期望的测试数据,通过综合考量多个进程路径的相似度,衡量性能的适应度函数表示为:步骤1.2.2:构成合作团体群,基于子种群的优良代表个体,组成尽可能有效的初始合作 团体,将每一个代表个体与所有其他代表个体进行组合,形成多个候选合作团体,并设置筛选条件为:合作团体中至少包含一个完整的代表个体,根据该条件,在产生的候选团体中,选择合适的合作团体,另外,也可以使用其他更严格的条件,来进一步改善初始合作团体群的质量,针对每个子种群的代表个体,具体步骤如下: 首先,求决策变量与子种群进化的决策分量集合的差集;然后,从其他子种群的代表个体中,提取与差集分量相关的值,扩展被差决策分量集合对应子种群的代表个体,从而产生合作团体群的进化个体;此外,为了产生新的进化个体,求两子种群进化的决策分量集合的交集,并从其他子种群的代表个体中,提取与交集分量相关的值,替换已产生的进化个体的相应值;若产生的进化个体不同于已存在的进化个体,且在进化个体中,至少包含1个完整的代表个体,那么,将该进化个体加入到合作团体群中; 步骤1.3:采用协同进化遗传算法生成覆盖并行程序目标路径的测试数据,其特征在于给出了合作团体群和子种群协作进化的实现方式,具体如下: 子种群只优化与某一进程子路径有关的决策分量,在进化过程中的每一代,以解码后的进化个体作为该进程的输入,执行该进程获得穿越路径,考虑个体穿越路径和目标进程路径,根据适应度函数得到个体的适应度,当到达指定的进化周期时,子种群根据适应度,选择一定数量的优良个体组成代表个体集合发送给合作团体群,并等待接收合作团体群返回的优良个体,如果接收到的个体为空,表示已经找到了期望的测试数据,进化终止,否则,实施遗传操作生成子代种群继续进化; 合作团体群收到各子种群发送来的代表个体后,根据合作团体群的构成方法将它们进行组合,形成本种群的初始进化个体,在给定周期的每一代进化中,解码进化个体作为整个并行程序的输入,通过执行整个程序得到穿越路径,由个体穿越路径和目标路径,根据合作团体群的适应度函数得到个体的适应度,若有个体的适应度为1,也就是说,该个体为期望的测试数据,输出个体,终止进化,同时给子种群发送空信息,终止所有种群的进化,否则实施遗传操作,生成子代种群,当到达进化周期时,根据每个子种群进化的决策分量,将优势个体进行划分,并发送到相应的子种群中。 法律状态: 公开 ,公开 ,公开 ,实质审查的生效 ,实质审查的生效 ,实质审查的生效
语种中文
内容类型其他
源URL[http://ir.calis.edu.cn/hdl/232060/11889]  
专题中国矿业大学(徐州)
推荐引用方式
GB/T 7714
巩敦卫,田甜,姚香娟,等. 基于协同进化的并行程序路径覆盖测试数据生成方法. 2015-09-06, 2015-09-06.
个性服务
查看访问统计
相关权益政策
暂无数据
收藏/分享
所有评论 (0)
暂无评论
 

除非特别说明,本系统中所有内容都受版权保护,并保留所有权利。


©版权所有 ©2017 CSpace - Powered by CSpace