Efficient Algorithms for the Weighted k-Center Problem on a Real Line

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

Minimum Clique Partition Problem with Constrained Weight for Interval Graphs Jianping Li Department of Mathematics Yunnan University Jointed by M.X. Chen.
Approximations of points and polygonal chains
Advanced Topics in Algorithms and Data Structures Lecture 7.2, page 1 Merging two upper hulls Suppose, UH ( S 2 ) has s points given in an array according.
Dynamic Planar Convex Hull Operations in Near- Logarithmic Amortized Time TIMOTHY M. CHAN.
Visibility Graph Team 10 NakWon Lee, Dongwoo Kim.
S. J. Shyu Chap. 1 Introduction 1 The Design and Analysis of Algorithms Chapter 1 Introduction S. J. Shyu.
The Divide-and-Conquer Strategy
Computational Geometry
Zoo-Keeper’s Problem An O(nlogn) algorithm for the zoo-keeper’s problem Sergei Bespamyatnikh Computational Geometry 24 (2003), pp th CGC Workshop.
Computational Geometry -- Voronoi Diagram
9-1 Chapter 9 Approximation Algorithms. 9-2 Approximation algorithm Up to now, the best algorithm for solving an NP-complete problem requires exponential.
Data Transmission and Base-Station Placement for Optimizing Network Lifetime Esther M. Arkin and Joseph S. B. Mitchell Stony Brook University Swaminathan.
Computational Complexity Polynomial time O(n k ) input size n, k constant Tractable problems solvable in polynomial time(Opposite Intractable) Ex: sorting,
5 -1 Chapter 5 The Divide-and-Conquer Strategy A simple example finding the maximum of a set S of n numbers.
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)
Kinetic data structures. Goal Maintain a configuration of moving objects Each object has a posted flight plan (this is essentially a well behaved function.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
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.
Efficient Algorithms for the Weighted 2-Center Problem in a Cactus Graph Qiaosheng Shi Joint work: Boaz Ben-moshe Binay Bhattacharya.
CMPS 3130/6130 Computational Geometry Spring 2017
3. Polygon Triangulation
The NP class. NP-completeness
Abolfazl Asudeh Azade Nazi Nan Zhang Gautam DaS
VORONOI DIAGRAMS FOR PARALLEL HALFLINES IN 3D
Polygonal Curve Simplification
Courtsey & Copyright: DESIGN AND ANALYSIS OF ALGORITHMS Courtsey & Copyright:
Orthogonal Range Searching and Kd-Trees
Analysis and design of algorithm
Enumerating Distances Using Spanners of Bounded Degree
Bart M. P. Jansen June 3rd 2016, Algorithms for Optimization Problems
Finding Fastest Paths on A Road Network with Speed Patterns
Finding Subgraphs with Maximum Total Density and Limited Overlap
On collection depots location problems
Computing Shortest Path amid Pseudodisks
Representing a Functional Curve by Curves with Fewer Peaks
Computing Maximum Non-Crossing Matching in Convex Bipartite Graphs
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
Feodor F. Dragan 1990 Ph.D. in Theoretical Computer Science Institute of Mathematics of the Byelorussian Academy of Science, Minsk Moldova State University.
2IMG15 Algorithms for Geographic Data
Quickest Visibility Queries in Polygonal Domains
Chapter 11 Limitations of Algorithm Power
On the Geodesic Centers of Polygonal Domains
Minimizing the Aggregate Movements for Interval Coverage
Approximating Points by A Piecewise Linear Function: I
Point-Line Duality Let
Haitao Wang Utah State University WADS 2017, St. John’s, Canada
Processing an Offline Insertion-Query Sequence with Applications
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
NP-Completeness Reference: Computers and Intractability: A Guide to the Theory of NP-Completeness by Garey and Johnson, W.H. Freeman and Company, 1979.
Computing Shortest Paths among Curved Obstacles in the Plane
Visibility and Ray Shooting Queries in Polygonal Domains
Outlier Respecting Points Approximation
Computational Geometry
Approximating Points by A Piecewise Linear Function: II
Weak Visibility Queries of Line Segments in Simple Polygons
L1 Shortest Path Queries among Polygonal Obstacles in the Plane
15th Scandinavian Workshop on Algorithm Theory
A Variation of Minimum Latency Problem on Path, Tree and DAG
Convex Hull - most ubiquitous structure in computational geometry
Complexity Theory: Foundations
Presentation transcript:

Efficient Algorithms for the Weighted k-Center Problem on a Real Line Danny Z. Chen and Haitao Wang Computer Science and Engineering University of Notre Dame Indiana, USA

Problem definition Given a set of points/customers P={p1…pn } on a real line L, each point pi has a positive weight w(pi) Find k centers/facilities {f1…fk} on L for a given integer k to serve all customers to minimize the maximum service distance Service distance between a center f and its served point pi: w(pi)*|pi-f| f1 f2 f3 L p1 pn determine k=3 centers to serve all customers Non-weighted case: All customers in P have the same weight

Previous work Most k-center problem variants are NP-hard Non-weighted case on a tree O(n) time, Frederickson 91’ Weighted case on a tree: O(nlog2n) time O(nlog2nloglogn) time Megiddo and Tamir 83’ Cole’s parametric search, 87’ Weighted case on a real line: Time linear in n and exponential in k, Bhattacharya and Shi 07’

Our results Reduce the k-center problem to a points approximation problem Utilizes algorithms for the points approximation problem, Chen and Wang 09’ Develop new data structures for answering a 2-D sublist LP queries Our algorithms: O(nlog1.5n) time, O(nlogn + klog4n) time Improving the O(nlog2n) time result on a tree

More stories Our new result on the k-center problem: O(nlogn) time The points approximation problem O(nlog2n) time, Chen and Wang 09’ O(nlog n) time, Fournier and Vigneron, in arXiv, September 2011 The k-center problem is also solvable in O(nlogn) time Better than our result (O(nlog1.5n),O(nlogn + klog4n)) Drawback: The algorithm uses Cole’s parametric search Complicated and difficult to implement Large constant hidden in the big-O Mainly of theoretical interest Our new result on the k-center problem: O(nlogn) time Our algorithm is favorable for the following reasons: No parametric search involved and practical More efficient data structures for 2-D sublist LP queries O(n+k2log3nloglogn) time when all points are sorted on L and all point weights are also sorted Applicable to the discrete version

Our algorithm Reduce the problem to a points approximation problem Use the algorithmic schemes for the points approximation problem Need a data structure for 2-D sublist LP queries New data structures for 2-D sublist LP queries

A sub-problem: the 1-center problem queries Given a query q(i,j) with i≤j, we want to solve the 1-center problem on all customers in P from pi to pj Return the optimal value pj pi Reduce the 1-center queries to 2-D sublist LP queries

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

The x-intercept ordered property of H The upper halfplane set H={hi | 1≤i≤n} The intersections of the bounding lines of H with the x-axis are ordered in the same order as the halfplanes in H h4 h3 h2 x h1 h5

Previous work on the 2-D sublist queries construction time query time O(nlogn) O(log4n) Guha and Shim, 07’ O(log2n) Chen and Wang, 09’ O(nlog2n) O(logn) in the paper O(nlog1.5n) O(log1.5n) this talk

Previous work on the 2-D sublist queries construction time query time O(nlogn) O(log4n) Guha and Shim, 07’ O(log2n) Chen and Wang, 09’ O(nlog2n) O(logn) in the paper O(nlog1.5n) O(log1.5n) this talk The x-intercept ordered property is needed for the last two results.

2-D Sublist LP Queries Given: An upper 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 p*

Our approach Reduce the computing of the lowest point p* to computing the sub-path convex hull of a simple path

The sub-path convex hull queries Given a simple path with vertices v1,v2…vn along the path Each query q(i,j) specifies a sub-path beginning at vi and ending at vj Return the convex hull of the sub-path The convex hull can be implicitly represented in a way that support the standard binary-search-based operations v5 v4 v7 v6 v3 v9 v8 v2 v1 q(2,8) A data structure of construction time O(nlogn) and query time of O(logn) Compact interval trees, Guibas, Hershberger, and Snoeyink, 91’

The reduction from computing p* to computing the subpath convex hull By duality! The boundary of the common intersection is the upper envelop of the arrangement of the bounding lines Corresponds to the lower hull of the vertices dual to the bounding lines common intersection lowest point p*

The reduction – an attempt By duality, obtain a set of points H*={h1*,h2*…hn*} dual to the bounding lines of the half-plane set H={h1…hn} Obtain a path by connecting the points in H* with segments according to their order in H* This does not work!!! The obtained path may not be a simple path!

The reduction – a new approach Partition the half-plane set H into two subsets H1: half-planes whose bounding lines have negative slopes H2: half-planes whose bounding lines have positive slopes For each query q(i,j), the subset Hij is also partitioned into two subsets: Hij1 and Hij2 p*

Why do we partition H? By duality, obtain a set of points H1*dual to the bounding lines of the half-plane set H1 Obtain a path by connecting the points in H1* according to their order in H1* The obtained path is a simple path! The data structure for the subpath convex hull queries of a simple path can be applied In summary, a data structure for 2-D sublist LP queries: Construction time: O(nlogn) Query time: O(logn) More efficient data structures are possible if the slopes of all bounding lines in H are given sorted

The discrete version Each center fi must be at the position of a customer in P O(nlog2n) time on a tree, Megiddo et al. 81’ O(nlogn) time, indicated by Tamir, 11’ Our results for the non-discrete versions are also applicable

Thank you