Pigeonhole Principle Search for Large Data

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing information retrieval systems face inefficiencies in searching large data sets due to reliance on sequential look-ups, which are time and energy intensive, especially when dealing with approximate matching in big data environments.

Innovation Solution

The implementation of a search technique based on the Pigeonhole Principle, which partitions bit-attribute vectors into segments and uses FuzzyFind method for indexing, allowing for efficient approximate search by reducing the need for sequential comparisons through direct access and filtering.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If sequential look-up is used for searching large data files, then the search can be performed with simple implementation, but the search speed becomes prohibitively inefficient and consumes excessive time and energy

Engineering Contradiction:
Improvesearch speedVSAvoidsearch time
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The patent divides the search space into multiple segments or partitions, allowing the search algorithm to process only relevant segments rather than performing sequential look-up across the entire data file. This segmentation enables parallel processing and reduces the time complexity from O(n) to O(n/k) where k is the number of segments, directly addressing the speed-time contradiction

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary indexing and preprocessing of the data file to create a search structure that enables faster retrieval. By organizing data into inverted indexes, hash tables, or other pre-computed structures before the actual search, the system eliminates the need for sequential scanning during query execution, significantly improving search speed while reducing query time

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If brute force approach is used for approximate searching, then the search can handle fuzzy criteria, but system performance is substantially undermined and consumes excessive time and energy

Engineering Contradiction:
Improveapproximate matching capabilityVSAvoidsystem performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent applies different processing strategies to different parts of the search process. For approximate matching, it uses specialized algorithms like edit distance calculations or phonetic matching only on candidate items that pass initial filtering, rather than applying brute force to all items. This localized application of complex matching logic maintains adaptability while preserving overall system performance

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent introduces intermediary data structures such as inverted indexes, Bloom filters, or hash tables that mediate between the query and the full text search. These intermediaries enable approximate matching by pre-organizing data according to various transformations (reverses, substrings, phonetic codes), allowing the system to handle fuzzy criteria efficiently without resorting to brute force comparison of all items

Inventive Principle:
Principle #24Intermediary (Mediator)

3Speed

If parallelization of sequential processes is implemented, then search operations can be accelerated, but the solution becomes very expensive and costly

Engineering Contradiction:
Improvesearch speedVSAvoidsystem complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent transforms the search problem from a one-dimensional sequential scan into a multi-dimensional search space using techniques like inverting the index structure, creating hash-based partitions, or organizing data in tree structures. This dimensional transformation enables parallel processing along different dimensions (e.g., multiple hash tables, different tree branches) without requiring complex distributed systems, achieving speedup while controlling device complexity

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

Data Source

PatentUS10521441B2System and method for approximate searching very large data
Publication Date: 2019.12.31 GEORGE WASHINGTON UNIVERSITY
  • US10521441B2 patent drawing
  • US10521441B2 patent drawing
  • US10521441B2 patent drawing

AI summary

The invention provides efficient searching with fuzzy criteria in very large information systems. The technique of the present invention uses the Pigeonhole Principle approach. This approach can be utilized with different embodiments, but the most effective realization would be to amplify some already given intrinsic approximate matching capabilities, like those in the FuzzyFind method [1][2]. Considering the following problem, data to be searched is presented as a bit-attribute vector. The searching operation includes finding a subset of this bit-attribute vector that is within particular Hamming distance. Normally, this search with approximate matching criteria requires sequential lookup for the whole collection of the attribute vector. This process can be easily parallelized, but in very large information systems this still would be slow and energy consuming. The present invention provides approximate search in very large files using the Pigeonhole Principle, circumvents the sequential search operations and reduces the calculations tremendously.