CS 791 - Computational Geometry

K. Subramani LDCSEE, West Virginia University, Morgantown, WV ksmani@csee.wvu.edu

1 General Information

1. Meeting Times: Tu-Th, 4:10 pm − 5:25 pm

2. Location: 109, MRB

3. Contact Information: 749 ESB, ksmani@csee.wvu.edu

4. Office Hours: MT, 10:00-11:00

5. Textbook - [dBvKOS00] is the course text, although [Mul94] is strongly recommended for supplementary reading.

6. URL - http://www.csee.wvu.edu/˜ ksmani/courses/sp06/cg/cg.html

7. Assessment:

(a) Homeworks (3) - You will be handed a homework on February 16, due on February 28, a second homework on March 21, due on March 30 and a third homework on April 18, due on April 27. Each homework is worth 25% (for a total of 75%) of your grade.

(b) Presentation - You are required to present one research paper at the allottted time; the presentation will be worth 25% of your grade.

(c) A maximum of 5 bonus points will be awarded for class performance

8. Grade Boundaries (a) A: 75 and up

(b) B: 60 − 74

(c) C: 50 − 59

(d) D: 45 − 49

(e) F: 0 − 44

9. Grading policy - If you have any questions about the grading, you must contact the intructor within two days of your paper being returned.

10. Makeup Policy - If for some reason, you are unable to attend a test or an exam, please meet me at the earliest and I will set an alternate date.

11. Course Objectives - The objectives of this course are as follows:

(a) Introduce rigorous algorithmic analysis for problems in Computational Geometry.

(b) Discuss applications of Computational Geometry to graphical rendering.

(c) Introduce the notions of Voronoi diagrams and Delaunay Triangulations.

(d) Develop expected case analyses for linear programming problems in small dimensions.

12. Learning Outcomes - Upon successful completion of this course, students will be able to: (a) Analyze randomized algorithms for small domain problems.

(b) Use line-point duality to develop efficient algorithms.

(c) Apply geometric techniques to real-world problems in graphics.

(d) Solve linear programs geometrically.

2 Syllabus Sketch and Weekly Schedule

2.1 Randomized Algorithms

Quicksort, Randomized Quicksort, Expected Running Time Analyses, Quickselect, Randomized Quickselect, Expected Running Time Analyses, High Probability Bounds (2 Lectures).

2.2 Convex Hulls

Convexity definition, Convex Sets, Orientation, Simple Hull, Incremental Hull, Divide and Conquer approach, Jarvis’ March, Quickhull (2 Lectures).

2.3 Line Segment Intersection

Line Segment Intersection, The Doubly-Connected Edge List, Computing the Overlay of Two Subdivisions, Boolean Operations (2 Lectures).

2.4 Polygon Triangulation

Guarding and Triangulations, Partitioning a Polygon into Monotone Pieces, Triangulating a Monotone Polygon (2 Lectures).

2.5 Linear Programming

Half-Plane Intersection, Incremental Linear Programming, Randomized Linear Programming, Unbounded Linear Programs, The Smallest Enclosing Disk Problem (2 Lectures).

2.6 Orthogonal Range Searching

1-Dimensional Range Searching, Kd-Trees, Range Trees, Higher-Dimensional Range Trees, General Sets of Points, Fractional Cascading (2 Lectures).

2.7 Point Location

Point Location and Trapezoidal Maps, A Randomized Incremental Algorithm, Dealing with Degenerate Cases, A Tail Estimate (2 Lectures).

2.8 Voronoi Diagrams

Definition and Basic Properties, Computing the Voronoi Diagram (2 Lectures).

2.9 Arrangements and Duality

Duality, Arrangements of Lines, Efficient Angular Sweep, Computing the Discrepancy of a point set (2 Lectures).

2.10 Delaunay Triangulations

Triangulations of Planar Point Sets, The Delaunay Triangulation, Properties of the Delaunay Triangulation, A randomized incremental algorithm for computing the Delaunay Triangulation (3 Lectures).

2.11 More Geometric Data Structures

Interval Trees, Priority Search Trees, Segment Trees (2 Lectures).

2.12 Binary Space Partitions (Optional)

The Definition of BSP Trees, BSP Trees and the Painter’s Algorithm, Constructing a BSP Tree, The Size of BSP Trees in 3-Space (1 Lecture).

3 Auxiliary

3 Lectures will be devoted towards discussing the solutions of homeworks. The remaining lectures will be used for student presentations.

4 Social Justice Statement

West Virginia University is committed to social justice. I concur with that commitment and expect to foster a nurturing learning environement, based upon open communication, mutual respect and non-discrimination. Our University does not discriminate on the basis of race, sex, age, disability, veteran status, religon, sexual orientation, color or national origin. Any suggestions to further such a positive and open environment in this class will be appreciated and given serious consideration. If you are a person with a disability and anticipate needing any type of accommodation in order to participate in this class, please advise me of the same and make appropriate arrangments with Disability Services (293 − 6700).

If you feel that you are being treated inappropriately or unfairly in any way, please feel free to bring your concerns to my attention; rest assured that doing so will not prejudice the grading process. In return, I expect you to behave professionally and ethically.

References

[dBvKOS00] M. de Berg, M. van Kreveld, M. Overmars, and O. Schwarzkopf. Computational Geometry - Algorithms and Applications. Springer-Verlag, 2^{nd} edition, 2000.

[Mul94] Ketan Mulmuley. Computational Geometry: An Introduction through Randomized Algorithms. Prentice Hall, 1^{st} edition, 1994.