CN104765690B - 基于模糊遗传算法的嵌入式软件测试数据生成方法 - Google Patents
基于模糊遗传算法的嵌入式软件测试数据生成方法 Download PDFInfo
- Publication number
- CN104765690B CN104765690B CN201510191411.8A CN201510191411A CN104765690B CN 104765690 B CN104765690 B CN 104765690B CN 201510191411 A CN201510191411 A CN 201510191411A CN 104765690 B CN104765690 B CN 104765690B
- Authority
- CN
- China
- Prior art keywords
- msub
- mrow
- dispersion
- entropy
- test data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Measuring Or Testing Involving Enzymes Or Micro-Organisms (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
基于模糊遗传算法的嵌入式软件测试数据生成方法,涉及一种测试数据生成方法。为了解决现有的测试数据生成方法生成的测试数据集规模较大导致的生成时间较长的问题。本发明对遗传算法进行改进,利用模糊控制方法,通过种群熵和离散度自适应地控制遗传过程中遗传算子的选取,在种群多样性变差时增大交叉概率和变异概率,使得种群朝全局最优的方向进化,以缩小测试数据的规模;然后利用蚁群算法对生成的组合测试数据按照较大的离散度进行排序,以增大测试参数相邻测试数据取值间的“距离”,从全部组合测试数据的最优路径排序中选出大离散度的测试数据排序作为最后的嵌入式软件测试数据输出。本发明适用于嵌入式软件测试数据生成。
Description
技术领域
本发明涉及一种测试数据生成方法。
背景技术
软件的错误通常是由少数几个参数的相互作用导致的,与某些输入参数取值的先后顺序有关,尤其是当参数取值发生跳变时,更易引起软件错误。研究发现,单个参数引发的软件错误只占总体的20%-40%,而由两个参数相互作用引发的软件错误可达到总体的70%,由三个参数引起的软件错误可达到总体的90%左右。随着参数个数的增大,测试数据的规模及算法复杂程度呈指数增长,因此,两两组合测试技术一直组合测试领域中的研究热点。
作为一种特殊形式的软件,嵌入式软件具有实时性强、可靠性要求高等特点,因此,对其进行深入测试尤为必要。将组合软件测试方法应用于嵌入式软件测试,可通过硬件接口自动注入测试数据、自动获取测试结果,实现嵌入式软件的自动化高覆盖率测试。测试数据生成是嵌入式软件测试中的重要环节,也是组合测试研究的热点。目前的数据生成方法主要分为代数构造法、贪心算法和启发式智能算法等。在代数构造法中主要的方法是正交设计法和TCconfig法;贪心算法主要包括AETG、TCG和IPO等方法;而蚁群算法(AntColony Algorithm)、粒子群群算法(Particle Swarm Optimization)和遗传算法(GeneticAlgorithm)等则属于智能算法。相对于贪心算法,启发式搜索算法能够给出较优的结果,但是大多数启发式算法需要进行多次矩阵搜索,运行时间较长。
遗传算法在组合测试数据的生成中被广泛应用,但是遗传算法容易陷入局部最优,从而导致生成的测试数据集规模较大,时间较长。
发明内容
本发明为了解决现有的测试数据生成方法生成的测试数据集规模较大导致的生成时间较长的问题。
1、基于模糊遗传算法的嵌入式软件测试数据生成方法,包括以下步骤:
嵌入式软件中的一条测试数据T=(a1,a2,…,ak)即可认为是一条染色体,aip∈[0,vip-1],(ip=1,2,...,k),测试数据T中第ip个参数的取值aip认为是染色体上的第ip个基因,集合vip为该基因所属的基因库,k为一条染色体上的基因个数;
设当前已有的测试数据集合为A,未被A覆盖的全部t维交互所组成的集合为Q,即I是t维交互,Ht嵌入式软件的测试系统全部t维交互,测试数据Tin中的全部交互,Tin是A中的一条测试数据,其适应值计算函数定义为:
步骤1.1:输入交互维度t,染色体进化代数Mg,染色体组规模Ng;第ip个参数的取值区间为[0,vip-1],1≤ip≤k,k为一条染色体上的基因个数;令当前进化代数m=0,测试数据集A=Φ,未被覆盖t维组合集Q为全部k个参数的t维取值集合;
步骤1.2:初始化染色体组,随机为每一条染色体的基因赋初始值;
步骤1.3:计算每条染色体的适应值,然后按照适应值从小到大进行排序,记为第ix条染色体的适应值,ix∈Ng,生成随机数p∈[0,1],如果则认为第n条染色体为自然选择的结果,循环Ng次,选择出新的Ng条染色体,作为新的染色体组;
步骤1.4:对种群Ng的染色体进行随机配对,每一对染色体生成随机数q∈[1,k],对q位置的基因按照概率pc进行交叉,生成新的染色体组;
步骤1.5:对步骤1.4生成新的染色体组中每一条染色体生成随机数q∈[1,k],对q位置的基因按照概率pm进行变异;
步骤1.6:为每一条染色体计算适应值,判断种群最大适应值是否为如果是,进入步骤1.7;如果不是,则判读m是否等于Mg,如果相等则跳到步骤1.7,否则令m=m+1,跳到步骤1.3;
步骤1.7:将适应值最大的染色体放入A,移除Q中已被适应值最大的染色体覆盖的t维组合,判断Q是否为空,如果为空,则输出A结束,否则跳到步骤1.2;
步骤2.1:输入测试数据集A,蚁群规模Ma,迭代次数Na;为每一只蚂蚁AntH,H∈[1,Ma],随机设定初始城市的位置,即A中的某条数据;
步骤2.2:依次为每一只蚂蚁选择下一个城市,按照第W只蚂蚁的Jw(i)依次计算转移概率,按照转移概率由小到大对城市进行排序,随机生成pa∈[0,1],计算当CR>Pa时,蚂蚁H将选取城市CR作为所要去的城市;
步骤2.3:判断全部蚂蚁是否已经走完全部城市,如果没有完成,则跳到步骤2.2继续完成;若完成,则记录最优路径的城市排序,更新信息素τij;判断蚁群遍历全部城市的次数是否达到Na,若满足跳到步骤2.4,否则跳到步骤2.1;
步骤2.4:从全部的最优路径城市排序中选出最大距离,即最大离散度的城市排序作为最后的排序结果A'输出。
本发明具有以下有益效果:
本发明对遗传算法进行改进,利用模糊控制方法,通过种群熵和离散度自适应地控制遗传过程中遗传算子的选取,在种群多样性变差时增大交叉概率和变异概率,使得种群朝全局最优的方向进化,以缩小测试数据的规模,减少测试数据的生成时间。相比传统的方法,本发明可以减少测试数据的生成时间3.53-91.12%。而且本发明为了能够尽可能有效地发现软件错误,利用蚁群算法对生成的组合测试数据按照较大的离散度进行排序,以增大测试参数相邻测试数据取值间的“距离”,进一步提高嵌入式软件的故障发现概率。
附图说明
图1为本发明流程图;
图2为熵隶属度函数曲线图;
图3为离散度隶属度函数曲线图。
具体实施方式
具体实施方式一:基于模糊遗传算法的嵌入式软件测试数据生成方法,相关概念如下:
(一)遗传算法的相关概念如下:
(1)染色体
嵌入式软件中的一条测试数据T=(a1,a2,…,ak)即可认为是一条染色体,aip∈[0,vip-1],(ip=1,2,...,k),测试数据T中第ip个参数的取值aip认为是染色体上的第ip个基因,集合vip为该基因所属的基因库,k为一条染色体上的基因个数;染色体在变异的过程中处于某个位置的基因将从基因库中选择新的基因进行变异;
(2)适应值函数
设当前已有的测试数据集合为A,未被A覆盖的全部t维交互所组成的集合为Q,即I是t维交互,Ht嵌入式软件的测试系统全部t维交互,测试数据Tin中的全部交互,Tin是A中的一条测试数据,其适应值计算函数定义为:当Q=Φ时认为当前测试数据集合A中包含了全部t维交互,A成为t维覆盖数组,至此遗传算法执行完毕;
(3)优秀种群
当一个进化周期结束后,按照one-test-at-one-time策略从测试数据集中选择一条适应值最大的测试数据T添加到已有测试数据集A中,然后从集合Q中移除被A覆盖的全部t维交互,即如果v1,...,vt表示k个参数中的t个,av1,...,avt表示对应参数v1,...,vt的取值,则从Q中移除I;
重新计算除T之外的全部测试数据集的适应值,选择适应值最大的测试数据y保留至下一代;这样y被认为是除了T之外的最优测试数据,将y保留至下一代有助于种群的快速成熟,这样在其余种群进化Mg次时,y已经进化了2Mg次,有助于y向全局最优进化;
(4)种群熵
若第m代种群中有R个子集,各个子集所包含的个体数目分别为且Bm为第m代种群的集合,则种群熵定义为:
式中:irr∈[1,R];N为种群的规模;当R=1时,SN=0;当R=N时,SN=1;熵体现的是种群集合中不同类型个体的分布情况,种群中不同类型的个体越多,种群的熵就越大,种群的多样性就越好;
(5)种群离散度
根据测试数据T1和T2间的离散度定义种群的离散度为:
式中:ird1,ird2∈[1,R]且ird1≠ird2为子集和离散度的权重,当R=1时,DN=0;当R=N时,DN=1;种群的离散度同样可以对种群的多样性进行描述,当种群中的不同类型个体越多时,种群的离散度就越大,种群的多样性就越好;
(6)熵隶属度函数
熵隶属度函数采用如下规则:
根据熵值SN和熵的模糊标记确定熵的模糊标记的小、中、大;
分别根据 和绘制四条熵隶属度函数图像;
熵的模糊标记为小对应函数图像的熵隶属度函数值;
熵的模糊标记为中对应和函数图像的熵隶属度函数值;
熵的模糊标记为大对应函数图像的熵隶属度函数值;
(7)离散度隶属度函数
离散度隶属度函数采用如下规则:
根据离散度值DN和离散度的模糊标记确定离散度的模糊标记的小、中、大;
分别根据 和绘制四条离散度隶属度函数图像;
离散度的模糊标记为小对应函数图像的离散度隶属度函数值;
离散度的模糊标记为中对应和函数图像的离散度隶属度函数值;
离散度的模糊标记为大对应函数图像的离散度隶属度函数值;
(8)模糊规则
表1遗传算子模糊规则
离散度模糊标记为小且熵模糊标记为小,模糊规则差;离散度模糊标记为中且熵模糊标记为小,模糊规则差;离散度模糊标记为小且熵模糊标记为中,模糊规则差;
离散度模糊标记为大且熵模糊标记为小,模糊规则良;离散度模糊标记为中且熵模糊标记为中,模糊规则良;离散度模糊标记为小且熵模糊标记为大,模糊规则良;
离散度模糊标记为大且熵模糊标记为中,模糊规则优;离散度模糊标记为大且熵模糊标记为大,模糊规则有;离散度模糊标记为中且熵模糊标记为大,模糊规则优;
(9)模糊推理
种群的多样性为优时,即模糊规则为优时,交叉和变异应以小概率进行;种群的多样性为差时,即模糊规则为差时,种群应以较大的交叉和变异概率进行进化;其它情况认为种群的多样性良好,即模糊规则为良时,以较为合适的概率进行进化;
分别取熵隶属度函数图像和离散度隶属度函数图像上的值,进行组合按照最小值法推理隶属度;即:选取熵的模糊标记为小、中、大对应的不为零的熵隶属度函数值,记为选取离散度的模糊标记为小、中、大对应的不为零的离散度隶属度函数值,记为分别进行组合,按照得到最小值隶属度作为模糊规则的隶属度;模糊规则差、良、优中的结果存在一个或者多个,对应存在的模糊规则的隶属度记为μC(zl),zl为模糊规则差、良、优的隶属度的权值。
(二)蚁群算法相关概念如下:
蚁群算法广泛应用于路径寻优的问题中,每一条测试数据就相当于一个将要去的城市,对全部的测试数据的排序就相当于将所要去的全部城市进行排序一样,对城市的排序是按照路径最小原则,而对于测试数据集的排序则依赖离散度最大原则;
设经过遗传算法生成的测试数据集为A,且T1≠T2,则T1和T2之间的距离就是它们的离散度在蚁群算法中每一条测试数据(T1或T2)即为蚂蚁所在的城市;
按照蚁群算法的转移概率计算蚂蚁的下一个城市,第H只蚂蚁由城市Cf到Cb的转移概率为:
式中,JH(Cf)表示蚂蚁H在第Cf个城市允许转移到的城市的集合JH(Cf)=A-tabuH,tabuH表示蚂蚁H已经到过的城市;表示启发因子,此处为Cf到Cb之间路径的距离;α表示信息素相对重要的程度,β表示启发因子相对重要的程度;表示路径Cf到Cb的信息素大小,其更新公式为:
式中,ρ为信息素挥发系数,1-ρ为信息素残留因子,表示信息素的更新值,Cm表示蚂蚁个数,其计算公式为:
式中,Qm为常数,LH为表示第H只蚂蚁在本次周游过程中走过的长度的倒数,lH表示第H只蚂蚁在本次迭代中走过的路线;若第H只蚂蚁在其走过的路线中存在Cf→Cb,则在信息素更新时
基于模糊遗传算法的嵌入式软件测试数据生成方法,包括以下步骤:
嵌入式软件中的一条测试数据T=(a1,a2,…,ak)即可认为是一条染色体,aip∈[0,vip-1],(ip=1,2,...,k),测试数据T中第ip个参数的取值aip认为是染色体上的第ip个基因,集合vip为该基因所属的基因库,k为一条染色体上的基因个数;
设当前已有的测试数据集合为A,未被A覆盖的全部t维交互所组成的集合为Q,即I是t维交互,Ht嵌入式软件的测试系统全部t维交互,测试数据Tin中的全部交互,Tin是A中的一条测试数据,其适应值计算函数定义为:
步骤1.1:输入交互维度t,染色体进化代数Mg,染色体组规模Ng;第ip个参数的取值区间为[0,vip-1],1≤ip≤k,k为一条染色体上的基因个数;令当前进化代数m=0,测试数据集A=Φ,未被覆盖t维组合集Q为全部k个参数的t维取值集合;
步骤1.2:初始化染色体组,随机为每一条染色体的基因赋初始值;
步骤1.3:计算每条染色体的适应值,然后按照适应值从小到大进行排序,记为第ix条染色体的适应值,ix∈Ng,生成随机数p∈[0,1],如果则认为第n条染色体为自然选择的结果,循环Ng次,选择出新的Ng条染色体,作为新的染色体组;
步骤1.4:对种群Ng的染色体进行随机配对,每一对染色体生成随机数q∈[1,k],对q位置的基因按照概率pc进行交叉,生成新的染色体组;
步骤1.5:对步骤1.4生成新的染色体组中每一条染色体生成随机数q∈[1,k],对q位置的基因按照概率pm进行变异;
步骤1.6:为每一条染色体计算适应值,判断种群最大适应值是否为如果是,进入步骤1.7;如果不是,则判读m是否等于Mg,如果相等则跳到步骤1.7,否则令m=m+1,跳到步骤1.3;
步骤1.7:将适应值最大的染色体放入A,移除Q中已被适应值最大的染色体覆盖的t维组合,判断Q是否为空,如果为空,则输出A结束,否则跳到步骤1.2;
步骤2.1:输入测试数据集A,蚁群规模Ma,迭代次数Na;为每一只蚂蚁AntH,H∈[1,Ma],随机设定初始城市的位置,即A中的某条数据;
步骤2.2:依次为每一只蚂蚁选择下一个城市,按照第W只蚂蚁的Jw(i)依次计算转移概率,按照转移概率由小到大对城市进行排序,随机生成pa∈[0,1],计算当CR>Pa时,蚂蚁H将选取城市CR作为所要去的城市;
步骤2.3:判断全部蚂蚁是否已经走完全部城市,如果没有完成,则跳到步骤2.2继续完成;若完成,则记录最优路径的城市排序,更新信息素τij;判断蚁群遍历全部城市的次数是否达到Na,若满足跳到步骤2.4,否则跳到步骤2.1;
步骤2.4:从全部的最优路径城市排序中选出最大距离,即最大离散度的城市排序作为最后的排序结果A'输出。
具体实施方式二:本实施方式所述的步骤1.4中采用模糊推理的方法求解pc,包括以下步骤:
1.4.1:模糊化:根据种群集合按照隶属度函数计算种群的熵和离散度隶属度,并根据熵和离散度隶属度值激活模糊规则;
1.4.2:模糊推理:根据种群的熵和离散度隶属度值,按照最小值法推理被激活的模糊规则的隶属度;
1.4.3:去模糊化:根据不同模糊规则的隶属度,采用加权平均法精确计算交叉概率。
其他步骤和具体参数与具体实施方式一相同。
具体实施方式三:本实施方式所述的步骤1.4.1中计算种群的熵和离散度隶属度的过程为:
若第m代种群中有R个子集,各个子集所包含的个体数目分别为且Bm为第m代种群的集合,则种群熵定义为:
式中:irr∈[1,R];N为种群的规模;当R=1时,SN=0;当R=N时,SN=1;
根据测试数据T1和T2间的离散度定义种群的离散度为:
式中:ir1,ir2∈[1,R]且ir1≠ir2为子集和离散度的权重,当R=1时,DN=0;当R=N时,DN=1。
其他步骤和具体参数与具体实施方式一或二相同。
具体实施方式四:本实施方式所述的步骤1.4.1中熵隶属度函数值、离散度隶属度函数值以及模糊规则确定的步骤如下:
熵隶属度函数采用如下规则:
根据熵值SN和熵的模糊标记确定熵的模糊标记的小、中、大;
分别根据
和绘制四条熵隶属度函数图像,如图2所示;
熵的模糊标记为小对应函数图像的熵隶属度函数值;
熵的模糊标记为中对应和函数图像的熵隶属度函数值;
熵的模糊标记为大对应函数图像的熵隶属度函数值;
离散度隶属度函数采用如下规则:
根据离散度值DN和离散度的模糊标记确定离散度的模糊标记的小、中、大;
分别根据
和绘制四条离散度隶属度函数图像,如图3所示;
离散度的模糊标记为小对应函数图像的离散度隶属度函数值;
离散度的模糊标记为中对应和函数图像的离散度隶属度函数值;
离散度的模糊标记为大对应函数图像的离散度隶属度函数值;
模糊规则采用如下:
离散度模糊标记为小且熵模糊标记为小,模糊规则差;离散度模糊标记为中且熵模糊标记为小,模糊规则差;离散度模糊标记为小且熵模糊标记为中,模糊规则差;
离散度模糊标记为大且熵模糊标记为小,模糊规则良;离散度模糊标记为中且熵模糊标记为中,模糊规则良;离散度模糊标记为小且熵模糊标记为大,模糊规则良;
离散度模糊标记为大且熵模糊标记为中,模糊规则优;离散度模糊标记为大且熵模糊标记为大,模糊规则有;离散度模糊标记为中且熵模糊标记为大,模糊规则优。
其他步骤和具体参数与具体实施方式一至三之一相同。
具体实施方式五:本实施方式所述的步骤1.4.2的步骤为:
种群的多样性为优时,即模糊规则为优时,交叉和变异应以小概率进行;种群的多样性为差时,即模糊规则为差时,种群应以较大的交叉和变异概率进行进化;其它情况认为种群的多样性良好,即模糊规则为良时,以较为合适的概率进行进化;
分别取熵隶属度函数图像和离散度隶属度函数图像上的值,进行组合按照最小值法推理隶属度;即:选取熵的模糊标记为小、中、大对应的不为零的熵隶属度函数值,记为选取离散度的模糊标记为小、中、大对应的不为零的离散度隶属度函数值,记为分别进行组合,按照得到最小值隶属度作为模糊规则的隶属度;模糊规则差、良、优中的结果存在一个或者多个,对应存在的模糊规则的隶属度记为μC(zl),zl为模糊规则差、良、优的隶属度的权值。
其他步骤和具体参数与具体实施方式一至四之一相同。
具体实施方式六:本实施方式所述的步骤1.4.2所述的模糊规则差、良、优的隶属度的权值中概率的论域是[0,1],模糊规则差、良、优对应的权值为1、0.5、0。
其他步骤和具体参数与具体实施方式一至五之一相同。
具体实施方式七:本实施方式所述的步骤1.5中pm的求解过程与pc一样。
其他步骤和具体参数与具体实施方式一至六之一相同。
具体实施方式八:本实施方式所述的步骤2.2中的的求解过程为:
按照蚁群算法的转移概率计算蚂蚁的下一个城市,第H只蚂蚁由城市Cf到Cb的转移概率为:
式中,JH(Cf)表示蚂蚁H在第Cf个城市允许转移到的城市的集合,JH(Cf)=A-tabuH,tabuH表示蚂蚁H已经到过的城市;表示启发因子,此处为Cf到Cb之间路径的距离;α表示信息素相对重要的程度,β表示启发因子相对重要的程度;表示路径Cf到Cb的信息素大小,其更新公式为:
式中,ρ为信息素挥发系数,1-ρ为信息素残留因子,表示信息素的更新值,Cm表示蚂蚁个数,其计算公式为:
式中,Qm为常数,LH为表示第H只蚂蚁在本次周游过程中走过的长度的倒数,lH表示第H只蚂蚁在本次迭代中走过的路线;若第H只蚂蚁在其走过的路线中存在Cf→Cb,则在信息素更新时
其他步骤和具体参数与具体实施方式一至七之一相同。
实施例
通过仿真实验将本发明与其它多种启发式算法进行比较,选择几种典型的待测系统,利用本发明成测试数据集,并对测试数据集规模和算法效率与其它算法进行比较。比较结果如表2和表3所示。本发明用FGA(Fuzzy Genetic Algorithm)表示,比较的对象有SA(模拟退火)方法、GA(遗传算法)方法、ACA(蚁群算法)方法、CE(交叉熵算法)方法,AETG测试工具及PSO算法;
表2对于典型测试系统测试数据集规模比较
表3对于典型测试系统算法执行时间比较
注:实验环境和编程方法:①C++,Linux,INTEL Pentium IV 1.8GHz;②C,WindowsXP,INTEL Pentium IV 2.26GHz;③Matlab,Windows XP,INTEL Core(TM)2 2.66GHz;④.C++,Windows XP,INTEL Core(TM)2 2.5GHz.
由表2和表3可以看出,对于上述几种典型的测试系统,本发明主要优势是在算法执行效率方面,所需运算时间上明显较其它算法少。在软件系统规模较小时,本发明所生成测试数据集规模与其他的测试工具相差不大,在规模较大的系统下,会产生更优的结果,
为消除实验环境和编程方法对结果的影响,在与本发明相同实验环境下,实现了基于PSO的测试数据生成算法,并对生成测试数据集规模和算法执行时间进行分析。本发明中,取群体规模Ng=500,迭代次数Mg=20。实验结果如表4和表5所示,其中,试验环境为C++,Windows XP,INTEL Core(TM)2 2.5GHz。
表4对于大规模系统测试数据集规模比较
表5对于大规模系统算法执行时间比较
由表4和表5可见,对于较大规模系统,与PSO算法相比,本发明在生成测试数据规模和算法效率方面均具有优势。因为随着系统规模的增大,PSO算法容易陷入局部最优的特点对实验结果的影响较大,如需得到较好结果,则需要大幅增加迭代次数。本发明中,采用了全局寻优效果较好的FGA算法,能够有效的保证测试数据的生成质量,同时具有较高的算法执行效率,由表4和表5中数据可以看出,在保证测试数据质量略有提高的前提下,本发明的执行速度与PSO算法相比,提了10%到30%。
在利用蚁群算法对测试数据集进行排序时,算法参数对测试数据集的排序结果及算法效率影响,本发明利用相同的测试数据集对蚁群算法参数的选取进行了实验,分析了各参数对数据排序结果及算法运行时间的影响,给出了实际应用时各参数的选取方法。下面以规模为20的测试数据集为例,给出了不同的蚂蚁数量和迭代次数对排序后测试数据集离散度及计算时间的影响情况。下述α表示信息素相对重要的程度,β表示启发因子相对重要的程度,ρ为信息素挥发系数。
表6在不同蚂蚁数量下的排序离散度
注:迭代次数30,α=1,β=5,ρ=0.5
表7在不同迭代次数下的排序离散度
注:蚂蚁数量30,α=1,β=5,ρ=0.5
由表6和表7可知,迭代次数与蚂蚁的数量直接导致算法搜索路径增加。蚂蚁数量越大,每次迭代走过的路径越多,越容易找到全局最优的路径。迭代次数越多,每个蚂蚁走过的路径越长,越容易得到最优结果,但是如果增加蚂蚁数量及迭代次数,就会增加算法的复杂度,使得计算的时间相应增加。由表6可知,当蚂蚁数量由10增加到100时,最大排序离散度提升了9%,计算时间约增加了1倍;而当蚂蚁数量由100增加到500时,最大排序离散度只提升了1%,计算时间却增加了5倍。以上结论同样适用于迭代次数与最大排序离散度之间。因此,当系统规模较大、需要考虑排序时间时,建议蚂蚁数量和迭代次数都不大于100。
表8~4.9分别给出了信息素重要程度、启发因子和挥发因子与排序后测试数据集的离散度之间的关系。
表8在不同信息素重要程度下测试数据集的离散度
注:迭代次数30,蚂蚁数量30,β=5,ρ=0.5
表9在不同启发因子下测试数据集的离散度
注:迭代次数30,蚂蚁数量30,α=1,ρ=0.5
表10在不同挥发因子下测试数据集的离散度
注:迭代次数30,蚂蚁数量30,α=1,β=5
由表8至表10可知,信息素重要程度和挥发因子的变化对测试数据集的离散度影响不大,启发因子越大,测试数据集的离散度越大。对不同规模的测试数据集进行排序时,在信息素重要程度、启发因子和挥发因子的取值上会有不同,鉴于以上参数在一定范围内存在最优值,可以通过相关试验确定。
结论:本发明在利用遗传算法生成组合测试数据的基础上,引入模糊控制方法,设计了隶属度函数和模糊规则,对遗传算法的交叉概率和变异概率按照种群的多样性进行自适应改变,有效的减少了种群早熟的问题,使得种群朝全局最优的方向进化。实验验证,本算法在测试数据生成时间上优于其他算法,而且测试数据集的规模较小,可有效地应用于组合软件测试数据生成中。针对嵌入式软件输入参数值跳变易引起软件错误的特点,在生成的测试数据集的基础上,采用蚁群算法对测试数据进行离散度排序,以提高测试数据的质量,进而提高嵌入式软件错误的发现概率。
Claims (6)
1.基于模糊遗传算法的嵌入式软件测试数据生成方法,其特征在于包括以下步骤:
嵌入式软件中的一条测试数据T=(a1,a2,…,ak)即可认为是一条染色体,aip∈[0,vip-1],ip=1,2,...,k,测试数据T中第ip个参数的取值aip认为是染色体上的第ip个基因,集合vip为该基因所属的基因库,k为一条染色体上的基因个数;
设当前已有的测试数据集合为A,未被A覆盖的全部t维交互所组成的集合为Q,即I是t维交互,Ht嵌入式软件的测试系统全部t维交互,测试数据Tin中的全部交互,Tin是A中的一条测试数据,其适应值计算函数定义为:
步骤1.1:输入交互维度t,染色体进化代数Mg,染色体组规模Ng;第ip个参数的取值区间为[0,vip-1],1≤ip≤k,k为一条染色体上的基因个数;令当前进化代数m=0,测试数据集A=Φ,未被覆盖t维组合集Q为全部k个参数的t维取值集合;
步骤1.2:初始化染色体组,随机为每一条染色体的基因赋初始值;
步骤1.3:计算每条染色体的适应值,然后按照适应值从小到大进行排序,记为第ix条染色体的适应值,ix∈Ng,生成随机数p∈[0,1],如果则认为第n条染色体为自然选择的结果,循环Ng次,选择出新的Ng条染色体,作为新的染色体组;
步骤1.4:对种群Ng的染色体进行随机配对,每一对染色体生成随机数q∈[1,k],对q位置的基因按照概率pc进行交叉,生成新的染色体组;
采用模糊推理的方法求解pc,包括以下步骤:
1.4.1:模糊化:根据种群集合按照隶属度函数计算种群的熵和离散度隶属度,并根据熵和离散度隶属度值激活模糊规则;
1.4.2:模糊推理:根据种群的熵和离散度隶属度值,按照最小值法推理被激活的模糊规则的隶属度;
1.4.3:去模糊化:根据不同模糊规则的隶属度,采用加权平均法精确计算交叉概率;
步骤1.5:对步骤1.4生成新的染色体组中每一条染色体生成随机数q∈[1,k],对q位置的基因按照概率pm进行变异;
pm的求解过程与pc一样;
步骤1.6:为每一条染色体计算适应值,判断种群最大适应值是否为如果是,进入步骤1.7;如果不是,则判读m是否等于Mg,如果相等则跳到步骤1.7,否则令m=m+1,跳到步骤1.3;
步骤1.7:将适应值最大的染色体放入A,移除Q中已被适应值最大的染色体覆盖的t维组合,判断Q是否为空,如果为空,则输出A结束,否则跳到步骤1.2;
步骤2.1:输入测试数据集A,蚁群规模Ma,迭代次数Na;为每一只蚂蚁AntH,H∈[1,Ma],随机设定初始城市的位置,即A中的某条数据;
步骤2.2:依次为每一只蚂蚁选择下一个城市,按照第W只蚂蚁的Jw(i)依次计算转移概率,按照转移概率由小到大对城市进行排序,随机生成pa∈[0,1],计算当CR>Pa时,蚂蚁H将选取城市CR作为所要去的城市;
步骤2.3:判断全部蚂蚁是否已经走完全部城市,如果没有完成,则跳到步骤2.2继续完成;若完成,则记录最优路径的城市排序,更新信息素τij;判断蚁群遍历全部城市的次数是否达到Na,若满足跳到步骤2.4,否则跳到步骤2.1;
步骤2.4:从全部的最优路径城市排序中选出最大距离,即最大离散度的城市排序作为最后的排序结果A'输出。
2.根据权利要求1所述的基于模糊遗传算法的嵌入式软件测试数据生成方法,其特征在于步骤1.4.1中计算种群的熵和离散度隶属度的过程为:
若第m代种群中有R个子集,各个子集所包含的个体数目分别为且Bm为第m代种群的集合,则种群熵定义为:
<mrow>
<msub>
<mi>S</mi>
<mi>N</mi>
</msub>
<mo>=</mo>
<mrow>
<mo>(</mo>
<mo>-</mo>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>r</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>R</mi>
</munderover>
<msub>
<mi>P</mi>
<mrow>
<msub>
<mi>ir</mi>
<mi>r</mi>
</msub>
</mrow>
</msub>
<mi>log</mi>
<mo>(</mo>
<msub>
<mi>P</mi>
<mrow>
<msub>
<mi>ir</mi>
<mi>r</mi>
</msub>
</mrow>
</msub>
<mo>)</mo>
<mo>)</mo>
</mrow>
<mo>/</mo>
<mi>log</mi>
<mi> </mi>
<mi>N</mi>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>1.1</mn>
<mo>)</mo>
</mrow>
</mrow>
式中:irr∈[1,R];N为种群的规模;当R=1时,SN=0;当R=N时,SN=1;
根据测试数据T1和T2间的离散度定义种群的离散度为:
<mrow>
<msub>
<mi>D</mi>
<mi>N</mi>
</msub>
<mo>=</mo>
<mfrac>
<mrow>
<mrow>
<mo>|</mo>
<msub>
<mi>A</mi>
<mrow>
<msub>
<mi>ir</mi>
<mn>1</mn>
</msub>
</mrow>
</msub>
<mo>|</mo>
</mrow>
<mrow>
<mo>|</mo>
<msub>
<mi>A</mi>
<mrow>
<msub>
<mi>ir</mi>
<mn>2</mn>
</msub>
</mrow>
</msub>
<mo>|</mo>
</mrow>
<msub>
<mi>D</mi>
<msub>
<mi>A</mi>
<mrow>
<msub>
<mi>ir</mi>
<mn>1</mn>
</msub>
</mrow>
</msub>
</msub>
<msub>
<mi>D</mi>
<msub>
<mi>A</mi>
<mrow>
<msub>
<mi>ir</mi>
<mn>2</mn>
</msub>
</mrow>
</msub>
</msub>
<mo>+</mo>
<mn>...</mn>
<mo>+</mo>
<mrow>
<mo>|</mo>
<msub>
<mi>A</mi>
<mrow>
<msub>
<mi>ir</mi>
<mrow>
<mi>R</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
</mrow>
</msub>
<mo>|</mo>
</mrow>
<mrow>
<mo>|</mo>
<msub>
<mi>A</mi>
<mrow>
<msub>
<mi>ir</mi>
<mi>R</mi>
</msub>
</mrow>
</msub>
<mo>|</mo>
</mrow>
<msub>
<mi>D</mi>
<mrow>
<msub>
<mi>A</mi>
<mrow>
<msub>
<mi>ir</mi>
<mrow>
<mi>R</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
</mrow>
</msub>
<msub>
<mi>A</mi>
<mrow>
<msub>
<mi>ir</mi>
<mi>R</mi>
</msub>
</mrow>
</msub>
</mrow>
</msub>
</mrow>
<mrow>
<mrow>
<mo>|</mo>
<msub>
<mi>A</mi>
<mrow>
<msub>
<mi>ir</mi>
<mn>1</mn>
</msub>
</mrow>
</msub>
<mo>|</mo>
</mrow>
<mrow>
<mo>|</mo>
<msub>
<mi>A</mi>
<mrow>
<msub>
<mi>ir</mi>
<mn>2</mn>
</msub>
</mrow>
</msub>
<mo>|</mo>
</mrow>
<mo>+</mo>
<mn>...</mn>
<mo>+</mo>
<mrow>
<mo>|</mo>
<msub>
<mi>A</mi>
<mrow>
<msub>
<mi>ir</mi>
<mrow>
<mi>R</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
</mrow>
</msub>
<mo>|</mo>
</mrow>
<mrow>
<mo>|</mo>
<msub>
<mi>A</mi>
<mrow>
<msub>
<mi>ir</mi>
<mi>R</mi>
</msub>
</mrow>
</msub>
<mo>|</mo>
</mrow>
</mrow>
</mfrac>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>1.2</mn>
<mo>)</mo>
</mrow>
</mrow>
式中:ir1,ir2∈[1,R]且ir1≠ir2为子集和离散度的权重,当R=1时,DN=0;当R=N时,DN=1。
3.根据权利要求2所述的基于模糊遗传算法的嵌入式软件测试数据生成方法,其特征在于步骤1.4.1中熵隶属度函数值、离散度隶属度函数值以及模糊规则确定的步骤如下:
熵隶属度函数采用如下规则:
根据熵值SN和熵的模糊标记确定熵的模糊标记的小、中、大;
分别根据
和绘制四条熵隶属度函数图像;
熵的模糊标记为小对应函数图像的熵隶属度函数值;
熵的模糊标记为中对应和函数图像的熵隶属度函数值;
熵的模糊标记为大对应函数图像的熵隶属度函数值;
离散度隶属度函数采用如下规则:
根据离散度值DN和离散度的模糊标记确定离散度的模糊标记的小、中、大;
分别根据
和绘制四条离散度隶属度函数图像;
离散度的模糊标记为小对应函数图像的离散度隶属度函数值;
离散度的模糊标记为中对应和函数图像的离散度隶属度函数值;
离散度的模糊标记为大对应函数图像的离散度隶属度函数值;
模糊规则采用如下:
离散度模糊标记为小且熵模糊标记为小,模糊规则差;离散度模糊标记为中且熵模糊标记为小,模糊规则差;离散度模糊标记为小且熵模糊标记为中,模糊规则差;
离散度模糊标记为大且熵模糊标记为小,模糊规则良;离散度模糊标记为中且熵模糊标记为中,模糊规则良;离散度模糊标记为小且熵模糊标记为大,模糊规则良;
离散度模糊标记为大且熵模糊标记为中,模糊规则优;离散度模糊标记为大且熵模糊标记为大,模糊规则有;离散度模糊标记为中且熵模糊标记为大,模糊规则优。
4.根据权利要求3所述的基于模糊遗传算法的嵌入式软件测试数据生成方法,其特征在于步骤1.4.2的步骤为:
种群的多样性为优时,即模糊规则为优时,交叉和变异应以小概率进行;种群的多样性为差时,即模糊规则为差时,种群应以较大的交叉和变异概率进行进化;其它情况认为种群的多样性良好,即模糊规则为良时,以较为合适的概率进行进化;
分别取熵隶属度函数图像和离散度隶属度函数图像上的值,进行组合按照最小值法推理隶属度;即:选取熵的模糊标记为小、中、大对应的不为零的熵隶属度函数值,记为选取离散度的模糊标记为小、中、大对应的不为零的离散度隶属度函数值,记为分别进行组合,按照得到最小值隶属度作为模糊规则的隶属度;模糊规则差、良、优中的结果存在一个或者多个,对应存在的模糊规则的隶属度记为μC(zl),zl为模糊规则差、良、优的隶属度的权值。
5.根据权利要求4所述的基于模糊遗传算法的嵌入式软件测试数据生成方法,其特征在于步骤1.4.2所述的模糊规则差、良、优的隶属度的权值中概率的论域是[0,1],模糊规则差、良、优对应的权值为1、0.5、0。
6.根据权利要求5所述的基于模糊遗传算法的嵌入式软件测试数据生成方法,其特征在于步骤2.2中的的求解过程为:
按照蚁群算法的转移概率计算蚂蚁的下一个城市,第H只蚂蚁由城市Cf到Cb的转移概率为:
<mrow>
<msubsup>
<mi>p</mi>
<mrow>
<msub>
<mi>C</mi>
<mi>f</mi>
</msub>
<msub>
<mi>C</mi>
<mi>b</mi>
</msub>
</mrow>
<mi>H</mi>
</msubsup>
<mo>=</mo>
<mfrac>
<mrow>
<msup>
<mrow>
<mo>(</mo>
<msub>
<mi>&tau;</mi>
<mrow>
<msub>
<mi>C</mi>
<mi>f</mi>
</msub>
<msub>
<mi>C</mi>
<mi>b</mi>
</msub>
</mrow>
</msub>
<mo>)</mo>
</mrow>
<mi>&alpha;</mi>
</msup>
<msup>
<mrow>
<mo>(</mo>
<msub>
<mi>&eta;</mi>
<mrow>
<msub>
<mi>C</mi>
<mi>f</mi>
</msub>
<msub>
<mi>C</mi>
<mi>b</mi>
</msub>
</mrow>
</msub>
<mo>)</mo>
</mrow>
<mi>&beta;</mi>
</msup>
</mrow>
<mrow>
<munder>
<mo>&Sigma;</mo>
<mrow>
<mi>s</mi>
<mo>&Element;</mo>
<msub>
<mi>J</mi>
<mi>H</mi>
</msub>
<mrow>
<mo>(</mo>
<msub>
<mi>C</mi>
<mi>f</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
</munder>
<msup>
<mrow>
<mo>(</mo>
<msub>
<mi>&tau;</mi>
<mrow>
<msub>
<mi>C</mi>
<mi>f</mi>
</msub>
<mi>s</mi>
</mrow>
</msub>
<mo>)</mo>
</mrow>
<mi>&alpha;</mi>
</msup>
<msup>
<mrow>
<mo>(</mo>
<msub>
<mi>&eta;</mi>
<mrow>
<msub>
<mi>C</mi>
<mi>f</mi>
</msub>
<mi>s</mi>
</mrow>
</msub>
<mo>)</mo>
</mrow>
<mi>&beta;</mi>
</msup>
</mrow>
</mfrac>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>2.1</mn>
<mo>)</mo>
</mrow>
</mrow>
式中,JH(Cf)表示蚂蚁H在第Cf个城市允许转移到的城市的集合,JH(Cf)=A-tabuH,tabuH表示蚂蚁H已经到过的城市;表示启发因子,此处为Cf到Cb之间路径的距离;α表示信息素相对重要的程度,β表示启发因子相对重要的程度;表示路径Cf到Cb的信息素大小,其更新公式为:
<mrow>
<msub>
<mi>&tau;</mi>
<mrow>
<msub>
<mi>C</mi>
<mi>f</mi>
</msub>
<msub>
<mi>C</mi>
<mi>b</mi>
</msub>
</mrow>
</msub>
<mo>=</mo>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>-</mo>
<mi>&rho;</mi>
<mo>)</mo>
</mrow>
<msub>
<mi>&tau;</mi>
<mrow>
<msub>
<mi>C</mi>
<mi>f</mi>
</msub>
<msub>
<mi>C</mi>
<mi>b</mi>
</msub>
</mrow>
</msub>
<mo>+</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>H</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<msub>
<mi>C</mi>
<mi>m</mi>
</msub>
</munderover>
<msubsup>
<mi>&Delta;&tau;</mi>
<mrow>
<msub>
<mi>C</mi>
<mi>f</mi>
</msub>
<msub>
<mi>C</mi>
<mi>b</mi>
</msub>
</mrow>
<mi>H</mi>
</msubsup>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>2.2</mn>
<mo>)</mo>
</mrow>
</mrow>
式中,ρ为信息素挥发系数,1-ρ为信息素残留因子,表示信息素的更新值,Cm表示蚂蚁个数,其计算公式为:
<mrow>
<msubsup>
<mi>&Delta;&tau;</mi>
<mrow>
<msub>
<mi>C</mi>
<mi>f</mi>
</msub>
<msub>
<mi>C</mi>
<mi>b</mi>
</msub>
</mrow>
<mi>H</mi>
</msubsup>
<mo>=</mo>
<mfenced open = "{" close = "">
<mtable>
<mtr>
<mtd>
<mrow>
<mfrac>
<msub>
<mi>Q</mi>
<mi>m</mi>
</msub>
<msub>
<mi>L</mi>
<mi>H</mi>
</msub>
</mfrac>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<msub>
<mi>C</mi>
<mi>f</mi>
</msub>
<msub>
<mi>C</mi>
<mi>b</mi>
</msub>
<mo>&Element;</mo>
<msub>
<mi>l</mi>
<mi>H</mi>
</msub>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mn>0</mn>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<msub>
<mi>C</mi>
<mi>f</mi>
</msub>
<msub>
<mi>C</mi>
<mi>b</mi>
</msub>
<mo>&NotElement;</mo>
<msub>
<mi>l</mi>
<mi>H</mi>
</msub>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>2.3</mn>
<mo>)</mo>
</mrow>
</mrow>
式中,Qm为常数,LH为表示第H只蚂蚁在本次周游过程中走过的长度的倒数,lH表示第H只蚂蚁在本次迭代中走过的路线;若第H只蚂蚁在其走过的路线中存在Cf→Cb,则在信息素更新时
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510191411.8A CN104765690B (zh) | 2015-04-22 | 2015-04-22 | 基于模糊遗传算法的嵌入式软件测试数据生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510191411.8A CN104765690B (zh) | 2015-04-22 | 2015-04-22 | 基于模糊遗传算法的嵌入式软件测试数据生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104765690A CN104765690A (zh) | 2015-07-08 |
CN104765690B true CN104765690B (zh) | 2017-10-27 |
Family
ID=53647534
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510191411.8A Active CN104765690B (zh) | 2015-04-22 | 2015-04-22 | 基于模糊遗传算法的嵌入式软件测试数据生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104765690B (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109214090B (zh) * | 2018-09-07 | 2022-08-30 | 哈尔滨工业大学 | 基于改进遗传算法的数字微流控芯片故障修复方法 |
CN110147310B (zh) * | 2019-04-02 | 2021-05-18 | 中国科学院信息工程研究所 | 一种基于变异策略的并行模糊测试调度方法及装置 |
CN110347610B (zh) * | 2019-07-23 | 2023-10-27 | 中电智能科技有限公司 | 一种嵌入式代码调试系统及方法 |
CN110515845B (zh) * | 2019-08-20 | 2022-12-30 | 义乌工商职业技术学院 | 基于改进ipo策略的组合测试用例优化生成方法 |
CN111144540A (zh) * | 2019-12-05 | 2020-05-12 | 国网山东省电力公司电力科学研究院 | 反窃电仿真数据集的生成方法 |
CN113742204B (zh) * | 2020-05-27 | 2023-12-12 | 南京大学 | 一种基于模糊测试的深度学习算子测试方法 |
CN112131106B (zh) * | 2020-09-16 | 2023-02-21 | 电信科学技术第十研究所有限公司 | 基于小概率数据的测试数据构造方法及装置 |
CN112380081B (zh) * | 2020-12-04 | 2023-03-21 | 哈尔滨工业大学 | 一种基于字段权重的商用车载can总线模糊测试方法 |
CN112711535B (zh) * | 2020-12-29 | 2021-12-21 | 哈尔滨工业大学 | 基于粒子群优化的约束下组合测试数据生成方法 |
CN112699039B (zh) * | 2020-12-31 | 2024-04-16 | 哈尔滨工业大学 | 一种基于分类树的测试数据自动生成方法及系统 |
CN113127350B (zh) * | 2021-04-20 | 2022-07-01 | 南华大学 | 基于交互关系的组合测试数据生成方法和相关设备 |
CN113204498B (zh) * | 2021-06-07 | 2023-04-07 | 支付宝(杭州)信息技术有限公司 | 针对闭源函数库生成模糊测试驱动器的方法和装置 |
CN113743608B (zh) * | 2021-10-21 | 2024-01-30 | 安徽工程大学 | 一种基于基因库解决堆垛机路径规划的蚁群遗传混合算法 |
CN116048958B (zh) * | 2022-11-17 | 2023-12-01 | 中山大学 | 医疗机器人控制软件测试数据的生成方法、注入方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101504795A (zh) * | 2008-11-03 | 2009-08-12 | 天津理工大学 | 应用于立体车库车位调度的dsp控制系统的工作方法 |
CN102331966A (zh) * | 2011-01-10 | 2012-01-25 | 中国矿业大学 | 面向路径的软件测试数据进化生成系统 |
CN103279415A (zh) * | 2013-05-27 | 2013-09-04 | 哈尔滨工业大学 | 基于组合测试的嵌入式软件测试方法 |
CN104461861A (zh) * | 2014-10-21 | 2015-03-25 | 苏州市职业大学 | 基于efsm模型的路径测试数据生成方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050197979A1 (en) * | 2004-01-21 | 2005-09-08 | Anderson David M. | Speculation count in a genetic algorithm |
TWI388952B (zh) * | 2009-02-11 | 2013-03-11 | Inotera Memories Inc | 基於使用者需求之半導體加工排程最佳化規劃方法 |
-
2015
- 2015-04-22 CN CN201510191411.8A patent/CN104765690B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101504795A (zh) * | 2008-11-03 | 2009-08-12 | 天津理工大学 | 应用于立体车库车位调度的dsp控制系统的工作方法 |
CN102331966A (zh) * | 2011-01-10 | 2012-01-25 | 中国矿业大学 | 面向路径的软件测试数据进化生成系统 |
CN103279415A (zh) * | 2013-05-27 | 2013-09-04 | 哈尔滨工业大学 | 基于组合测试的嵌入式软件测试方法 |
CN104461861A (zh) * | 2014-10-21 | 2015-03-25 | 苏州市职业大学 | 基于efsm模型的路径测试数据生成方法 |
Non-Patent Citations (1)
Title |
---|
基于错误交互集的组合测试软件故障定位方法;王建峰;《电子学报》;20140630;第42卷(第6期);第1173-1178页 * |
Also Published As
Publication number | Publication date |
---|---|
CN104765690A (zh) | 2015-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104765690B (zh) | 基于模糊遗传算法的嵌入式软件测试数据生成方法 | |
Tang et al. | Differential evolution with an individual-dependent mechanism | |
Matthews et al. | Fitting and comparing competing models of the species abundance distribution: assessment and prospect | |
Ciornei et al. | Hybrid ant colony-genetic algorithm (GAAPI) for global continuous optimization | |
CN109634121B (zh) | 基于径向基函数神经网络的多父代遗传算法空气源热泵多目标优化控制方法 | |
KR102139358B1 (ko) | 머신러닝 기반 플랫폼을 이용한 공정제어방법, 그를 수행하기 위한 컴퓨터 프로그램 매체 및 공정제어장치 | |
Tang et al. | An improved genetic algorithm based on a novel selection strategy for nonlinear programming problems | |
Cazzaniga et al. | The impact of particles initialization in PSO: parameter estimation as a case in point | |
CN106527381B (zh) | 一种面向并行批处理机动态调度的快速评估方法 | |
CN105929690B (zh) | 一种基于分解多目标进化算法的柔性车间鲁棒调度方法 | |
Calvet Liñán et al. | A statistical learning based approach for parameter fine-tuning of metaheuristics | |
CN106650920A (zh) | 一种基于优化极限学习机的预测模型 | |
He et al. | Optimising the job-shop scheduling problem using a multi-objective Jaya algorithm | |
CN104966106A (zh) | 一种基于支持向量机的生物年龄分步预测方法 | |
Lin et al. | Multi-objective differential evolution with dynamic hybrid constraint handling mechanism | |
Carrasqueira et al. | A bi-level multiobjective PSO algorithm | |
CN104217296A (zh) | 一种上市公司绩效综合评价方法 | |
CN111337833A (zh) | 一种基于动态时变权重的锂电池容量集成预测方法 | |
Yoo et al. | Discovery of gene-regulation pathways using local causal search. | |
CN111897735B (zh) | 基于粒子群和多标准的模糊测试用例选择方法和装置 | |
Liu | An analysis of particle swarm optimization of multi-objective knapsack problem | |
CN113554144A (zh) | 用于多目标进化特征选择算法的自适应种群初始化方法和存储设备 | |
CN114819151A (zh) | 基于改进代理辅助混洗蛙跳算法的生化路径规划方法 | |
Moritz et al. | Refined ranking relations for selection of solutions in multi objective metaheuristics | |
CN114595884A (zh) | 一种遗传智能优化的神经网络风力发电设备温度预测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |