This preview shows page 1. Sign up to view the full content.
Unformatted text preview: itialize a and b repeat forever Binary Search c index midway from a to b A if P[c] is locally highest then return c a c if A points up and C points down C then [a,b] [a,c] /* highest point is in [a,c] */ else if A points down and C points up then [a,b] [c,b] /* highest point is in [c,b] */ else if A points up and C points up B if P[a] is above P[c] b then [a,b] [a,c] Unimodality else [a,b] [c,b] /* highest point is in [c,b] */ Allows else if A points down and C points down if P[a] is below P[c] Binary Search then [a,b] [a,c] /* highest point is in [a,c] */ O(lg n) else [a,b] [c,b] /* highest point is in [c,b] */ Stabbing a Convex Polygon
Extreme-Finding algorithm can stab a convex polygon extreme in + u direction
a +u x b y L extreme in - u direction If a and b straddle L, binary search on [a,b] yields x binary search on [b,a] yields y O(lg n) Extremal Polytope Queries: Main Idea Form sequence of O(log n) simpler nested polytopes in O(n) time To answer a query in O(logn) time: Key idea: Find extreme with respect to inner polytope, then work outwards Need only check small number of candidate vertices in next polytope independent sets in planar graphs are "large"; vertices of "low" degree to construct next (inner) polytope, remove independent set of vertices deleting constant fraction of vertices at each step produces O(logn) polytopes (derivation) O(log n) An independent set of a polytope graph of n vertices produced by INDEPENDENT SET has size at least n/18 Extremal Polytope Queries
Main Idea (continued) To use nested polytope hierarchy to answer an extreme point query: Find extreme with respect to inner polytope Pk (brute-force search) Move from polytope Pi+1 to Pi Yields bounds on # edges to check. Let ai and ai+1 be uniquely highest vertices of Pi and Pi+1. Then either ai = ai+1 or
ai+1 is the highest among the vertices adjacent to ai ai is the highest among the parents of the extreme edges Li+1 and Ri+1 L'i+1 = R'i+1 P = P0 ' P'i+1 tetrahedron projected onto xz plane Extremal Polytope Queries Details
Maximum Independent Set is NP-complete, but greedy heuristic performs well. Choose vertex of lowest degree, not adjacent to vertices already chosen. Algorithm 7.4: INDEPEND...
View Full Document
- Spring '10