CIS 677: Lectures
Related reading: Chapter 1 of the text.
- basic facts about convexity
- Jarvis march
- a sorting-based algorithm
- a randomized incremental algorithm and its analysis
- problems of degeneracy and robustness
Homework 1, due Sep. 29.
Comments on Homework 1.
- coordinate-wise dominance
- orthogonal range queries
- interval trees
- priority search trees
- segment trees
- filtering search
These topics, except filtering search, are covered in Chapters 5 and 10 of the text.
See also Mulmuley, section 8.1, for a discussion using skip lists instead
of balanced trees and tries.
On-line priority search tree demo
On-line 2D range tree demo
A collection of spatial
data structures
Filtering search is from:
- Chazelle, B. Filtering search: a new approach to query-answering.
SIAM J. Computing, pp. 703-724, Vol. 15, 1986.
- line segment intersection
- some approaches
- sweep algorithm
- planar graph facts
- a randomized incremental algorithm
- probability facts
- analysis
These topics are covered in Chapters 2 and 6 of the text.
A randomized incremental program for trapezoidal diagrams
Homework 2, due about October 13.
Comments on Homework 2.
- analysis of randomized incremental algorithm for trapezoidal diagrams, completed
- simple polygons
- using connectivity to speed up search
- converting trapezoidal diagrams to triangulations
- planar point location
- a tail estimate
- Kirkpatrick's algorithm
These topics are covered, in part, in Chapters 3 and 6 of the text.
- finishing up on planar point location
- Kirkpatrick's algorithm
- separator trees
- bucketing, subdivision traversal
- Voronoi diagrams and Delaunay triangulations
- basic facts
- edge flipping and angle optimality
- divide and conquer algorithm
- sweep algorithm
These topics are covered, in part, in Chapters 7 and 9 of the text.
The "separator tree" data structure for planar point location is
discussed in Edelsbrunner's book.
There are many Java applets that for visualizing Voronoi diagrams and
Delauanay triangulations;
this one or
that one
seem good.
Homework 3, due about November 3.
Comments on Homework 3.
- Voronoi diagrams and Delaunay triangulations
- edge flipping and angle optimality
- uses: interpolation, geometric graphs
- divide and conquer algorithm
- sweep algorithm
- beginning Convexity
- convex, affine, linear, conical combinations
These topics are covered, in part, in Chapters 7, 9, and 11 of the text.
Convexity is a very large topic by itself, covered well in:
Bronsted, A. An introduction to convex polytopes.
Ziegler, G. M. Lectures on Polytopes.
- Caratheodory's theorem
- polarity and duality
- the Farkas Lemma
- convex hulls and intersections of halfspaces
- faces and the face lattice
- faces and polarity
- convex hulls and intersections of halfspaces
- faces and the face lattice
- faces and polarity
- convex hulls, Delaunay triangulations, halfspace intersections, and Voronoi diagrams
- algorithms for convex hulls
- a randomized incremental algorithm
This applet
may help to clarify the relationship between convex hulls and Delaunay triangulations.
Homework 4, due about November 24.
Comments on Homework 2.
- Convex hulls
- finishing up analysis of randomized incremental algorithm
- handling degeneracy
- geometric optimization
- The minimum-ball problem
- algorithms
- recursive
- iterative reweighting
- incremental
- Linear programming
- geometric optimization
- The minimum-ball problem
- algorithms:
- linear programming
- distance to polytopes
- spatial subdivision trees
- quadtrees, k-d trees, BSP trees
- uses and construction
Discussions of R-trees and their database applications can be found
via this link.
Comments on Homework 3.
- More quadtree applications
- Arrangements
- Levels and $k$-sets
- high order Voronoi diagrams
- Zones
- complexity
- zones and BSP's
Ken Clarkson
December 1997