[Bowdoin Computer Science]

CS 3250: Computational Geometry

Spring 2016: T, Th 1:00 - 2:25 in Searles 126

Schedule

Computational geometry studies algorithms for geometric problems. These problems typically involve finite sets of points, line segments or polygons and use discrete and combinatorial geometry (as opposed to continuous geometry). This type of geometric problems arise in many areas, such as computer graphics, computer vision and image processing, robotics, and GIS.

For example, we might be given the location of post-offices on a map, and want to find the closest pair of post-offices. Or, we might want to find a triangulation of a set of surface samples that maximizes the minimum angle of a triangle ---- this type of meshing is often used in solid modeling, where small angles cause numerical instability. Or, we might be given two sets of segments, and want to find their intersections. These are some simple examples of geometric problems.

This class will cover basic computational geometry topics such as convex hulls, line segment intersection, guarding and art gallery, segment intersection, point location, Voronoi diagrams, Delaunay triangulations, as well as geometric data structures for geometrci searching, such as kd-trees, range trees, and interval trees.

Prerequisites: Data Structures (cs2100) and Algorithms (cs2200) (or permission of instructor). In other words:

Office hours: Mon, Tue, Thu 10-11.

For quick questions, you can drop by any time you see the door open. Or, send me an email to setup a (different) time; I'll do my best to accomodate you, but keep in mind my schedule can get pretty full.

Class mailing list: csci3250 at bowdoin.edu. Use it to ask questions. Since somebody else in the class might have the same question, using a mailing list is better for everyone.

Class webpage: http://www.bowdoin.edu/~ltoma/teaching/cs3250-CompGeom/spring16/. This class does not have a Blackboard website.

Tentative syllabus::

Textbooks:

Grading policy: The grade will be based on:

Naturally the assignments will not be equal in length/difficulty. The last assignment might consitute a project.