English

Recombinator-k-means: An evolutionary algorithm that exploits k-means++ for recombination

Machine Learning 2022-02-10 v5 Machine Learning

Abstract

We introduce an evolutionary algorithm called recombinator-kk-means for optimizing the highly non-convex kmeans problem. Its defining feature is that its crossover step involves all the members of the current generation, stochastically recombining them with a repurposed variant of the kk-means++ seeding algorithm. The recombination also uses a reweighting mechanism that realizes a progressively sharper stochastic selection policy and ensures that the population eventually coalesces into a single solution. We compare this scheme with state-of-the-art alternative, a more standard genetic algorithm with deterministic pairwise-nearest-neighbor crossover and an elitist selection policy, of which we also provide an augmented and efficient implementation. Extensive tests on large and challenging datasets (both synthetic and real-word) show that for fixed population sizes recombinator-kk-means is generally superior in terms of the optimization objective, at the cost of a more expensive crossover step. When adjusting the population sizes of the two algorithms to match their running times, we find that for short times the (augmented) pairwise-nearest-neighbor method is always superior, while at longer times recombinator-kk-means will match it and, on the most difficult examples, take over. We conclude that the reweighted whole-population recombination is more costly, but generally better at escaping local minima. Moreover, it is algorithmically simpler and more general (it could be applied even to kk-medians or kk-medoids, for example). Our implementations are publicly available at \href{https://github.com/carlobaldassi/RecombinatorKMeans.jl}{https://github.com/carlobaldassi/RecombinatorKMeans.jl}.

Keywords

Cite

@article{arxiv.1905.00531,
  title  = {Recombinator-k-means: An evolutionary algorithm that exploits k-means++ for recombination},
  author = {Carlo Baldassi},
  journal= {arXiv preprint arXiv:1905.00531},
  year   = {2022}
}

Comments

18 pages, 5 figures (1 in main text), 7 tables (5 in main text)

R2 v1 2026-06-23T08:54:45.024Z