An Efficient Query Structure for Mesh Refinement
|
|
- Hannah Boyd
- 5 years ago
- Views:
Transcription
1 An Efficient Query Structure for Mesh Refinement Benoît Hudson Duru Türkoğlu September 18, 2008 Abstract We are interested in the following mesh refinement problem: given an input set of points P in R d, we would like to produce a good-quality triangulation by adding new points in P. Algorithms for mesh refinement are typically incremental: they compute the Delaunay triangulation of the input, and insert points one by one. However, retriangulating after each insertion can take linear time. In this work we develop a query structure that maintains the mesh without paying the full cost of retriangulating. Assuming that the meshing algorithm processes bad-quality elements in increasing order of their size, our structure allows inserting new points and computing a restriction of the Voronoi cell of a point, both in constant time. We develop an example of such a meshing algorithm, and show that it produces a provably small mesh in time as fast as sorting the input plus writing the output. 1 Introduction A central task in scientific computing is to discretize a domain of interest into a simplicial mesh. Concretely, we investigate the following setting: we are given a point cloud P in [0, 1] d, typically with d = 2 or 3. A meshing algorithm must produce a simplicial decomposition of [0, 1] d (a triangulation in d = 2), in which all of the input points appear as vertices of the decomposition. Each simplex should have good aspect ratio (quality), since that is a necessary or at least sufficient condition for many scientific computing applications. To ensure this, the algorithm must refine the point set, creating new (Steiner) vertices. But it should not add too many vertices: if the smallest possible mesh of good aspect ratio has m vertices, the algorithm should output at most O(m) vertices. There are two categories of mesh refinement algorithms with provable guarantees: those based on quadtrees [BEG94, MV00], and those based on Delaunay triangulations [Rup95, She98]. Quadtree-based meshes can be constructed in O(n log n + m) time [BET99]: the first term is due to sorting the input, the second term is due to Toyota Technological Institute at Chicago University of Chicago 1
2 computing and reporting the output. Traditional Delaunay methods produce substantially smaller meshes in practice, but can be quadratically slow (or worse) in the worst case. The runtime behaviour of these algorithms is dominated by the cost of maintaining the mesh while the output is incrementally computed. Two Delaunay refinement algorithms sidestep this cost and match the quadtree runtime: Har-Peled and Üngör [HPÜ05] hybridize Delaunay and quadtree methods, while Hudson, Miller, and Phillips [HMP06] carefully maintain a triangulation that is always sparse. The hybrid approach works in two dimensions only, whereas the always-sparse approach works in any fixed dimension. Here, we extend the hybrid approach to three or more dimensions. Our key contribution is a data structure that, in the context of a class of algorithms we call bottom-up meshing algorithms, can compute what we call the clipped Voronoi cell of a vertex (see Definitions 1 and 2). We prove the clipped Voronoi cell is sufficient for finding appropriate positions to place Steiner vertices as needed to produce a quality mesh. The user of our data structure can then add said Steiner vertex to the structure, again in constant time. In the final output, our data structure computes the entire Voronoi cell of any vertex in constant time, which is sufficient information for computing a good aspect ratio simplicial decomposition. 2 Preliminaries In a mesh where all simplices have good aspect ratio, the vertices of the mesh are wellspaced in a technical sense (defined below); conversely, a well-spaced set of points induces a mesh of good aspect ratio when we use the weight pumping technique to compute a triangulation [CD03]. Therefore, this paper deals almost exclusively with point sets and their Voronoi diagram. For the sake of clarity, we use u and v to denote vertices of the mesh, whereas arbitrary points in R d are denoted x and y. Our results all hold in arbitrary dimension. We assume the dimension is a constant, which allows us to hide in the big-o notation terms that are exponential in the dimension. In practice, we expect the techniques of this paper to mostly be applied to physical simulation problems in two or three dimensions, and rarely in even as many as four to six dimensions. Given a mesh M (which is a set of vertices), denote by NN M (v) the distance from v to the nearest other vertex in M, and by R M (v) the distance from v to the farthest node of its Voronoi cell; see Figure 1. Equivalently, R M (v) is the maximum circumradius of any Delaunay simplex around v. We say that v is ρ-well-spaced if R M (v) ρ NN M (v). One important consequence of well-spacedness is that the Delaunay triangulation of the vertices has bounded degree; therefore, we can talk of the size of the mesh either in terms of vertices or in terms of simplices, and be only off by a constant factor from each other. Since Ruppert s work [Rup95], one key tool to understanding the performance of Delaunay meshing algorithms has been the local feature size function. On a point set P, the function lfs(x) returns the distance from an arbitrary point x R d to its secondnearest vertex of P ; or, equivalently, it returns the minimum radius centered at x that encloses two or more vertices. The triangle inequality guarantees that the local feature 2
3 R(v) v NN(v) Figure 1: The vertex v is not 2-well-spaced, though it is 5-well-spaced. size is 1-Lipschitz: lfs(x) lfs(y) + xy for any x and y in space. At a vertex v P, the local feature size is the distance to the nearest neighbour: lfs(v) = NN P (v). In essence, then, lfs is an extension of NN P from being defined only on the vertices of the input to being defined on the entire space. Many meshing algorithms produce what we term a size-conforming mesh. That is, at every output vertex v M, NN M (v) Θ(lfs(v)). Notice here that while the nearest neighbour is taken over the output vertices M, the local feature size is defined over only the input points P. Ruppert showed that in two dimensions, even the smallest possible mesh of good aspect ratio is size-conforming; and furthermore, all size-conforming meshes have size within a constant factor of each other. In the present setting, where the input is a point cloud, his proof easily extends to higher dimension. We now have all the terminology needed to define what types of meshing algorithms can productively make use of our result. The definition refers to three values that are constants defined by the algorithm: γ, ρ, and β. That is, the values do not depend on the input P, though they may depend on the dimension of the input. Our proofs hold as long as γ > 0, ρ > 1, and β ρ. Definition 1 Consider an algorithm that starts with M = P and incrementally inserts Steiner vertices to M. When the algorithm produces a Steiner vertex s, the vertex lies within the Voronoi cell of some vertex v. We say the algorithm is a bottom-up mesh refinement algorithm if just before adding s, the following two conditions hold: (1) ρ NN M (v) vs β NN M (v). (2) For all other vertices u M, either NN M (u) γ NN M (v), or u is ρ-well-spaced: R M (u) ρ NN M (u). 3 Choosing Steiner Points Regardless of runtime considerations, the fundamental question in mesh refinement is: where should we put the Steiner points? Traditional solutions place Steiner points at the 3
4 u 2 u 3 u u 4 1 v βnn(v) Figure 2: The β-clipped Voronoi cell of v and its certificate region, bounded by neighbours u 1 through u 4. circumcenters of Delaunay simplices (equivalently, at nodes of the Voronoi diagram) that is, as far from any other vertex as possible. Har-Peled and Üngör instead place points at a particular location, the off-center, that is sufficiently far from a vertex, but still close to it. This locality allows them to produce a data structure that can find the off-center in constant time. Our goal is to generalize their result. We begin by defining a region, again, close to a vertex, that gives us a variety of choices of Steiner point: Definition 2 The β-clipped Voronoi cell of a vertex v in a mesh M, denoted V β M (v), is the intersection of the Voronoi cell of v with the ball centered at v of radius β NN M (v). Having computed V β M (v) for some β ρ, an algorithm can check whether v is ρ-well-spaced: is there any point of V β M (v) that is farther than ρ NN M (v)? If so, even without knowing the precise shape of the Voronoi cell, we can deduce that R M (v) is large, and thus v is not well-spaced. Therefore, it will be necessary to add a Steiner point. It is safe to insert any point in the Voronoi cell at distance at least ρ NN M (v) from v. For concreteness, we prove the following procedure, run until quiescence, terminates with a mesh no more than a constant factor larger than necessary: Take any vertex v M. Compute V β M (v). Let x be a point in V β M (v) such that vx > ρ NN M (v). If some such x exists, make it a vertex: add x to M. Lemma 3 Assume β ρ > 1. At any point during this procedure, for all vertices v M, we have the relation NN M (v) lfs(v)/c for some constant c that depends only on ρ and on the dimension. As a corollary, the final mesh has O(m) vertices. Proof: The proof follows Ruppert s original proof [Rup95] and is by induction. In the base case, before any vertex is inserted, M = P and thus NN M (v) = lfs(v). In the inductive case, the procedure is about to insert a new vertex at a point x. The 4
5 INITIALIZE(P ) O(n log n + m) APPROXIMATENN(v) O(1) CLIPPEDVORONOI(v, β) O(1) ADDVERTEX(v, p) O(1) Figure 3: The interface of our data structure, and runtimes. APPROXIMATENN is always fast but only accurate if used in the context of a bottom-up mesh refinement algorithm. CLIPPEDVORONOI and ADDVERTEX are always accurate but only fast in a bottom-up algorithm. See Theorem 10. current mesh is M, and let M be the new mesh, M = M {x}. We want to show that lfs(x) c NN M (x). We know that lfs is 1-Lipschitz, so lfs(x) lfs(v) + vx. The inductive hypothesis is that lfs(v) c NN M (v). Finally, we chose x such that NN M (v) vx /ρ, which means that lfs(x) (1 + c/ρ) vx. Since x is in the Voronoi cell of v, vx = NN M (x). In other words, we have shown that lfs(x) (1 + c/ρ) NN M (x). This satisfies what we need to show if 1 + c/ρ c. As long as ρ > 1, the choice of c = (ρ 1) 1 satisfies the condition and proves the lemma. Since the mesh is size-conforming, the corollary follows. If an algorithm correctly computes V β M (v), it must certify two things. First, a point x in V β M (v) is in the Voronoi cell of v; therefore, the open ball centered at x with radius vx is empty of any mesh vertices. The algorithm must, in some way or another, certify that said ball is empty otherwise, it might report that x is in the (clipped) Voronoi cell when in fact it is in the Voronoi cell of some other vertex. We call these the certificate balls, and define the certificate region of V β M (v) as their union (Figure 2). Second, an algorithm must verify that for all x on the boundary, either x is equidistant to v and another vertex, or x is at the clipping distance β NN(v) from v; otherwise, the algorithm could falsely report the clipped Voronoi cell is smaller than it truly is. 4 Query Interface Our main result is to present a data structure that can be used to maintain the mesh M as it is built, and quickly compute the clipped Voronoi cell of the vertices. Figure 3 presents the interface to our structure: after preprocessing the points, our structure can return the approximate distance to the nearest neighbour of any vertex; it can compute the clipped Voronoi cell of a vertex; and it can add a new Steiner vertex p near v. To better explain the query interface, we present an example bottom-up meshing algorithm in Figure 4. The idea is to perform the same procedure as in the prior section, but ordering vertices according to their distance to the nearest neighbour, smallest distance first. Strictly ordering the vertices by nearest neighbour distance is unnecessary, and in any case difficult since we would not known when to schedule the initial vertices from the input P. Therefore, we bucket the vertices into what we call a schedule, S, which is an array of sets of vertices. In set S[i], all vertices have NN M (v) Θ(2 i ). 5
6 REFINE(P, ρ) 1: INITIALIZE(P ) 2: Let S be an array of sets of vertices 3: for each v P do 4: Add v to the set S[ log APPROXIMATENN(v) ] 5: while S is non-empty do 6: Let v be a vertex from the set with the least index i 7: Compute V β M (v) = CLIPPEDVORONOI(2ρ, v) 8: if v is well-spaced then 9: Remove v from S[i] 10: else 11: Let x be some point in V β M (v) with vx ρ NN M (v) 12: ADDVERTEX(v, x) 13: Compute the neighbours U of x using CLIPPEDVORONOI(2ρ, x) 14: For each u U, add u to S[ log ux ] 15: Add x to S[ log vx ] Figure 4: A bottom-up mesh refinement algorithm using our structure At the end of REFINE, every vertex must be well-spaced, because otherwise the algorithm would not have terminated yet. It also produces a size-conforming mesh, of size O(m), as proved in Lemma 3. Finally, it runs quickly: Lemma 4 The algorithm of Figure 4 runs in time O(n log n + m). Proof: Initializing the data structure takes O(n log n + m) time. Scheduling each input point takes O(1) time, a total of O(n) time, since APPROXIMATENN is constant time (assuming we can take logarithms in constant time). To analyze the loop starting at line 5, we need to prove our algorithm is indeed a bottom-up refinement algorithm (definition 1). Condition (1) is explicitly guaranteed by Line 11: the point x chosen as a Steiner point is no more than β NN M (v) from v since it lies in the β-clipped Voronoi cell of v, and it is by construction farther than ρ NN M (v). Condition (2) is guaranteed because i is the least index. Therefore, when v is processed, any vertex that is not ρ-well-spaced has nearest neighbour in Ω(2 i ). The loop starting at line 5 iterates once each time a vertex was scheduled. A vertex may be scheduled for three reasons: because it is an input point; because it was just inserted; or because it neighbours a vertex that was just inserted. The first reason occurs exactly n times. The second reason occurs exactly m n times. As for the third reason, notice that the runtime on CLIPPEDVORONOI implies that a new vertex has O(1) neighbours therefore, the third reason occurs (m n) O(1) times. Each iteration involves either one or two calls to CLIPPEDVORONOI, and perhaps one call to ADDVERTEX; each takes O(1) time. Finding some x is constant time under any reasonable method to find it since V β M (v) has constant description length. The remainder of the work each iteration is to take a few logarithms and perform random access in an array, at constant time each. 6
7 All in all, there are O(m) iterations, each of which takes O(1) time, plus the initialization cost. These sum to O(n log n + m), as claimed. 5 Data Structure Our data structure is based on the leaves of a quadtree (a 2 d tree in arbitrary dimension). Each leaf square (or hypercube) stores the set of vertices contained in the square, and pointers to the neighbouring squares. Also, each vertex v stores a pointer to the square in which it lies, which we denote square(v). Our proofs of fast runtime depend on the quadtree having certain properties: (A) Each leaf square should only have a bounded number of neighbours. (B) Each leaf square should be sized in proportion to the local feature size of the points in the cell. That is, if a quadtree square has sides of length l, then for all x in the square, lfs(x) Θ(l). The balanced quadtree of Bern, Eppstein, and Gilbert [BEG94] satisfies our requirements, though in practice it will be preferable to split the squares more coarsely. Implementing much of the interface is very straightforward: We can implement INITIALIZE in O(n log n + m) time using the technique of Bern et al [BET99]. The mesh spacing requirement on the meshing algorithm, and requirement (B) on the quadtree, together guarantee that the square size is within a constant factor of NN(v). This allows APPROXIMATENN(v) to return the size of square(v), in constant time. To implement ADDVERTEX(p, v), we first look up square(v), then walk from square to square along the segment pv. Upon reaching the square that contains p, we add p to its list of vertices; the runtime analysis is treated in Theorem 10. Implementing CLIPPED- VORONOI is much more interesting and merits its own section. 6 Clipped Voronoi Computation We represent the β-clipped Voronoi cell of a vertex v using a set U of mesh vertices: for example, in Figure 2, U = {u 1, u 2, u 3, u 4 }. To find them, we perform a scan starting at v and growing a ball outward up to a maximum radius: at time t the ball has radius u 2 q t < t max = β NN M (v). When the scan reaches a vertex d v u 1 u, we add u to U if it is a Voronoi neighbour. In the analysis p it helps to define U t as the vertices of U with time at most t. For efficiency, we need to ensure that the scan does not exceed the certificate region. Therefore, we use a distance function different from the Euclidean one. For Figure 5: The thick curve any point p, we define the distance d M is the set of points p with v (p) as the diameter of the smallest certificate ball for p. If no such ball exists distance d U v (p) = d. No then we say d M empty ball reaches q, so v (p) =. It is not clear how to compute d M d U v (q) =. v (p) exactly without a prohibitive runtime overhead. However, we can relax the requirement that the balls be empty of any mesh vertices, and instead at time t compute d Ut v (p) the diameter of 7
8 CLIPPEDVORONOI(v, β) 1: t max 2: Q {square(v)} 3: U 4: while Q contains an element q with d U v (q) < t max do 5: q Minimum of Q with respect to d U v 6: if q is a vertex then 7: Add q to U 8: if q is the first vertex then t max β vq 9: if q is a quadtree square then 10: Add each vertex in the square to Q 11: Add every unvisited neighbouring square to Q 12: return U Figure 6: The CLIPPEDVORONOI algorithm, which performs a scan through the quadtree and mesh vertices. the smallest ball with v and p on its surface that includes no vertex of U t in its interior. Over time during the scan, this distance function is non-decreasing: adding vertices can only make it harder for a ball to be empty. Therefore, d Ut v (p) d M v (p) for all t. Interestingly, when the scan reaches p, the efficiently-computed lower bound is tight: Lemma 5 If point p has d Ut v (p) t, then d Ut v (p) = d M v (p). Proof: The assumption of the lemma implies that there exists a ball B of diameter d Ut v (p) that contains no vertex of U t. Consider a point q strictly inside B. It has a strictly smaller ball that is empty: d Ut v (q) < t. Because the computed distance function is nondecreasing in t, we must already have visited q, and discovered whether or not q is a vertex of M. In fact, we know it is not because if it were it would be both a vertex in U t and inside B, contradicting that B is empty. This applies for all q B: all of B is in fact empty of vertices of M. Monotonicity further implies that B is the smallest empty ball, which proves d Ut v (p) = d M v (p). As a corollary, this shows that the U tmax computed by the scan faithfully represents the β-clipped Voronoi cell: The scan visits the entire certificate region, because all points in the certificate region have distance less than t max. It also visits no more than the certificate region, because any point we visit has an empty ball with its center in V β (v). Implementation (see Figure 6): We discretize the scan using quadtree squares. Starting at square(v), we explore outward from v using a queue Q of events vertices and squares. Upon processing a vertex, we update the current Voronoi cell U; and upon processing a square, we enqueue the vertices it contains, and the squares it neighbours. To compute d U v (p), we find a point c that is the center of an empty ball of minimum radius. This gives rise to the following convex program: minimize cv subject to cv = xp cv cu i for all u i U 8
9 For a quadtree square, the distance is the minimum distance to any p in the square; this corresponds to letting p be free variables in the above program, and adding a box constraint (2d linear constraints in dimension d) on the coordinates of p. This leaves us with a quadratic program rather than a convex one, but it remains a program with O(1) variables and constraints. 7 Runtime Proof We prove that CLIPPEDVORONOI and ADDVERTEX are fast in two parts. First, we present a basic geometric fact about empty balls in partially-constructed meshes. This then implies that the certificate region intersects a bounded number of quadtree squares. From there it is an easy corollary to show that CLIPPEDVORONOI and ADDVERTEX run in constant time. 7.1 Points in an empty ball have large lfs We first show that empty balls do not contain points with small local feature size. We adapt a prior argument that assumed the entire mesh was well-spaced [HMP06, technical report, pp ]. In the present version, we only require that vertices with small nearest neighbour distance are well-spaced, so that our result will apply in the intermediate stages of a bottom-up algorithm. For clarity, we define a local mesh size function induced by the set of vertices the algorithm has output so far (including all of the input points). We say that lms M (p) is the distance from p to the second-nearest vertex of the partial mesh M. This differs from the local feature size lfs(p) in Figure 7: Setup for the proofs of Section 7.1. that the local feature size only considers input points, not output vertices. In particular, lfs(p) lms M (p). Theorem 6 Given a mesh M and an empty ball of radius r, assume every vertex u in M with NN(u) γr is ρ-well-spaced. Then there is a constant ɛ that depends only on γ and ρ such that at any point p in the empty ball, lms M (p) ɛr. Proof: If p is at distance at least ɛr from all vertices, we are done. Otherwise, we have the situation in Figure 7. Let c be the center of the empty ball in question. We identify two points on the ray from c to p: q is at distance r/2 from the center, and b is on the boundary. Finally, u is the vertex nearest q: that is, q is in the Voronoi cell of u. Lemma 7 will show that NN(u) ηr for some constant η. This then implies Lemma 8: for appropriate ɛ, which happens to be less than η/2, u is also the vertex nearest p. The distance from any point in the Voronoi cell of u to a second vertex is minimized at the point x equidistant between u and its nearest neighbour; there, lms M (x) = NN(u)/2. Therefore, lms M (p) η 2 r > ɛr. Lemma 7 The vertex nearest u is at distance NN(u) ηr, where η = min(γ, 1 2ρ ). 9
10 Proof: If NN(u) γr, we are done. Otherwise, we know that u is well-spaced: NN(u) R(u)/ρ. At the same time, we know that R(u) qu since q is in the Voronoi cell; and that qu r/2 because u is outside the empty ball. Lemma 8 If there is some vertex within ɛr of p, then u, the nearest vertex to q, is also the nearest vertex to p. Proof: We know there is a vertex u within distance ɛr of p, and we know that pq r/2. By the triangle inequality, qu (1/2 + ɛ)r. Then u lies somewhere within the ball centered at q, of radius (1/2 + ɛ)r, since u is nearer to q than is u. We also know that u must be outside the ball centered at c, of radius r. These two constraints define a crescent, shown shaded in Figure 7. Consider the plane that goes through c, b, and u. Said plane also contains q since c, b, and q are collinear. We can conformally transform the plane so that c is the origin, q = 0.5, 0, b = 1, 0, and u = x, y. Under this transformation, r = 1. The farthest u can be while still lying in the crescent is the point of the crescent where cu = 1 and qu = 1/2 + ɛ. We rewrite the first equality as x 2 + y 2 = 1, while the second gives us that x = 1 ɛ ɛ 2. Then we can conclude that bu 2 2 2x = 2(ɛ + ɛ 2 ). Recall from the prior lemma that the nearest neighbour of u is at distance η; therefore, every point at distance η/2 from u is within the Voronoi cell of u. Solving for bu = η/2 we see that by setting ɛ = η2 1/2, we ensure that b lies in the Voronoi cell of u. Since both b and q lie in the same convex set, p also lies in it. 7.2 Queries and updates are fast Lemma 9 Assume we are given a size-conforming mesh M, a value r with the guarantee that every vertex u in M with NN(u) γr is ρ-well-spaced, and a quadtree that satisfies condition (B). Then the certificate region of any vertex v with NN(v) r intersects O(1) leaf squares of the quadtree. Proof: At any x in the certificate region, there is an empty ball containing x that has diameter at least NN(v). Therefore, Theorem 6 shows that lfs(x) Ω(NN(v)). Any quadtree square that intersects the query region necessarily includes at least one such x, which, conjoined with condition (B) on the quadtree, implies that the squares each have side length in Ω(NN(v)). Finally, a volume packing argument applies: within a ball of volume (2β NN(v)) d, every visited quadtree square consumes at least Ω(NN(v)) d volume. Theorem 10 When a bottom-up mesh refinement algorithm calls ADDVERTEX or CLIPPEDVORONOI, our data structure responds in constant time. Proof: In ADDVERTEX(p, v), if p lies within the β-clipped Voronoi cell of v, then every square visited by the call intersects the certificate region. Upon finding the destination square, ADDVERTEX simply appends to a list. Thus ADDVERTEX does constant work. When the CLIPPEDVORONOI algorithm visits a quadtree square, that square either intersects the certificate region, or is a neighbour of a square that intersects the certificate region. Thanks to the guarantee that squares have a bounded number 10
11 of neighbours, the latter outnumber the former by at most a constant factor. Thus CLIPPEDVORONOI visits only O(1) squares. The function also does work iterating over the vertices each square contains. By the mesh spacing requirement, a mesh vertex v has a nearest neighbour no closer than Ω(lfs(x)); meanwhile, the quadtree square that contains v has sides of length O(lfs(v)). Therefore, each square only hosts O(1) mesh vertices, and the total work is O(1). 8 Higher-dimensional input features In the present work, we showed how to support a class of mesh refinement algorithms with a search structure that could find appropriate new Steiner points in constant time, assuming the input is a point cloud. Typically, engineers and graphic artists will want the mesh to respect more than just a point cloud: it should respect some meaningful segments and polygons, and perhaps also curves and curved surfaces. Of course, the client application could simply specify a denser packing of points on the surfaces, but ideally the meshing algorithm could handle the features directly. Nothing fundamental blocks the extension of our structure to handle the case of higher-dimensional features (even curved, and with small input angles), although we would need need to enrich the interface our data structure presents. References [BEG94] Marshall Bern, David Eppstein, and John R. Gilbert. Provably good mesh generation. J. Computer and System Sciences, 48(3): , [BET99] [CD03] Marshall Bern, David Eppstein, and Shang-Hua Teng. Parallel construction of quadtrees and quality triangulations. IJCGA, 9(6): , Siu-Wing Cheng and Tamal K. Dey. Quality meshing with weighted delaunay refinement. SIAM J. Comput., 33(1):69 93, [HMP06] Benoît Hudson, Gary L. Miller, and Todd Phillips. Sparse Voronoi Refinement. In IMR, pages , See also CMU Tech. Report CMU- CS [HPÜ05] Sariel Har-Peled and Alper Üngör. A time-optimal Delaunay refinement algorithm in two dimensions. In SoCG, pages , [MV00] [Rup95] Scott A. Mitchell and Stephen A. Vavasis. Quality mesh generation in higher dimensions. SIAM J. Computing, 29(4): , Jim Ruppert. A Delaunay refinement algorithm for quality 2-dimensional mesh generation. J. Algorithms, 18(3): , [She98] Jonathan Richard Shewchuk. Tetrahedral Mesh Generation by Delaunay Refinement. In SoCG, pages 86 95,
Dynamic Mesh Refinement
Dynamic Mesh Refinement Benoît Hudson Joint work with Umut A. Acar, Gary Miller, Todd Phillips Why Mesh? Geometry is continuous Computers are discrete Graphics Scientific Computing Vision, AI,... Mesh
More informationLinear-Time Surface Reconstruction
Linear-Time Surface Reconstruction Benoît Hudson Toyota Technological Institute at Chicago bhudson@tti-c.org July 6, 2009 Abstract By now it is moderately well understood how to take as input a set of
More informationKinetic Mesh Refinement in 2D
Kinetic Mesh Refinement in D Umut A. Acar Max Planck Institute for Software Systems Germany umut@mpi-sws.org Benoît Hudson Autodesk, Inc. Montréal, QC, Canada benoit.hudson@autodesk.com Duru Türkoğlu Dept.
More informationSafe Steiner Points for Delaunay Refinement
Safe Steiner Points for Delaunay Refinement Benoît Hudson 1 Toyota Technological Institute at Chicago bhudson@tti-c.org Summary. In mesh refinement for scientific computing or graphics, the input is a
More informationA Time-Optimal Delaunay Refinement Algorithm in Two Dimensions
A Time-Optimal Delaunay Refinement Algorithm in Two Dimensions Sariel Har-Peled Alper Üngör January 4, 2005 Abstract We propose a new refinement algorithm to generate size-optimal quality-guaranteed Delaunay
More informationCollars and Intestines: Practical Conforming Delaunay Refinement
Collars and Intestines: Practical Conforming Delaunay Refinement Alexander Rand and Noel Walkington Carnegie Mellon University Summary. While several existing Delaunay refinement algorithms allow acute
More informationChapter 8. Voronoi Diagrams. 8.1 Post Oce Problem
Chapter 8 Voronoi Diagrams 8.1 Post Oce Problem Suppose there are n post oces p 1,... p n in a city. Someone who is located at a position q within the city would like to know which post oce is closest
More informationDelaunay Triangulations
Delaunay Triangulations (slides mostly by Glenn Eguchi) Motivation: Terrains Set of data points A R 2 Height ƒ(p) defined at each point p in A How can we most naturally approximate height of points not
More informationEXTREME POINTS AND AFFINE EQUIVALENCE
EXTREME POINTS AND AFFINE EQUIVALENCE The purpose of this note is to use the notions of extreme points and affine transformations which are studied in the file affine-convex.pdf to prove that certain standard
More informationGENERALIZED INSERTION REGION GUIDES FOR DELAUNAY MESH REFINEMENT
GENERALIZED INSERTION REGION GUIDES FOR DELAUNAY MESH REFINEMENT ANDREY N. CHERNIKOV AND NIKOS P. CHRISOCHOIDES Abstract. Mesh generation by Delaunay refinement is a widely used technique for constructing
More informationLecture notes on the simplex method September We will present an algorithm to solve linear programs of the form. maximize.
Cornell University, Fall 2017 CS 6820: Algorithms Lecture notes on the simplex method September 2017 1 The Simplex Method We will present an algorithm to solve linear programs of the form maximize subject
More informationComputational Geometry
Lecture 12: Lecture 12: Motivation: Terrains by interpolation To build a model of the terrain surface, we can start with a number of sample points where we know the height. Lecture 12: Motivation: Terrains
More informationSimplicial Complexes: Second Lecture
Simplicial Complexes: Second Lecture 4 Nov, 2010 1 Overview Today we have two main goals: Prove that every continuous map between triangulable spaces can be approximated by a simplicial map. To do this,
More informationDynamic Mesh Refinement with Quad Trees and Off-Centers
Dynamic Mesh Refinement with Quad Trees and Off-Centers Umut A. Acar April 20, 2007 CMU-CS-07-121 Benoît Hudson School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 Abstract Many
More informationAn Analysis of Shewchuk s Delaunay Refinement Algorithm
An Analysis of Shewchuk s Delaunay Refinement Algorithm Hang Si Weierstrass Institute for Applied Analysis and Stochastics (WIAS), Berlin si@wias-berlin.de Summary. Shewchuk s Delaunay refinement algorithm
More informationSimplicial Hyperbolic Surfaces
Simplicial Hyperbolic Surfaces Talk by Ken Bromberg August 21, 2007 1-Lipschitz Surfaces- In this lecture we will discuss geometrically meaningful ways of mapping a surface S into a hyperbolic manifold
More information1. Meshes. D7013E Lecture 14
D7013E Lecture 14 Quadtrees Mesh Generation 1. Meshes Input: Components in the form of disjoint polygonal objects Integer coordinates, 0, 45, 90, or 135 angles Output: A triangular mesh Conforming: A triangle
More informationLecture 3: Art Gallery Problems and Polygon Triangulation
EECS 396/496: Computational Geometry Fall 2017 Lecture 3: Art Gallery Problems and Polygon Triangulation Lecturer: Huck Bennett In this lecture, we study the problem of guarding an art gallery (specified
More informationMesh Generation through Delaunay Refinement
Mesh Generation through Delaunay Refinement 3D Meshes Mariette Yvinec MPRI 2009-2010, C2-14-1, Lecture 4b ENSL Winter School, january 2010 Input : C : a 2D PLC in R 3 (piecewise linear complex) Ω : a bounded
More informationG 6i try. On the Number of Minimal 1-Steiner Trees* Discrete Comput Geom 12:29-34 (1994)
Discrete Comput Geom 12:29-34 (1994) G 6i try 9 1994 Springer-Verlag New York Inc. On the Number of Minimal 1-Steiner Trees* B. Aronov, 1 M. Bern, 2 and D. Eppstein 3 Computer Science Department, Polytechnic
More informationLifting Transform, Voronoi, Delaunay, Convex Hulls
Lifting Transform, Voronoi, Delaunay, Convex Hulls Subhash Suri Department of Computer Science University of California Santa Barbara, CA 93106 1 Lifting Transform (A combination of Pless notes and my
More informationMöbius Transformations in Scientific Computing. David Eppstein
Möbius Transformations in Scientific Computing David Eppstein Univ. of California, Irvine School of Information and Computer Science (including joint work with Marshall Bern from WADS 01 and SODA 03) Outline
More information3. Voronoi Diagrams. 3.1 Definitions & Basic Properties. Examples :
3. Voronoi Diagrams Examples : 1. Fire Observation Towers Imagine a vast forest containing a number of fire observation towers. Each ranger is responsible for extinguishing any fire closer to her tower
More information26 The closest pair problem
The closest pair problem 1 26 The closest pair problem Sweep algorithms solve many kinds of proximity problems efficiently. We present a simple sweep that solves the two-dimensional closest pair problem
More informationSVR: Practical Engineering of a Fast 3D Meshing Algorithm
SVR: Practical Engineering of a Fast 3D Meshing Algorithm Umut A. Acar 1, Benoît Hudson 2, Gary L. Miller 2, and Todd Phillips 2 1 Toyota Technological Institute 2 Carnegie Mellon University Summary. The
More informationVoronoi Diagram. Xiao-Ming Fu
Voronoi Diagram Xiao-Ming Fu Outlines Introduction Post Office Problem Voronoi Diagram Duality: Delaunay triangulation Centroidal Voronoi tessellations (CVT) Definition Applications Algorithms Outlines
More informationLecture 16: Voronoi Diagrams and Fortune s Algorithm
contains q changes as a result of the ith insertion. Let P i denote this probability (where the probability is taken over random insertion orders, irrespective of the choice of q). Since q could fall through
More informationDelaunay Triangulations. Presented by Glenn Eguchi Computational Geometry October 11, 2001
Delaunay Triangulations Presented by Glenn Eguchi 6.838 Computational Geometry October 11, 2001 Motivation: Terrains Set of data points A R 2 Height ƒ(p) defined at each point p in A How can we most naturally
More informationQuadrilateral Meshing by Circle Packing
Quadrilateral Meshing by Circle Packing Marshall Bern 1 David Eppstein 2 Abstract We use circle-packing methods to generate quadrilateral meshes for polygonal domains, with guaranteed bounds both on the
More informationEstimating Geometry and Topology from Voronoi Diagrams
Estimating Geometry and Topology from Voronoi Diagrams Tamal K. Dey The Ohio State University Tamal Dey OSU Chicago 07 p.1/44 Voronoi diagrams Tamal Dey OSU Chicago 07 p.2/44 Voronoi diagrams Tamal Dey
More informationGENERALIZED INSERTION REGION GUIDES FOR DELAUNAY MESH REFINEMENT
SIAM J. SCI. COMPUT. Vol. 34, No. 3, pp. A1333 A1350 c 2012 Society for Industrial and Applied Mathematics GENERALIZED INSERTION REGION GUIDES FOR DELAUNAY MESH REFINEMENT ANDREY N. CHERNIKOV AND NIKOS
More informationData Structures for Approximate Proximity and Range Searching
Data Structures for Approximate Proximity and Range Searching David M. Mount University of Maryland Joint work with: Sunil Arya (Hong Kong U. of Sci. and Tech) Charis Malamatos (Max Plank Inst.) 1 Introduction
More informationPolygon Triangulation
Polygon Triangulation Definition Simple Polygons 1. A polygon is the region of a plane bounded by a finite collection of line segments forming a simple closed curve. 2. Simple closed curve means a certain
More informationTreewidth and graph minors
Treewidth and graph minors Lectures 9 and 10, December 29, 2011, January 5, 2012 We shall touch upon the theory of Graph Minors by Robertson and Seymour. This theory gives a very general condition under
More informationVoronoi diagrams Delaunay Triangulations. Pierre Alliez Inria
Voronoi diagrams Delaunay Triangulations Pierre Alliez Inria Voronoi Diagram Voronoi Diagram Voronoi Diagram The collection of the non-empty Voronoi regions and their faces, together with their incidence
More informationImproved Bounds for Intersecting Triangles and Halving Planes
Improved Bounds for Intersecting Triangles and Halving Planes David Eppstein Department of Information and Computer Science University of California, Irvine, CA 92717 Tech. Report 91-60 July 15, 1991 Abstract
More informationDynamic Mesh Refinement
Dynamic Mesh Refinement Benoît Hudson CMU-CS-07-162 December 2007 School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 Thesis Committee: Gary L. Miller, Chair Anupam Gupta Daniel
More informationAn Optimal Algorithm for the Euclidean Bottleneck Full Steiner Tree Problem
An Optimal Algorithm for the Euclidean Bottleneck Full Steiner Tree Problem Ahmad Biniaz Anil Maheshwari Michiel Smid September 30, 2013 Abstract Let P and S be two disjoint sets of n and m points in the
More informationGeometric structures on manifolds
CHAPTER 3 Geometric structures on manifolds In this chapter, we give our first examples of hyperbolic manifolds, combining ideas from the previous two chapters. 3.1. Geometric structures 3.1.1. Introductory
More informationComputational Geometry
Computational Geometry 600.658 Convexity A set S is convex if for any two points p, q S the line segment pq S. S p S q Not convex Convex? Convexity A set S is convex if it is the intersection of (possibly
More information* (4.1) A more exact setting will be specified later. The side lengthsj are determined such that
D D Chapter 4 xtensions of the CUB MTOD e present several generalizations of the CUB MTOD In section 41 we analyze the query algorithm GOINGCUB The difference to the CUB MTOD occurs in the case when the
More informationOn Merging Straight Skeletons
On Merging Straight Skeletons Franz Aurenhammer 1 and Michael Steinkogler 2 1 Institute for Theoretical Computer Science, University of Technology, Graz, Austria auren@igi.tugraz.at 2 Institute for Theoretical
More informationAverage case analysis of dynamic geometric optimization
Average case analysis of dynamic geometric optimization David Eppstein Department of Information and Computer Science University of California, Irvine, CA 92717 May 19, 1995 Abstract We maintain the maximum
More informationTopological Inference via Meshing
Topological Inference via Meshing Benoit Hudson, Gary Miller, Steve Oudot and Don Sheehy SoCG 2010 Mesh Generation and Persistent Homology The Problem Input: Points in Euclidean space sampled from some
More informationAs a consequence of the operation, there are new incidences between edges and triangles that did not exist in K; see Figure II.9.
II.4 Surface Simplification 37 II.4 Surface Simplification In applications it is often necessary to simplify the data or its representation. One reason is measurement noise, which we would like to eliminate,
More informationCS 532: 3D Computer Vision 14 th Set of Notes
1 CS 532: 3D Computer Vision 14 th Set of Notes Instructor: Philippos Mordohai Webpage: www.cs.stevens.edu/~mordohai E-mail: Philippos.Mordohai@stevens.edu Office: Lieb 215 Lecture Outline Triangulating
More informationComputational Geometry. Algorithm Design (10) Computational Geometry. Convex Hull. Areas in Computational Geometry
Computational Geometry Algorithm Design (10) Computational Geometry Graduate School of Engineering Takashi Chikayama Algorithms formulated as geometry problems Broad application areas Computer Graphics,
More informationThe Farthest Point Delaunay Triangulation Minimizes Angles
The Farthest Point Delaunay Triangulation Minimizes Angles David Eppstein Department of Information and Computer Science UC Irvine, CA 92717 November 20, 1990 Abstract We show that the planar dual to the
More informationDAVID M. MOUNT Department of Computer Science and Institute for Advanced Computer Studies University of Maryland, College Park, MD 20742, USA
International Journal of Computational Geometry & Applications c World Scientific Publishing Company QUERY-SENSITIVE RAY SHOOTING JOSEPH S. B. MITCHELL Department of Applied Mathematics and Statistics
More information4 Linear Programming. Manufacturing with Molds
4 Linear Programming Manufacturing with Molds Most objects we see around us today from car bodies to plastic cups and cutlery are made using some form of automated manufacturing. Computers play an important
More informationFaster parameterized algorithms for Minimum Fill-In
Faster parameterized algorithms for Minimum Fill-In Hans L. Bodlaender Pinar Heggernes Yngve Villanger Technical Report UU-CS-2008-042 December 2008 Department of Information and Computing Sciences Utrecht
More information! Linear programming"! Duality "! Smallest enclosing disk"
! Linear programming"! Duality "! Smallest enclosing disk" 14. 24.! Define:" " i types of foods (1!i!d).! " j types of vitamins (1!j!n)." " x i the amount of food of type i." " a ji the amount of vitamin
More informationCS S Lecture February 13, 2017
CS 6301.008.18S Lecture February 13, 2017 Main topics are #Voronoi-diagrams, #Fortune. Quick Note about Planar Point Location Last week, I started giving a difficult analysis of the planar point location
More informationThree-Dimensional Delaunay Mesh Generation
Three-Dimensional Delaunay Mesh Generation Siu-Wing Cheng Sheung-Hung Poon February 20, 2004 Abstract We propose an algorithm to compute a conforming Delaunay mesh of a bounded domain specified by a piecewise
More information1 Proximity via Graph Spanners
CS273: Algorithms for Structure Handout # 11 and Motion in Biology Stanford University Tuesday, 4 May 2003 Lecture #11: 4 May 2004 Topics: Proximity via Graph Spanners Geometric Models of Molecules, I
More informationAcute Triangulations of Polygons
Europ. J. Combinatorics (2002) 23, 45 55 doi:10.1006/eujc.2001.0531 Available online at http://www.idealibrary.com on Acute Triangulations of Polygons H. MAEHARA We prove that every n-gon can be triangulated
More informationDynamic Mesh Refinement with Quad Trees and Off-Centers
Dynamic Mesh Refinement with Quad Trees and Off-Centers Umut A. Acar Toyota Technological Institute at Chicago umut@tti-c.org Benoît Hudson Carnegie Mellon University bhudson@cs.cmu.edu Abstract Many algorithms
More informationHigh-Dimensional Computational Geometry. Jingbo Shang University of Illinois at Urbana-Champaign Mar 5, 2018
High-Dimensional Computational Geometry Jingbo Shang University of Illinois at Urbana-Champaign Mar 5, 2018 Outline 3-D vector geometry High-D hyperplane intersections Convex hull & its extension to 3
More informationApproximating Polygonal Objects by Deformable Smooth Surfaces
Approximating Polygonal Objects by Deformable Smooth Surfaces Ho-lun Cheng and Tony Tan School of Computing, National University of Singapore hcheng,tantony@comp.nus.edu.sg Abstract. We propose a method
More informationMa/CS 6b Class 26: Art Galleries and Politicians
Ma/CS 6b Class 26: Art Galleries and Politicians By Adam Sheffer The Art Gallery Problem Problem. We wish to place security cameras at a gallery, such that they cover it completely. Every camera can cover
More informationImproved Results on Geometric Hitting Set Problems
Improved Results on Geometric Hitting Set Problems Nabil H. Mustafa nabil@lums.edu.pk Saurabh Ray saurabh@cs.uni-sb.de Abstract We consider the problem of computing minimum geometric hitting sets in which,
More informationTheorem 2.9: nearest addition algorithm
There are severe limits on our ability to compute near-optimal tours It is NP-complete to decide whether a given undirected =(,)has a Hamiltonian cycle An approximation algorithm for the TSP can be used
More informationAPPROXIMATING THE MAXMIN AND MINMAX AREA TRIANGULATIONS USING ANGULAR CONSTRAINTS. J. Mark Keil, Tzvetalin S. Vassilev
Serdica J. Computing 4 00, 3 334 APPROXIMATING THE MAXMIN AND MINMAX AREA TRIANGULATIONS USING ANGULAR CONSTRAINTS J. Mark Keil, Tzvetalin S. Vassilev Abstract. We consider sets of points in the two-dimensional
More information9 Bounds for the Knapsack Problem (March 6)
9 Bounds for the Knapsack Problem (March 6) In this lecture, I ll develop both upper and lower bounds in the linear decision tree model for the following version of the (NP-complete) Knapsack 1 problem:
More informationPreferred directions for resolving the non-uniqueness of Delaunay triangulations
Preferred directions for resolving the non-uniqueness of Delaunay triangulations Christopher Dyken and Michael S. Floater Abstract: This note proposes a simple rule to determine a unique triangulation
More informationWolfgang Mulzer Institut für Informatik. Planar Delaunay Triangulations and Proximity Structures
Wolfgang Mulzer Institut für Informatik Planar Delaunay Triangulations and Proximity Structures Proximity Structures Given: a set P of n points in the plane proximity structure: a structure that encodes
More informationPebble Sets in Convex Polygons
2 1 Pebble Sets in Convex Polygons Kevin Iga, Randall Maddox June 15, 2005 Abstract Lukács and András posed the problem of showing the existence of a set of n 2 points in the interior of a convex n-gon
More informationThe Cut Locus and the Jordan Curve Theorem
The Cut Locus and the Jordan Curve Theorem Rich Schwartz November 19, 2015 1 Introduction A Jordan curve is a subset of R 2 which is homeomorphic to the circle, S 1. The famous Jordan Curve Theorem says
More informationPartitions and Packings of Complete Geometric Graphs with Plane Spanning Double Stars and Paths
Partitions and Packings of Complete Geometric Graphs with Plane Spanning Double Stars and Paths Master Thesis Patrick Schnider July 25, 2015 Advisors: Prof. Dr. Emo Welzl, Manuel Wettstein Department of
More informationRigidity of ball-polyhedra via truncated Voronoi and Delaunay complexes
!000111! NNNiiinnnttthhh IIInnnttteeerrrnnnaaatttiiiooonnnaaalll SSSyyymmmpppooosssiiiuuummm ooonnn VVVooorrrooonnnoooiii DDDiiiaaagggrrraaammmsss iiinnn SSSccciiieeennnccceee aaannnddd EEEnnngggiiinnneeeeeerrriiinnnggg
More informationVoronoi Diagrams and Delaunay Triangulations. O Rourke, Chapter 5
Voronoi Diagrams and Delaunay Triangulations O Rourke, Chapter 5 Outline Preliminaries Properties and Applications Computing the Delaunay Triangulation Preliminaries Given a function f: R 2 R, the tangent
More informationCS133 Computational Geometry
CS133 Computational Geometry Voronoi Diagram Delaunay Triangulation 5/17/2018 1 Nearest Neighbor Problem Given a set of points P and a query point q, find the closest point p P to q p, r P, dist p, q dist(r,
More information11.1 Facility Location
CS787: Advanced Algorithms Scribe: Amanda Burton, Leah Kluegel Lecturer: Shuchi Chawla Topic: Facility Location ctd., Linear Programming Date: October 8, 2007 Today we conclude the discussion of local
More informationCMSC 754 Computational Geometry 1
CMSC 754 Computational Geometry 1 David M. Mount Department of Computer Science University of Maryland Fall 2005 1 Copyright, David M. Mount, 2005, Dept. of Computer Science, University of Maryland, College
More informationMidpoint Routing algorithms for Delaunay Triangulations
Midpoint Routing algorithms for Delaunay Triangulations Weisheng Si and Albert Y. Zomaya Centre for Distributed and High Performance Computing School of Information Technologies Prologue The practical
More informationInsertions and Deletions in Delaunay Triangulations using Guided Point Location. Kevin Buchin TU Eindhoven
Insertions and Deletions in Delaunay Triangulations using Guided Point Location Kevin Buchin TU Eindhoven Heraklion, 21.1.2013 Guide - Example Construct Delaunay triangulation of convex polygon in linear
More informationA Grid-Based Approximation Algorithm for the Minimum Weight Triangulation Problem
A Grid-Based Approximation Algorithm for the Minimum Weight Triangulation Problem arxiv:1706.03263v1 [cs.cg] 10 Jun 2017 Sharath Raghvendra, Mariëtte C. Wessels Abstract Given a set of n points on a plane,
More informationConnected Components of Underlying Graphs of Halving Lines
arxiv:1304.5658v1 [math.co] 20 Apr 2013 Connected Components of Underlying Graphs of Halving Lines Tanya Khovanova MIT November 5, 2018 Abstract Dai Yang MIT In this paper we discuss the connected components
More informationarxiv: v1 [cs.cg] 8 Jan 2018
Voronoi Diagrams for a Moderate-Sized Point-Set in a Simple Polygon Eunjin Oh Hee-Kap Ahn arxiv:1801.02292v1 [cs.cg] 8 Jan 2018 Abstract Given a set of sites in a simple polygon, a geodesic Voronoi diagram
More informationBasic Euclidean Geometry
hapter 1 asic Euclidean Geometry This chapter is not intended to be a complete survey of basic Euclidean Geometry, but rather a review for those who have previously taken a geometry course For a definitive
More informationarxiv:cs/ v1 [cs.cg] 19 Aug 1999
Quadrilateral Meshing by Circle Packing Marshall Bern David Eppstein arxiv:cs/9908016v1 [cs.cg] 19 Aug 1999 Abstract We use circle-packing methods to generate quadrilateral meshes for polygonal domains,
More information274 Curves on Surfaces, Lecture 5
274 Curves on Surfaces, Lecture 5 Dylan Thurston Notes by Qiaochu Yuan Fall 2012 5 Ideal polygons Previously we discussed three models of the hyperbolic plane: the Poincaré disk, the upper half-plane,
More informationConvex hulls of spheres and convex hulls of convex polytopes lying on parallel hyperplanes
Convex hulls of spheres and convex hulls of convex polytopes lying on parallel hyperplanes Menelaos I. Karavelas joint work with Eleni Tzanaki University of Crete & FO.R.T.H. OrbiCG/ Workshop on Computational
More informationA Time Efficient Delaunay Refinement Algorithm
A Time Efficient Delaunay Refinement Algorithm Gary L. Miller Abstract In this paper we present a Delaunay refinement algorithm for generating good aspect ratio and optimal size triangulations. This is
More informationOn a nested refinement of anisotropic tetrahedral grids under Hessian metrics
On a nested refinement of anisotropic tetrahedral grids under Hessian metrics Shangyou Zhang Abstract Anisotropic grids, having drastically different grid sizes in different directions, are efficient and
More informationArt Gallery, Triangulation, and Voronoi Regions
Art Gallery, Triangulation, and Voronoi Regions CS535 Fall 2016 Daniel G. Aliaga Department of Computer Science Purdue University [some slides based on Profs. Shmuel Wimer and Andy Mirzaian Topics Triangulation
More informationFaster parameterized algorithms for Minimum Fill-In
Faster parameterized algorithms for Minimum Fill-In Hans L. Bodlaender Pinar Heggernes Yngve Villanger Abstract We present two parameterized algorithms for the Minimum Fill-In problem, also known as Chordal
More information11. APPROXIMATION ALGORITHMS
11. APPROXIMATION ALGORITHMS load balancing center selection pricing method: vertex cover LP rounding: vertex cover generalized load balancing knapsack problem Lecture slides by Kevin Wayne Copyright 2005
More informationHigh Dimensional Indexing by Clustering
Yufei Tao ITEE University of Queensland Recall that, our discussion so far has assumed that the dimensionality d is moderately high, such that it can be regarded as a constant. This means that d should
More informationFly Cheaply: On the Minimum Fuel Consumption Problem
Fly Cheaply: On the Minimum Fuel Consumption Problem Timothy M. Chan Alon Efrat Sariel Har-Peled September 30, 1999 Abstract In planning a flight, stops at intermediate airports are sometimes necessary
More informationHow to Cover Most of a Point Set with a V-Shape of Minimum Width
How to Cover Most of a Point Set with a V-Shape of Minimum Width Boris Aronov aronov@poly.edu John Iacono jiacono@poly.edu Özgür Özkan ozgurozkan@gmail.com Mark Yagnatinsky myag@cis.poly.edu Polytechnic
More informationPlanar Graphs. 1 Graphs and maps. 1.1 Planarity and duality
Planar Graphs In the first half of this book, we consider mostly planar graphs and their geometric representations, mostly in the plane. We start with a survey of basic results on planar graphs. This chapter
More informationTiling Three-Dimensional Space with Simplices. Shankar Krishnan AT&T Labs - Research
Tiling Three-Dimensional Space with Simplices Shankar Krishnan AT&T Labs - Research What is a Tiling? Partition of an infinite space into pieces having a finite number of distinct shapes usually Euclidean
More informationWIRELESS sensor networks (WSNs) have attracted a. Homology-based Distributed Coverage Hole Detection in Wireless Sensor Networks
IEEE/ACM TRANSACTIONS ON NETWORKING 1 Homology-based Distributed Coverage Hole Detection in Wireless Sensor Networks Feng Yan, Member, IEEE, Anaïs Vergne, Philippe Martins, Senior Member, IEEE, Laurent
More informationCMSC 754 Computational Geometry 1
CMSC 754 Computational Geometry 1 David M. Mount Department of Computer Science University of Maryland Fall 2005 1 Copyright, David M. Mount, 2005, Dept. of Computer Science, University of Maryland, College
More informationThe Farey Tessellation
The Farey Tessellation Seminar: Geometric Structures on manifolds Mareike Pfeil supervised by Dr. Gye-Seon Lee 15.12.2015 Introduction In this paper, we are going to introduce the Farey tessellation. Since
More informationWhich n-venn diagrams can be drawn with convex k-gons?
Which n-venn diagrams can be drawn with convex k-gons? Jeremy Carroll Frank Ruskey Mark Weston Abstract We establish a new lower bound for the number of sides required for the component curves of simple
More informationLinear Programming- Manufacturing with
- 1395-2 1 / 36 Casting process 2 / 36 The of Casting top facet ordinary facet Every ordinary facet f has a corresponding facet in the mold, which we denote by ˆf. castable object top facet 3 / 36 The
More informationFinding a minimum-sum dipolar spanning tree in R 3
Finding a minimum-sum dipolar spanning tree in R 3 Steven Bitner and Ovidiu Daescu Department of Computer Science University of Texas at Dallas Richardson, TX 75080, USA Abstract In this paper we consider
More informationDelaunay refinement algorithms for triangular mesh generation
Computational Geometry 22 (2002) 21 74 www.elsevier.com/locate/comgeo Delaunay refinement algorithms for triangular mesh generation Jonathan Richard Shewchuk 1 Department of Electrical Engineering and
More information