Patent ID: 7895201

Claim:
An information processing apparatus for searching a plurality of sets for a desired element, comprising: a processor; a memory; common representative point setting means for setting common representative points that are a predetermined number of elements of a set obtained by averaging features of the plurality of sets; neighborhood table creation means for creating, for each of the plurality of sets, a neighborhood table comprising table information associated with elements of each of the plurality of sets located in the neighborhood of each common representative point based on the common representative points, wherein the neighborhood table lists distance information of the elements, and wherein the distance information for one of the elements is half of a distance from the one of the elements to the common representative point of the one of the elements; and search means for searching elements registered in the neighborhood table for the desired element, wherein the search means searches the elements registered in the neighborhood table for the desired element only when a distance of the desired element from the common representative point is smaller than a maximum value of the distance information corresponding to the common representative point in the neighborhood table, wherein the search means searches all the elements of the plurality of sets for the desired element when the distance of the desired element from the common representative point is bigger than or equal to the maximum value of the distance information corresponding to the common representative point in the neighborhood table, and wherein the common representative points setting means sets the common representative points by: selecting a target count for the common representative points, computing a first common representative point, computing, until a number of the common representative points is equal to or larger than the target count, new common representative points based on temporary points obtained by dividing each existing common representative point into two.