Exact, Rounded or Perturbed: How Would You Like Your Arrangements? Dan Halperin School of Computer Science Tel Aviv University Heraklion, January 2013
Overview background exact rounded perturbed new ways challenges and open problems 2
Overview background exact rounded perturbed new ways challenges and open problems 3
Arrangements, 2D given a collection of curves on a surface, the arrangement is the partition of the surface into vertices , edges and faces induced by the curves
Arrangements in general an arrangement of a set S of geometric objects is the subdivision of space where the objects reside induced by S possibly non-linear objects (circles), bounded objects (segments), higher dimensions (planes, simplices) numerous applications in robotics, molecular biology,vision, graphics, CAD/CAM, statistics, GIS 5
Very brief history have been studied for decades - Matou š ek (2002) cites Steiner,1826; nowadays studied in combinatorial and computational geometry Edelsbrunner `87 arrgs of hyperplanes <piano movers─see next slide> Sharir & Agarwal `95: arrgs of curves and surfaces 6
From linear to curved: The piano movers series by Schwartz and Sharir looking at the arrgs of critical (constraint) surfaces that subdivide the configuration space into free vs. forbidden cells On the “piano movers” problem I. The case of a two - dimensional rigid polygonal body moving amidst polygonal barriers (`83) On the “piano movers” problem II. General techniques for computing topological properties of real algebraic manifolds (`82) … 7 [joe-ks.com]
Very brief history, cont’d (more subjective) in recent years, new emphasis on effective algorithms and implementation Boissonnat-Teillaud (Eds) `06: ECG for curves and surfaces Fogel et al `12: CGAL arrgs and their applications 8
Characteristic features constructive algorithms (as opposed to selective algorithms, e.g., CH) frequent use of non-linear objects 9
What do we talk about when we talk about representation of arrgs faithfulness/ format form precision topology/ combinatorics geometry/ numerics 10
Overview background exact rounded perturbed new ways challenges and open problems 11
Exact arrangements Pros the truth algorithms can be easily transcribed, up to the general position assumption (this is the CGAL approach) the only known general method to cope with the intricacies of geometric computing Cons later 12
CGAL arrangements package(s) constructs, maintains, modifies, traverses, queries, and presents two-dimensional subdivisions robust and exact all inputs (including degenerate) are handled exact number types are used to achieve exact results efficient generic [TAU, MPII] 13
Recent applications art gallery in practice x 2 [Braunschweig, Campinas] [Kroeller et al] molecular structure determination by NMR [Martin and Donald] nano-particle membrane permeation [Angelikopoulos et al] 14
Excursions to higher dimensions (>2) envelopes in 3D (2.5 dim) [Meyerovitch-H `06] arrgs of polyhedral surfaces in 3D [Shaul-H `02]: efficient decomposition, efficient sweep arrgs of surfaces in 3D [Berberich-Kerber- Sagraloff `09]: the piano movers technique revisited and implemented 15
Exact arrangements Pros the truth algorithms can be easily transcribed, up to the general position assumption (this is the CGAL approach) the only known general method to cope with the intricacies of geometric computing Cons requires special arithmetic need to determine and handle all degeneracies efficient algebraic machinery missing in higher dimensions (>2) efficient format unknown/unclear in higher dimensions (>3) exact numerical output may be huge, when at all possible 16
Users need: rounding (one more application of CGAL arrgs) Agilent: Electromagnetic field simulation [De Wielde] “Before switching to CGAL, Agilent used 6 different sweep line algorithms which used double-precision floating point coordinates. None of them operated correctly in all cases.” 17
Overview background exact rounded perturbed new ways challenges and open problems 18
Geometric rounding produce fixed precision geometric representation with topological and geometric guarantees is rounding essential? 19
Example: Arrgs of triangles w/ decomposition The coordinates (x,y,z) of every triangle corner are each represented with a 16-bit over 16-bit rational [http://object-e.blogspot.com/2009/11/sphere-packing-vs-sphere-growth.html] 20
21
22
Geometric rounding planar polygonal maps: Best practice Snap Rounding [Greene, unpublished manuscript], [Hobby 99] numerous variants and improved algorithms 23
Snap rounding (SR) arrgs of segments, I/O input: n segments and a grid of pixels such that the center points of the pixels have integer coordinates (the centers of pixels form the integer grid) reminder, the vertices of the arrangement: either segment endpoints (2n) or intersection of segments (I, at most θ (n 2 )); in this context a.k.a.: critical points we call the input segments ursegments output: an arrangement of segments where all the vertices are centers of grid pixels; details follow 24
Snap rounding arrgs of segments, definition a pixel containing an arrg vertex is a hot pixel 25
Snap rounding arrgs of segments, definition a pixel containing an arrg vertex is a hot pixel for each ursegment s construct its approximating polygonal chain s* by connecting the centers of the hot pixels that s crosses in the order of crossing 26
Snap rounding arrgs of segments, definition a pixel containing an arrg vertex is a hot pixel for each ursegment s construct its approximating polygonal chain s* by connecting the centers of the hot pixels that s crosses in the order of crossing 27
Properties of snap rounding fixed precision representation need to show: no new vertices are geometric proximity topological similarity [Guibas-Marimont `98]: transforming s into s* viewed as a continuous deformation process; features may collapse but a curve does not cross over a vertex 28
Geometric rounding Pros convenient numerical output may not need to determine all degeneracies (SR promotes degeneracies, but of a certain controllable type) Cons later 29
Beyond polygons in the plane Geodesics on the sphere [Kozorovitzky-H `10] Bezier in the plane [Eigenwillig-Kettner-Wolpert `06] line segments in 3-space polyhedral maps in 3-space [Fortune `99] (output precision depends on the input combinatorial size) 30
Geometric rounding Pros convenient numerical output may not need to determine all degeneracies (SR promotes degeneracies, but of a certain controllable type) Cons efficient consistent rounding (beyond planar polygons) is hard 31
Overview background exact rounded perturbed new ways challenges and open problems 32
Perturbing arrangements symbolic (infinitesimal) perturbation Simulation of Simplicity [Edelsbrunner and Mucke ‘ 90], Symbolic Treatment of Geometric Degeneracies [Yap ‘ 90], [Emiris-Canny- Seidel ‘ 97 ], … shearing and the like (e.g., the internal works of CGAL arrgs RIC point location) part of exact computing actual perturbation 33
Initial motivation: molecular modeling Pfizer project ~ 1995 exact computing for intersecting spheres inconceivable back then accurate molecular surfaces [H-Shelton `97] 34
Controlled perturbation, overview I you run your geometric-algorithm program with floating-point (fp) arithmetic every algorithm predicate has a guard predicate, which is also an fp-predicate when a guard detects a potential error in an algorithm predicate it fires, and some perturbation needs to be applied to the input before continuing if no guard fired throughout an entire execution of the algorithm, then the program has computed the desired output for the perturbed input [rigor] analysis and practice to minimize the perturbation magnitude with good running time [effectiveness] Terminology borrowed from Mehlhorn et al 35
Controlled perturbation, overview II a fixed precision approximation scheme resolution bound ε and perturbation bound δ (actual perturbation), small backward error degeneracy := potential degeneracy no degeneracy ⇒ no perturbation otherwise identify and remove all degeneracies predicates are accurately computed trade-off between perturbation magnitude and computation time 36
CP vs. Infinitesimal Perturbation (IP) IP requires exact arithmetic, whereas CP uses fixed precision (fp) arithmetic IP may require tailored post-processing, whereas in CP no post-processing is needed <add your favorite difference here> 37
Recommend
More recommend