ANNATTO: Adaptive Nearest Neighbor Queries in Travel Time Networks
DEFINITION Given a set of n points and a query point, q, the nearest-neighbor problem is concerned with finding the point closest to the query point. Figure 1 shows an example of the nearest neighbor problem. On the left side is a set of n = 10 points in a two-dimensional space with a query point, q. The right shows the problem solution, s. Figure 1: An example of a nearest-neighbor problem domain and solution. The nearest-neighbor problem also includes the following problems: k-nearest-neighbors (kNN): Given a value k ≤ n, kNN finds the k nearest objects to the query object. In most cases, the solution is the ordered k-nearest neighbors where the objects in the solution are ranked closest to farthest from the query point. all-nearest-neighbors (aNN): aNN is essentially NN applied to every point in the dataset. all-k-nearest-neigbors (akNN): akNN is kNN applied to every point in the dataset. Both akNN and aNN are usually used when NN queries will be applied to the data many times. reverse-nearest-neighbor (rNN): given a query point, q, rNN finds all points in the dataset such that q is their nearest neighbor. reverse-k-nearest-neighbor (rkNN): rkNN is similar to rNN except that it finds all points such that the query point, q, is in the set of their k-nearest-neighbors.