Algorithm 1.
eFCM Algorithm
| procedure eFCM(X, n) | ▷ Where, X: Incomplete Data, n: Imputation Times |
| EM(X) | ▷ Expectation Maximization |
| EM Posterior | |
| for i = 1 : n do | |
| Build Markov Chain | |
| Between imputation steps | |
| Interior Imputation Steps | |
| Impute X to get Yi | |
| for cluster = 2 : maxCluster do | ▷ Find Best |
| Clusters number | |
| for m = 1 : 10 do | |
| Initialize U(0) | |
| InitializeCentroids(Yi, ClusterNumber) | |
| for r = 1 : MaxIteration do | |
| Calculate V(r) | |
| Calculate U(r) | |
| if max|U(r) − U(r−1)| < ε then | |
| Break | |
| Update Xb Matrix and Lx Matrix | |
| Per Xb matrix, extract best cluster no. and fuzzifier | |
| return Lx, Cluster, Fuzzifier | ▷ Output |
| End procedure | |