Da Yan, Zhou Zhao and Wilfred Ng The Hong Kong University of Science and Technology.

Slides:



Advertisements
Similar presentations
Problem solving with graph search
Advertisements

Triangle partition problem Jian Li Sep,2005.  Proposed by Redstar in Algorithm board in Fudan BBS.  Motivated by some network design strategy.
Query Optimization of Frequent Itemset Mining on Multiple Databases Mining on Multiple Databases David Fuhry Department of Computer Science Kent State.
Approximations of points and polygonal chains
 Distance Problems: › Post Office Problem › Nearest Neighbors and Closest Pair › Largest Empty and Smallest Enclosing Circle  Sub graphs of Delaunay.
1 Finding Shortest Paths on Terrains by Killing Two Birds with One Stone Manohar Kaul (Aarhus University) Raymond Chi-Wing Wong (Hong Kong University of.
October 31, Algorithms and Data Structures Lecture XIII Simonas Šaltenis Nykredit Center for Database Research Aalborg University
Follow the regularized leader
CS171 Introduction to Computer Science II Graphs Strike Back.
S. J. Shyu Chap. 1 Introduction 1 The Design and Analysis of Algorithms Chapter 1 Introduction S. J. Shyu.
A Generic Framework for Handling Uncertain Data with Local Correlations Xiang Lian and Lei Chen Department of Computer Science and Engineering The Hong.
Chapter 3 The Greedy Method 3.
Complexity 16-1 Complexity Andrei Bulatov Non-Approximability.
Computability and Complexity 23-1 Computability and Complexity Andrei Bulatov Search and Optimization.
Complexity 15-1 Complexity Andrei Bulatov Hierarchy Theorem.
1 Discrete Structures & Algorithms Graphs and Trees: II EECE 320.
1 Processing & Analysis of Geometric Shapes Shortest path problems Shortest path problems The discrete way © Alexander & Michael Bronstein, ©
1 -1 Chapter 1 Introduction Why Do We Need to Study Algorithms? To learn strategies to design efficient algorithms. To understand the difficulty.
Placement of Integration Points in Multi-hop Community Networks Ranveer Chandra (Cornell University) Lili Qiu, Kamal Jain and Mohammad Mahdian (Microsoft.
4. Ad-hoc I: Hierarchical clustering
Computability and Complexity 24-1 Computability and Complexity Andrei Bulatov Approximation.
Trip Planning Queries F. Li, D. Cheng, M. Hadjieleftheriou, G. Kollios, S.-H. Teng Boston University.
Introduction Outline The Problem Domain Network Design Spanning Trees Steiner Trees Triangulation Technique Spanners Spanners Application Simple Greedy.
Ch. 11: Optimization and Search Stephen Marsland, Machine Learning: An Algorithmic Perspective. CRC 2009 some slides from Stephen Marsland, some images.
Minimum Spanning Trees What is a MST (Minimum Spanning Tree) and how to find it with Prim’s algorithm and Kruskal’s algorithm.
Domain decomposition in parallel computing Ashok Srinivasan Florida State University COT 5410 – Spring 2004.
1. cluster the data. 2. for the data of a cluster, set up the network. 3. begin at a random vertex as source/sink s, choose its farthest vertex as the.
Visibility Graphs and Motion Planning Kittiphan Techakittiroj for the Degree of Master of Science Department of Computer Science, Ball State University,
Algorithms: Design and Analysis Summer School 2013 at VIASM: Random Structures and Algorithms Lecture 3: Greedy algorithms Phan Th ị Hà D ươ ng 1.
1 Network Optimization Chapter 3 Shortest Path Problems.
Da Yan, Zhou Zhao and Wilfred Ng The Hong Kong University of Science and Technology.
SPANNING TREES Lecture 21 CS2110 – Spring
VLDB '2006 Haibo Hu (Hong Kong Baptist University, Hong Kong) Dik Lun Lee (Hong Kong University of Science and Technology, Hong Kong) Victor.
Mehdi Kargar Aijun An York University, Toronto, Canada Discovering Top-k Teams of Experts with/without a Leader in Social Networks.
Boundary Recognition in Sensor Networks by Topology Methods Yue Wang, Jie Gao Dept. of Computer Science Stony Brook University Stony Brook, NY Joseph S.B.
Algorithms  Al-Khwarizmi, arab mathematician, 8 th century  Wrote a book: al-kitab… from which the word Algebra comes  Oldest algorithm: Euclidian algorithm.
1 Oblivious Routing in Wireless networks Costas Busch Rensselaer Polytechnic Institute Joint work with: Malik Magdon-Ismail and Jing Xi.
GLOBAL ROUTING Anita Antony PR11EC1011. Approaches for Global Routing Sequential Approach: – Route the nets one at a time. Concurrent Approach: – Consider.
Test Architecture Design and Optimization for Three- Dimensional SoCs Li Jiang, Lin Huang and Qiang Xu CUhk Reliable Computing Laboratry Department of.
Introduction to Algorithms Jiafen Liu Sept
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
For Friday Finish chapter 6 Program 1, Milestone 1 due.
SPANNING TREES Lecture 20 CS2110 – Fall Spanning Trees  Definitions  Minimum spanning trees  3 greedy algorithms (incl. Kruskal’s & Prim’s)
Graphs. Introduction Graphs are a collection of vertices and edges Graphs are a collection of vertices and edges The solid circles are the vertices A,
SPANNING TREES Lecture 21 CS2110 – Fall Nate Foster is out of town. NO 3-4pm office hours today!
Lecture 7 Jianjun Hu Department of Computer Science and Engineering University of South Carolina CSCE350 Algorithms and Data Structure.
1 EE5900 Advanced Embedded System For Smart Infrastructure Static Scheduling.
© The McGraw-Hill Companies, Inc., Chapter 1 Introduction.
Incremental Run-time Application Mapping for Heterogeneous Network on Chip 2012 IEEE 14th International Conference on High Performance Computing and Communications.
Construction of Optimal Data Aggregation Trees for Wireless Sensor Networks Deying Li, Jiannong Cao, Ming Liu, and Yuan Zheng Computer Communications and.
Da Yan (HKUST) James Cheng (CUHK) Wilfred Ng (HKUST) Steven Liu (HKUST)
Honors Track: Competitive Programming & Problem Solving Seminar Topics Kevin Verbeek.
Da Yan, Raymond Chi-Wing Wong, and Wilfred Ng The Hong Kong University of Science and Technology.
COMP 6/4030 ALGORITHMS Prim’s Theorem 10/26/2000.
Computability and Complexity
Enumerating Distances Using Spanners of Bounded Degree
Greedy Algorithms / Dijkstra’s Algorithm Yin Tat Lee
Randomized Algorithms CS648
Efficient Evaluation of k-NN Queries Using Spatial Mashups
Finding Fastest Paths on A Road Network with Speed Patterns
Conflict-Aware Event-Participant Arrangement
CSE 373: Data Structures and Algorithms
EE5900 Advanced Embedded System For Smart Infrastructure
離散數學 DISCRETE and COMBINATORIAL MATHEMATICS
Network Flow.
Lecture 19 Linear Program
Chapter 1 Introduction.
Spanning Trees Lecture 20 CS2110 – Spring 2015.
Network Flow.
More Graphs Lecture 19 CS2110 – Fall 2009.
Presentation transcript:

Da Yan, Zhou Zhao and Wilfred Ng The Hong Kong University of Science and Technology

Outline Introduction Related Work Baseline Algorithm Convex-Hull-Based Pruning Fast Greedy Algorithm Experiments Conclusion 1

Introduction How to define an optimal meeting point on road networks? 9 km 6 km 3 km Six people Min-max OMP arg min x [max i dist(q i, x)] q2q2 q3q3 q4q4 q5q5 q6q6 q1q1 x 2

Introduction How to define an optimal meeting point on road networks? 9 km 3 km Min-sum OMP arg min x [∑ i dist(q i, x)] q2q2 q3q3 q4q4 q5q5 q6q6 q1q1 x Our focus 3

Introduction Network distance d N (p 1, p 2 ) is the length of the shortest path connecting p 1 and p 2 Problem Definition Given a set of query points Q ={q 1, q 2, …, q n } on a road network G = (V, E), an optimal meeting point (OMP) query returns the point x’ = arg min x [∑ i d N (q i, x)] 4

Introduction Applications: Minimizing the total travel cost for a group of people who want to find a location for gathering Helping a travel agency decide the location for a tourist bus to pick up the tourists Part of AI for computer players in strategy games such as WorldofWarcraft 5

Outline Introduction Related Work Baseline Algorithm Convex-Hull-Based Pruning Fast Greedy Algorithm Experiments Conclusion 6

Related Work Min-sum OMP query in the Euclidean space: a.k.a. the Weber problem Min-sum OMP in the Euclidean space: geometric median of Q ={q 1, q 2, …, q n } No closed form formula exists Solved by gradient descent methods 7

Related Work Min-sum OMP query on a road network G = (V, E) Split-point-based method A split point is defined for each query point q i ∈ Q and each edge (u, v) ∈ E 4 km 6 km 12 km 14 km u v qiqi 8

Related Work Existing work has proved the following: An OMP must exist among all the split points Search space: |Q| · |E| Computational cost: Split point evaluation Min-sum distance computation 9

Outline Introduction Related Work Baseline Algorithm Convex-Hull-Based Pruning Fast Greedy Algorithm Experiments Conclusion 10

Baseline Algorithm Theorem 1 : Given an OMP query with query point set Q on a road network G = (V, E), an OMP must exist among V ∪ Q Search space: |V| + |Q| Computational cost: Only min-sum distance computation |Q| · |E| |V| + |Q| Search Space 11

Baseline Algorithm Main idea: Suppose that no point in Q is on edge (u, v) uv x x' δ q2q2 q1q1 q6q6 q5q5 q4q4 q3q3 q8q8 q7q7 Part of q 1 ’s shortest path to x + 2 ·δ− 6 ·δ shorter X δ 12

Baseline Algorithm Theorem 1 only relies on the fact that the road network G = (V, E) is a graph Edge length can refer to Physical distance Travel delay …… Can we do more ? 13

Outline Introduction Related Work Baseline Algorithm Convex-Hull-Based Pruning Fast Greedy Algorithm Experiments Conclusion 14

Convex-Hull-Based Pruning Existing method: Cut the whole road network into partitions Check only those split points that are in the smallest enclosing partition 15

Convex-Hull-Based Pruning First Trial Collect into a set P those end points of all the edges which the query points in Q are on Compute the convex hull of the point set P u v a b OMP 16

Convex-Hull-Based Pruning First Trial Collect into a set P those end points of all the edges which the query points in Q are on Compute the convex hull of the point set P 17

Convex-Hull-Based Pruning Second Trial Collect into a set P those end points of all the edges which the query points in Q are on Compute the convex hull of the point set P as H Find the shortest path for each pair of neighboring points on H, add all the points on these paths into a set S Compute the convex hull of the point set S 18

Convex-Hull-Based Pruning Second Trial Only fails to return the OMP in 5 of the queries tested in total Sum-of-distances values of these meeting points are all within 0.1% more than the smallest value u v a b 19

Convex-Hull-Based Pruning All vertices in V are organized as a kd-tree Check only those vertices that are in the convex hull of the point set S Range query on kd-tree, refinement step using ccw(p 1, p 2, p 3 ) = (p 2.x − p 1.x) (p 3.y − p 1.y) − (p 3.x − p 1.x) (p 2.y − p 1.y) p0p0 p1p1 p in p out 20

Outline Introduction Related Work Baseline Algorithm Convex-Hull-Based Pruning Fast Greedy Algorithm Experiments Conclusion 21

Fast Greedy Algorithm Road network is a metric space Sum-of-distances function: almost convex 22

Fast Greedy Algorithm Compute the center of gravity of Q as (x c, y c ) NN query on vertex kd-tree with query point (x c, y c ), find its NN vertex v nn Initialize the current vertex as v nn In each iteration, find the neighboring vertex v min with minimum sum-of-distances value If the value is smaller than the current one, set the current vertex as v min Otherwise, terminate 23

Outline Introduction Related Work Baseline Algorithm Convex-Hull-Based Pruning Fast Greedy Algorithm Experiments Conclusion 24

Experiments Datasets: Road network datasets of 46 states in US Query points are randomly generated in a rectangular query window Given OMP x and a result meeting point x’, Ratio(x’) = [∑ i d N (q i, x’) − ∑ i d N (q i, x)] / ∑ i d N (q i, x) 25

Experiments Effect of window size 26

Experiments Effect of window size 27

Experiments Effect of |Q| 28

Experiments Effect of |Q| 29

Experiments Effect of |Q| 30

Outline Introduction Related Work Baseline Algorithm Convex-Hull-Based Pruning Fast Greedy Algorithm Experiments Conclusion 31

Conclusion Our baseline algorithm substantially reduce the search space of the OMP query from |Q| · |E| to |V| + |Q| Our two-phase convex-hull-based pruning technique is accurate and effective We develop an extremely efficient greedy algorithm to find a high-quality near-optimal meeting point 32

Thank you! 33