Klees Measure Problem Made Easy Timothy Chan U of Waterloo & HKUST.

Slides:



Advertisements
Similar presentations
Parikshit Gopalan Georgia Institute of Technology Atlanta, Georgia, USA.
Advertisements

Introduction to Algorithms
Output-Sensitive Construction of the Union of Triangles Esther Ezra and Micha Sharir.
Decision Maths Networks Kruskals Algorithm Wiltshire Networks A Network is a weighted graph, which just means there is a number associated with each.
Cuts, Trees, and Electrical Flows Aleksander Mądry.
Partitioning Screen Space for Parallel Rendering
Trees for spatial indexing
Topological Reasoning between Complex Regions in Databases with Frequent Updates Arif Khan & Markus Schneider Department of Computer and Information Science.
Introduction to Algorithms Quicksort
Octagonal Drawing Johan van Rooij. Overview What is an octagonal drawing Good slicing graphs Octagonal drawing algorithm for good slicing graphs Correctness.
1 CSE 417: Algorithms and Computational Complexity Winter 2001 Lecture 13 Instructor: Paul Beame.
Minimum Vertex Cover in Rectangle Graphs
Advanced Iso-Surfacing Algorithms Jian Huang, CS594, Spring 2002 This set of slides are developed and used by Prof. Han-Wei Shen at Ohio State University.
INTERVAL TREE & SEGMENTATION TREE
Fundamental tools: clustering
Map Overlay Algorithm. Birch forest Wolves Map 1: Vegetation Map 2: Animals.
Tight Bounds for Dynamic Convex Hull Queries (Again) Erik DemaineMihai Pătraşcu.
Voronoi Diagrams in n· 2 O(√lglg n ) Time Timothy M. ChanMihai Pătraşcu STOC’07.
C o m p u t i n g C O N V E X H U L L S by Kok Lim Low 10 Nov 1998 COMP Presentation.
S. J. Shyu Chap. 1 Introduction 1 The Design and Analysis of Algorithms Chapter 1 Introduction S. J. Shyu.
1 Voronoi Diagrams. 2 Voronoi Diagram Input: A set of points locations (sites) in the plane.Input: A set of points locations (sites) in the plane. Output:
Shakhar Smorodinsky Courant Institute, New-York University (NYU) On the Chromatic Number of Some Geometric Hypergraphs.
The Divide-and-Conquer Strategy
Convex Hulls in Two Dimensions Definitions Basic algorithms Gift Wrapping (algorithm of Jarvis ) Graham scan Divide and conquer Convex Hull for line intersections.
A polylogarithmic approximation of the minimum bisection Robert Krauthgamer The Hebrew University Joint work with Uri Feige.
Convex Hulls in 3-space Jason C. Yang.
Orthogonal Range Searching Computational Geometry, WS 2006/07 Lecture 13 – Part II Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für.
1 Lecture 8: Voronoi Diagram Computational Geometry Prof. Dr. Th. Ottmann Voronoi Diagrams Definition Characteristics Size and Storage Construction Use.
Minimum Vertex Cover in Rectangle Graphs R. Bar-Yehuda, D. Hermelin, and D. Rawitz 1.
Lecture 12 : Special Case of Hidden-Line-Elimination Computational Geometry Prof. Dr. Th. Ottmann 1 Special Cases of the Hidden Line Elimination Problem.
Advanced Topics in Algorithms and Data Structures An overview of the lecture 2 Models of parallel computation Characteristics of SIMD models Design issue.
1 1 Static & Dynamic Maintenance of Kinematic Structures Spheres, Molecules, and Hidden Surface Removal D. Halperin and M-H. Overmars Dynamic Maintenance.
Lecture 5: Orthogonal Range Searching Computational Geometry Prof. Dr. Th. Ottmann 1 Orthogonal Range Searching 1.Linear Range Search : 1-dim Range Trees.
Special Cases of the Hidden Line Elimination Problem Computational Geometry, WS 2007/08 Lecture 16 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen,
CSC 2300 Data Structures & Algorithms March 27, 2007 Chapter 7. Sorting.
On the Union of Cylinders in Esther Ezra Duke University On the Union of Cylinders in  3 Esther Ezra Duke University.
Hidden-Line Elimination Computational Geometry, WS 2006/07 Lecture 14 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
Almost tight bound for the union of fat tetrahedra in R 3 Esther Ezra Micha Sharir Duke University Tel-Aviv University.
Quantum Algorithms II Andrew C. Yao Tsinghua University & Chinese U. of Hong Kong.
Robot Motion Planning Computational Geometry Lecture by Stephen A. Ehmann.
Domain decomposition in parallel computing Ashok Srinivasan Florida State University COT 5410 – Spring 2004.
Theory of Computing Lecture 15 MAS 714 Hartmut Klauck.
Line Arrangement Chapter 6. Line Arrangement Problem: Given a set L of n lines in the plane, compute their arrangement which is a planar subdivision.
On the union of cylinders in 3-space Esther Ezra Duke University.
C o m p u t i n g C O N V E X H U L L S. Presentation Outline 2D Convex Hulls –Definitions and Properties –Approaches: Brute Force Gift Wrapping QuickHull.
Computing the Volume of the Union of Cubes in R 3 Pankaj K. Agarwal Haim Kaplan Micha Sharir.
Kinetic data structures. Goal Maintain a configuration of moving objects Each object has a posted flight plan (this is essentially a well behaved function.
The Fast Fourier Transform and Applications to Multiplication
A deterministic near-linear time algorithm for finding minimum cuts in planar graphs Thank you, Steve, for presenting it for us!!! Parinya Chalermsook.
1 / 41 Convex Hulls in 3-space Jason C. Yang. 2 / 41 Problem Statement Given P: set of n points in 3-space Return: –Convex hull of P: CH (P) –Smallest.
Domain decomposition in parallel computing Ashok Srinivasan Florida State University.
Lecture 5 Today, how to solve recurrences We learned “guess and proved by induction” We also learned “substitution” method Today, we learn the “master.
CSE554Contouring IISlide 1 CSE 554 Lecture 5: Contouring (faster) Fall 2013.
Convex hulls in 3D Maciej Kot. Finding convex hull Given a set of points, find a convex hull that contains all of them and is minimal.
Almost tight bound for the union of fat tetrahedra in R3 Esther Ezra Micha Sharir Duke University Tel-Aviv University.
Lecture 22 Complexity and Reductions
What is the next line of the proof?
Query Processing in Databases Dr. M. Gavrilova
Voronoi diagrams in planar graphs & computing the diameter in
Orthogonal Range Searching and Kd-Trees
Sequence Pair Representation
Lecture 7 All-Pairs Shortest Paths
Constrained Bipartite Vertex Cover: The Easy Kernel is Essentially Tight Bart M. P. Jansen February 18th, STACS 2016, Orléans, France.
Chapter 7 Voronoi Diagrams
I. The Problem of Molding
CMPS 3130/6130 Computational Geometry Spring 2017
Intercepts of a Line Intercepts are the points at which the graph intersects the x-axis or the y-axis. Since an intercept intersects the x-axis or the.
Given a list of n  8 integers, what is the runtime bound on the optimal algorithm that sorts the first eight? O(1) O(log n) O(n) O(n log n) O(n2)
Direct Methods.
Presentation transcript:

Klees Measure Problem Made Easy Timothy Chan U of Waterloo & HKUST

Beginning of Story… Victor Klee, Can the measure of U 1 n [a i,b i ] be computed in less than O(n log n) steps?, Amer. Math. Monthly, 84: , 1977

The Problem Given n rectangular boxes in d dimensions, compute the measure of the union

Known Result in 2D Union may have (n 2 ) boundary edges Bentley'77: O(n log n) time

Bentleys Algorithm in 2D Idea: sweep! dynamic data structure problem in 1D

Known Results in d 3 Dimensions Union may have (n d ) boundary faces Bentley'77: O(n d-1 log n) time Van Leeuwen,Wood'81: O(n d-1 ) time Overmars,Yap [FOCS'88] : O(n d/2 log n) time C.'08: O(n d/2 loglog n) time

Known Results in d 3 Dimensions Union may have (n d ) boundary faces Bentley'77: O(n d-1 log n) time Van Leeuwen,Wood'81: O(n d-1 ) time Overmars,Yap [FOCS'88] : O(n d/2 log n) time C.'08: O(n d/2 logloglog n)

Known Results in d 3 Dimensions Union may have (n d ) boundary faces Bentley'77: O(n d-1 log n) time Van Leeuwen,Wood'81: O(n d-1 ) time Overmars,Yap [FOCS'88] : O(n d/2 log n) time C.'08: O(n d/2 loglogloglog n)

Known Results in d 3 Dimensions Union may have (n d ) boundary faces Bentley'77: O(n d-1 log n) time Van Leeuwen,Wood'81: O(n d-1 ) time Overmars,Yap [FOCS'88] : O(n d/2 log n) time C.'08: O(n d/2 2 O(log * n) ) time Today: O(n d/2 ) time

New Algorithm: Warm-Up in 2D Idea: good old divide&conquer!

New Algorithm in 2D: First Attempt Given set B of n rectangles inside cell C: 1. divide C into C left & C right 2. recurse inside C left & inside C right

New Algorithm in 2D: How to Divide? … by median-x Problem: bad rectangles! C C left C right

New Algorithm in 2D Given set B of n rectangles inside cell C: 0. simplify B new twist! 1. divide C into C left & C right 2. recurse inside C left & inside C right

New Algorithm in 2D: How to Simplify? … by removing all bad rectangles that don't have vertices inside C

New Algorithm in 2D: Summary & Analysis Given set B of n rectangles inside cell C: 0. simplify B … by removing all bad rectangles that don't have vertices inside C 1. divide C into C left & C right … by median-x 2. recurse inside C left & inside C right Let N = # vertices inside C T(N) = 2 T(N/2) + O(N) O(N log N)

Extending New Algorithm to 3D Given set B of n boxes inside cell C: 0. simplify B … by removing all bad boxes that don't have edges intersecting C 1. divide C into C left & C right … by weighted median-x 2. recurse inside C left & inside C right

New Algorithm in 3D: How to Simplify? … by removing all bad boxes that don't have edges intersecting C

New Algorithm in 3D: How to Divide? … by weighted median-x x y z

New Algorithm in 3D: How to Divide? … by weighted median-x Define weight of an edge: Total weight of edges intersecting C left (or C right ) = … after factoring out 2 -2/3 x y z 1 2 1/3 2 2/ /3 /2 2 2/3 /2 2 -2/3 2 -1/3 2 2/3 2 1/3 1

New Algorithm in 3D: Analysis Let N = total weight of edges intersecting C N left, N right 2 -2/3 N after renaming axes T(N) = 2 T(N / 2 2/3 ) + O(N) O(N 3/2 )

Extending New Algorithm to d Dimensions Define weight of a (d-2)-dimensional face f = 2 (i+j)/d if f is orthogonal to axis i & j T(N) = 2 T(N / 2 2/d ) + O(N) O(N d/2 )

FINAL REMARKS

Other Applications Cover problem: given n boxes in d dimensions, does their union completely cover C? Depth problem: given n boxes in d dimensions, find a point q minimizing # of boxes containing q Weighted depth problem: given n weighted boxes in d dimensions, find a point q minimizing total weight of boxes containing q Etc.

Lower Bounds? C'08: Finding cliques of size d in a graph with V=n 1/2 vertices reduces to the cover/depth/ measure problem hard to beat O(V d ) = O(n d/2 ) time (ignoring log factors) by purely combinatorial algorithms Open question: can matrix multiplication help??

Log Factor Speedups Cover/depth problem: O**(n d/2 / log d/2 n) by table lookup Weighted depth problem: O**(n d/2 / log d/2 - 5 n) by linear decision trees [Meyer auf der Heide84,Meiser93] Measure problem: O**(n d/2 / log d/2 - 2 n) by Chinese remainder theorem for integer input Open question: speedup for measure problem for real input?

Special Case: Hypercubes (or Fat Boxes) Union may have (n d/2 ) boundary faces Agarwal,Kaplan,Sharir'07: O(n 4/3 log 2 n) time (d=3) Agarwal'10: O(n log 4 n) time (d=3) Bringman'10: O(n (d+2)/3 ) New: O(n (d+1)/3 polylog n) by more complicated additional ideas… Open question: faster algorithms for hypercubes?