votar El gran libro de los números aleatorios

 

10 Feb
2010

¿Es posible generar números aleatorios? ¿Es posible realizar un experimento totalmente impredecible en el mundo real? Esta y otras preguntas pretendo responder en esta entrada para el 1er Carnaval de Matemáticas.

Dentro del estudio de la estadística y la probabilidad, se define como  aleatorio aquel resultado que es impredecible o fruto del azar. No es posible llegar hasta él siguiendo una secuencia. Matemáticamente hablando, el azar, la lo aleatorio se estudia en Estadística y Probabilidad.

Existen numerosas situaciones cotidianas en las que interviene el azar. Tenemos que distinguir en este punto que hay varios tipos de azar. Es decir, el desconocimiento absoluto del resultado y el azar en un sistema determinista que involucra tantas variables que al final, el resultado es impredecible.

Por ejemplo: teóricamente sería posible que al tirar un dado físico pudiéramos evaluar todas las condiciones y predecir el resultado. Pero en la práctica intervienen tantos factores: forma, peso, densidad, el fluido del aire, turbulencias, la fuerza de la gravedad, etcétera que podemos considerar como azar el hecho de tirar un dado y ver qué resultado se obtiene.

El número de veces que ocurre un suceso con respecto al número de veces que se realiza el experimento tiende a lo que llamamos “probabilidad”. Es decir: conforme el número de repeticiones del experimento tiende a infinito, la frecuencia con la que ocurre el suceso tiende a un valor que llamamos probabilidad. Por ejemplo, la probabilidad de que al tirar un dado de seis caras salga una cualquiera es la misma y vale 1/6.

Si realizamos millones de veces el experimento veremos como el número de veces que obtenemos un valor determinado se va aproximando a esto. Podemos asignar a priori cuánto vale la probabilidad porque conocemos de antemano el espectro de valores posibles que puede tener el experimento.

Generar números aleatorios

Hoy en día existen métodos numéricos que, si bien no nos pueden dar números aleatorios realmente, sí que pueden conseguir una pseudoaleatoriedad bastante buena en el sentido de que es difícil poder predecir la secuencia de generación. Los algoritmos de números aleatorios normalmente empiezan con un valor inicial o semilla al que se le aplican una serie de cálculos más o menos complejos dependiendo del grado de azar deseado y llegamos a un resultado. El número no es aleatorio puramente pero si el algoritmo es lo bastante bueno, puede parecerse a lo que buscamos: el ruido.

Asociamos intuitivamente “ruido” a un sonido  que no sigue ningún ritmo en particular, que varía en intensidad y frecuencia, etcétera. Justamente una señal aleatoria. Cuando encendemos un televisor analógico y escaneamos la banda de UHF, la nieve es ruido. No existe  una secuencia predecible en él.

En un ordenador no podemos aspirar a tener un número aleatorio salvo que la semilla del algoritmo ya lo sea. Podemos describir una secuencia pseudoaleatoria que nos lleve a conseguir un conjunto de números aleatorios.  Está claro que hoy en día con los ordenadores modernos y su potencia de cálculo es más fácil conseguir números pseudoaleatorios. Pero antes no lo era tanto.

A Million Random Digits with 100,000 Normal Deviates” es un curioso libro publicado en 1955. Parece el típico libro de tablas que tiene la gente especializada en un campo para ayudarle en su tarea. Y aunque el uso de tablas matemáticas es muy habitual, su creación puede ser el trabajo de toda una vida. No sería una exageración decir que muchas vidas se han perdido por culpa de tablas con errores de cálculo. No fue el primero, ya en 1927 la Cambridge University publicó un libro con 41600 dígitos aleatorios.

Durante el siglo XIX, la producción de tablas matemáticas era fundamental para cualquier trabajo científico y la dependencia de éstas era crucial. Mucha gente dedicaba su vida entera a hacer este tipo de tablas. A menudo, las tablas publicadas en siglos pasados iban siendo revisadas con sucesivos añadidos. Algo que cualquier calculadora cutre de hoy en día hace, lleva detrás el sufrimiento y quebraderos de cabeza de muchos matemáticos a lo largo de la historia.

Como ya he dicho antes, se intentaban conseguir listas de todo tipo y, entre ellas y por sorprendente que parezca, de números aleatorios. En este libro, las primeras 25 páginas muestran el método de obtención de los números y el resto es una lista de un millón de números generados con este procedimiento.

El método básicamente consiste en una especie de ruleta electrónica cuya “semilla” era una señal aleatoria de ruido. Los dígitos son dispuestos en una manera particular y codificados en tarjetas perforadas de IBM. Entonces, se hacían pasar por un ordenador y los resultados eran analizados para comprobar que realmente no tenían ningún patrón reconocible. El resultado fue publicado siguiendo el modelo 856 de IBM y encuadernado en forma de libro.

El quid de la cuestión está en la señal pulsante de frecuencia aleatoria que alimenta al sistema como semilla. De hecho, cualquier sistema generador de ruido serviría y en los años 40 era común utilizar una válvula termoiónica (parecida a un tiratrón) para este tipo de experimentos.

Utilizar este libro conllevaba un ritual muy curioso: abrir el libro por una página cualquiera. A ciegas elige un número de 5 cifras. Este número reducido a módulo 2 determina la línea de comienzo y los dos dígitos a la derecha, determinan la columna. Y además, toda una serie de consejos para evitar acabar abriendo siempre el libro por las mismas páginas. A la izquierda de estas palabras, se encuentra un extracto del libro.

En los ordenadores UNIX existe un dispositivo llamado /dev/random que usa el ruido aleatorio de su entorno para generar números. También tenemos por ejemplo http://random.org donde podemos generar los que queramos.  Mucho más asequible sin duda.

Más información:

Votaste 3.00 de 5
[?]

Entradas (posiblemente) relacionadas


20 Comentarios para El gran libro de los números aleatorios

Trackbacks/Pingbacks a esta entrada:

Avatar

DZPM

Febrero 10th, 2010 a las 15:30

En el caso de /dev/random, añadir que en muchos casos va conectado a hardware analógico que genera ese input “aleatorio”.

Técnicamente se podría medir un sistema cuántico. Esos datos sí que serían 100% aleatorios, ¿verdad?

Avatar

MiGUi

Febrero 10th, 2010 a las 15:37

Si, en un ordenador cuántico se podrían generar números aleatorios con más facilidad.

Avatar

Milhaud

Febrero 10th, 2010 a las 21:18

Todo esto me ha recordado a unas prácticas que tuve estudiando en la facultad. En ella teníamos que generar movimientos aleatorios de satélites en una pantalla, y hallar de forma continua el camino mínimo entre los dos más lejanos teniendo en cuenta una serie de parámetros (que no vienen al caso).

La cuestión es que todos terminamos usando el random de la versión de Java que se usaba entonces (1.2 creo recordar), y esta función en cuestión utilizaba el Timestamp de inicio del sistema (momento en el que arrancaba el ordenador) como uno de los parámetros del random, razón por la cuál el profesor terminó bajándonos unas décimas por la poca aletoriedad de la función…

Pero bueno, todo esto para decirte que fabuloso artículo. Fácil de seguir y altamente instructivo.

Avatar

hellmann

Febrero 10th, 2010 a las 21:18

Hola. Excelente post.

Sólo mencionar que es cierto que sólo un sistema cuántico puede generar números realmente aleatorios. Además no es necesario crear un ordenador cuántico, que es más complicado. De hecho actualmente se pueden comprar dispositivos de generación de números aleatorios por procedimientos cuánticos.

Explicación sencilla: http://www.youtube.com/watch?v=gfAElbsM-Og&NR=1

Dispositivo comercial: http://qrbg.irb.hr/

Por último decir que recientemente un físico español, Antonio Acín, ha desarrollado -teóricamente- un nuevo método para producir números cuánticos aleatorios, basándose en las desigualdades de Bell. Más información en: http://xxx.unizar.es/abs/0911.3427

Avatar

Víctor

Febrero 11th, 2010 a las 08:40

Ese libro me recuerda a los que había en los estantes de la biblioteca de babel de Borges.

Avatar

BuGMaN

Febrero 11th, 2010 a las 10:45

El mundo cuántico es intrínsecamente aleatorio, y por tanto de cualquier sistema cuántico se pueden extraer números aleatorios.

El problema es que esto sólo ocurre en la teoría. Cuando topamos con la tecnología nos damos cuenta de que es imposible medir estos sistemas sin tener sesgos. Es por esto que luego todos los sistemas llevan un postproceso de blanqueado (whitening) del ruido.

Por otro lado, este tipo de sistemas son comunes hoy en día, aunque el problema es que la velocidad a la que producen bits aleatorios no es muy grande. Yo he trabajado con el Quantis de idQuantique (una empresa suiza) y es bastante cómodo de usar (tarjeta pci o usb) y razonablemente rápido (4-16 Mbps).

Avatar

holatao

Febrero 11th, 2010 a las 13:05

En que se diferencia tirar un dado , a el experimento de Georges Louis Leclerc, las agujas y pi?

Existe el azar?
No sabemos ni porque caen las cosas al suelo , no sabemos que es la gravedad y se nos llena la boca hablando del azar.
Vamos por partes y poco a poco.

Saludos.

Avatar

MiGUi

Febrero 11th, 2010 a las 14:10

En mi opinión esa visión nihilista de “no sabemos nada” no conduce a ningún sitio.

El azar es un concepto matemático perfectamente definido puesto que las matemáticas no requieren una realidad a la que aplicarse, por lo tanto sabemos perfectamente lo que es.

La gravedad es un concepto físico y como tal sabemos cómo funciona a determinadas escalas, no hay más.

Avatar

holatao

Febrero 11th, 2010 a las 15:51

“No hay mas” es un concepto conformista y dictatorial , sabes que si hay mas, muchisimo mas, no es cientifica tu respuesta.

Avatar

Ontureño

Febrero 12th, 2010 a las 08:42

Jajaja, holatao, eres un máquina. Te deberían dar el nobel de “Filosifía Barata para impresionar a tus amigos”.

Buen post, Migui.

Por cierto, ¿alguien sabe cómo usar exactamente /dev/random para generar un archivo ASCII con, digamos, 1000 números aleatorios?

Avatar

holatao

Febrero 12th, 2010 a las 13:28

Ontureño, no he mencionado ningun tema filosofico, tampoco he agredido a Migui, no necesita tu defensa,
atacandome tu, diciendome “filosofo barato” asi que tal para cual dejate de cuentos. Tronco, cabeza y sistema locomotor.

Preguntaba al publico , no a Migui concretamente (muy agradecido a Migui por
tu respuesta), dos cosas, poco racional es que te sientas agredido, Ontureño.

Necesito saber la explicacion racional del experimento de Georges Louis Leclerc, el de las agujas y pi?

Avatar

holatao

Febrero 12th, 2010 a las 13:30

OntureÑo ñoñoño

Con un programa y un pc vas a conseguir numeros pseudoaleatorios.
http://es.tldp.org/Paginas-manual/man-pages-es-1.28/man4/random.4.html

Avatar

MiGUi

Febrero 12th, 2010 a las 18:58

Ontureño que yo recuerde en el man de /dev/random viene un scriptcillo de ejemplo.

Avatar

mr_cenutrio

Febrero 13th, 2010 a las 00:02

“En que se diferencia tirar un dado , a el experimento de Georges Louis Leclerc, las agujas y pi?” Supongo que en que tirando un dado es raro que te salga como resulta Pi o algo relacionado con PI

Avatar

holatao

Febrero 13th, 2010 a las 05:41

Hola.
“mr_cenutrio

Febrero 13th, 2010 a las 00:02

“En que se diferencia tirar un dado , a el experimento de Georges Louis Leclerc, las agujas y pi?” Supongo que en que tirando un dado es raro que te salga como resulta Pi o algo relacionado con PI

Espera espera, a ver si nos aclaran esto…
reduzcamos el problema, a ver si me aclaro las ideas…
en que se diferencia un dado de una aguja ?

(un dado ,puede o no puede tener forma de aguja o una aguja con forma de dado?
podemos tallar una aguja para que tenga 6 caras, de ellas, 4 muy alargadas y 2 pequeñas.)

Avatar

MiGUi

Febrero 13th, 2010 a las 14:17

Pues para empezar en que el espectro de valores posibles en un dado es 1,2,3,4,5,6 y el de una aguja en una baldosa es 0,1.

Avatar

mr_cenutrio

Febrero 13th, 2010 a las 21:45

holatao sobre la diferencia entre una cosa y otra de las que comentas, pues supongo que desde del punto de vista de que son experimentos relacionados con la aleatoriedad no hay mucha diferencia, sin embargo, desde el punto de la metodología, si que la hay, si no ves la diferencia entre lanzar un dado y una aguja espero que no te dediques a la costura ni a jugar al parchis que puedes acabar haciéndole un agujero bastante serio a la prenda o pinchándote.

La parte de tu comentario que termina con “vamos por partes”, ¿quieres decir que por no conocer los efectos de los campos gravitatorios a todas las escalas ya no deberían de investigar sobre aleatoriedad?, porque no tiene sentido hacer eso, cada investigador que se centre en lo que le interesa o lo que le llame mas la atención, no creo que dé buenos resultados poner a los investigadores a trabajar en temas que no le interesan, además investigando algo puedes hacer un descubrimiento relacionado con otro tema, por ejemplo, investigando sobre las propiedades de la luz, se descubrió un error (no muy importante en mi opinión) en la teoría de la gravitación universal de Newton (creo que fue Einstein, si los datos no son correctos pido disculpas de un humilde profano en temas físicos).

Para terminar, se me paso el comentario mas importante en mi primera intervención, me encantó el artículo

Avatar

holatao

Febrero 15th, 2010 a las 01:05

Hola

“MiGUi

Febrero 13th, 2010 a las 14:17

Pues para empezar en que el espectro de valores posibles en un dado es 1,2,3,4,5,6 y el de una aguja en una baldosa es 0,1.

Si usamos un dado para hacer el experimento , no se consideran los valores que salgan cara arriba, ni abajo , ni derecha, ni izquierda ni alante ni atras.
Si usamos para el experimento un dado en vez de una aguja, tambien consideraremos como un acierto, cada vez que determinado eje del dado, corte alguna linea de la base.

el espectro de valores posibles en un dado es 1,2,3,4,5,6 y el de una aguja en una baldosa es 0,1, si la aguja tiene dos caras, pero puede tener varias caras, se puede afilar y tallar una aguja para que tenga muchos lados y
al caer al suelo, sera igual que un dado.
No tiene que ver la cara que queda arriba del dado o la aguja, respecto a
el angulo de caidam rebotes y parada.

El experimento es respecto al angulo de caida del dado, no del valor que queda cara arriba.

En los experimentos relacionados con la aletoriedad, cualquier pequeño cambio, hace muy diferentes los resultados.

Avatar

MiGUi

Febrero 15th, 2010 a las 01:10

Por eso hay que repetir infinitas veces un experimento. Para atenuar las pequeñas diferencias.

Avatar

holatao

Febrero 16th, 2010 a las 18:11

Pero porque tiende a pi?
Algún teorema, principio físico, matemático, alguna constante universal.
Cual es la razón para que tienda a pi y no a cualquier otra?
Esto tiene una explicacion muy fácil, o no?

“Por eso hay que repetir infinitas veces un experimento. Para atenuar las pequeñas diferencias.”

” atenuar las pequeñas diferencias”

existen las causas de esas diferencias,?

me suena a movimiento armónico…
Inercia?
Un objeto normal de materia, tiene cantidad de movimiento.

Pero ,puede o no puede, tener inercia, el calculo de una media y un resultado matemático?
Eso que en matemáticas llamamos “tendencia” en física lo llamamos “inercia” ?

Subir