Approximating Points by A Piecewise Linear Function: I

Slides:



Advertisements
Similar presentations
Triangle partition problem Jian Li Sep,2005.  Proposed by Redstar in Algorithm board in Fudan BBS.  Motivated by some network design strategy.
Advertisements

INTERVAL TREE & SEGMENTATION TREE
Approximations of points and polygonal chains
Lecture 3: Parallel Algorithm Design
Convex Hull Problem Presented By Erion Lin. Outline Convex Hull Problem Voronoi Diagram Fermat Point.
Zoo-Keeper’s Problem An O(nlogn) algorithm for the zoo-keeper’s problem Sergei Bespamyatnikh Computational Geometry 24 (2003), pp th CGC Workshop.
Fractional Cascading CSE What is Fractional Cascading anyway? An efficient strategy for dealing with iterative searches that achieves optimal.
I/O-Algorithms Lars Arge University of Aarhus March 1, 2005.
Point Location Computational Geometry, WS 2007/08 Lecture 5 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät für.
Lecture 6: Point Location Computational Geometry Prof. Dr. Th. Ottmann 1 Point Location 1.Trapezoidal decomposition. 2.A search structure. 3.Randomized,
The Complexity of Algorithms and the Lower Bounds of Problems
Approximate Distance Oracles for Geometric Spanner Networks Joachim Gudmundsson TUE, Netherlands Christos Levcopoulos Lund U., Sweden Giri Narasimhan Florida.
Fractional Cascading and Its Applications G. S. Lueker. A data structure for orthogonal range queries. In Proc. 19 th annu. IEEE Sympos. Found. Comput.
AALG, lecture 11, © Simonas Šaltenis, Range Searching in 2D Main goals of the lecture: to understand and to be able to analyze the kd-trees and.
Orthogonal Range Searching I Range Trees. Range Searching S = set of geometric objects Q = query object Report/Count objects in S that intersect Q Query.
UNC Chapel Hill M. C. Lin Orthogonal Range Searching Reading: Chapter 5 of the Textbook Driving Applications –Querying a Database Related Application –Crystal.
14/13/15 CMPS 3130/6130 Computational Geometry Spring 2015 Windowing Carola Wenk CMPS 3130/6130 Computational Geometry.
How to reform a terrain into a pyramid Takeshi Tokuyama (Tohoku U) Joint work with Jinhee Chun (Tohoku U) Naoki Katoh (Kyoto U) Danny Chen (U. Notre Dame)
The LCA Problem Revisited
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Stabbing balls and simplifying proteins Ovidiu Daescu and Jun Luo Department of Computer Science University of Texas at Dallas Richardson, TX
Agenda Review: –Planar Graphs Lecture Content:  Concepts of Trees  Spanning Trees  Binary Trees Exercise.
CMPS 3130/6130 Computational Geometry Spring 2015
Common Intersection of Half-Planes in R 2 2 PROBLEM (Common Intersection of half- planes in R 2 ) Given n half-planes H 1, H 2,..., H n in R 2 compute.
UNC Chapel Hill M. C. Lin Geometric Data Structures Reading: Chapter 10 of the Textbook Driving Applications –Windowing Queries Related Application –Query.
Mathematical Foundations of AI
Computational Geometry
Lecture 3: Parallel Algorithm Design
Geometric Data Structures
Computation of the solutions of nonlinear polynomial systems
CMPS 3130/6130 Computational Geometry Spring 2017
Paweł Gawrychowski, Nadav Krasnopolsky, Shay Mozes, Oren Weimann
Polygonal Curve Simplification
Objective: Understand Concepts related to trees.
Algorithm design techniques Dr. M. Gavrilova
Segment tree and Interval Tree
Orthogonal Range Searching and Kd-Trees
Efficient Distance Computation between Non-Convex Objects
The Complexity of Algorithms and the Lower Bounds of Problems
Enumerating Distances Using Spanners of Bounded Degree
Reporting (1-D) Given a set of points S on the line, preprocess them to build structure that allows efficient queries of the from: Given an interval I=[x1,x2]
Computing Shortest Path amid Pseudodisks
Representing a Functional Curve by Curves with Fewer Peaks
Computing Maximum Non-Crossing Matching in Convex Bipartite Graphs
Efficient Algorithms for the Weighted k-Center Problem on a Real Line
Danny Z. Chen and Haitao Wang University of Notre Dame Indiana, USA
Dynamic Data Structures for Simplicial Thickness Queries
Locating an Obnoxious Line among Planar Objects
Computing the Visibility Polygon of an Island in a Polygonal Domain
Shmuel Wimer Bar Ilan Univ., School of Engineering
Chapter 11 Limitations of Algorithm Power
Covering Uncertain Points in a Tree
Minimizing the Aggregate Movements for Interval Coverage
Processing an Offline Insertion-Query Sequence with Applications
CMPS 3130/6130 Computational Geometry Spring 2017
An O(n log n)-Time Algorithm for the k-Center Problem in Trees
Optimal Point Movement for Covering Circular Regions
Range Queries on Uncertain Data
Danny Z. Chen1, Yan Gu2, Jian Li2, and Haitao Wang1
Aggregate-Max Nearest Neighbor Searching in the Plane
Danny Z. Chen and Haitao Wang University of Notre Dame Indiana, USA
Danny Z. Chen and Haitao Wang University of Notre Dame Indiana, USA
Visibility and Ray Shooting Queries in Polygonal Domains
Outlier Respecting Points Approximation
Approximating Points by A Piecewise Linear Function: II
L1 Shortest Path Queries among Polygonal Obstacles in the Plane
The LCA Problem Revisited
Lecture 19 Linear Program
A Variation of Minimum Latency Problem on Path, Tree and DAG
Efficient Aggregation over Objects with Extent
Presentation transcript:

Approximating Points by A Piecewise Linear Function: I Danny Z. Chen and Haitao Wang Computer Science and Engineering University of Notre Dame Indiana, USA

Outline Problem definitions Motivations and previous work Our results

Problem Definitions Input: A point set P (2-D or 3-D) Output: An approximation function f Error: Vertical distance e(P,f)=max{error of each point} error

Two Problem Versions min-#: min-ε: Given: An error toleranceε≥ 0 Goal: f of minimized size, with e(p,f) ≤ε min-ε: Given: k>0 Goal: f of minimized error e(p,f), with size ≤k

Problem Variations Step function (SF) error

Problem Variations (cont.) Piecewise-linear function (PF) error

Problem Variations (cont.) Weighted versions for both SF and PF Every point has a weight ui Error of each point: ui×vertical distance WSF and WPF there is a weight ui

Problems in 3-D Extend SF and WSF to 3-D (SF3 and WSF3) The function f is represented by a set of rectangular faces parallel to the x-y plane and each face approximates a subset of points Vertical distance measured by z-values

Problem Summary SF, PF, Weighted version: WSF, WPF 3D version: SF3, WSF3 min-# and min-ε

Motivations Query optimizations and histogram constructions in database management systems Regression analysis

Previous Work (2D problems) min-# min-ε SF O(n) [Diaz-Banez ,Mesa,01] O(n) [Fournier,Vigneron,08] WSF O(n) [Karras,Sacharidis,Mamoulis 07] O(nlogn+k2log6n)[Guha,Shim, 07] O(nlog4n) [Fournier,Vigneron,08] PF O(n) [O’Rourke,81] WPF

Our Results min-ε O(nlogn+k2log6n) [Guha,Shim,07] O(nlogn+k2log4n) WSF O(nlog4n) [Fournier,Vigneron,08] O(nlog2n) PF O(n+k2log3loglogn) O(nlogn) WPF O(nlogn+k2log5n) O(nlog3n)

3D Problems No previous result is found Our results: min-# min-ε SF3 NP-hard 2-Approx 1.5-nonapprox WSF3

Technical Contributions Two algorithm frameworks A general formulation of path partition problem [Fournier,Vigneron,08] Parametric search Data structures for major components: Vertical hull width query (PF) 2-D sublist LP query (WSF) 3-D sublist LP query (WPF) A tiling modeling for 3-D problems

Where to Use Data Structures? wij: The minimum error to approximate point subset Pij={pi,…,pj} by one segment Need data structures to support queries on wij, 1≤i≤j≤n wij pi pj

Where to Use Data Structures? wij: The minimum error to approximate point subset Pij={pi,…,pj} by one segment Need data structures to support queries on wij, 1≤i≤j≤n wij pi pj

Vertical Hull Width Queries (PF) Given: A point set P Query q(i,j): The maximum vertical distance on the convex hull of Pij Times: (n,lognloglogn), (nloglogn, logn) Use compact interval tree Vertical hull width

Main Idea For each query q(i,j) Obtain the convex hull of Pij (Guibas, Hershberger, Snoeyink, 91) Beginning from the root, at each node, in O(1) time, find the edges of the upper hull and lower hull spanning the node, and then determine which way to go

2-D Sublist LP Queries (WSF) Given: A halfplane set H={hi | 1≤i≤n} Query q(i,j): The lowest point in the common intersection of Hij={hi, …, hj} common intersection lowest point

2-D Sublist LP Queries (cont.) Previously best-known result: (nlogn,log4n) Our solution: (nlogn, log2n) Our techniques: Fractional cascading and binary search on sorted arrays

An (nlogn, log3n) Solution Preprocessing: Build a complete binary tree T The i-th leaf stores hi Each internal node v stores the common intersection chain (Cv) of halfplanes stored in the subtree rooted at v O(nlogn) time

Common intersection chain Cv of all halfplanes from lv to rv Complete Binary Tree T Common intersection chain Cv of all halfplanes from lv to rv v lv rv stores halfplane hi

Query Algorithm q(i,j) Suppose p* is the sought lowest point Find the LCA w of i and j Find O(logn) internal nodes by following the two paths from w to i and to j p* is the lowest point of the chains stored in O(logn) internal nodes

Query Algorithm q(i,j) (cont.) p* is the lowest point in the common intersection of the O(log n) chains w LCA of i and j i j

Query Algorithm q(i,j) (cont.) Each chain is represented by a sorted array Totally O(logn) arrays Given a vertical line L, for each chain, spend O(log n) time computing its intersection with L Need O(log2n) time to determine whether p* is in the left side of L or right side p* can be located in O(log3n) time p* L

An (nlogn, log2n) Solution Observation: The O(logn) chains for each query are organized along two ancestor-descendant paths in the tree T By using fractional cascading Given L, its intersections with all O(logn) chains can be obtained in O(logn) time O(nlogn) preprocessing time Each query: O(log2n) time

3-D Sublist LP Queries (WPF) Given: A halfspace set H={hi | 1≤i≤n} Query q(i,j): The lowest point in the common intersection of Hij={hi, …, hj} No previous solution has been found Our solution: (nlogn, log3n)

Common intersection polyhedron Cv of all halfspaces from lv to rv Complete Binary Tree T Common intersection polyhedron Cv of all halfspaces from lv to rv v lv rv stores halfspace hi

A projection of Cv to the XY plane Data Structure for Cv To support an efficient query, use Kirkpatrick’s hierarchical planar point location data structure to store Cv A projection of Cv to the XY plane

Preprocessing Algorithm Built the tree T in a bottom-up manner Use Chazelle’s linear time convex polyhedra common intersection algorithm to construct Cv at an internal node v from its two children Preprocessing time: O(nlogn)

Query Algorithm q(i,j) p* is the lowest point in the common intersection of the polyhedra stored there w LCA of i and j i j

3D Problems NP-hardness proof: Based on reduction from planar-3SAT Approximation algorithms: Use the solution of the hierarchical binary tiling problem (HBT) which can be solved optimally

Thank You Questions?