IP Library Patent Application 13365735
Patent Application
App. No. 13/365,735

METHOD AND APPARATUS FOR FACILITATING FINDING A NEAREST NEIGHBOR IN A DATABASE

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
13/365,735
Abstract

A method and apparatus for facilitating finding a nearest neighbor in a database. Example embodiments include: accessing a database tree having a plurality of nodes; receiving information indicative of a query point and information indicative of a node in the database tree; determining, by use of a processor, a lower-bound estimate based on the node and the query point, wherein the lower-bound estimate corresponds to a distance from the query point to the node; determining, by use of the processor, a temporary result corresponding to a distance to a nearest neighbor based on at least one child node of the node, the query point, and the lower-bound estimate; pruning one or more of the plurality of nodes based on the lower-bound estimate and a pruning bound; and returning a result indicative of a nearest neighbor of the query point.

Claims (41)

1 . A method comprising:

accessing a database tree having a plurality of nodes;

receiving information indicative of a query point and information indicative of a node in the database tree;

determining, by use of a processor, a lower-bound estimate based on the node and the query point, wherein the lower-bound estimate corresponds to a distance from the query point to the node;

determining, by use of the processor, a temporary result corresponding to a distance to a nearest neighbor based on at least one child node of the node, the query point, and the lower-bound estimate;

pruning one or more of the plurality of nodes based on the lower-bound estimate and a pruning bound; and

returning a result indicative of a nearest neighbor of the query point.

2 . The method of claim 1 including determining a distance from the query point to a leaf node.

3 . The method of claim 1 wherein the node is not a leaf node.

4 . The method of claim 1 including determining a distance from the query point to a plurality of bounding boxes corresponding to the node.

5 . The method of claim 4 wherein each of the plurality of bounding boxes corresponding to the node includes a hierarchical arrangement of sub-boxes.

6 . The method of claim 4 including determining a minimum distance from the query point to each of the plurality of bounding boxes corresponding to the node.

7 . The method of claim 4 including determining a minimum distance from the query point to each of a plurality of sub-boxes of each of the plurality of bounding boxes corresponding to the node.

8 . The method of claim 1 wherein the query point corresponds to a database query.

9 . A system comprising:

a processor;

a database query processor interface, in data communication with the processor, to receive a query point and information indicative of a node in a database tree; and

a database query processor, in data communication with the processor, to:

access a database tree having a plurality of nodes;

receive information indicative of a query point and information indicative of a node in the database tree;

determine, by use of the processor, a lower-bound estimate based on the node and the query point, wherein the lower-bound estimate corresponds to a distance from the query point to the node;

determine, by use of the processor, a temporary result corresponding to a distance to a nearest neighbor based on at least one child node of the node, the query point, and the lower-bound estimate;

prune one or more of the plurality of nodes based on the lower-bound estimate and a pruning bound; and

return a result indicative of a nearest neighbor of the query point.

10 . The system of claim 9 being further configured to determine a distance from the query point to a leaf node.

11 . The system of claim 9 wherein the node is not a leaf node.

12 . The system of claim 9 being further configured to determine a distance from the query point to a plurality of bounding boxes corresponding to the node.

13 . The system of claim 12 wherein each of the plurality of bounding boxes corresponding to the node includes a hierarchical arrangement of sub-boxes.

14 . The system of claim 12 being further configured to determine a minimum distance from the query point to each of the plurality of bounding boxes corresponding to the node.

15 . The system of claim 12 being further configured to determine a minimum distance from the query point to each of a plurality of sub-boxes of each of the plurality of bounding boxes corresponding to the node.

16 . The system of claim 9 wherein the query point corresponds to a database query.

17 . An article of manufacture comprising a non-transitory machine-readable storage medium having machine executable instructions embedded thereon, which when executed by a machine, cause the machine to:

access a database tree having a plurality of nodes;

receive information indicative of a query point and information indicative of a node in the database tree;

determine, by use of a processor, a lower-bound estimate based on the node and the query point, wherein the lower-bound estimate corresponds to a distance from the query point to the node;

determine, by use of the processor, a temporary result corresponding to a distance to a nearest neighbor based on at least one child node of the node, the query point, and the lower-bound estimate;

prune one or more of the plurality of nodes based on the lower-bound estimate and a pruning bound; and

return a result indicative of a nearest neighbor of the query point.

18 . The article of manufacture of claim 17 being further configured to determine a distance from the query point to a plurality of bounding boxes corresponding to the node.

19 . The article of manufacture of claim 18 wherein each of the plurality of bounding boxes corresponding to the node includes a hierarchical arrangement of sub-boxes.

20 . The article of manufacture of claim 18 being further configured to determine a minimum distance from the query point to each of the plurality of bounding boxes corresponding to the node.

Assignments (4)
CHANGE OF NAME Recorded Nov 12, 2019
From: QUOVA, INC.
To: NEUSTAR IP INTELLIGENCE, INC.
Reel/Frame 050991/0285 →
RELEASE OF SECURITY INTEREST Recorded Aug 21, 2017
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NEUSTAR, INC.; NEUSTAR IP INTELLIGENCE, INC.; ULTRADNS CORPORATION; NEUSTAR INFORMATION SERVICES, INC.; NEUSTAR DATA SERVICES, INC.; AGGREGATE KNOWLEDGE, INC.; MARKETSHARE ACQUISITION CORPORATION; MARKETSHARE HOLDINGS, INC.; MARKETSHARE PARTNERS, LLC
Reel/Frame 043618/0826 →
SECURITY AGREEMENT Recorded Feb 13, 2013
From: NEUSTAR, INC.; NEUSTAR IP INTELLIGENCE, INC.; ULTRADNS CORPORATION; NEUSTAR INFORMATION SERVICES, INC.; NEUSTAR DATA SERVICES, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 029809/0260 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 3, 2012
From: PRIEDITIS, ARMAND ERIK
To: QUOVA, INC.
Reel/Frame 027650/0485 →