clustering.design: Designs generated by clustering algorithms

View source: R/clustering_design.R

clustering.designR Documentation

Designs generated by clustering algorithms

Description

This function is for producing designs by minimizing the clustering error.

Usage

clustering.design(
  n,
  p,
  X = NULL,
  D.ini = NULL,
  multi.start = 1,
  alpha = 1,
  Lloyd.iter.max = 100,
  cen.iter.max = 10,
  Lloyd.tol = 1e-04,
  cen.tol = 1e-04
)

Arguments

n

design size.

p

design dimension.

X

candidate points in [0,1]^p. If X is not provided, Sobol points is generated as cluster points.

D.ini

initial design points. If D.ini is not provided, Sobol points are generated as initial design.

multi.start

number of starting designs (cluster centers).

alpha

power of the Euclidean distance.

Lloyd.iter.max

maximum number of iterations for the Lloyd algorithm.

cen.iter.max

maximum number of iterations for the center calculation for each cluster.

Lloyd.tol

minimum relative change for the Lloyd algorithm to continue.

cen.tol

minimum relative change for the center calculation algorithm to continue.

Details

clustering.design produces a design by clustering algorithms. It minimize the clustering error (see cluster.error) by Lloyd's algorithm. When \alpha > 2, accelerated gradient descent is used to find the center for each cluster (Mak, S. and Joseph, V. R. 2018). When \alpha \leq 2: Weizfeld algorithm is used to find the center for each cluster. Let \bm{x}^{(0)}_i=\bm{x}_i denote the initial position of the ith center and and let \bm{S}_i represent the points within its Voronoi cell. The center is then updated as: \bm{x}^{(k+1)}_i = \left.\left(\sum_{\bm{s}\in\bm{S}_i}\frac{\bm{s}}{\|\bm{s}-\bm{x}^{(k)}_i\|_2^{2-\alpha}}\right)\middle/ \left(\sum_{\bm{s}\in\bm{S}_i}\frac{1}{\|\bm{s}-\bm{x}^{(k)}_i\|_2^{2-\alpha}}\right)\right. \quad \text{for } k=0, 1, \dots.

Value

design

final design points.

cluster

cluster assignment for each cluster points.

cluster.error

final cluster error.

References

Mak, S. and Joseph, V. R. (2018), “Minimax and minimax projection designs using clustering,” Journal of Computational and Graphical Statistics, 27, 166–178.

Examples

n = 20
p = 3
X = spacefillr::generate_sobol_set(1e5*p, p)
D = clustering.design(n, p, X)


SFDesign documentation built on June 22, 2025, 1:06 a.m.