Abstract
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.
National Natural Science Foundation of China under Grant No. 61806138, No. U1636220 and No. 61663028, Natural Science Foundation of Shanxi Province under Grant No. 201801D121127, PhD Research Startup Foundation of Taiyuan University of Science and Technology under Grant No. 20182002.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Sommerville, I.: Softw. Eng. 8(12), 1226–1241 (2008)
Elish, K.O., Elish, M.O.: Predicting defect-prone software modules using support vector machines. J. Syst. Softw. 81(5), 649–660 (2008)
Canfora, A.D.L.G., Penta, M.D., Oliveto, R., Panichella, A.: Multi-objective cross-project defect prediction. In: IEEE Sixth International Conference on Software Testing, Verification and Validation, pp. 252–261. IEEE Computer Society, Luxembourg (2013)
Malhotra, R.: A systematic review of machine learning techniques for software fault prediction. Appl. Soft Comput. J. 27, 504–518 (2015)
Vapnik, V., Golowich, S.E., Smola, A.: Support vector method for function approximation, regression estimation, and signal processing. Adv. Neural Inf. Process. Syst. 9, 281–287 (1996)
Cui, Z.B., Tang, G.M.: Software reliability prediction model based on support vector machine optimized by genetic algorithm. Comput. Eng. Appl. 45(36), 71–74 (2009)
Yan, J.H.: Research of software defect prediction model based on ACO-SVM. Chin. J. Comput. 34(6), 1148–1154 (2011)
Dong, H., Jian, G.: Parameter selection of a support vector machine, based on a chaotic particle swarm optimization algorithm. Cybern. Inf. Technol. 15(3), 739–743 (2015)
Rong, X.T., Cui, Z.H.: Hybrid algorithm for two-objective software defect prediction problem. Int. J. Innovative Comput. Appl. 8(4), 207–212 (2017)
Shan, C.: Software Defect Distribution Prediction Techniques and Application. Beijing Institute of Technology (2015)
Chen, L., Fang, B., Shang, Z., Tang, Y.: Tackling class overlap and imbalance problems in software defect prediction. Softw. Qual. J. 26(1), 97–125 (2016). https://doi.org/10.1007/s11219-016-9342-6
Khoshgoftaar, T.M., Gao, K., Seliya, N.: Attribute selection and imbalanced data: Problems in software defect prediction. In: 22nd IEEE International Conference on Tools with Artificial Intelligence, vol. 1, pp. 137–144 (2010)
Wang, Q.: Distance metric learning based software defect prediction. Nanjing University of Posts and Telecommunications (2016)
Drown, D.J., Khoshgoftaar, T.M., Seliya, N.: Evolutionary sampling and software quality modeling of high-assurance systems. IEEE Trans. Syst. Man Cybern.-Part A: Syst. Hum. 39(5), 1097–1107 (2009)
Pelayo, L., Dick, S.: Applying novel resampling strategies to software defect prediction. In: NAFIPS 2007–2007 Annual Meeting of the North American Fuzzy Information Processing Society, pp. 69–72 (2007)
Yang, L.: Research of the software defect prediction method for imbalanced data. China University of Petroleum (East China) (2014)
Cai, X.J., et al.: An under-sampled software defect prediction method based on hybrid multi-objective cuckoo search. Concurr. Comput. Pract. Exp. (2019). https://doi.org/10.1002/cpe.5478
Cortes, C., Vapnik, V.: Support-vector networks. Mach. Learn. 20(3), 273–297 (1995)
Pan, L., Li, L., He, C., Tan, K.C.: A subregion division-based evolutionary algorithm with effective mating selection for many-objective optimization. IEEE Trans. Cybern. (2019). https://doi.org/10.1109/TCYB.2019.2906679
Zhang, M., Wang, H., Cui, Z., Chen, J.: Hybrid multi-objective cuckoo search with dynamical local search. Memetic Comput. 10(2), 199–208 (2017). https://doi.org/10.1007/s12293-017-0237-2
Pan, L., He, C., Tian, Y., Su, Y., Zhang, X.: A region division based diversity maintaining approach for many-objective optimization. Integr. Comput.-Aided Eng. 24(3), 279–296 (2017)
Wang, G.G., Cai, X.J., Cui, Z.H., Min, G.Y., Chen, J.J.: High performance computing for cyber physical social systems by using evolutionary multi-objective optimization algorithm. IEEE Trans. Emerg. Top. Comput. (2017)
He, C., Tian, Y., Jin, Y., Zhang, X., Pan, L.: A radial space division based evolutionary algorithm for many-objective optimization. Appl. Soft Comput. 61, 603–621 (2017)
Cui, Z.H., Du, L., Wang, P.H., Cai, X.J., Zhang, W.S.: Malicious code detection based on CNNs and multi-objective algorithm. J. Parallel Distrib. Comput. 129, 50–58 (2019)
Pan, L., He, C., Tian, Y., Wang, H., Zhang, X., Jin, Y.: A classification-based surrogate-assisted evolutionary algorithm for expensive many-objective optimization. IEEE Trans. Evol. Comput. 23(1), 74–88 (2018)
Wu, D., Zhang, J.J., Geng, S.J., Ren, Y.Q., Cai, X.J., Zhang, G.Y.: A parallel computing optimization algorithm based on many-objective. In: IEEE 21st International Conference on High Performance Computing and Communications (2019). https://doi.org/10.1109/HPCC/SmartCity/DSS.2019.00254
Hall, T., Beecham, S., Bowes, D., Gray, D., Counsell, S.: A systematic literature review on fault prediction performance in software engineering. IEEE Trans. Softw. Eng. 38(6), 1276–1304 (2012)
Chawla, N.V., Bowyer, K.W., Hall, L.O., Kegelmeyer, W.P.: SMOTE: synthetic minority over-sampling technique. J. Artif. Intell. Res. 16(1), 321–357 (2002)
Seiffert, C., Khoshgoftaar, T.M., Hulse, J.V.: Improving software-quality predictions with data sampling and boosting. IEEE Trans. Syst. Man Cybern.-Part A: Syst. Hum. 39(6), 1283–1294 (2009)
Acknowledgments
This work is supported by the National Natural Science Foundation of China under Grant No. 61806138, Natural Science Foundation of Shanxi Province under Grant No. 201801D121127, Taiyuan University of Science and Technology Scientific Research Initial Funding under Grant No. 20182002. Postgraduate education Innovation project of Shanxi Province under Grant No. 2019SY495.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Singapore Pte Ltd.
About this paper
Cite this paper
Wu, D., Zhang, J., Geng, S., Cai, X., Zhang, G. (2020). A Multi-objective Bat Algorithm for Software Defect Prediction. In: Pan, L., Liang, J., Qu, B. (eds) Bio-inspired Computing: Theories and Applications. BIC-TA 2019. Communications in Computer and Information Science, vol 1159. Springer, Singapore. https://doi.org/10.1007/978-981-15-3425-6_22
Download citation
DOI: https://doi.org/10.1007/978-981-15-3425-6_22
Published:
Publisher Name: Springer, Singapore
Print ISBN: 978-981-15-3424-9
Online ISBN: 978-981-15-3425-6
eBook Packages: Computer ScienceComputer Science (R0)