dan halperin school of computer science tel aviv
play

Dan Halperin School of Computer Science Tel Aviv University - PowerPoint PPT Presentation

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


  1. Exact, Rounded or Perturbed: How Would You Like Your Arrangements? Dan Halperin School of Computer Science Tel Aviv University Heraklion, January 2013

  2. Overview  background  exact  rounded  perturbed  new ways  challenges and open problems 2

  3. Overview  background  exact  rounded  perturbed  new ways  challenges and open problems 3

  4. 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

  5. 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

  6. 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

  7. 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]

  8. 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

  9. Characteristic features  constructive algorithms (as opposed to selective algorithms, e.g., CH)  frequent use of non-linear objects 9

  10. What do we talk about when we talk about representation of arrgs faithfulness/ format form precision topology/ combinatorics geometry/ numerics 10

  11. Overview  background  exact  rounded  perturbed  new ways  challenges and open problems 11

  12. 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

  13. 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

  14. 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

  15. 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

  16. 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

  17. 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

  18. Overview  background  exact  rounded  perturbed  new ways  challenges and open problems 18

  19. Geometric rounding  produce fixed precision geometric representation with topological and geometric guarantees  is rounding essential? 19

  20. 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. 21

  22. 22

  23. Geometric rounding planar polygonal maps: Best practice  Snap Rounding [Greene, unpublished manuscript], [Hobby 99]  numerous variants and improved algorithms 23

  24. 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

  25. Snap rounding arrgs of segments, definition  a pixel containing an arrg vertex is a hot pixel 25

  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 26

  27. 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

  28. 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

  29. 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

  30. 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

  31. 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

  32. Overview  background  exact  rounded  perturbed  new ways  challenges and open problems 32

  33. 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

  34. Initial motivation: molecular modeling  Pfizer project ~ 1995  exact computing for intersecting spheres inconceivable back then  accurate molecular surfaces [H-Shelton `97] 34

  35. 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

  36. 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

  37. 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