CS 101.4: Algorithms in Geometry and Topology
Special Topics in Computer Science
2nd term, winter 2008-09
News!
As always, the latest news and updates are on Moodle.
Sample homework solution, use as a guide: PDF
Homework 2 assigned, due Tuesday, January 20: read and analyze Parallel Delaunay Refinement: Algorithms and Analyses
Lecture slides for lecture 2 on randomized incremental algorithm for convex hulls in 3D = Delaunay triangulations in 2D (1/13/2009): PDF
Parallel Delaunay Refinement: Algorithms and Analyses. Daniel Spielman, Shang-Hua Teng, and Alper Üngör. International Journal of Computational Geometry and Applications, vol. 17, no. 1, pages 1--30, 2007
Off-Centers: A new type of Steiner points for computing size-optimal quality-guaranteed Delaunay triangulations. Alper Ungor. Computational Geometry: Theory and Applications, vol. 42, no. 2, pp. 109--118, February 2009
Anisotropic Voronoi Diagrams and Guaranteed-Quality Anisotropic Mesh Generation. Francois Labelle and Jonathan Richard Shewchuk. Proceedings of the Symposium on Computational Geometry, pages 191--200, 2003: PDF
Anisotropic Diagrams: Labelle Shewchuk approach revisited. Jean-Daniel Boissonnat, Camille Wormser, and Mariette Yvinec. Manuscript, 2007: PDF
Lecture slides for lecture 1 on Delaunay triangulations and Voronoi diagrams (1/6/2009): PowerPoint | PDF
Slow transition to Moodle is under way.
Homework 1 assigned, due before class on January 15, see Moodle! Read and analyze Anisotropic Voronoi Diagrams
Course announcement flyer
Content
Mesh generation (2 weeks)
Surface reconstruction (3 weeks)
Surface smoothing, Mesh simplification (2 weeks)
Topological analysis and simplification (3 weeks)
Instructor Shripad Thite
Occasional guest lecturers: TBA
Organization
- course listed as CS 101B, Sec 4, under Peter Schroeder
- units: 3-0-6
- grades: pass/fail option encouraged
- meetings: TuTh 2:30-3:55pm, 287 Jorgensen
One in-class presentation per student in the whole course is required.
Students are required to consult the instructor and/or TA on the content and quality of their in-class presentations sufficiently in advance.
In-class lecture by instructor and in-class presentations by students will roughly alternate later in the term
- pre-requisites: knowledge of basic algorithmic techniques such as greedy and dynamic programming, asymptotic analysis (big-Oh notation), elementary Euclidean geometry in 2D and 3D; no prior knowledge of computational geometry or topology is required or assumed
Homework
In-class participation is essential!
- weekly homework:
Reading at least 2-3 assigned research papers and writing a critical analysis per week.
- extra credit:
I might periodically assign small problems for extra credit to test understanding of basic concepts. The solutions will all be due by the end of term, so there should not be any time pressure. I will use the extra credit grades to round up or down borderline grade assignment decisions.
- term homework:
- One in-class presentation on the corresponding week's assigned papers
- One course project, preferably in collaboration with other course participant(s), on a topic related to the course, chosen and conducted in consultation with the instructor. A typical project will focus on a theoretical research problem related to the course, culminating in a 10-20 page report surveying previous work and detailing a solution or attempts at a solution, including conjectures and promising directions for future research. The ideal successful course project will be publishable work.
Exams
There will be no exams.
Why you should take this course
The course is suitable for beginning graduate students and senior undergraduates. Students from Theoretical Computer Science and applied areas—Graphics, Applied Math, Physics, Engineering, Scientific Computing—who are interested in geometric algorithms will find the course especially useful, and might find a thesis research topic as an outcome of the course.
If you are interested in computational geometry and computational topology, you should take this course. If you are interested in algorithms and want to study algorithms for problems in computational geometry and topology, you should take this course. If you are a "consumer" of geometric algorithms, you should take this course to understand better how meshes and other geometric models are constructed and the inherent difficulties therein so that you can find work arounds or improve existing algorithms. If you are interested in accuracy and efficiency tradeoffs involved in any aspect of the geometry processing pipeline, you should take this course.
Last, but not the least, if you are interested in reading papers on and investigating problems of current research activity in a collaborative atmosphere, on the topics of this course, you should take this course.
Why I want to teach this course
My research is in algorithms, especially algorithms for problems in computational geometry and topology and their applications. During this course, I plan to introduce research problems of current interest after providing a quick but thorough survey of the basic algorithms and proof techniques that are necessary to attempt to solve these open problems. Thus, I would like to present a survey of computational geometry algorithms for the topics covered in this course. Further, I would like to encourage research collaborations with me and/or with other class participants on the open problems discussed in class.
To my knowledge, there is no other course at Caltech that provides an in-depth introduction to algorithms in computational geometry and topology as well as an introduction to approachable open problems in the field.
Finally, like any good teacher, I hope to learn a lot from the course participants, especially about problems that are most important in applications.
Weekly schedule and lesson plans
Subject to change! This schedule is ambitious and likely represents a superset of the topics we will cover in class. Topics that are not detailed in class can still be project topics.
Part 1. Mesh Generation
(2 weeks: Jan 6,8,13,15)
January 8: Guest lecture by Jeff Erickson (visiting Caltech Jan 7--10)
Voronoi diagrams in 2D and 3D, and applications
Discussion of general position / generic inputs
Duality
Delaunay triangulation
Empty circumball definition of Delaunay triangulation
Edge flips
Equivalence of Delaunay triangulation and convex hull one dimension higher
Two algorithms for Voronoi diagram / Delaunay triangulation: gift-wrapping algorithm for convex hulls, randomized incremental algorithm and its backward analysis
Delaunay triangulation as a "good-quality" mesh
Constrained Delaunay triangulation
Conforming Delaunay triangulation
Sliver tetrahedra in 3D Delaunay mesh: sliver exudation
Weighted Delaunay triangulation (a.k.a. "regular" triangulation)
Mesh quality improvement by Delaunay refinement: off-center insertion
Anisotropic Voronoi diagrams and their dual Delaunay triangulations
Worst-case and "nice" case complexity of Delaunay triangulations
Assigned reading:
- Complexity of the Delaunay triangulation of points on surfaces: the smooth case. Dominique Attali, Jean-Daniel Boissonnat, Andre Lieutier. Proc. 19th Symp. Computational Geometry (SoCG'03), pp. 201-210, 2003
- Nice point sets can have nasty Delaunay triangulations. Jeff Erickson. Discrete Computational Geometry 30(1):109--132, 2003
- Sliver exudation. S.-W. Cheng, T. K. Dey, H. Edelsbrunner, M. A. Facello and S.-H. Teng. J. ACM, Vol. 47, pp. 883-904, 2000
- What Is a Good Linear Finite Element? Interpolation, Conditioning, Anisotropy, and Quality Measures. Jonathan Shewchuk. Unpublished preprint, 2002
Possible student presentations:
- Sliver exudation. S.-W. Cheng, T. K. Dey, H. Edelsbrunner, M. A. Facello and S.-H. Teng. J. ACM, Vol. 47, pp. 883-904, 2000
- Anisotropic Voronoi Diagrams and Guaranteed-Quality Anisotropic Mesh Generation. Francois Labelle and Jonathan Richard Shewchuk. SoCG 2003
Possible homework exercises:
- Given a convex partition of the plane, consisting of n cells, determine in O(n) time whether it is a Voronoi partition.
- Prove that the Delaunay triangulation of points in the plane lexicographically maximizes the sorted sequence of angles in the triangulation.
Ancillary reading:
- Anisotropic Voronoi Diagrams and Guaranteed-Quality Anisotropic Mesh Generation. Francois Labelle and Jonathan Richard Shewchuk. SoCG 2003
- Anisotropic surface meshing. S.-W. Cheng, T. K. Dey and E. A. Ramos. Proc. ACM-SIAM Sympos. Discrete Algorithms, pp. 202-211, 2006
- Off-centers: A new type of Steiner points for computing size-optimal guaranteed-quality Delaunay triangulations. Alper Ungor. Proceedings of LATIN 2004, pp. 152-161
- Smoothed analysis of algorithms: Why the simplex algorithm usually takes polynomial time. Daniel Spielman and Shang-Hua Teng. JACM 51(3): 385–463, 2004
- Parallel Delaunay Refinement: Algorithms and Analyses. Dan Spielman, Shang-hua Teng, and Alper Ungor. arXiv:cs.CG/0207063 Accepted to appear in IJCGA, 2005
Open problems / Project topics:
- Off-center insertion in 3D
- Smoothed analysis of Delaunay triangulation/refinement algorithms:
Given a worst-case point set, if we add Gaussian noise with variance s2, what is the expected (smoothed) complexity of the perturbed points, as a function of s?
- Anisotropic Voronoi diagrams in 3D
- Parallel Delaunay refinement: improving parallel complexity of algorithm
- Given a planar triangulation of a convex domain, devise a "purely combinatorial" polynomial-time algorithm to determine whether it is the projection of the lower hull of a convex polytope one dimension higher.
Note: Last day for adding courses is January 23.
Part 2. Surface Reconstruction
(3 weeks: Jan 20,22,27,29; Feb 3,5)
Curve and surface reconstruction from point samples
CoCone, Powercrust algorithms: Delaunay-based reconstruction from a "nice" (sufficiently dense) sample
Homeomorphic surface reconstruction: Necessary and sufficient conditions for recovering the topology of the original surface
Medial axis
Local feature size
Difficulty of reconstructing surfaces with sharp edges or cone points
Estimating the dimensionality of the surface from point samples
Skeleton
Moving Least Squares reconstruction
Implicit surfaces
Triangulating implicit surfaces: marching cubes, isotopic surface reconstruction
Assigned reading:
- Triangulating topological spaces. Herbert Edelsbrunner and Nimish Shah. Internat. J. Comput. Geom. Appl. (IJCGA) 7, pp. 365-378, 1997
- A simple algorithm for homeomorphic surface reconstruction. N. Amenta, S. Choi, T. K. Dey and N. Leekha. Intl. Journal on Computational Geometry and Applications, vol. 12, pp. 125-141, 2002
- The power crust, unions of balls, and the medial axis transform. Nina Amenta, Sunghee Choi and Ravi Kolluri. Computational Geometry: Theory and Applications, 2001, 19:(2-3), pages 127-153
- Shape dimension and approximation from samples. T. K. Dey, J. Giesen, S. Goswami and W. Zhao. Discrete Comput. Geom., vol 29, pp. 419--434, 2003
- Provably Good Moving Least Squares. R. Kolluri. SODA'05, pp. 1008-1018
- An Adaptive MLS Surface for Reconstruction with Guarantees.
T. K. Dey and J. Sun. Symposium on Geometry Processing 2005, 43--52
Ancillary reading:
- Marching Cubes: A high resolution 3D surface reconstruction algorithm. W. E. Lorensen and H. E. Cline. SIGGRAPH’87, pp. 163–170.
- Isotopic Implicit Surface Meshing. Jean-Daniel Boissonnat, David Cohen-Steiner, and Gert Vegter. STOC’04, pp. 301–309.
Note: Midterm exam period is February 4--10. This course has no midterms.
Part 3. Smoothing and Mesh Simplification
(2 weeks: Feb 10,12,17,19)
Laplacian smoothing
Surface simplification using quadric error metrics
Variational surface approximation / simplification
Surface fairing
Assigned reading:
- Laplacian smoothing and Delaunay triangulations. David A Field. Communications in Applied Numerical Methods, Vol. 4, No. 6. (1988), pp. 709–712
- Surface Simplification Using Quadric Error Metrics. Michael Garland and Paul Heckbert. Proceedings SIGGRAPH 97
- Variational Shape Approximation. David Cohen-Steiner, Pierre Alliez, and Mathieu Desbrun. ACM Trans. of Graphics (SIGGRAPH '04)
- Fair Morse Functions for Extracting the Topological Structure of a Surface Mesh. Xinlai Ni, Michael Garland, John C. Hart. SIGGRAPH’04
Ancillary reading:
- Survey of Surface Simplification Algorithms.
Paul Heckbert and Michael Garland.
SIGGRAPH 97 course on Multiresolution Surface Modeling
- Simplifying Surfaces with Color and Texture using Quadric Error Metrics.
Michael Garland and Paul Heckbert.
IEEE Visualization 98
- Morse Theory for Implicit Surface Modeling. John C. Hart.
Mathematical Visualization, H-C Hege and K. Polthier, Eds., Springer-Verlag, Oct. 1998, pp. 257-268
- Implicit Fairing of Irregular Meshes using Diffusion and Curvature Flow. Mathieu Desbrun, Mark Meyer, Peter Schroeder, and Alan H. Barr. SIGGRAPH’99
- The Geometric Heat Equation and Surface Fairing. Andrew Willis. 2002
- A signal processing approach to fair surface design. G. Taubin. SIGGRAPH’95, pp. 351--358
- Geometric surface smoothing via anisotropic diffusion of normals. Tasdizen, T. Whitaker, R. Burchard, P. Osher, S. Visualization, 2002 (VIS’02), pp. 125–132
Possible homework exercises:
Analyze the running time and space complexity of Garland+Heckbert's quadric-based pair contraction simplification algorithm. Write pseudo-code to implement it. Pay particular attention to and describe in sufficient detail the abstract data structures needed to implement it.
Open problems / Project topics:
- Can we simplify and improve the variational approximation algorithm by Desbrun et al. to maintain a `dual' of the clustering which is a triangulation at all times, so that the last step of the algorithm of triangulating the proxies is trivial?
- Curve/surface simplification under the Frechet metric
Note: Last day for dropping courses, exercising pass/fail option is February 25.
Part 4. Topological Analysis and Simplification
(3 weeks: Feb 24,26; Mar 3,5,10,12)
Homotopy
Polygonal schema
Homology
Topological persistence
Assigned reading:
- Greedy Optimal Homotopy and Homology Generators. Jeff Erickson and Kim Whittlesey. Proceedings of the 16th Annual ACM-SIAM Symposium on Discrete Algorithms, 1038-1046, 2005
- Optimally cutting a surface into a disk. Jeff Erickson and Sariel Har-Peled. Discrete & Computational Geometry 31(1):37-59, 2004
- Computing Geometry-aware Handle and Tunnel Loops in 3D Models. T. K. Dey, K. Li, J. Sun, and D. Cohen-Steiner. SIGGRAPH 2008, 45:1–45:9
- Topological Persistence and Simplification. Herbert Edelsbrunner, David Letscher, and Afra Zomorodian. Discrete and Computational Geometry, 28:511–533, 2002
- Persistence Barcodes for Shapes. Gunnar Carlsson, Anne Collins, Leonidas J. Guibas, and Afra Zomorodian. International Journal of Shape Modeling, 2005.
Ancillary reading:
- Removing Excess Topology From Isosurfaces. Zoe Wood, Hugues Hoppe, Mathieu Desbrun and Peter Schroeder. ACM Trans. on Graphics, 23(2), pp. 190-203, April 2004
Possible student presentations:
- Coverage in sensor networks via persistent homology. V. de Silva, R. Ghrist. Algebraic and Geometric Topology, 7, pp. 339-358, 2007
- The Flow Complex: A Data Structure for Geometric Modeling. J. Giesen and M. John. Proceedings of the 14th Annual ACM-SIAM Symposium on Discrete Algorithms (SODA), (2003) 285-294.
- The union of balls and its dual shape. Herbert Edelsbrunner. Discrete Comput. Geom. 13 (1995), 415-440
- Alpha-Shapes and Flow Shapes are Homotopy Equivalent. T. K. Dey, J. Giesen and M. John. Proceedings of the 35th Annual ACM Symposium on Theory of Computing (STOC), (2003) 493-502
Open problems / Project topics:
Graph problems on graphs embedded on surfaces: NP-hardness, complexity on special graphs (bounded genus, bounded treewidth, sparse)
Note: Final exam period is March 16--18. This course has no finals.