提出一种基于进化计算的软件智能修复算法IREA。采用控制流图作为进化个体的编码方式,在确定适应度函数时,考虑控制流图节点集的势和结构相似度2个因素,将软件的修复过程转化为适应度指导的进化过程,从而实现软件智能化修复。实验结果表明,该算法具有可行性和有效性。
This paper proposes an Intelligent Repair Evolutionary Algorithm(IREA) based on evolutionary computing.Using Control Flow Graph(CFG) as the individual of the evolution,IREA is directed by the fitness degree of the individual,which is calculated from cardinality of the CFG nodes set constrained by test case and the degree of structure similarity.It converts repair process to evolution process directed by the fitness degree,which intelligentizes the software repair.Experimental results show the feasibility and effectiveness of the proposed algorithm.