- 111 Views
- Uploaded on
- Presentation posted in: General

Reverse Furthest Neighbors in Spatial Databases

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Reverse Furthest Neighbors in Spatial Databases

Bin Yao, Feifei Li, Piyush Kumar

Florida State University, USA

- Reverse Furthest Neighbors (RFN)
Given a point q and a data set P, find the set of points in P that take q as their furthest neighbor

- Two versions:
- Monochromatic Reverse Furthest Neighbors (MRFN)
- Bichromatic Reverse Furthest Neighbors (BRFN)

- Motivation: inspired by RNN
- Reverse Nearest Neighbor
- Set of points taking query point as their NN.
- Monochromatic & Bichromatic RNN

- Many applications that are behind the studies of the RNN have the corresponding “furthest” versions.

P: a set of sites of interest in a region

For any site, it could find the sites that take itself as their furthest neighbors

This has an implication that visitors to the RFN of a site are unlikely to visit this site because of the long distance.

Ideally, it should put more efforts in advertising itself in those sites.

P: a set of customers

Q: a set of business competitors offering similar products

A distance measure reflecting the rating of customer(p) to competitor(q)’s product.

A larger distance indicates a lower preference.

For any competitor in Q, an interesting query is to discover the customers that dislike his product the most among all competing products in the market.

: customer

: product

- MRFN for q and P:
- BRFN for a point q in Q and P are:

- MRFN
- Progressive Furthest Cell Algorithm
- Convex Hull Furthest Cell Algorithm
- Dynamically updating to dataset

- BRFN

Lemma: Any point from the furthest Voronoi cell(fvc) of p takes p as its furthest neighbor among all points in P.

- Update fvc(q) using points contained by entries in ;
- Filter points in using fvc(q);

- Initialize two empty vectors and ; priority queue L with T’s root node; fvc(q)=S;
- While L is not empty do
- Pop the head entry e of L
- If e is a point then, update the fvc(q)
- If fvc(q) is empty, return;
- If e is in fvc(q), then Push e into ;

- else
- If e fvc(q) is empty then push e to ;
- Else for every child u of node e
- If u fvc(q) is empty, insert u into ;
- Else insert u into L ;

- MRFN
- Progressive Furthest Cell Algorithm
- Convex Hull Furthest Cell Algorithm
- Dynamically updating to dataset

- BRFN

Lemma: the furthest point for p from P is always a vertex of

the convex hull of P. (i.e., only vertices of CH have RFN.)

CHFC(Query q; R-tree T (on P))

// compute only once

- Find the convex hull of P;
- if , then return empty;
- else
- Compute using ;
- Set fvc(q,P*) equal to fvc(q, );
- Execute a range query using fvc(q,P*) on T;

- MRFN
- Progressive Furthest Cell Algorithm
- Convex Hull Furthest Cell Algorithm
- Dynamically updating to dataset

- BRFN

- PFC: update R-tree
- CHFC:
- update R-tree& re-compute CH (expensive)
- Qhull algorithm

The qhull algorithm

Adapt qhull to R-tree

- MRFN
- Progressive Furthest Cell Algorithm
- Convex Hull Furthest Cell Algorithm
- Dynamically updating to dataset

- BRFN

- After resolving all the difficulties for the MRFN problem, solving the BRFN problem becomes almost immediate.
- Observations:
- all points in P that are contained by fvc(q,Q) will have q as their furthest neighbor.
- Only the vertexes of the convex hull have fvc.

- BRFN(Query q, Q; R-tree T)
- Compute the convex hull of Q;
- If then return empty;
- Else
- Compute fvc(q, );
- Execute a range query using fvc(q, ) on T;

Limitation: query group size may not fit in memory

Solution: Approximate convex hull of Q (Dudley’s approximation)

- Dataset:
- Real dataset (Map: USA, CA, SF)
- Synthetic dataset (UN, CB, R-Cluster)

- Measurement
- Computation time
- Number of IOs
- Average of 1000 queries

CPU computation

Number of IOs

CPU: vary A, Q=1000

IOs: vary A, Q=1000

BRFN number of IOs

MRFN number of IOs

- Introduced a novel query (RFN) for spatial databases.
- Presented R-tree based algorithms for both versions of RFN that feature excellent pruning capability.
- Conducted a comprehensive experimental evaluation.

Thank you!Questions?