ProblemResultsConcurrent Range Reporting Input: n points in d dimensional space. Support reporting the t points in a query box. The best previous result:

Slides:



Advertisements
Similar presentations
Introduction to Algorithms
Advertisements

1 Computational Geometry Chapter Range queries How do you efficiently find points that are inside of a rectangle? –Orthogonal range query ([x 1,
Cutting trees and the cutting lemma Presented by Amir Mograbi.
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.
Query Processing in Databases Dr. M. Gavrilova.  Introduction  I/O algorithms for large databases  Complex geometric operations in graphical querying.
Orthogonal Range Searching Computational Geometry, WS 2006/07 Lecture 13 – Part II Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für.
I/O-Algorithms Lars Arge Aarhus University February 27, 2007.
Counting and Representing Intersections Among Triangles in R 3 Esther Ezra and Micha Sharir.
Orthogonal Range Searching-1Computational Geometry Prof. Dr. Th. Ottmann 1 Orthogonal Range Searching 1.Linear Range Search : 1-dim Range Trees 2.2-dimensional.
Lecture 5: Orthogonal Range Searching Computational Geometry Prof. Dr. Th. Ottmann 1 Orthogonal Range Searching 1.Linear Range Search : 1-dim Range Trees.
I/O-Algorithms Lars Arge University of Aarhus March 1, 2005.
I/O-Algorithms Lars Arge Spring 2009 March 3, 2009.
Lars Arge1, Mark de Berg2, Herman Haverkort3 and Ke Yi1
I/O-Algorithms Lars Arge Aarhus University March 5, 2008.
Data Structures for Orthogonal Range Queries
I/O-Algorithms Lars Arge Aarhus University March 9, 2006.
I/O-Algorithms Lars Arge University of Aarhus March 7, 2005.
CS 253: Algorithms Chapter 4 Divide-and-Conquer Recurrences Master Theorem Credit: Dr. George Bebis.
Lecture 6 Divide and Conquer for Nearest Neighbor Problem Shang-Hua Teng.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2001 Lectures 2, 3 Chapters 1, 2 Fri. 9/7/01 – Mon. 9/10/01.
O RTHOGONAL R ANGE S EARCHING الهه اسلامی فروردین 92, 1.
Dimensionality Reduction
Text Chapters 1, 2. Sorting ä Sorting Problem: ä Input: A sequence of n numbers ä Output: A permutation (reordering) of the input sequence such that:
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.
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.
Problems and MotivationsOur ResultsTechnical Contributions Membership: Maintain a set S in the universe U with |S| ≤ n. Given an x in U, answer whether.
UNC Chapel Hill M. C. Lin Orthogonal Range Searching Reading: Chapter 5 of the Textbook Driving Applications –Querying a Database Related Application –Crystal.
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)
Mehdi Mohammadi March Western Michigan University Department of Computer Science CS Advanced Data Structure.
Multi-dimensional Search Trees
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.
MotivationFundamental ProblemsProblems on Graphs Parallel processors are becoming common place. Each core of a multi-core processor consists of a CPU and.
2IL50 Data Structures Fall 2015 Lecture 9: Range Searching.
GLOBAL ROUTING Anita Antony PR11EC1011. Approaches for Global Routing Sequential Approach: – Route the nets one at a time. Concurrent Approach: – Consider.
Lecture 2: External Memory Indexing Structures CS6931 Database Seminar.
Bin Yao (Slides made available by Feifei Li) R-tree: Indexing Structure for Data in Multi- dimensional Space.
Multi-dimensional Search Trees CS302 Data Structures Modified from Dr George Bebis.
Spatial Indexing Techniques Introduction to Spatial Computing CSE 5ISC Some slides adapted from Spatial Databases: A Tour by Shashi Shekhar Prentice Hall.
Foundations II: Data Structures and Algorithms
Sorting 1. Insertion Sort
Link Building and Communities in Large Networks Martin Olsen University of Aarhus Link Building Link Building is NP-Hard The dashed links show the set.
Headlines - Font: Ariel, Size:32, white Breadtext: Font: Ariel, Size: 22, color white This is a table cell with color RGB 96,96,96 Headline Running text.
IntroductionReduction to Arrangements of Hyperplanes We keep the canonical triangulation (bottom, left corner triangulation) of each convex cell of the.
Optimal Planar Orthogonal Skyline Counting Queries Gerth Stølting Brodal and Kasper Green Larsen Aarhus University 14th Scandinavian Workshop on Algorithm.
MotivationLocating the k largest subsequences: Main ideasResults Problem definitions Problem instance ( k=5 ) Bibliography
ProblemData StructuresLower Bound Preprocess a set of N 3-dimensional points into an I/O-efficient data structure, such that all points inside an axis.
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.
The Range Mode ProblemCell Probe Lower Bounds for the Range Mode ProblemThe Range k-frequency Problem Preprocess an array A of n elements into a space.
UNC Chapel Hill M. C. Lin Geometric Data Structures Reading: Chapter 10 of the Textbook Driving Applications –Windowing Queries Related Application –Query.
School of Computing Clemson University Fall, 2012
CMPS 3130/6130 Computational Geometry Spring 2017
Query Processing in Databases Dr. M. Gavrilova
Optimal Algorithms Search and Sort.
Algorithm design techniques Dr. M. Gavrilova
Orthogonal Range Searching and Kd-Trees
R-tree: Indexing Structure for Data in Multi-dimensional Space
Lecture 16: Earth-Mover Distance
Comparison Sorting Elements are rearranged by comparing values of keys
EE4271 VLSI Design, Fall 2016 VLSI Channel Routing.
Algorithms CSCI 235, Spring 2019 Lecture 7 Recurrences II
CMPS 3130/6130 Computational Geometry Spring 2017
Chapter 8: Overview Comparison sorts: algorithms that sort sequences by comparing the value of elements Prove that the number of comparison required to.
Algorithms CSCI 235, Spring 2019 Lecture 8 Recurrences III
Donghui Zhang, Tian Xia Northeastern University
Presentation transcript:

ProblemResultsConcurrent Range Reporting Input: n points in d dimensional space. Support reporting the t points in a query box. The best previous result: Bounds in bold are optimal. Space lower bound Ω(n(lgn/lglgn) d-1 ). No query lower bound beyond Ω(lgn+t). We achieve: Bounds in bold are optimal. We also show the query time lower bound of Ω((lgn/lglgn) d/2-1 +t). Optimal solution for all 3-d variations. We solve harder variants of orthogonal range reporting. We call these concurrent Q(d,k) (CQ(d,k)). Points have colors from set of colors C. Query: Q(d,k) box q + set of colors p from a set P 2 C. Must report points in q with color in p. Solution for CQ(d,k) gives solution for Q(d,k+1) (and Q(d+1,k+1)) by paying lgn/lglgn in space (and query time). Range tree with fanout lg ε n. Q(d+1,k+1) becomes CQ(d,k) with colors { }. Height of tree lgn/lglgn. VariationsSolving Concurrent Q(3,0)Solving Concurrent Q(3,2) Query range may be unbounded in some dimensions: Q(d,k): d dimensional points, query ranges are finite in k dimensions. Why important: more efficient solutions. lgn-shallow cuttings: O(n/lgn) Q(3,0) boxes s.t. queries outputting < lgn points are inside at least one box. Each box contains O(lgn) input points. Build lgn-shallow cuttings for every color. Store Q(3,0) structure inside each box, and for every color. Given query q, find boxes containing it using 2-d point enclosure in time O(lgn+|C|). For every color:  If q inside a box b, query Q(3,0) structure inside b.  Otherwise, query Q(3,0) structure on all points. Query unbounded in z-dimension. Build grid on x and y dimensions. The grid has size w by w where w=√n/|C||P|lg 2 n. n/w points in each horizontal and vertical slab. Points snapped to grid. Structures stored:  CQ(3,0) structure on points in every slab.  For every p in P, a Q(3,2) structure on points with least z coordinate from every color in every grid cell.  Linked list for every color in every grid cell with points sorted by z coordinate.  Recursive structure inside each slab. Queries decompose into four CQ(3,1) queries and a grid query. In recursive steps, they become one recursive CQ(3,1) query, two CQ(3,0) queries and one grid query. Motivation Database queries: “Give me all employees of age between 27 and 34, earning at most 8000 per month.” Orthogonal Range Reporting: Optimal 3-d Structures and Query Lower Bounds MADALGO – Center for Massive Data Algorithmics, a Center of the Danish National Research Foundation Kasper Dalgaard Larsen Aarhus University age salary 8000 employee Q(2,0) Q(2,1) TypeQuerySpace Q(2,1)lgn+tn Q(2,2)lgn  +tn lgn/lglgn Q(3,0)lgn+tn Q(3,1)lgn+tn lgn/lglgn Q(3,2)lgn+tn (lgn/lglgn) 2 Q(3,2)lg 2 n/lglgn+tn lgn/lglgn Q(3,3)lgn+tn (lgn/lglgn) 3 Q(3,3)lg 2 n/lglgn+tn (lgn/lglgn) 2 Q(d,d)lgn(lgn/lglgn) d-3 +tn (lgn/lglgn) d Q(d,d)lgn(lgn/lglgn) d-2 +tn (lgn/lglgn) d-1 TypeQuerySpace Q(2,1)lgn+tn Q(2,2)lgn  +tn lgn/lglgn Q(3,0)lgn+tn Q(3,1)lgn+tn lgn/lglgn Q(3,2)lgn+tn lgn/lglgn Q(3,3)lgn+tn (lgn/lglgn) 2 Q(d,d)lgn(lgn/lglgn) d-3 +tn (lgn/lglgn) d-1 C={ } P={,,, } p={ } Q(d+1,k+1) Q(d,k) Q(d+1,k)