# A Novel Adaptive FCM with Cooperative Multi-Population Differential Evolution Optimization
## 4 Proposed Co-Evolutionary Framework
### Evaluation of Clustering Results
It uses a standard RBF kernel and GA parameters: population size of 50, max iterations of 500, crossover and mutation probabilities of 0.6 and 0.05, respectively. The FCM parameters are the same as those used for FCM-AO. The number of clusters is varied from \(c=2\) to \(c=\sqrt{n}\) and all implementations are run parallelly. 5. The entropy weighted-FCM (or EwFCM) as presented in [30] is implemented with an entropy threshold parameter set to 0.05, the maximum number of cycles of 150. The number of clusters is varied from \(c=2\) to \(c=\sqrt{n}\) and all implementations are run parallelly. We do not present these algorithms in detail here and the reader is referred to the original papers. The proposed algorithm will henceforth be referred to as Cooperative DE-FCM or CDE-FCM. The parameters are SP = 10, number of subpopulations = 9 (one for each instance of DE), generations \(G=20\), number of candidate vectors in each subpopulation \(p=15\). The individual parameter settings of the DE variants are listed in Tables 1 and 2. We compared the performance of these algorithms using cluster validity measures listed in Section 4.5 on two synthetic datasets and four datasets from the UCI ML repository [62]. All algorithms are implemented using MATLAB 2022a on an Intel(r) Core(tm) i7-8650U CPU with 8 cores at 1.90 GHz. \begin{table}
\begin{tabular}{l c c c c c c} \hline \hline  & **DE/rand/1/bin** & **DE/best/1/bin** & **DE/rand/2/bin** & **DE/best/2/bin** & **DE/current-to-rand/1** & **DE/event/1** \\ \hline \(F_{s}\) & 1.0 & 1.0 & 0.5 & 0.5 & 0.8 & 0.8 \\ \hline \(C_{r}\) & 0.9 & 0.1 & 0.9 & 0.9 & 0.1 & 0.1 \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Parameter settings for DE variants 1–6. **Data1** is a 900-point dataset in two dimensions. There are three well-separated and compact clusters with 300 data points in each cluster. The clusters are generated using normal distributions centered at (1,1), (3,3), and (4,5). The dataset is shown in Figure 2. The three-cluster FCM-AO partition is shown in Figure 3 and the three-cluster CDE-FCM after cluster prototype initialization is shown in Figure 4. The quality of the CDE-FCM can be seen to be marginally better than randomly initialized FCM-AO. \begin{table}
\begin{tabular}{l c c} \hline \hline  & **CoDE** & **jDE** & **JADE** \\ \hline \multirow{3}{*}{DE Set} & DE/rand/1/bin & \multirow{3}{*}{} \\  & DE/rand/2/bin & \multirow{3}{*}{} \\  & DE/current-to-rand/1 & \\ \hline \multirow{3}{*}{\([F_{s},\,C_{r}]\)} & [1.0, 0.1] & \multirow{3}{*}{} \\  & [1.0, 0.9] & \multirow{3}{*}{} \\  & [0.8, 0.2] & \\ \hline \(F_{l}\) & & 0.1 \\ \hline \(F_{u}\) & & 0.9 \\ \hline \(\tau_{1}\) & & 0.1 \\ \hline \(\tau_{2}\) & & 0.1 \\ \hline \(C_{r}\) & & 0.5 \\ \hline \multicolumn{3}{l}{Parameter adaption rate, \(c\)} & 0.1 \\ \hline \multicolumn{3}{l}{\% Top best, \(p\)} & 5 \\ \hline Initial \(F_{s}\) & & 0.5 \\ \hline \multicolumn{3}{l}{Initial \(C_{r}\)} & 0.5 \\ \hline \hline \end{tabular}
\end{table} 
Table 2: Parameter settings for DE variants 7–9. FCM-AO, PSO-V, GAKPCM, and EwFCM are run for \(c=2\) to \(c=30\). For ADEFC and CDE-FCM the vector representation is of length \(60\) with \(d=2\) and \(c_{max}=30\). The run-time parameters are chosen such as the convergence criteria for all algorithms are roughly the same. For comparison, the run-time of the different algorithms is presented in Table 3. As can be seen, there is not much to be gained by using sophisticated schemes to address the problems of prototype initialization and unknown number of clusters for a small _well-separated_ dataset as Data1. The naive version of FCM-AO with random initializations works as well as any other scheme and in a fraction of the time. Figure 4: CDE-FCM with evolved initial cluster prototypes for \(c=3\). Figure 3: FCM-AO with randomly initialized cluster prototypes for \(c=3\). **Data2** is a 2000-point dataset in two dimensions. Unlike **Data1**, the separation between the clusters is not well defined.