K q-flats
In data mining and machine learning, k q-flats algorithm is an iterative method which aims to partition m observations into k clusters where each cluster is close to a q-flat, where q is a given integer. It is a generalization of the k-means algorithm.