Computational Geometry Lecture Notes1 HS 2012

Total Page:16

File Type:pdf, Size:1020Kb

Computational Geometry Lecture Notes1 HS 2012 Computational Geometry Lecture Notes1 HS 2012 Bernd Gärtner <[email protected]> Michael Hoffmann <[email protected]> Tuesday 15th January, 2013 1Some parts are based on material provided by Gabriel Nivasch and Emo Welzl. We also thank Tobias Christ, Anna Gundert, and May Szedlák for pointing out errors in preceding versions. Contents 1 Fundamentals 7 1.1 ModelsofComputation ............................ 7 1.2 BasicGeometricObjects. 8 2 Polygons 11 2.1 ClassesofPolygons............................... 11 2.2 PolygonTriangulation . 15 2.3 TheArtGalleryProblem ........................... 19 3 Convex Hull 23 3.1 Convexity.................................... 24 3.2 PlanarConvexHull .............................. 27 3.3 Trivialalgorithms ............................... 29 3.4 Jarvis’Wrap .................................. 29 3.5 GrahamScan(SuccessiveLocalRepair) . .... 31 3.6 LowerBound .................................. 33 3.7 Chan’sAlgorithm................................ 33 4 Line Sweep 37 4.1 IntervalIntersections . ... 38 4.2 SegmentIntersections . 38 4.3 Improvements.................................. 42 4.4 Algebraic degree of geometric primitives . ....... 42 4.5 Red-BlueIntersections . .. 45 5 Plane Graphs and the DCEL 51 5.1 TheEulerFormula............................... 52 5.2 TheDoubly-ConnectedEdgeList. .. 53 5.2.1 ManipulatingaDCEL . 54 5.2.2 GraphswithUnboundedEdges . 57 5.2.3 Remarks................................. 58 3 Contents CG 2012 6 Delaunay Triangulations 61 6.1 TheEmptyCircleProperty . 64 6.2 TheLawsonFlipalgorithm . 66 6.3 Termination of the Lawson Flip Algorithm: The Lifting Map ....... 67 6.4 CorrectnessoftheLawsonFlip Algorithm . ..... 68 6.5 TheDelaunayGraph.............................. 70 6.6 Every Delaunay Triangulation Maximizes the Smallest Angle ....... 72 6.7 ConstrainedTriangulations . ... 75 7 Delaunay Triangulation: Incremental Construction 79 7.1 Incrementalconstruction. ... 79 7.2 TheHistoryGraph............................... 82 7.3 Thestructuralchange ............................. 83 8 The Configuration Space Framework 85 8.1 The Delaunay triangulation — an abstract view. ...... 85 8.2 ConfigurationSpaces. .. .. .. .. .. .. ... .. .. .. .. .. .. .. 86 8.3 Expectedstructuralchange . .. 87 8.4 Bounding location costs by conflict counting. ....... 89 8.5 Expectednumberofconflicts . 90 9 Trapezoidal Maps 95 9.1 TheTrapezoidalMap ............................. 95 9.2 Applicationsoftrapezoidalmaps . .... 96 9.3 Incremental Construction of the Trapezoidal Map . ........ 96 9.4 Usingtrapezoidalmapsfor pointlocation . ...... 98 9.5 Analysis of the incremental construction . ....... 99 9.5.1 DefiningTheRightConfigurations . 99 9.5.2 UpdateCost .............................. 102 9.5.3 TheHistoryGraph. 103 9.5.4 Cost of the Find step..........................104 9.5.5 ApplyingtheGeneralBounds. 104 9.6 Analysisofthepointlocation . 106 9.7 Thetrapezoidalmapofasimplepolygon . 108 10 Voronoi Diagrams 115 10.1PostOfficeProblem .............................. 115 10.2VoronoiDiagram ................................ 116 10.3Duality ..................................... 119 10.4LiftingMap................................... 120 10.5 PointlocationinaVoronoiDiagram . 121 10.5.1 Kirkpatrick’sHierarchy . 122 4 CG 2012 Contents 11 Linear Programming 129 11.1 LinearSeparabilityofPointSets . .. .. 129 11.2 LinearProgramming . .. .. .. .. .. .. ... .. .. .. .. .. .. .. 130 11.3 Minimum-areaEnclosingAnnulus . 133 11.4 SolvingaLinearProgram . 135 12 A randomized Algorithm for Linear Programming 137 12.1Helly’sTheorem ................................ 138 12.2 Convexity,oncemore. 139 12.3TheAlgorithm ................................. 140 12.4 RuntimeAnalysis................................ 141 12.4.1 ViolationTests .. .. .. .. .. .. ... .. .. .. .. .. .. .. 142 12.4.2 BasisComputations . 143 12.4.3 TheOverallBound. 143 13 Line Arrangements 145 13.1Arrangements.................................. 146 13.2Construction .................................. 147 13.3ZoneTheorem ................................. 147 13.4 ThePowerofDuality ............................. 149 13.5 SortingallAngularSequences. 150 13.6 SegmentEndpointVisibilityGraphs . .. .. 151 13.7 HamSandwichTheorem. 153 13.83-Sum ......................................155 13.93-Sumhardness................................. 156 14 Davenport-Schinzel Sequences 161 14.1 Davenport-SchinzelSequences . .. .. 162 15 Epsilon Nets 167 15.1Motivation ................................... 167 15.2 Range spaces and ε-nets............................. 168 15.2.1 Examples ................................ 168 15.2.2 Nopointinalargerange. 169 15.2.3 Smallestenclosingballs. 170 15.3 Either almost all is needed or a constant suffices. ........ 170 15.4 What makes the difference: VC-dimension . .. .. 171 15.4.1 The size of projections for finite VC-dimension. ....... 172 15.5 VC-dimension of Geometric RangeSpaces . .. .. 174 15.5.1 Halfspaces. ............................... 174 15.5.2 Balls. .................................. 175 15.6 Small ε-Nets,anEasyWarm-upVersion . 176 15.6.1 Smallestenclosingballs,again . 177 5 Contents CG 2012 15.7 Even Smaller ε-Nets ..............................178 6 Chapter 1 Fundamentals 1.1 Models of Computation Real RAM Model. A memory cell stores a real number. Any single arithmetic operation or comparison can be computed in constant time. In addition, sometimes also roots, logarithms, other analytic functions, indirect addressing (integral), or floor and ceiling are used. This is a quite powerful (and somewhat unrealistic) model of computation, as a single real number in principle can encode an arbitrary amount of information. Therefore we have to ensure that we do not abuse the power of this model. Algebraic Computation Trees (Ben-Or [1]). A computation is regarded as a binary tree. ¯ The leaves contain the (possible) results of the compu- tation. a − b ¯ Every node v with one child has an operation of the form +, −, , /, √,... associated to it. The operands of ≤ 0 this operation∗ are constant input values, or among the ancestors of v in the tree. a − c b − c ¯ Every node v with two children has associated to it a branching of the form > 0, > 0, or = 0. The branch ≤ 0 ≤ 0 is with respect to the result of v’s parent node. If the expression yields true, the computation continues with a c b c the left child of v; otherwise, it continues with the right child of v. If every branch is based on a linear function in the input values, we face a linear computation tree. Analogously one can define, say, quadratic computation trees. The term decision tree is used if all of the results are either true or false. 7 Chapter 1. Fundamentals CG 2012 The complexity of a computation or decision tree is the maximum number of vertices along any root-to-leaf path. It is well known that Ω(n log n) comparisons are required to sort n numbers. But also for some problems that appear easier than sorting at first glance, the same lower bound holds. Consider, for instance, the following problem. Element Uniqueness Input: {x1,..., x } R, n N. n ⊂ ∈ Output: Is x = x , for some i, j {1,..., n} with i = j? i j ∈ 6 Ben-Or [1] has shown that any algebraic decision tree to solve Element Uniqueness for n elements has complexity Ω(n log n). 1.2 Basic Geometric Objects We will mostly be concerned with the d-dimensional Euclidean space Rd, for small d N; typically, d = 2 or d = 3. The basic objects of interest in Rd are the following. ∈ Points. A point p, typically described by its d Cartesian r = (7, 1) p = (−4, 0) coordinates p =(x1,..., xd). q = (2, −2) Directions. A vector v Sd−1 (the (d − 1)-dimensional ∈ unit sphere), typically described by its d Cartesian coor- d 2 dinates v =(x1,..., xd), with ||v|| = i=1 xi = 1. qP Lines. A line is a one-dimensional affine subspace. It can p be described by two distinct points p and q as the set of all points r that satisfy r = p + λ(q − p), for some λ R. q ∈ While any pair of distinct points defines a unique line, a line in R2 contains infinitely many points and so it may happen that a collection of three or more points lie on a line. Such a collection of points is termed collinear 1. Rays. If we remove a single point from a line and take the closure of one of the connected components, then we obtain a ray. It can be described by two distinct points p and q as the set of all points r that satisfy r = p+λ(q−p), q for some λ > 0. The orientation of a ray is the direction p (q − p)/ q − p . k k 1Not colinear, which refers to a notion in the theory of coalgebras. 8 CG 2012 1.2. Basic Geometric Objects Line segment. A line segment is the intersection of two collinear rays of opposite orientation. It can be described by two points p and q as the set of all points r that satisfy q r = p + λ(q − p), for some λ [0,1]. We will denote ∈ the line segment through p and q by pq. Depending p on the context we may allow or disallow degenerate line segments consisting of a single point only (p = q in the above equation). Hyperplanes. A hyperplane H is a (d−1)-dimensional affine subspace. It can be described algebraically by d + 1 coefficients λ1,..., λd+1 R, where (λ1,..., λd+1) = 1, as the ∈ k d k set of all points (x1,..., xd) that satisfy the linear equation H : i=1 λixi = λd+1. If the above equation is converted into an inequality, we obtain the algebraic descrip- tion of a halfspace (in R2: halfplane). P Spheres and balls. A sphere is the set of all points that are equidistant to a fixed point. It can be described by a point c (center) and a number ρ R (radius) as the set of all
Recommended publications
  • Sylvester-Gallai-Like Theorems for Polygons in the Plane
    RC25263 (W1201-047) January 24, 2012 Mathematics IBM Research Report Sylvester-Gallai-like Theorems for Polygons in the Plane Jonathan Lenchner IBM Research Division Thomas J. Watson Research Center P.O. Box 704 Yorktown Heights, NY 10598 Research Division Almaden - Austin - Beijing - Cambridge - Haifa - India - T. J. Watson - Tokyo - Zurich LIMITED DISTRIBUTION NOTICE: This report has been submitted for publication outside of IBM and will probably be copyrighted if accepted for publication. It has been issued as a Research Report for early dissemination of its contents. In view of the transfer of copyright to the outside publisher, its distribution outside of IBM prior to publication should be limited to peer communications and specific requests. After outside publication, requests should be filled only by reprints or legally obtained copies of the article (e.g. , payment of royalties). Copies may be requested from IBM T. J. Watson Research Center , P. O. Box 218, Yorktown Heights, NY 10598 USA (email: [email protected]). Some reports are available on the internet at http://domino.watson.ibm.com/library/CyberDig.nsf/home . Sylvester-Gallai-like Theorems for Polygons in the Plane Jonathan Lenchner¤ Abstract Given an arrangement of lines in the plane, an ordinary point is a point of intersection of precisely two of the lines. Motivated by a desire to understand the fine structure of ordinary points in line arrangements, we consider the following problem: given a polygon P in the plane and a family of lines passing into the interior of P, how many ordinary intersection points must there be on or inside of P? We answer this question for a variety of different types of polygons.
    [Show full text]
  • Simplex Algorithm
    CAP 4630 Artificial Intelligence Instructor: Sam Ganzfried [email protected] 1 HW2 • Due yesterday (10/18) at 2pm on Moodle • It is ok to work with one partner for homework 2. Must include document stating whom you worked with and describe extent of collaboration. This policy may be modified for future assignments. • Remember late day policy. – 5 total late days 2 Schedule • 10/12: Wrap-up logic (logical inference), start optimization (integer, linear optimization) • 10/17: Continue optimization (integer, linear optimization) • 10/19: Wrap up optimization (nonlinear optimization), go over homework 1 (and parts of homework 2 if all students have turned it in by start of class), midterm review • 10/24: Midterm • 10/26: Planning 3 Minesweeper • Minesweeper is NP-complete • http://simon.bailey.at/random/kaye.minesweeper.pdf 4 NP-completeness • Consider Sudoku, an example of a problem that is easy to verify, but whose answer may be difficult to compute. Given a partially filled-in Sudoku grid, of any size, is there at least one legal solution? A proposed solution is easily verified, and the time to check a solution grows slowly (polynomially) as the grid gets bigger. However, all known algorithms for finding solutions take, for difficult examples, time that grows exponentially as the grid gets bigger. So Sudoku is in NP (quickly checkable) but does not seem to be in P (quickly solvable). Thousands of other problems seem similar, fast to check but slow to solve. Researchers have shown that a fast solution to any one of these problems could be used to build a quick solution to all the others, a property called NP-completeness.
    [Show full text]
  • Stony Brook University
    SSStttooonnnyyy BBBrrrooooookkk UUUnnniiivvveeerrrsssiiitttyyy The official electronic file of this thesis or dissertation is maintained by the University Libraries on behalf of The Graduate School at Stony Brook University. ©©© AAAllllll RRRiiiggghhhtttsss RRReeessseeerrrvvveeeddd bbbyyy AAAuuuttthhhooorrr... Combinatorics and Complexity in Geometric Visibility Problems A Dissertation Presented by Justin G. Iwerks to The Graduate School in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy in Applied Mathematics and Statistics (Operations Research) Stony Brook University August 2012 Stony Brook University The Graduate School Justin G. Iwerks We, the dissertation committee for the above candidate for the Doctor of Philosophy degree, hereby recommend acceptance of this dissertation. Joseph S. B. Mitchell - Dissertation Advisor Professor, Department of Applied Mathematics and Statistics Esther M. Arkin - Chairperson of Defense Professor, Department of Applied Mathematics and Statistics Steven Skiena Distinguished Teaching Professor, Department of Computer Science Jie Gao - Outside Member Associate Professor, Department of Computer Science Charles Taber Interim Dean of the Graduate School ii Abstract of the Dissertation Combinatorics and Complexity in Geometric Visibility Problems by Justin G. Iwerks Doctor of Philosophy in Applied Mathematics and Statistics (Operations Research) Stony Brook University 2012 Geometric visibility is fundamental to computational geometry and its ap- plications in areas such as robotics, sensor networks, CAD, and motion plan- ning. We explore combinatorial and computational complexity problems aris- ing in a collection of settings that depend on various notions of visibility. We first consider a generalized version of the classical art gallery problem in which the input specifies the number of reflex vertices r and convex vertices c of the simple polygon (n = r + c).
    [Show full text]
  • Preprocessing Imprecise Points and Splitting Triangulations
    Preprocessing Imprecise Points and Splitting Triangulations Marc van Kreveld Maarten L¨offler Joseph S.B. Mitchell Technical Report UU-CS-2009-007 March 2009 Department of Information and Computing Sciences Utrecht University, Utrecht, The Netherlands www.cs.uu.nl ISSN: 0924-3275 Department of Information and Computing Sciences Utrecht University P.O. Box 80.089 3508 TB Utrecht The Netherlands Preprocessing Imprecise Points and Splitting Triangulations∗ Marc van Kreveld Maarten L¨offler Joseph S.B. Mitchell [email protected] [email protected] [email protected] Abstract Traditional algorithms in computational geometry assume that the input points are given precisely. In practice, data is usually imprecise, but information about the imprecision is often available. In this context, we investigate what the value of this information is. We show here how to preprocess a set of disjoint regions in the plane of total complexity n in O(n log n) time so that if one point per set is specified with precise coordinates, a triangulation of the points can be computed in linear time. In our solution, we solve another problem which we believe to be of independent interest. Given a triangulation with red and blue vertices, we show how to compute a triangulation of only the blue vertices in linear time. 1 Introduction Computational geometry deals with computing structure in 2-dimensional space (or higher). The most popular input is a set of points, on which something useful is then computed, for example, a triangulation. Algorithms for these tasks have been developed many years ago, and are provably fast and correct.
    [Show full text]
  • 5 PSEUDOLINE ARRANGEMENTS Stefan Felsner and Jacob E
    5 PSEUDOLINE ARRANGEMENTS Stefan Felsner and Jacob E. Goodman INTRODUCTION Pseudoline arrangements generalize in a natural way arrangements of straight lines, discarding the straightness aspect, but preserving their basic topological and com- binatorial properties. Elementary and intuitive in nature, at the same time, by the Folkman-Lawrence topological representation theorem (see Chapter 6), they provide a concrete geometric model for oriented matroids of rank 3. After their explicit description by Levi in the 1920’s, and the subsequent devel- opment of the theory by Ringel in the 1950’s, the major impetus was given in the 1970’s by Gr¨unbaum’s monograph Arrangements and Spreads, in which a number of results were collected and a great many problems and conjectures posed about arrangements of both lines and pseudolines. The connection with oriented ma- troids discovered several years later led to further work. The theory is by now very well developed, with many combinatorial and topological results and connections to other areas as for example algebraic combinatorics, as well as a large number of applications in computational geometry. In comparison to arrangements of lines arrangements of pseudolines have the advantage that they are more general and allow for a purely combinatorial treatment. Section 5.1 is devoted to the basic properties of pseudoline arrangements, and Section 5.2 to related structures, such as arrangements of straight lines, configura- tions (and generalized configurations) of points, and allowable sequences of permu- tations. (We do not discuss the connection with oriented matroids, however; that is included in Chapter 6.) In Section 5.3 we discuss the stretchability problem.
    [Show full text]
  • Chapter 12 Pseudotriangulations
    Chapter 12 Pseudotriangulations We have seen that arrangements and visibility graphs are useful and powerful models for motion planning. However, these structures can be rather large and thus expensive to build and to work with. Let us therefore consider a simpli ed problem: for a robot which is positioned in some environment of obstacles, which and where is the next obstacle that it would hit, if it continues to move linearly in some direction? This type of problem is known as a ray shooting query because we imagine to shoot a ray starting from the current position in a certain direction and want to know what is the rst object hit by this ray. If the robot is modeled as a point and the environment as a simple polygon, we arrive at the following problem. Problem 8 (Ray-shooting in a simple polygon.) Given a simple polygon P = (p1, . , pn), a point q 2 R2, and a ray r emanating from q, which is the rst edge of P hit by r? r q P Figure 12.1: An instance of the ray-shooting problem within a simple polygon. In the end, we would like to have a data structure to preprocess a given polygon such that a ray shooting query can be answered eciently for any query ray starting somewhere inside P. As a warmup, let us look at the case that P is a convex polygon. Here the problem is easy: Supposing we are given the vertices of P in an array-like structure, the boundary 103 Chapter 12.
    [Show full text]
  • Customized Book List Computer Science
    ABCD springer.com Springer Customized Book List Computer Science FRANKFURT BOOKFAIR 2007 springer.com/booksellers Computer Science 1 K. Aberer, Korea Advanced Institute of Science and Technolo- A. Abraham, Norwegian University of Science and Technology, gy, Korea; N. Noy, Stanford University, Stanford, CA, USA; D. Alle- Trondheim, Norway; Y. Dote, Muroran Institute of Technology, Transactions on Computational mang, TopQuadrant, CA, USA; K.-I. Lee, Saltlux Inc., Korea; L. Muroran, Japan Nixon, Free University Berlin, Germany; J. Goldbeck, University of Systems Biology VIII Maryland, MD, USA; P. Mika, Yahoo! Research Barcelona, Spain; D. Maynard, University of Sheffield, United Kingdom,; R. Mizoguchi, Engineering Hybrid Soft Computing Osaka University, Japan,; G. Schreiber, Free University Amster- dam, Netherlands,; P. Cudré-Mauroux, EPFL, Switzerland, (Eds.) Systems The LNCS journal Transactions on Computation- al Systems Biology is devoted to inter- and multi- disciplinary research in the fields of computer sci- The Semantic Web This book is focused on the latest technologies re- ence and life sciences and supports a paradigmat- 6th International Semantic Web Conference, 2nd Asian Se- lated to Hybrid Soft Computing targeting academia, ic shift in the techniques from computer and infor- mantic Web Conference, ISWC 2007 + ASWC 2007, Busan, Ko- scientists, researchers, and graduate students. mation science to cope with the new challenges aris- rea, November 11-15, 2007, Proceedings ing from the systems oriented point of view of bio- Features
    [Show full text]
  • How Do Exponential Size Solutions Arise in Semidefinite Programming?
    How do exponential size solutions arise in semidefinite programming? G´abor Pataki, Aleksandr Touzov ∗ June 30, 2021 Abstract Semidefinite programs (SDPs) are some of the most popular and broadly applicable optimiza- tion problems to emerge in the last thirty years. A curious pathology of SDPs, illustrated by a classical example of Khachiyan, is that their solutions may need exponential space to even write down. Exponential size solutions are the main obstacle to solve a long standing open problem: can we decide feasibility of SDPs in polynomial time? The consensus seems to be that large size solutions in SDPs are rare. Here we prove that they are actually quite common: a linear change of variables transforms every strictly feasible SDP into a Khachiyan type SDP, in which the leading variables are large. As to \how large", that depends on the singularity degree of a dual problem. Further, we present some SDPs in which large solutions appear naturally, without any change of variables. We also partially answer the question: how do we represent such large solutions in polynomial space? Key words: semidefinite programming; exponential size solutions; Khachiyan's example; facial reduction; singularity degree MSC 2010 subject classification: Primary: 90C22, 49N15; secondary: 52A40 OR/MS subject classification: Primary: convexity; secondary: programming-nonlinear-theory 1 Introduction Contents 1 Introduction 1 1.1 Notation and preliminaries..................................5 2 Main results and proofs6 2.1 Reformulating (P) and statement of Theorem1.......................6
    [Show full text]
  • The Symplectic Geometry of Polygons in Euclidean Space
    The Symplectic Geometry of Polygons in Euclidean Space Michael Kap ovich and John J Millson March Abstract We study the symplectic geometry of mo duli spaces M of p oly r gons with xed side lengths in Euclidean space We show that M r has a natural structure of a complex analytic space and is complex 2 n analytically isomorphic to the weighted quotient of S constructed by Deligne and Mostow We study the Hamiltonian ows on M ob r tained by b ending the p olygon along diagonals and show the group generated by such ows acts transitively on M We also relate these r ows to the twist ows of Goldman and JereyWeitsman Contents Intro duction Mo duli of p olygons and weighted quotients of conguration spaces of p oints on the sphere Bending ows and p olygons Actionangle co ordinates This research was partially supp orted by NSF grant DMS at University of Utah Kap ovich and NSF grant DMS the University of Maryland Millson The connection with gauge theory and the results of Gold man and JereyWeitsman Transitivity of b ending deformations Bending of quadrilaterals Deformations of ngons Intro duction Let P b e the space of all ngons with distinguished vertices in Euclidean n 3 space E An ngon P is determined by its vertices v v These vertices 1 n are joined in cyclic order by edges e e where e is the oriented line 1 n i segment from v to v Two p olygons P v v and Q w w i i+1 1 n 1 n are identied if and only if there exists an orientation preserving isometry g 3 of E which
    [Show full text]
  • Pseudotriangulations and the Expansion Polytope
    99 Pseudotriangulations G¨unter Rote Freie Universit¨atBerlin, Institut f¨urInformatik 2nd Winter School on Computational Geometry Tehran, March 2–6, 2010 Day 5 Literature: Pseudo-triangulations — a survey. G.Rote, F.Santos, I.Streinu, 2008 98 Outline 1. Motivation: ray shooting 2. Pseudotriangulations: definitions and properties 3. Rigidity, Laman graphs 4. Rigidity: kinematics of linkages 5. Liftings of pseudotriangulations to 3 dimensions 97 1. Motivation: Ray Shooting in a Simple Polygon 97 1. Motivation: Ray Shooting in a Simple Polygon Walking in a triangulation: Walk to starting point. Then walk along the ray. 97 1. Motivation: Ray Shooting in a Simple Polygon Walking in a triangulation: Walk to starting point. Then walk along the ray. O(n) steps in the worst case. 96 Triangulations of a convex polygon 1 12 2 11 3 10 4 9 5 8 6 7 96 Triangulations of a convex polygon 1 1 12 2 12 2 11 3 11 3 10 4 10 4 9 5 9 5 8 6 8 6 7 7 balanced triangulation A path crosses O(log n) triangles. 95 Triangulations of a simple polygon 1 5 2 12 1 12 2 3 11 10 11 4 3 6 8 10 4 9 7 9 5 balanced triangulation: balanced geodesic8 triangulation:6 An edge crosses O(log n) An edge crosses O7 (log n) triangles. pseudotriangles. [Chazelle, Edelsbrunner, Grigni, Guibas, Hershberger, Sharir, Snoeyink 1994] 95 Triangulations of a simple polygon 1 5 2 12 1 12 2 3 11 10 11 4 3 corner 6 8 pseudotriangle 10 4 tail 9 7 9 5 balanced triangulation: balanced geodesic8 triangulation:6 An edge crosses O(log n) An edge crosses O7 (log n) triangles.
    [Show full text]
  • Memory-Constrained Algorithms for Simple Polygons∗
    Memory-Constrained Algorithms for Simple Polygons∗ Tetsuo Asanoy Kevin Buchinz Maike Buchinz Matias Kormanx Wolfgang Mulzer{ G¨unter Rote{ Andr´eSchulzk November 17, 2018 Abstract A constant-work-space algorithm has read-only access to an input array and may use only O(1) additional words of O(log n) bits, where n is the input size. We show how to triangulate a plane straight-line graph with n vertices in O(n2) time and constant work- space. We also consider the problem of preprocessing a simple polygon P for shortest path queries, where P is given by the ordered sequence of its n vertices. For this, we relax the space constraint to allow s words of work-space. After quadratic preprocessing, the shortest path between any two points inside P can be found in O(n2=s) time. 1 Introduction In algorithm development and computer technology, we observe two opposing trends: on the one hand, there are vast amounts of computational resources at our fingertips. Alas, this often leads to bloated software that is written without regard to resources and efficiency. On the other hand, we see a proliferation of specialized tiny devices that have a limited supply of memory or power. Software that is oblivious to space resources is not suitable for such a setting. Moreover, even if a small device features a fairly large memory, it may still be preferable to limit the number of write operations. For one, writing to flash memory is slow and costly, and it also reduces the lifetime of the memory. Furthermore, if the input is stored on a removable medium, write-access may be limited for technical or security reasons.
    [Show full text]
  • 30 POLYGONS Joseph O’Rourke, Subhash Suri, and Csaba D
    30 POLYGONS Joseph O'Rourke, Subhash Suri, and Csaba D. T´oth INTRODUCTION Polygons are one of the fundamental building blocks in geometric modeling, and they are used to represent a wide variety of shapes and figures in computer graph- ics, vision, pattern recognition, robotics, and other computational fields. By a polygon we mean a region of the plane enclosed by a simple cycle of straight line segments; a simple cycle means that nonadjacent segments do not intersect and two adjacent segments intersect only at their common endpoint. This chapter de- scribes a collection of results on polygons with both combinatorial and algorithmic flavors. After classifying polygons in the opening section, Section 30.2 looks at sim- ple polygonizations, Section 30.3 covers polygon decomposition, and Section 30.4 polygon intersection. Sections 30.5 addresses polygon containment problems and Section 30.6 touches upon a few miscellaneous problems and results. 30.1 POLYGON CLASSIFICATION Polygons can be classified in several different ways depending on their domain of application. In chip-masking applications, for instance, the most commonly used polygons have their sides parallel to the coordinate axes. GLOSSARY Simple polygon: A closed region of the plane enclosed by a simple cycle of straight line segments. Convex polygon: The line segment joining any two points of the polygon lies within the polygon. Monotone polygon: Any line orthogonal to the direction of monotonicity inter- sects the polygon in a single connected piece. Star-shaped polygon: The entire polygon is visible from some point inside the polygon. Orthogonal polygon: A polygon with sides parallel to the (orthogonal) coordi- nate axes.
    [Show full text]