## 4 Evaluation Results
### Small-Scale Prosumer  
For the first evaluation case (TC-S1), historical data from a prosumer with a low energy demand was used to train the models and evaluate the energy prediction results. The data were split in 60% for models training, 20% for validation and weight computation, and 20% for prediction testing. The clustering was made on the 24-energy consumption peaks' and valleys' values computed daily concerning the baseline energy profile. Figure 7 shows the centers of the clusters determined. In the case of the peak profiles, there are two clusters representing periods with very low energy consumption (0-0.5 kWh), two clusters representing periods with increased energy consumption in the intervals (6-11 and 9-14), and one cluster for profiles where the energy consumption is increased for hour interval 6-19. In the case of the valleys, four clusters store profiles representing a small constant decrease in energy consumption and five cluster aggregate profiles indicating a significant decrease in consumption at different time intervals during the day. Over 1000 epochs were used to train the prediction models. The weights for the models were found by using the genetic algorithm and saved in the database to compute the final predicted values by ensemble the individual prediction results. The average SMAPE (Symmetric Mean Absolute Percentage Error) was approx. 6.5%, and the minimum error obtained for one day was 2.44%. The best predicted day can be seen in Figure 8. SMAPE was selected because it measures accuracy based on a percentage that is scale-independent and, therefore, can be used for comparing the energy prediction of prosumers with different energy scales [49, 52]. Moreover, it is symmetric having both lower and upper bounds addressing one of the main disadvantages of MAPE. \begin{table}
\begin{tabular}{c c c c c c c} \hline \hline \multirow{2}{*}{**Type**} & \multirow{2}{*}{**Characteristics**} & \multicolumn{5}{c}{**Evaluation Setup**} & \multirow{2}{*}{**Evaluation**} \\  & & \begin{tabular}{c} **Prediction Features** \\ **Energy** \\ \end{tabular} & \begin{tabular}{c} **Live Energy** \\ **Temperature** \\ \end{tabular} & \begin{tabular}{c} **Live Energy** \\ **Humidity** \\ \end{tabular} & \
\begin{tabular}{c} **Case ID** \\ **Data Streams** \\ \end{tabular} \\ \hline Small & - & Maximum energy demand: & Yes & No & No & No & TC-S1 \\  & 13.7 kWh & & Yes & No & No & Yes & TC-S2 \\  & - & Four years of monitored data & Yes & No & No & Yes & TC-S3 \\  & - & 15 min the Granularity of the & Yes & Yes & No & Yes & TC-S3 \\  & - &
\begin{tabular}{c} Maximum energy demand: \\ 260 kWh \\ \end{tabular} & Yes & No & No & No & TC-M1 \\  & - & Three years of monitored & Yes & Yes & No & No & TC-M2 \\  & - & 1 h the granularity of the & & & & & \\  & monitored data & Yes & No & Yes & No & TC-M3 \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Energy-prediction evaluation test cases. Figure 7: Energy peak (**left**) and valley (**right**) profiles clusters. In the case of test cases, TC-S2 and TC-S3 energy data streams are collected in real-time for three months and used for model training and energy prediction. We use the same energy prediction methodology. The daily baseline is computed to determine the energy peak and valley values. The K-Means algorithm is applied to daily energy patterns to cluster the peaks' and valleys' profiles. The distance from each energy profile to the cluster centroids is computed by using a 24-dimensional Euclidean distance. Figure 9 shows the centers of the clusters. Seven clusters for the peaks and seven for the valleys were determined. Figure 10 presents the energy profiles for the peaks and valleys of the clusters with the ID_6 and ID_3, respectively. Figure 8: TC-S1: best day predicted (SMAPE = 2.44%). Figure 10: The energy profiles from clusters with id 6 (energy peaks—**left**) and label 3 (energy valley—**right**). The dashed curves are the energy profiles belonging to the cluster, and the straight line is the cluster center.