Simulated Annealing Neural Network for Software Failure Prediction

Similar documents
Python Machine Learning

Evolutive Neural Net Fuzzy Filtering: Basic Description

Test Effort Estimation Using Neural Network

Reinforcement Learning by Comparing Immediate Reward

Classification Using ANN: A Review

Lecture 1: Machine Learning Basics

A Reinforcement Learning Variant for Control Scheduling

Learning Methods for Fuzzy Systems

Analysis of Hybrid Soft and Hard Computing Techniques for Forex Monitoring Systems

Artificial Neural Networks written examination

A simulated annealing and hill-climbing algorithm for the traveling tournament problem

A Neural Network GUI Tested on Text-To-Phoneme Mapping

Module 12. Machine Learning. Version 2 CSE IIT, Kharagpur

A SURVEY OF FUZZY COGNITIVE MAP LEARNING METHODS

A Comparison of Annealing Techniques for Academic Course Scheduling

Softprop: Softmax Neural Network Backpropagation Learning

TD(λ) and Q-Learning Based Ludo Players

Major Milestones, Team Activities, and Individual Deliverables

Lecture 10: Reinforcement Learning

ISFA2008U_120 A SCHEDULING REINFORCEMENT LEARNING ALGORITHM

Learning Optimal Dialogue Strategies: A Case Study of a Spoken Dialogue Agent for

Soft Computing based Learning for Cognitive Radio

Introduction to Simulation

Time series prediction

QuickStroke: An Incremental On-line Chinese Handwriting Recognition System

Axiom 2013 Team Description Paper

SARDNET: A Self-Organizing Feature Map for Sequences

System Implementation for SemEval-2017 Task 4 Subtask A Based on Interpolated Deep Neural Networks

Knowledge Transfer in Deep Convolutional Neural Nets

On the Combined Behavior of Autonomous Resource Management Agents

Reducing Features to Improve Bug Prediction

Generative models and adversarial training

arxiv: v1 [cs.lg] 15 Jun 2015

INPE São José dos Campos

Speaker Identification by Comparison of Smart Methods. Abstract

Knowledge-Based - Systems

EGRHS Course Fair. Science & Math AP & IB Courses

The 9 th International Scientific Conference elearning and software for Education Bucharest, April 25-26, / X

OPTIMIZATINON OF TRAINING SETS FOR HEBBIAN-LEARNING- BASED CLASSIFIERS

Laboratorio di Intelligenza Artificiale e Robotica

Ordered Incremental Training with Genetic Algorithms

PREDICTING SPEECH RECOGNITION CONFIDENCE USING DEEP LEARNING WITH WORD IDENTITY AND SCORE FEATURES

Semi-Supervised GMM and DNN Acoustic Model Training with Multi-system Combination and Confidence Re-calibration

An empirical study of learning speed in backpropagation

CS Machine Learning

Kamaldeep Kaur University School of Information Technology GGS Indraprastha University Delhi

Software Maintenance

The Method of Immersion the Problem of Comparing Technical Objects in an Expert Shell in the Class of Artificial Intelligence Algorithms

Machine Learning from Garden Path Sentences: The Application of Computational Linguistics

Ph.D in Advance Machine Learning (computer science) PhD submitted, degree to be awarded on convocation, sept B.Tech in Computer science and

Deep search. Enhancing a search bar using machine learning. Ilgün Ilgün & Cedric Reichenbach

ENME 605 Advanced Control Systems, Fall 2015 Department of Mechanical Engineering

Calibration of Confidence Measures in Speech Recognition

Evolution of Symbolisation in Chimpanzees and Neural Nets

Robust Speech Recognition using DNN-HMM Acoustic Model Combining Noise-aware training with Spectral Subtraction

Testing A Moving Target: How Do We Test Machine Learning Systems? Peter Varhol Technology Strategy Research, USA

Designing a Rubric to Assess the Modelling Phase of Student Design Projects in Upper Year Engineering Courses

Word Segmentation of Off-line Handwritten Documents

Learning to Schedule Straight-Line Code

EECS 571 PRINCIPLES OF REAL-TIME COMPUTING Fall 10. Instructor: Kang G. Shin, 4605 CSE, ;

Human Emotion Recognition From Speech

A student diagnosing and evaluation system for laboratory-based academic exercises

An OO Framework for building Intelligence and Learning properties in Software Agents

A New Perspective on Combining GMM and DNN Frameworks for Speaker Adaptation

Probabilistic Latent Semantic Analysis

Unsupervised Learning of Word Semantic Embedding using the Deep Structured Semantic Model

BAUM-WELCH TRAINING FOR SEGMENT-BASED SPEECH RECOGNITION. Han Shu, I. Lee Hetherington, and James Glass

Given a directed graph G =(N A), where N is a set of m nodes and A. destination node, implying a direction for ow to follow. Arcs have limitations

Proposal of Pattern Recognition as a necessary and sufficient principle to Cognitive Science

Australian Journal of Basic and Applied Sciences

Laboratorio di Intelligenza Artificiale e Robotica

Introduction to Ensemble Learning Featuring Successes in the Netflix Prize Competition

Model Ensemble for Click Prediction in Bing Search Ads

The Impact of Test Case Prioritization on Test Coverage versus Defects Found

Attributed Social Network Embedding

The Good Judgment Project: A large scale test of different methods of combining expert predictions

Rule Learning With Negation: Issues Regarding Effectiveness

Malicious User Suppression for Cooperative Spectrum Sensing in Cognitive Radio Networks using Dixon s Outlier Detection Method

A study of speaker adaptation for DNN-based speech synthesis

Experiments with SMS Translation and Stochastic Gradient Descent in Spanish Text Author Profiling

BUILDING CONTEXT-DEPENDENT DNN ACOUSTIC MODELS USING KULLBACK-LEIBLER DIVERGENCE-BASED STATE TYING

Learning Structural Correspondences Across Different Linguistic Domains with Synchronous Neural Language Models

Artificial Neural Networks

Xinyu Tang. Education. Research Interests. Honors and Awards. Professional Experience

Assignment 1: Predicting Amazon Review Ratings

Research Article Hybrid Multistarting GA-Tabu Search Method for the Placement of BtB Converters for Korean Metropolitan Ring Grid

School of Innovative Technologies and Engineering

Improving software testing course experience with pair testing pattern. Iyad Alazzam* and Mohammed Akour

Learning Methods in Multilingual Speech Recognition

Predicting Student Attrition in MOOCs using Sentiment Analysis and Neural Networks

Cooperative evolutive concept learning: an empirical study

Speech Emotion Recognition Using Support Vector Machine

Application of Virtual Instruments (VIs) for an enhanced learning environment

Comment-based Multi-View Clustering of Web 2.0 Items

Segmental Conditional Random Fields with Deep Neural Networks as Acoustic Models for First-Pass Word Recognition

Measurement and statistical modeling of the urban heat island of the city of Utrecht (the Netherlands)

Seminar - Organic Computing

Hierarchical Linear Modeling with Maximum Likelihood, Restricted Maximum Likelihood, and Fully Bayesian Estimation

UNIDIRECTIONAL LONG SHORT-TERM MEMORY RECURRENT NEURAL NETWORK WITH RECURRENT OUTPUT LAYER FOR LOW-LATENCY SPEECH SYNTHESIS. Heiga Zen, Haşim Sak

I-COMPETERE: Using Applied Intelligence in search of competency gaps in software project managers.

Transcription:

International Journal of Softare Engineering and Its Applications Simulated Annealing Neural Netork for Softare Failure Prediction Mohamed Benaddy and Mohamed Wakrim Ibnou Zohr University, Faculty of Sciences-EMMS, Agadir Morocco m.benaddy@uiz.ac.ma, m.akrim@uiz.ac.ma Abstract Various models for softare reliability prediction ere proposed by many researchers. In this ork e present a hybrid approach based on the Neural Netorks and Simulated Annealing. An adaptive simulated Annealing algorithm is used to optimize the mean square of the error produced by training the Neural Netork, predicting softare cumulative failure. To evaluate the predictive capability of the proposed approach various projects ere used. A comparison beteen this approach and others is presented. Numerical results sho that both the goodness-of-fit and the next-step-predictability of our proposed approach have greater accuracy in predicting softare cumulative failure compared ith other approaches. Keyords: Softare Reliability, Neural Netork, Simulated Annealing, Cumulative Softare Failure 1. Introduction Softare reliability is defined as the probability of failure-free softare operations for a specified period of time in specified environment. Reliable softare is a necessary component. Controlling faults in softare requires that one can predict problems early enough to take preventive action. Neural Netorks approach has been used to evaluate the softare reliability, it has proven to be a universal approximates for any non-linear continuous function ith an arbitrary accuracy [6, 13, 18, 19]. Consequently, it has become an alternative method in softare reliability modeling, evolution and prediction. Karunanithi, et. al., [10,11] ere the first to propose using neural netork approach in softare reliability prediction. Aljahdali, et. al., [2, 17], Adnan, et. al., [1], Park, et. al., [9] and Liang, et. al., [18,19] have also made contributions to softare reliability predictions using neural netorks, and have gained better results compared to the traditional analytical models ith respect to predictive performance. The most popular training algorithm for feed-forard Neural Netorks is the backpropagation algorithm. The back propagation learning algorithm provides a ay to train multilayered feed-forard neural netorks [17]. But, the optimal training of neural netork using conventional gradient-descent methods is complicated due to many attractors in the state space, and it is vulnerable to the problem of premature convergence [14]. Premature convergence occurs henever the algorithm gets stuck in local minimum and value of the difference beteen the desired output and the computed output value is still higher than the alloed tolerance limit. That is hy several solutions have been proposed to solve these problems encountered by the back propagation learning algorithm. We have proposed a real coded genetic algorithm to learn a Neural Netork and e have obtained results better than the back propagation learning algorithm [4]. Leung, et. al., [13] have used an 35

International Journal of Softare Engineering and Its Applications improved genetic algorithm to perform the structure and parameters of the Neural Netork. Liang, et. al., [18, 19] proposed a genetic algorithm optimizing the number of delayed input neurons and the number of neurons in the hidden layer of the neural netork, predicting softare reliability and softare failure time. We have proposed other non parametric models based on auto regression order 4, 7 and 10, to fix the parameters of these models e have used a real coded genetic algorithm [3, 5]. In this ork e propose a non parametric failure count model to predict cumulative softare failure. A simulated annealing algorithm is used to learn the neural netork predicting cumulative softare failure. 2. Softare Reliability Data set The Softare Reliability Dataset as compiled by John Musa of Bell Telephone Laboratories [15]. His objective as to collect failure interval data to assist softare managers in monitoring test status and predicting schedules and to assist softare researchers in validating softare reliability models. These models are applied in the discipline of Softare Reliability Engineering. The dataset consists of softare failure data on 16 projects. Careful controls ere employed during data collection to ensure that the data ould be of high quality. The data as collected throughout the mid 1970s. It represents projects from a variety of applications including real time command and control, ord processing, commercial, and military applications. In our case, e used data from three different projects. They are Military (System Code: 40), Real Time Command & Control (System Code: 1) and Operating System (System Code: SS1C). The failure data ere initially stored in arrays, ordered by day of occurrence so that it could be processed. 3. Neural Netork The neural Netork used here is used by Aljahdali, et. al., [17]. It is a multi-layer feedforard netork. It consists of an input layer ith four inputs, hich are the observed faults four days before the current day, one hidden layer and one output layer. The hidden layer consists of to nonlinear neurons and to linear neurons. The output layer consists of one linear neuron hich produces the predicted value of the fault. There is no direct connection beteen the netork input and output. Connections occur only through the hidden layer. The structure of the adopted Neural Netork is shon in Figure 1. i j 1 2 3 Output layer 4 Input layer Hidden layer Figure 1. Feed-forard Neural Netork 36

International Journal of Softare Engineering and Its Applications 4. Simulated Annealing Simulated annealing (SA) is a metaheuristic for the global optimization. The method as independently described by Scott Kirkpatrick, C. Daniel Gelatt and Mario P. Vecchi in 1983 [12] and by Vlado Černý in 1985 [7]. The method is an adaptation of the Metropolis, a Monte Carlo method to generate sample states of a thermodynamic system, invented by M.N. Rosenbluth in a paper by N. Metropolis et al. in 1953 [16]. The basic idea of the method is to generate a random configuration (trial point) iteratively through perturbation, and evaluate the objective function and the constraints after determining the state variables by using the simulator. The infeasible trial point result is rejected and a ne one is generated. If the trial point is feasible and the objective function s value is good, then the point is accepted and the record for the best value is updated. If the trial point results in feasibility but the objective function is higher (for a minimization problem) or less (for a maximization problem) than the current best value, then the trial point is either accepted or rejected using the Metropolis criterion. The entire process is terminated after performing a fairly large number of trials or chains (iterations). The method uses temperature and other annealing parameters by trial and error to attain near-optimal solutions. 5. The Simulated Annealing to train Neural Netork The algorithm adopted in this ork is given bello: 1. Initialize a vector W opt of the eights of the Neural Netork ith random values. 2. F opt = F(W opt ) 3. T= T max 4. T min, iter = 0, maxiter 5. hile(t> T min ) { 6. hile(iter<maxiter){ 7. W neighbor = neighborof (W opt ) 8. if( f=f(w neighbor )-F(W opt )<0) then{ 9. If(F(W neighbor )>F(W opt )) then{ 10. W opt =W neighbor 11. actualize F opt 12. } 13. } else 14. if(random<exp(- f / T)) then 15. W opt = W neighbor 16. } T=T*(1 epsilon) 17. } A solution W consists of all the Neural Netork eights. One element of a W represents a single eight value. In our case there are 4x4 eights for the hidden-layer, 4x1 biases, 4x1 eights and 1x1 biases for the output-layer. The length of the W is then l= 4x4 + 4x1 + 4x1 + 1x1 = 25. The eights and biases of the Neural Netork are placed on a matrix ith four lines and five columns as shon in Figure 2. 37

International Journal of Softare Engineering and Its Applications W 1,1 2,1 3,1 4,1 5,1 1,2 2,2 3,2 4,2 5,2 1,3 2,3 3,3 4,3 5,3 1,4 2,4 3,4 4,4 5,4 b b b b b 1 2 3 4 5 Hidden-layer Output-layer Figure 2. The Representation of the Neural Netork Weights (W) The objective function: F should reflect the individual s performance, in the current problem. We have chosen F=1/ (1+MSE) as the objective function to maximize (e.g. minimize the error beteen the predicted and the observed value), here MSE is the mean squared error during training phase of the neural netork defined in the equation bello. 1 n 2 MSE ( x y) (1) Where n is the number of training faults used during the training process, x and y are the actual and the predicted output respectively during the learning process. For the neighborhood generation e have implemented to methods inspired from the mutation genetic algorithm operator used in [3, 4, 5, 8]. The first method is called the one point update method (mutation) in hich a randomly element in W is selected and modified ith a parameter β, the formula used in this first generation method is defined by the folloing equation. Wi, j Wi, j randomvalu ein(, ) ( 2) 2 2 The second method is called multipoint update method. In this method a random range of values are selected and updated randomly, by using the formula defined in the above equation. To perfect the global search space e can use another generation method as described in the folloing equation. 2* 4* Wi, j Wi, j randomvalu ein(, ) ( 3) 3 3 With randomvaluein(a,b) is a function that return a random value in the interval [a,b]. Experimental results sho that the multipoint generation strategy is very efficient and converge faster than the one point. So e have adopted this method to generate the neighborhood solution candidate. To prove this choice, e plot in Figure 3 the values of the objective function using the to generation methods. 38

International Journal of Softare Engineering and Its Applications Figure 3. One Point versus Multipoint Generation Neighborhood Methods 6. Experimental Results The initial eights ere randomly chosen in the interval [0, 1]. For each project [15], a supervised training is performed to give the optimal parameters values of the algorithm. To prove the performance of our approach, a Normalize Root Square Error (NRMSE, Eq. 4) is computed and compared ith these obtained in [2, 3, 4, 5]. 1 NRMSE n The Table 1 presents results obtained: n i1 ( x( i) y( i)) n i1 ( x( i)) 1. By Aljahdali et al. [2] ith the same Neural Netork in testing phase. 2. By using a Real Coded Genetic Algorithm (RCGA) for learning the same Neural Netork [4]. 3. MSE and NRMSE results obtained our proposed simulated annealing algorithm in training and testing phases are given in the folloing table. 2 2 (4) 39

International Journal of Softare Engineering and Its Applications Table 1. Comparison beteen our Present Approach and Other Approaches Project Name Military Real Time Control Operating System Number of Faults 101 136 277 Training Data 71 96 194 Aljahdali et al. [2] Testing Phase NRMSE 1.0755 0.5644 0.7714 RCGA [4] Testing MSE 4.2277226 2.6617646 3.0758123 Phase NRMSE 4.7373e-5 3.1216e-4 1.5705e-5 The present approach MSE 1.7323943 2.4329896 1.9329897 Training Phase NRMSE 1.60628E-4 5.869615E-4 3.318441E-5 Testing Phase MSE 2.8415842 2.4044118 2.4187725 NRMSE 3.88384E-5 2.966878E-4 1.392739E-5 From these presented results, e observe that the training using simulated annealing algorithm is better than classical method. A little difference is observed compared ith real coded genetic algorithm, but, the simulated annealing performance execution time is better than the real coded genetic algorithm because of the search space. That is in the genetic algorithm there is a population of solutions to perform, but, simulated annealing performs one solution candidate. In Figure 4 to 11 e are plotting the training, the testing and the error difference results for various projects using the neural netork trained by adaptive simulated annealing algorithm. Figure 4. Actual and Predicted Cumulative Faults in Training Phase: Military Application 40

International Journal of Softare Engineering and Its Applications Figure 5. Actual and Predicted Cumulative Faults in Testing Phase: Military Application Figure 6. Prediction Error in Training and Testing Phases: Military Application 41

International Journal of Softare Engineering and Its Applications Figure 7. Actual and Predicted Cumulative Faults in Training Phase: Real Time Control Figure 8. Actual and Predicted Cumulative Faults in Testing Phase: Real Time Control 42

International Journal of Softare Engineering and Its Applications Figure 9. Prediction Error in Training and Testing Phases: Real Time Control Figure 10. Actual and Predicted Cumulative Faults in Training Phase: Operating System 43

International Journal of Softare Engineering and Its Applications Figure 11. Actual and Predicted Cumulative Faults in Testing phase: Operating System Figure 12. Prediction Error in Training and Testing Phases: Operating System 44

International Journal of Softare Engineering and Its Applications 7. Conclusion For predicting softare failure, an adaptive Simulated Annealing is developed, mainly, to perform the training phase of the Neural Netork process used to predict the softare failure. This algorithm is used to minimize the mean square of the error beteen the predicted and the observed cumulative failure in softare. For generating a neighborhood of the good solution. We have developed one point and multipoint strategies inspired from the mutation phase in the genetic algorithm. By using this approach, good results are obtained, relating to the prediction of the softare cumulative failure. From Figures 6, 9 and 12 e see that the difference of the error beteen the predicted and the real observed cumulative failure does not exceed 9 in the orst case for the operating system application. In fact, a better performance is obtained compared ith the RCGA and the back propagation learning algorithm as shon in Table 1, for all tested projects. The performance in execution time of the proposed adaptive Simulated Annealing is better than the RCGA, because of the search space, hich reduced from a population of solutions for the RCGA to one solution for the proposed Simulated Annealing. The proposed approach can be used for other softare projects to predict the cumulative failure. References [1] W. A. Adnan and M. H. Yaacob, An integrated neural-fuzzy system of softare reliability prediction, In Proc. Conf. First Int Softare Testing, Reliability and Quality Assurance, (1994), pp. 154 158. [2] S. H. Aljahdali, D. Rine and A. Sheta, Prediction of softare reliability: A comparison beteen regression and neural netork non-parametric models, Computer Systems and Applications, ACS/IEEE International Conference on, 0:0470, (2001). [3] M. Benaddy, S. Aljahdali and M. Wakrim, Evolutionary prediction for cumulative failure modeling: A comparative study, In Proc. Eighth Int Information Technology: Ne Generations (ITNG) Conf., (2011), pp. 41 47. [4] M. Benaddy, M. Wakrim and S. Aljahdali, Evolutionary neural netork prediction for cumulative failure modeling, In Proc. IEEE/ACS Int. Conf. Computer Systems and Applications AICCSA 2009, (2009), pp. 179 184. [5] M. Benaddy, M. Wakrim and S. Aljahdali, Evolutionary regression prediction for softare cumulative failure modeling: A comparative study, In Proc. Int. Conf. Multimedia Computing and Systems ICMCS 09, (2009), pp. 286 292. [6] K. -Y. Cai, L. Cai, W. -D. Wang, Z. -Y. Yu and D. Zhang, On the neural netork approach in softare reliability modeling. J. Syst. Soft., vol. 58, (2001) August, pp. 47 62. [7] V. Cerný, Thermodynamical approach to the traveling salesman problem: An efficient simulation algorithm, Journal of Optimization Theory and Applications, vol. 45, (1985), pp. 41 51, doi: 10.1007/BF00940812. [8] J. H. Holland, Adaptation in natural and artificial systems: an introductory analysis ith applications to biology, control, and artificial intelligence, University of Michigan Press, (1975). [9] J. -H. Park J. -Y. Park and S. -U. Lee, Neural netork modeling for softare reliability prediction from failure time data, Journal of Electrical Engineering and information Science, vol. 4, no. 4, (1999), pp. 533 538. [10]N. Karunanithi, D. Whitley and Y. K. Malaiya, Prediction of softare reliability using connectionist models, IEEE Trans. Soft. Eng., vol. 18, (1992) July, pp. 563 574. [11] N. Karunanithi, D. Whitley and Y. K. Malaiya, Using neural netorks in reliability prediction, IEEE Soft., vol. 9, (1992) July, pp. 53 59. [12] S. Kirkpatrick, C. D. Gelatt and M. P. Vecchi, Optimization by simulated annealing, Science, vol. 220, no. 4598, (1983), pp. 671 680. 45

International Journal of Softare Engineering and Its Applications [13] F. H. F. Leung, H. K. Lam, S. H. Ling and P. K. S. Tam, Tuning of the structure and parameters of a neural netork using an improved genetic algorithm, vol. 14, no. 1, (2003), pp. 79 88. [14] M. R. Lyu, Handbook of Softare Reliability Engineering, IEEE Computer Society Press and McGra-Hill Book Company, (1996). [15] J. D. Musa, Softare Reliability Data, https://.thedacs.com/databases/sled/srel.php, Data & Analysis Center for Softare, (1980). [16] M. N. Rosenbluth, A. H. Teller, N. Metropolis, A. W. Rosenbluth and E. Teller, Equation of state calculations by fast computing machines, Journal of Chemical Physics, vol. 21, (1953), pp. 1087 1092. [17] K. A. Buragga and S. Aljahdali, Evolutionary neural netork prediction for softare reliability modeling, In The 16th International Conference on Softare Engineering and Data Engineering (SEDE-2007), (2007). [18] L. Tian and A. Noore, Evolutionary neural netork modeling for softare cumulative failure time prediction, Reliability Engineering & System Safety, vol. 87, no. 1, (2005), pp. 45 51. [19] L. Tian and A. Noore., On-line prediction of softare reliability using an evolutionary connectionist model, Journal of Systems and Softare, vol. 77, no. 2, (2005), pp. 173 180. Authors Mohamed BENADDY Is currently a Phd student At Ibn Zohr University, Faculty of Sciences Agadir. He received his DESA in Computer Sciences and Applied Mathematics from Ibn Zohr University. His research interests are in the Softare and System Reliability Engineering, Prediction and optimization. Mohamed WAKRIM Professor of Applied Mathematics and computer science at Ibnou Zohr University. Director of the Laboratory of Mathematical Modeling and Simulation. 46