Parallel Bloom Filter Circuit for Approximate Pattern Matching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing approximate pattern matching techniques are inefficient and resource-intensive when dealing with large sets of patterns, particularly in applications like computational biology and computer communications, due to the need for extensive computer resources and complex filtering processes.

Innovation Solution

A scalable filtering circuit and reduction stage utilizing parallel Bloom filters or Bloom filter arrays with a single hash key generator to detect potential pattern matches, reducing the number of patterns for verification, and employing a verification stage with an approximate match engine to confirm matches, allowing for efficient processing of large data streams.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional filtering techniques are used for approximate pattern matching, then the matching accuracy is maintained, but the processing speed and resource efficiency deteriorate when dealing with large sets of patterns

Engineering Contradiction:
Improveprocessing speedVSAvoidfiltering process complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides the pattern matching process into distinct stages: a filtering stage that quickly eliminates non-matching patterns, and a verification stage that performs detailed approximate matching only on candidate patterns. This segmentation allows the system to maintain accuracy while improving processing speed by avoiding exhaustive verification of all patterns.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary filtering mechanism that sits between the input data stream and the verification stage. This filter acts as a mediator that pre-processes the data and identifies candidate matches before they reach the computationally intensive verification stage, thereby reducing the overall complexity and resource requirements.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If exhaustive verification of all patterns is performed, then matching accuracy is ensured, but processing time and computational resources increase significantly

Engineering Contradiction:
Improvematching accuracyVSAvoidverification time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary filtering actions before the main verification process. By pre-processing the data stream and identifying candidate patterns that are likely to match, the system prepares the input for the verification stage in advance, ensuring that only relevant patterns undergo time-consuming verification.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent applies partial verification by performing exhaustive checking only on a subset of patterns that pass the filtering stage. Instead of verifying all patterns completely, the system performs partial verification on candidates and full verification only when necessary, reducing overall verification time while maintaining reliability for critical matches.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If multiple parallel filter mechanisms are used to detect patterns, then processing capacity increases, but the number of false positive matches increases

Engineering Contradiction:
Improveprocessing capacityVSAvoidmatch detection accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent implements feedback mechanisms where the results from parallel filter mechanisms are analyzed and used to adjust subsequent filtering operations. The system learns from false positives generated by parallel filters and refines its filtering criteria, thereby maintaining high processing capacity while progressively improving match detection accuracy.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS7636703B2Method and apparatus for approximate pattern matching
Publication Date: 2009.12.22 CHARTER COMM OPERATING LLC
  • US7636703B2 patent drawing
  • US7636703B2 patent drawing
  • US7636703B2 patent drawing

AI summary

A system and method for inspecting a data stream for data segments matching one or more patterns each having a predetermined allowable error, which includes filtering a data stream for a plurality of patterns of symbol combinations with a plurality of parallel filter mechanisms, detecting a plurality of potential pattern piece matches, identifying a plurality of potentially matching patterns, reducing the identified plurality of potentially matching patterns to a set of potentially matching patterns with a reduction stage, providing associated data and the reduced set of potentially matching patterns, each having an associated allowable error, to a verification stage, and verifying presence of a pattern match in the data stream from the plurality of patterns of symbol combinations and associated allowable errors with the verification stage.