1 / 25

COMP290-72: Computational Geometry and Applications

COMP290-72: Computational Geometry and Applications. Tues/Thurs 2:00pm - 3:15pm (SN 325) Ming C. Lin lin@cs.unc.edu http://www.cs.unc.edu/~lin http://www.cs.unc.edu/~lin/290-72.html. Computational Geometry. The term first appeared in the 70’s

kbroussard
Download Presentation

COMP290-72: Computational Geometry and Applications

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. COMP290-72: Computational Geometry and Applications Tues/Thurs 2:00pm - 3:15pm (SN 325) Ming C. Lin lin@cs.unc.edu http://www.cs.unc.edu/~lin http://www.cs.unc.edu/~lin/290-72.html M. C. Lin

  2. Computational Geometry • The term first appeared in the 70’s • Originally referred to computational aspects of solid/geometric modeling • Later as the field of algorithm design and analysis of discrete geometry • Algorithmic bases for many scientific & engineering disciplines (GIS, astro-physics, robotics, CG, design, etc.) M. C. Lin

  3. Textbook & References • Computational Geometry: Algorithms and Applications (de Berg, van Kreveld, Overmars & Schwarzkofp), published by Springer Verlag 1997 Check out the book web site !!! • Handbook on Discrete and Computational Geometry • Applied Computational Geometry: Toward Geometric Engineering • Computational Geometry: An Introduction Through Randomized Algorithms • Robot Motion Planning • Algorithms in Combinatorial Geometry • Computational Geometry (An Introduction) M. C. Lin

  4. Goals • To get an appreciation of geometry • To understand considerations and tradeoffs in designing algorithms • To be able to read & analyze literature in computational geometry M. C. Lin

  5. Course Overview Introduction to computational geometry and its applications in • Computer Graphics • Geometric Modeling • Robotics & Automation • Vision & Imaging • Scientific Computing • Geographic Information Systems M. C. Lin

  6. Applications in Computer Graphics • Visibility Culling • Global Illumination • Windowing & Clipping • Model Simplification • 3D Polyhedral Morphing • Collision Detection M. C. Lin

  7. Applications in Geometric Modeling • Boolean Operations • Surface Intersections • Finite Element Mesh Generation • Surface Fitting • Polyhedral Decomposition • Manufacturing & Tolerancing M. C. Lin

  8. Applications in Robotics • Motion Planning • with known environment • sensor-based/online • non-holonomic • others • Assembly Planning • Grasping & Reaching M. C. Lin

  9. Applications in Vision & Imaging • Shape/Template Matching • Pattern Matching • Structure from motions • Shape Representation (Core) • Motion Representation (KDS) M. C. Lin

  10. Other Applications • Computing overlays of mixed data • Finding the nearest “landmarks” • Point location in mega database • Finding unions of molecular surfaces • VLSI design layout M. C. Lin

  11. Topics List Geometric Data Structure, Algorithms, Implementation & Applications. Specifically • Proximity and Intersection • Voronoi Diagram & Delaunay Triangulation • Linear Programming in Lower Dimensions • Geometric Searching & Queries • Convex Hulls, Polytopes & Computations • Arrangements of Hyperplanes M. C. Lin

  12. Course Work & Grades • Homework: 30% (at least 3, mostly theoretical analysis) • Class Presentation: 20% (any topic related to the course) • Final Project: 50% (research oriented) • Active Class Participation: bonus M. C. Lin

  13. Class Presentation • By August 27, 1998 - Choose a presentation topic & inform instructor (Check out the tentative lecture schedule & topics!) • One week before the presentation - Submit a draft of presentation materials • One lecture before the presentation - Hand out copies of reading materials, if not available online via your web site • One day before the presentation - Post the presentation materials on the web (see the online instruction!!!) M. C. Lin

  14. Course Project • An improved implementation of a geometric algorithm • A synthesis of several techniques • In-depth analysis on a chosen subject (at least 25 state-of-the-art papers) Novel, research-oriented M. C. Lin

  15. Course Project Deadlines • September 30, 1998 - Meet to discuss ideas • October 13, 1998 - Project Proposal and Inform the Instructor your project web site • November 12, 1998 - Progress Update • December 11, 1998 - Final Project Demo & In-Class Presentation M. C. Lin

  16. Some Project Ideas • Improve the robustness of geometric operations on non-linear primitives • Develop path planning techniques for navigating in the virtual worlds • Investigate the use of various techniques (nearest neighbors, medial axis, etc.) to construct a hierarchy bottom-up efficiently • Design visibility & simplification algorithm for dynamic environments (considering kinetic data structures, hierarchical representation, etc.) And, more...... M. C. Lin

  17. Geometric Algorithms & Software • Geometry Center at University of Minnesota: a comprehensive collection of geometric software • CGAL: Computational Geometry Algorithms Library (C++) • LEDA: Library of Efficient Data types and Algorithms (C++) • The Stony Brook Algorithm Repository: Implementation in C, C++, Pascal and Fortran • CMU/Ansys & U. Aachen: Finite element mesh generation • University of Konstanz: VLSI routing problems • CMU: The Computer Vision Homepage • Rockerfeller University: Computational gene recognition • NRL: Machine learning resources M. C. Lin

  18. More Pointers • Jeff Erickson's Computational Geometry Page • David Eppstein's Geometry in Action • The Carleton Computational Geometry Resources Check them out!!! M. C. Lin

  19. Weekly Reading Assignment Chapters 1 and 2 (Textbook: CG - A&A) M. C. Lin

  20. Solving Geometric Problems • Thorough understanding of geometric properties of the problem • Proper application of algorithmic techniques and data structures M. C. Lin

  21. An Example: Convex Hull • A subset S of the plane is convex IFF for any pair of points p,q in S, the line seg(p,q) is completely contained in S. • The convex hull CH(S) of a set S is the smallest convex set that contains S. • CH(S) is the intersection of all convex sets that contain S. M. C. Lin

  22. Compute Convex Hulls • Input = set of points, S • Output = representation of CH(S) • a list of ordered (e.g. clockwise) points that are vertices of CH(S) M. C. Lin

  23. Slow Convex Hull, CH(P) 1. E <- 0 2. for all ordered pairs (p,q) in PxP with p#q 3. do valid <- true 4. for all points r in P not equal to p or q 5. do if r lies to the left of line(p,q) 6. Then valid <- false 7. If valid then add the directed edge(p,q) to E 8. From E, construct a list of vertices of CH(P) M. C. Lin

  24. Problems • Degeneracies • multiple points on a line • multiple points on a plane • etc. • Robustness • incorrect results (invalid geometry) due to numerical (e.g. truncation) errors • Performance • speed • storage M. C. Lin

  25. Improved Convex Hull • Incremental, divide & conquer, randomized and others (more later) • The convex hull of a set of points can be computed in O(n log n) time M. C. Lin

More Related