## 2 Materials and Methods
### Training, Testing, and Validation Metrics  
For each machine learning model and its corresponding best set of hyperparameters, the \(R^{2}\), \(MAE\), and \(RMSE\) metrics were computed for both the training and testing datasets. This procedure entails subjecting the data subsets to the trained models once their hyperparameter configurations have been finalized, thereby simulating model performance for previously unseen data. Naturally, models tend to exhibit strong performance for the training dataset, as their hyperparameters are optimized based on that data. However, it is imperative that they also demonstrate high predictive accuracy using the testing dataset, which remains completely excluded from the training process. Failure to generalize well to this unseen subset indicates a lack of robustness and a tendency toward overfitting.  
These experiments provide insight into the generalization ability of the models when applied to unseen data and serve as indicators of underfitting or overfitting. Additionally, the training dataset underwent a 10-fold cross-validation procedure with 30 repetitions, allowing for the retrieval of validation metrics. This step ensures a more comprehensive statistical evaluation of model performance and assesses model robustness against variations in input data. The overall workflow for obtaining training, testing, and validation metrics is illustrated in Pseudocode 2.
``` Input:\(X_{train-transformed}\):\(y_{train}\) (or \(y_{train-transformed}\)); \(X_{test-transform}\); \(y_{test}\) (or \(y_{test-transformed}\)); all \(Best\ Model_{i}\in I\); Seed; Metrics.  Regardless of whether there is a transformation or not, they will be called \(y_{train}\) and \(y_{test}\) here. Training and Testing Metrics: For\(Best\ Model_{i}\in I\): ```
**Pseudocode 3.** Training, testing, and validation of the machine learning models.
```
**Pseudocode 2.** Cont.

Back Transformation of the data.

\(Train\ Metrics_{i}=Best\ Model_{i}\Big{(}X_{train-transformed}.y_{train}, Seed\Big{)}\).

\(Test\ Metrics_{i}=Best\ Model_{i}\Big{(}X_{test-transformed}.y_{test}, Seed\Big{)}\).

**end Validation Metrics:**

Let \(r\in R\) be the repetitions, where \(R=30\).

**For**_Best_\(Model_{i}\in I\):

**For**_\(r\in R\):

\(\ Scores_{i(r)}=Best\ Model_{i}\Big{(}X_{train-transformed},y_{train},k-fold=10, Seed\Big{)}\).

**end**

\(Validation\ Metrics_{i}=\overline{Scores_{i(r)}}\).

**end Output:**_Train_\(Metric_{i}\); Test Metrics\({}_{i}\); Validation Metrics\({}_{i}\).
```  
Given that the proposed methodology generates 10 distinct hyperparameter sets for each machine learning model--five derived from different population sizes in GA and five from different population sizes in AGA--it was necessary to define a selection criterion to determine the best overall configuration. For each genetic algorithm (GA and AGA), the optimal hyperparameter set was determined based on the following ranking criteria:  
1. Lowest \(MAE\) value (primary criterion).
2. Highest \(R^{2}\) value (secondary criterion, used in case of a tie).
3. Lowest \(RMSE\) value (tertiary criterion, used if the first two metrics are identical).
4. Smallest population size (if all three performance metrics remain tied).  
When selecting between the best configurations obtained from both GA and AGA, the same hierarchical criteria were applied. If the performance of the top models from GA and AGA remained identical across all metrics, the hyperparameters obtained via GA were arbitrarily selected.  
The computed training and testing metrics for each model--optimized through GA and AGA--are presented in Appendix B. All validation metrics reported in this study represent the mean values across different folds, accompanied by their corresponding standard deviations, ensuring a statistically robust evaluation of model performance.