Inicio Actualidad ¿Por qué seguimos usando el bombo de la Lotería de Navidad y...

¿Por qué seguimos usando el bombo de la Lotería de Navidad y no un ordenador?

Como cada año, el próximo 22 de diciembre, los niños de San Ildefonso configurarán los boletos ganadores de la Lotería de Navidad, cantando los números que salen del bombo, bajo la mirada atenta de la mitad de España. En la esfera giratoria hay 100 000 bolas con números del 0 al 99999, todas con el mismo peso (3 g) y diámetro (18,8 milímetros), y lo suficientemente mezcladas. De esta manera, se garantiza que la probabilidad de recibir el premio de cada uno de los números vendidos sea igual a 1/100.000.

Pero, ¿hace falta toda esa ceremonia para asegurar la aleatoriedad del sorteo? Más allá del rito y del folclore, ¿no se podría, simplemente, generar los números aleatorios con un ordenador, sin necesidad de bombo, ni niños, ni televisión? Para que una secuencia de números sea aleatoria no debe ser posible predecir el siguiente número que va a salir sabiendo cuáles han sido los anteriores. Así sucede, de manera ideal, con el bombo en el que todas las bolas son exactamente iguales, un dado perfecto, o con el ruido atmosférico.

Sin embargo no es sencillo simular estos fenómenos. Podría parecer que, dejando la mente en blanco y escribiendo de forma automática cifras bastaría para obtener una secuencia aleatoria, pero lo cierto es que el resultado dista mucho de serlo. Para un ordenador es imposible; siguen un comportamiento determinista: a partir de unos datos de entrada, siguiendo una serie de reglas, producen unos datos de salida. No hay lugar para los procesos aleatorios, por tanto, tan solo es posible simularlos.

Los números generados tendrán algunas de las propiedades de las secuencias aleatorias, y, si son buenos, deberían pasar los llamados “contrastes de aleatoriedad”. La idea es que estas series no se puedan distinguir de una secuencia verdaderamente aleatoria empleando recursos computacionales razonables en tiempo razonable. Esta no es una definición estricta y, de hecho, muchas veces no está tan claro si una secuencia de números es o no aleatoria. Así sucede con las cifras decimales del número Pi. Los decimales obtenidos hasta ahora parecen seguir un patrón aleatorio, pero sería precipitado decir que así sucede hasta el infinito.

Existen diversos algoritmos de generación de números aparentemente aleatorios (llamados pseudo aleatorios). El matemático John Von Neumann fue un pionero al proponer un algoritmo de generación que empleaba únicamente las operaciones aritméticas del ordenador, para resolver ecuaciones dentro del proyecto Manhattan. Su método era muy sencillo: partiendo de un número de ocho cifras denominado semilla, como por ejemplo x0= 45688159, cada número de la sucesión se obtenía a partir de las ocho cifras centrales del cuadrado del anterior.

Así, x0^2 = 2087407872809281; X1= 40787280;… Siguiendo esta sucesión se obtiene una serie de números en la que no es sencillo encontrar un patrón, pero que, haciendo un análisis un poco más detallado, no supera los mencionados contrastes. Como afirmó uno de los matemáticos que más ha trabajado en estos temas, Donald Knuth, “los números aleatorios no se deben generar con métodos escogidos de forma aleatoria”. Es necesario analizar y construir algoritmos para ello.

Durante mucho tiempo se empleó el algoritmo RANDU en numerosos sistemas comerciales que luego resultó ser un método más que deficiente para muchos propósitos. Actualmente, para obtener buenas secuencias pseudo aleatorias se utilizan diversos métodos.

Los principales generadores son los llamados lineales congruenciales, que emplean una operación algebraica llamada congruenciapara obtener números de la sucesión. También se emplean los llamados multiplicativos, así como sus combinaciones. Asimismo, los sistemas dinámicos caóticos (como por ejemplo la aplicación logística), aunque deterministas, han probado ser buenos generadores de números aleatorios.

Más allá de las loterías, los números pseudo aleatorios se emplean en otros sorteos (el que determina la letra con la que empiezan las oposiciones, las mesas electorales…); y también en las comunicaciones digitales y para modelizar fenómenos físicos, biológicos, políticos y económicos.

Los números aleatorios constituyen también un elemento esencial en muchas otras áreas de las ciencias de la computación (algoritmos aleatorizados, verificación de algoritmos, complejidad algorítmica, criptografía…), de la Ciencia de Datos (métodos de muestreo y remuestreo, contrastes Montecarlo, Inferencia Bayesiana, aprendizaje profundo,…) y, en general, en cualquier problema de cálculo científico que, de manera directa o indirecta, incluya algún elemento probabilístico.

El uso progresivo de modelos de simulación cada vez más detallados y complejos exige generadores de números aleatorios cada vez de mayor calidad, de ahí que ésta constituya una área de investigación activa. Los resultados son cada vez mejores, pero aunque en países como EE UU sí se emplean los números pseudo aleatorios para algunas loterías (lo que ha dado lugar a fraudes como el perpetrado por el director de seguridad de uno de los sorteos), en España, por el momento seguimos manteniendo el sorteo de Navidad con el bombo como parte de la tradición