# AutoElbow: An Automatic Elbow Detection Method for Estimating the Number of Clusters in a Dataset
## 4 Results and Discussion
### Forty-Cluster Dataset  
We tested the algorithms using a dataset with 40 clusters, as shown in Figure 5a, demonstrating the need for larger \(K\) values. As a result, we considered the case of \(K=80\), resulting in the elbow graph shown in Figure 5b. This experiment was valuable because it presented the algorithms with an elbow graph with fluctuating graph points. This allowed us to examine the concepts of the various methods using such a perturbed graph. The red graph in Figure 5a represents the original fluctuating elbow graph obtained after executing Algorithm 1, whereas the blue graph was obtained after applying the cleaning function (i.e., Equation (8)) in the AutoElbow method. Furthermore, because we previously used a 10% error bound around the groundtruth as the accuracy limit, we considered an error bound of 36 to 44 for the current 40-cluster dataset. Figure 4: Medium cluster number case study: seven clusters. As illustrated in Figure 5d,e, the ESA and ADM methods failed to locate the correct elbow point due to the disturbances in the initial elbow graph of Figure 5b. We note that the ADM technique works by computing the angles formed at each graph point. However, as a result of the oscillations in the original graph, and thus many acute angles were created, which resulted in the chaotic nature of the ADM's output function as depicted in Figure 5e. The ESA method, on the other hand, works by calculating the difference between the graph's second- and first-order differences. However, because of the steep slope at the beginning of the graph, the ESA's output function resulted in a high elbow strength, which misled the algorithm's judgment of the elbow point. Therefore, neither technique can be guaranteed to yield consistent results unless some smoothing or approximation functions are applied to the graph prior to using these methods. On the other hand, Figure 5c,f-h shows that the KPA, Kneedle, L-method, and our proposed AutoElbow method all produced estimates that fell within the error bounds for this dataset. However, the KPA method overestimated the number of clusters given \(k^{*}=44\), which can be permitted based on the fact that the minimum point, as depicted in Figure 5c, falls within a broad minimum range spanning \(k=40\) to 48. This can be further verified visually in Figure 5b, where the elbow appears to be between \(k^{*}=40\) and 44. We note that Figure 5c,g shows that the L-method works similarly to the KPA method, as evidenced by the similar function shapes of their respective graphs. Consequently, the explanation provided for the KPA also applies to the L-method. For the Kneedle algorithm, although it can be observed that the maximum point of the graph in Figure 5h is at \(k^{*}=40\); nevertheless, the Kneedle algorithm outputted the elbow point as \(k^{*}=75\). This is due to the fact that the Kneedle algorithm uses a threshold method to determine the true elbow point (see [13] p. 4), and when the threshold function  
Figure 5: Large cluster number case study: 40 clusters. was used, the Kneedle algorithm incorrectly outputted \(k^{*}=75\) as the elbow point. This can be explained noting that the Kneedle algorithm's threshold function looks for the last local peak in the output function to determine the elbow point. However, due to the noisy nature of the function in Figure 5f, the algorithm detected an erroneous value of \(k^{*}=75\). Our AutoElbow algorithm, on the other hand, estimated an accurate elbow point, as shown in Figure 5h. This can be explained by the fact that the AutoElbow method produces a smoother function than the Kneedle algorithm (see Figure 5h), which demonstrates the AutoElbow method's advantage. Furthermore, we note that even though the AutoElbow method correctly identifies the elbow point as the maximum value, which could have been applied to the Kneedle algorithm as well, nevertheless we can see that the AutoElbow's final peak localizes at \(k^{*}=44\), which, if taken, would still fall within the error bounds established for this dataset.