*2.4. Estimation of Photovoltaic Power: Artificial Neural Network Model*

The ANN models used in this study are multi-layer perceptrons, a class of neural networks composed of multiple layers of interconnected artificial neurons. The first is the input layer, which ingests the different input variables fed into the neural network model. The last is known as the output layer, which yields the predicted values generated by the model. Between these two layers, there is a variable number of hidden layers (zero or more) which connect the input and output layers. The number of artificial neurons in the output layer is determined by the number of output variables. However, the number of neurons for the input and hidden layers is not predetermined, but rather a variable parameter to be optimised.

All the different MLP models built for this study share a common set of configuration parameters. The neurons in both the input and hidden layers use the rectifier linear unit (ReLU) function as the activation function [28]. Batch learning is used as the training methodology [29]. The chosen optimisation algorithm is Adaptive Moment Estimation (Adam), a stochastic gradient descent method [30]. The training stop criterion uses a separated fraction of the training data (a randomly chosen 10% of the training hours) to evaluate the current stage of the trained model, using the mean absolute error (MAE) metric shown below. An additional patience-based stop criterion is included, where training stops if the performance of the model does not improve for 100 consecutive epochs.

$$MAE = \sum\_{i=1}^{N} \frac{|X\_i - Y\_i|}{N} \tag{1}$$

In the next subsections, the monitoring and GDAS datasets are combined into three different scenarios to train and test the different MLP models. At the same time, the available days of data are split into training and testing samples. These samples, applied over the different scenarios, are used to select the best MLP model and to evaluate its performance when fed with monitoring and/or GDAS meteorological data.
