**Procedure**: Multi Objective Subspace Clustering algorithm |

Begin |

Apply preprocessing phase on data set *D * |

= initial population of relevant subspaces /* Popsize = */ |

While (the termination criterion is not satisfied) |

for *i *= 1 to // for each individual in subspace |

Randomly select chromosomes from the population |

Call subspace_update ( ) |

* *Compute objective functions for current chromosomes |

* *Apply crossover operation with probability |

* *Apply mutation operator with mutation probability |

* *Compute objective functions for new offsprings |

end for |

end while |

Select the best solution from population |

End |

Procedure subspace_update ( ) |

* *Choose cluster centers {*s *= 1,…, from data set generated |

* *by preprocessing phase |

* *Repeat |

Compute the membership matrix |

for *i *=1 to do |

for *j* = 1 to do // —number of cluster centers |

if dist(, ) < dist(, ) then |

= 0; |

* * else |

* * = 1; |

end if |

end for |

* * * *end for |

Compute the cluster center: |

; |

Compute cluster weights encoded in each chromosome using |

membership matrix and cluster center |

until convergence |