// MRA - Match Rating Approach para comparación inteligente de nombres
Calcula la similitud numérica entre nombres.
Códigos optimizados usando las primeras 3 y las últimas 3 letras.
Ajusta el umbral en función de la longitud del nombre.
Match Rating Approach (MRA) es un algoritmo fonético desarrollado por Western Airlines en 1977. Codifica los nombres eliminando las vocales (excepto la primera letra), eliminando consonantes duplicadas y reduciendo el resultado a 6 caracteres (primeras 3 + últimas 3 si el nombre es más largo). En la fase de comparación calcula la similitud comparando caracteres desde el principio y el final, con un umbral que se ajusta según la longitud combinada de los códigos.
Pasos de codificación:
1. Eliminar las vocales (excepto la primera)
2. Eliminar consonantes duplicadas
3. Conservar las primeras 3 + las últimas 3 si la longitud > 6
Ejemplos:
CATHERINE → CTHRN
C[a]TH[e]R[i]N[e] → CTHRN
KATHERINE → KTHRN
K[a]TH[e]R[i]N[e] → KTHRN
SMITH → SMTH
SM[i]TH → SMTH
Umbrales de coincidencia:
Suma ≤ 4: se necesitan 5 coincidencias
Suma 5–7: se necesitan 4 coincidencias
Suma 8–11: se necesitan 3 coincidencias
Suma ≥ 12: se necesitan 2 coincidencias
CTHRN vs KTHRN:
Suma = 10, se necesitan 3 coincidencias
Resultado: 4 coincidencias → ¡COINCIDENCIA!
Match Rating Approach (MRA) es un algoritmo fonético desarrollado por Western Airlines en 1977 para la coincidencia de nombres de pasajeros. Combina fases de codificación y comparación y proporciona tanto un código fonético como una puntuación de similitud entre nombres.
A diferencia de Soundex o Metaphone, que solo proporcionan códigos, MRA incluye un algoritmo de comparación sofisticado que calcula puntuaciones de similitud. Ajusta el umbral de coincidencia según la longitud del nombre, lo que la hace más flexible y precisa para diferentes tipos de nombres.
La puntuación de similitud cuenta el número de caracteres coincidentes al comparar dos códigos MRA desde el principio y el final. La puntuación mínima necesaria varía según la longitud combinada de los códigos: los nombres más cortos necesitan mayor similitud para considerarse un match.
MRA es ideal para aplicaciones que requieren coincidencias de nombres matizadas: bases de datos de clientes, investigación genealógica, detección de fraude y vinculación de registros. Es especialmente eficaz para encontrar posibles duplicados con distintas grafías.