Optimal Planar Orthogonal Skyline Counting Queries Gerth Stølting Brodal and Kasper Green Larsen Aarhus University 14th Scandinavian Workshop on Algorithm.

Slides:



Advertisements
Similar presentations
1 Computational Geometry Chapter Range queries How do you efficiently find points that are inside of a rectangle? –Orthogonal range query ([x 1,
Advertisements

Gerth Stølting Brodal University of Aarhus Monday June 9, 2008, IT University of Copenhagen, Denmark International PhD School in Algorithms for Advanced.
Divide and Conquer. Subject Series-Parallel Digraphs Planarity testing.
Lecture 3: Parallel Algorithm Design
Tight Bounds for Dynamic Convex Hull Queries (Again) Erik DemaineMihai Pătraşcu.
Augmenting Data Structures Advanced Algorithms & Data Structures Lecture Theme 07 – Part I Prof. Dr. Th. Ottmann Summer Semester 2006.
I/O-Algorithms Lars Arge Fall 2014 September 25, 2014.
Lars Arge 1/43 Big Terrain Data Analysis Algorithms in the Field Workshop SoCG June 19, 2012 Lars Arge.
Voronoi Diagrams in n· 2 O(√lglg n ) Time Timothy M. ChanMihai Pătraşcu STOC’07.
One of the most important problems is Computational Geometry is to find an efficient way to decide, given a subdivision of E n and a point P, in which.
(Data) STRUCTURES Mihai P ă trașcu. LSD dyn. marked ancestor reachability oracles in the butterfly partial match(1+ε)-ANN ℓ 1, ℓ 2 NN in ℓ 1, ℓ 2 3-ANN.
External Memory Geometric Data Structures
Query Processing in Databases Dr. M. Gavrilova.  Introduction  I/O algorithms for large databases  Complex geometric operations in graphical querying.
I/O-Algorithms Lars Arge University of Aarhus February 21, 2005.
I/O-Algorithms Lars Arge Aarhus University February 27, 2007.
Dynamic Planar Range Maxima Queries (presented at ICALP 2011) Gerth Stølting Brodal Aarhus University Kostas Tsakalidis University of Primorska, October.
Dynamic Planar Range Maxima Queries (presented at ICALP 2011) Gerth Stølting Brodal Aarhus University Kostas Tsakalidis LIAFA, Université Paris Diderot,
Optimal Planar Point Enclosure Indexing Lars Arge, Vasilis Samoladas and Ke Yi Department of Computer Science Duke University Technical University of Crete.
Computational Geometry, WS 2007/08 Lecture 15 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät für Angewandte Wissenschaften.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2007 Lecture 3 Chapter 3: 2D Convex Hulls Friday,
I/O-Algorithms Lars Arge University of Aarhus March 1, 2005.
I/O-Algorithms Lars Arge Spring 2009 March 3, 2009.
I/O-Algorithms Lars Arge Aarhus University March 5, 2008.
Fully Persistent B-Trees 23 rd Annual ACM-SIAM Symposium on Discrete Algorithms, Kyoto, Japan, January 18, 2012 Gerth Stølting Brodal Konstantinos Tsakalidis.
I/O-Algorithms Lars Arge Aarhus University March 9, 2006.
Comparison Based Dictionaries: Fault Tolerance versus I/O Efficiency Gerth Stølting Brodal Allan Grønlund Jørgensen Thomas Mølhave University of Aarhus.
Point Location Computational Geometry, WS 2007/08 Lecture 5 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät für.
I/O-Algorithms Lars Arge University of Aarhus March 7, 2005.
Lecture 6: Point Location Computational Geometry Prof. Dr. Th. Ottmann 1 Point Location 1.Trapezoidal decomposition. 2.A search structure. 3.Randomized,
Using Areas to Approximate to Sums of Series In the previous examples it was shown that an area can be represented by the sum of a series. Conversely the.
AALG, lecture 11, © Simonas Šaltenis, Range Searching in 2D Main goals of the lecture: to understand and to be able to analyze the kd-trees and.
Compact Representations of Separable Graphs From a paper of the same title submitted to SODA by: Dan Blandford and Guy Blelloch and Ian Kash.
Algorithm Engineering, September 2013Data Structures, February-March 2010Data Structures, February-March 2006 Cache-Oblivious and Cache-Aware Algorithms,
The Encoding Complexity of Two Dimensional Range Minimum Data Structures European Symposium on Algorithms, Inria, Sophia Antipolis, France, September 3,
Orthogonal Range Searching I Range Trees. Range Searching S = set of geometric objects Q = query object Report/Count objects in S that intersect Q Query.
Mike 66 Sept Succinct Data Structures: Techniques and Lower Bounds Ian Munro University of Waterloo Joint work with/ work of Arash Farzan, Alex Golynski,
Space Efficient Data Structures for Dynamic Orthogonal Range Counting Meng He and J. Ian Munro University of Waterloo.
External Memory Algorithms for Geometric Problems Piotr Indyk (slides partially by Lars Arge and Jeff Vitter)
B-trees and kd-trees Piotr Indyk (slides partially by Lars Arge from Duke U)
Bounds on the Geometric Mean of Arc Lengths for Bounded- Degree Planar Graphs M. K. Hasan Sung-eui Yoon Kyung-Yong Chwa KAIST, Republic of Korea.
Succinct Geometric Indexes Supporting Point Location Queries Prosenjit Bose, Eric Y. Chen, Meng He, Anil Maheshwari, Pat Morin.
Mehdi Mohammadi March Western Michigan University Department of Computer Science CS Advanced Data Structure.
Succinct Orthogonal Range Search Structures on a Grid with Applications to Text Indexing Prosenjit Bose, Carleton University Meng He, Unversity of Waterloo.
Computing the Volume of the Union of Cubes in R 3 Pankaj K. Agarwal Haim Kaplan Micha Sharir.
Lars Arge Presented by Or Ozery. I/O Model Previously defined: N = # of elements in input M = # of elements that fit into memory B = # of elements per.
Computational Geometry Piyush Kumar (Lecture 10: Point Location) Welcome to CIS5930.
Path Minima on Dynamic Weighted Trees Pooya Davoodi Aarhus University Aarhus University, November 17, 2010 Joint work with Gerth Stølting Brodal and S.
1 Nearest Common Ancestors (NCA) Discrete Range Maximum Cartesian Tree [Vuillemin 1980] i j max(i, j) i.
An Introduction to Computational Geometry Joseph S. B. Mitchell Stony Brook University.
Observations about Error in Integral Approximations The Simplest Geometry.
ProblemResultsConcurrent Range Reporting Input: n points in d dimensional space. Support reporting the t points in a query box. The best previous result:
Sorting Lower Bounds n Beating Them. Recap Divide and Conquer –Know how to break a problem into smaller problems, such that –Given a solution to the smaller.
Internal Memory Pointer MachineRandom Access MachineStatic Setting Data resides in records (nodes) that can be accessed via pointers (links). The priority.
X1x1 x2x2 top-k y 3-sided x1x1 x2x2 External Memory Three-Sided Range Reporting and Top-k Queries with Sublogarithmic Updates Gerth Stølting Brodal Aarhus.
Information theory Data compression perspective Pasi Fränti
arxiv.org/abs/ y 3-sided x1 x2 x1 x2 top-k
Succinct Data Structures
Lecture 3: Parallel Algorithm Design
New Characterizations in Turnstile Streams with Applications
The Steepest Ascent Hill Climbing Algorithm
Query Processing in Databases Dr. M. Gavrilova
Algorithm design techniques Dr. M. Gavrilova
STACS arxiv.org/abs/ y 3-sided x1 x2 x1 x2 top-k
Discrete Methods in Mathematical Informatics
Succinct Representation of Labeled Graphs
8th Workshop on Massive Data Algorithms, August 23, 2016
Sorting and Divide-and-Conquer
CMPS 3130/6130 Computational Geometry Spring 2017
Discrete Range Maximum
Presentation transcript:

Optimal Planar Orthogonal Skyline Counting Queries Gerth Stølting Brodal and Kasper Green Larsen Aarhus University 14th Scandinavian Workshop on Algorithm Theory, Copenhagen, Denmark, July 3, 2014

n points k output orthogonal query range dominated by 4 points skyline count = 5 not dominated = skyline point Assumptions  coordinates { 0, 1,..., n-1 }  Unit cost RAM with word size w =  (log n)

Results Orthogonal rangeSkyline Space (words) QuerySpace (words) Query Reporting n n  lg ε n n  lg O(1) n  k  lg ε n k + lglg n  (k + lglg n) CLP11 ABR00 PT06 n n  lglg n n  lg ε n n  lg n/lglg n k  lg ε n k  (lglg n) 2 k  lglg n + lg n/lglg n k  lglg n k + lg n/lglg n new NN12 new NN12 new DGKASK12 Counting n n  lg O(1) n  lg n/lglg n JMS04 P07 n  lg n n  lg 3 n/lglg n n n  lg O(1) n  lg n lg n/lglg n  (lg n/lglg n) DGKASK12 DGS13 new { {

topmost point (x,y) y+1 Basic Geometry – Divide and Conquer recurse

Basic Counting – Vertical Slab rightmost topmost skyline count = topmost rightmost prefix sum = 8 Data Structure succinct prefix sum O(n) bits + succinct range maxima O(n) bits

Upper Bound height lg n / lglg n degree lg ε n Data Structure succinct fractional cascading on y O(n  lg n) bits

Upper Bound – Multi-slab 1 lg O(ε) n points Block B top B bottom degree lg ε n right top tabulation ( blocks have o(lg n) bit signatures ) 45 + single slab queries ( succinct prefix sum ) 2 lg 2ε n multi-slab structures using lglg n bits per block ( succinct prefix sum, range maxima )

Upper Bound – Summary O(lg n / lglg n) orthogonal skyline counting Space O(n) words + succinct stuff...

Lower Bound – Skyline Counting Reduction Reachability in the Butterfly Graph  Skyline Counting Word size lg O(1) n bits, space O(n  lg O(1) n)   (lg n / lglg n) query t s [- , x]  [- , y] Butterfly Graph

 dashed edges are deleted  s-t paths are unique t s c a b rev(t) s a b c 2-sided Skyline Range Counting  depth of edge  aspect ratio of rectangle  edge = 1 point, deleted edge = 2 points

Results Orthogonal rangeSkyline Space (words) QuerySpace (words) Query Reporting n n  lg ε n n  lg O(1) n  k  lg ε n k + lglg n  (k + lglg n) CLP11 ABR00 PT06 n n  lglg n n  lg ε n n  lg n/lglg n k  lg ε n k  (lglg n) 2 k  lglg n + lg n/lglg n k  lglg n k + lg n/lglg n new NN12 new NN12 new DGKASK12 Counting n n  lg O(1) n  lg n/lglg n JMS04 P07 n  lg n n  lg 3 n/lglg n n n  lg O(1) n  lg n lg n/lglg n  (lg n/lglg n) DGKASK12 DGS13 new { { improve