¿Cómo funciona la calculadora integrada en la búsqueda de Google?

Google tiene algunos algoritmos de análisis extremadamente complicados para tratar de determinar exactamente qué significa una consulta, para tratar de encontrar lo que quería decir en lugar de lo que dijo.

En este caso, la primera etapa probablemente detecte que parece una expresión matemática. Los únicos términos principales son números y operadores matemáticos (ya sean palabras o símbolos), y detectar números escritos no es mucho más difícil que notar dígitos. Después de todo, tienen un patrón bastante regular.

Una vez que se identifica una consulta como una expresión matemática, es fácil convertirla en un cálculo que dé una respuesta real. Esto sucede extremadamente rápido porque Google tiene [a] algunos algoritmos muy buenos y muy bien optimizados para hacer esto, y [b] mucha potencia de procesamiento creada para hacer exactamente esto.

En cuanto a determinar que “ciento cincuenta y dos mil quinientos nueve” es un número único, me imagino que eso se hace por contexto: reconoce que las únicas palabras son números y luego intenta analizar la expresión. Un tutorial sobre cómo podría funcionar este análisis podría ser:

  • uno: 1
  • cien: 1 × 100 = 100
  • cincuenta y dos: ( sin operador, así que supongamos que es una suma ) 100 + 52 = 152
  • mil: 152 × 1000 = 152000
  • cinco: ( sin operador ) 152000 + 5 = 152005
  • cien: ( ¡retroceso! significaban “500” ) 152000+ (5 × 100) = 152500
  • nueve: ( sin operador ) 152500 + 9 = 152509

Al menos, así es más o menos cómo lo escribiría, para empezar.