摘要
并发程序由于其随机性高的特点,容易导致并发缺陷。当并发缺陷出现时,会引起软件数据竞争,难以对软件完成调试。提出基于排序集成的软件并发缺陷动态预测算法。提取并发缺陷特征,通过层次聚类法构建特征簇。将互信息作为特征相关性的衡量标准,经过特征聚类,建立目标特征子集,设定合理阈值选出最具代表性的特征集。将敏感分析和属性权重相结合,确定代表特征的敏感权重,提高预测敏感性。使用多核分类器算法,采集软件运行数据初始样本,将样本分割为缺陷和非缺陷部分。经过boosting的反复训练,减小分类器误差。以boosting训练结果作为预测依据,判断样本是否存在并发缺陷,实现软件并发缺陷的动态预测。仿真结果表明,所提方法的预测结果和实际情况相符,且预测速率不受软件样本数据量多少影响。
Due to the high randomness of concurrent programs,concurrency bugs tend to happen,leading to soft-ware data competition.Therefore,an algorithm to dynamically predict concurrent bugs of software based on sorting in-tegration was proposed.At first,the features of concurrent bugs were extracted,and then a feature cluster was con-structed by the hierarchical clustering method.After that,mutual information was taken as a standard for measuring feature correlation.Moreover,a subset of target features was constructed through feature clustering,and then the most representative feature set was selected by seting a reasonable threshold.Furthermore,the sensitivity analysis was combined with attribute weight to determine the sensitivity weight of representative features and thus to improve the prediction sensitivity.In the meanwhile,a multi-core classifier algorithm was used to collect the initial samples of op-eration data,and then these samples were divided into defective and non-defective parts.After repeated training by boosting,the error of the classifier was reduced.Based on the training results,we could judge whether the samples had concurrent bugs.Finally,the dynamic prediction of concurrent bugs in software was achieved.Simulation results show that the prediction results of the proposed method are in good agreement with the practical case.And the prediction rate is not affected by the amount of sample data.
作者
常志鹏
马生忠
CHANG Zhi-peng;MA Sheng-zhong(Network Information Center,Ningxia Medical University,Yinchuan Ningxia 750004,China;School of Information Engineering,Ningxia University,Ningxia Yinchuan 750021,China)
出处
《计算机仿真》
北大核心
2023年第11期423-427,共5页
Computer Simulation
基金
2019年校级教改专项课题(NYJY1908)。
关键词
排序集成
软件并发缺陷
动态预测
特征敏感性
多核分类器
Ranking integration
Concurrency bug
Dynamic prediction
Characteristic sensitivity
Multi-coreclassifier