CS 235: COURSE SYLLABUS

Simple geometric objects such as points, lines, planes and spheres are the basic building blocks for modeling the complex shapes and phenomena of the real world. Despite their apparent simplicity, they raise challenging combinatorial and algorithmic problems that are fundamental to many applied fields, such as computer graphics, robotics, visualization, molecular biology, and databases. This course introduces the fundamental concepts and algorithmic techniques of computational geometry for dealing with these problems. The main topics covered in the course include the following:

  • Convex Hulls.
  • Triangulation.
  • Range Searching.
  • Shortest Paths.
  • Object Intersection.
  • Arrangements.
  • Proximity and Voronoi Diagram.
  • Delaunay Triangulation.
  • Point Location.


Organization and Prerequisite

This is a graduate level course, but advanced undergraduates are welcome. Students are expected to know the basic concepts of algorithm analysis (asymptotic notation, worst-case analysis) and data structures (linked lists, trees, priority queues). There will be 3-4 homework assignments, and a final project. The final project can be either theoretical (e.g. a survey paper) or applied (e.g. algorithm implementation or applying CG techniques to solve interdisciplinary problems). Click on the Project Ideas link to see some possibilities.

Time and Place

  • Instructor: Dr. Subhash Suri
  • Time: M-W 11:00-12:50
  • Room: Phelps 1401
  • Textbook: Computational Geometry, by de Berg, van Kreveld, Overmars, and Schwarzkopf.