## 2 FCM Clustering Algorithm
### Characteristic Function  
FCM clustering is to obtain the clustering center by minimizing the objective function, which is essentially the sum of the Euclidean distances (the sum of the squares of errors) from each point to each class. The objective function can be expressed as follows:  
\[J_{m}=\sum\limits_{i=1}^{c}\sum\limits_{k=1}^{n}u_{ik}^{m}\|X_{k}-V_{i}\|^{2} \tag{1}\]  
where \(X=\{X_{1},X_{2},\cdots,X_{n}\}\subset\mathbb{R}^{2}\) is a finite sample in the two-dimensional real number space \(\mathbb{R}^{2}\), which contains \(n\) sample data subsets; \(X_{k}=(x_{k1},x_{k2})\in\mathbb{R}^{2}\) is the sample feature vector, that is, the dip direction and dip angle parameter vector of the \(k\)-th sample; \(x_{k1}\) represents the dip direction; \(x_{k2}\) represents the dip angle; \(V_{i}=(v_{i1},v_{i2})\) is the \(i\)-th cluster center; \(c\) is the number of cluster centers; and \(u_{ik}\) represents the degree to which the \(k\)-th sample belongs to the \(i\)-th cluster center and satisfies \(u_{ik}\in[0,1]\) and \(\sum\limits_{i=1}^{c}u_{ik}=1\).  
When \(X_{k}\
eq V_{i}\), the following can be written:  
\[u_{ik}=\left[\left(\frac{1}{\|X_{k}-V_{i}\|^{2}}\right)\right]\cdot\left[\sum \limits_{j=1}^{c}\left(\frac{1}{\left\|X_{k}-V_{j}\right\|^{2}}\right)\frac{ 1}{m-1}\right]^{-1} \tag{2}\]  
\[V_{i}=\frac{\sum\limits_{k=1}^{n}u_{ik}^{m}X_{k}}{\sum\limits_{k=1}^{n}u_{ik} ^{m}},(1\leq i\leq c,1\leq k\leq n) \tag{3}\]  
where \(m\) is the fuzzy weighted index and \(m\in[1,\infty)\), and \(j\) is a randomly selected subscript. The index \(m\) controls the allocation of membership degree and the fuzzy degree of clustering. The selection of \(m\) has been discussed in previous studies [17; 25], and in general, taking \(m=2\) can meet the requirements.  
By using the FCM clustering algorithm mentioned above, a fuzzy C-partition of \(X\) can be determined. This fuzzy processing method can precisely characterize the actual distribution of data, which is particularly suitable for situations in which various data points have overlapping distributions. Nevertheless, because the FCM clustering algorithm is realized through the iterative optimization of the objective function, the objective function \(J_{m}\) decreases in the iterative process, and the option of the initial clustering centers and the input order of samples have a remarkable impact on the final clustering results. If the initial clustering centers are imbalanced in the entire sample space, the FCM clustering algorithm will probably fall into local minima, which is particularly prominent when the data volume is large, especially in high-dimensional cases. Thus, it is crucially important to give the initial cluster center as accurately as possible. That is, using clustering methods to divide the occurrence data of structural planes requires a rough judgment of the grouping beforehand, including the number of clusters and the orientation of cluster centers. For this problem, the common countermeasure is to cluster with several different initial clustering centers and then choose the most satisfactory one as the final clustering result. When this method is used for data analyses of the structural plane orientation, it not only requires a large amount of work but also cannot guarantee the optimality of clustering results. In view of this, an attempt is made to use the ABC algorithm to solve the global optimization problem in the FCM clustering algorithm of rock mass structural planes.