A Performance Comparison of Machine Learning Methods For Short-Range Wind Power Estimation

— Renewable energy generation is increasingly employed nowadays for multitudes of reasons such as global warming, depletion of conventional sources of energy and emission constraints. Even though the wind generators constitute a potential source of energy, the uncertainties associated with them make the operation complex. As a consequence, the successful operation and planning of the present distributed generation dominated power systems requires exact estimate of wind power. Numerous wind power estimation techniques based on Machine Learning were available. This work attempts to compare the wind power estimation efficiency of a few machine learning approaches. At first, the performance of a Feed Forward Neural Network with different activation functions is considered. Next, Support Vector Regression Machine with different kernels is utilized for estimating the wind power. Then, deep Learning networks such as Long Short-Term Memory network, Convolutional Neural Network and Recurrent Neural Network are employed for assessing the future wind power and their ability is analyzed. Finally, a comparative chart is prepared to evaluate the efficacy and usefulness of the different machine learning techniques employed for estimating wind power.


INTRODUCTION
The drastic increase in electrical energy demand without sufficient increase in the generation by conventional energy sources make today's power system move towards renewable energy sources, specifically, wind power. Participation of substantial amount of wind power mainly depends on the exactness of wind power estimate [1]. Hence, wind power estimation is a mandatory prerequisite for effective participation of wind in today's power system. Applications of exact estimation of wind power feed are manifolds: Allocation of reserves, economic dispatch, unit commitment, dynamic security assessment, participation in the electricity market, maintenance planning of large power plant components, wind turbines or transmission lines depending on the time scale of estimation [2]. Physical methods of estimation use detailed physical characterization to model wind turbines. Numerical weather prediction (NWP) models, a physical method, use computers to solve the governing equations of the atmosphere, are being run at higher horizontal and vertical resolutions as available computing power increases [3].
Statistical Methods are generally based on developing the non-linear and the linear relationships between NWPs data (such as wind speed, wind direction and temperature) and the generated power [4]. This can be divided into two main subgroupings: time series based and machine learning established. Time Series Models apply historical data to generate a mathematical equations for developing the model, estimating parameters and checking simulation characteristic [5]. The Auto Regressive Moving Average (ARMA) model, Moving Average model (MA) and the Auto Regressive model (AR) [6] belong to this category.
A recent comparison shows that Machine Learning (ML) algorithms produce good forecasting results and are well suited to short-term predictions with forecast limits up to a few hours. One of the reasons for employing machine learning methods is to avoid the complexity of the modelling the mechanical structure in wind turbines. Their forecasting performance is better when the relationship between input features and expected output is not clear or non-linear [7]. Among the numerous ML techniques available, Artificial Neural Networks (ANN) contribute a lot in wind power estimation. There are more than 50 forms of ANNs, including Back-Propagation Neural Network (BPNN), Multi-Layer Perceptron (MLP), Wavelet Neural Network (WNN) [7], Radial Basis Function Neural Network (RBFNN) [8], Support Vector Regression (SVR) [9], and deep learning networks such as Long-Short-Term Memory (LSTM) Networks [10] Convolutional Neural Network (CNN) [11], Temporal Convolution Network (TCN) [12],Ensemble Learning Methods [13]etc. This paper tries to compare the estimation performance of BPNN with different activation functions, SVR Machine with different kernels and deep Learning networks such as Long Short-Term Memory network, Convolutional Neural Network and Recurrent Neural Network. The paper is organized in the following way: section II describes briefly about the ML approaches employed for wind power estimation. Section III details the estimated wind power results and section III depicts a conclusion.

METHODOLOGY
Wind turbine power curve (TPC) expressed by equation (1), is used to obtain the power output of the turbine as a function of kinetic energy flux through the rotor disk of the wind turbine.
where P(t) is the power at a given time t in Watts, C p is the power coefficient which is the ratio of the power extracted by the turbine to the power of the wind resource (unitless),  is the air density in kg/m3 , A is the turbine rotor swept area in m2 , and U is the instantaneous wind speed located at the center of the turbine rotor disk in m/s, also known as the hub-height wind speed (HHWS), at a given time t in seconds. From equation (1), it is clear that by estimating instantaneous wind speed, the power output of a wind turbine is estimated with sufficient accuracy. Therefore, in this work, the next hour wind speed is estimated by different machine learning algorithms which take the input features as Last-Minute Average Temperature, Minimum and Maximum Hourly Air Temperature, Total Hourly precipitation and month of a year. Here we have used three categories of machine learning techniques for the wind power forecasting, namely BPNN with various activation functions, SVR with different Kernel functions and Deep learning networks such as LSTMN and CNN. All the techniques take these four parameters as the input values along with the wind speed as a target value, thus the input layer of each learning network has four nodes and the output layer has one node. The number of hidden layers and the nodes in them take different values depending on the architectures considered.The same dataset [14] has been used to train and test all the three methods. The training data set consists of wind data for all the months of the year 2016, which leads to 8784 instances. A ratio of 75% training and 25% validation is followed. The wind speed data for January 2017 forms the testing data, which has 674 instances in order to ensure prediction performance of the learning networks on unseen data.

MACHINE LEARNING APPROACHES
The machine learning models employed in this study for wind power estimation are briefly presented in this section.

A. Back Propagation Neural Networks
Backpropagation is the essence of neural network training. It is the method of fine-tuning the weights of a neural network based on the error rate obtained in the previous epoch . Proper tuning of the weights reduce error rates and make the model reliable by increasing its generalization. It computes the gradient of the loss function for a single weight by the chain rule. It efficiently computes one layer at a time. It takes advantage of the chain and power rules allows backpropagation to function with any number of outputs.

B. Support Vector Regression Machine
SVR regression is an effective supervised machine learning tool. SVR trains the model using symmetrical loss function which penalizes for both high and low mis estimates. The aim is to find a hyperplane that differentiates the data points plotted in multidimensional space, where each dimension represents the different features used. The hyperplane having maximum separation distance is used to meet the request of the prediction with a higher degree of accuracy. It can be described with the help of mapping function represented by equation (2) as Where ω is the weighted vector and ( ) is the mapped regressor

C. Recurrent and Convolutional Neural networks
Recurrent neural networks are most-effective for explaining time-dependent problems. The information in the RNN model will be processed over time using a feedback loop. Feedforward networks principle is adopted in RNN but it maintains the state information and iterating sequence elements for the sequence process in extremely minimized version. RNN is the neural network having internal loop connection. Between the process the RNN state is reset among two different independent sequences.
A convolutional neural network is a deep learning neural network designed for processing structured arrays of data. The architecture of a convolutional neural network is a multi-layered feed-forward neural network, made by stacking many hidden layers on top of each other in a sequence. It is this sequential design that allows convolutional neural networks to learn hierarchical features. The hidden layers are typically convolutional layers followed by activation layers, some of them followed by pooling layers. After passing array through a convolutional layer, the output is normally passed through an activation function. Common activation functions include the sigmoid function and the rectified linear unit (ReLU) function, which is the same as taking the positive component of the input. The activation function has the effect of adding non-linearity into the convolutional neural network.

D. Long Short-Term memory networks
The LSTM is mainly used for time series deep learning. It can be best suited for predicting wind energy as wind power is generated by weather conditions, which are in the form of time series. LSTM network consists of simple units called memory cells. Backpropagation algorithm is used to trained the LSTM models. The LSTM model comprises of one output gate, three input gates and a forgotten gate. The input gate will receive the input sequence and refresh the memory. The sigmoid function in the input gate will decide whether to accept the signal through its condition statement0,1, and the tanh function will accept the signal ranges from-1 to 1 to determine their essential levels. Long-term memory has the benefits of long-term information retrieval.

RESULTS
The three machine learning techniques employed are implemented using MATLAB R2022(b) and their performance is analysed. They can then be compared with each other and with the actual output to find out which technique provides the best possible estimate and the least value of Mean Absolute Error (MAE), Mean Square Error (MSE), Mean Absolute Percentage Error (MAPE) and R-Square. The computational time required for training the models is also compared.

E. Estimating performanceof BPNN
The prediction behavior of BPNN with different activation functions is presented in table1. The fig. 1 shows the plot for the BPNN prediction technique. The green curve shows the estimated wind speed compared to the actual speed shown by the red curve  Table 2 compares the estimation performance of SVR trained using different kernel functions The prediction plot for SVR technique is given in Fig. 2. With green curve shows the estimated speed and black shows the actual speed.

G. Performance of Deep Learning Networks
The deep learning network's performance parameters are displayed in table3. The overall performance comparison of all the machine learning approaches employed in this study is displayed in fig.3