## 4 Experimental Results and Discussions
### Comparison between Algorithms  
Table 3 presents the best ARI metric values with their respective hyperparameters, remembering that there is more than one excellent hyperparameter set in some cases. We can see that SOStream had the worst result while Macro SOStream and DenStream reach the maximum ARI value. Furthermore, the values of the Macro SOStream and DenStream hyperparameters are similar in both datasets. Although the DenStream has a wide range of hyperparameters with the maximum value of ARI in three of four datasets used, this algorithm has offline learning in two moments, where it uses DBSCAN. In contrast,  
Figure 17: Variation of DenStream hyperparameters and ARI metric values. (**a**) Clustering with the Horseshoe dataset; (**b**) Clustering with the T dataset; (**c**) Clustering with the Moon dataset; (**d**) Clustering with the Three Spirals dataset. \begin{table}
\begin{tabular}{l l l l} \hline \hline
**Algorithm** & **Dataset** & **ARI** & **Hyperparameters** \\ \hline Macro & Horseshoe & 1.0 & \(\alpha=0.001;\eta=2;\gamma=0.01;p=1.5\) \\ SOStream & T & 1.0 & \(\alpha=0.001;\eta=2;\gamma=0.0001;p=2.5\) \\  & Moon & 1.0 & \(\alpha=0.001;\eta=2;\gamma=0.01;p=2.5\) \\  & Three Spirals & 1.0 & \(\alpha=0.65;\eta=3;\gamma=0.0001;p=2.0\) \\ \hline SOStream & Horseshoe & 0.358 & \(\alpha=0.015;MinPts=4;\gamma=0.1\) \\  & T & 0.0 & \(\alpha=0.001;MinPts=5;\gamma=0.1\) \\  & Moon & 0.302 & \(\alpha=0.001;MinPts=5;\gamma=0.1\) \\  & Three Spirals & 0.416 & \(\alpha=1;MinPts=2;\gamma=0.3\) \\ \hline DenStream & Horseshoe & 1.0 & \(\epsilon=0.01;\lambda=0.001;\beta=0.35;\mu=6\) \\  & T & 1.0 & \(\epsilon=0.01;\lambda=0.001;\beta=0.35;\mu=3\) \\  & Moon & 1.0 & \(\epsilon=0.01;\lambda=0.001;\beta=0.35;\mu=3\) \\  & Three Spirals & 0.201 & \(\epsilon=2.5;\lambda=0.01;\beta=0.35;\mu=3\) \\ \hline \hline \end{tabular}
\end{table} 
Table 3: The algorithms’ performances. Macro SOStream has online learning at all times of execution, and even so it manages to reach the maximum ARI value. Table 4 shows the number of microclusters and macroclusters identified by each algorithm with the settings present in Table 3. Thus, it can be confirmed that Macro SOStream and DenStream correctly matched the number of clusters present in most datasets. The DenStream algorithm only failed when clustering the Three Spirals dataset. By analyzing the execution time of the evolving algorithms, Table 5 was obtained. For each database used, 100 simulations of the algorithms were performed with the hyper-parameters of Table 3. From the simulations, the total time of the algorithms' execution is calculated in seconds--in the same way, the time spent by each sample is calculated in milliseconds. An Intel Xeon processor from the family 6 with one physical core, two threads per core configuration, and an operating frequency of 2 GHz was used, in addition to a 13 GB RAM and Ubuntu 18.04.5 operating system LTS. The calculation of the running time was performed using the function _process_time()_ of the Python _time_ module, which returns the system's sum and CPU time of the process user. In the clustering of the Horseshoe database, the SOStream algorithm was the one that obtained the best total execution time, spending 12.17 s. However, SOStream produced a low value for the ARI metric, which was 0.376, as shown in Table 3. In contrast, Macro \begin{table}
\begin{tabular}{c c c c} \hline \hline
**Algorithm** & **Dataset** & **Microclusters** & **Macrolusters** \\ \hline Macro SOStream & Horseshoe & 120 & 2 \\  & T & 81 & 1 \\  & Moon & 129 & 2 \\  & Three Spirals & 232 & 3 \\ \hline SOStream & Horseshoe & 4 & - \\  & T & 6 & - \\  & Moon & 5 & - \\  & Three Spirals & 226 & - \\ \hline DenStream & Horseshoe & 502 & 2 \\  & T & 888 & 1 \\  & Moon & 1172 & 2 \\  & Three Spirals & 21 & 21 \\ \hline \hline \end{tabular}
\end{table} 
Table 4: The number of clusters found by evolving algorithms.