# Forecasting Wind Speed Using the Proposed Wavelet Neural Network

Authors: Monem A. Mohammed; Layla A. Ahmed
Journal: Discrete Dynamics in Nature and Society
 (2023)

---

## Abstract

Wind energy is one of the speedy processing technologies in the energy generation industry and the most economical methods of electrical power generation. For the reliability of system, it is wanted to improve highly appropriate wind speed forecasting methods. The wavelet transform is a powerful mathematical technique that converts an analyzed signal into a time-frequency representation. This technique has proven useful in a nonstationary time series forecasting. The aims of this study are to propose a wavelet function by derivation of a quotient from two different Lucas polynomials, as well as a comparison between an artificial neural network (ANN) and wavelet-artificial neural network (WNN). We used the proposed wavelet, Mexican hat, Morlet, Gaussian, Haar, Daubechies, and Coiflet to transform the wind speed data using the continuous wavelet transform (CWT). MATLAB software was used to implement the CWT and ANN. The proposed models were applied in the meteorological field to forecast the daily wind speed data that were collected from the meteorological directorate of Sulaymaniyah which is a city located in the Kurdistan region of Iraq for the period (Jan. 2011–Dec. 2020). Five different performance criteria during calibration and validation, the root mean square error (RMSE), mean square error (MSE), mean absolute percentage error MAPE, mean absolute error MAE, and coefficient of determination (R2), were evaluated. When studying, analyzing, and comparing these models, the results of the study concluded that the proposed wavelet-ANN is the best result (MSE=0.00072, RMSE=0.02683, MAPE=2.32400, and R2=0.99983.


---

## Body

## 1. Introduction

Wavelet analysis is an approach for resolving difficult issues in mathematics, physics, and engineering. The wavelet transform is an improved form of the Fourier transform since the Fourier transform is a helpful tool for studying the component of stationary data. However, it is incapable to analyse nonstationary signals, whereas wavelet allows for the analysis of nonstationary data components [1]. The wavelet transform method provides signal information in both the time domain and frequency domain. This technique has proven useful in a nonstationary signal [2]. The ANN is a nonlinear appropriate statistic for representing input-output interactions. Whereas, numerous ANN methods have been proposed, and multilayer feed-forward networks are the most common for time series prediction [3].Venkata Ramana et al. introduced wavelet neural networks, that is, the mixture of wavelets analysis and neural networks for rainfall forecast Darjeeling station, India, and used discrete wavelet transforms [4]. Chandra et al. used the Mexican hat wavelet and Morlet wavelet to predict wind speed based on the adaptive wavelet-ANN [5]. Nury et al. created an alternate method for predicting temperatures using the wavelet technique. To choose the best-fitted model, a comparison of wavelet-ARIMA and wavelet-ANN is performed [6]. Ulagammai and Devi developed a WNN hybrid model for forecasting wind speed and also studied the combined optimum economic timing of the wind generators and traditional generators. The results of the simulations show the efficiency and accuracy of the used algorithms [7]. Jiang et al. proposed an intelligent hybrid based on a support vector regression model and cross-correlation analysis that is coupled with cuckoo search algorithms and brainstorm optimization for forecasting short-term wind speed in four different farms in China. These results demonstrate that the proposed models outperform single models for forecasting wind speed data [8]. Al-Maqaleh et al. proposed a modified ANN method to forecast the time series data. The outcomes demonstrate that the proposed model provided lower errors and higher forecasting accuracy [9]. Altunkaynak et al. compared continuous-wavelet multilayer perceptron with discrete wavelet-multilayer perceptron and used daily precipitation data set in two positions. The evaluation criteria’s findings indicate that the continuous wavelet-multilayer perceptron outperform the discrete wavelet multilayer perceptron [10]. Niu et al. applied empirical modes to decompose the wind speed series. The resulting wind predictions improved by the regression neural network and optimized by the fruit fly algorithm, because the empirical mode is not able to appropriately decompose the wind speed series [11]. Ping et al. used a novel combined model for river flow prediction in China. The backpropagation neural network and the swarm optimization algorithm optimized ANN were planned and carried out [12]. Saini and Ahja used the propagation trained ANN and wavelet transform to Predict wind speed. The findings of this study, which demonstrate minimal root mean square and mean absolute error values, imply that the suggested scheme can be utilized to forecast wind speed for a short period, i.e., one hour ahead of the forecast [13]. Honorato et al. studied low-frequency part combinations resulting from wavelet analysis in a hybrid method as inputs to the ANN and for stream flow predicting compared to classical ANN models [14]. Bunrit et al. applied multiresolution analysis of wavelet transform for commodities prices data forecasting. The variances of errors from the proposed method of data sets are much less than the direct use of the actual series data for forecasting [15]. Gürsoy and Engin presented the predictions of regular discharge from the coefficient of discharge together with the meteorological data using WNNs, which combine the discrete wavelet transformation and ANN [16]. Shih and Rajendran developed two kinds of forecasting methods: machine learning algorithms and time series analysis. ANN and multiple regressions are considered under the algorithms of machine learning [17]. In order to predict hourly wind speed, Barhmi and Fatni applied a variety of models depends on the artificial neural network and support vector machine [18]. Berrezzek et al. used a discrete wavelet transform prediction scheme in conjunction with the ANN to predict the average daily wind speed [19].Citakoglu and Aydemir applied gray estimation technique to forecast monthly wind speed at three stations in Kayseri [20]. Tran Anh et al. suggested novel hybrid models that combined two preprocessing methods with the ANN and seasonal ANN models for rainfall prediction. The results show that the best accurate method for predicting monthly rainfall was the wavelet transform combined with the seasonal ANN [21]. Erdemir et al. proposed an approach for forecasting short-term wind speed for usage in various wind speed turbine application. The results demonstrate that using data from a 1-minute time frame for training, the proposed approach gave better outcomes [22]. Estévez et al. developed and tested many models at (16) locations in Southern Spain based on a mix of wavelet analysis with ANNs, representative of different climatic and geographic conditions [23]. Anandakumar used the ANN and combined wavelet-ANN models for predicting groundwater level fluctuation; the result indicating the hybrid ANN model is the efficient technique to predict groundwater level fluctuation [24]. Jana et al. proposed a method for classification of physical actions classification based on the discrete wavelet transform and ANN from electromyography signals. The classification of physical actions using the hybrid ANN and wavelet shows a significant improvement in accuracy [25]. Chen et al. proposed a hybrid model for forecasting short-term wind speeds. The model includes variation modality decomposition, the suggested improved seagull optimization algorithm, and the kernel extreme learning machine network. The findings show that, in comparison to other traditional individual models, the proposed hybrid model achieves the highest efficiency for the application of three different forecasting ranges [26]. Stepanov proposed a modified wavelets synthesis algorithm for CWT to use splines and ANN, as well as a comparison of polynomial, wavelet spline, and neural network models [27]. Citakoglu and Coşkun applied preprocessing methods, such that wavelet transformation, variation mode decomposition, and empirical mode decomposition, to forecast the short-term meteorological drought of Sakarya station in Turkey [28]. Liu et al. propose a new combined machine-learning technique to take on the problem of stochastic forecasting of wind speed data. The model combines the Gaussian process regression (GPR) and the light gradient boosting machine (LGB) models. The findings demonstrate that, in comparison to a single GPR model, the hybrid LGB-GPR model enhances point predictive performance and probabilistic forecast reliability [29]. Ali et al. develop a new hybrid approach that combines wavelet transforms in artificial neural networks and is applied for time series [30]. Hanoon et al. used three machine learning techniques to predict the wind speed data. These techniques included support vector regression, bagged regression trees, and Gaussian process regression. At all stations, the suggested model produced fewer error rates than the support vector regression model [31].Fiskin et al. used SARIMAX, LSTM, MLP, and NARX and SARIMAX-ANN models for forecasting of the domestic cargo quantities, based on the domestic cargo quantities of Turkey. The findings demonstrate that the SARIMAX-ANN model is an appropriate model for predicting shipping time series [32]. Li et al. combined wavelet transforms with ANN to forecast the sediment transport. The findings demonstrate that the predicted sediment model’s accuracy is significantly increased by the wavelet combined the ANN model [33].The aims of this study are to propose a wavelet function by fourth derivation of a quotient from two different Lucas polynomials and a comparison between artificial neural network (ANN) and proposed wavelet-artificial neural network (WNN) to determine the best-fitted model.In this study, introduction, wavelet transform, Lucas polynomial, and proposed wavelet are introduced. Next, the artificial neural network is introduced, and then, the results of these models are compared. Finally, discussions and conclusions are given.


## 2. Methodology

### 2.1. Wavelet Transform

Morlet, Arens, Fourgeau, Giard, and Grossman [34] were the first to use the name wavelet in their work in the early 1980s. Wavelet is a wave with a small duration that expands and decays over a short time [35].Wavelet transform is a new signal processing method produced from the Fourier transform. To control the restrictions of the windowed Fourier transform, the wavelet transform was created [14]. The wavelet transform analysis function is the wavelet, which is a family of functions formed from a fundamental function, termed mother wavelet by dilation and translation.A wavelet function is created using a number of basic transformations. Not all functions can be used as wavelet functions; in order to show that a function is a wavelet function, it must satisfy a number of conditions.A signal is represented by a wavelet transform in the form of specific short time intervals [36].(1)ψa,bt=1aψt−ba,a,bϵR,a≠0,where a and b are scale and shift parameters, respectively.The father wavelet is characterizing the smooth and low-frequency components of the signal; whereas, the mother wavelet is characterizing the detail and high frequency components.Motherψt and father ϕt wavelets are defined as follows [4]:(2)ψt=2∑khkψ2t−k,ϕt=2∑klkΦ2t−k,where(3)∫−∞∞ψtdt=0,∫−∞∞ϕtdt=1.The formula of the low pass filters coefficients as follows:(4)lk=2∫−∞∞ΦtΦ2t−kdt.The formula of the high pass filters coefficients as follows:(5)hk=2∫−∞∞ψtψ2t−kdt.Wavelet transforms are divided into two types: discrete and continuous.The following is the definition of discrete wavelet transforms (DWT) [15]:(6)Wa,bt=1a∑k=1Nψt−baxt,a,bϵR,a≠0.The following is the definition of the continuous wavelet transform (CWT):(7)Wa,bt=1a∫−∞∞xtψt−badt,a,bϵR,a≠0.The transmitted signal is evaluated by the signal analysis, that is, scaled in the time domain. This signal is “compressed” fora<1 and “stretched” for a>1.The CWT produces a matrix of wavelet coefficients computed for various scalea and shift b values [27].(8)Wa,b=Wa1,b1Wa1,b2Wa2,b1Wa2,b2⋯Wa1,bjWa2,bj⋮⋱⋮Wai,b1Wai,b1⋯Wai,bj.Coefficients of wavelet are frequently employed to create a wavelet spectrogram, which is used to perform time-frequency analysis on a signal. The wavelet transform is based on theψ∈L2R function, often known as the mother wavelet or wavelet.The following conditions are met by this function [1]:(i)
(9)Cψ=∫0∞ψ^ω2ωdω<∞,whereψ^ω is the Fourier transform of ψt. The condition (7) is exactly equivalent.(10)∫−∞∞ψtdt=0.(ii)
Wavelet function is that which has unit energy [17]. That is(11)∫−∞∞ψt2dt=1.


### 2.2. Proposed a New Wavelet Function

The researcher proposed a new wavelet function generated by Lucas polynomials.


#### 2.2.1. Lucas Polynomials

The Lucas sequenceLk defined by(12)Lk=Lk−1+Lk−2,k≥2,with initial terms that are L0=2 and L1=1.Bicknell studied the Lucas polynomials in 1970 [37]. It is defined as the sum of the two terms immediately preceding it. The recurrence relation gives Lucas polynomials [38].(13)Ln+2t=tLn+1t+Lnt,n≥0,where L0t=2 and L1t=t.The Lucas polynomials are as follows [39]:(14)Lnt=∑k=0n/2nn−kn−kktn−2k,n2=n2,neven,n−12,nodd,where n−kk is a binomial coefficient.


#### 2.2.2. Proposed Wavelet

The researcher proposed a new wavelet function generated by Lucas polynomials by the fourth derivative of the quotient betweenL1t and L2t. The proposed wavelet is as follows:(15)ψt=24t5−20t3+20tt2+25.A waveletψt has N vanishing moments with a fast decay if and only if there exists gt with a fast decay [40].(16)ψt=−1NdNdtNgt,where gt is a function of quotient between L1t and L2t.


#### 2.2.3. Conditions of Proposed Wavelet

In order to show thatψt defied in formula (15) is a wavelet, it must satisfy the following conditions:(1)
Admissibility ConditionTo verify this condition, we use the Fourier transform (FT) time derivatives property:(17)ψ^ω=iω4Gω,whereGiω is the FT of the gt, Thus, it can be given by(18)Gω=∫−∞∞gte−iωtdt,Gω=−iπωωe−2ω,ψ^ω=iω4−iπωωe−2ω.The obtained result was as follows:(19)Cψ=∫−∞∞ψ^ω2ωdω=630π2256<∞.(2)
The second step was to verify the condition of formula (11).The obtained result was as follows:(20)∫−∞∞ψt2dt=315π642<∞.To obtain a wavelet functionψt satisfying the unit energy condition in formula (11), it must be multiplied the proposed wavelet function obtained in formula (15) by the normalizing coefficient (NC) [27]:(21)NC=1∫−∞∞ψt2dt.


### 2.3. Artificial Neural Networks (ANNs)

ANNs are a data processing system or mathematical model based on a biological neural structure, reflecting the structure of a neural network [41]. It consists of an interconnected network of neurons that resemble actual brain cells [19]. As a result, the ANN model is a nonlinear appropriate statistic for representing input-output interactions. Whereas, numerous ANN techniques have been proposed, multilayer feed-forward networks often are common for time series prediction [3].There are three types of layers: an input layer, one or more hidden layers, and an output layer, where every layer is entirely connected to a next layer using interconnection weights [42, 43]. The three basic processes in the use of an ANN are network architecture selection, network training, and network testing. The number of layers, hidden neurons per layer, kind of activation functions, and network type all contribute to the architecture. The ANN can be expressed mathematically as follows: [4](22)yi=f∑i=1nwijxi+bj,net=∑i=1nwijxi+bj,where yi is the output node, wij is the weight, xi is the input data, and b is the bias for each node. The activation (transfer) functions determine how a neuron should be passed over to the next neurons. These functions may either be nonlinear or linear mathematical constructions, and are used mostly to make generalizations in an ANN. Some of these are as follows: linear, hyperbolic tangent sigmoid, squared, logistic sigmoid identity, exponential, step, and ramp functions [44, 45].The activation function for the back propagation algorithm must be differentiable, and this training algorithm used a sigmoid activation function.Sigmoid function uses the following equation:(23)fnet=11+e−net.For the given network’s training, the Levenberg–Marquardt (LM) technique was applied.The LM is an optimization technique for the back propagation procedure gradient method and Gauss–Newton algorithm are combined. The LM algorithm has faster convergence in back propagation and widely used [45]. The Hessian (Hk) method is(24)Hk=JTJ.Also, the gradient (gk) method is as follows:(25)gk=JTek.It is technically nonlinear and dependent on the least squares method, which is used for weight update are performed by the following approaches [40].(26)wk+1=wk+∆wk,wk+1=wk−Hk−1gk.Gauss–Newton’s algorithm is as follows:(27)wk+1=wk−JTJ−1JTek.It is a modification of the Gauss–Newton’s technique for determining the best result to a minimization problem. The LM algorithm is as follows [4]:(28)wk+1=wk−JTJ+μI−1JTek,where w is the weights, J is the Jacobian matrix, μ is a training rate that regulates the process of training, I is the unity matrix, and ek is error vector.


### 2.4. Performance Criteria

Various statistical performance criteria during both validation and calibration were evaluated by using the mean square error (MSE), root mean square error (RMSE), mean absolute percentage error (MAPE), mean absolute error (MAE), and coefficient of determination (R2). The formulas are as follows [4, 31]:(29)MSE=1n∑t=1nYt−Yt^2,RMSE=1n∑t=1nYt−Yt^21/2,MAPE=1n∑t=1nYt−Yt^Yt∗100,MAE=1n∑t=1nYt−Yt^,R2=1−∑t=1nYt−Yt^2∑t=1nYt−Yt2,where Yt^ and Yt are the estimated and actual values, respectively, Yt is the mean of the actual value, and n is the number of observations.


## 2.1. Wavelet Transform

Morlet, Arens, Fourgeau, Giard, and Grossman [34] were the first to use the name wavelet in their work in the early 1980s. Wavelet is a wave with a small duration that expands and decays over a short time [35].Wavelet transform is a new signal processing method produced from the Fourier transform. To control the restrictions of the windowed Fourier transform, the wavelet transform was created [14]. The wavelet transform analysis function is the wavelet, which is a family of functions formed from a fundamental function, termed mother wavelet by dilation and translation.A wavelet function is created using a number of basic transformations. Not all functions can be used as wavelet functions; in order to show that a function is a wavelet function, it must satisfy a number of conditions.A signal is represented by a wavelet transform in the form of specific short time intervals [36].(1)ψa,bt=1aψt−ba,a,bϵR,a≠0,where a and b are scale and shift parameters, respectively.The father wavelet is characterizing the smooth and low-frequency components of the signal; whereas, the mother wavelet is characterizing the detail and high frequency components.Motherψt and father ϕt wavelets are defined as follows [4]:(2)ψt=2∑khkψ2t−k,ϕt=2∑klkΦ2t−k,where(3)∫−∞∞ψtdt=0,∫−∞∞ϕtdt=1.The formula of the low pass filters coefficients as follows:(4)lk=2∫−∞∞ΦtΦ2t−kdt.The formula of the high pass filters coefficients as follows:(5)hk=2∫−∞∞ψtψ2t−kdt.Wavelet transforms are divided into two types: discrete and continuous.The following is the definition of discrete wavelet transforms (DWT) [15]:(6)Wa,bt=1a∑k=1Nψt−baxt,a,bϵR,a≠0.The following is the definition of the continuous wavelet transform (CWT):(7)Wa,bt=1a∫−∞∞xtψt−badt,a,bϵR,a≠0.The transmitted signal is evaluated by the signal analysis, that is, scaled in the time domain. This signal is “compressed” fora<1 and “stretched” for a>1.The CWT produces a matrix of wavelet coefficients computed for various scalea and shift b values [27].(8)Wa,b=Wa1,b1Wa1,b2Wa2,b1Wa2,b2⋯Wa1,bjWa2,bj⋮⋱⋮Wai,b1Wai,b1⋯Wai,bj.Coefficients of wavelet are frequently employed to create a wavelet spectrogram, which is used to perform time-frequency analysis on a signal. The wavelet transform is based on theψ∈L2R function, often known as the mother wavelet or wavelet.The following conditions are met by this function [1]:(i)
(9)Cψ=∫0∞ψ^ω2ωdω<∞,whereψ^ω is the Fourier transform of ψt. The condition (7) is exactly equivalent.(10)∫−∞∞ψtdt=0.(ii)
Wavelet function is that which has unit energy [17]. That is(11)∫−∞∞ψt2dt=1.


## 2.2. Proposed a New Wavelet Function

The researcher proposed a new wavelet function generated by Lucas polynomials.


### 2.2.1. Lucas Polynomials

The Lucas sequenceLk defined by(12)Lk=Lk−1+Lk−2,k≥2,with initial terms that are L0=2 and L1=1.Bicknell studied the Lucas polynomials in 1970 [37]. It is defined as the sum of the two terms immediately preceding it. The recurrence relation gives Lucas polynomials [38].(13)Ln+2t=tLn+1t+Lnt,n≥0,where L0t=2 and L1t=t.The Lucas polynomials are as follows [39]:(14)Lnt=∑k=0n/2nn−kn−kktn−2k,n2=n2,neven,n−12,nodd,where n−kk is a binomial coefficient.


### 2.2.2. Proposed Wavelet

The researcher proposed a new wavelet function generated by Lucas polynomials by the fourth derivative of the quotient betweenL1t and L2t. The proposed wavelet is as follows:(15)ψt=24t5−20t3+20tt2+25.A waveletψt has N vanishing moments with a fast decay if and only if there exists gt with a fast decay [40].(16)ψt=−1NdNdtNgt,where gt is a function of quotient between L1t and L2t.


### 2.2.3. Conditions of Proposed Wavelet

In order to show thatψt defied in formula (15) is a wavelet, it must satisfy the following conditions:(1)
Admissibility ConditionTo verify this condition, we use the Fourier transform (FT) time derivatives property:(17)ψ^ω=iω4Gω,whereGiω is the FT of the gt, Thus, it can be given by(18)Gω=∫−∞∞gte−iωtdt,Gω=−iπωωe−2ω,ψ^ω=iω4−iπωωe−2ω.The obtained result was as follows:(19)Cψ=∫−∞∞ψ^ω2ωdω=630π2256<∞.(2)
The second step was to verify the condition of formula (11).The obtained result was as follows:(20)∫−∞∞ψt2dt=315π642<∞.To obtain a wavelet functionψt satisfying the unit energy condition in formula (11), it must be multiplied the proposed wavelet function obtained in formula (15) by the normalizing coefficient (NC) [27]:(21)NC=1∫−∞∞ψt2dt.


## 2.2.1. Lucas Polynomials

The Lucas sequenceLk defined by(12)Lk=Lk−1+Lk−2,k≥2,with initial terms that are L0=2 and L1=1.Bicknell studied the Lucas polynomials in 1970 [37]. It is defined as the sum of the two terms immediately preceding it. The recurrence relation gives Lucas polynomials [38].(13)Ln+2t=tLn+1t+Lnt,n≥0,where L0t=2 and L1t=t.The Lucas polynomials are as follows [39]:(14)Lnt=∑k=0n/2nn−kn−kktn−2k,n2=n2,neven,n−12,nodd,where n−kk is a binomial coefficient.


## 2.2.2. Proposed Wavelet

The researcher proposed a new wavelet function generated by Lucas polynomials by the fourth derivative of the quotient betweenL1t and L2t. The proposed wavelet is as follows:(15)ψt=24t5−20t3+20tt2+25.A waveletψt has N vanishing moments with a fast decay if and only if there exists gt with a fast decay [40].(16)ψt=−1NdNdtNgt,where gt is a function of quotient between L1t and L2t.


## 2.2.3. Conditions of Proposed Wavelet

In order to show thatψt defied in formula (15) is a wavelet, it must satisfy the following conditions:(1)
Admissibility ConditionTo verify this condition, we use the Fourier transform (FT) time derivatives property:(17)ψ^ω=iω4Gω,whereGiω is the FT of the gt, Thus, it can be given by(18)Gω=∫−∞∞gte−iωtdt,Gω=−iπωωe−2ω,ψ^ω=iω4−iπωωe−2ω.The obtained result was as follows:(19)Cψ=∫−∞∞ψ^ω2ωdω=630π2256<∞.(2)
The second step was to verify the condition of formula (11).The obtained result was as follows:(20)∫−∞∞ψt2dt=315π642<∞.To obtain a wavelet functionψt satisfying the unit energy condition in formula (11), it must be multiplied the proposed wavelet function obtained in formula (15) by the normalizing coefficient (NC) [27]:(21)NC=1∫−∞∞ψt2dt.


## 2.3. Artificial Neural Networks (ANNs)

ANNs are a data processing system or mathematical model based on a biological neural structure, reflecting the structure of a neural network [41]. It consists of an interconnected network of neurons that resemble actual brain cells [19]. As a result, the ANN model is a nonlinear appropriate statistic for representing input-output interactions. Whereas, numerous ANN techniques have been proposed, multilayer feed-forward networks often are common for time series prediction [3].There are three types of layers: an input layer, one or more hidden layers, and an output layer, where every layer is entirely connected to a next layer using interconnection weights [42, 43]. The three basic processes in the use of an ANN are network architecture selection, network training, and network testing. The number of layers, hidden neurons per layer, kind of activation functions, and network type all contribute to the architecture. The ANN can be expressed mathematically as follows: [4](22)yi=f∑i=1nwijxi+bj,net=∑i=1nwijxi+bj,where yi is the output node, wij is the weight, xi is the input data, and b is the bias for each node. The activation (transfer) functions determine how a neuron should be passed over to the next neurons. These functions may either be nonlinear or linear mathematical constructions, and are used mostly to make generalizations in an ANN. Some of these are as follows: linear, hyperbolic tangent sigmoid, squared, logistic sigmoid identity, exponential, step, and ramp functions [44, 45].The activation function for the back propagation algorithm must be differentiable, and this training algorithm used a sigmoid activation function.Sigmoid function uses the following equation:(23)fnet=11+e−net.For the given network’s training, the Levenberg–Marquardt (LM) technique was applied.The LM is an optimization technique for the back propagation procedure gradient method and Gauss–Newton algorithm are combined. The LM algorithm has faster convergence in back propagation and widely used [45]. The Hessian (Hk) method is(24)Hk=JTJ.Also, the gradient (gk) method is as follows:(25)gk=JTek.It is technically nonlinear and dependent on the least squares method, which is used for weight update are performed by the following approaches [40].(26)wk+1=wk+∆wk,wk+1=wk−Hk−1gk.Gauss–Newton’s algorithm is as follows:(27)wk+1=wk−JTJ−1JTek.It is a modification of the Gauss–Newton’s technique for determining the best result to a minimization problem. The LM algorithm is as follows [4]:(28)wk+1=wk−JTJ+μI−1JTek,where w is the weights, J is the Jacobian matrix, μ is a training rate that regulates the process of training, I is the unity matrix, and ek is error vector.


## 2.4. Performance Criteria

Various statistical performance criteria during both validation and calibration were evaluated by using the mean square error (MSE), root mean square error (RMSE), mean absolute percentage error (MAPE), mean absolute error (MAE), and coefficient of determination (R2). The formulas are as follows [4, 31]:(29)MSE=1n∑t=1nYt−Yt^2,RMSE=1n∑t=1nYt−Yt^21/2,MAPE=1n∑t=1nYt−Yt^Yt∗100,MAE=1n∑t=1nYt−Yt^,R2=1−∑t=1nYt−Yt^2∑t=1nYt−Yt2,where Yt^ and Yt are the estimated and actual values, respectively, Yt is the mean of the actual value, and n is the number of observations.


## 3. Data Analysis and Results

### 3.1. Data Description

In order to illustrate an appropriate model, the average of daily wind speed (m/s) data sets is collected from the meteorological directorate of Sulaymaniyah for the period (Jan., 2011–Dec., 2020), is a city located in the Kurdistan region of Iraq. The location is situated in 35°33′ north latitude and 45°27′ east longitude. The city has a semiarid climate with hot dry summers and cold wet winters.


### 3.2. Autocorrelation Function (ACF)

The ACF refers to a situation that the signal of a time-dependent variable at period (t) is affected by (t − n) or nth lag time signals. The ACF can be used in applications for calculating and getting lag times. Generally, the ACF is used to determine period comparable the actual time series and lag times [43]. The ACF plot in Figure 1 demonstrates that the lags (t − 1) and (t − 2) have stronger relationships with the wind speed than the other lag periods. Additionally, other lags are probably close to the confidence level for the interval.Figure 1
Autocorrelation function of wind speed.


### 3.3. Results of the ANN Model

The application of feed forward neural networks (FFNN) for time series prediction, in this study, was conducted with the following steps:Step1: In this step, the data are defined, we need two types of data input and target data, the data are divided to (7) columns (2011–2019) were considered as input variables and the last one (2019) as the target data, MATLAB. R 2013a software was used.Step2: In this step, the data are normalized by converting it to0,1 in order to alter the weight values:(30)xn=xi−xminxmax−xmin,where xn is the normalized data, xi is the origin data, xmin and xmax are the minimum and maximum value of data.Step3: In this step, before creating the network, the input data are randomly separated into three parts. Total data consisting of (3650) observations were used as the input of (ANN). The (70%) for training the network and (15%) for each testing and validation part.Step4: Creating the network architecture, a three-layered network is used in this investigation. The best neural network structure of wind speed forecasting is (9–13–15–1), where (9)) nodes for the input layer, (13) nodes for the first hidden layer, (15) nodes for the second hidden layer, and (1) nodes for the output layer.Step5: In this step, the neural network is training, the data would be analyzed and change weights among nodes to reflect dependencies and patters. As a learning algorithm, we employ Levenberg–Marquardt, which is based on the common numerical optimization approaches. In this study, the output function was the purelin function, and the input function was the logsig function. The performance for this model is MSE = 0.00657. In Figure2, it is shown that the training performance with best validation performance (0.04533) at epoch is 11. Figure 3 shows the plot of regression and shows the best performance of detected the FFNN (9–13–15–1) model.Step 6: In this step, some data are gathered to determine the network error by comparing it with the target data, therefore determining the accuracy of the network, utilizing network information that has been trained on the data. Figure4 represent the distribution of the error in each part of data (training, testing and validation data) and determine the errors by the difference between targets and outputs, the error produced from FFNN (9-13-15-1) model is normal that makes this result random.Figure 2
Neural network training performance.Figure 3
Regression plot for ANN. (a) Training:R = 0.99743. (b) Validation: R = 0.98719. (c) Test: R = 0.97696. (d) All: R = 0.99317.
(a)(b)(c)(d)Figure 4
Error histogram for ANN.


### 3.4. Results of Wavelet-ANN

We used the proposed wavelet; Mexican hat, Morlet, Gaussian, Haar, Daubechies, and Coiflet to transform the wind speed data using the continuous wavelet transform (CWT). MATLAB software was used to implement the CWT. The WNN model was created, in which the network’s weights are learned using the FFNN and trained using LM algorithm. The performance for this model is MSE = 0.00072. In Figure5, it is shown that the training performance with best validation performance (0.00195) at epoch is 6.Figure 5
Proposed wavelet-ANN training performance.Figure6 displays the plot of regression and shows the best performance of detected the proposed wavelet FFNN (9–13–15–1) model. Figure 7 represents the distribution of error in each part of data and explains that the error produced from the proposed wavelet FFNN (9–13–15–1) model is normal that makes this result random.Figure 6
Regression plot for proposed wavelet—ANN. (a) Training:R = 0.99996. (b) Validation: R = 0.99946. (c) Test: R = 0.99953. (d) All: R = 0.99983.
(a)(b)(c)(d)Figure 7
Error histogram for proposed wavelet-ANN.


## 3.1. Data Description

In order to illustrate an appropriate model, the average of daily wind speed (m/s) data sets is collected from the meteorological directorate of Sulaymaniyah for the period (Jan., 2011–Dec., 2020), is a city located in the Kurdistan region of Iraq. The location is situated in 35°33′ north latitude and 45°27′ east longitude. The city has a semiarid climate with hot dry summers and cold wet winters.


## 3.2. Autocorrelation Function (ACF)

The ACF refers to a situation that the signal of a time-dependent variable at period (t) is affected by (t − n) or nth lag time signals. The ACF can be used in applications for calculating and getting lag times. Generally, the ACF is used to determine period comparable the actual time series and lag times [43]. The ACF plot in Figure 1 demonstrates that the lags (t − 1) and (t − 2) have stronger relationships with the wind speed than the other lag periods. Additionally, other lags are probably close to the confidence level for the interval.Figure 1
Autocorrelation function of wind speed.


## 3.3. Results of the ANN Model

The application of feed forward neural networks (FFNN) for time series prediction, in this study, was conducted with the following steps:Step1: In this step, the data are defined, we need two types of data input and target data, the data are divided to (7) columns (2011–2019) were considered as input variables and the last one (2019) as the target data, MATLAB. R 2013a software was used.Step2: In this step, the data are normalized by converting it to0,1 in order to alter the weight values:(30)xn=xi−xminxmax−xmin,where xn is the normalized data, xi is the origin data, xmin and xmax are the minimum and maximum value of data.Step3: In this step, before creating the network, the input data are randomly separated into three parts. Total data consisting of (3650) observations were used as the input of (ANN). The (70%) for training the network and (15%) for each testing and validation part.Step4: Creating the network architecture, a three-layered network is used in this investigation. The best neural network structure of wind speed forecasting is (9–13–15–1), where (9)) nodes for the input layer, (13) nodes for the first hidden layer, (15) nodes for the second hidden layer, and (1) nodes for the output layer.Step5: In this step, the neural network is training, the data would be analyzed and change weights among nodes to reflect dependencies and patters. As a learning algorithm, we employ Levenberg–Marquardt, which is based on the common numerical optimization approaches. In this study, the output function was the purelin function, and the input function was the logsig function. The performance for this model is MSE = 0.00657. In Figure2, it is shown that the training performance with best validation performance (0.04533) at epoch is 11. Figure 3 shows the plot of regression and shows the best performance of detected the FFNN (9–13–15–1) model.Step 6: In this step, some data are gathered to determine the network error by comparing it with the target data, therefore determining the accuracy of the network, utilizing network information that has been trained on the data. Figure4 represent the distribution of the error in each part of data (training, testing and validation data) and determine the errors by the difference between targets and outputs, the error produced from FFNN (9-13-15-1) model is normal that makes this result random.Figure 2
Neural network training performance.Figure 3
Regression plot for ANN. (a) Training:R = 0.99743. (b) Validation: R = 0.98719. (c) Test: R = 0.97696. (d) All: R = 0.99317.
(a)(b)(c)(d)Figure 4
Error histogram for ANN.


## 3.4. Results of Wavelet-ANN

We used the proposed wavelet; Mexican hat, Morlet, Gaussian, Haar, Daubechies, and Coiflet to transform the wind speed data using the continuous wavelet transform (CWT). MATLAB software was used to implement the CWT. The WNN model was created, in which the network’s weights are learned using the FFNN and trained using LM algorithm. The performance for this model is MSE = 0.00072. In Figure5, it is shown that the training performance with best validation performance (0.00195) at epoch is 6.Figure 5
Proposed wavelet-ANN training performance.Figure6 displays the plot of regression and shows the best performance of detected the proposed wavelet FFNN (9–13–15–1) model. Figure 7 represents the distribution of error in each part of data and explains that the error produced from the proposed wavelet FFNN (9–13–15–1) model is normal that makes this result random.Figure 6
Regression plot for proposed wavelet—ANN. (a) Training:R = 0.99996. (b) Validation: R = 0.99946. (c) Test: R = 0.99953. (d) All: R = 0.99983.
(a)(b)(c)(d)Figure 7
Error histogram for proposed wavelet-ANN.


## 4. Discussion

In this study, we applied the ANN model for the daily wind speed data consideration through the FFNN model is in (9–13–15–1) with sigmoid activation function for each layer after determining the network and applying it to the data. In the step of training network, the LM algorithm was applied on the data. Figure4 explains that the error produced from the ANN model is really normal that makes this result random.In addition, the proposed wavelet, Mexican hat, Morlet, Gaussian, Haar, Daubechies, and Coiflet were used to transform the wind speed data using the continuous wavelet transform. Also, we applied the wavelet ANN model for the data consideration through the FFNN model and determining the network, and the LM algorithm was applied on the data. Figure7 explains that the error produced from the proposed wavelet ANN model is really normal that makes this result random, which gave us the result that the model network proposed is really adequate. Four different performance criteria during both validation and calibration were evaluated by using the RMSE, MSE, MAPE, and R2. Comparison is made between the results obtained from applying both ANN and wavelet ANN methods. We compared the models through statistical indicators. To choose the best model depends on minimum values of MSE and RMSE and maximum value of R2. Table 1 shows comparison between the results obtained from applying both ANN and Proposed wavelet-ANN methods based on the statistical indicators. Between the results the proposed wavelet-ANN is better than the direct use of the ANN model, as for the Table 2, it shows comparison among various forecasting models based on their statistical indicators. Among all these results, the proposed wavelet-ANN is producing the best results.Table 1
Accuracy of the proposed wavelet-ANN.
ModelMSERMSEMAPEMAER2ANN0.006570.08106128.1000.109090.99317Proposed W-ANN0.000720.026832.324000.030690.99983Table 2
Comparison of the wavelet-ANN.
Mother waveletMSERMSEMAPEMAER2Proposed W-ANN0.000720.026832.324000.030690.99983Morlet-ANN0.000890.0298314.80000.069100.99423Mexican hat-ANN0.001060.032562.430000.023430.99803Gaussian-ANN0.003030.055065.737000.103760.99945Daubechies1 (Haar)0.005440.0737523.44000.107160.99541Daubechies20.005780.0760231.83000.114530.99385Daubechies30.002550.0504914.32000.053910.99883Coiflet10.002330.0482754.10000.083700.99583Coiflet20.002160.0464711.54000.046760.99917Finally, we can conclude from the previous dissuasion that the results of the wavelet ANN model are much better than the ANN model results and more efficient. We can conclude from the previous discussion that the results of the proposed wavelet ANN model are the best results and more efficient.


## 5. Conclusions

The aims of this study are to propose a wavelet function, as well as to compareANN and wavelet-ANN to determine the most appropriate models. The CWT was used to decompose the data. From the previous results, it is clear that the best model for daily wind speed forecasting of neural network is (9–13–15–1) model, and the wavelet-ANN model is better than the direct use of ANN for daily wind speed forecasting. As compared to wavelets, the proposed wavelet-ANN is the appropriate model for wind speed forecasting; it gives us minimum values of (MSE=0.00072, MAPE=2.32400, and RMSE=0.02683), and maximum value of R2=0.99983.We recommended using the proposed wavelet neural network model for daily wind speed forecasting because of its efficiency in wind speed data forecasting. In future works, we intend to study new wavelet functions generated from derivative of the quotient between two Lucas polynomials different fromL1t and L2t polynomials and then to apply them in forecasting wind speed data.



---

*Source: 9940038-2023-02-04.xml*