Subset Partitioning via Anticlustering

The method of anticlustering partitions a pool of elements into groups (i.e., anticlusters) with the goal of maximizing between-group similarity or within-group heterogeneity. The anticlustering approach thereby reverses the logic of cluster analysis that strives for high within-group homogeneity and low similarity of the different groups. Computationally, anticlustering is accomplished by maximizing instead of minimizing a clustering objective function, such as the intra-cluster variance (used in k-means clustering) or the sum of pairwise distances within clusters. The function anticlustering() implements exact and heuristic anticlustering algorithms as described in Papenberg and Klau (2021; ). The exact algorithms require that the GNU linear programming kit (<>) is available and the R package 'Rglpk' (<>) is installed. A bicriterion anticlustering method proposed by Brusco et al. (2020; ) is available through the function bicriterion_anticlustering(). Some other functions are available to solve classical clustering problems. The function balanced_clustering() applies a cluster analysis under size constraints, i.e., creates equal-sized clusters. The function matching() can be used for (unrestricted, bipartite, or K-partite) matching. The function wce() can be used optimally solve the (weighted) cluster editing problem, also known as correlation clustering, clique partitioning problem or transitivity clustering.


Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


0.6.1 by Martin Papenberg, a month ago

Report a bug at

Browse source code at

Authors: Martin Papenberg [aut, cre] , Meik Michalke [ctb] (centroid based clustering algorithm) , Gunnar W. Klau [ths] , Juliane V. Tkotz [ctb] (package logo) , Martin Breuer [ctb] (Bicriterion algorithm by Brusco et al.)

Documentation:   PDF Manual  

MIT + file LICENSE license

Imports Matrix, RANN

Suggests knitr, Rglpk, rmarkdown, testthat

System requirements: The exact (anti)clustering algorithms require that the GNU linear programming kit (GLPK library) is installed (<>). Rendering the vignette requires pandoc.

See at CRAN