K-Nearest Neighbor Graph Update via Vertex Filtering
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing methods for updating a K-nearest neighbor graph require a significant computational effort when adding a new vertex, with a time complexity of O(n^2), necessitating a more efficient approach for online processing.
Innovation Solution
A graph updating device comprising a K neighbor vertex search unit, a vertex selection unit, and a neighbor graph updating unit that reconstructs the K neighbor vertex set by filtering out vertices that are not potential K neighbors, reducing the number of calculations required to add a new vertex to the graph.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If a K-nearest neighbor graph is constructed using the simplest method with respect to an object set having n search target objects, then the graph construction is straightforward and easy to implement, but the time complexity is O(n^2) which requires a huge calculated amount
Solution Approach 1:
The patent segments the graph construction process into multiple passes. Instead of computing all n^2 distances at once, it divides the object set into subsets and processes them in sequential passes, where each pass handles a portion of the objects and updates the graph incrementally. This segmentation reduces the computational burden from O(n^2) to a more manageable complexity by processing data in smaller chunks across multiple iterations.
Solution Approach 2:
The patent applies preliminary action by pre-sorting objects based on certain criteria before the main graph construction process. It also performs preliminary filtering to identify candidate neighbors before computing full distances, and maintains sorted structures that enable efficient updates. This preliminary organization of data significantly reduces the computational effort required during the actual graph construction and update operations.
2Adaptability or versatility
If a new object (vertex) is added to a constructed K-nearest neighbor graph using existing methods, then the graph is updated to include the new object, but n+1 objects are required to be processed in a lump which requires a huge calculated amount
Solution Approach 1:
The patent segments the update operation into targeted processing of only affected vertices rather than reprocessing all n+1 objects. When a new vertex is added, it identifies and processes only those vertices whose K-nearest neighbor sets may have changed, leaving the rest of the graph intact. This selective segmentation dramatically reduces the update complexity from O((n+1)^2) to approximately O(k*n) where k is a small constant representing the number of affected vertices.
Solution Approach 2:
The patent applies partial action by performing only the necessary updates rather than complete reconstruction. It identifies the minimal subset of vertices that require reprocessing when a new object is added, and performs updates only on those specific vertices. This partial processing approach maintains graph accuracy while avoiding the excessive computation of reprocessing the entire graph.
3Productivity
If an approximate K-nearest neighbor graph is constructed using a heuristic method, then the calculation load is reduced compared to exact methods, but the graph construction is performed in a lump with respect to a given search target object set
Solution Approach 1:
The patent transforms the static batch construction process into a dynamic incremental process. The graph structure is designed to accommodate dynamic additions of vertices and edges without requiring complete reconstruction. The data structures and algorithms are made adaptive, allowing the graph to evolve over time as new objects are added, enabling online processing while maintaining approximate K-nearest neighbor properties.
Solution Approach 2:
The patent segments the object set and processing into manageable passes that can be executed incrementally. Each pass processes a subset of objects and updates the graph locally, allowing the construction to proceed in an online fashion rather than requiring the entire dataset to be available at once. This segmentation enables both speed and adaptability by allowing incremental construction and updates.
Data Source
AI summary
A graph updating device includes: a K neighbor vertex search unit that searches for a K neighbor vertex set of an added vertex in a neighbor graph on the basis of the neighbor graph and an object added to the neighbor graph as an added vertex and outputs the K neighbor vertex set; a vertex selection unit that selects a vertex candidate set on the basis of the neighbor graph, the added vertex, and the K neighbor vertex set of the added vertex and outputs the vertex candidate set, the vertex candidate set being a set of vertices that is present in the neighbor graph and possibly contains the added vertex in a K neighbor vertex set thereof; and a neighbor graph updating unit that reconstructs a K neighbor vertex set related to all vertices of the neighbor graph using K neighbor vertex sets of respective vertices of the vertex candidate set and adds the K neighbor vertex set of the added vertex to the reconstructed K neighbor vertex set to generate an updated neighbor graph.


