Novel road-network applications often recommend a moving object (e.g., a vehicle) about interesting services or tasks on its way to a destination. A taxi-sharing system, for instance, suggests a new passenger to a taxi while it is serving another one. The traveling cost is then shared among these passengers. A fundamental query is: given two nodes <inline-formula><tex-math notation="LaTeX">$s$</tex-math><alternatives><mml:math><mml:mi>s</mml:mi></mml:math><inline-graphic xlink:href="luo-ieq1-2906188.gif"/></alternatives></inline-formula> and <inline-formula><tex-math notation="LaTeX">$t$</tex-math><alternatives><mml:math><mml:mi>t</mml:mi></mml:math><inline-graphic xlink:href="luo-ieq2-2906188.gif"/></alternatives></inline-formula>, and an area <inline-formula><tex-math notation="LaTeX">$\mathcal {A}$</tex-math><alternatives><mml:math><mml:mi mathvariant="script">A</mml:mi></mml:math><inline-graphic xlink:href="luo-ieq3-2906188.gif"/></alternatives></inline-formula> on road network graph <inline-formula><tex-math notation="LaTeX">$\mathcal {G}$</tex-math><alternatives><mml:math><mml:mi mathvariant="script">G</mml:mi></mml:math><inline-graphic xlink:href="luo-ieq4-2906188.gif"/></alternatives></inline-formula>, is there a “good” route (e.g., short enough path) <inline-formula><tex-math notation="LaTeX">$P$</tex-math><alternatives><mml:math><mml:mi>P</mml:mi></mml:math><inline-graphic xlink:href="luo-ieq5-2906188.gif"/></alternatives></inline-formula> from <inline-formula><tex-math notation="LaTeX">$s$</tex-math><alternatives><mml:math><mml:mi>s</mml:mi></mml:math><inline-graphic xlink:href="luo-ieq6-2906188.gif"/></alternatives></inline-formula> to <inline-formula><tex-math notation="LaTeX">$t$</tex-math><alternatives><mml:math><mml:mi>t</mml:mi></mml:math><inline-graphic xlink:href="luo-ieq7-2906188.gif"/></alternatives></inline-formula> that crosses <inline-formula><tex-math notation="LaTeX">$\mathcal {A}$</tex-math><alternatives><mml:math><mml:mi mathvariant="script">A</mml:mi></mml:math><inline-graphic xlink:href="luo-ieq8-2906188.gif"/></alternatives></inline-formula> in <inline-formula><tex-math notation="LaTeX">$\mathcal {G}$</tex-math><alternatives><mml:math><mml:mi mathvariant="script">G</mml:mi></mml:math><inline-graphic xlink:href="luo-ieq9-2906188.gif"/></alternatives></inline-formula>? In a taxi-sharing system, <inline-formula><tex-math notation="LaTeX">$s$</tex-math><alternatives><mml:math><mml:mi>s</mml:mi></mml:math><inline-graphic xlink:href="luo-ieq10-2906188.gif"/></alternatives></inline-formula> and <inline-formula><tex-math notation="LaTeX">$t$</tex-math><alternatives><mml:math><mml:mi>t</mml:mi></mml:math><inline-graphic xlink:href="luo-ieq11-2906188.gif"/></alternatives></inline-formula> can be a taxi's current and destined locations, and <inline-formula><tex-math notation="LaTeX">$\mathcal {A}$</tex-math><alternatives><mml:math><mml:mi mathvariant="script">A</mml:mi></mml:math><inline-graphic xlink:href="luo-ieq12-2906188.gif"/></alternatives></inline-formula> contains all the places to which a person waiting for a taxi is willing to walk. Answering this <italic>Route and Area Matching</italic> (ROAM) Query allows the application involved to recommend appropriate services to users efficiently. In this paper, we examine efficient ROAM query algorithms. Particularly, we develop solutions for finding a <italic><inline-formula><tex-math notation="LaTeX">$\rho$</tex-math><alternatives><mml:math><mml:mi>ρ</mml:mi></mml:math><inline-graphic xlink:href="luo-ieq13-2906188.gif"/></alternatives></inline-formula>-route</italic>, which is an <inline-formula><tex-math notation="LaTeX">$s$</tex-math><alternatives><mml:math><mml:mi>s</mml:mi></mml:math><inline-graphic xlink:href="luo-ieq14-2906188.gif"/></alternatives></inline-formula>-<inline-formula><tex-math notation="LaTeX">$t$</tex-math><alternatives><mml:math><mml:mi>t</mml:mi></mml:math><inline-graphic xlink:href="luo-ieq15-2906188.gif"/></alternatives></inline-formula> path that passes <inline-formula><tex-math notation="LaTeX">$\mathcal {A}$</tex-math><alternatives><mml:math><mml:mi mathvariant="script">A</mml:mi></mml:math><inline-graphic xlink:href="luo-ieq16-2906188.gif"/></alternatives></inline-formula>, with a length of at most <inline-formula><tex-math notation="LaTeX">$(1+\rho)$</tex-math><alternatives><mml:math><mml:mrow><mml:mo>(</mml:mo><mml:mn>1</mml:mn><mml:mo>+</mml:mo><mml:mi>ρ</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math><inline-graphic xlink:href="luo-ieq17-2906188.gif"/></alternatives></inline-formula> times the shortest distance between <inline-formula><tex-math notation="LaTeX">$s$</tex-math><alternatives><mml:math><mml:mi>s</mml:mi></mml:math><inline-graphic xlink:href="luo-ieq18-2906188.gif"/></alternatives></inline-formula> and <inline-formula><tex-math notation="LaTeX">$t$</tex-math><alternatives><mml:math><mml:mi>t</mml:mi></mml:math><inline-graphic xlink:href="luo-ieq19-2906188.gif"/></alternatives></inline-formula>. The existence of a <inline-formula><tex-math notation="LaTeX">$\rho$</tex-math><alternatives><mml:math><mml:mi>ρ</mml:mi></mml:math><inline-graphic xlink:href="luo-ieq20-2906188.gif"/></alternatives></inline-formula>-route implies that a service or task located at <inline-formula><tex-math notation="LaTeX">$\mathcal {A}$</tex-math><alternatives><mml:math><mml:mi mathvariant="script">A</mml:mi></mml:math><inline-graphic xlink:href="luo-ieq21-2906188.gif"/></alternatives></inline-formula> can be found for a given moving object <inline-formula><tex-math notation="LaTeX">$m$</tex-math><alternatives><mml:math><mml:mi>m</mml:mi></mml:math><inline-graphic xlink:href="luo-ieq22-2906188.gif"/></alternatives></inline-formula>, and that <inline-formula><tex-math notation="LaTeX">$m$</tex-math><alternatives><mml:math><mml:mi>m</mml:mi></mml:math><inline-graphic xlink:href="luo-ieq23-2906188.gif"/></alternatives></inline-formula> only deviates slightly from its current route. We present comprehensive studies on index-free and index-based algorithms for answering ROAM queries. Comprehensive experiments show that our algorithm runs up to 30 times faster than baseline algorithms.
[1]
Yu Zheng,et al.
T-share: A large-scale dynamic taxi ridesharing service
,
2013,
2013 IEEE 29th International Conference on Data Engineering (ICDE).
[2]
Shuigeng Zhou,et al.
Shortest path and distance queries on road networks: towards bridging theory and practice
,
2013,
SIGMOD '13.
[3]
Jeffrey Xu Yu,et al.
Finding time-dependent shortest paths over large graphs
,
2008,
EDBT '08.
[4]
Mohamed F. Mokbel,et al.
SHAREK: A Scalable Dynamic Ride Sharing System
,
2015,
2015 16th IEEE International Conference on Mobile Data Management.
[5]
Chunyan Miao,et al.
Quality and Budget Aware Task Allocation for Spatial Crowdsourcing
,
2015,
AAMAS.
[6]
Yi Yang,et al.
Efficient Route Planning on Public Transportation Networks: A Labelling Approach
,
2015,
SIGMOD Conference.
[7]
Peter Sanders,et al.
In Transit to Constant Time Shortest-Path Queries in Road Networks
,
2007,
ALENEX.
[8]
Ruoming Jin,et al.
Large Scale Real-time Ridesharing with Service Guarantee on Road Networks
,
2014,
Proc. VLDB Endow..
[9]
Peter Sanders,et al.
Highway Hierarchies Hasten Exact Shortest Path Queries
,
2005,
ESA.
[10]
Lei Chen,et al.
gMission: A General Spatial Crowdsourcing Platform
,
2014,
Proc. VLDB Endow..
[11]
Yan Huang,et al.
Dynamic ridesharing
,
2016,
SIGSPACIAL.
[12]
Amos Fiat,et al.
Highway dimension, shortest paths, and provably efficient algorithms
,
2010,
SODA '10.
[13]
Hanan Samet,et al.
Path Oracles for Spatial Networks
,
2009,
Proc. VLDB Endow..
[14]
Kyriakos Mouratidis,et al.
Preventing Location-Based Identity Inference in Anonymous Spatial Queries
,
2007,
IEEE Transactions on Knowledge and Data Engineering.
[15]
Cyrus Shahabi,et al.
GeoCrowd: enabling query answering with spatial crowdsourcing
,
2012,
SIGSPATIAL/GIS.
[16]
Rolf H. Möhring,et al.
Fast Point-to-Point Shortest Path Computations with Arc-Flags
,
2006,
The Shortest Path Problem.
[17]
Cyrus Shahabi,et al.
A Framework for Protecting Worker Location Privacy in Spatial Crowdsourcing
,
2014,
Proc. VLDB Endow..
[18]
Sibo Wang,et al.
Reachability queries on large dynamic graphs: a total order approach
,
2014,
SIGMOD Conference.
[19]
Edsger W. Dijkstra,et al.
A note on two problems in connexion with graphs
,
1959,
Numerische Mathematik.
[20]
Peter Sanders,et al.
Contraction Hierarchies: Faster and Simpler Hierarchical Routing in Road Networks
,
2008,
WEA.
[21]
Jizhong Zhao,et al.
Reliable Diversity-Based Spatial Crowdsourcing by Moving Workers
,
2014,
Proc. VLDB Endow..
[22]
Lei Chen,et al.
GeoTruCrowd: trustworthy query answering with spatial crowdsourcing
,
2013,
SIGSPATIAL/GIS.
[23]
Hanan Samet,et al.
Scalable network distance browsing in spatial databases
,
2008,
SIGMOD Conference.
[24]
Hanan Samet,et al.
Efficient query processing on spatial networks
,
2005,
GIS '05.
[25]
Andrew V. Goldberg,et al.
Computing the shortest path: A search meets graph theory
,
2005,
SODA '05.
[26]
Yu Zheng,et al.
Real-Time City-Scale Taxi Ridesharing
,
2015,
IEEE Transactions on Knowledge and Data Engineering.