基于遗传算法的Event - B模型测试数据生成
遗传算法基础
遗传算法(GAs)是一类进化算法,它借鉴了生物学中的选择、重组(交叉)和变异等技术。GAs适用于那些无法用传统技术解决,且对解空间进行穷举搜索不切实际的问题。近年来,GAs在测试数据生成这一难题上受到了测试研究界的更多关注。
GAs的基本方法是将潜在解决方案的种群编码到称为染色体(或个体)的数据结构中,并对这些结构应用重组和变异算子。以下是遗传算法的高级描述:
Randomly generate or seed initial population P
Repeat
Evaluate fitness of each individual in P
Select P ′ from P according to selection mechanism
Recombine parents from P ′ to form new offspring
Construct P ′ from parents and offspring
Mutate P ′
P ←P ′
Until Stopping Condition Reached
适应度(或目标)函数为当前种群中的每个染色体分配一个分数(称为适应度)。染色体的适应度取决于该染色体与问题解决方案的接近程度。在本文中,适应度被认为是正的,找到解决方案对应于最小化适应度函数,即适应度为0的染色体就是解决方案。算法在满足某些停止条件时终止,例如找到解决方案或达到允许的最大代数。
为了选择用于创建后代的个体,人们设计了
超级会员免费看
订阅专栏 解锁全文
907

被折叠的 条评论
为什么被折叠?



