## 5 Experimental Evaluation
### Experimental Settings  
Experiments are carried out on a MacBook Pro (2017) with MacOS, using a 16 GB RAM and 4 cores of an i7-3, 1 GHz CPU. For the FastMinTC+ algorithm, we set the parameter \(k=50\) for the BMS heuristic (\(k\) represents the number of iterations performed by the BMS heuristic), and we execute the exchange step for 2000 iterations and the overall algorithm 5 times, each with a different shuffling of the edges as suggested by the authors. As far as DLMinTC+'s hyperparameters are concerned, the network has been trained for 50 epochs, with a batch size \(B=128\). To optimize the custom loss function throughout the entire network, we used Adam [39] with an initial learning rate \(\alpha=10^{-3}\) (please refer to Appendix A.1 for further details on gradient descent and Adam as optimization strategies for loss computation). To optimize the performance of the model, we performed hyperparameter tuning using a grid search strategy on a validation set composed of 1000 random graphs. Table 1 shows the parameters tuned and selected from the tested values. Training took approximately 9 h to complete the 50 epochs, with an average consumption of 12.37 GB of memory during training. To minimize memory overhead in the GraphSAGE and Transformer modules, we use sparse matrix representations, which inherently benefit from sparse connectivity in large temporal graphs. To train the neural model, we crafted a synthetic dataset composed of randomly generated graphs of different sizes, densities and spans. Consider that while synthetic \begin{table}
\begin{tabular}{c c c} \hline \hline
**Hyperparameter** & **Selected Value** & **Tested Values** \\ \hline Learning Rate (\(\alpha\)) & \(10^{-3}\) & \([10^{-4},10^{-3},10^{-2}]\) \\ Batch Size (\(B\)) & 128 & \([32,64,128,256]\) \\ GraphSAGE Layers (\(K\)) & 3 & \([2,3,4]\) \\ Embedding Dimension (\(d\)) & 32 & \([16,32,64]\) \\ Loss Weights (\(\alpha,\beta,\gamma\)) & \(0.2,0.5,0.3\) & \(\{0.2,0.3,0.5\}\) \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Final hyperparameter values used in the experiments along with the ranges tested during tuning. The selected values were optimized based on validation loss and stability. Note that for loss weights, the tested values are all possible combinations of the three values listed. datasets offer flexibility and control, they also may not capture all structural and temporal properties of real-world networks or they may omit complexities, such as noise or irregular patterns, that are present in real-world graphs, thus introducing bias. To mitigate these possible drawbacks, we generated synthetic graphs of varying sizes and densities to mimic real-world scenarios. Moreover, we tested the results both on synthetic and real-world graphs, to be sure that the results obtained on synthetic data are comparable to those obtained on real-world graphs. The final training dataset is composed of 5000 graphs for training and 1000 graphs for validation with a random number of nodes between 10 and 10,000, a random number of edges between 0.1 times the number of nodes and 10 times the number of nodes, and a random number of timestamps between 1 and 30,000. This represents the maximum value allowed for the sequence length. This means that by itself, the network is not able to process temporal graphs with more than 30,000 timestamps. However, since in many cases the number of timestamps is larger and since the final output produced is not granted to be a valid coverage, in the case of temporal graphs with more than 30,000 timestamps, we split the temporal graph into sub-temporal graphs with a maximum span of 30,000, process each sub-graph independently, and merge the produced intervals, which are then passed to the final iterative algorithms. This graph partitioning technique not only allows us to extend the approach to graphs of any size, but it also reduces the memory requirements of the DL-based approach.