Modeling time series data using Genetic Algorithm based on Backpropagation Neural network - Haviluddin (2018)
Artificial Neural Networks (ANNs) is an example of nonlinear models that have found applications in various fields such as function approximations, time series predictions, and adaptive controls. One form of ANNs models are widely used for various applications are Feedforward Neural Networks (FFNN). The performance of ANNs depend on many factors, including the network structure, the selection of activation function, the learning rate of the training algorithm, and initial synaptic weight values, the number of input variables, and the number of units in the hidden layer. These became the central topics of research on ANNs. Not many researchers have investigated the effects of optimizing both the topology structures and the parameters used in ANNs. This research utilizes a genetic algorithm (GA) to optimize the multi-layer FFNN performance and structure in modelling three datasets: network traffic, rainfall, and tourist. There are three objectives in this research. The first objective is to study the effects of varying the architecture designs and parameter values of the backpropagation neural network (BPNN) learning algorithm. The second objective is to compare the performances of machine learning (ML) techniques (e.g., BPNN and GA) with the statistical techniques (e.g., autoregressive integrated moving average (ARIMA)) in learning time series data. This comparison is taken as a performance benchmark for the given problem. Finally, a GA based BPNN called (GA-BPNN) is designed and evaluated. The proposed GA-BPNN is evaluated for the prediction task for the nonlinearity datasets. Several experiments have been conducted to evaluate the performance of the proposed GA-BPNN based on the percentage of mean squared error (MSE) in learning several nonlinearity datasets. The results of the experiments indicated that one should examine the appropriate topology structures, especially the three most important factors (number of input nodes, hidden nodes, learning rate) prior to using ANNs for time series forecasting. In other words, in order to get a good result, the BPNN learning algorithm needs to be executed several times with different topology structures and parameter values in order to determine the best set of parameter values used in the BPNN. However, if there is no prior knowledge of the problem, an optimization method (e.g., GA) can be used to determine the best topology structure coupled with the appropriate parameter values used to perform the proposed GA-BPNN. This study showed the task of optimizing the topology structure and the parameter values (e.g., weights) used in the BPNN learning algorithm by using the GA. Based on the results obtained, a better prediction result can be produced by the proposed GA-BPNN learning algorithm.