Centroidal Voronoi Tessellations: Applications and Algorithms Author(s): Qiang Du, Vance Faber and Max Gunzburger Source: SIAM Review, Vol. 41, No. 4 (Dec., 1999), pp. 637-676 Published by: Society for Industrial and Applied Mathematics Stable URL: http://www.jstor.org/stable/2653198 Accessed: 09-08-2016 14:52 UTC

REFERENCES Linked references are available on JSTOR for this article: http://www.jstor.org/stable/2653198?seq=1&cid=pdf-reference#references_tab_contents You may need to log in to JSTOR to access the linked references.

Your use of the JSTOR archive indicates your acceptance of the Terms & Conditions of Use, available at http://about.jstor.org/terms

JSTOR is a not-for-profit service that helps scholars, researchers, and students discover, use, and build upon a wide range of content in a trusted digital archive. We use information technology and tools to increase productivity and facilitate new forms of scholarship. For more information about JSTOR, please contact [email protected].

Society for Industrial and Applied Mathematics is collaborating with JSTOR to digitize, preserve and extend access to SIAM Review

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms SIAM REVIEW (c) 1999 Society for Industrial and Applied Mathematics Vol. 41, No. 4, pp. 637-676

Centroidal Voronoi Tessellations: Applications and Algorithms*

Qiang Dut Vance Fabert Max Gunzburger?

Abstract. A centroidal Voronoi tessellation is a Voronoi tessellation whose generating points are the centroids (centers of mass) of the corresponding Voronoi regions. We give some applica- tions of such tessellations to problems in image compression, quadrature, finite difference methods, distribution of resources, cellular biology, statistics, and the territorial behavior of animals. We discuss methods for computing these tessellations, provide some analyses concerning both the tessellations and the methods for their determination, and, finally, present the results of some numerical experiments.

Key words. Voronoi tessellations, centroids, vector quantization, data compression, clustering

AMS subject classifications. 5202, 52B55, 62H30, 6502, 65D30, 65U05, 65Y25, 68U05, 68U10

Pll. S0036144599352836

1. Introduction. Given an open set Q C RN, the set {1}k is called a tessel- lation of Q if vi n Vj = 0 for i V& j and U1=,Vi = Q. Let denote the Euclidean norm on RN. Given a set of poinits {Zi}i=1 belonging to Q, the Voronoi region Vi corresponding to the point zi is defined by

(1.1)~ V V= {x EQ I Ix - z1 < x - zl for j=l,...,)k, j V-i I

The points {z%}f are called generators. The set {VJ}k= is a Voronoi tessellation or Voronoi diagram of Q, and each Vi is referred to as the Voronoi region corresponding to Zi. (Depending on the application, there exist many different names for Voronoi re- gions, including Dirichlet regions, area of influence polygons, Meijering cells, Thiessen polygons, and S-mosaics.) The Voronoi regions are polyhedra. These tessellations, and their dual tessellations (in R2, the Delaunay triangulations), are very useful in a variety of applications. For a comprehensive treatment, see [47].

*Received by the editors December 15, 1998; accepted for publication (in revised form) March 3, 1999; published electronically October 20, 1999. http://www.siam.org/journals/sirev/41-4/35283.html tDepartment of Mathematics, , Ames, IA 50011-2064, and Hong Kong University of Science and Technology, Clear Water Bay, Kowloon, Hong Kong ([email protected]). The research of this author was supported in part by National Science Foundation grant DMS- 9796208 and by grants from HKRGC and HKUST. tCommunications and Computing Division, Los Alamos National Laboratory, Los Alamos, NM 87545. Current address: Lizardtech Inc., 1520 Bellevue Avenue, Seattle, WA 98122 (vxf@lizardtech. com). The research of this author was supported in part by the Department of Energy. ?Department of Mathematics, Iowa State University, Ames, IA 50011-2064 (gunzburg@iastate. edu). The research of this author was supported in part by National Science Foundation grant DMS-9806358.

637

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms 638 QIANG DU, VANCE FABER, AND MAX GUNZBURGER

I 0

0~~~~

Fig. 1.1 On the left, the Voronoi regions corresponding to 10 randomly selected points in a square; the density function is a constant. The dots are the Voronoi generators and the circles are the centroids of the corresponding Voronoi regions. Note that the generators and the centroids do not coincide. On the right, a 10-point centroidal Voronoi tessellation. The dots are simultaneously the generators for the Voronoi tessellation and the centroids of the Voronoi regions.

Given a region V C RN and a density function p, defined in V, the mass centroid z* of V is defined by

/YP(y) dy (1.2) z* J /8p(y) dy

Given k points zi, i = 1, ... , k, we can define their associated Voronoi regions Vi, i = 1, ... , k. On the other hand, given the regions Vi, i = 1, . . , k, we can define their mass centroids zi, i = 1, ..., k. Here, we are interested in the situation where

(1.3) zi = Z* i-=1, ...,)k, i.e., the points zi that serve as generators for the Voronoi regions Vi are themselves the mass centroids of those regions. We call such a tessellation a centroidal Voronoi tessellation. This situation is quite special since, in general, arbitrarily chosen points in RJN are not the centroids of their associated Voronoi regions. See Figure 1.1 for an illustration in two dimensions. One may ask, How does one find centroidal Voronoi tessellations, and are they of any use? In this paper, we review some answers to these questions. Concerning the first question, and to be more precise, consider the following problem:

Given a region Q C RjtN a positive integer k, and a density function p, defined for y in Q, find k points zi E Q and k regions Vi that tessellate Q such that simultaneously for each i,

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms CENTROIDAL VORONOI TESSELLATIONS 639

Fig. 1.2 Two centroidal Voronoi tessellations of a square. The points zl and Z2 are the centroids of the rectangles on the left or of the triangles on the right.

Vi is the Voronoi region for zi and zi is the mass centroid of Vi.

The solution of this problem is in general not unique. For example, consider the case of N = 2, Q C JR2 a square, and p 1. Two solutions are depicted in Figure 1.2; others may be obtained through rotation. Another example is provided by the three regular tessellations of JR2 into squares, triangles, and hexagons. The plan of the remainder of the paper is as follows. First, in the remainder of section 1, we give some remarks about various generalizations of centroidal Voronoi diagrams. In section 2, we consider applications. These are drawn from the worlds of data compression, numerical analysis, biology, statistics, and operations research. In section 3, we discuss properties of these tessellations and their relation to the critical points of an energy (or cost or error) functional. In section 4, we present probabilistic approaches for computing these tessellations. In section 5, we present some deterministic methods. In section 6, we discuss some theoretical issues related to one of these methods. Some numerical experiments are reported in section 7, and, finally, concluding remarks are given in section 8.

1. 1. Centroidal Voronoi Tessellations in Other Metrics. We first consider the case where, instead of a region Q, we are given a discrete set of points W y{yi}=L in RN. A set {V}k 1 is a tessellation of W if vi n Vj 0 for i f j and Uk=1V% = W. Given a set of points {Z%}>kl belonging to RN, Voronoi sets are now defined by

(1.4) V?={xeW I Ix-zil< x-zjl for j=1,...,k, j# i,

where equality holds only for i < j}.

Other tie-breaking rules for points equidistant to two or more generators can also be used. Given a density function p defined in W, the mass centroid z* of a set V c W is now defined by

(1.5) E P(Y)jy_Z*j2= inf E p(Y)jy_-z2, yEV yEV where the sums extend over the points belonging to V, and V* can be taken to be V or it can be a larger set like RN. In the statistical and vector quantization literature (see, e.g., [15, 19, 34]) discrete centroidal Voronoi tessellations are often related to optimal k-means clusters and Voronoi regions and centroids are referred to as clusters and cluster centers, respectively. More discussion of this topic is provided in section 2.3.

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms 640 QIANG DU, VANCE FABER, AND MAX GUNZBURGER

The notions of Voronoi regions and centroids, and therefore of centroidal Voronoi regions, may be generalized to more abstract spaces and to metrics other than the Euclidean f2-norm. For example,

(1.6) d(x, y) = llx - yllefp will be of interest to us. For another example, let d(x, y) denote a distance function induced by a norm that is equivalent to the 12 norm on RRN. Let -< be an order of RN. Then, Voronoi tessellations of Q, with respect to this metric, are defined by

(1.7) Vi = x E Q I d(x, zi) < d(x, zj), j = 1,. .. .,k, j :/+ i , and d(x, zi) =d(x, zj), j -

Notice that, without the inclusion of the part d(x, zi) = d(x, zj), Vi does not nec- essarily provide a partition of Q, as there could be nonempty boundaries. Using a partial order, one may decide how portions of boundaries with nonempty interiors get assigned to specific Voronoi regions. Such a partition, in general, only guarantees that the Voronoi regions are star shaped (with respect to the metric) [37]. Note that if one instead considers

(1.8) ~Vi ={x E Q I d(x, zi) < d(x, zj), j = k j :?i },

then the regions may overlap but they remain convex. A generalized definition of the centroid z* of a region V with respect to a density function p might be given by

(1.9) p p(y) d(z ,y) dy = irnf* p(y)d(z, y) dy.

Here, V* can be the closure of V or the region defined by (1.8) or even R N so long as the existence of z* can be guaranteed by either the compactness or the convexity of the region and by the convexity of the functional. Centroidal Voronoi tessellations of Q can again be defined by (1.3). One may generalize (1.9) even further to

(1 Io) Jp(y)f(d(z*,y))dy= inf J p(y)f (d(z, y)) dy

for some function f such that f(d(z* - y)) is convex in y. The notion of Voronoi regions may be extended to weighted Voronoi regions [30] and to more abstract spaces, and the generators can also be lines, areas, or other more abstract objects [47]. In addition, the metrics need not be induced by a norm.

2. Applications. In this section, we provide a number of applications of cen- troidal Voronoi tessellations.

2.1. Data Compression in Image Processing. The first application is to data compression. We will use a context from image processing; however, the basic ideas and principles are valid for many other data compression applications. The setting is as follows. We have a color picture composed of many pixels, each of which has an associated color. Each color is a combination of basic colors such as red, green, and blue. Let the components of y represent a possible combination of the basic colors, and let p(y) denote the number of times the particular combination y occurs in the picture. We let W denote the set of admissible colors, i.e., the set

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms CENTROIDAL VORONOI TESSELLATIONS 641 of allowable combinations of the basic colors. In a given picture, there may be many different colors. For example, there may be on the order of 106 pixels in a picture, with each pixel potentially having a different color. Our task is to approximate the picture by replacing the color at each pixel by one from a smaller set of colors {zi}>'=1, where each zi E W. For related discussions, we refer to [24, 25, 32]. In particular, a discussion of different clustering algorithms in image compression applications can be found in [24]. We give a concrete example. Suppose the picture is composed of 106 pixels and the color at each pixel is determined by a 24-bit number. (We could, for example, have 8 bits each for the intensity of red, green, and blue.) Then, the cardinality of W is 224 and the amount of information necessary to describe the picture is 106 x 24 bits. Now, suppose we approximate the picture using only 8-bit colors, so that now we will use only 256 = 28 possible colors. We still have 106 pixels, so that the amount of information needed to describe the approximate picture is 106 x 8 bits, a reduction of 1/3. Note that we are reducing the amount of data not by reducing the number of pixels but by reducing the amount of information associated with each pixel. A natural question is how one assigns the colors in the original picture to the colors in the set {z2}f z The shell of such an algorithm is given as follows:

Given the set of admissible colors W, a positive integer k, and a density function p defined in W, choose k colors zi belonging to W and k sets Vi that tessellate W, then if y is a color appearing in the original picture and y E Vi, replace y with zi.

(A tie-breaking algorithm must be appended in case y belongs to the boundary of one of the sets Vi.) The definition of this algorithm is completed once one specifies how to choose the sets {z2}>1=l and {?k}>. Clearly, one would want to choose these sets so that the approximate picture using only k colors is a "good" approximation to the given picture that contains many more colors. In a straightforward way, one may use a Monte Carlo method, using p(y) (suitably normalized) as a probability density, to choose the set of approximating colors {zi} 1=.- Once this set is determined, it is natural to choose the assignment sets {}Vi= to be the associated Voronoi sets. Unfortunately, even with k = 256, the approximate pictures produced in this manner are not always satisfactory. A better approximate picture is found if the sets {z%} z and {Vi}t1 are chosen so that the functional

k (2.1) 9 ((Zi) i),i = l, ...,)k) =E E P(yj)Yj-j_Z, 12 i=1 yjEvi

is minimized over all possible sets of k points belonging to W {yi}I1 and all possible tessellations of W into k regions Vi, i = 1, ... , k. Note that no a priori relation between the points zi and subsets Vi is assumed. The motivation for minimizing S is clear: one is then minimizing the sum of the squares of the distances, in the color

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms 642 QIANG DU, VANCE FABER, AND MAX GUNZBURGER

I.''. _] I t,.. .:' .4 _'.''''''' | '' E g W ._. . (...

sI s 1 $ 2 < < |M

e ; .<. . ' w ._ ' .'. . '' t .s@H_, - _~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~......

|'''._,''.. mS"2 . .' i'W,'$.-'.,'..'... ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~...... ''''" ,|,.i.|....:..,,.,,.,' ,;,~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~.,...... '_...... W.._l...: ...... ,,...... ,_...... , :

Fg2IA8-bi gmonochrom ~ ~~ ~ ~ ~ ~ ~ ~ ~pitr ~~ ~ ~(to ~ ~ letan~~~~~~~~~ the ., :F compre,.'.,,.'$ssed ...... 3' bi...... 'image,.s ...... _by ...... the_ Mot Carlo.

simulation (top right), the centroidal Voronoi algorithm (bottom left), and the centroidal Voronoi algorithm with dithering (bottom right).

space W and weighted by the density function p(y), between the colors y, in the picture and the reduced color set zi. It is important to note that the nunimization process is both over all possible subsets {zi}k ' of reduced colors and, independently, over all possible subsets {V}k~ that tessellate W, the only restriction being that both sets have caxdinality k. In section 3, we shall show that 6E is mimimized when the Vi's are the Voronoi sets for the zi$s and, simultaneously, the zi's are the mass centroids of the V..s, in the sense of (1.3) and (1.4), respectively. In other words, the zi's and V2's form a cent roidal Voronoi tessellation with respect to the density function p(y). Note that the centroidal Voronoi property is a necessary (but in general not sufficient) optimality condition; see the discussion related to Figure 6.1 in section 6 1. The same principle can be applied to the compression of monochrome pictures. In Figure 2.1, we give an original 8-bit monochrome picture (top left), an approximate 3-bit compressed image determined by a Monte.Carlo algorithm (top right), and an approximate 3-bit compressed image determnined by a centroidal Voronoi algorithm (bottom left). Clearly, the centroidal Voronoi algorithm results in a better approxi- mate picture. (Of course, there are other image-data compression algorithms that are more effective than the Monte Carlo algorithm; again, see, e.g., [24] for discussions and comparisons.) The compressed image obtained by the centroidal Voronoi algorithm suffers from a phenomenon known as contouring; see the shoulder in the image on the bottom

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms CENTROIDAL VORONOI TESSELLATIONS 643 left of Figure 2.1. We emphasize that contouring is a difficulty associated with the assignment step of the algorithm and not with the particular choice for the reduced set of colors. Contouring occurs when the colors (or, in the case of a monochrome picture, the shades of gray) in the original, uncompressed picture are changing "continuously." Then, the colors (or shades) of two neighboring pixels in the physical picture can be on opposite sides of an edge of a Voronoi region in color space. As a result, two different colors (or shades) are assigned to the two neighboring pixels so that the distribution of colors in the compressed picture becomes discontinuous, e.g., contours appear in the image. Contouring can be ameliorated by dithering. For example, instead of always assigning a color to the nearest color in the reduced set, i.e., to the generator of the Voronoi region to which the color belongs, one sometimes assigns a color to the second-nearest generator. The assignments can be done based on the relative distances from the point to be assigned to the two nearest generators. Then, if these distances are nearly equal, i.e., if the point is near the boundary of its Voronoi polygon in color space, it is almost as probable that the point will be assigned to the second nearest generator. On the other hand, if the point is near its Voronoi generator, it is much more probable that it will be assigned to that point. If d1 and d2 denote the distances in color space between the point to be assigned and the nearest and second nearest Voronoi generators, respectively, one simple aproach is to assign the point to the nearest generator with probability d2/(d1 + d2) and to the second nearest generator with probability d1/(d1 + d2). The bottom right image in Figure 2.1 is that of a compressed image determined using the same centroidal Voronoi tessellation for the approximating shades of gray as was used for the bottom left picture, but for which the assignment is done by this dithering algorithm. The contours have now disappeared.

2.2. Optimal Quadrature Rules. For a given region Q c RN and a given positive integer k, consider quadrature rules of the type

k f f(y)dy Aif(zi),

i~~~~ 1~~ where {zi}j=1 are k points in Q and {Aj}k=1 are the volumes of a set of regions {V}k that tessellate Q. We would like to choose the zi's and Vi's so that the quadrature rule is, in some sense, as accurate as possible. Let us examine the quadrature error for the class of Lipschitz continuous functions f (y) with, say, Lipschitz constant L. In this case, we have that the quadrature error Q is given by

k Q = >j f(y)dy-ZAif(zi) (2.2)kk (2.2) = ) E J ~(f (y) -f (zi)) dy < L ly -VI zi l dy.

Thus, it is natural to try to choose {zi}j=1 and {VI}>k= so that the right-hand side of (2.2) is minimized. We may also consider quadrature rules that use the values of the function f and its first p - 1 derivatives evaluated at the points zi. Then, if the (p - 1)st derivative of f is Lipschitz continuous with Lipschitz constant L, we have that the quadrature

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms 644 QIANG DU, VANCE FABER, AND MAX GUNZBURGER error Q is now estimated by

k (2.3) Q< L lJ Y-zilP dy.

Again, it is natural to try to choose {zi}>,=, and {}Jk 1 so that the right-hand side of (2.3) is minimized. The minimization of the right-hand side of (2.2) or (2.3) is accomplished when the Vi's are the Voronoi sets for the zi's and, simultaneously, the zi's are the mass centroids of the Vi's, in the sense of (1.7)-(1.9), where d(., ) is given by (1.6). This may be shown using techniques similar to the ones discussed in section 3. The problem of finding an optimal numerical quadrature rule has been well stud- ied in the literature. For instance, the classical Gaussian integration rules [7] and the quasi-Monte Carlo rules based on number-theoretic methods all share optimal prop- erties in some sense. We refer to [46] for a comprehensive treatment of the latter subject; see also [26, 49, 57] for some recent developments. In general, one can con- sider optimal quadrature rules over a given function space and for specific types of function evaluations. The appearance of the centroidal Voronoi diagrams is the result of the special function spaces we have chosen here. We note that for integrals over irregular domains, many sophisticated integration rules can provide estimates supe- rior to that for centroidal Voronoi diagrams, but the former require partitioning or mapping into regular regions. On the other hand, the quadrature rules given by the centroidal Voronoi diagrams can be a convenient method to provide a crude estimate with very limited information known about the integrand.

2.3. Optimal Representation, Quantization, and Clustering. A related appli- cation is the representation or interpolation of observed data. For example, in one of the earliest practical applications of Voronoi diagrams, Thiessen studied the problem of estimating the total precipitation in 1911 in a given geographical region. The math- ematical problem can be described as follows. Given k locations of the pluviometers {xi} and associated subregions {Vi}, if p(xi) denotes the precipitation at xi, then the total precipitation

k P p(x)dx can be estimated by

k Zp(Xj)Xil, i=1 where IViI denotes the area of Vi. If we wish to find the best locations for the plu- viometers in order to reduce the estimation error, we may follow the discussion in section 2.2 to formulate this optimization problem as an optimal quadrature prob- lem. Another formulation is documented in [47]. Imagine that the function p(x) is a random variable at x which can be expressed as p(x) = m(x) +?e(x), where m(x) is a deterministic continuous function of x and e(x) is a random function having zero expected value. Then, the estimation error can be formulated as

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms CENTROIDAL VORONOI TESSELLATIONS 645

In the case of constant variance E[E(x)2] - u, and if the change in m(x) is small compared with the variance (x in the associated region, one can approximate the above error by

k

Here, Cov(x, xi) is the covariance. Empirically, 1 - Cov(x, xi) may be treated as an increasing function f( x - xi ) of the distance Ix-xi ; thus, the problem of finding the optimal locations for pluviometers can be formulated as the minimization of the functional

k

which is, again, a problem of finding the centroidal Voronoi diagram. A similar and even earlier example is the question of round-off, i.e., representing real numbers by the closest integers. This problem has been studied in [56] and the answer is obviously a simple example of one-dimensional centroidal Voronoi diagrams. The representation of a given quantity with less information is often referred to as quantization and it is an important subject in information theory. The subject of vector, i.e., multidimensional, quantization has broad applications in signal process- ing and telecommunications. The image compression example we discussed earlier belongs to this subject as well. We refer to [15, 17] for surveys on the subject and comprehensive lists of references to the literature; see also [16]. In the same spirit, centroidal Voronoi diagrams also play a central role in clus- tering analysis; see, e.g., [19, 34, 54]. Clustering, as a tool to analyze similarities and dissimilarities between different objects, is fundamental and is used in various fields of statistical analysis, pattern recognition, learning theory, computer graphics, and combinatorial chemistry. Given a set W of objects, the aim is to partition the set into, say, k disjoint subsets, called clusters, that best classify the objects according to some criteria that distinguishes between them. This is commonly referred to as k-clustering analysis. For example, in combinatorial chemistry, k-clustering analysis is used in compound selection [6], where the similarity criteria may be related to the compound components as well as their structure. Clustering analysis provides a se- lection of a finite collection of templates that well represent, in some sense, a large collection of data. To illustrate the connection between centroidal Voronoi diagrams and the optimal k-clustering, let us consider a simple example where W contains m points in RN. Given a subset (cluster) V of W with n points, the cluster is to be represented by the arithmetic mean

(2.4) (2.4) xi--~ ~ ~ ~ --zE 1 xj xj E V

which corresponds to the mass centroid of V in the definition (1.5) with V - RN The variance is given by

Var(V) = _ -12, xjEC V

and for a k-clustering {?}k= (a tessellation of W into k disjoint subsets), the total

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms 646 QIANG DU, VANCE FABER, AND MAX GUNZBURGER variance is given by

k k (2.5) Var(W) Var(V?) = x~ i= IjE X~Vi

As observed in [24, 301, the optimal k-clustering having the minimum total variance occurs when {?}> is the Voronoi partition of W with {X?J}k as the generators; i.e., the optimal k-clustering is a centroidal Voronoi diagram if we use the above variance-based criteria. In computational geometry, criteria such as the diameter or radius of the subsets have been well studied; see, e.g., [21. Other criteria have also been proposed, e.g., LI based [251 and variance based [621. In some applications of statistical analysis, only the clusters are of interest; the cluster centers are not important themselves. In other applications, e.g., the color image compression problem, the cluster centers are the representative colors to be retained; i.e., they should be elements of W. Thus, it may be more appropriate to replace the simple arithmetic mean by the more general notion of the mass centroid given in section 1.1. For discussions of complexity issues involved in k-clustering as well as related clustering algorithms, see [12, 30, 32, 31, 481 and the references cited therein. Additional references on clustering analysis are also provided in later sections.

2.4. Finite Difference Schemes Having Optimal Truncation Errors. For the sake of ease of presentation, we consider only the simple problem

(2.6) -divu = f and u= gradob in Q c 1R2 where Q is a polygonal domain. We also ignore all effects due to boundaries and boundary conditions. (We make no judgment as to the usefulness of the algorithm discussed here; our goal is merely to illustrate the potential of centroidal Voronoi grids.) In (2.6), u and 0 are the unknowns and f is a given function defined on Qi. A common way to discretize (2.6) is based on Voronoi tessellations. Thus, let {i}> denote a Voronoi tessellation of Q with respect to a given set of k points {}>belonging to Q. Let _TI denote the dual tessellation, i.e., the Delaunay triangulation of the points {zi}k 1. Let Ai and Bj denote the area of V? and Tj, respectively. Let { tj, }3%: denote the set of vertices of the triangle Tj . Of course, for any j and s, tj is one of the given points z2. From the first equation in (2.6), we have that

(2.7) -jf jdivu u-n forj=1, ...,)M, where &Tj denotes the boundary of Tj. We approximate these equations by

(2.8) - B f (vj) = 3 bs (2ts i(~?) ns for j 1,M. S=:1 where Bi denotes the area of the triangle Tj, ns ar d bs denote the outer unit normal vector to and the length of the edge joining the -N,,rtices tj and tjs, respectively, and where t '4 tjl . In (2.8), vj is a convenient point in Tj at which the data f is evaluated. If this point is chosen so that the left-hand side of (2.8) is a second-order approximation to the left-hand side of (2.7), then the truncation error of the difference equation (2.8) is of order h2, where h is some measure of the size of the triangulation, e.g., the largest diameter of any of the triangles in {~'1

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms CENTROIDAL VORONOI TESSELLATIONS 647

Next, let {vij}Q1KI denote the set of vertices of the Voronoi polygon Vi. From the second equation in (2.6), we have that

(2.9) Ju J grad Oj4n for i = 1,... .,k, where ?Vi denotes the boundary of Vi. We approximate these equations by

(2.10) A.u(z-) 1 A2 E (Vij)aj nj+ ?b(vi,j+l) for i =1,..., k, j_l1 where Ai denotes the area of Vi; nj and a- denote the outer unit normal vector to and the length of the edge joining the vertices vij and vi,j+i, respectively; and Vi,Ki+l = V21. If each zi is chosen to be the centroid of the region Vi, then the truncation error of the difference equations (2.10) is again of order h2. This follows because the left-hand side of (2.10) is a second-order approximation to the left-hand side of (2.9) whenever zi is the centroid of Vi. Thus, if we discretize (2.6) according to (2.8) and (2.10), we can guarantee a second-order truncation error for the difference equations by choosing {Vi}k= to be a Voronoi tessellation of Q with respect to the points {Zi}>= and by simultaneously choosing the {Zi}k I to be the centroids of the corresponding regions {?}fV . (We note that, in general, difference equations need not have second-order truncation errors with respect to a given partial differential equation in order for the solution of the difference equations to be a second-order approximation to the solution of the differential equation. For example, there are many second-order accurate finite element schemes which, when interpreted as difference schemes, do not have second- order truncation errors.) Related to our discussion here, we can consider covolume methods for the ap- proximate solution of partial differential equations, making use of the dual Voronoi- Delaunay tessellations. Unlike the finite difference scheme discussed above, unknowns can be associated with edges of either or both the Voronoi polygons or the Delaunay triangles [45]. Here, it is possible to use centroidal Voronoi grids to obtain schemes for which the L2-error in the approximate solution is of order h2 and for which the error is only of order h for general grids.

2.5. Optimal Placement of Resources. We consider a typical example among problems dealing with the optimal placement of resources. We are seeking the optimal placement of mailboxes in a city or neighborhood so as to make them most convenient for users. We make the following assumptions: * Users will use the mailboxes nearest to their homes. * The cost (to the user) of using a mailbox is a function of the distance from the user's home to the mailbox. * The total cost to users as a whole is measured by the distance to the nearest mailbox averaged over all users in the region. * The optimal placement of mailboxes is defined to be the one that minimizes the total cost to the users. Thus the total cost function can be expressed as

k

Then, it is not difficult to show that the optimal placement of the mailboxes is at the centroids of a centroidal Voronoi tessellation of the city, using the population

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms 648 QIANG DU, VANCE FABER, AND MAX GUNZBURGER density 0 as a density function and f(z) = Z2. For other choices of f, we also get the centroidal Voronoi tessellation in the generalized sense. More details can be found in, e.g., [33, 47] The same formulation can be generalized to other problems related to the optimal placement of resources, such as schools, distribution centers, mobile vendors, bus terminals, voting stations, and service stops.

2.6. Cell Division. There are many examples of animal and plant cells, usu- ally monolayered or columnar, whose geometrical shapes are polygonal. In many cases, they can be identified with a Voronoi tessellation and, indeed, with a centroidal Voronoi tessellation; see, e.g., [27, 28] for examples. Likewise, centroidal Voronoi tessellations can be used to model how cells are reshaped when they divide or are removed from a tissue. Here we consider one example provided in [27, 283, namely, cell division in certain stages in the development of a starfish (Asteria pectinifera) embryo. During this stage, the cells are arranged in a hollow sphere consisting of a single layer of columnar cells. It is shown in [27, 283 that, viewed locally along the surface, the cell shapes closely match that of a Voronoi tessellation and, in fact, are that of a centroidal Voronoi tessellation. The results of the cell division process can also be described using centroidal Voronoi tessellations; see [27, 28]. We start with a configuration of cells that, by observation, is a Voronoi tessellation. In this geometrical description of the cell shapes, cell division can be modeled as the addition of another Voronoi generator or, more precisely, as the splitting of a Voronoi generator into two generators. Having added a generator (or more than one if more than one cell divides), how does one determine the shapes of the new cells and the (necessarily) different shapes of the remaining old cells? In [27, 28] it is shown that the new shapes are very closely approximated by a centroidal Voronoi tessellation corresponding to the increased number of generators. The exact geometrical cell division algorithm described in [27, 28] is as follows. A photograph of an arrangement of polygonal cells is shown to be closely approximated by a Voronoi tessellation and is used to define data from which the corresponding Voronoi generators are determined. Additional photographs (taken at later times) are used to identify the parent cells that divide. The generator of a parent cell (now represented by a Voronoi polygon) is replaced by two points lying along a long axis of the cell; the exact placement of the two points turns out to be unimportant. A new Voronoi tessellation is determined using the generators of the cells that have not divided along with the points resulting from the replacement of the generators of the parent cells. In this manner, two daughter cells are introduced for each parent cell. The shapes of these cells are now adjusted by first moving all the generators to the centroids of their corresponding Voronoi polygon and then recomputing the Voronoi tessellation. This procedure is repeated until the cell shapes, i.e., the Voronoi polygons, cease to change. The final arrangement of cells determined by this iterative process is a centroidal Voronoi tessellation (see section 5.2) and matches very well with photographs of the actual cells after the cell division process is completed.

2.7. Territorial Behavior of Animals. Many species of animals employ Voronoi tessellations to stake out territory. If the animals settle into a territory asynchronously, i.e., one or a few at a time, the distribution of Voronoi generators often resembles the centers of circles with fixed radius in a random circle packing problem. On the other hand, if the settling occurs synchronously, i.e., all the animals settle at the same time, then the distribution of Voronoi centers can be that for a centroidal Voronoi tessellation.

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms CENTROIDAL VORONOI TESSELLATIONS 649

| ~~~~~~~~~~~~~~~~~."

Fig. 2.2 A top-view photograph, using a polarizing filter, of the territories of the male Tilapia mossambica; each is a pit dug in the sand by its occupant. The boundaries of the territories, the rims of the pits, form a pattern of polygons. The breeding males are the black fish, which range in size from about 15cm to 20cm. The gray fish are the females, juveniles, and nonbreeding males. The fish with a conspicuous spot in its tail, in the upper-right corner, is a Cichlasoma maculicauda. Photograph and caption reprinted from G. W. Barlow, Hexagonal Territories, Animal Behavior, Volume 22, 1974, by permission of Academic Press, London.

As an example of synchronous settling for which the territories can be visualized, consider the mouthbreeder fish (Tilapia mossambica). Territorial males of this species excavate breeding pits in sandy bottoms by spitting sand away from the pit centers toward their neighbors. For a high enough density of fish, this reciprocal spitting results in sand parapets that are visible territorial boundaries. In [3], the results of a controlled experiment were given. Fish were introduced into a large outdoor pool with a uniform sandy bottom. After the fish had established their territories, i.e., after the final positions of the breeding pits were established, the parapets separating the territories were photographed. In Figure 2.2, the resulting photograph from [3] is reproduced. The territories are seen to be polygonal and, in [27, 59], it was shown that they are very closely approximated by a Voronoi tessellation. A behavioral model for how the fish establish their territories was given in [22, 23, 60]. When the fish enter a region, they first randomly select the centers of their breeding pits, i.e., the locations at which they will spit sand. Their desire to place the pit centers as far away as possible from their neighbors causes the fish to continuously adjust the position of the pit centers. This adjustment process is modeled as follows. The fish, in their desire to be as far away as possible from their neighbors, tend to move their spitting location toward the centroid of their current territory; subsequently, the territorial boundaries must change since the fish are spitting from different locations. Since all the fish are assumed to be of equal strength, i.e., they all presumably have

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms 650 QIANG DU, VANCE FABER, AND MAX GUNZBURGER the same spitting ability, the new boundaries naturally define a Voronoi tessellation of the sandy bottom with the pit centers as the generators. The adjustment process, i.e., movement to centroids and subsequent redefinition of boundaries, continues until a steady state configuration is achieved. The final configuration is a centroidal Voronoi tessellation; see section 5.2. If we denote the center of the pit belonging to the ith fish by zi and the territory staked out by that fish by Vi, remarkably, the Vi's are the Voronoi regions for the zi's and the zi's are the mass centroids of the Vi's.

2.8. Applications of Centroidal Voronoi Tessellations in Non-Euclidean Met- rics. There are many other applications in computer science, archaeology, astronomy, biology, crystallography, physics, the arts, and other areas related to generalized cen- troidal Voronoi tessellations. For example, consider the problem of setting distribution centers in a city whose streets are in either the north-south direction or the east-west direction. Since delivery routes are along the streets, distances are best measured by the L1-norm. (The example of section 2.5 should perhaps have been better studied in this setting.) Assume further that the shortest L1-path exists for any two given addresses, the demand at a given address (the number of deliveries required over a fixed period) is measured by a density p, and the cost of delivery is proportional to the distance. Then, for given k, the best strategy is given by the centroidal Voronoi diagrams in the L1-norm. The use of non-Euclidean metrics also has been considered in the vector quantization literature; see, e.g., [42].

3. Some Results about Centroidal Voronoi Tessellations and Their Minimiza- tion Properties.

3.1. Results Involving Centroidal Voronoi Tessellations as Minimizers. For the sake of completeness, we provide the following result. The analogous result for other metrics or for discrete sets can be proved using only slightly more complicated arguments. PROPOSITION 3.1. Given Q C RN, a positive integer k, and a density function p( ) defined on Q, let fzij}?I denote any set of k points belonging to Q and let {?}ik denote any tessellation of Q into k regions. Let

k (3.1) f((Zi Vi), i = 1 v ..k) = S P(Y)lY-zi12 dy.

A necessary condition for .F to be minimized is that the Vi 's are the Voronoi regions corresponding to the zi 's (in the sense of (1.1)) and, simultaneously, the zi 's are the centroids of the corresponding Vi 's (in the sense of (1.2)). Proof. First, examine the first variation of T with respect to a single point, say,

z(zj + Ev) -'(zj) = j p(Y){iY Zj -EVT2 IY-Zj12 dy E Vj where we have not listed the fixed variables in the argument of f' and where v is arbitrary such that zj +Ev ev Q. Then, by dividing byE and taking the limit as 6 -e 0, one easily finds that

A j yp(y) dy zi E Vj | p(y) dy E Vj

Thus, the points z.j are the centroids of the regions VI.

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms CENTROIDAL VORONOI TESSELLATIONS 651

Next, let us hold the points {zi}>-I fixed and see what happens if we choose a tessellation {Vi}k__ other than the Voronoi tessellation {V9}=. Let us compare the value of fT((zi, V), i = 1, ..., k) given by (3.1) with that of

(3.2) T (zj, Vj))i = 1).. :k) P(Y)ly - zj I'

At a particular value of y,

(3.3) P(Y) ly _ Zj 12 < P(Y) ly - Z 12.

This result follows because y belongs to the Voronoi region Vj corresponding to zj and possibly not to the Voronoi region corresponding to zi; i.e., y c Vi but Vi is not necessarily the Voronoi region corresponding to zi. Since { Vi} is not a Voronoi tessellation of Q, (3.3) must hold with strict inequality over some measurable set of Q. Thus,

((zj) Vj)) j =1...,k) < fF((zi, Vi), i = 1, ,. k) so that f is minimized when the subsets Vi, i = 1, ... , k, are chosen to be the Voronoi regions associated with the points zi, i = 1, ... , k. [ Another interesting and useful point follows from the above proof. Define the functional

k (3.4) /K((zi) , i = 1, ,. k) = , P(Y)j _yz Z,2 dy, where Vi's are the Voronoi regions corresponding to the zi's. Note that the functional in (3.4) is only a function of the zi's since, once these are fixed, the Vi's are determined; for the functional in (3.1) it is assumed that the zi's and Vi's are independent. For minimizers of the functionals in (3.1) and (3.4), we have the following result. PROPOSITION 3.2. Given Q c RN, a positive integer k, and a density function p( ) defined on Q, then f and IC have the same minimizer.

3.2. Existence of a Minimizer. Given Q c RN, a positive integer k, and a density function p(.) defined on Q, let {zi}> denote any set of k points belonging to Q and let {Vi} denote any tessellation of Q into k regions. Let K -{Z = (Z1, Z2, ... , Zk), Zj E Q}. Let Ai = IVil, the area of Vi, and A = (A1,... ,Ak). Then, one easily obtains the following results. LEMMA 3.3. A is continuous [471. LEMMA 3.4. IC is continuous and thus it possesses a global minimum. Proof. Let Z, Z' C K. Then,

k A?(Z) - K(Z') I= { (J - J)P(Y) Y - z,12 dy

+j J P(Y) (Iy-z, 12- y-Z/i 2) dY} + E vi'

If Q is compact and p is continuous, then there exists a constant C such that

k 1K(Z) -K(Z')|I < C lAi-Al + Izi-zl1 i=l~~i

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms 652 QIANG DU, VANCE FABER, AND MAX GUNZBURGER

Then, the continuity of IC follows from Lemma 3.3. The existence of the global minimizer then follows from the compactness of K. [ In general, IC may also have some local minimizers; we now show that a local minimizer of IC will give nondegenerate Voronoi diagrams. PROPOSITION 3.5. Assume that p(y) is positive except on a set of measure zero in Q. Then, local minimizers satisfy zi 74 zj for i #& j. Proof. Suppose that this is not the case. Without loss of generality, denote a local minimizer by {zi} I1 with 1 < m < k. Define mr W(Z1... ZM) pZyJ p(y) Y-zi 2 dy.

For any small 6 > 0, pick Zm+l zj, j = 1, ... ,m, with minj Zm+1 - zj < 6 and define {Vi}7 to be the Voronoi regions corresponding to {zl, Z2, . . ., Zm+1}. Let

m+1 )/(zi.. ZM+0)=E P(Y) ly _Z,12 dy i=l YEVi

Let f(y)_= p(y) y - zi2 for any y E V, i = 1,... ,m, and f(y) = p(y) y - Z2 for anyyC ?, i 1,...,m+1. Then,

W(Zi,...,Zm) f jf(y)dy and W(Zi,... Zm+?) = jf(y)dy.

Note that

f(y) =f(y) foranyyE Vn?, i= 1,...,m; f(y) > f(y) for any y C Vi \ V i 1, ...m; f(y) > f(y) for any y C Vm+?.

Since the set Vm+i has positive measure, W(zi,. .. ,Zm+l) < W(zi.... v zm), which is a contradiction. U Remark 3.6. For the general metric (assuming that p vanishes only on a set of zero measure), existence is provided by the compactness of the Voronoi regions. Uniqueness is also attained if the Voronoi regions are convex and if for any Yi, Y2 C Vi, YI #& Y2, the inequality

d(z, Ay1 + (1 - A)Y2) < Ad(z, Yi) + (1 - A)d(z, Y2)

is valid for some A E (0,1) on a subset of Vi with positive measure.

3.3. Results for the Discrete Case. There are many results available, especially in the statistics literature, for centroidal Voronoi tessellations in the discrete case described in section 1.1, for which the given set to be tessellated is finite-dimensional, e.g., W {yi} LI, a set of m points in RN. The energy (which is also often referred to as the variance, cost, distortion error, or mean square error) is now given by

k (3.5) T ((Zi) Vi), i =_ 1, .., k) =E E P(y)ly _Z,12 dy, i=1 yEVi

where {V}V k1 is a tessellation of W and {zi}> are k points belonging to W or, more generally, to RN

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms CENTROIDAL VORONOI TESSELLATIONS 653

Many results involve properties of centroidal Voronoi tessellations as the number of sample points becomes large, i.e., as m > o0. The convergence of the energy was shown in [40]. The convergence of the centroids, i.e., the cluster centers, was proved in [52] for the Euclidean metric under certain uniqueness assumptions. The asymptotic distribution of cluster centers was considered in [53], where it was shown that the cluster centers, suitably normalized, have an asymptotic normal distribution. These results generalize those of [20]. Generalization to separable metric spaces was given in [50]. In [63], some large-sample properties of the k-means clusters (as the number of clusters k approaches oc with the total sample size) are obtained. In one dimension, it is established that the sample k-means clusters are such that the within-cluster sums of squares are asymptotically equal, and that the sizes of the cluster intervals are inversely proportional to the one-third power of the underlying density at the midpoints of the intervals. The difficulty involved in generalizing the results to the multivariate case is mentioned. In vector quantization analysis [17], clustering k-means techniques have also been used and analyzed. A vector quantizer is a mapping Q of N-dimensional Euclidean space RN into itself such that Q has a finite range space of, say, k vectors. Given a distortion measure d(X, Q(X)) between an input vector X and the quantized represen- tation Q(X), the goal is to find the mapping Q that minimizes the average distortion with respect to the probability distribution F governing X, D(Q, F) = Ed(X, Q(X)). The mathematical formulation of the average distortion is similar to that of the energy functional given in (3.1) for the continuous case and (3.5) for the discrete case. In [1], several convergence and continuity properties for sequences of vector quantizers or block source codes with a fidelity criterion are developed. Conditions under which convergence of a sequence of quantizers Qn, and distributions Fn implies convergence of the resulting distortion D(QTh, Fn) as n > o0 are also provided. These results are in turn used to draw conclusions about the existence and convergence of optimal quantizers. The results are intuitive and useful for studying convergence properties of design algorithms used for vector quantizers. Note that there do not yet exist general algo- rithms capable of finding optimal quantizers (except when the distribution has finite support and all quantizers can be exhaustively searched). Most algorithms can find only locally optimal quantizers, and hence convergence results for optimal quantizers are currently of limited application. Another interesting aspect of the discrete problem involves the reduction of the spatial dimension. For many practical problems, it is desirable to visualize the re- sulting centroidal Voronoi diagrams or the optimal clusters by some means. Various techniques, such as the projection pursuit method [11, 18, 29, 58], have been studied in the statistics literature. They can be used to characterize the centroidal Voronoi diagrams via lower dimensional approximations.

3.4. Connections between the Discrete and Continuous Problems. The dis- crete problem is obviously connected to the continuous problem outlined earlier. This was pointed out in [30], where it was shown that the k-clustering problem can be viewed as a discrete version of the continuous geographical optimization problem studied in [33]; the latter is equivalent to minimizing the function in (3.1). The authors point out that further investigations are deserved. For nonuniformly distributed points, an alternative formulation of the discrete k-clustering problem might reveal even closer ties with the continuous problem. For

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms 654 QIANG DU, VANCE FABER, AND MAX GUNZBURGER example, consider the set of m points W = {Y}y=Ti in RN along with a clustering of these points into k clusters {Wi}?1 and associated cluster centers {xi given by (2.4). Next, consider the Voronoi diagram {}Vi in RN generated by the points {jxj}>, 1 with suitable truncation of the possible unbounded regions so that each Voronoi region remains bounded, i.e., ignoring the overload, as is done in vector quantization [17]. We may associate with each point -xi a weight pj = l/lVjl (lVil being the area of the corresponding Voronoi region). Then, if W contains a large number of points, i.e., if m is large, and the areas of Vi's become small, we get from (2.5) that

Var(W) = y |2=ZZpyj2vj i=l yj cWi i=l yj cWi k J~~~~ pxx *ldx=T((xi*Wj*))i=1 ..k),

with {Wj* } forming a Voronoi tessellation of a suitable domain containing W and x* being the mass centroids of W*. F is as given in (3.1). p is a suitable density distribution, reflecting how the points in W are distributed in space. In this context, one can see that the connection made in [24, 30] is valid only if the points in W are more or less uniformly distributed. Indeed, to get uniform density in the continuous problem, we may define the weighted mean of cluster Wi as

j Z Exj cwi PXji Exj E Wi P1 and the generalized variances as

k Var(Wi) = , pllxj-X2, Var(W) =ZVar(Wi). xj cwi i=l

With the modification, we get, when the Vi's are small, that

k k Var(W) = , j3 pI1XjI - xi| Edx.

With the new formulation, one can perhaps study how to generalize the stochastic 2- clustering or k-clustering algorithms presented in section 4.2. It is possible that new algorithms may be constructed for which good estimates can be obtained in cases where the balancing conditions given in [24, 30] are not met. It may also lead to a better sampling strategy and improvements in performance.

4. Probabilistic Approaches to Determining Centroidal Voronoi Tessellations. In this section, we discuss probabilistic approaches for the determination of centroidal Voronoi tessellations of a given set.

4.1. A Sequential, Random Sampling Algorithm. We begin with an elegant random sequential sampling method which has the advantage that it does not require the calculation of Voronoi sets. (It is referred to as the random k-means method, or simply the k-means method, since it gives a partition of a sample into k sets by taking means of sampling points.) The random k-means method is defined as follows. Given a set Q, a positive integer k, and a probability density function p defined on Q,

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms CENTROIDAL VORONOI TESSELLATIONS 655

0. select an initial set of k points {zi}>, e.g., by using a Monte Carlo method; set ji = I for i = 1 , .. ., k; 1. select a y E Q at random, according to the probability density function p(y); 2. find the zi that is closest to y; denote the index of that zi by i*; 3. set Zi* '- ji* Zi* + and ji* ' -ji* + 1; ji + 1 this new Zi*, along with the unchanged zi, i :& i*, forms the new set of points {Zi}X-1. 4. If this new set of points meets some convergence criterion, terminate; otherwise, go back to step 1. Note that (ji - 1) equals the number of times that the point zi has been updated. The random k-means algorithm has the following interpretation. At the fth stage of the algorithm, one starts with the positions of the cluster centers, i.e., the means, Zi, i = 1, ... , k, and a clustering of (f + k - 1) points (the original k points of step 0 plus the (f - 1) points y previously selected in step 1) into k corresponding clusters. One then selects a new random point y, locates the closest cluster center, and adds this to the corresponding cluster. Of course, one also updates the mean, i.e., the cluster center, of the enlarged cluster. The random k-means method has been analyzed in [40], where the almost sure convergence of the energy is proved. The mass centers often are also referred to as cluster centers, which are simply the means of the Voronoi regions. Employing the Euclidean metric, for various general optimization problems that correspond to f(s) = Sr in (1.10), the mean could be replaced by the median, the mode, or the midrange for r = 1, r > 0, and r > oc, respectively. In [40], various examples are discussed for which the k-means methods fail to give the optimal centroidal Voronoi regions. Generalizations to non-Euclidean metrics were also presented there. The key is to measure the closeness in the sense of the metric and replace the mean in step 3 by using the more general definition of the mass center. A proof of the weak convergence of the energy functional was also given in [401. Extensions to separable metric spaces are given in [51]. Let P be a probability measure on the separable metric space (T, d). Define the energy functional (clustering criterion) by

W(A, P) - min J Wk (P) as Pn converges to P weakly is proved in [51]. Variations of the k-means methods are proposed in [35] using bootstrapping tech- niques. Advantages of the bootstrap methods are discussed and the performance of bootstrap confidence sets is compared with that of the Monte Carlo confidence sets discussed in [52]. In the discrete, finite-dimensional case (see section 1.1) for which one is given, instead of Q, a set of points W = {y.}e=1 belonging to RN, a deterministic variant of the k-means algorithm is easily defined by choosing the points y not at random, but sequentially through the set W. In section 5.1, we will return to the finite-dimensional

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms 656 QIANG DU, VANCE FABER, AND MAX GUNZBURGER version of the algorithm. Some deterministic and stochastic variants of the k-means algorithm in the discrete case are given in [4].

4.2. A Random 2-Clustering Algorithm for the Discrete Case. For variance- based k-clustering analysis of a finite-dimensional set of points W = {y.}eji1 belonging to RN, another type of probabilistic algorithm, which we refer to as the m-sample algorithm, has been studied in [24, 30, 31, 32]. The 2-clustering version is given as follows: 0. Sample an initial subset T of m points from W, e.g., by using a Monte Carlo method. 1. For every linearly separable 2-clustering (T1, T2) of T, * compute the centroids t1 and t2 of T1 and T2, respectively; * find a 2-clustering (W1, W2) of W divided by the perpendicular bisector of the line segment connecting t1 and t2; * compute the total variance of the 2-clustering (W1, W2) and maintain the minimlum among these values. 2. Output the 2-clustering of W with minimum value above. Note that the preceding algorithm can be generalized to the k-clustering cases. It was pointed out that the random m-sample algorithm can be used to find good initial clusters for the deterministic algorithms discussed in section 5.1. Under suitable bal- ancing conditions on the optimal 2-clusters, it was shown in [30, 31] that in O(mNM) time, the m-sample algorithm finds a 2-cluster whose variance is within a factor of 1 + O(1/(6m)) of the optimal value with probability 1 - 6 for small 8. In the general application of k-clustering, it was proposed [32] that the rn-sample algorithm may be applied in a top-down recursive manner and that the heap is used to obtain the subset with the maximum variance to be divided in the subsequent step. Extensive numerical tests were performed in [32] along with comparisons to other methods such as those used in [25, 62]. Suggestions on directly sampling k-clusters, without using the top-down binary partition technique, are also proposed.

5. Deterministic Approaches to Determining Centroidal Voronoi Tessella- tions. In this section, we discuss some deterministic approaches for the determination of centroidal Voronoi tessellations of a given set. We refer to [47] for a discussion and references on algorithms to compute arbitrary Voronoi diagrams.

5.1. Sequential Sampling Algorithms for the Discrete Case. We return to the deterministic version of the k-means algorithm of section 4.1, which can be used in the discrete case; see [19]. Given a discrete, finite-dimensional set of points W = {y}m1 belonging to RN, an integer k > 1, and an initial set of cluster centers {zj}k=1, then for each y C W, 1. find the zi that is closest to y; denote the index of that zi by i*; 2. assign y to the cluster corresponding to zi*; 3. recompute the cluster center zi* to be the mean of the points belonging to the corresponding cluster. An efficient implementation of this algorithm for large data sets is given in [21]; see also [10]. It is shown in [55] that, for the quadratic metric, the energy converges to a local minimum value. Other deterministic algorithms for determining the cluster centers are given in [25, 62, 641. These involve recursive clustering into hyperboxes having faces perpendicular to the coordinate axes.

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms CENTROIDAL VORONOI TESSELLATIONS 657

If m is finite, then obviously the clustering problem can be solved in a finite number of steps. In fact, the following result is given in [30, 32]. THEOREM 5.1. For quadratic energies, the clustering problem for m points in RN into k clusters can be solved in O(mkN+?) steps. This bound is very pessimistic for large k. However, it is also known that, in general, the problem of finding the optimal clustering is an NP-hard problem [12, 13, 48]. Other results on the k-means method and its relation to the optimnality conditions of a related mathematical programming problem can be found in [55].

5.2. Lloyd's Method. Next, we discuss a method that is an obvious iteration between constructing Voronoi tessellations and centroids. Given a set Q, a positive integer k, and a probability density function p defined on Q, 0. select an initial set of k points {zj}>- , e.g., by using a Monte Carlo method; 1. construct the Voronoi tessellation {V = of Q associated with the points {Zi }?-; 2. compute the mass centroids of the Voronoi regions {?Vi}?L found in step 1; these centroids are the new set of points {zX} 1. 3. If this new set of points meets some convergence criterion, terminate; otherwise, return to step 1. (Here we will not discuss termination procedures since they are very much dependent on the specific application.) This method, at least in the electrical engineering litera- ture, is known as Lloyd's method [39]. (A second method was also proposed by Lloyd for one-dimensional problems; it is similar to a shooting approach, i.e., one guesses the leftmost mass center, then determines the end-point of the leftmost region, then extrapolates to get the next leftmost center, etc. No generalization to higher space dimensions is known.) Lloyd's method may be viewed as a fixed point iteration. For example, consider the case of Q c IRN, i.e., of (1.1)-(1.3). Let the mappings Ti: RkN R RN i - 1,...,k, be defined by

J yp(y) dy Ti (Z) - Vi (Z)

IV2 Vi(Z) P(y) dy

where

Z = (Z1, Z2,* .. , Zk)T and Vi(Z) = Voronoi region for zi, i = 1, . . ., k .

Let the mapping T: RkN RkN be defined by

T = (Tl) T2) ... ,Tk )T

Clearly, centroidal Voronoi tessellations are fixed points of T(Z).

5.3. Variations on Lloyd's Method. In [381 (see also [15]), a probabilistic varia- tion of Lloyd's method is proposed. The method is essentially a continuation method for the global optimization problem in the spirit of simulated annealing. The data, i.e., the density function, are corrupted (perturbed) by noise. For strong noise, the centroidal region essentially depends only on the noise; it is assumed that a unique local minimum exists. Then, the noise level is slightly reduced in subsequent steps and the local minima from previous steps are used as initial guesses for later steps. It was argued that the algorithm might converge although new local minima might have been introduced. The algorithm stops when the noise level is reduced to zero. No

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms 658 QIANG DU, VANCE FABER, AND MAX GUNZBURGER convergence theory was provided, but further studies of such ideas were given in [1]. There, it is claimed that their analysis implies that globally optimal quantizers can be designed by adding "nice" noise to the original distribution and then slowly reduc- ing the noise to zero under the requirement that "close" distributions yield "close" optimal quantizers. These properties, however, have not been shown to be valid in all cases. Another generalization, in the form of a two-stage algorithm, is studied in [61]. For that algorithm, the first stage of Lloyd's iteration is applied so as to reduce the value of error functionals such as

k

S lvA p(y)f (d(y, zi)) dy and its discrete analogs. At the second stage, a search for a minimizer is performed, using a hybrid of a dynamic programming algorithm and a Lloyd-type algorithm that achieves the absolute optimality of dynamic programming with much less com- putational effort. For a continuous distribution with log-concave density p and an increasing convex weighting function f, a reliable method is presented for comput- ing the optimal parameters with a known precision, using a generalization of Lloyd's method. In image-data compression applications, region-based algorithms have also been studied in [8]. Voronoi diagram-based vector quantization techniques are used in high- frequency regions or in regions with uncorrelated data; polynomial approximations are used in smooth regions or in regions with highly correlated data. A number of other generalizations are discussed in [15, 431.

5.4. Descent or Gradient Methods. One can construct general iterative pro- cedures for determining the centroidal Voronoi tessellations by following a descent search algorithm of the type Z() ac (5.1) Z(n+l) =Z Z()_ g (n)) ,n = 1, 2, . .. where the scalar an is a suitable chosen step size. Here, one can choose C(Z) to be a function whose stationary points are fixed points of the Lloyd map T(Z). See section 6.2 for a further discussion. For the discrete case, gradient methods, including steepest descent methods with line searches, are considered in [33]. The relation between centroidal Voronoi tes- sellations, e.g., optimal clustering, and stationary points of associated functions is discussed in [55].

5.5. Newton-Like Methods. One may naturally compute the fixed point of T using Newton's method, i.e.,

(I AT (Z (n)) (Z (n+l) _ Z (n)) Z (n) + T(Z(n)) 1, 2,. (9Z(

For smooth density functions, one may easily verify that the Newton iteration is locally convergent at a quadratic rate whenever the initial guess is close enough to the fixed point. In practice, however, calculations of 9T/9z can be expensive in space dimensions higher than one or if the density function is not smooth. Thus, a quasi-Newton method may offer a better alternative.

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms CENTROIDAL VORONOI TESSELLATIONS 659

6. Some Results Concerning Lloyd's Method. Lloyd's method as given in sec- tion 5.2, or under other names, has been proposed and studied by many authors in a number of different applications contexts. In this section, we discuss some of the properties associated with Lloyd's method.

6. 1. Derivatives of the Energy and the Lloyd Map. Let U {uj } l IRMVIN be the vertices of the Voronoi regions generated by Z = {Zi} E RkN. Geometrical considerationl tells us that each uj is the circumcenter of the Delaunay simplex formed by some z,'s whose Voronoi regions share common faces. Clearly, the map: Z -) U is linear; we denote it by G(Z). Also, it is useful to know that if uj and {uj }i> are the vertices of the common face A' between two adjacent Voronoi regions generated by Z,n and ZnR, then we have

(6.1) (AOu. + E AlUl - (Zm + zn)) (Zm - zn) = Q 1>1 for any set of nonnegative parameters {A1}11o with E1>o Al 1 such that AOuj + 1>1 Au\jl E A\n. This is simply the perpendicular bisector property of Voronoi diagrams; i.e., the face An bisects the line segment joining Zm and Zn and that line segment is perpendicular to the face. Next, we let {Vi (U) } denote the set of Voronoi regions having U as vertices andl let M/f be a diagonal matrix with entries

MA/i=J p(y)dy Vi. V(U)

Let F denote the map that maps vertices U to the mass centroids of {Vi(U)}, i.e.,

F : U--~Ali I p(y)y vi(u) dy Vi

Clearly, we see that the Lloyd map T is given by T = F o G. We shall use the following notation for the derivative maps: =dF and G- dG du dz

We now investigate the relations between the maps F and G and the derivative maps of the energy F (see (3.1)), which are recast as

k AH(Z) U) =E/ P(Y)l I- zil' dy ~i=lVi(U)

In addition, in light of Propositions 3.1 and 3.2, we also define

(Z) = 'H(Z) G (Z))

Now, it is simple to see that

-I(9zi = 2zi( i (U)P(y)dy2J Vi(U) p(y)ydy

so that

(6.2) - 2M(U)(Z - F(U)).

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms 660 QIANG DU, VANCE FABER, AND MAX GUNZBURGER

Furthermore, we have

a2-H =: 2M(U).

In order to differentiate with respect to u, we first state a result concerning differentiations with respect to change in domain. LEMMA 6.1. Let Q = Q(U) be a region that depends smoothly on U and that has a well-defined boundary. If F = fQ(U) f (y)dy, then

dF Jf XT dY dU / n~~ (Y)Y, n dy, dU Q(U) where n is the unit outward normal and y denotes the derivative of the boundary points with respect to changes in U. Since U = G(Z), we have that p(y) ly -Zj 2 = p(y) ly- Z12 for any y belonging to AM, where An again denotes the common face of the Voronoi regions generated by Zm and Zn. Then, by Lemma 6.1, we have that

AU U=G(Z) In fact, for U close to G(Z), in the sense that the regions formed by G(Z) are simple perturbations of that of U with the same topological structure, using the orthogonal bisector property (6.1), we can show that

OU = A(U, Z)(U - G(Z)).

The matrix A, or more precisely its action, is defined as follows. Let the vertices of the common face An between Vm and Vn be denoted by uj and {u.l}ll> and let y = Aou3 + El>1 Alujl E A\n for parameters {A1}1>0 belonging to the standard simplexi\ = {Al > 0 Vl, El A, < 1}. Then, the matrix A is defined by

(A(U, Z)(U - G(Z)))i = 2 Aonnm p&OUj + Z Aluj) (Z?n - Zn) uj /Anll m 1> 1 AO ( US-Gj(Z)) + E A 1>1 (uj - Gjl (Z)) dA) where n" is the unit normal of A\ that has positive angle withZ, - Zm Thus, we have the following result. PROPOSITION 6.2. The derivative of g is given by

(6.3) 09 (Z) = 2M(G(Z))(Z - T(Z)). Thus, if the density function p is positive except on a set of measure zero, the station- ary points of g are given by fixed points of the Lloyd map T(Z). In componentwise form, (6.3) is equivalent to

(Z) = 2zi V p(y)dy-2 J p(y)ydy.

Furthermore,

&z2,92 (Z) 2M(G(Z))(I -F(G(Z))G'(Z)) +(G/())F(Z)) Z)T)TF(Z -TZ)

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms CENTROIDAL VORONOI TESSELLATIONS 661

Fig. 6.1 Two possible moves from the saddle point of the Voronoi tessellations of a square. The left move increases the energy while the right move decreases the energy.

Thus, we arrive at the following result. PROPOSITION 6.3. At the stationary point, i.e., whenever Z = T(Z), we have

,2 (Z) = 2M(G(Z)) I- ( T (Z))

We see that the local convexity of the energy is related to the Jacobian of the Lloyd map, which in turn affects the local convergence properties of the Lloyd fixed point iteration. In fact, if the energy is locally strictly convex at the minimum, then

M(G(Z))(I- OT (Z)) is positive definite.

So, the eigenvalues of

M1/2 ( _ 9T (Z)\m-112 = I 1 21 2 T xm-112 are all positive, which implies that

the eigenvalues of OT (Z) are real and less than 1, a necessary condition for T to be a local contraction. On the other hand, a fixed point of the Lloyd map does not necessarily correspond to a local minimum of the energy. Take the example of two points and the square [-1, 1]2 given in Figure 1.2. One can show that the partition along the midline corresponds to a local minimum but the one along the diagonal corresponds to a saddle point. In fact, the energy decreases as the diagonal rotates toward the middle vertical line. (We can treat rotation to the middle horizontal line in a similar manner.) The mass centers move along the points (T1/2 ? E2/6, ?1/3E), where 1/e is the slope; e 1 corresponds to the diagonal and e = 0 corresponds to the vertical midline. The energy is given by 5/12 + E2/18 - E4/36, which decreases as e goes from 1 to 0. On the other hand, if we translate the diagonal parallel to itself, i.e., if we move the two points along the other diagonal so that one center of mass is closer to the center of the square than the other, then the energy increases. Thus, the diagonal partition forms a saddle point for the energy; see Figure 6.1.

6.2. General Descent Methods and Lloyd's Method. With the gradient of the energy given by (6.3), Lloyd's method can be viewed as a special case of a general gradient method. One can construct general iterative procedures for determining the

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms 662 QIANG DU, VANCE FABER, AND MAX GUNZBURGER centroidal Voronoi regions, i.e., for minimizing the energy, by following a descent search algorithm of the form

(6.4) Z(n+l) = Z(n) - anB(n) 0 > (Z(n)) , n = 1, 2, . ..

where the matrix B(n) is positive definite and the scalar an represents the step size. It is easy to see that if an is small enough, then g(Z(n+1)) < g(Z(n)) unless we have reached a stationary point. Lloyd's method is simply the special case of (6.4) with an = 1/2 and B(n) = M(G(Z(n)))-1.

6.3. Convergence of Lloyd's Method for a Class of One-Dimensional Prob- lems. Lloyd's method has been shown to be convergent locally for a class of one- dimensional problems; see, e.g., [36]. Here, we present a simple proof for a result of this type. Without loss of generality, we assume that Q = [0,1]. Let the density function p be smooth and strictly positive. In addition, p is assumed to be strictly logarithmically concave; i.e., log p is a strictly concave function. This is equivalent to

(log p)" < 0 or - strictly increasing. p

Given k points x = {xi, i 1, ..., k} such that 0 < x1 < X2 < < xk_- < Xk < 1, it is clear that the corresponding Voronoi regions are the intervals V1 [0, X V]2 [Xi?Vi=` xi+xi+ ] for i = 2, .. ., k - 1, and Vk [Xk-?Xk,1]. Let Ali = lvi p(y)dy. The Lloyd map is then defined as

Ti(x) ~ yp(y) dy.

At the fixed point x = T(x), the Jacobian matrix is a tridiagonal matrix with

aTi (Xi i-Xi_) (Xi + Xi-i aTi (xi+i- xi) (Xi + Xi+i (9xi-l 4M V 2 J ai+I 4M 2 J

9Ti (9Ti + 9Ti &xi &xi1l &xi+l

One easily sees that AT/0x at the fixed point is a nonnegative matrix. Next, we consider

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms CENTROIDAL VORONOI TESSELLATIONS 663

Let Vi = [y-,y+] and note that xi = Ti(x); then,

-2Mi T _ 2 aTi

-[(v?) pJ (y) - p(y)y)dy

J= J~, p(s)p(t)dsdt - p(t) [J (p'(s)(s - t) + p(s))ds] dt

= j J P'(s)p(t)(t - s)dsdt

=2 J-,vi v J/ (p'(s)p(t) - p'(t)p(s)) (t -s)dsdt

2 Ji Jvi P(t)P(s) (t -) (t-s)dsdt

> 0, where the last step follows from the logarithmic concavity. Thus, by the Gerschgorin theorem, the spectral radius of the Jacobian is less than 1 and we have the local convergence of the Lloyd iteration. PROPOSITION 6.4. Assume that p(x) is a smooth density function that is strictly positive and strictly logarithmically concave on Q. Then, the Lloyd map T is a local contraction map near its fixed points. Consequently, the Lloyd iteration is locally convergent. From the proof, we see that the essential requirement on the density function is to have

(p'(s) p(t) - p'(t) p(s)) (t - s) > 0 for any (t, s) except for a set of measure zero. As a consequence of Propositions 6.3 and 6.4, we also have the local convexity of the energy. PROPOSITION 6.5. Under the assumptions on p of Proposition 6.4, the energy functional g is locally strictly convex near any stationary point.

6.4. Other Results in One Dimension.

6.4.1. Equal Partition of Energy. We consider the unit interval with constant density p(x) = 1. Then, for given k, the optimal centroids with k intervals are given by xi = (2i - 1)/2k, i -1, ... , k. A simple calculation shows that

fIx-_IX2dx= 13 Vi, i.e., the energy is equally partitioned over the k Voronoi regions. One naturally asks whether the centroidal Voronoi diagram for general densities shares the equal partition of energy property. The answer is negative in general. For example, let the density function be given by p(x) = x and k = 2. Then the two centroidal Voronoi regions

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms 664 QIANG DU, VANCE FABER, AND MAX GUNZBURGER are given by (0, z) and (z, 1), where z = (5 - 1)/2, and the centers of mass are given by 2z/3 and 4z/3, respectively. The values of energy on each region are given by (7 - 3 5)/72 and (83 - 37 5)/72. An interesting question is related to the distribution of the energy (also referred to as the cost or variance or distortion error, etc., in some contexts) when the number of generators gets large. Let hi = ?Vil. Under the condition that the density is bounded and strictly positive, we have h = maxhi - 0 as k, the number of generators, goes to infinity. Then, from

Xp(x)(x - xi)dx = O Vli, Vi~ ~ ~ ~~i we get the asymptotic form of the energy in each region as

p(X)(X _ X,)2dx p(x)(x - xi)(x - mi)dx

Vi~~~~~~~~~~~~ ViVi ~j- 12 W2[(mi) + p'(mi)(mi - xi)] hi3 + O(h?5) Vi, where mi is the midpoint of the interval Vi. On the other hand, using Taylor expan- sions, we obtain

p(x)(x - xi)dx = p(mi)(mi - xi)hi + -p'(nmi)h3 1 p +-Ip"(mi)(mi - xi)h3 + O(h 5) Vi. 24 Since mi -xi = (hi+, - hi)/4, we then obtain hi+,-hi P'(mi) hi2 3p(mti)

From this, we obtain that the energy in each region is approximately given by

-p(m)hh3 Vi. 12 Furthermore, assuming that the mesh sizes hi are of the form

hi g,-9(Mi) T Vi,' where g is a smoothly varying function and T is a small parameter, yields that

g(mi+,) -g(Tni) p/(Tni) Tg(mi)2 3p(rni)

On the other hand,

mim 1-m i =+ -h'+,I I+h + hi1= - (m?1g (Tni+ 1 )+g(j) + g (Tni) Tg(mj), m~~?i - 2 2

so that p'(mi) g(mTi+) - g(mi) 3p(mi) Tg(mi)2 g(mi+i) - g(mi) 1 mi+ - mi g(mi) g'(mi) g(mj)

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms CENTROIDAL VORONOI TESSELLATIONS 665

We see that this is satisfied by g(mi) cp-1/3(mi) for some constant c, i.e.,

CT V lp1/3 (mj)

Substituting into the asymptotic expression for the energy, we obtain

p(x)(x - xi)2dx 121-_-(ih31_ 12 Vi.

These two properties are the deterministic analog of the results in [63] for the proba- bilistic k-means clustering that we discussed in the previous section; i.e., under some assumptions on the density function, asymptotically speaking, the energy is equally distributed in the Voronoi intervals and the sizes of the Voronoi intervals are inversely proportional to the one-third power of the underlying density at the midpoints of the intervals. In [14], an important conjecture is made which states that asymptotically, for the optimal centroidal Voronoi tessellation, all Voronoi regions are approximately congruent to the same basic cell that depends only on the dimension. The basic cell is shown to be the regular hexagon in two dimensions [44], but the conjecture re- mains open for three and higher dimensions. The equidistribution of energy principle, however, can be established based on Gersho's conjecture [14, 17].

6.4.2. Linear Convergence Rate of Lloyd's Method. We again consider the unit interval with constant density p(x) = 1 and k points so that the optimal centroids are given by xi = (2i - 1)/2k, i = 1, ... , k. Let x' 0 and x+ = 1. Then, Lloyd's method is simply given by the iteration x`+1 = (x- + 2xn + x ) /4 for i =1 ... k. Therefore, the error el - x- (2i - 1)/2k satisfies e`+1 - Tke", where

1/4 1/4 0 0...... 0 1/4 1/2 1/4.0 0 0 0 1/4 1/2.0 0 0

Tk= . . ...

0 0 0. 1/2 1/4 0 0 0 0 .1/4 1/2 1/4 0 0 0 0 O 1/4 1/4

Let Tk = TkA + diag(1/4, 0, 0, ... , 0, 0, 1/4); then, we have that ITk 11 < IITk= Cos2 2(7k1) and also that |ITk|1 > ?ITk-211 = cos2 2(k1) so that 2(k+ ) a 2(k2-1) 7 sin2 < 1- ITk < sin2 2(k +1) -- 2 (k-1

Thus, for large k,

1 - ITkll 4k2

This shows that Lloyd's method converges linearly. If, in (5.1), we instead let c?] = 1 and B(n) - M(G(Z(n)))-1, then the iteration matrix becomes 2Tk - I. For large k we have that

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms 666 QIANG DU, VANCE FABER, AND MAX GUNZBURGER

0.8 0.8 X

0.6 -0.6

0.4 -0.4

0.2 - 0.2 -

0 0

-0.2 -- .

-0.4 --0.4-

-0.6 -0.6-

-0.8 -0.8

-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1

0.8 .

0.606

0.4 0.4 -

0.2e

-0.2 -0.2

-0.4 -.

-0.6 06

-0.8 -- .

-1 -1 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1

Fig. 7.1 Two-dimensional Voronoi diagrams for a constant density functihon in [-, 1]2; left: Monte Carlo simulation; right: centroidal diagrams; top: 64 generators; bottom: 256 generators. so that, for large k, the convergence will be twice as fast as that for Lloyd's method. This situation is similar to overrelaxation. Of course, given the largest aind the smallest eigenvalues Afmax and Amid of Tk, the optimal parameter to is determined from

1 + ae(Amax ap) -1 - a (Amin - 1),i

2 &lopt 2 - Amax - Amin' which implies a conivergence rate on roughly the same order as that for the choice a 2.

7. Numerical Experiments. We now illustrate centroidal Voronoi tessellations of a square; we compare them with Monte Carlo-based Voronoi tessellations and also show the effects of different density functions. For the centroidal Voronloi tessellations, we start from the Voronoi diagrams corresponding to a Monte Carlo distribution of genierators and then a-pply the Lloyd algorithm to find centroidal Voronoi diagrams.

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms CENTROIDAL VORONOI TESSELLATIONS 667

0 6 0-L0 6< i;

- -0 -0 -0 -0 0 02 0 06 0 1 -1 -8 -6 -4 -20 02 04 06 0 1 -8 -6 -4-2 0 22 0 6 0

-0 2 -0) 2S< -d 2

-1 -0 8-0 6-04 -0 200 202 404 606 081-1 -0 8-0 6-0 4-0 200 202 404 606 081-1 -0 8-0 6-0 4-0 200 202 404 606 08

Fig. 7.2 Perturbation (top center) of a utniform square Voronoi diagram (top left) with 64 generators leads to a hexagonal-like lattice (bottom right) with Lloyd's iteration. The pictutres are generated at iteration n 6mbers 0 15 30 60, and 120.

In Figure 7.1, results for a constant density function are given. The top two images are for 64 generators, the bottom two for 256 generators. For the left pair, the genera- tors of the Voronoi tessellation are distributed randomly with uniform probability; for the right pair, the generators are those for centroidal Voronoi tessellations. The mluch greater uniformity of the centroidal Voronoi tessellation is obvious. It should be noted that the working precision of our implementation might affect the final appearances of the images and prevent them from attaining the diagram with absolute minimum energy. Of course, for 64 and 256 generators in a square, there exist other obvious centroidal Voronoi tessellations, e.g., those of 8 x 8 and 16 x 16, respectively, uniformu square lattices. (There are many other possible solutions; for examlple, for 64 gener- ators, we also have arrangements of 64 x 1, or 32 x 2, or 16 x 4 rectangles.) We have the following comparisons of the values of the energy. For 64 generators, the energy for the computed centroidal Voronoi diagram of Figure 7.1 is approximately equal to 0.0411, while with 256 generators, that energy is approximately equal to 0.0102. For a centroidal Voronoi diagram with k generators corresponding to a uniform square lattice, the energy is 8/(3k). Thus, for k= 64, the energy is approxiately 0.041666, while for k =r256, the energy is approximately 0.0104166. Both values are larger than those corresponding to the computed centroidal Voronoi diagrams. Asymptot- ically, the centroidal Voronoi diagrams should approach a uniform hexagonal lattice with an energy on the order of 407(9 3k) [14, 441. The uniform square lattice is unstable under small perturbations. Figure 7.2 shows the evolution fiom a slight per- turbation (top center) of the uniform square lattice (top left) with 64 generators to a hexagon-like Voronoi diagram (bottom right) using Lloyd's method. The diagrams are recorded at iterations 0 (the initial perturbed configuration, top center), 15 (top right), 30 (bottom left), 60 (bottom center), and 120 (the final configuration, bottom right) .

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms 668 QIANG DU, VANCE FABER, AND MAX GUNZBURGER

0.8 - 0.8 -

0.6 -0.6

0.4 -0.4

0.2 0.2

0 0

-0.2 --0.2-

-0.4 -0.4-

-0.6 --0.6-

-0.8 -0.8

-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1

0.8 0.8

0.6 0.6

0.4 0.4

0.2 0.2

0 0

-0.2 -0.2

-0.4 -0.4

-0.6 -0.6

-0.8 -0.8

-1 ~~~~~~~~~~~~~~~~~~~~~~~~-1 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1

Fig. 7.3 Two-dimensional Voronoi diagrams for the density function eX'2_Y 2 in [-1, 1]2; left: Monte Carlo simulation; right: centroidal diagrams; top: 64 generators; bottom: 256 gen- erators.

In Figures 7.3-7.6 and Figure 7.8, we repeat the images of Figure 7.1 for nonconstant density functions. Figure 7.3 is for the density function ex 2Y . Since the density variation is relatively small (with a maximum of 1 and a minimum of I/e2), we see little change from the results of Figure 7.1. The density function for Figure 7.4 exhibits much greater variation, ranging from 1 to 1/e20. We now see considerable change from the images of Figure 7.1. For both the Monte Carlo and the centroidal Voronoi examples, the generators are now clustered near the center of the images, i.e., near the peak of the density function. However, the clustering is much more pronounced for the Monte Carlo simulation. For Figures 7.5 and 7.6, we choose density functions that have a large peak in the middle of the square but that also vary, with small amplitude, away from the peak. We again see that the generators determined through random selection tend to cluster near the peak more than the centroidal Voronoi generators. This is especially pronounced in Figure 7.6, where the relative height and sharpness of the peak are more pronounced. This feature of centroidal Voronoi tessellations has important con-

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms CENTROIDAL VORONOI TESSELLATIONS 669

0.8 - 0.8 - -

0.6 -0.6

0.4 - 0.4 -

0.2 -0.2-

-1 ,0 1 1 /, ,0 , , , -1 /, , \ , , ,

-0.2 --0.2

-0.4 -0.4 -

-0.6 - -0.6 -

-0.0 -0.0

-1 -0.0 -0.6 -0.4 -0.2 0 0.2 0.4 0 .6 0.0 1 -1 -0 .0 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.0 1

0.0 0.0

0.6 -0.6-

0.4 -0.4-

0.2 -0.2

0 0

-0.2 -0.2

-0.4 -0.4-

-0.6 --0.6-

-0.0 -0.0

-1 -0.0 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.0 1 -1 -0.0 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.0 1

Fig. 7.4 Two-dimensional Voronoi diagrams for the density function e lx iy zn[-,1;let Monte Carlo simulation; right: centroidal diagrams; top: 64 generators; bottom: 256 gen- erators.

sequences in applications. For example, let us return to the image processing setting. Suppose we have an image that has large areas covered by very few nearby colors; for example, we could have a portrait with a uniformly or nearly uniformly colored background. In color space, the density function would then have large peaks located at the few colors of the background. A random selection of the reduced color set used to approximate the picture would naturally result in many of these being at the peaks of the density function. However, this is not necessary to obtain a good approximate picture; for example, if the background consisted of only one color, it would take only one color to reproduce the whole background. On the other hand, using a centroidal Voronoi tessellation for the reduced color set results in less clustering of that set near the peaks and allows for more colors to be available for approximating the rest of the picture where interesting things are happening. As an example of such a situation, consider the image in the top left of Figure 7.7. Here, we have placed the original image of Figure 2.1 (which potentially contains 256 shades of gray) in the corner of a larger image, the rest of which is made up of only

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms 670 QIANG DU, VANCE FABER, AND MAX GUNZBURGER

0.8 - 0.8 -

0.6 - 0.6

0.4 0.4

0.2 0.2

0 0

-0.2 --0.2-

-0.4 -0.4

-0.6 -0.6

-0 -0.8

-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1

0.8 - 0.8 V

0.6 0.6

0.4 0.4

0.2 0.2

0 cngo 0

-0.2 -0.2

-0.4 -0.4-

-0.6 -0.6-

-0.8 -0.8-

-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1

Fig. 7.5 Two-dimensional Voronoi diagrams for the density function 6-20x 220y 2 + 0.05 sin 2 (7rx) sin2 (7ry) in [-1, 1]2; left: Monte Carlo simulation;- right: centroidal diagrams; top: 64 generators; bottom: 256 generators.

8 contiguous shades. The 256 shades are represented by the integers k =,..., 255; the 8 shades of the background are 126 through 133. The density function for the 256 shades of gray is given in the graph in the top right of Figure 7.7. In this density function, the interesting part of the picture is found mostly in the regions of small density. It is not surprising, given this density function, that a random selection of 8 shades results in an approximating set consisting of the 7 shades in the peak of the density function, i.e., shades 126-129 and 131-133, and 1 shade, 50, outside the peak. (Actually, we might expect that perhaps all 8 shades selected at random are in the peak, but we reject repeated selections; i.e., if a shade has been selected before, then we select again until we find a shade that has not been selected previously. In this sense, the M4onte Carlo selection we report on here is a "best-case scenario" for that process.) The bottom-left image in Figure 7.7 is that of the Monte Carlo-approximate picture. Clearly, we do not obtain a good approximate picture. The centroidal Voronoi selection for the 8 approximating colors includes only 2 of the 8 shades in the peak of the density function; 6 other shades are available for approximating the interesting

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms CENTROIDAL VORONOI TESSELLATIONS 671

0.8 - 0.8 - -

0.6 -0.6-

0.4 -0.4

0.2 -0.2-

0 .. 0

-0.2 - -0.2

-0.4 -0.4-

-0.6 --0.6-

-0.8 -0.8

-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1

0.8 - T 0.8 - d

0.6 -0.6

0.4 - 0.4

0.2 0.2-

0 0

-0.2 --0.2

-0.4 -0.4

-0.6 -0.6

-0.8 - -0.8-

-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1

Fig. 7.6 Two-di'mensi'onal Voronoi' diagrams for the density functi'on e-40x 2 40y + 0.001 sin 2 (irX) sin 2 (ry) i'n [-1, 112; left: Monte Carlo simulatlion; right: centroidal di'agrams; top: 64 generators; bottom: 256 generators. part of the picture. (The precise centroidal Voronoi shades are 49, 76, 101, 127, 132, 154, 177, and 205.) The bottom-right image in Figure 7.7 is that of the centroidal Voronoi approximate picture. Clearly, the centroidal Voronoi generators do a much better job. The reason for their superiority becomes clear once one examines the energy (2.1), i.e.,

8 E((Zi, Vi), i =1... )8)= o( P(Y)Iyj- zil1 i=l yjCVi where the zi's denote the 8 approximating shades of gray, the Vi's denote their corre- sponding Voronoi intervals, and the yj's are the 256 shades used in the original image. To make the energy small, we need yj - zi to be small whenever p(y3) is large. How- ever, if too many of the z.'s are in the peak of the density function, then there may be relatively large contributions to the energy at points where p(yj) is small, since then Yj - zi may be large. The centroidal Voronoi choice for the zi's is optimal with respect to the minimization of the energy and, as we have seen, the best choice is for

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms 672 QIANG DU, VANCE FABER, AND MAX GUNZBURGER

_ _ _ x 10 Color density dstrlba.onl

7

_...... so too 150 200 250 300

Fig. 7.7 Top left: an 8-bit image embedded in a nearly uniform background. Top right: the gray scale density function for the image in the top left. Bottom left: the Monte Carlo compressed 3-bit image. Bottom right: the centroidal Voronoi compressed 3-bit image.

two of the zi's to be within the peak and for the other six to be distributed among those points at which the density is small. The final figure is for a smoothly varying d'ensity having a maximum at a corner of the image; see Figure 7.8. Many of the features of the previous examples also appear in this figure. In particular, note that, in general, generators chosen according to a centroidal Voronoi tessellation result in much more uniform and symmetric tessella- tions which, at least to these authors, are more pleasing to the eye and which, as we have seen, are also more useful.

8. Conclusions. There are numerous analytical and computational issues con- nected with centroidal Voronoi tessellations that warrant further examination. Among these are the following: How can Lloyd's method be modified so that it has an accel- erated convergence rate? Can it be proved, for a constant density function, that the optimal quantizer is given asymptotically by a uniform lattice in higher dimensional space? How can we find the centroidal Voronoi tessellations corresponding to the global minimum while avoiding local minima? What do centroidal Voronoi solutions in non-Euclidean metrics look like and how can they be efficiently computed? What is the complexity of the local optimal quantizer problem? In this last regard, it was shown in [13] that a simple case of the general local optimal quantizer problem is NP- complete. Thus, the general problem of communication theory, in its combinatorial forms, has at least that complexity.

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms CENTROIDAL VORONOI TESSELLATIONS 673

0.8 0.8 -

0.6 - 0.6

0.4 0.4

0.2 - 0.2

0 0

-0.2 -0.2

-0.4 -0.4

-0.6 -0.6

-0.8 -0.8

-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1

0.8 0.8

0.6 0.6

0.4 0.4

0.2 0.2

-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1

Fig. 7.8 Two-dimensional Vorontoi diagrams for the density function e-2x-2y in [-1, 1]2; left: Monte Carlo simulation; right: cenitroidal diagrams; top: 64 generators; bottom: 256 gen- erators.

Grid generation for the numerical solution of partial differential equations is an- other potentially important application of centroidal Voronoi tessellations. Indeed, a Lloyd-like iteration is already in use in existing adaptive grid generation methods; see [9] and [41]. In these methods, a functional such as (2.1) is defined where the density function depends, e.g., on first or second derivatives or differences of a com- puted solution. The new position of the grid points is determined by minimizing the functional over all posible locations of the points zi. However, the associated domains Vi are not allowed to be defined independently of the points zi. Rather, Vi is chosen to be the patch consisting of all grid elements containing the point zi. For example, in a logically Cartesian grid in two dimensions, Vi consists of the four quadrilateral grid elements for which zi is a vertex. The minimizer of the functional is found by a Lloyd-like iteration in which one finds new positions for the grid points by locating the centroids of the volumes Vi of the current grid. Allowing the volumes Vi to par- ticipate in the minimization process, i.e., defining grids based on centroidal Voronoi tessellations, may offer a better alternative, at least in the unstructured grid context. In particular, it would be interesting to see if centroidal Voronoi-based grid genera-

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms 674 QIANG DU, VANCE FABER, AND MAX GUNZBURGER tion can be used to avoid problems such as grid crossovers and slivers that occur in other grid generation methods.

Acknowledgments. The authors thank the editors and the reviewers of the paper for their suggestions and comments, which have resulted in a substantial improvement.

REFERENCES

[1] E. ABAYA AND F. WISE, Convergence of vector quantizers with applications to optimal quan- tization, SIAM J. Appl. Math., 44 (1984), pp. 183-189. [2] T. ASANO, B. BHATTACHARYA, 1\4. KEIL, AND F. YAo, Clustering algorithms based on mini- mum and maximum spanning trees, in Proceedings of the Fourth Annual Symposium on Computational Geometry, University of Illinois, Urbana, 1988, pp. 252-257. [3] G. BARLOW, Hexagonal territories, Animal Behav., 22 (1974), pp. 876-878. [4] G. CELEUX AND G. GOVAERT, A classification EM algorithm for clustering and two stochastic versions, Comput. Statist. Data. Anal., 14 (1992), pp. 315-332. [5] C. CHINRUNGRUENG AND C. SEQUIN, Optimal adaptive k-means algorithm with dynamic ad- justment of learning rate, IEEE Trans. Neural Net., 6 (1995), pp. 157-169. [6] R. CLARK, Optisim An extended dissimilarity selection method for finding diverse represen- tative subsets, J. Chem. Inform. Comput. Sci., 37 (1997), pp. 1181-1188. [7] P. DAVIS AND P. RABINOWITZ, Methods of Numerical Integration, 2nd ed., Academic Press, New York, 1984. [8] F. DENATALE, G. DESOLI, D. GIUSTO, AND G. VERNAZZA, Polynomial approximation and vector quantization-A region-based integration, IEEE Trans. Comm., 43 (1995), pp. 198-206. [9] P. EISEMAN, Adaptive grid generation, Comput. Methods Appl. Mech. Engrg., 64 (1987), pp. 321-376. [10] R.. ENGLAND AND D. BENYON, A remark on Algorithm AS136: k-means clustering algorithm, Appl. Statist., 30 (1981), pp. 355-356. [11] J. FRIEDMAN, Exploratory projection pursuit, J. Amer. Statist. Assoc., 82 (1987), pp. 249-266. [12] M. GAREY AND D. JOHNSON, Computers and Intractability: A Guide to the Theory of NP- Completeness, Freeman, San Francisco, 1979. [13] M1. GAREY, D. JOHNSON, AND H. WITSENHAUSEN, The complexity of the generalized Lloyd-Max problem, IEEE Trans. Inform. Theory, 28 (1982), pp. 255-256. [14] A. GERSHO, Asymptotically optimal block quantization, IEEE Trans. Inform. Theory, 25 (1979), pp. 373-380. [153 A. GERSHO AND R. GRAY, Vector Quantization and Signal Compression, Kluwer, Boston, 1992. [16] R.. GRAY, J. KIEFFER, AND Y. LINDE, Locally optimal block quantizer design, Inform. and Control, 45 (1980), pp. 178-198. [17] R. GRAY AND D. NEUHOFF, Quantization, IEEE Trans. Inform. Theory, 44 (1998), pp. 2325- 2383. [18] P. HALL, On polynomial-based projection indices for exploratory projection pursuit, Ann. Statist., 17 (1989), pp. 589-605. [19] J. HARTIGAN, Clustering Algorithms, Wiley-Interscience, New York, 1975. [20] J. HARTIGAN, Asymptotic distribution for clustering centers, Ann. Statist., 6 (1978), pp. 117- 131. [21] J. HARTIGAN AND 1\4. WONG, A k-means clustering algorithm, Appl. Statist. 28 (1979), pp. 100-108. [22] 1\I. HASEGAWA AND M. TANEMURA, On the pattern of space division by territories, Ann. Inst. Statist. Math., 28 (1976), pp. 509-519. [23] M. HASEGAWA AND M. TANEMURA, Spatial patterns of territories, Recent Developments in Statistical Inference and Data Analysis, K. Matusita, ed., North-Holland, Amsterdam, 1980, pp. 73-78. [24] S. HASEGAWA, H. IMAI, M. INABA, N. KATOH, AND J. NAKANO, Efficient algorithms for variance-based k-clustering, in Proceedings of the First Pacific Conference on Computer Graphics and Applications, World Scientific, River Edge, NJ, 1993, pp. 75-89. [25] P. HECKERT, Color image quantization frame buffer display, ACM Trans. Comput. Graph., 16 (1982), pp. 297-304. [26] F. HICKERNELL AND H. HONG, The asymptotic efficiency of randomized nets for quadrature, Math. Comp., 68 (1999), pp. 767-791. [27] H. HONDA, Description of cellular patterns by Dirichlet domains: The two-dimensional case, J. Theoret. Biol., 72 (1978), pp. 523-543. [28] H. HONDA, Geometrical modelling for cells in tissues, Inter. Rev. Cytol., 81 (1983), pp. 191-248.

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms CENTROIDAL VORONOI TESSELLATIONS 675

[29] P. HUBER, Projection pursuit, with discussion, Ann. Statist., 13 (1985), pp. 435-525. [30] H. IMAI AND M. INABA, Geometric k-clustering with applications, in Proceedings of the Third International Congress of Industrial and Applied Mathematics, 1995, to appear. [31] H. IMAI, N. KATOH, AND M. INABA, Applications of weighted Voronoi diagrams and ran- domization to variance-based k-clustering, Proceedings of the 10th ACM Symposium on Computational Geometry, 1994, pp. 332-339. [32] M. INABA, H. IMAI, AND N. KATOH, Experimental results of randomized clustering algorithms, in Proceedings of the 12th ACM Symposium on Computational Geometry: Communication Section, 1996, to appear. [33] M. IRI, K. MUROTA, AND T. OHYA, A fast Voronoi-diagram algorithm with applications to geographical optimization problems, in Proceedings of the 11th IFIP Conference on System Modelling and Optimzation, Lecture Notes in Control and Inform. Sci. 59, Springer-Verlag, New York, pp. 273-288. [34] A. JAIN AND R. DUBES, Algorithms for Clustering Data, Prentice-Hall, Englewood Cliffs, NJ, 1998. [35] M. JHUN, Bootstrapping k-means clustering, J. Japanese Soc. Comput. Statist., 3 (1990), pp. 1-14. [36] J. KIEFFER, Uniqueness of locally optimal quantizer for log-concave density and convex error function, IEEE Trans. Inform. Theory, 29 (1983), pp. 42-47. [37] R. KLEIN, Concrete and Abstract Voronoi Diagrams, Lecture Notes in Comput. Sci. 400, Springer, New York, 1989. [38] Y. LINDE, A. Buzo, AND R. GRAY, An algorithm for vector quantizer design, IEEE Trans. Comm., 28 (1980), pp. 84-95. [39] S. LLOYD, Least square quantization in PCM, IEEE Trans. Inform. Theory, 28 (1982), pp. 129-137. [40] J. MACQUEEN, Some methods for classification and analysis of multivariate observations, in Proceedings, Fifth Berkeley Symposium on Mathematical Statistics and Probability, Vol. I, L. Le Cam and J. Neyman, eds., University of California, Berkeley, 1967, pp. 281-297. [41] D. McRAE AND K. LAFLIN, Dynamic grid adaptation and grid quality, in CRC Handbook of Grid Generation, CRC, Boca Raton, FL, 1998, pp. 34-1-33. [42] V. MATHEWS, Vector quantization of images using the loo distortion measure, IEEE Signal Proc. Lett., 5 (1997), pp. 33-35. [43] U. MOLLER, M. GALICKI, E. BARESOVA, AND H. WITTE, An efficient vector quantizer providing globally optimal-solutions, IEEE Trans. Signal Proc., 46 (1998), pp. 2515-2529. [44] D. NEWMAN, The hexagon theorem, IEEE Trans. Inform. Theory, 28 (1982), pp. 137-139. [45] R. NICOLAIDES, Direct discretization of planar div-curl problems, SIAM J. Numer. Anal., 29 (1992), pp. 32-56. [46] H. NIEDERREITER, Random Number Generation and Quasi-Monte Carlo Methods, SIAM, Philadelphia, 1992. [47] A. OKABE, B. BOOTS, AND K. SUGIHARA, Spatial Tessellations; Concepts and Applications of Voronoi Diagrams, Wiley, Chichester, UK, 1992. [48] C. PAPADIMITRIOU AND K. STEIGLITZ, Combinatorial Optimization: Algorithms and Complex- ity, Prentice-Hall, Englewood Cliffs, NJ, 1982. [49] A. PAPAGEORGIOU AND J. TRAUB, Fast evaluation of multidimensional integrals, Comput. Phys., 11 (1997), pp. 574-579. [50] K. PARNA, Strong consistency of k-means clustering criterion in separable metric spaces, Tartu Riikl. Ul. Toimetised, 733 (1986), pp. 86-96. [51] K. PARNA, On the stability of k-means clustering in metric spaces, Tartu Riikl. Ul. Toimetised, 798 (1988), pp. 19-36. [52] D. POLLARD Strong consistency of k-mean clustering, Ann. Statist., 9 (1981), pp. 135-140. [53] D. POLLARD, A central limit theorem for k-means clustering, Ann. Statist., 10 (1982), pp. 919-926. [54] F. PREPARATA AND M. SHAMOS, Computational Geometry An Introduction, Springer, New York, 1985. [55] S. SELIM AND M. ISMAIL, K-means-type algorithms: A generalized convergence theorem and characterization of local optimality, IEEE Trans. Pattern Anal. Mach. Intell., PAMI-6 (1984), pp. 81-87. [56] W. SHEPPARD, On the calculation of the most probable values of frequency constants for data arranged according to equidistant divisions of a scale, Proc. London Math. Soc., 24 (1898), pp. 353-390. [57] I. SLOAN AND H. WOZNIAKOWSKI, When are quasi-Monte Carlo algorithms efficient for high- dimensional integrals?, J. Complexity, 14 (1998), pp. 1-33.

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms 676 QIANG DU, VANCE FABER, AND MAX GUNZBURGER

[58] W. STUTE AND L. ZHU, Asymptotics of k-means clustering based on projection pursuit, Sankhya Ser. A, 57 (1995), pp. 462-471. [59] A. SUZUKI AND M. IRI, Approximation of a tessellation of the plane by a Voronoi diagram, J. Oper. Res. Soc. Japan, 29 (1986), pp. 69-96. [60] M. TANEMURA AND M. HASEGAWA, Geometrical models of territory. I. Models for synchronous and asynchronous settlement of territories, J. Theoret. Biol., 82 (1980), pp. 477-496. [61] A. TRUSHKIN, On the design of an optimal quantizer, IEEE Trans. Inform. Theory, 39 (1993), pp. 1180-1194. [62] S. WAN, S. WONG, AND P. PRUSINKIEWICZ, An algorithm for multidimensional data clustering ACM Trans. Math. Software, 14 (1988), pp. 153-162. [63] M. WONG, Asymptotic properties of univariate sample k-means clusters, J. Classification, 1 (1984), pp. 255-270. [64] X. WU AND I. WITTEN, A Fast k-Means Type Clustering Algorithm, Tech. Report, Department of Computer Science, University of Calgary, Alberta, Canada, 1985.

This content downloaded from 144.174.6.137 on Tue, 09 Aug 2016 14:52:00 UTC All use subject to http://about.jstor.org/terms