Address Validation Using Levenshtein Distance and Range Checking
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing address validation and correction systems, such as the USPS's ZIP+4 engine, face inefficiencies due to phonetic algorithms that struggle with minor spelling errors and inability to match words with single-letter errors, and are time-consuming when performing multiple accesses to address data sets for number range processing.
Innovation Solution
A system that constructs a fast search table of street names for a defined geographic locale, using a non-phonetic matching algorithm like the Levenshtein Distance algorithm to create a ranked list of fuzzy matches, allowing for efficient validation and correction of addresses by selecting the most similar street name and verifying if the building number falls within its range.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If phonetic algorithms are used for address matching, then addresses with similar sounds can be matched, but minor spelling errors and single-letter errors cannot be corrected accurately
Solution Approach 1:
The patent changes the matching parameter from phonetic similarity to edit distance (Levenshtein distance). Instead of comparing sound patterns, the system calculates the minimum number of single-character edits needed to transform one string into another, enabling precise detection and correction of spelling errors including single-letter differences.
Solution Approach 2:
The patent replaces the phonetic algorithm mechanism with a character-based edit distance mechanism. This substitution allows the system to handle spelling variations that phonetic algorithms miss, such as typos and transposed letters, by systematically comparing character positions and transformations.
2Reliability
If multiple accesses to address data sets are performed for number range processing, then comprehensive validation is achieved, but processing time increases significantly
Solution Approach 1:
The patent performs preliminary actions by pre-organizing address data into optimized data structures with pre-computed number ranges. This allows the system to validate addresses in fewer steps, as the preliminary organization of data eliminates the need for multiple sequential accesses during validation, reducing processing time while maintaining comprehensive validation.
Solution Approach 2:
The patent segments the address validation process into independent components: street name matching, number range validation, and address assembly. By dividing the comprehensive validation into segmented steps with optimized data access patterns, the system achieves thorough validation without requiring multiple full-data-set accesses, thus reducing overall processing time.
3Reliability
If traditional address validation methods are used, then comprehensive checking is performed, but processing speed is slow
Solution Approach 1:
The patent replaces traditional sequential mechanical searching with optimized data structures and algorithms. By using hash tables, sorted arrays, and pre-computed ranges, the system maintains thorough validation checking while achieving significantly faster processing speeds through reduced computational complexity.
Solution Approach 2:
The patent changes the validation approach from exhaustive sequential comparison to targeted verification using pre-organized data. By transforming the validation parameters from character-by-character comparison to structured range checking, the system achieves both thoroughness and speed, processing addresses faster while maintaining comprehensive validation.
Data Source
AI summary
Systems, methods, and software determine whether a field of an input digital representation of information, such as the street name field in an address, is correct by quickly comparing the field to a list of valid choices for that field. The list of valid choices is generated based on information from the input digital representation, such as a character string. If an exact match is not found, a fuzzy match comparison determines the most closely matching valid choice. If a suitable fuzzy match is not found, then the input information is invalid. Otherwise, another field of the input information, such as the building number field of an address, is tested for validity. If the second field passes the validity check, then the fuzzy match (or exact match) for the field is valid. A fuzzy matching field may replace the input field, thereby correcting the input information.


