## 2 Related Works
### Clustering APPLICATION in CPPs  
Among the available clustering methods, k-means, spectral, and DBSCAN have been investigated more than others for solving CPPs. Therefore, we consider the proposed algorithms based on these methods. Several solutions have been proposed based on the DBSCAN clustering method to appropriately locate the SDN controllers, as described in [25; 26; 27; 28; 29]. Since the method suggests the proper number of clusters, all of the proposed algorithms recommend a number of clusters, such as in [25], where the appropriate number of controllers is determined using silhouette analysis and gap statistics. However, one of the main disadvantages of the algorithm is that the value of the minimum number of objects should be defined in advance, which limits its ability to cluster datasets with high-density differences. Additionally, the neighborhood radius may not be suitable for all clusters, and this algorithm suffers from a high computational overhead. In [26], the density-based controller placement (DBCP) method partitioned the given network using a density-based clustering method. This research considered CPPs with and without the capacity of controllers. Clustering by fast search and find of density peaks (CFSFDP) proposed in [30] has been used in [27; 28] to deal with the CPP. CFSFDP is a density-based clustering algorithm that requires fewer initial parameters and has more execution speed. However, it suffers from the need to experimentally preset the number of clusters. The authors in [27] used a comprehensive consideration value according to [30], \(\gamma\), which was calculated as the product of local density (\(\rho\)) and minimum distance (\(\delta\)). However, two problems are identified with this definition. Firstly, the values of \(\rho\) and \(\delta\) may have different orders of magnitude, so they were normalized to ensure equal treatment. Secondly, nodes at different densities may have the same \(\delta\) value, making it challenging to select the initial clustering center. To address this, the weight of \(\delta\) was increased in low-density areas. The modified calculation equation for \(\gamma\) was presented as \(\gamma_{i}=\rho_{i}.\delta\gamma\big{(}\frac{3}{4}\big{)}\). A higher \(\gamma\) value indicates a higher likelihood of being a clustering center. The authors proposed a method to automatically determine the inflection point of \(\gamma\), which corresponds to the transition from nonclustering centers to clustering centers. By analyzing the curve of \(\gamma\) values and finding the vertex of a folded line, the inflection point was identified. The optimal number of controllers was determined by counting the number of points with values greater than the inflection point \(\gamma\) value, and the locations of these points represented the deployment of clustering centers. The algorithm provided a step-by-step process for the selection of clustering centers. The researchers in [28] utilized the idea of information entropy and a firefly algorithm for determining the local density and considered a point with the high density of switches as the cluster center. In the algorithm, the number and location of the controllers are discovered based on the jumping point in the decision graph. The authors in [29] presented an improved density-based controller placement algorithm (DCPA) that enhances the efficiency of controller placement in a network. This algorithm achieves the required number of controllers by exploring candidate values of the radius and dividing the entire network into multiple subnetworks. Within each subnetwork, the controllers are deployed with the dual objective of minimizing the average propagation latency and the worst-case propagation latency between controllers and switches. The spectral clustering method was used in [31; 32; 33; 34; 35] for CPP clustering. It is worth mentioning that the load-balancing parameter was considered in [31; 32; 35], and only [32; 35] introduced algorithms for estimating the proper number of controllers.