Beider-Morse Phonetic Matching (BMPM) is an algorithm developed by Alexander Beider and Stephen P. Morse to search a name list for names that are phonetically equivalent to the desired name. It is similar to a soundex search in that an exact spelling is not required. But unlike soundex, it does not generate a large quantity of false hits.
From the spelling of the name, an attempt is made to determine the language. Phonetic rules for that particular language are then applied to transliterate the name into a phonetic alphabet. If it is not possible to determine the language with a fair degree of certainty, generic phonetic rules are used instead. Finally, language-independent rules regarding such things as voiced and unvoiced consonants and vowels are applied to further insure the reliability of the matches.
Developers wishing to incorporate BMPM into their applications can do so by clicking on the link below to download the source files. The release notes can be found in the file bmphonetics.txt.
Download BMPM version 2.07
More information on BMPM can be found in the following two papers:
Phonetic Matching: A Better Soundex Beider-Morse Phonetic Matching: An Alternate to Soundex with Fewer False Hits