Improving Fault Prediction using ANN-PSO in Object Oriented Systems

oriented software metrics are computed and used in predicting software quality attributes of object oriented systems. Mapping software metrics to software quality attributes like fault prediction is a complex process and requires extensive computations. Many models have been proposed for fault prediction. Since accuracy is of prime importance in prediction models they are being constantly improved through various research studies. Artificial Neural network (ANN) has gained immense popularity due to its adaptability to the problem at hand by training with known data. Back propagation is a widely used ANN training technique. However the back propagation technique leads to slow convergence rate and an impending threat of getting caught in local minima. In this paper we explore the Particle Swarm Optimization (PSO) technique as an alternative to optimize the weights of ANN for fault prediction in object oriented systems. We evaluate the effect on prediction accuracy that PSO brings to ANN compared to other techniques like BP and Genetic Algorithm (GA). We also evaluate prediction accuracy improvements by optimizing the various parameters of PSO.

[1]  Randall S. Sexton,et al.  Reliable classification using neural networks: a genetic algorithm and backpropagation comparison , 2000, Decis. Support Syst..

[2]  Eric B. Bartlett,et al.  Nuclear power plant status diagnostics using an artificial neural network , 1992 .

[3]  M. Franchini Use of a genetic algorithm combined with a local search method for the automatic calibration of conceptual rainfall-runoff models , 1996 .

[4]  Taghi M. Khoshgoftaar,et al.  Using regression trees to classify fault-prone software modules , 2002, IEEE Trans. Reliab..

[5]  Cheng-Yan Kao,et al.  A Robust Evolutionary Algorithm for Training Neural Networks , 2001, Neural Computing & Applications.

[6]  Arvinder Kaur,et al.  Application of Artificial Neural Network for Predicting Maintainability Using Object-Oriented Metrics , 2008 .

[7]  David M. Himmelblau,et al.  Incipient fault detection and diagnosis using artificial neural networks , 1990, 1990 IJCNN International Joint Conference on Neural Networks.

[8]  D. Wunsch,et al.  Time series prediction with recurrent neural networks using a hybrid PSO-EA algorithm , 2004, 2004 IEEE International Joint Conference on Neural Networks (IEEE Cat. No.04CH37541).

[9]  Wei Sun,et al.  The Neural Network Model Based on PSO for Short-Term Load Forecasting , 2006, 2006 International Conference on Machine Learning and Cybernetics.

[10]  Richard D. Braatz,et al.  On the "Identification and control of dynamical systems using neural networks" , 1997, IEEE Trans. Neural Networks.

[11]  Jisong Kou,et al.  Predicting Software Quality by Optimized BP Network Based on PSO , 2011, J. Comput..

[12]  Taghi M. Khoshgoftaar,et al.  An application of zero-inflated Poisson regression for software fault prediction , 2001, Proceedings 12th International Symposium on Software Reliability Engineering.

[13]  Marco Furini,et al.  International Journal of Computer and Applications , 2010 .

[14]  Joanne Bechta Dugan,et al.  Empirical Analysis of Software Fault Content and Fault Proneness Using Bayesian Methods , 2007, IEEE Transactions on Software Engineering.

[15]  Pamela K. Coats,et al.  A neural network for classifying the financial health of a firm , 1995 .

[16]  Ebru Ardil,et al.  A soft computing approach for modeling of severity of faults in software systems , 2010 .

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

[18]  Stephen José Hanson,et al.  AN AUTOASSOCIATOR FOR ON-LINE MOTOR MONITORING , 1998 .

[19]  Nian Zhang,et al.  Time series prediction with recurrent neural networks trained by a hybrid PSO-EA algorithm , 2004, Neurocomputing.

[20]  Isabelle Guyon Applications of Neural Networks to Character Recognition , 1991, Int. J. Pattern Recognit. Artif. Intell..

[21]  Stamatios V. Kartalopoulos,et al.  Understanding neural networks and fuzzy logic , 1995 .

[22]  Khaled El Emam,et al.  Comparing case-based reasoning classifiers for predicting high risk software components , 2001, J. Syst. Softw..

[23]  Taghi M. Khoshgoftaar,et al.  Tree-based software quality estimation models for fault prediction , 2002, Proceedings Eighth IEEE Symposium on Software Metrics.

[24]  Taghi M. Khoshgoftaar,et al.  Application of neural networks to software quality modeling of a very large telecommunications system , 1997, IEEE Trans. Neural Networks.

[25]  Russell C. Eberhart,et al.  Recent advances in particle swarm , 2004, Proceedings of the 2004 Congress on Evolutionary Computation (IEEE Cat. No.04TH8753).

[26]  Harish Kundra,et al.  DEFECT PREDICTION BA SED ON QUANTIT ATIVE AND QUALITATIVE FACTORS USING PSO OPTIMIZED NEURAL NETWORK , 2012 .

[27]  Melody Y. Kiang,et al.  Managerial Applications of Neural Networks: The Case of Bank Failure Predictions , 1992 .

[28]  S. Kanmani,et al.  Object-oriented software fault prediction using neural networks , 2007, Inf. Softw. Technol..

[29]  Taghi M. Khoshgoftaar,et al.  Regression modelling of software quality: empirical investigation☆ , 1990 .

[30]  Mustafa Abdul Salam,et al.  Evaluation of Differential Evolution and Particle Swarm Optimization Algorithms at Training of Neural Network for Stock Prediction , 2012, Int. Arab. J. e Technol..

[31]  Jouko Lampinen,et al.  WOOD SURFACE INSPECTION SYSTEM BASED ON GENERIC VISUAL FEATURES , 1998 .

[32]  Rimvydas Simutis,et al.  Stocks' Trading System Based on the Particle Swarm Optimization Algorithm , 2004, International Conference on Computational Science.

[33]  Gérard Dreyfus,et al.  Handwritten digit recognition by neural networks with single-layer training , 1992, IEEE Trans. Neural Networks.

[34]  Edward I. Altman,et al.  Corporate distress diagnosis: Comparisons using linear discriminant analysis and neural networks (the Italian experience) , 1994 .

[35]  Pierfrancesco Bellini,et al.  Comparing fault-proneness estimation models , 2005, 10th IEEE International Conference on Engineering of Complex Computer Systems (ICECCS'05).

[36]  Robert J. Marks,et al.  FPGA implementation of particle swarm optimization for inversion of large neural networks , 2005, Proceedings 2005 IEEE Swarm Intelligence Symposium, 2005. SIS 2005..

[37]  Geoffrey E. Hinton,et al.  Learning representations by back-propagating errors , 1986, Nature.