Por @Alvy — 13 de Diciembre de 2017

Driver, una creación de Dmitry Morozov, es un peculiar mecanismo interesante de observar –y un poco raro de escuchar– que ha sido calificado como una forma bastante complicada de generar números aleatorios. Según la descripción del autor:

A todos los efectos este objeto es una compleja máquina de retroalimentación, pero en la que la retroalimentación no tiene un impacto directo en sí misma, sino en el uso de elementos cinéticos y mecánicos -intermediarios. Estos intermediarios no son otra cosa que generadores de números aleatorios dentro de un sistema complejo y armonioso. El resultado son cambios constantes en el sonido y el intento del sistema de mantener el equilibrio y continuar con su trabajo. En cierto modo se puede afirmar que el objeto está «realizando un ritual rutinario», repitiendo infinitamente sus acciones para extender su ciclo de vida.

El Driver utiliza canicas de cobre que en su camino pueden atravesar siete tubos de cobres diferentes. Allí se contabilizan y pasan a un Arduino Mega, que controla un brazo robótico que las vuelve a poner en su posición inicial. En este otro vídeo el autor explica su funcionamiento de forma más detallada.

Con esa información se podrían obtener números al azar generados de forma cinética. Asegurándose de que no tengan ningún sesgo debido a la construcción desde luego que sería una forma complicada a la vez que artística de generar números aleatorios.

Compartir en Flipboard  Compartir en Facebook  Tuitear
Por @Alvy — 12 de Diciembre de 2017

250000 Dados

Unos investigadores de la Universidad de Navarra han publicado un trabajo en el que analizan
lo les sucede a 25.000 dados cuando se agitan al azar. El resultado es una ordenación bastante curiosa en forma de círculos concéntricos. Para que esto funcione hay que agitar los dados en un cilindro grande «de forma suficientemente vigorosa», según sus propias palabras.

El asunto tiene su lógica porque el proceso requiere muchas sacudidas (unas diez mil). Como el «cubilete gitante» es cilíndrico tienden a desplazarse aleatoriamente pero hacia el exterior a medida que se gira aunque sea poco. Esto va disponiendo los dados caótica pero ordenadamente una geometría de densidad máxima. Lo que se traduce a la larga en capas planas y precisos círculos concéntricos.

Cada dado mide unos 5 mm de lado. En el experimento –que grabaron en vídeo para luego examinar lo que sucedía– observaron que la zona central es la que más tarda en colocarse y a veces ni siquiera queda ordenada. Probaron a agitar el mecanismo 1.000, 10.000 o incluso 100.000 veces durante 24 horas, pero ordenar el centro resultaba complicado.

Aunque los dados son cubos casi perfectos los mismos principios físicos son aplicables a otro tipo de materiales granulares. Esto explica cómo se apilan de forma natural a veces, y puede tener aplicaciones a la hora de trabajar con materiales similares como con polvo o granos – incluso en gravedad cero.

P.D. Naturalmente, que los dados quedaron ordenados mostrando el mismo número (por ejemplo un 6) en su cara superior sería altamente improbable, por no decir imposible. Con 25.000 dados la probabilidad sería 1/625.000 lo cual está tan absolutamente cerca de 0 que es básicamente cero.

(Vía APS + Boing Boing + My Modern Met.)

Compartir en Flipboard  Compartir en Facebook  Tuitear
Por @Alvy — 8 de Noviembre de 2017

Tom Scott y el criptógrafo Nick Sullivan explican en este vídeo como la empresa Cloudflare –dedicada a servicios de contenidos y seguridad en Internet– utiliza en sus servidores varios métodos físicos, a cual más curioso y llamativo, para generar números aleatorios.

Uno de ellos es un gigantesco mural de coloridas lámparas de lava. Expuesto en su oficina, una webcam toma una fotografía de vez en cuando y el resultado –con infinitas y caóticas variaciones de luz, color y píxeles– se procesa automáticamente mediante una función matemática hash para generar un valor semilla que alimenta un generador de números aleatorios en el kernel de Linux de los servidores.

Sabemos por la teoría que matemáticamente sólo se pueden generar números pseudoaleatorios, algo que no impide que usemos criptografía bastante fiable todos los días. Pero en Cloudflare pensaron que añadir este factor sería un plus. Normalmente se utilizan métodos como los movimientos del ratón, el tiempo entre pulsaciones de teclas o el ruido electrónico.

Además de las lámparas de Lava en la sede de Londres tienen otro curioso montaje: un doble péndulo caótico que se graba en vídeo y con el cual también se generan semillas para los generadores aleatorios. Y en la sede de Singapur utilizan una fuente radioactiva con la misma finalidad. Más aleatorio, difícil.

Relacionado:

Compartir en Flipboard  Compartir en Facebook  Tuitear
Por @Alvy — 24 de Octubre de 2017

Clock numbers

Los ordenadores necesitan números aleatorios para realizar todo tipo de tareas: simulaciones, juegos, criptografía, arte… Pero la forma de generarlos es puramente matemática, lo cual es un problema más que una ventaja: al cabo de un tiempo lo que parece aleatorio no es tan aleatorio. Se puede utilizar una combinación con procesos físicos más o menos aleatorios (desde los movimientos del ratón sobre la mesa a la radioactividad), pero en base a matemáticas puras lo mejor que se puede ofrecer son números pseudoaleatorios. Son algo bastante cercano al puro azar pero en cierto modo también limitados en cuanto a su aleatoriedad.

En cualquier caso, generar una buena secuencia de números pseudoaleatorios matemáticamente tampoco es fácil. Venkatraman Srikanth explica en un artículo muy divulgativo las matemáticas que hay tras esa generación de secuencias de números pseudoaleatorios, algo que denomina caos predecible. Básicamente se trata de encontrar una función cuyos resultados varíen cada vez que se utilice, aunque se sepa que se repetirá porque técnicamente sólo se puede utilizar una cantidad de números limitada (por ejemplo los números de la esfera de un reloj o los 264 bits de un número almacenado en una variable).

El número que se utiliza como entrada de la función se llama semilla y el proceso es básicamente repetitivo. Si la función es buena el resultado producirá un valor que al usar de nuevo como semilla dará otro distinto, luego otro y así sucesivamente hasta que se hayan cubierto tantos como sea posible (no necesariamente todos). Es lo que se conoce como Generador lineal congruencial y cuanto más grande sea su periodo y la distribución de los bits que se eligen como resultado, mejor.

Quien necesite algo mejor, ya sabe: a combinar las fórmulas matemáticas con otros fenómenos físicos como la radioactividad, el ruido electrónico o los fenómenos cuánticos cuya aleatoriedad se considera tan perfecta como es posible definirla.

Relacionado:

Compartir en Flipboard  Compartir en Facebook  Tuitear