Course Projects
Projects may be submitted individually or as groups of two students.
Students may collaborate outside of their group, with anyone in or out of class (giving proper credit).
At the end of the semester, each group will submit a written project report and
give a short presentation. For individuals reports are to be around 5 to 10 pages and presentations around 8 to 12 minutes, and for groups of two the number of pages and time should be roughly 50% larger.
Project reports are due Friday, April 14. Project reports must be typed and submitted as pdfs.
Project presentations will be during the last 3 weeks of class. Presentations should give a brief overview of the project topic and results.
Project types
Projects can take on any number of forms. For example:
-
Theoretical:
Attempt to solve an interesting, non-trivial, and preferably open theoretical problem related to
computational geometry.
-
Experimental:
Implement and experimentally evaluate a few algorithms or data structures for one or more
closely related problems in computational geometry.
Projects of this type will preferably compare algorithms or data structures that have known
theoretical guarantees versus those used in practice in cases where they differ.
-
Scholarly:
Write a comprehensive survey on a topic relevant to computational geometry. Surveys should be a
bit longer than theoretical or experimental reports, and they should include a history of the
topic; a description of motivating applications; a summary of known results; sketches of the
most important algorithms, data structures, and/or proofs; suggestions for future research; and
a thorough bibliography.
-
Creative:
Do something else cool and relevant to computational geometry.
What is allowed for a project topic is fairly broad. The main requirement is that the topic should (at least loosely) relate to computational geometry. Project topics need not be limited to specific computational geometry topics covered in class.
You are strongly encouraged to work on projects motivated by your primary
professional development or research interests.
You should work on or study problems whose solutions you want to know but
don't.
Project proposals
Project proposals are due Friday March 10.
They should be submitted on eLearning as pdfs.
Proposals should be one to two pages in length, and they should include a crisp self-contained
statement of the proposed topic, a brief survey of known results, a
potential plan of attack, and, if theoretical, one or two half-baked ideas that probably won't work
but hey you might get lucky.
After everything is submitted, I will post submitted proposals to eLearning.
Students are encouraged to read one anothers proposals and contact each other if you wish to form groups.
You are not required to do a final project on what you proposed, but if you choose something
outside of the list of posted proposals, you must have me approve it first.
The goal
The ideal result of the project is the creation of a concrete product or
knowledge that can be used in your future career or perhaps a publishable paper.
It's understood, especially if you try for a theoretical project, that you may not find a complete
solution or answer all your questions.
Whatever the result, your writeup and presentation should describe partial results, promising
approaches for ongoing work, remaining questions you would like answered, and ideas that initially
looked promising but weren't (and why).
The main ideas behind the project format and language here are due to Jeff Erickson.
Jeff Erickson's project page
Project proposal topic examples from the past:
The following past projects are listed to help inspire and guide you in selecting a project. (The intent is not for you to copy these, though you are welcome to work on related topics.) The list is separated based on the main project category, though many projects involved multiple categories (e.g. they developed and implemented an algorithm and briefly surveyed previous literature).
Theory:
- Dynamic Network Voronoi Diagram with Weighted Edge Updates
- Summing volumes of figures with integer edges
- Investigation of "Tubes in Space" Problem from CCCG open problem session
- An Exploration of Constrained Centroidal Voronoi Tessellations for Fast Biological Modeling
- Determining Source Mixing Coefficients of Audio using Voronoi Diagrams
Experimental/Implementation:
- Comparison of 3D convex hulls algorithms
- Evaluation of Mesh Simplification Algorithms
- Visualization of Various Computational Geometry Algorithms
- Visualization of Voronoi Diagram using Fortune's Algorithm
- Inverse Kinematics: Traditional and Modern Approaches
- Parallel 2D Convex Hulls
- Geometric Algorithms in Machine Learning
Survey:
- Art gallery theorems and algorithms
- Algorithms for Visibility Computation on Terrains
- Skeletal and Action Representation
- Comparison of Point Location Algorithms
- Variations of Plane Sweep Algorithms
- Computing Shortest Essential Cycles in Undirected Surface Embedded Graphs
- Metric Learning
For students seeking more ideas for topics, in addition to the textbook and David Mount's notes, one can look at computational geometry conferences, such as CCCG and SOCG. In particular, CCCG posts a pdf from their open problem session each year (just google "open problem session CCCG"). These problems may be too hard for a course project, though they may help give you inspiration. Also remember if you work on an open problem you don't need to fully solve the problem, rather just detail your attempts and progress.
Please email me if you are having trouble finding a project topic.