SlideShare a Scribd company logo
1 of 82
Download to read offline
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Efficient Data Structures and Algorithms for
Range Aggregate Problems
Jatin Agarwal
Advisor: Dr. Kannan Srinathan and Dr. Kishore Kothapalli
CSTAR, IIIT Hyderabad
November 27, 2013
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Computational Geometry
What is Computational Geometry?
Study of Geometric Algorithms
Why study CG?
Geometric problems arise in the field of databases,
Geographical Information Systems (GIS), graphics, VLSI etc.
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Classic problems
In Health GIS there is a need to demarcate disease infected areas.
Figure: Convex hull of a finite set of points
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Classic Problems
Problem of finding closest pair w.r.t Euclidean distance.
Figure: Closest pair of a finite set of points
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Classic Problems
Location based services (finding the nearest restaurant or the
nearest theater)
Figure: Nearest neighbour problem. This lead to discovery of Voronoi
diagram
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
Outline
1 Introduction
2 Background Knowledge
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
3 Problems Solved
Planar Range Maxima
Planar Range Convex Hull and Related problems
4 Conclusion and Future Work
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
Example
Given an unsorted array of n numbers and any given query
q = [a, b] report all the numbers x in range a < x < b.
5 9 3 1 7 6 4 12 2
Figure: Unsorted Array of Numbers
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
Naive Algorithm
Scan the whole Array !!
Query time: O(n).
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
Smart Algorithm
Preprocessing Step: Sort the Array.
Query Algorithm: Binary Search !
Query Time: O(log n + k)
1 2 3 4 5 6 7 9 12
Figure: Unsorted Array of Numbers
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
Output Sensitive
Reporting Problem: Lower bound of ω(k) query time, where k
are the number of items reported.
Objective: O(f (n) + k), where f (n) is a small value. An
algorithm which satisfies this objective is considered
output-sensitive.
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
Outline
1 Introduction
2 Background Knowledge
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
3 Problems Solved
Planar Range Maxima
Planar Range Convex Hull and Related problems
4 Conclusion and Future Work
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
Ways to Compute
All results in this thesis are either on Comparison Based Model or
word-RAM models.
Cell Probe
Transdichotomous RAM
AC RAM0
Word RAM
Pointer Machine
BST
Pentium RAM
Figure: Hierarchy of the Computation models
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
Models
Cell Probe Model: Used for proving lower bounds as we pay
for each memory operation.
Word RAM Model: word-size on computer changes with input
size n.
Comparison Based Model: Only Comparison is only allowed
operation.
Pointer Machine Model: Described by a directed graph with
constant branching factor.
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
Outline
1 Introduction
2 Background Knowledge
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
3 Problems Solved
Planar Range Maxima
Planar Range Convex Hull and Related problems
4 Conclusion and Future Work
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
Applications
Range Tree has tremendous applications in :
GIS
Databases
VLSI
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
Range Query
X
Y
q
Figure: Two dimensional Range Tree
S is the set of given points and q is the query hyperbox. The
objective is to efficiently
report
count
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
Range Searching
How do we solve this problem?
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
Naive Technique
Linear Scan of the database.
O(n) query time. No pre-processing involved.
Not output sensitive !!!
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
Reduction to Binary Search
Preprocessing step: Build a binary search tree T on the
x-coordinates of the points.
Query algorithm: T is queried with qx and filter the points.
Query time: O(log n + |S ∩ qx |). Not good if |S ∩ qx | >> k.
Therefore, there was a need to build efficient data structures.
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
Popular Structures for Range Searching
Reporting data structures
Query Type Query Time Storage Space query region
Range Tree O(logd−1
n + k) O(n logd
n) Orthogonal
kd-Tree O(log1−1/d
n + k) O(n) arbitrary
Table: n is the number of points, d is the dimensional space and k is the
size of the output
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
Range Tree Example
Figure: Two dimensional Range Tree
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
Partition based on Range Tree
v1 v2 ............................... vl
w1
wm
.
(b)
xlt xrt
w2
.
.
.
Figure: (a)Standard Range Tree (b)Query Region get partition into
O(log2
n) regions
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
Outline
1 Introduction
2 Background Knowledge
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
3 Problems Solved
Planar Range Maxima
Planar Range Convex Hull and Related problems
4 Conclusion and Future Work
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
Four Possible Range Successor queries
(a) (b)
(c) (d)
Figure: Four different types of range successor queries possible in a planeJatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
Compact Range Trees
Navarro & Nekrich in WADS 2012 proposed following result.
Lemma
There exists a data structure that uses O(n) space and answers
orthogonal range successor queries in O(log n) time.
We will use above result to answer all types of Range Successor
Queries.
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Problems Solved
Planar Range Skyline
2-sided Range Reporting
2-sided Range Counting
3-sided Range Reporting
3-sided Range Counting
Planar Range Convex hull
Othogonal Range Convex hull Reporting
Orthogonal Range Convex Hull Counting
Area of Convex hull in an Orthogonal Range
Perimater of Convex hull in an Orthogonal Range
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Common Challenge
Maintain order in more than one dimension
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Common Challenge
Maintain order in more than one dimension
Output sensitivity
Starting with finding all points in the range is not output
sensitive
Single-shot algorithm: O(log n + m) time, where m is the total
number of points inside the query range
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Outline
1 Introduction
2 Background Knowledge
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
3 Problems Solved
Planar Range Maxima
Planar Range Convex Hull and Related problems
4 Conclusion and Future Work
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Dominating or Maximalpoint
Point A = (xa, ya) is said to
dominate point B = (xb, yb)
iff xa > xb and ya > yb.
Maximal point or skyline point:
Whose North East quadrant is
empty.
Red point is Maximal point.
Maxima or skyline is used
interchangeably
Empty
Figure: Dominating point or
Maximal point or Skyline
point
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Maxima
x
y
Figure: Skyline of a finite set of points
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Planar Range Maxima
x
y
q
Figure: Range Maxima for a given orthogonal range query
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Orthogonal range maxima queries
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Problem Statements
Given a set S of n points in a plane and an orthogonal query Q of
the form [a, b] × [c, d] where [a, b] is a range on the x-axis and
[c, d] is a range on the y-axis, report the skyline points in S ∩ Q.
Problem 1: Report the skyline inside S ∩ Q. Here
Q = [a, +∞] × [c, +∞].
Problem 2: Count the number of points on the skyline of S ∩ Q.
Here Q = [a, +∞] × [c, +∞].
Problem 3: Report the skyline inside S ∩ Q. Here
Q = [a, +∞] × [c, d].
Problem 4: Count the number of points on the skyline of S ∩ Q.
Here Q = [a, +∞] × [c, d].
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Skyline in 2-sided and 3-sided queries
Infy
InfyInfy
(a,d)
(a,c)
pt
pb(a,c)
pt
pb
Figure: (a) 2-sided query unbounded on top and right (b) 3-sided query
unbounded on the right
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
2-sided Range Maxima
(a,c)
pt
pb
Figure: 2-sided query unbounded on top and right
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Preprocessing for 2-sided queries
Compute Single shot skyline on given set S of points and discard
remaining points.
Figure: Preprocessing on finite set S of points
Time complexity:O(n log n)
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Preprocessing Array for 2-sided queries
Construct range successor data structure D on this points.
Figure: Preprocessed on finite set S of points
Preprocessing Time complexity:O(n log n)
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
2-sided query
Given any query Q = [a, +∞] × [c, +∞].
query q=(a,c)
Figure: 2-sided query to unbounded on top and right
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Range Successor Query for Reporting
Find the point pt by making Range Successor query unbounded on
bottom.
pt
Figure: Range Successor query unbounded on bottom
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
2-sided Range Reporting
Keep reporting all the points from pt until we encounter some
point whose x co-ordinate is greater than a.
pt
(a,c)
Figure: 2-sided Range Reporting till x = a
Query Time complexity:O(log n + k) where is total number of
points reported. Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
2-sided Range counting
To solve counting problem we find point pb.
(a,c)
pt
pb
Figure: 2-sided Range Counting
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Range Successor Query for Counting
Find the point pt by making Range Successor query unbounded on
left.
pb
Figure: Range Successor query unbounded on left
Time complexity:O(log n)
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
2-sided Range counting
count = index[pt] − index[pb] + 1 takes constant O(1) time.
(a,c)
pt
pb
Figure: 2-sided Range Counting
Query Time complexity:O(log n)
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Our results on 2-sided queries
Theorem
Given a set S of n points in R2, we can pre-process S into a data
structure of size O(n) in time O(n log n) such that, given an
2-sided query Q = [a, ∞] × [c, ∞], we can report/count the
maximal points of S ∩ Q in time O(log n + k)/O(log n), where k
is the number of points reported.
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Finite set of points on a plane
Figure: Finite Set S of points in 2d-plane
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Preprocessing for 3-sided queries
Point with maximum y
co-ordinate in South-west
quadrant of point pi is its
next maximal point
Every point in set S is
pointing to its next maximal
point in array next
Construct range successor
data structure D on this
points.
Takes preprocessing
O(n log n) time.
Infy
InfyInfy
Figure: Preprocessing 3-sided
maxima queries
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
3-sided Reporting query
Report the skyline inside S ∩ Q. Here Q = [a, +∞] × [c, d].
Infy
InfyInfy
(a,d)
(a,c)
Figure: 3-sided query to find maxima
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
3-sided Range Reporting
Find the point pt by making Range Successor query unbounded on
bottom.
Infy
InfyInfy
(a,d)
(a,c)
pt
Figure: 3-sided Range Reporting requires point pt
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Range Successor Query for Reporting
Find the point pt by making Range Successor query unbounded on
bottom.
pt
Figure: Range Successor query unbounded on bottom
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
3-sided Range Reporting
Keep reporting all the points from pt until we encounter some
point whose x co-ordinate is greater than a.
Infy
InfyInfy
(a,d)
(a,c)
pt
Figure: 3-sided Range Reporting requires point pt
Query Time complexity:O(log n + k)
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
3-sided Range counting
Report then count is not output sensitive.
Infy
InfyInfy
(a,d)
(a,c)
pt
pb
Figure: 3-sided Range Counting
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Preprocessing for 3-sided Counting
We store a level count of maximal as shown in figure.
Infy
InfyInfy
1
2
1
2
3
4
5
6
34
5
3
4
5
4
56
123
Figure: Range Successor query unbounded on left
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Range Successor Query for Counting
We find point pb using range successor query as shown.
pb
Figure: Range Successor query unbounded on left
Time complexity:O(log n)
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
3-sided Range counting
count =
count[pt] − count[pb] + 1
takes constant O(1) time.
In this example count is
3 = 4 − 1 + 1.
Time complexity:O(log n)
Infy
InfyInfy
1
2
1
2
3
4
5
6
3
4
5
3
4
5
4
56
12
3
pt
pb
(a,d)
(a,c)
Figure: 3-sided Range Counting
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Our Results
Query Type Query Time Storage Space
2-sided Range Reporting O(log n + k) O(n)
2-sided Range Counting O(log n) O(n)
3-sided Range Reporting O(log n + k) O(n)
3-sided Range Reporting O(log n) O(n)
Table: Our Results of Planar Range Skyline Problem
Our results holds only for queries which are either unbounded on
top(and right) or right.
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Conjecture
Conjecture
Given a set S of n points in R2, it may be possible to pre-process
S into a data structure of size O(n log n) in time O(n log n) such
that, given an 4-sided orthogonal query Q = [a, b] × [c, d], we can
report and count the number of maximal points of S ∩ Q in time
O(log n + k) and O(log n + k) respectively.
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Outline
1 Introduction
2 Background Knowledge
Output Sensitvity
Computation Models
Range Search
Orthogonal Range Successor Queries
3 Problems Solved
Planar Range Maxima
Planar Range Convex Hull and Related problems
4 Conclusion and Future Work
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Green Nails on a board
Given point set of size n in a plane.
Figure: Finite set of points
Consider green Nails as shown in the figure. Stretch and leave a
rubber band on this green nails.
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Convex Hull
Points on the rubber band forms Convex Hull.
Figure: Finite set of points
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Problem Statements
We are given a set P of n points in R2 and a query
q = [xlt, xrt] × [yb, yt]. We wish to pre-process P into a data
structure such that given an orthogonal query region q, we can
efficiently
Problem 1: Report the points on convex hull of P ∩ q.
Problem 2: Count the number of points on the convex hull of
P ∩ q.
Problem 3: Find the area of the convex hull of P ∩ q.
Problem 4: Find the perimeter of the convex hull of P ∩ q.
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Planar Range Convex Hull
q
Figure: Range Convex hull for a given query
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Challenges
Output sensitivity
Reporting and computing convex hull takes time
O(log n + m log h) where m is total number of point on q and
h is points on the convex hull.
Counting/Area/Perimeter by actually reporting all points on
hull is not output sensitive
Output size is O(1)
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Challenges
Output sensitivity
Reporting and computing convex hull takes time
O(log n + m log h) where m is total number of point on q and
h is points on the convex hull.
Counting/Area/Perimeter by actually reporting all points on
hull is not output sensitive
Output size is O(1)
Space constraint
Total number of possible query ranges is O(n4
)
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Preliminaries
Combining two disjoint convex
hulls:
Only the common outer
tangents(bridges) need to be
computed
Can be done in O(log n)
(Overmars and van Leeuwen
1994)
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Preliminaries
Convex hull can be divided
into 4 parts based on
extreme points
We will compute the ”Upper
Right Convex Hull”
(urc-hull)
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Preprocessing
Use a standard 2D range
tree.
In each node, store the
convex hull of all points in
that subtree
A query is split into O(log n)
horizontal regions, each
further split into O(log n)
vertical regions (”blocks”)
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Crux Idea
Total of O(log2
n) nodes per
query
Do polygon version of
Graham’s scan
Takes time O(log3
n + h)
time per query, where h is
the number of points on the
hull
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Efficient processing
Many blocks can be
discarded from the urc-hull
without processing
Non
Empty
Block
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Worst Case
Define ”candidate block” as
a non-empty block which is
not discarded
Worst case we still have
O(log2
n) candidate blocks
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Analysis
Range tree divides query into O(log2
n) region
Merging two convex hull takes O(log n) time
Linear Merging of O(log2
n) hulls in query region takes
O(log3
n)
Reporting takes O(h) time where h is total number points on
the convex hull
Therefore it takes O(log3
n + h) for convex hull points in S ∩ q
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Convex Hull as an Cyclic Array
Points on the convex hull
are stored as an array A.
Points in the array are
stored in Anti-clockwise
direction as shown in figure.
Starting from Maximum y
co-ordinate to minimum y
co-ordinate and vice versa.
p1
p2
p3
p4
p6
p5
p7
p10
p8
p9
p11
p4 p2 p1 p5 p9 p11 p8
A
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Counting points on a Convex hull
Each candidate convex hull
contribute some part from
array A.
Difference of indices at this
boundaries gives us the
count.
For example
index[p8] − index[p9] + 1 as
shown in figure.
Therefore computing count
for candidate convex hull
takes O(1) time.
p1
p2
p3
p4
p6
p5
p7
p10
p8
p9
p11
p4 p2 p1 p5 p9 p11 p8
A
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Perimeter of the convex hull
We store commutative sum
of perimeter in Array P.
Each candidate convex hull
contribute some perimeter
to total perimeter A.
Difference of indices at this
boundaries gives us the
perimeteri .
P[p8] − P[p9] + 1 gives
perimeter as shown in figure.
Therefore computing
perimeteri for candidate
convex hull takes O(1) time.
p1
p2
p3
p4
p6
p5
p7
p10
p8
p9
p11
p4 p2 p1 p5 p9 p11 p8
A
p42 p41 p43 p46 p411 p48 p44P
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Area of the convex hull
We store commutative sum of areas in Array Ar.
Each candidate convex hull contribute some area to total area
A.
Difference of indices at this boundaries gives us the areai .
Therefore computing areai for candidate convex hull takes
O(1) time.
1
2
3
4
5
6
7
1
2
3
4
5
6
7
Figure: Finite set of pointsJatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Previous Work
Brass et. al. gave first results on Planar Range Convex hull
problem.
Query Type Query Time Storage Space
Reporting O(log5
n + h) O(n log2
n)
Area O(log5
n) O(n log2
n)
Table: Previous Work on Convex hull and Related problems
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Planar Range Maxima
Planar Range Convex Hull and Related problems
Our Results
We studied Counting and Perimeter problem for the first time in
the literature.
Query Type Query Time Storage Space
Reporting O(log3
n + h) O(n log2
n)
Counting O(log3
n) O(n log2
n)
Area O(log3
n) O(n log2
n)
Perimeter O(log3
n) O(n log2
n)
Table: Our Results of Planar Range Convex hull and Related problems
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Conclusion
Skyline and Convex Hull provides ordering in higher
dimensions.
Planar Range provides searching in higher dimensions
Our structures are efficient for large number of queries.
Our structure provides information like count, area and
perimeter without processing individual data elements.
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Future Work
Generalization: Categorization can be made by assigning
colors to each point and find distinct colors.
Other models of Computation: Studying both planar range
maxima and planar range convex hull in the cell-probe model
to understand lower bound.
Higher Dimensions: Interesting to see this problems in
dimensions greater than two.
Dynamism: Solving on dynamic point sets.
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Related Work
Improved bounds for Smallest Enclosing Disk Range
Queries(Accepted as full paper), Sankalp Khare, Jatin
Agarwal, Nadeem Moidu, and Kannan Srinathan Conference:
To appear in the proceedings of the 16th Japan Conference on
Discrete and Computational Geometry and Graphs
(JCDCG22013)
Efficient Range Reporting of Convex Hull(Submitted as
e-print), Jatin Agarwal, Nadeem Moidu, Kishore Kothapalli
and Kannan Srinathan Conference: Computing Research
Repository(CoRR)
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Related Work
Planar Convex Hull Range Query and Related
Problems(Accepted as full paper), Nadeem Moidu, Jatin
Agarwal and Kishore Kothapalli Conference: To appear in
proceedings of the 25th Canadian Conference on
Computational Geometry(CCCG 2013)
On Counting Range Maxima Points in Plane (Accepted as full
paper), Anil Kishore Kalavagattu, Jatin Agarwal, Ananda
Swarup Das, and Kishore Kothapalli. Conference: The 23rd
International Workshop on Combinatorial Algorithms(IWOCA
2012)
Range Aggregate Maximal Points in the Plane. (Accepted as
full paper), Ananda Swarup Das, Prosenjit Gupta, Anil
Kishore Kalavagattu, Jatin Agarwal, Kannan Srinathan,
Kishore Kothapalli. Conference: The 6th Workshop on
Algorithms and Computation(WALCOM 2012)Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
Introduction
Background Knowledge
Problems Solved
Conclusion and Future Work
Thank You!
Questions?
Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr

More Related Content

What's hot

Matrix and Tensor Tools for Computer Vision
Matrix and Tensor Tools for Computer VisionMatrix and Tensor Tools for Computer Vision
Matrix and Tensor Tools for Computer VisionActiveEon
 
Dynamic approach to k means clustering algorithm-2
Dynamic approach to k means clustering algorithm-2Dynamic approach to k means clustering algorithm-2
Dynamic approach to k means clustering algorithm-2IAEME Publication
 
Log Analytics in Datacenter with Apache Spark and Machine Learning
Log Analytics in Datacenter with Apache Spark and Machine LearningLog Analytics in Datacenter with Apache Spark and Machine Learning
Log Analytics in Datacenter with Apache Spark and Machine LearningPiotr Tylenda
 
How principal components analysis is different from factor
How principal components analysis is different from factorHow principal components analysis is different from factor
How principal components analysis is different from factorArup Guha
 
Evaluation of Uncertain Location
Evaluation of Uncertain Location Evaluation of Uncertain Location
Evaluation of Uncertain Location IOSR Journals
 
Master Defense Slides (translated)
Master Defense Slides (translated)Master Defense Slides (translated)
Master Defense Slides (translated)Francis Piéraut
 
Neural Networks: Multilayer Perceptron
Neural Networks: Multilayer PerceptronNeural Networks: Multilayer Perceptron
Neural Networks: Multilayer PerceptronMostafa G. M. Mostafa
 
Premeditated Initial Points for K-Means Clustering
Premeditated Initial Points for K-Means ClusteringPremeditated Initial Points for K-Means Clustering
Premeditated Initial Points for K-Means ClusteringIJCSIS Research Publications
 
Neural Networks: Support Vector machines
Neural Networks: Support Vector machinesNeural Networks: Support Vector machines
Neural Networks: Support Vector machinesMostafa G. M. Mostafa
 
Machine Learning and Real-World Applications
Machine Learning and Real-World ApplicationsMachine Learning and Real-World Applications
Machine Learning and Real-World ApplicationsMachinePulse
 
Methods of Manifold Learning for Dimension Reduction of Large Data Sets
Methods of Manifold Learning for Dimension Reduction of Large Data SetsMethods of Manifold Learning for Dimension Reduction of Large Data Sets
Methods of Manifold Learning for Dimension Reduction of Large Data SetsRyan B Harvey, CSDP, CSM
 
Backtracking based integer factorisation, primality testing and square root c...
Backtracking based integer factorisation, primality testing and square root c...Backtracking based integer factorisation, primality testing and square root c...
Backtracking based integer factorisation, primality testing and square root c...csandit
 
An adaptive-model-for-blind-image-restoration-using-bayesian-approach
An adaptive-model-for-blind-image-restoration-using-bayesian-approachAn adaptive-model-for-blind-image-restoration-using-bayesian-approach
An adaptive-model-for-blind-image-restoration-using-bayesian-approachCemal Ardil
 
Machine Learning Unit 4 Semester 3 MSc IT Part 2 Mumbai University
Machine Learning Unit 4 Semester 3  MSc IT Part 2 Mumbai UniversityMachine Learning Unit 4 Semester 3  MSc IT Part 2 Mumbai University
Machine Learning Unit 4 Semester 3 MSc IT Part 2 Mumbai UniversityMadhav Mishra
 
K mer index of dna sequence based on hash
K mer index of dna sequence based on hashK mer index of dna sequence based on hash
K mer index of dna sequence based on hashijcsa
 

What's hot (18)

Matrix and Tensor Tools for Computer Vision
Matrix and Tensor Tools for Computer VisionMatrix and Tensor Tools for Computer Vision
Matrix and Tensor Tools for Computer Vision
 
CLIM Program: Remote Sensing Workshop, Optimization for Distributed Data Syst...
CLIM Program: Remote Sensing Workshop, Optimization for Distributed Data Syst...CLIM Program: Remote Sensing Workshop, Optimization for Distributed Data Syst...
CLIM Program: Remote Sensing Workshop, Optimization for Distributed Data Syst...
 
Dynamic approach to k means clustering algorithm-2
Dynamic approach to k means clustering algorithm-2Dynamic approach to k means clustering algorithm-2
Dynamic approach to k means clustering algorithm-2
 
Log Analytics in Datacenter with Apache Spark and Machine Learning
Log Analytics in Datacenter with Apache Spark and Machine LearningLog Analytics in Datacenter with Apache Spark and Machine Learning
Log Analytics in Datacenter with Apache Spark and Machine Learning
 
How principal components analysis is different from factor
How principal components analysis is different from factorHow principal components analysis is different from factor
How principal components analysis is different from factor
 
Evaluation of Uncertain Location
Evaluation of Uncertain Location Evaluation of Uncertain Location
Evaluation of Uncertain Location
 
Master Defense Slides (translated)
Master Defense Slides (translated)Master Defense Slides (translated)
Master Defense Slides (translated)
 
Neural Networks: Multilayer Perceptron
Neural Networks: Multilayer PerceptronNeural Networks: Multilayer Perceptron
Neural Networks: Multilayer Perceptron
 
Premeditated Initial Points for K-Means Clustering
Premeditated Initial Points for K-Means ClusteringPremeditated Initial Points for K-Means Clustering
Premeditated Initial Points for K-Means Clustering
 
Neural Networks: Support Vector machines
Neural Networks: Support Vector machinesNeural Networks: Support Vector machines
Neural Networks: Support Vector machines
 
Machine Learning and Real-World Applications
Machine Learning and Real-World ApplicationsMachine Learning and Real-World Applications
Machine Learning and Real-World Applications
 
Al04605265270
Al04605265270Al04605265270
Al04605265270
 
Methods of Manifold Learning for Dimension Reduction of Large Data Sets
Methods of Manifold Learning for Dimension Reduction of Large Data SetsMethods of Manifold Learning for Dimension Reduction of Large Data Sets
Methods of Manifold Learning for Dimension Reduction of Large Data Sets
 
Backtracking based integer factorisation, primality testing and square root c...
Backtracking based integer factorisation, primality testing and square root c...Backtracking based integer factorisation, primality testing and square root c...
Backtracking based integer factorisation, primality testing and square root c...
 
An adaptive-model-for-blind-image-restoration-using-bayesian-approach
An adaptive-model-for-blind-image-restoration-using-bayesian-approachAn adaptive-model-for-blind-image-restoration-using-bayesian-approach
An adaptive-model-for-blind-image-restoration-using-bayesian-approach
 
Machine Learning Unit 4 Semester 3 MSc IT Part 2 Mumbai University
Machine Learning Unit 4 Semester 3  MSc IT Part 2 Mumbai UniversityMachine Learning Unit 4 Semester 3  MSc IT Part 2 Mumbai University
Machine Learning Unit 4 Semester 3 MSc IT Part 2 Mumbai University
 
CSC446: Pattern Recognition (LN6)
CSC446: Pattern Recognition (LN6)CSC446: Pattern Recognition (LN6)
CSC446: Pattern Recognition (LN6)
 
K mer index of dna sequence based on hash
K mer index of dna sequence based on hashK mer index of dna sequence based on hash
K mer index of dna sequence based on hash
 

Viewers also liked

профільність
профільністьпрофільність
профільністьdirektor8
 
Popis aboliranih četnika
Popis aboliranih četnikaPopis aboliranih četnika
Popis aboliranih četnikaAlen Mihelčić
 
Gaidžio koplyčia
Gaidžio koplyčiaGaidžio koplyčia
Gaidžio koplyčiaSalantug
 
Gimnazijos muziejus
Gimnazijos muziejusGimnazijos muziejus
Gimnazijos muziejusSalantug
 
методичні посібники вчителів
методичні посібники вчителівметодичні посібники вчителів
методичні посібники вчителівdirektor8
 
Загальноосвітня школа І-ІІІ ступенів №8 Димитровської міської ради Донецької ...
Загальноосвітня школа І-ІІІ ступенів №8 Димитровської міської ради Донецької ...Загальноосвітня школа І-ІІІ ступенів №8 Димитровської міської ради Донецької ...
Загальноосвітня школа І-ІІІ ступенів №8 Димитровської міської ради Донецької ...direktor8
 
Projektas salantai
Projektas salantaiProjektas salantai
Projektas salantaiSalantug
 
Salantų apylinkės
Salantų apylinkėsSalantų apylinkės
Salantų apylinkėsSalantug
 
управління процесом
управління процесомуправління процесом
управління процесомdirektor8
 
Popis martićeve milicije
Popis martićeve milicijePopis martićeve milicije
Popis martićeve milicijeAlen Mihelčić
 
мо української мови та літератури зош № 8
мо української мови та літератури зош № 8мо української мови та літератури зош № 8
мо української мови та літератури зош № 8direktor8
 

Viewers also liked (15)

профільність
профільністьпрофільність
профільність
 
Arsenta
ArsentaArsenta
Arsenta
 
Popis aboliranih četnika
Popis aboliranih četnikaPopis aboliranih četnika
Popis aboliranih četnika
 
Gaidžio koplyčia
Gaidžio koplyčiaGaidžio koplyčia
Gaidžio koplyčia
 
Gimnazijos muziejus
Gimnazijos muziejusGimnazijos muziejus
Gimnazijos muziejus
 
методичні посібники вчителів
методичні посібники вчителівметодичні посібники вчителів
методичні посібники вчителів
 
Cetnici
CetniciCetnici
Cetnici
 
Загальноосвітня школа І-ІІІ ступенів №8 Димитровської міської ради Донецької ...
Загальноосвітня школа І-ІІІ ступенів №8 Димитровської міської ради Донецької ...Загальноосвітня школа І-ІІІ ступенів №8 Димитровської міської ради Донецької ...
Загальноосвітня школа І-ІІІ ступенів №8 Димитровської міської ради Донецької ...
 
Graduationpresentationicbt
GraduationpresentationicbtGraduationpresentationicbt
Graduationpresentationicbt
 
Projektas salantai
Projektas salantaiProjektas salantai
Projektas salantai
 
Salantų apylinkės
Salantų apylinkėsSalantų apylinkės
Salantų apylinkės
 
MS Thesis
MS ThesisMS Thesis
MS Thesis
 
управління процесом
управління процесомуправління процесом
управління процесом
 
Popis martićeve milicije
Popis martićeve milicijePopis martićeve milicije
Popis martićeve milicije
 
мо української мови та літератури зош № 8
мо української мови та літератури зош № 8мо української мови та літератури зош № 8
мо української мови та літератури зош № 8
 

Similar to Efficient Data Structures and Algorithms for Range Aggregate Problems

Safety Verification of Deep Neural Networks_.pdf
Safety Verification of Deep Neural Networks_.pdfSafety Verification of Deep Neural Networks_.pdf
Safety Verification of Deep Neural Networks_.pdfPolytechnique Montréal
 
Doctoral Thesis Dissertation 2014-03-20 @PoliMi
Doctoral Thesis Dissertation 2014-03-20 @PoliMiDoctoral Thesis Dissertation 2014-03-20 @PoliMi
Doctoral Thesis Dissertation 2014-03-20 @PoliMiDavide Chicco
 
FPGA Implementation of a GA
FPGA Implementation of a GAFPGA Implementation of a GA
FPGA Implementation of a GAHocine Merabti
 
Keynote at IWLS 2017
Keynote at IWLS 2017Keynote at IWLS 2017
Keynote at IWLS 2017Manish Pandey
 
Experiments on Design Pattern Discovery
Experiments on Design Pattern DiscoveryExperiments on Design Pattern Discovery
Experiments on Design Pattern DiscoveryTim Menzies
 
Data Science and Machine Learning with Tensorflow
 Data Science and Machine Learning with Tensorflow Data Science and Machine Learning with Tensorflow
Data Science and Machine Learning with TensorflowShubham Sharma
 
background.pptx
background.pptxbackground.pptx
background.pptxKabileshCm
 
Svd filtered temporal usage clustering
Svd filtered temporal usage clusteringSvd filtered temporal usage clustering
Svd filtered temporal usage clusteringLiang Xie, PhD
 
Kernal based speaker specific feature extraction and its applications in iTau...
Kernal based speaker specific feature extraction and its applications in iTau...Kernal based speaker specific feature extraction and its applications in iTau...
Kernal based speaker specific feature extraction and its applications in iTau...TELKOMNIKA JOURNAL
 
SVD and the Netflix Dataset
SVD and the Netflix DatasetSVD and the Netflix Dataset
SVD and the Netflix DatasetBen Mabey
 
An Optimized Parallel Algorithm for Longest Common Subsequence Using Openmp –...
An Optimized Parallel Algorithm for Longest Common Subsequence Using Openmp –...An Optimized Parallel Algorithm for Longest Common Subsequence Using Openmp –...
An Optimized Parallel Algorithm for Longest Common Subsequence Using Openmp –...IRJET Journal
 
Hands-on Tutorial of Machine Learning in Python
Hands-on Tutorial of Machine Learning in PythonHands-on Tutorial of Machine Learning in Python
Hands-on Tutorial of Machine Learning in PythonChun-Ming Chang
 
Recognition of Handwritten Mathematical Equations
Recognition of  Handwritten Mathematical EquationsRecognition of  Handwritten Mathematical Equations
Recognition of Handwritten Mathematical EquationsIRJET Journal
 
Compressing Graphs and Indexes with Recursive Graph Bisection
Compressing Graphs and Indexes with Recursive Graph Bisection Compressing Graphs and Indexes with Recursive Graph Bisection
Compressing Graphs and Indexes with Recursive Graph Bisection aftab alam
 
Learning Algorithms For A Specific Configuration Of The Quantron
Learning Algorithms For A Specific Configuration Of The QuantronLearning Algorithms For A Specific Configuration Of The Quantron
Learning Algorithms For A Specific Configuration Of The Quantronsdemontigny
 
Software tookits for machine learning and graphical models
Software tookits for machine learning and graphical modelsSoftware tookits for machine learning and graphical models
Software tookits for machine learning and graphical modelsbutest
 
Machine Learning Notes for beginners ,Step by step
Machine Learning Notes for beginners ,Step by stepMachine Learning Notes for beginners ,Step by step
Machine Learning Notes for beginners ,Step by stepSanjanaSaxena17
 
Introduction to Machine Learning with SciKit-Learn
Introduction to Machine Learning with SciKit-LearnIntroduction to Machine Learning with SciKit-Learn
Introduction to Machine Learning with SciKit-LearnBenjamin Bengfort
 

Similar to Efficient Data Structures and Algorithms for Range Aggregate Problems (20)

Safety Verification of Deep Neural Networks_.pdf
Safety Verification of Deep Neural Networks_.pdfSafety Verification of Deep Neural Networks_.pdf
Safety Verification of Deep Neural Networks_.pdf
 
chapter 1
chapter 1chapter 1
chapter 1
 
Doctoral Thesis Dissertation 2014-03-20 @PoliMi
Doctoral Thesis Dissertation 2014-03-20 @PoliMiDoctoral Thesis Dissertation 2014-03-20 @PoliMi
Doctoral Thesis Dissertation 2014-03-20 @PoliMi
 
FPGA Implementation of a GA
FPGA Implementation of a GAFPGA Implementation of a GA
FPGA Implementation of a GA
 
Keynote at IWLS 2017
Keynote at IWLS 2017Keynote at IWLS 2017
Keynote at IWLS 2017
 
Experiments on Design Pattern Discovery
Experiments on Design Pattern DiscoveryExperiments on Design Pattern Discovery
Experiments on Design Pattern Discovery
 
Data Science and Machine Learning with Tensorflow
 Data Science and Machine Learning with Tensorflow Data Science and Machine Learning with Tensorflow
Data Science and Machine Learning with Tensorflow
 
Chapter two
Chapter twoChapter two
Chapter two
 
background.pptx
background.pptxbackground.pptx
background.pptx
 
Svd filtered temporal usage clustering
Svd filtered temporal usage clusteringSvd filtered temporal usage clustering
Svd filtered temporal usage clustering
 
Kernal based speaker specific feature extraction and its applications in iTau...
Kernal based speaker specific feature extraction and its applications in iTau...Kernal based speaker specific feature extraction and its applications in iTau...
Kernal based speaker specific feature extraction and its applications in iTau...
 
SVD and the Netflix Dataset
SVD and the Netflix DatasetSVD and the Netflix Dataset
SVD and the Netflix Dataset
 
An Optimized Parallel Algorithm for Longest Common Subsequence Using Openmp –...
An Optimized Parallel Algorithm for Longest Common Subsequence Using Openmp –...An Optimized Parallel Algorithm for Longest Common Subsequence Using Openmp –...
An Optimized Parallel Algorithm for Longest Common Subsequence Using Openmp –...
 
Hands-on Tutorial of Machine Learning in Python
Hands-on Tutorial of Machine Learning in PythonHands-on Tutorial of Machine Learning in Python
Hands-on Tutorial of Machine Learning in Python
 
Recognition of Handwritten Mathematical Equations
Recognition of  Handwritten Mathematical EquationsRecognition of  Handwritten Mathematical Equations
Recognition of Handwritten Mathematical Equations
 
Compressing Graphs and Indexes with Recursive Graph Bisection
Compressing Graphs and Indexes with Recursive Graph Bisection Compressing Graphs and Indexes with Recursive Graph Bisection
Compressing Graphs and Indexes with Recursive Graph Bisection
 
Learning Algorithms For A Specific Configuration Of The Quantron
Learning Algorithms For A Specific Configuration Of The QuantronLearning Algorithms For A Specific Configuration Of The Quantron
Learning Algorithms For A Specific Configuration Of The Quantron
 
Software tookits for machine learning and graphical models
Software tookits for machine learning and graphical modelsSoftware tookits for machine learning and graphical models
Software tookits for machine learning and graphical models
 
Machine Learning Notes for beginners ,Step by step
Machine Learning Notes for beginners ,Step by stepMachine Learning Notes for beginners ,Step by step
Machine Learning Notes for beginners ,Step by step
 
Introduction to Machine Learning with SciKit-Learn
Introduction to Machine Learning with SciKit-LearnIntroduction to Machine Learning with SciKit-Learn
Introduction to Machine Learning with SciKit-Learn
 

Recently uploaded

CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...henrik385807
 
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort ServiceDelhi Call girls
 
Open Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdf
Open Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdfOpen Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdf
Open Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdfhenrik385807
 
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara ServicesVVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara ServicesPooja Nehwal
 
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdfCTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdfhenrik385807
 
Microsoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AIMicrosoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AITatiana Gurgel
 
George Lever - eCommerce Day Chile 2024
George Lever -  eCommerce Day Chile 2024George Lever -  eCommerce Day Chile 2024
George Lever - eCommerce Day Chile 2024eCommerce Institute
 
ANCHORING SCRIPT FOR A CULTURAL EVENT.docx
ANCHORING SCRIPT FOR A CULTURAL EVENT.docxANCHORING SCRIPT FOR A CULTURAL EVENT.docx
ANCHORING SCRIPT FOR A CULTURAL EVENT.docxNikitaBankoti2
 
Russian Call Girls in Kolkata Vaishnavi 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Vaishnavi 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Vaishnavi 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Vaishnavi 🤌 8250192130 🚀 Vip Call Girls Kolkataanamikaraghav4
 
Mathematics of Finance Presentation.pptx
Mathematics of Finance Presentation.pptxMathematics of Finance Presentation.pptx
Mathematics of Finance Presentation.pptxMoumonDas2
 
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )Pooja Nehwal
 
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...Salam Al-Karadaghi
 
Presentation on Engagement in Book Clubs
Presentation on Engagement in Book ClubsPresentation on Engagement in Book Clubs
Presentation on Engagement in Book Clubssamaasim06
 
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...Pooja Nehwal
 
OSCamp Kubernetes 2024 | A Tester's Guide to CI_CD as an Automated Quality Co...
OSCamp Kubernetes 2024 | A Tester's Guide to CI_CD as an Automated Quality Co...OSCamp Kubernetes 2024 | A Tester's Guide to CI_CD as an Automated Quality Co...
OSCamp Kubernetes 2024 | A Tester's Guide to CI_CD as an Automated Quality Co...NETWAYS
 
Thirunelveli call girls Tamil escorts 7877702510
Thirunelveli call girls Tamil escorts 7877702510Thirunelveli call girls Tamil escorts 7877702510
Thirunelveli call girls Tamil escorts 7877702510Vipesco
 
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptxMohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptxmohammadalnahdi22
 
Introduction to Prompt Engineering (Focusing on ChatGPT)
Introduction to Prompt Engineering (Focusing on ChatGPT)Introduction to Prompt Engineering (Focusing on ChatGPT)
Introduction to Prompt Engineering (Focusing on ChatGPT)Chameera Dedduwage
 
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779Night 7k Call Girls Noida Sector 128 Call Me: 8448380779
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779Delhi Call girls
 
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...Hasting Chen
 

Recently uploaded (20)

CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
 
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
 
Open Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdf
Open Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdfOpen Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdf
Open Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdf
 
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara ServicesVVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
 
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdfCTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
 
Microsoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AIMicrosoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AI
 
George Lever - eCommerce Day Chile 2024
George Lever -  eCommerce Day Chile 2024George Lever -  eCommerce Day Chile 2024
George Lever - eCommerce Day Chile 2024
 
ANCHORING SCRIPT FOR A CULTURAL EVENT.docx
ANCHORING SCRIPT FOR A CULTURAL EVENT.docxANCHORING SCRIPT FOR A CULTURAL EVENT.docx
ANCHORING SCRIPT FOR A CULTURAL EVENT.docx
 
Russian Call Girls in Kolkata Vaishnavi 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Vaishnavi 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Vaishnavi 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Vaishnavi 🤌 8250192130 🚀 Vip Call Girls Kolkata
 
Mathematics of Finance Presentation.pptx
Mathematics of Finance Presentation.pptxMathematics of Finance Presentation.pptx
Mathematics of Finance Presentation.pptx
 
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
 
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
 
Presentation on Engagement in Book Clubs
Presentation on Engagement in Book ClubsPresentation on Engagement in Book Clubs
Presentation on Engagement in Book Clubs
 
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
 
OSCamp Kubernetes 2024 | A Tester's Guide to CI_CD as an Automated Quality Co...
OSCamp Kubernetes 2024 | A Tester's Guide to CI_CD as an Automated Quality Co...OSCamp Kubernetes 2024 | A Tester's Guide to CI_CD as an Automated Quality Co...
OSCamp Kubernetes 2024 | A Tester's Guide to CI_CD as an Automated Quality Co...
 
Thirunelveli call girls Tamil escorts 7877702510
Thirunelveli call girls Tamil escorts 7877702510Thirunelveli call girls Tamil escorts 7877702510
Thirunelveli call girls Tamil escorts 7877702510
 
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptxMohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptx
 
Introduction to Prompt Engineering (Focusing on ChatGPT)
Introduction to Prompt Engineering (Focusing on ChatGPT)Introduction to Prompt Engineering (Focusing on ChatGPT)
Introduction to Prompt Engineering (Focusing on ChatGPT)
 
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779Night 7k Call Girls Noida Sector 128 Call Me: 8448380779
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779
 
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
 

Efficient Data Structures and Algorithms for Range Aggregate Problems

  • 1. Introduction Background Knowledge Problems Solved Conclusion and Future Work Efficient Data Structures and Algorithms for Range Aggregate Problems Jatin Agarwal Advisor: Dr. Kannan Srinathan and Dr. Kishore Kothapalli CSTAR, IIIT Hyderabad November 27, 2013 Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 2. Introduction Background Knowledge Problems Solved Conclusion and Future Work Computational Geometry What is Computational Geometry? Study of Geometric Algorithms Why study CG? Geometric problems arise in the field of databases, Geographical Information Systems (GIS), graphics, VLSI etc. Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 3. Introduction Background Knowledge Problems Solved Conclusion and Future Work Classic problems In Health GIS there is a need to demarcate disease infected areas. Figure: Convex hull of a finite set of points Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 4. Introduction Background Knowledge Problems Solved Conclusion and Future Work Classic Problems Problem of finding closest pair w.r.t Euclidean distance. Figure: Closest pair of a finite set of points Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 5. Introduction Background Knowledge Problems Solved Conclusion and Future Work Classic Problems Location based services (finding the nearest restaurant or the nearest theater) Figure: Nearest neighbour problem. This lead to discovery of Voronoi diagram Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 6. Introduction Background Knowledge Problems Solved Conclusion and Future Work Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries Outline 1 Introduction 2 Background Knowledge Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries 3 Problems Solved Planar Range Maxima Planar Range Convex Hull and Related problems 4 Conclusion and Future Work Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 7. Introduction Background Knowledge Problems Solved Conclusion and Future Work Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries Example Given an unsorted array of n numbers and any given query q = [a, b] report all the numbers x in range a < x < b. 5 9 3 1 7 6 4 12 2 Figure: Unsorted Array of Numbers Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 8. Introduction Background Knowledge Problems Solved Conclusion and Future Work Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries Naive Algorithm Scan the whole Array !! Query time: O(n). Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 9. Introduction Background Knowledge Problems Solved Conclusion and Future Work Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries Smart Algorithm Preprocessing Step: Sort the Array. Query Algorithm: Binary Search ! Query Time: O(log n + k) 1 2 3 4 5 6 7 9 12 Figure: Unsorted Array of Numbers Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 10. Introduction Background Knowledge Problems Solved Conclusion and Future Work Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries Output Sensitive Reporting Problem: Lower bound of ω(k) query time, where k are the number of items reported. Objective: O(f (n) + k), where f (n) is a small value. An algorithm which satisfies this objective is considered output-sensitive. Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 11. Introduction Background Knowledge Problems Solved Conclusion and Future Work Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries Outline 1 Introduction 2 Background Knowledge Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries 3 Problems Solved Planar Range Maxima Planar Range Convex Hull and Related problems 4 Conclusion and Future Work Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 12. Introduction Background Knowledge Problems Solved Conclusion and Future Work Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries Ways to Compute All results in this thesis are either on Comparison Based Model or word-RAM models. Cell Probe Transdichotomous RAM AC RAM0 Word RAM Pointer Machine BST Pentium RAM Figure: Hierarchy of the Computation models Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 13. Introduction Background Knowledge Problems Solved Conclusion and Future Work Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries Models Cell Probe Model: Used for proving lower bounds as we pay for each memory operation. Word RAM Model: word-size on computer changes with input size n. Comparison Based Model: Only Comparison is only allowed operation. Pointer Machine Model: Described by a directed graph with constant branching factor. Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 14. Introduction Background Knowledge Problems Solved Conclusion and Future Work Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries Outline 1 Introduction 2 Background Knowledge Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries 3 Problems Solved Planar Range Maxima Planar Range Convex Hull and Related problems 4 Conclusion and Future Work Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 15. Introduction Background Knowledge Problems Solved Conclusion and Future Work Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries Applications Range Tree has tremendous applications in : GIS Databases VLSI Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 16. Introduction Background Knowledge Problems Solved Conclusion and Future Work Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries Range Query X Y q Figure: Two dimensional Range Tree S is the set of given points and q is the query hyperbox. The objective is to efficiently report count Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 17. Introduction Background Knowledge Problems Solved Conclusion and Future Work Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries Range Searching How do we solve this problem? Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 18. Introduction Background Knowledge Problems Solved Conclusion and Future Work Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries Naive Technique Linear Scan of the database. O(n) query time. No pre-processing involved. Not output sensitive !!! Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 19. Introduction Background Knowledge Problems Solved Conclusion and Future Work Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries Reduction to Binary Search Preprocessing step: Build a binary search tree T on the x-coordinates of the points. Query algorithm: T is queried with qx and filter the points. Query time: O(log n + |S ∩ qx |). Not good if |S ∩ qx | >> k. Therefore, there was a need to build efficient data structures. Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 20. Introduction Background Knowledge Problems Solved Conclusion and Future Work Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries Popular Structures for Range Searching Reporting data structures Query Type Query Time Storage Space query region Range Tree O(logd−1 n + k) O(n logd n) Orthogonal kd-Tree O(log1−1/d n + k) O(n) arbitrary Table: n is the number of points, d is the dimensional space and k is the size of the output Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 21. Introduction Background Knowledge Problems Solved Conclusion and Future Work Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries Range Tree Example Figure: Two dimensional Range Tree Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 22. Introduction Background Knowledge Problems Solved Conclusion and Future Work Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries Partition based on Range Tree v1 v2 ............................... vl w1 wm . (b) xlt xrt w2 . . . Figure: (a)Standard Range Tree (b)Query Region get partition into O(log2 n) regions Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 23. Introduction Background Knowledge Problems Solved Conclusion and Future Work Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries Outline 1 Introduction 2 Background Knowledge Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries 3 Problems Solved Planar Range Maxima Planar Range Convex Hull and Related problems 4 Conclusion and Future Work Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 24. Introduction Background Knowledge Problems Solved Conclusion and Future Work Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries Four Possible Range Successor queries (a) (b) (c) (d) Figure: Four different types of range successor queries possible in a planeJatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 25. Introduction Background Knowledge Problems Solved Conclusion and Future Work Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries Compact Range Trees Navarro & Nekrich in WADS 2012 proposed following result. Lemma There exists a data structure that uses O(n) space and answers orthogonal range successor queries in O(log n) time. We will use above result to answer all types of Range Successor Queries. Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 26. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Problems Solved Planar Range Skyline 2-sided Range Reporting 2-sided Range Counting 3-sided Range Reporting 3-sided Range Counting Planar Range Convex hull Othogonal Range Convex hull Reporting Orthogonal Range Convex Hull Counting Area of Convex hull in an Orthogonal Range Perimater of Convex hull in an Orthogonal Range Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 27. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Common Challenge Maintain order in more than one dimension Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 28. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Common Challenge Maintain order in more than one dimension Output sensitivity Starting with finding all points in the range is not output sensitive Single-shot algorithm: O(log n + m) time, where m is the total number of points inside the query range Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 29. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Outline 1 Introduction 2 Background Knowledge Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries 3 Problems Solved Planar Range Maxima Planar Range Convex Hull and Related problems 4 Conclusion and Future Work Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 30. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Dominating or Maximalpoint Point A = (xa, ya) is said to dominate point B = (xb, yb) iff xa > xb and ya > yb. Maximal point or skyline point: Whose North East quadrant is empty. Red point is Maximal point. Maxima or skyline is used interchangeably Empty Figure: Dominating point or Maximal point or Skyline point Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 31. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Maxima x y Figure: Skyline of a finite set of points Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 32. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Planar Range Maxima x y q Figure: Range Maxima for a given orthogonal range query Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 33. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Orthogonal range maxima queries Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 34. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Problem Statements Given a set S of n points in a plane and an orthogonal query Q of the form [a, b] × [c, d] where [a, b] is a range on the x-axis and [c, d] is a range on the y-axis, report the skyline points in S ∩ Q. Problem 1: Report the skyline inside S ∩ Q. Here Q = [a, +∞] × [c, +∞]. Problem 2: Count the number of points on the skyline of S ∩ Q. Here Q = [a, +∞] × [c, +∞]. Problem 3: Report the skyline inside S ∩ Q. Here Q = [a, +∞] × [c, d]. Problem 4: Count the number of points on the skyline of S ∩ Q. Here Q = [a, +∞] × [c, d]. Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 35. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Skyline in 2-sided and 3-sided queries Infy InfyInfy (a,d) (a,c) pt pb(a,c) pt pb Figure: (a) 2-sided query unbounded on top and right (b) 3-sided query unbounded on the right Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 36. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems 2-sided Range Maxima (a,c) pt pb Figure: 2-sided query unbounded on top and right Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 37. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Preprocessing for 2-sided queries Compute Single shot skyline on given set S of points and discard remaining points. Figure: Preprocessing on finite set S of points Time complexity:O(n log n) Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 38. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Preprocessing Array for 2-sided queries Construct range successor data structure D on this points. Figure: Preprocessed on finite set S of points Preprocessing Time complexity:O(n log n) Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 39. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems 2-sided query Given any query Q = [a, +∞] × [c, +∞]. query q=(a,c) Figure: 2-sided query to unbounded on top and right Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 40. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Range Successor Query for Reporting Find the point pt by making Range Successor query unbounded on bottom. pt Figure: Range Successor query unbounded on bottom Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 41. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems 2-sided Range Reporting Keep reporting all the points from pt until we encounter some point whose x co-ordinate is greater than a. pt (a,c) Figure: 2-sided Range Reporting till x = a Query Time complexity:O(log n + k) where is total number of points reported. Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 42. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems 2-sided Range counting To solve counting problem we find point pb. (a,c) pt pb Figure: 2-sided Range Counting Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 43. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Range Successor Query for Counting Find the point pt by making Range Successor query unbounded on left. pb Figure: Range Successor query unbounded on left Time complexity:O(log n) Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 44. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems 2-sided Range counting count = index[pt] − index[pb] + 1 takes constant O(1) time. (a,c) pt pb Figure: 2-sided Range Counting Query Time complexity:O(log n) Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 45. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Our results on 2-sided queries Theorem Given a set S of n points in R2, we can pre-process S into a data structure of size O(n) in time O(n log n) such that, given an 2-sided query Q = [a, ∞] × [c, ∞], we can report/count the maximal points of S ∩ Q in time O(log n + k)/O(log n), where k is the number of points reported. Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 46. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Finite set of points on a plane Figure: Finite Set S of points in 2d-plane Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 47. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Preprocessing for 3-sided queries Point with maximum y co-ordinate in South-west quadrant of point pi is its next maximal point Every point in set S is pointing to its next maximal point in array next Construct range successor data structure D on this points. Takes preprocessing O(n log n) time. Infy InfyInfy Figure: Preprocessing 3-sided maxima queries Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 48. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems 3-sided Reporting query Report the skyline inside S ∩ Q. Here Q = [a, +∞] × [c, d]. Infy InfyInfy (a,d) (a,c) Figure: 3-sided query to find maxima Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 49. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems 3-sided Range Reporting Find the point pt by making Range Successor query unbounded on bottom. Infy InfyInfy (a,d) (a,c) pt Figure: 3-sided Range Reporting requires point pt Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 50. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Range Successor Query for Reporting Find the point pt by making Range Successor query unbounded on bottom. pt Figure: Range Successor query unbounded on bottom Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 51. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems 3-sided Range Reporting Keep reporting all the points from pt until we encounter some point whose x co-ordinate is greater than a. Infy InfyInfy (a,d) (a,c) pt Figure: 3-sided Range Reporting requires point pt Query Time complexity:O(log n + k) Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 52. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems 3-sided Range counting Report then count is not output sensitive. Infy InfyInfy (a,d) (a,c) pt pb Figure: 3-sided Range Counting Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 53. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Preprocessing for 3-sided Counting We store a level count of maximal as shown in figure. Infy InfyInfy 1 2 1 2 3 4 5 6 34 5 3 4 5 4 56 123 Figure: Range Successor query unbounded on left Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 54. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Range Successor Query for Counting We find point pb using range successor query as shown. pb Figure: Range Successor query unbounded on left Time complexity:O(log n) Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 55. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems 3-sided Range counting count = count[pt] − count[pb] + 1 takes constant O(1) time. In this example count is 3 = 4 − 1 + 1. Time complexity:O(log n) Infy InfyInfy 1 2 1 2 3 4 5 6 3 4 5 3 4 5 4 56 12 3 pt pb (a,d) (a,c) Figure: 3-sided Range Counting Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 56. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Our Results Query Type Query Time Storage Space 2-sided Range Reporting O(log n + k) O(n) 2-sided Range Counting O(log n) O(n) 3-sided Range Reporting O(log n + k) O(n) 3-sided Range Reporting O(log n) O(n) Table: Our Results of Planar Range Skyline Problem Our results holds only for queries which are either unbounded on top(and right) or right. Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 57. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Conjecture Conjecture Given a set S of n points in R2, it may be possible to pre-process S into a data structure of size O(n log n) in time O(n log n) such that, given an 4-sided orthogonal query Q = [a, b] × [c, d], we can report and count the number of maximal points of S ∩ Q in time O(log n + k) and O(log n + k) respectively. Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 58. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Outline 1 Introduction 2 Background Knowledge Output Sensitvity Computation Models Range Search Orthogonal Range Successor Queries 3 Problems Solved Planar Range Maxima Planar Range Convex Hull and Related problems 4 Conclusion and Future Work Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 59. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Green Nails on a board Given point set of size n in a plane. Figure: Finite set of points Consider green Nails as shown in the figure. Stretch and leave a rubber band on this green nails. Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 60. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Convex Hull Points on the rubber band forms Convex Hull. Figure: Finite set of points Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 61. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Problem Statements We are given a set P of n points in R2 and a query q = [xlt, xrt] × [yb, yt]. We wish to pre-process P into a data structure such that given an orthogonal query region q, we can efficiently Problem 1: Report the points on convex hull of P ∩ q. Problem 2: Count the number of points on the convex hull of P ∩ q. Problem 3: Find the area of the convex hull of P ∩ q. Problem 4: Find the perimeter of the convex hull of P ∩ q. Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 62. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Planar Range Convex Hull q Figure: Range Convex hull for a given query Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 63. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Challenges Output sensitivity Reporting and computing convex hull takes time O(log n + m log h) where m is total number of point on q and h is points on the convex hull. Counting/Area/Perimeter by actually reporting all points on hull is not output sensitive Output size is O(1) Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 64. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Challenges Output sensitivity Reporting and computing convex hull takes time O(log n + m log h) where m is total number of point on q and h is points on the convex hull. Counting/Area/Perimeter by actually reporting all points on hull is not output sensitive Output size is O(1) Space constraint Total number of possible query ranges is O(n4 ) Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 65. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Preliminaries Combining two disjoint convex hulls: Only the common outer tangents(bridges) need to be computed Can be done in O(log n) (Overmars and van Leeuwen 1994) Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 66. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Preliminaries Convex hull can be divided into 4 parts based on extreme points We will compute the ”Upper Right Convex Hull” (urc-hull) Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 67. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Preprocessing Use a standard 2D range tree. In each node, store the convex hull of all points in that subtree A query is split into O(log n) horizontal regions, each further split into O(log n) vertical regions (”blocks”) Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 68. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Crux Idea Total of O(log2 n) nodes per query Do polygon version of Graham’s scan Takes time O(log3 n + h) time per query, where h is the number of points on the hull Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 69. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Efficient processing Many blocks can be discarded from the urc-hull without processing Non Empty Block Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 70. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Worst Case Define ”candidate block” as a non-empty block which is not discarded Worst case we still have O(log2 n) candidate blocks Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 71. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Analysis Range tree divides query into O(log2 n) region Merging two convex hull takes O(log n) time Linear Merging of O(log2 n) hulls in query region takes O(log3 n) Reporting takes O(h) time where h is total number points on the convex hull Therefore it takes O(log3 n + h) for convex hull points in S ∩ q Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 72. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Convex Hull as an Cyclic Array Points on the convex hull are stored as an array A. Points in the array are stored in Anti-clockwise direction as shown in figure. Starting from Maximum y co-ordinate to minimum y co-ordinate and vice versa. p1 p2 p3 p4 p6 p5 p7 p10 p8 p9 p11 p4 p2 p1 p5 p9 p11 p8 A Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 73. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Counting points on a Convex hull Each candidate convex hull contribute some part from array A. Difference of indices at this boundaries gives us the count. For example index[p8] − index[p9] + 1 as shown in figure. Therefore computing count for candidate convex hull takes O(1) time. p1 p2 p3 p4 p6 p5 p7 p10 p8 p9 p11 p4 p2 p1 p5 p9 p11 p8 A Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 74. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Perimeter of the convex hull We store commutative sum of perimeter in Array P. Each candidate convex hull contribute some perimeter to total perimeter A. Difference of indices at this boundaries gives us the perimeteri . P[p8] − P[p9] + 1 gives perimeter as shown in figure. Therefore computing perimeteri for candidate convex hull takes O(1) time. p1 p2 p3 p4 p6 p5 p7 p10 p8 p9 p11 p4 p2 p1 p5 p9 p11 p8 A p42 p41 p43 p46 p411 p48 p44P Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 75. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Area of the convex hull We store commutative sum of areas in Array Ar. Each candidate convex hull contribute some area to total area A. Difference of indices at this boundaries gives us the areai . Therefore computing areai for candidate convex hull takes O(1) time. 1 2 3 4 5 6 7 1 2 3 4 5 6 7 Figure: Finite set of pointsJatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 76. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Previous Work Brass et. al. gave first results on Planar Range Convex hull problem. Query Type Query Time Storage Space Reporting O(log5 n + h) O(n log2 n) Area O(log5 n) O(n log2 n) Table: Previous Work on Convex hull and Related problems Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 77. Introduction Background Knowledge Problems Solved Conclusion and Future Work Planar Range Maxima Planar Range Convex Hull and Related problems Our Results We studied Counting and Perimeter problem for the first time in the literature. Query Type Query Time Storage Space Reporting O(log3 n + h) O(n log2 n) Counting O(log3 n) O(n log2 n) Area O(log3 n) O(n log2 n) Perimeter O(log3 n) O(n log2 n) Table: Our Results of Planar Range Convex hull and Related problems Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 78. Introduction Background Knowledge Problems Solved Conclusion and Future Work Conclusion Skyline and Convex Hull provides ordering in higher dimensions. Planar Range provides searching in higher dimensions Our structures are efficient for large number of queries. Our structure provides information like count, area and perimeter without processing individual data elements. Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 79. Introduction Background Knowledge Problems Solved Conclusion and Future Work Future Work Generalization: Categorization can be made by assigning colors to each point and find distinct colors. Other models of Computation: Studying both planar range maxima and planar range convex hull in the cell-probe model to understand lower bound. Higher Dimensions: Interesting to see this problems in dimensions greater than two. Dynamism: Solving on dynamic point sets. Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 80. Introduction Background Knowledge Problems Solved Conclusion and Future Work Related Work Improved bounds for Smallest Enclosing Disk Range Queries(Accepted as full paper), Sankalp Khare, Jatin Agarwal, Nadeem Moidu, and Kannan Srinathan Conference: To appear in the proceedings of the 16th Japan Conference on Discrete and Computational Geometry and Graphs (JCDCG22013) Efficient Range Reporting of Convex Hull(Submitted as e-print), Jatin Agarwal, Nadeem Moidu, Kishore Kothapalli and Kannan Srinathan Conference: Computing Research Repository(CoRR) Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 81. Introduction Background Knowledge Problems Solved Conclusion and Future Work Related Work Planar Convex Hull Range Query and Related Problems(Accepted as full paper), Nadeem Moidu, Jatin Agarwal and Kishore Kothapalli Conference: To appear in proceedings of the 25th Canadian Conference on Computational Geometry(CCCG 2013) On Counting Range Maxima Points in Plane (Accepted as full paper), Anil Kishore Kalavagattu, Jatin Agarwal, Ananda Swarup Das, and Kishore Kothapalli. Conference: The 23rd International Workshop on Combinatorial Algorithms(IWOCA 2012) Range Aggregate Maximal Points in the Plane. (Accepted as full paper), Ananda Swarup Das, Prosenjit Gupta, Anil Kishore Kalavagattu, Jatin Agarwal, Kannan Srinathan, Kishore Kothapalli. Conference: The 6th Workshop on Algorithms and Computation(WALCOM 2012)Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr
  • 82. Introduction Background Knowledge Problems Solved Conclusion and Future Work Thank You! Questions? Jatin Agarwal Efficient Data Structures and Algorithms for Range Aggregate Pr