# K-RBBSO Algorithm: A Result-Based Stochastic Search Algorithm in Big Data
## 1 Introduction
Further, as in the case of the SA algorithm, when the silhouette coefficient value exceeds a specific threshold, the solution obtained based on other OBs is no longer searched--only that obtained based on a single OB is searched repeatedly. Problem 2 concerns a shortcoming of the silhouette coefficient itself. In the algorithm devised by [PERSON] [12], the silhouette coefficient between each data point x in the data set S(x) and each other data point must be determined. Consider the clusters A, B, and C, where a(x) denotes the average distance between the data point x belonging to cluster A and other data points in the same cluster and d(x, B) and d(x, C) denote the average distances of x and each data point in clusters B and C, respectively. In this case, if d(x, B) \(<\) d(x, C), then b(x) = d(x, B). When these conditions are satisfied, the silhouette coefficient corresponding to the data point x may be calculated using Equation (3), and the final silhouette coefficient for all data can be calculated using Equation (4). \[S(x)=\frac{\{b(x)-a(x)\}}{max\{a(x),\ b(x)\}} \tag{3}\]  
\[Maximize\left(\frac{1}{n}\right)\sum_{i=1}^{n}S(x_{i}) \tag{4}\]  
However, as stated above, because the computation of the silhouette coefficient involves the computation of the average distance between every data point in the dataset and the data point x, the computation time increases exponentially with the size of the data set. Further, the optimum solution cannot be identified until shortly before the completion of the computation based on the termination condition of the clustering algorithm to which the silhouette coefficient is applied. Moreover, the algorithm that performs a search based on previous results records many instances of iteration on its own. As the number of iterations increases, the calculation time is increased [15]. Therefore, if the silhouette is applied, a high calculation time is required. The problem of increasing the calculation time because of the silhouette and the amount of data should be considered [16]. Problem 3 pertains to the cluster development procedure. Typically, an initial solution is determined using a random function prior to clustering. In the case involving three clusters, the solution is expressed in the form \"1, 2, 3\" or \"0 0 1\" to indicate the cluster to which each data point belongs. The difficulty lies in the determination of the initial solution. The probability of discovering an optimal solution is high when the initial solution is good; otherwise, the process becomes very time-consuming. In this study, we introduce the k-means-initiated rapid biogeography-based silhouette optimization (K-RBBSO) algorithm to resolve the three aforementioned problems. First, Problems 2 and 3 are solved by identifying the initial value using a single iteration of k-means. The k-means algorithms perform clustering based on the average value of the data belonging to each cluster [17; 18]. In this case, the computation required to evaluate the silhouette coefficient is reduced by controlling the randomness of the initial solution generation. After identifying the initial solution, the computation speed is improved using the migration and mutation rules of biogeography-based optimization (BBO) introduced by [PERSON] & [PERSON] [19]. Subsequently, the evaluation function is changed from the existing Euclidean distance to the silhouette coefficient. BBO easily identifies an optimal solution when the number of clusters required for clustering is known. However, a fixed number of clusters is not applicable in our case--this must be obtained based on experiments.