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 ?

## Algorithm Design and Analysis (ADA)

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