Trie Search Using Length Difference Filtering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database search methods, such as those using trie data structures, require a large number of calculations to find the closest symbol string to an input, leading to long processing times due to the extensive number of symbol strings in databases.

Innovation Solution

Calculating the shortest possible length difference and a reference value at each calculation point in the trie data structure, allowing for early termination of branches that cannot provide a better distance, thereby reducing the number of necessary calculations and speeding up the search process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If all calculation points in the trie data structure are calculated to find the best symbol string, then the accuracy of finding the closest symbol string is improved, but the calculation time and computational complexity increase significantly

Engineering Contradiction:
Improveaccuracy of finding closest symbol stringVSAvoidcalculation time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies preliminary action by calculating the length difference between the input symbol string and each branch's symbol string before performing full distance calculations. This preliminary calculation allows the system to identify and eliminate branches that cannot possibly yield the optimal result, thereby reducing the number of full calculations needed while maintaining accuracy.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements partial action by performing only necessary calculations on selected branches rather than all branches. By using the length difference as a filtering criterion, the system performs partial distance calculations only on branches that have the potential to contain the closest symbol string, avoiding excessive calculations on branches that cannot improve the result.

Inventive Principle:
Principle #16Partial or excessive action

2Quantity of substance

If the number of symbol strings in the database increases, then the comprehensiveness of the search is improved, but the number of required calculations increases leading to longer processing time

Engineering Contradiction:
Improvenumber of symbol strings in databaseVSAvoidsearch speed
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent applies segmentation by dividing the database search into independent branches of the trie data structure. Each branch can be evaluated separately using the length difference criterion, allowing the system to process large databases by breaking them into manageable segments that can be filtered and processed independently.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent uses preliminary action by calculating length differences for all branches before performing full distance calculations. This preliminary filtering step allows the system to handle large databases efficiently by eliminating irrelevant branches in advance, thereby maintaining search speed even as database size increases.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If distance calculations are performed for all branches, then the reliability of finding the best symbol string is improved, but the computational complexity and resource consumption increase

Engineering Contradiction:
Improvereliability of finding best symbol stringVSAvoidcomputational complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements partial action by performing distance calculations only on branches that pass the length difference filter. Instead of calculating distances for all branches, the system performs partial calculations only where necessary, maintaining reliability for finding the best symbol string while reducing computational complexity and resource consumption.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS8532988B2Searching for symbol string
Publication Date: 2013.09.10 SYSLORE
  • US8532988B2 patent drawing
  • US8532988B2 patent drawing
  • US8532988B2 patent drawing

AI summary

A method for searching for an input symbol string, includes receiving (B) an input symbol string, proceeding (C) in a trie data structure to a calculation point indicated by the next symbol, calculating (D) distances at the calculation point, selecting (E) repeatedly the next branch to follow (C) to the next calculation point to repeat the calculation (D). After the calculation (G), selecting the symbol string having the shortest distance to the input symbol string on the basis of the performed calculations. To minimize the number of calculations, not only the distances are calculated (D) at the calculation points, but also the smallest possible length difference corresponding to each distance, and on the basis of each distance and corresponding length difference a reference value is calculated, and the branch is selected (E) in such a manner that next the routine proceeds from the calculation point producing the lowest reference value.