Centroidal Voronoi Tessellations: Applications and Algorithms Author(S): Qiang Du, Vance Faber and Max Gunzburger Source: SIAM Review, Vol
Total Page:16
File Type:pdf, Size:1020Kb
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, Iowa State University, 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,.