CPS 296: Design and Analysis of Algorithms with Applications
in GIS
Course Synopsis
The course is likely to contain a subset of the following topics
(what has really been going on can be seen here):
1. Introduction to GIS
2. Geographic information models and representation
- Maps:
- Raster and vector models.
- Digital elevation models (DEMs):
- Grid
- Contour line
- Triangulated irregular networks (TINs): Storage, access, traversal, conversion
from point, grid or contour line to TIN representation.
3. Data structures for GIS
- Internal:
- Quad tree, point location and range searching structures.
- External:
- B-tree, R-trees, grid file, k-d B tree, space filling curves.
- Worst case I/O efficient (2d range searching) structures:
- Path caching, external interval tree, XP tree, metablock tree, P-range
tree.
4. Computation on Terrains: (TIN computation)
- Contour line computation.
- Topographical features, classification, drainage networks, ...
- Visualization:
- Perspective view (depth order for TINs).
- Multi resolution models.
5. External memory algorithms with applications in GIS
- Sorting (merging, distribution).
- Buffer technique:
- Buffer tree, external buffered segment tree.
- Use of parallel disks.
- Distribution sweeping:
- Orthogonal line segment intersection, all nearest neighbors, batched
range searching.
- External fractional cascading and batched filtering:
- Segment sorting, batched planar point location, trapezoid decomposition,
polygon triangulation.
- Contour lines computation revisited:
- External list ranking
- External graph blocking.
6. Computation on maps/map presentation
- Map overlay
- Red/blue line segment intersection (internal and external).
- Other algorithms.
- Map generalization
- Line simplification.
- Label placement
- Polygon/polyline intersection.
- Buffer computation.
7. Implementation of GIS algorithms
- TPIE
- CGAL/LEDA
- Precision and robustness
Lars Arge
Sat Jan 25, 1996