Geometry
6.854 Notes #27

David Karger

1 Geometry

Field:

1.1 Range Trees for Orthogonal Range Queries

One key idea in CG: reducing dimension

What points are in this box?

Generalize: Solve in each coordinate “separately”

Refining idea 2:

Dynamic maintenance:

2 Sweep Algorithms

Another key idea:

2.1 Convex Hull by Sweep Line

Build upper hull:

Output sensitive algorithm can achieve \(O(n\log k)\) (Chan 1996).

2.2 Halfspace intersection

LP in 2 dimensions

Duality.

So, \(O(n\log n)\) time.

What if no “origin in intersection”?

2.3 Segment intersections

We saw this one using persistent data structures for a query structure.

3 Voronoi Diagram

Goal: find nearest Athena terminal to query point.

Definitions:

Space complexity:

Summary: \(V(P)\) has linear space and \(O(\log n)\) query time.

3.1 Construction

VD is dual of projection of lower CH of lifting of points to parabola in 3D.

And 3D CH can be done in \(O(n\log n)\)

Can build each voronoi cell in \(O(n\log n)\), so \(O(n^2\log n)\).

3.2 Sweep Line

Basic idea:

2011 lecture 23 end

Descent of one parabola:

Two parabolas

More parabolas

Summary:

Topology:

What changes the beach line?

Site event:

Claim: no other create events.

Summary:

4 Randomized Incremental Constructions

BSP

Backwards Analysis—Convex Hulls

Define.

algorithm (RIC):

Runtime analysis

4.1 Linear Programming

Randomized incremental algorithm \[T(n) \le T(n-1,d)+\frac{d}{n}(O(dn)+T(n-1,d-1)) = O(d!n)\]

Combine with other clever ideas: \[O(d^2 n) + 2^{O(\sqrt{d \log d})}\]

Trapezoidal decomposition:

Motivation:

Definition.

Randomized incremental construction:

Implementation

Analysis:

Search structure

Starting idea:

Goal: apply binary search in slabs, without \(n^2\) space

The structure:

Inserting an edge contained in a trapezoid

Inserting an edge that crosses trapezoids

Search time analysis