anticlust: 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; <doi:10.1037/met0000301>). The exact algorithms require that the GNU linear programming kit (<https://www.gnu.org/software/glpk/glpk.html>) is available and the R package 'Rglpk' (<https://cran.R-project.org/package=Rglpk>) is installed. A bicriterion anticlustering method proposed by Brusco et al. (2020; <doi:10.1111/bmsp.12186>) is available through the function bicriterion_anticlustering(), kplus_anticlustering() implements the k-plus anticlustering approach proposed by Papenberg (2023; <doi:10.31234/osf.io/7jw6v>). 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.

 Version: 0.6.4 Depends: R (≥ 3.6.0) Imports: Matrix, RANN (≥ 2.6.0) Suggests: knitr, Rglpk, rmarkdown, testthat Published: 2023-05-02 Author: Martin Papenberg [aut, cre], Meik Michalke [ctb] (centroid based clustering algorithm), Gunnar W. Klau [ths], Juliane V. Nagel [ctb] (package logo), Martin Breuer [ctb] (Bicriterion algorithm by Brusco et al.), Marie L. Schaper [ctb] (Example data set) Maintainer: Martin Papenberg BugReports: https://github.com/m-Py/anticlust/issues License: MIT + file LICENSE URL: https://github.com/m-Py/anticlust NeedsCompilation: yes SystemRequirements: The exact (anti)clustering algorithms require that the GNU linear programming kit (GLPK library) is installed (). Rendering the vignette requires pandoc. Citation: anticlust citation info CRAN checks: anticlust results

Documentation:

 Reference manual: anticlust.pdf Vignettes: Using the R package anticlust for stimulus selection in experiments