K-Nearest Neighbor Graph Update via Vertex Filtering

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improveease of graph constructionVSAvoidconstruction speed
Core Design Contradiction:
Ease of manufactureVSProductivity

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #10Preliminary action

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

Engineering Contradiction:
Improveability to add new verticesVSAvoidupdate processing speed
Core Design Contradiction:
Adaptability or versatilityVSProductivity

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #16Partial or excessive action

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

Engineering Contradiction:
Improveconstruction speedVSAvoidability to perform online processing
Core Design Contradiction:
ProductivityVSAdaptability or versatility

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.

Inventive Principle:
Principle #15Dynamics

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.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11416552B2Graph updating apparatus, graph updating method and program
Publication Date: 2022.08.16 NIPPON TELEGRAPH & TELEPHONE CORP
  • US11416552B2 patent drawing
  • US11416552B2 patent drawing
  • US11416552B2 patent drawing

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.