// The Central Randomizer 1.3 (C) 1997
// by Paul Houle ([email protected])
// See: http://www.honeylocust.com/javascript/randomizer.htmlrnd.today=new Date();
rnd.seed=rnd.today.getTime();
function rnd() {
rnd.seed = (rnd.seed*9301+49297) % 233280;
return rnd.seed/(233280.0);
};
function rand(number) {
return Math.ceil(rnd()*number);
};Carl Tashian publicó hace tiempo este magnífico artículo que pasé por alto en mi radar titulado Una breve historia de los números aleatorios. En él se cuentan bastantes cosas sobre cómo a lo largo de los tiempos se han generado números aleatorios, deteniéndose en algunas historias especialmente curiosas.
El artículo comienza con los métodos más antiguos conocidos, como los dados de piedra o los caparazones de tortuga, a los que habría que sumar los huesos, las monedas o los sacos con bolitas. También se menciona uno de los trabajos que surgieron al principio de los tiempos de la computación el clásico A Million Random Digits with 100,000 Normal Deviates (1940), una larguísima serie de dígitos aleatorios en cientos de páginas, básicamente «un libro de una inutilidad obvia, aunque su existencia a la vez implica que debe tener cierta utilidad, o nadie se hubiera molestado en publicarlo», según lo calificó el matemático Chris Staecker.
Una vez los humanos pasamos de tratar los dígitos aleatorios a mano a hacerlo con computadoras surgieron los generadores de números pseudoaleatorios, funciones matemáticas deterministas que generan secuencias que parecen aleatorias sin en realidad serlo: en realidad son cíclicas y se repiten, aunque en la práctica esa secuencia puede ser tan larga como se necesite.
También se habla de los generadores físicos con ruido, calor, contadores Geiger …