330 likes | 338 Views
This paper presents a framework for efficient proximity interactions in smartphone networks, allowing for continuous k-nearest neighbor queries. The system model, problem formulation, proximity algorithm, experimental evaluation, and future work are discussed.
E N D
Georgios Chatzimilioudis Demetrios Zeinalipour-Yazti Marios D. Dikaiakos Wang-Chien Lee “Continuous All k Nearest Neighbor Queries in Smartphone Networks” Tuesday, July 24, 2012 13th IEEE Int. Conference on Mobile Data Management (MDM’12), Bangalore, India
Smartphones • Smartphone: A powerful sensing device! • Processing: 1.4 GHzquad core (Samsung Exynos) • RAM & Flash Storage:2GB & 48GB, respectively • Networking: WiFi, 3G (Mbps) / 4G (100Mbps–1Gbps) • Sensing: Proximity, Ambient Light, Accelerometer, Microphone, Geographic Coordinates based on AGPS (fine), WiFi or Cellular Towers (coarse). • In-House Applications! Airplace (MobiSys’12, MDM’12) SmartTrace (ICDE’09,MDM’09,TKDE’12) SmartP2P (MDM’11, MDM’12)
Motivation • Crowdsourcing with Smartphones • A smartphone crowd is constantly moving and sensing providing large amounts of opportunistic data that enables new services and applications "Crowdsourcing with Smartphones", Georgios Chatzimiloudis, Andreas Konstantinides, Christos Laoudias, Demetrios Zeinalipour-Yazti, IEEE Internet Computing, Special Issue: Crowdsourcing (Sep/Oct 2012), accepted May 2012. IEEE Press, 2012
Continuous k Nearest Neighbor Queries Find 2 Closest Neighbors for 1 User
Motivation “Create a Framework for Efficient Proximity Interactions” Screenshots from a prototype system we've implemented for Windows Phone http://www.zegathem.com/
Continuous All k Nearest Neighbor Queries Find 2 Closest Neighbors for ALL User
Presentation Outline • Motivation • System Model and Problem Formulation • Proximity Algorithm • Experimental Evaluation • Future Work
System Model • A set of users moving in the plane of a region (u1, u2, … un) • Area covered by a set of Network Connectivity Points (NCP) • Each NCP creates the notion of a cell • W.l.o.g., let the cell be represented by a circular area with an arbitrary radius • A mobile user u is serviced at any given time point by one NCP. • There is some centralized service, denoted as QP (Query Processor), which is aware of the coverage of each NCP. • Each user u reports its positional information to QP regularly Query Processor QP u3. u2. .u4 u0. C .u1 u6. . u7 u5.
Problem Definition • Definition of the CAkNN problem: Given a set U of nusers and their location reports ri,t ∈ R at timestep t ∈ T , then the CAkNN problem is to find in each timestep t ∈ T and for each user ui ∈ U the k objects Usol ⊆ U − uisuch that for all other objects uo ∈U − Usol − ui, dist(uk, ui) ≤ dist(uo, ui) holds u3. Query Processor u2. .u4 u0. C .u1 u6. . u7 u5.
Naïve Solution / Related Work Find 2-NN for u0at timestep t. For u5? Query Processor Look inside your cell! u3. WRONG! (u1 closer) u2. .u4 u0. C .u1 TOO EXPENSIVE! u6. . u7 u5. Perform iterative deepening!
Related Work • Existing algorithms for CkNN (not CAkNN) Yu et al. (YPK) 11 and Mouratidis et al. (CPM) 12 • Stateless Version: Iteratively expand the search space for each user into neighboring cells to find the kNN (like previous slide) • Stateful Version: Improve the stateless version by utilizing previous state, under the following assumptions: Not Appropriate for CAkNN • i) Static Querying User (i.e., designated for point queries) • ii) Target users move slowly (i.e., state does not decay) • iii) Few Target users 11. Yu, Pu, Koudas. “Monitoring k-nearest neighbor queries over moving objects,” ICDE ’05 12. Mouratidis, Papadias, Hadjieleftheriou, “Conceptual partitioning: an efficient method for continuous nearest neighbor monitoring,” SIGMOD ’05.
Presentation Outline • Motivation • System Model and Problem Formulation • Proximity Algorithm • Experimental Evaluation • Future Work
Proximity Overview • The first specialized algorithm for Continuous All k-NN (CAkNN) queries • Important characteristics: • Stateless (i.e., optimized for high mobility) • Batch processing (i.e., with search space searching) • Parameter-free (i.e., no tuning parameters) • Generic operator for proximity-based queries • See Crowdcast application presented later.
Proximity Outline • For every timestep: • Initialize a k+-heap for every cell • Insert every user’s location report to every k+-heap • Notice that k+-heap is a heap-based structure and most location reports will be dropped as a result of an insert operation • For every user scan the k+-heap of his cell to find his k-NN u3. Query Processor u2. .u4 u0. C .u1 u6. . u7 u5.
Intuition behind Proximity • Users in a cell will share the samesearch space(search space sharing) • Compute 1 search space per cell only! Query Processor u3. Cell u2. .u4 u0. Search Space (contains the right answers for all users in C) C .u1 u6. . u7 u5.
Proximity k+-heap • The k+-heap structure for a cell k+-heap structure U list K top-k heap B ordered list All users inside the cell K nearest users outside the cell Beyondk nearest outside users (correctness)
k+-heap Construction (for Cell C) k+-heap structure Assume k=2. U list K top-k heap B ordered list u3. u2. .u4 u0. C .u1 u6. . u7 u5.
k+-heap Construction (for Cell C) k+-heap structure Assume k=2. U list K top-k heap B ordered list u3. u2. .u4 u0. Diameter + dk C .u1 u6. . u7 u5. x. 2 nearest users to cell
Presentation Outline • Motivation • System Model and Problem Formulation • Proximity Algorithm • Experimental Evaluation • Future Work
Experimental Methodology • Dataset: • Oldenburg Dataset: • Spatiotemporal generator with roadmap of Oldenburg as input (25km x 25km) • 5000 maximum users (Oldenburg population: 160.000) • Manhattan Dataset: • Vehicular mobility generator with roadmap of Manhattan as input (3km x 3km) • 500 users • Network connectivity points (NCPs) uniformly in space • Communication ranges 1km, 4km and 16km for the Oldenburg dataset and ranges 1km and 4km for the Manhattan dataset • Query: CAkNN • Comparison: Proximity vs YPK vs CPM (using the optimal parameter value for YPK and CPM)
Proximity - Experiments • Bottleneck for Proximity: build time • Bottleneck for the adapted YPK and CPM: search time
Proximity - Experiments • Benefit of Proximity in the search time • Proximity is scalable with respect to k • Search space for Proximity is not proportional to k like YPK, CPM
Proximity - Experiments • Proximity: build time drops as k increases! • Machine’s memory scheduler makes more efficient use of buffers when the search spaces are larger
Proximity - Experiments • Proximity scales with the number of users • Proximity outperforms YPK, CPM by an order of magnitude • Proximity does not converge to YPK, CPM for higher values of Nmax.
The Crowdcast Application Suite Crowdcast Suite … PROXIMITY WIN7 API Ranked 3rd in Microsoft’s ImagineCup contest local competition (to appear in the next demo session!)
Crowdcast: MsgCast MsgCast • Location-based Chat Channel (Post / Follow) • - Provide Guidelines "Get your location-based questions answered!"
Crowdcast: HelpCast HelpCast "The Ubiquitous Help Platform for Anyone in Need”
Crowdcast: EyeCast EyeCast • Disaster Recovery Operations • Indoor Video Conferencing Network "Extend your Vision beyond your 2 eyes!"
Presentation Outline • Motivation • System Model and Problem Formulation • Proximity Algorithm • Experimental Evaluation • Future Work
Proximity – Future Work • Privacy extensions (e.g., spatial cloaking, strong privacy) • Parallelizing server computation • Proximity for cloud server • User-defined k values
Future Work: SmartLab SmartLab.cs.ucy.ac.cy Install APK, Upload File, Reboot, Screenshots, Monkey Runners, etc.… Programming cloud for the development of smartphone network applications & protocols as well as experimentation with real smartphone devices. "Demo: A Programming Cloud of Smartphones", A. Konstantinidis, C. Costa, G. Larkou and D. Zeinalipour-Yazti, "Demo at the 10th International Conference on Mobile Systems Applications and Services" (Mobisys '12), Low Wood Bay Lake District UK, 2012
Thanks! Questions? “Continuous All k Nearest Neighbor Queries in Smartphone Networks” Georgios Chatzimilioudis Demetrios Zeinalipour-Yazti Marios D. Dikaiakos Wang-Chien Lee Tuesday, July 24, 2012 13th IEEE Int. Conference on Mobile Data Management (MDM’12), Bangalore, India