Binary Similarity Search Using Hamming Threshold Conversion

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Molecular similarity searches using the Tanimoto metric are computationally expensive and time-consuming due to the complexity of calculating similarity between molecular fingerprints with thousands of features in large databases.

Innovation Solution

A system that converts Tanimoto thresholds into Hamming thresholds, using Hamming distances and Boolean operations to measure similarity between binary vectors, allowing for chunking and clustering to reduce the number of candidate vectors to be measured, thereby speeding up the search process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If Tanimoto metric is used for molecular similarity search, then measurement precision is improved, but productivity deteriorates due to computational expense

Engineering Contradiction:
Improvesimilarity measurement accuracyVSAvoidsearch speed
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent transforms the Tanimoto similarity metric into the Hamming distance metric by changing the mathematical parameters. The Tanimoto coefficient T(A,B) = |A∩B|/(|A∪B|) is converted to Hamming distance H(A,B) = |A△B|/n, where △ denotes symmetric difference. This parameter transformation maintains the ability to measure molecular similarity while enabling much faster computation through bit-wise XOR operations and population count functions, thus resolving the contradiction between measurement precision and productivity

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent replaces the complex set-theoretic operations (intersection, union) required by the Tanimoto metric with simple bit-wise XOR operations and population count functions in the Hamming distance approach. This substitution of computational mechanics transforms expensive set operations into efficient bit-level parallel operations that can be executed rapidly on modern processors, thereby improving search speed while preserving similarity measurement capability

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Reliability

If full database search is performed, then reliability is improved, but loss of time increases

Engineering Contradiction:
Improvesearch completenessVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-computing and storing the population counts (number of set bits) for all molecular fingerprint vectors in the database before the actual similarity search. This pre-computed information is then used to quickly filter and prune the search space during query execution, allowing the system to maintain reliable comprehensive search while significantly reducing processing time by avoiding unnecessary similarity calculations for obviously dissimilar molecules

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the molecular fingerprint vectors into fixed-width binary fields and processes them using parallel bit-wise operations. This segmentation enables the decomposition of the large-scale similarity search into smaller, independent computational units that can be processed efficiently in parallel, reducing overall processing time while maintaining complete search coverage across the entire database

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11645292B2Efficient similarity search
Publication Date: 2023.05.09 GSI TECHNOLOGY INC
  • US11645292B2 patent drawing
  • US11645292B2 patent drawing
  • US11645292B2 patent drawing

AI summary

A system for measuring similarity between a binary query vector and a plurality of binary candidate vectors includes a storage unit and a processor. The storage unit stores the binary query vector and the plurality of candidate vectors, and the processor performs Tanimoto calculations in terms of Hamming distances. The processor includes a Tanimoto to Hamming threshold converter, a Hamming measurer, and a Hamming comparator. The Tanimoto to Hamming threshold converter converts a Tanimoto threshold into a Hamming threshold. The Hamming measurer measures the Hamming distances between the candidate vectors and the query vector. The Hamming comparator selects candidate vectors whose Hamming distance from the query vector is less than or equal to the Hamming threshold.