Page 73 - 06 Turing
P. 73
SECUENCIAS DE NÚMEROS ALEATORIOS
Un ordenador es una máquina de Turing universal y esto significa que a partir
de un cierto estado del ordenador y de unos ciertos datos de entrada realiza-
rá una serie de tareas u operaciones que conducirán a un resultado comple-
tamente previsible. Por ejemplo, si en una hoja de cálculo diseñada para cal-
cular un presupuesto introducimos unos determinados datos numéricos, o
input, el resultado, u output, será siempre el mismo. Uno de los retos científi-
cos más interesantes desde la época de John von Neumann, uno de los pri-
meros investigadores que planteó esta cuestión en simulaciones para el dise-
ño de las primeras bombas atómicas, fue el diseño de algoritmos capaces de
generar una secuencia de números que se asemejase a la secuencia que ob-
tendríamos si tales números hubieran sido obtenidos con un bombo de lote-
ría. Puesto que los números procedentes de un bombo son números aleatorios,
los obtenidos con ordenador recibieron el nombre de pseudoaleatorios; un
programa de ordenador capaz de producir esta clase de números se denomi-
na generador de números aleatorios. Los números pseudoaleatorios están
siempre comprendidos en el intervalo [O, l]. Por ejemplo, la siguiente secuen-
cia de doce números 0.092833, 0.472751, 0.542341, 0.022788, 0.069853,
0.317325, 0.808213, 0 .225401, 0.633599, 0 .133044, 0.530186, 0.477541 ha sido
obtenida con el siguiente programa en BASIC-256:
n=O
do
u=rand
print u
n=n+l
until n=l2
Pongamos otro ejemplo: ¿cómo simularíamos un dado con el programa an-
terior? Sencillamente sustituiremos u=rand por u=int (rand*6) +l. Los nú-
meros obtenidos con un programa deben cumplir algunas propiedades, en
particular, estar comprendidos entre O y 1, ser independientes unos de otros,
esto es, si obtenemos un cierto número, por ejemplo 0 .808213, dicho valor
no debería influir en el siguiente número que se genere de la secuencia,
0 .225401, y además debe cumplirse que todos los números tengan la misma
probabilidad de ser obtenidos. Un aspecto curioso es que los números a
titulo individual no son aleatorios, pero si la secuencia de la que forman
parte, cuyas propiedades estadísticas son similares a las que tiene una se-
cuencia de números obtenidos con un sistema mecánico de lotería. No obs-
tante, ya existe la posibilidad de obtener a través de Internet auténticos
números aleatorios en el ordenador a partir de fenómenos físicos, en lugar
de un algoritmo como el que se utiliza en la función rand de BASIC-256.
MÁQUINAS CONTRA CÓDIGOS. TURING CRIPTÓGRAFO 73