Multidimensional Data Structure Prefix Search for Range Queries

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data structures for orthogonal range search, such as k-d trees, face increased time complexity with increasing data sets and dimensions, and super-linear size data structures are impractical due to large size, while wavelet trees are limited to two-dimensional data.

Innovation Solution

A data processing device and method that uses a search unit to specify regions within a multidimensional space by shared feature and coordinate prefixes, and an aggregation unit to calculate information within the query region, reducing time complexity by dividing the query region based on shared prefixes rather than nodes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If a k-d tree is used for orthogonal range search, then the data structure size is linear O(n), but the time complexity increases to O(n(d-1)/d) with increasing dimensions and data sets

Engineering Contradiction:
Improvedata structure sizeVSAvoidsearch time complexity
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent segments the multidimensional space by recursively dividing it along different dimensions using hyperplanes. Each node in the tree structure represents a region defined by split planes, allowing the search space to be partitioned into manageable segments that can be processed independently during range queries.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent handles multidimensional range searches by transforming the problem into a series of one-dimensional range queries along each dimension. The tree structure organizes data with respect to different dimensions at different levels, enabling efficient projection and filtering along any queried dimension without being constrained by the curse of dimensionality.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Loss of time

If a super-linear size data structure is used, then the computation time is improved, but the data structure size becomes too large to be practical

Engineering Contradiction:
Improvecomputation timeVSAvoiddata structure size
Core Design Contradiction:
Loss of timeVSQuantity of substance

Solution Approach 1:

The patent performs preliminary actions by pre-processing the data to build a sorted structure that enables efficient querying. During the build phase, data is organized along different dimensions and sorted, allowing subsequent range queries to be executed quickly without requiring additional memory beyond the linear-sized tree structure.

Inventive Principle:
Principle #10Preliminary action

3Loss of time

If a wavelet tree is used for orthogonal range search, then the search speed is improved, but the method is limited to two-dimensional data only

Engineering Contradiction:
Improvesearch speedVSAvoiddimensional applicability
Core Design Contradiction:
Loss of timeVSAdaptability or versatility

Solution Approach 1:

The patent creates a universal data structure that can handle orthogonal range searches in any number of dimensions. The tree structure is designed to be dimension-agnostic, allowing it to function efficiently whether the data is 2D, 3D, or higher-dimensional, thus providing multi-functionality that extends wavelet tree capabilities beyond two dimensions.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS10795920B2Information processing device, information processing method, and computer-readable storage medium
Publication Date: 2020.10.06 NEC SOLUTION INNOVATORS LTD
  • US10795920B2 patent drawing
  • US10795920B2 patent drawing
  • US10795920B2 patent drawing

AI summary

An information processing device (100) processes a data structure that represents a set of points included in a multidimensional space, and includes: a search unit (10) that, when a particular multidimensional region is specified as a query region, specifies regions that are expressed as portions shared between regions starting with feature value prefixes and regions starting with coordinate prefixes with respect to respective dimensions, and that are included in the query region, and outputs selected sections that are sections included in a data structure corresponding to the specified regions, the feature value prefixes being prefixes obtained from bit representations of feature values of the points, and the coordinate prefixes being prefixes obtained from bit representations of coordinates of the points with respect to a particular dimension; and an aggregation unit (20) that calculates information regarding a set of points included in the query region, by using the selected sections.