A Multi-objective Bat Algorithm for Software Defect Prediction

Both the class imbalance of datasets and parameter selection of support vector machine (SVM) play an important role in the process of software defect prediction. To solve these two problems synchronously, the false positive rate (pf) and the probability of detection (pd) are considered as two objective functions to construct the multi-objective software defect prediction model in this paper. Meanwhile, a multi-objective bat algorithm (MOBA) is designed to solve this model. The individual update strategy in the population is performed using the individual update method in the fast triangle flip bat algorithm, and the non-dominated solution set is used to save the better individuals of the non-defective module and the support vector machine parameters. The simulation results show that MOBA can effectively save resource consumption and improve the quality of software compared with other commonly used algorithms.

[1]  Nitesh V. Chawla,et al.  SMOTE: Synthetic Minority Over-sampling Technique , 2002, J. Artif. Intell. Res..

[2]  Lei Du,et al.  Malicious code detection based on CNNs and multi-objective algorithm , 2019, J. Parallel Distributed Comput..

[3]  Ye Tian,et al.  A Classification-Based Surrogate-Assisted Evolutionary Algorithm for Expensive Many-Objective Optimization , 2019, IEEE Transactions on Evolutionary Computation.

[4]  Taghi M. Khoshgoftaar,et al.  Evolutionary Sampling and Software Quality Modeling of High-Assurance Systems , 2009, IEEE Transactions on Systems, Man, and Cybernetics - Part A: Systems and Humans.

[5]  Jinjun Chen,et al.  High Performance Computing for Cyber Physical Social Systems by Using Evolutionary Multi-Objective Optimization Algorithm , 2020, IEEE Transactions on Emerging Topics in Computing.

[6]  Taghi M. Khoshgoftaar,et al.  Attribute Selection and Imbalanced Data: Problems in Software Defect Prediction , 2010, 2010 22nd IEEE International Conference on Tools with Artificial Intelligence.

[7]  Yaochu Jin,et al.  A radial space division based evolutionary algorithm for many-objective optimization , 2017, Appl. Soft Comput..

[8]  Huiyan Jiang,et al.  Research of Software Defect Prediction Model Based on ACO-SVM: Research of Software Defect Prediction Model Based on ACO-SVM , 2011 .

[9]  Ruchika Malhotra,et al.  A systematic review of machine learning techniques for software fault prediction , 2015, Appl. Soft Comput..

[10]  Zhihua Cui,et al.  An under‐sampled software defect prediction method based on hybrid multi‐objective cuckoo search , 2019, Concurr. Comput. Pract. Exp..

[11]  Jinjun Chen,et al.  Hybrid multi-objective cuckoo search with dynamical local search , 2017, Memetic Computing.

[12]  Alexander J. Smola,et al.  Support Vector Method for Function Approximation, Regression Estimation and Signal Processing , 1996, NIPS.

[13]  Zhaowei Shang,et al.  Tackling class overlap and imbalance problems in software defect prediction , 2018, Software Quality Journal.

[14]  Karim O. Elish,et al.  Predicting defect-prone software modules using support vector machines , 2008, J. Syst. Softw..

[15]  Gao Jian,et al.  Parameter Selection of a Support Vector Machine, Based on a Chaotic Particle Swarm Optimization Algorithm , 2015 .

[16]  Corinna Cortes,et al.  Support-Vector Networks , 1995, Machine Learning.

[17]  Xingjuan Cai,et al.  A Parallel Computing Optimization Algorithm Based on Many-Objective , 2019, 2019 IEEE 21st International Conference on High Performance Computing and Communications; IEEE 17th International Conference on Smart City; IEEE 5th International Conference on Data Science and Systems (HPCC/SmartCity/DSS).

[18]  Ye Tian,et al.  A region division based diversity maintaining approach for many-objective optimization , 2017, Integr. Comput. Aided Eng..

[19]  Kay Chen Tan,et al.  A Subregion Division-Based Evolutionary Algorithm With Effective Mating Selection for Many-Objective Optimization , 2020, IEEE Transactions on Cybernetics.

[20]  Jiang Hui Research of Software Defect Prediction Model Based on ACO-SVM , 2011 .

[21]  Taghi M. Khoshgoftaar,et al.  Improving Software-Quality Predictions With Data Sampling and Boosting , 2009, IEEE Transactions on Systems, Man, and Cybernetics - Part A: Systems and Humans.

[22]  Tracy Hall,et al.  A Systematic Literature Review on Fault Prediction Performance in Software Engineering , 2012, IEEE Transactions on Software Engineering.

[23]  Pla Information,et al.  Software reliability prediction model based on support vector machine optimized by genetic algorithm , 2009 .

[24]  S. Dick,et al.  Applying Novel Resampling Strategies To Software Defect Prediction , 2007, NAFIPS 2007 - 2007 Annual Meeting of the North American Fuzzy Information Processing Society.

[25]  Gerardo Canfora,et al.  Multi-objective Cross-Project Defect Prediction , 2013, 2013 IEEE Sixth International Conference on Software Testing, Verification and Validation.