1 / 26

Algorithm Design and Analysis (ADA)

Algorithm Design and Analysis (ADA). 242-535 , Semester 1 2013-2014. Objective give a non-technical overview of Computational geometry, concentrating on its main application areas. 14. Introduction to Computational Geometry. Overview. What is Computational Geometry ?

meghan
Download Presentation

Algorithm Design and Analysis (ADA)

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. Algorithm Design and Analysis (ADA) 242-535, Semester 1 2013-2014 • Objective • give a non-technical overview of Computational geometry, concentrating on its main application areas 14. Introduction to Computational Geometry

  2. Overview • What is Computational Geometry? • Uses in Computer Graphics • Uses in Robotics • Uses in GIS • Uses in CAD/CAM • A Textbook

  3. 1. What is Computational Geometry? The systematic study of algorithms and data structures for geometric objects, with a focus on exact algorithms that are asymptotically fast.

  4. CG in Context Geometry Theoretical Computer Science Applied Math Computational Geometry Efficient GeometricAlgorithms Design Analyze Applied Computer Science Apply

  5. 2. Uses in Computer Graphics • Intersect geometric primitives (lines, polygons, polyhedra, etc.) • Determine primitives lying in a region. • Hidden surface removal – determine the visible part of a 3D scene while discard the occluded part from a view point. • Deal with moving objects and detect collisions.

  6. Point in Polygon Testing • Is point q inside simple polygon P? Naïve: O(n) per test CG: O(log n) q P n-gon

  7. Segment Intersection • Given n line segments in the plane, determine: • Does some pair intersect? (DETECT) • Compute all points of intersection (REPORT) Naïve: O(n2) CG: O(n log n) detect, O(k+n log n) report

  8. The 2-Box Cover Problem • Find “smallest” (tightest fitting) pair of bounding boxes • Motivation: • Best outer approximation • Bounding volume hierarchies

  9. Triangulation of Polygons

  10. Collision Detection

  11. 3. Uses in Robotics • Motion planning • Grasping • Parts orienting • Optimal placement

  12. Proximity Closest coffee shop in PSU? Delaunay triangulation Voronoi diagram

  13. A Voronoi Diagram • A Voronoi diagram is a way of dividing space into smaller regions. • A set of points (called seeds, sites, or "coffee shops") is specified beforehand and for each seed there will be a corresponding region consisting of all points closer to that seed than to any other. • The regions are called Voronoi cells. • Closely related to Delaunay triangulation

  14. Voronoi Diagrams in Nature Honeycomb Dragonfly wing Giraffe pigmentation Constrained soap bubbles

  15. Delaunay Triangulation • A Delaunay triangulation for a set points results in a series of triangles connecting those points. • A circle drawn through the three points in a triangle will contain no other points. Delaunay triangulation

  16. Path Planning How can a robot find a short route to the destination that avoids all obstacles? Robot

  17. Mobile Robotic Guard Watchman Route Problem

  18. How Many Cameras? Determine the smallest number of cameras needed to see all of a given area. viewable area for this camera 5 cameras are enough to see everywhere(what about 4 cameras? 3?)

  19. 4. Uses in GIS Storage of geographical data (contours of countries, height of mountains, course of rivers, population, roads, electricity lines, etc.) • Large amount of data – requiring efficient algorithms. • Geographic data storage (e.g., map of roads for car positioning or computer display). • Interpolation between nearby sample datapoints • Overlay of multiple maps.

  20. 5. Uses in CAD/CAM • Intersection, union, and decomposition of objects. • Testing on product specifications. • Testing design for feasibility. • Design for assembly – modeling and simulation of assembly.

  21. Bounding Volume Hierarchy BV-tree: Level 0

  22. BV-tree: Level 1

  23. BV-tree: Level 2

  24. BV-tree: Level 5

  25. BV-tree: Level 8

  26. 5. A Textbook • Computational Geometry in C • Joseph O’Rourke,Cambridge University Press, 2nd ed.,1998 http://cs.smith.edu/~orourke/books/compgeom.html

More Related