-
Visibility graph definitions Complexity: Θ(n) best case, Θ(n^2) worst case Construction via sweep of dual line arrangement: O(n^2 log n) time Four types of…
Apr 22: Visibility graphs
-
Decision problem: Free space is convex in each cell Weak Fréchet distance: Replace free space in each cell with convex hull of free boundary segments Finding…
Apr 20: Fréchet distance continued
-
Convolution A*B definition Minkowski sum A+B = points where A*B has positive winding number Fréchet distance definition (minimum leash length) Discrete…
Apr 15: Convolutions and Fréchet distance
-
The translational motion planning problem Work space, configuration space, and free space Minkowski sum definition and naive construction Example with complexity…
Apr 13: Minkowski sums and motion planning
-
Definitions: Shortest paths in polygons Rubber-band structure Incremental improvement Crossing structure The funnel algorithm Variant: Given crossing sequence instead of…
Apr 8: Geometric shortest paths
-
Halfplane discrepancy Ham sandwich cuts Minimum-area triangles and affine degeneracy 3SUM and 3SUM-hardness
Apr 6: Applications of line arrangements
-
Definitions Motivation Incremental algorithm: For each line, trace the zone in the arrangement of earlier lines The Zone Theorem
Apr 1: Line arrangements
-
Smallest enclosing annulus: reduce to LP by linearization Smallest enclosing ball: Can't be linearized! Welzl's MinDisk algorithm Proof of solution uniqueness…
Mar 30: Generalizations of linear programming
-
Set up and assumptions Seidel's incremental LP algorithm Proof of the exchange lemma Worst-case analysis of violation tests and basis computations Randomized…
Mar 25: Seidel's linear programming algorithm
-
Example 1: Max-margin classifier Example 2: Detecting star-shaped polygons Linear programming definition Geometric interpretation: Lowest point in a convex polyhedron…
Mar 23: Linear programming intro
-
four-way equivalence, via duality and lifting: Delaunay, Voronoi, lower hulls, and upper envelopes weighted Voronoi (power) diagrams and weighted Delaunay (coherent)…
Mar 09: Generalizations of Voronoi diagrams
-
Randomized incremental algorithm outline Adding a safe bounding triangle: handling symbolic infinite coordinates History dag construction, O(n) expected size Analyzing…
Mar 04: Randomized incremental Delaunay…
-
local Delaunay condition and Lawson's flip algorithm paraboloid lifting map: locally Delaunay = locally convex lift locally Delaunay everywhere = locally convex…
Mar 02: Delaunay triangulation proofs
-
Voronoi diagram definition Simple examples (2 or 3 points) Delaunay triangulation definition How to think/program about circles The incircle test Lawson's flip…
Feb 25: Voronoi diagrams and Delaunay…
-
Intuition: Tracing the polygon can be faster than using the history dag Crossing Lemma: E[#crossings] ≤ 4(n–r) Seidel's algorithm: Alternate between…
Feb 23: Faster polygon triangulation
-
Review of insertion algorithm: expected time = O(1) plus point location Conflict lists: Every trapezoid knows which points it contains Backward analysis: O(n log n)…
Feb 18: Randomized Incremental Construction II
-
Duality in more detail: head*=left, tail*=right, clockwise*=counterclockwise Deletion* = contraction; Euler's formula by induction Inserting one segment into a…
Feb 16: Duality, Randomized Incremental…
-
Gauss's point-in-polygon test Winding numbers Polygon area (Meister's shoelace algorithm)
Feb 09: Elementary polygon algorithms
-
Incidence lists for abstract (multi-)graphs Ordered incidence lists for planar maps, aka double-connected edge list Navigating DCELs Planar map duality (yet another pair…
Feb 11: Planar straight-line graphs
-
Definitions: simple polygon, triangulation Look, it's the Jordan Curve Theorem! [Bolzano 184x, Jordan 1887] Jordan polygon theorem and the triangulation theorem…
Feb 04: Polygon triangulation
-
Too much snow; we're remote again. Intersecting pairs ≥ intersection points Bentley-Ottman implicitly perturbs coincident intersections alart, but not…
Feb 02: Building a segment arrangement
-
HDMI problems (sorry) Different formulations: Detection, counting, construction Two segments Sweep-line algorithm: Maintain a balanced BST of intersections with a…
Jan 28: Segment intersection
-
Implementing Chan's little birdie (doubly-exponential search) The upper envelope problem Merge-envelope: Split into two subsets, recurse, and merge in O(n log n)…
Jan 25: Halfplane intersection
-
More on 2d convex hulls Jarvis march review: O(nh) time Graham's scan: sort and repair in O(n log n) time Chan's algorithm: Shatter, compute subset hulls, and…
Jan 21: Graham's scan and Chan's…
Search for ""