# Fuzzy Clustering Approaches Based on Numerical Optimizations of Modified Objective Functions
## 2 Classical FCM and Modifications on Its Objective Function  
The classical Fuzzy C-Means algorithm (FCM), developed by [PERSON] and refined by [PERSON], is the cornerstone of the fuzzy cluster analysis. It is a generalization of the well-known K-Means algorithm, involving the notion of fuzziness degree, consequently allowing for partial memberships of the data instances in the generated clusters. The algorithm is fundamentally an unsupervised procedure, as no prior information (in the form of predefined classes or labeled responses) is provided. FCM works as an iteration scheme, aiming to achieve a nonlinear optimization of an objective function defined as  
\[J(X,\ U,\ V;\ m,\ C)=\sum_{i=1}^{n}\sum_{j=1}^{C}\mu_{ij}^{m}d^{2}\left(x_{i}, \ c_{j}\right) \tag{1}\]  
Here, X denotes the dataset, \(U\) denotes the membership matrix, and \(V\) denotes the cluster centers. Hyper-parameter \(m\) is the fuzziness degree (or fuzzy exponent) for controlling the level of fuzziness in the generated clusters [12]. Generally, it is given values larger than 1 (but not larger than 2.5). The greater the value of \(m\), the more will be the fuzziness and less distinct the generated clusters. In addition, the hyper-parameter \(C\) represents the number of clusters, \(n\) is the size of the dataset, \(x_{i}\) is the \(i\)-th instance, \(c_{j}\) is the center of the \(j\)-th cluster, and \(\mu_{ij}\) is the membership degree of the \(i\)-th element in the \(j\)-th cluster. Two other hyper-parameters of this algorithm are the scale of tolerance \(Tol\) and the distance metric (d) [13].  
The objective function is optimized using Lagrange multipliers to form a dual updating scheme that re-calculates the cluster centers and the membership degrees of the data instances into the clusters, as in the following pseudo-code [14]:  
1. Initialize the centers of the clusters, assigning as values random data instances.
2. Initialize the partition matrix (assigning 0 to all its entries).
3. Set \(k\ =\ 1\) (number of iterations).
4. Evaluate the \(\mathrm{d_{ij}}\) values (i.e., the distances of instances from cluster centers).
5. Update membership values as \(\mu_{ij}=\dfrac{\dfrac{-\dfrac{2}{\mathrm{m-1}}}{2}}{\sum_{k=1}^{\mathrm{c}_{ ik}}\dfrac{-\dfrac{2}{\mathrm{m-1}}}{\sum_{j=1}^{\mathrm{c}_{ik}}\mu_{ij}^{m}}}\)
6. Update the centers of the clusters as \(\mathrm{c_{i}}=\frac{\sum_{j=1}^{\mathrm{c}_{ik}}\mu_{ij}^{m}\mathrm{X_{j}}}{ \sum_{j=1}^{\mathrm{c}_{ik}}\mu_{ij}^{m}}\)
7. \(k\ =\ k+1\) (increment the number of iterations).
8. If \(\|\mathrm{U_{k-1}-U_{k-2}}\|>Tol\) jump to step 4.
9. END.  
Although the FCM algorithm has a multitude of successful applications, there are conversely many datasets exhibiting complex distributions, such as overlapping clusters and variety in the size and density of the clusters, where the FCM would underperform, generating clusters that are poorly defined, and the membership values of data instances not being properly assigned to the clusters [15]. In this research work, we are going to consider several modifications (described in the following paragraphs) that are either novel in the way the objective function is modified or in the way the iterative procedure is constructed. In each modification, an extra term is involved in the original objective function of the original FCM, aiming to divert the tendencies of the original algorithm to make them more adaptable to certain types of datasets. In all the cases, the coefficient \(\lambda\), known as the regularization weight, controls the strength of the additional term, thus representing a hyper-parameter that may be tuned.