hierarchical graph traversal for
play

Hierarchical Graph Traversal for Aggregate k Nearest Neighbors - PowerPoint PPT Presentation

Hierarchical Graph Traversal for Aggregate k Nearest Neighbors Search in Road Networks ICAPS 2020 SEMINAR PRESENTER: TENINDRA ABEYWICKRAMA CO-AUTHORS: MUHAMMAD AAMIR CHEEMA, SABINE STORANDT Background: Road Network Graph Input: Road


  1. Hierarchical Graph Traversal for Aggregate k Nearest Neighbors Search in Road Networks ICAPS 2020 SEMINAR PRESENTER: TENINDRA ABEYWICKRAMA CO-AUTHORS: MUHAMMAD AAMIR CHEEMA, SABINE STORANDT

  2. Background: Road Network Graph β€’ Input: Road network graph 𝐻 = π‘Š, 𝐹 β€’ Vertex set π‘Š: Road intersections β€’ Edge set 𝐹: Road segments β€’ Source: Each edge has weight: e.g. travel time https://magazine.impactscool.com/en/spec iali/google-maps-e-la-teoria-dei-grafi/ 2

  3. Background: k Nearest Neighbour (kNN) Queries β€’ Input: Object set 𝑃 βŠ† π‘Š (e.g. all restaurants) β€’ Input: Agent location π‘Ÿ ∈ π‘Š (e.g. a diner) β€’ kNN Query: What is the nearest object to π‘Ÿ ? β€’ By Euclidean Distance: 𝑝 2 β€’ By Network Distance: 𝑝 1 o 1 o 2 β€’ More accurate + versatile q 3

  4. Our Problem: Aggregate k Nearest Neighbours (AkNN) β€’ AkNN: Find the nearest object to multiple agents β€’ Example: Three friends (agents) want to meet at a McDonalds (objects). Which object to meet at? Sources: Google Maps, McDonalds, Flaticon.com 𝑝 2 𝑝 1 π‘Ÿ 3 π‘Ÿ 2 𝑝 3 π‘Ÿ 1 4

  5. Our Problem: AkNN β€’ Input: Aggregate Function (e.g. SUM), Agent Set 𝑅 βŠ† π‘Š β€’ Aggregate individual distances from each agent Sources: Google β€’ Rank objects by their aggregate score Maps, McDonalds, Flaticon.com 𝑝 2 𝑒(π‘Ÿ 2 , 𝑝 2 ) 𝑒(π‘Ÿ 3 , 𝑝 2 ) 𝑝 1 π‘Ÿ 3 π‘Ÿ 2 𝑒(π‘Ÿ 1 , 𝑝 2 ) 𝑝 3 π‘Ÿ 1 𝐡𝑕𝑕_𝑇𝑑𝑝𝑠𝑓(𝑝 2 ) = 𝐡𝑕𝑕_πΊπ‘£π‘œπ‘‘π‘’π‘—π‘π‘œ 𝑒(π‘Ÿ 1 , 𝑝 2 , 𝑒(π‘Ÿ 2 , 𝑝 2 ), 𝑒(π‘Ÿ 3 , 𝑝 2 )) 5

  6. Our Problem: AkNN β€’ Still using network distance for accuracy/versatility β€’ Example: Which McDonalds minimises the SUM of travel times over all diners? Sources: Google Maps, McDonalds, Flaticon.com 𝑝 2 π‘Ÿ 3 𝑝 1 π‘Ÿ 2 𝑝 3 π‘Ÿ 1 6

  7. Motivation β€’ Inefficient to compute distance to every object β€’ Typical Solution: heuristically retrieve likely candidates until all results found β€’ But existing heuristics are either: β€’ (a) borrowed from kNN => not suitable for AkNN β€’ (b) not accurate enough for network distance 7

  8. Expansion Heuristics β€’ Borrowed from kNN search heuristics: expand from each query vertex β€’ But best AkNN candidates unlikely to be near any one query vertex 𝑝 3 π‘Ÿ 2 𝑝 1 𝑝 2 π‘Ÿ 1 π‘Ÿ 3 𝑝 4 8

  9. Hierarchical Search Heuristic β€’ Divide space to group objects => recursively β€’ Search β€œpromising” regions top -down (recursively) β€’ Pinpoint best candidate anywhere in space 𝑝 6 𝑝 4 𝑝 5 𝑝 3 𝑝 2 π‘Ÿ 2 𝑅1 𝑅2 𝑅4𝑐 𝑅4𝑏 Children Root of Q4 Level 𝑝 5 𝑝 2 π‘Ÿ 1 𝑝 1 π‘Ÿ 3 𝑅4𝑑 𝑅4𝑒 𝑅4 𝑅3

  10. Hierarchical Search β€’ How do we decide which regions are β€œpromising”? β€’ Use lower-bound score for all objects in a region β€’ Past Work: R-tree + Euclidean distance lower-bound β€’ Not accurate for road network distance Data structure needed for o 1 o 2 accurate hierarchical lower- bound search in graphs q

  11. Landmark Lower-Bounds β€’ Pre-compute distances from landmark vertices β€’ Use triangle inequality to compute lower-bound β€’ Only allows small numbers of landmarks (space cost) β€’ Not suitable for hierarchical search l 𝑒 π‘Ÿ, 𝑝 ≀ |𝑒 π‘š, 𝑝 βˆ’ 𝑒(π‘š, π‘Ÿ)| d(l,o) d(l,q) Choose tightest LLB over a set o of multiple landmarks q d(q,o) 11

  12. Compacted-Object Landmark Tree (COLT) Index β€’ Partition graph recursively => subgraph tree β€’ Choose localised landmarks in every subgraph β€’ Compact based on object set 𝑃 S 0 S 2 S 1 l 1 o 1 ,1 o 2 ,3 S 2A S 2B l 2 o 2 ,1 o 1 ,4 12

  13. COLT β€’ Non-leaf + leaf nodes stores 𝑁 βˆ’ : min distance to any object in subgraph from landmark β€’ β€’ 𝑁 + : max distance to any object in subgraph from landmark β€’ Enables accurate lower-bound for any tree node

  14. Hierarchical Traversal in COLT β€’ Top-down search from root node β€’ Compute lower-bound for child using equation β€’ Recursively evaluate child with best score S 0 S 2 S 1 o 1 ,1 o 2 ,3 l 1 S 2A S 2B o 2 ,1 o 1 ,4 l 2

  15. Hierarchical Traversal in COLT β€’ Leaf nodes store Object Distance List β€’ Find object with minimum aggregate lower-bound β€’ Interestingly common functions preserve convexity! β€’ Easily found using modified binary search 𝑔(𝑦) 𝑦 𝑝 4 𝑝 2 𝑝 5 𝑝 1 𝑝 3 Object Distance 2 5 7 8 12

  16. Experimental Setup β€’ Dataset: US Road Network Graph from DIMACS β€’ π‘Š = 23,947,347 vertices, 𝐹 = 57,708,624 edges β€’ Real-World POIs from OSM for US β€’ Comparison against IER and NVD β€’ IER: hierarchical search using Euclidean heuristic β€’ NVD: state-of-the-art expansion heuristic 16

  17. Query Time: Real-World POIs β€’ COLT up to an order of magnitude faster! β€’ COLT performs better on dense POI sets β€’ Heuristics is less important on sparse POI sets 17

  18. Sensitivity Analysis β€’ COLT maintains improvement for β€’ Varying parameters ( 𝑙 , number of agents) β€’ Varying aggregate functions (MAX, SUM) β€’ Heuristic efficiency metrics β€’ Comes at a lightweight pre-processing cost 18

  19. Thank You! Questions? 19

Recommend


More recommend