买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
申请/专利权人:华南理工大学
摘要:本发明属于软件缺陷预测领域,具体提供了基于工作量感知即时软件缺陷预测方法及装置,通过构建初始软件缺陷预测模型;通过加权代码改动量计算变更工作量;依据变更工作量计算初始软件缺陷预测模型的ACC和Popt值;通过多目标黏菌算法(SlimeMouldAlgorithm,SMA),对初始软件缺陷预测模型的超参数进行优化,进行多次迭代,使ACC和Popt值同时达到最优。采用加权代码改动量来计算变更工作量,从而将工作量与具体编程技术、代码分布、问题复杂度等因素进行关联,提高了工作量的合理性,同时通过多目标SMA,以求解ACC和和Popt两个性能评估指标的最大值作为优化目标,对软件缺陷预测模型进行优化,提高了预测的准确度。
主权项:1.基于工作量感知即时软件缺陷预测方法,其特征在于,包括:构建初始软件缺陷预测模型;通过加权代码改动量计算变更工作量;所述通过加权代码改动量计算变更工作量的步骤包括:获取历史数据中每个变更的代码改动量CC,计算公式如下: 式中,LA为变更添加的代码行数,LD为删除的代码行数;通过变更修改文件的数量NF和修改代码在文件中的分布Entropy计算变更的难度系数;计算变更工作量,计算公式如下:;所述通过变更修改文件的数量NF和修改代码在文件中的分布Entropy计算变更的难度系数的步骤包括:采用最小最大值归一化方法对变更修改文件的数量进行归一化处理,计算公式如下所示: 式中:表示变更修改文件数量的最小值,表示变更修改文件数量的最大值,NF表示原始值,表示归一化的结果,位于[0,1]之间;采用香农熵表示变更修改文件分布的熵,计算公式如下: 式中,表示文件k出现的概率,≥0,并且,n表示修改文件的数量;采用对数对香农熵进行归一化处理,计算公式如下: 式中,0≤Entropy≤1,Entropy的值越大,表示变更修改文件分布范围越广;变更的难度系数的计算公式如下:;依据变更工作量计算初始软件缺陷预测模型的ACC和Popt值;通过多目标黏菌算法即SMA算法,对初始软件缺陷预测模型的超参数进行优化,进行多次迭代,使ACC和Popt值同时达到最优,具体步骤包括:定义超参数配置空间;对多目标种群初始化;设计SMA多目标同步和冲突机制,完成超参数的优化,具体步骤包括:在多目标优化任务中,N组黏菌同时接近ACC和POPT达到最优时的超参数组,用下列公式表示其逼近行为: 其中,X表示黏菌位置,即超参数空间中的参数,t表示当前迭代次数,Xt和Xt+1表示第t次和第t+1次迭代时黏菌的位置,XA和XB表示从黏菌中随机选择的两个不同个体,vb是振荡参数,在区间内随机振荡,并随着迭代次数的增加而逐渐趋近于零,Xbt表示第t次迭代时食物浓度最高的位置,vc表示黏菌参数,从1线性递减到0,vb和vc之间的协同相互作用模仿了黏菌的选择性行为,其中,P值的范围位于[-1,1]区间,r是一个取值范围在[0,1]区间之间的随机数; 值的计算过程如下: 式中,max_t表示最大迭代次数,t表示当前迭代次数;P值的计算过程如下: 式中,i∈1,2,…N,Si表示第i组黏菌的适应度值,DF表示在所有迭代中获得的最佳适应度值的组合; W是权重参数,由下式计算: 式中,condition表示适应度值排在种群的前半部分的黏菌个体,others表示适应度值排在种群的后半部分的黏菌个体,bFj表示当前迭代过程中第j个优化目标获得的最优适应度值,wFj表示当前迭代过程中第j个优化目标获得的最差适应度值,Sij表示第i组黏菌第j个优化目标的适应度值,SortIndex表示适应度值排序后的序列;当食物浓度越高时,对应的权重W越大;而当食物浓度越低时,对应的权重会减小,从而改变搜索方向,探索其他食物浓度,因此,在种群的前半部分,选择不同黏菌个体权重参数的最大值;在种群的后半部分,选择不同黏菌个体权重参数的最小值,黏菌更新位置的公式如下: 式中,z表示位置更新参数,ub表示超参数范围的上边界,lb表示超参数范围的下边界;将优化后的超参数代入初始软件缺陷预测模型,得到最终软件缺陷预测模型;通过最终软件缺陷预测模型进行缺陷预测。
全文数据:
权利要求:
百度查询: 华南理工大学 基于工作量感知即时软件缺陷预测方法及装置
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。