Anda di halaman 1dari 14

Generacin de nmeros

aleatorios
Programa de doctorado en Biometra y
Estadstica

Simulacin numrica de
modelos estocsticos
Departament dEstadstica
Divisi de Cincies Experimentals i
Matemtiques

Contenido:
Qu entendemos por secuencia de

nmeros aleatorios?
Cmo se generan n. aleatorios
Generadores congruenciales lineales
Propiedades de los GCL
Otros tipos de generadores
De Tausworthe (feedback shift register)
Barajados (??) (shuffled)
Dep. dEstadstica. Divisi de Cincies

Qu entendemos por
secuencia de nmeros
En teora,
aleatorios?
realizacin de secuencia de

v.a. R1, R2, ..., Rn, ... iid, Ri (0,1)

En la prctica criterios menos estrictos:


n-distributividad: todas las n-tuplas {(Ri,
Ri+1 ..., Ri+n1)} uniformes sobre (0,1)n
(k,n)-distributividad: cada k-sima
subsecuencia de longitud n uniforme (0,1)n
p.e. (5,2) seria {(R5i,R5i+1)}, {(R5i+1,R5i+2)},
{(R5i+2,R5i+3)}, {(R5i+3,R5i+4)}, {(R5i+4,R5i+5)}
uniformes sobre (0,1)x(0,1)

Dep. dEstadstica. Divisi de Cincies

Cmo se generan n.
aleatorios

Dispositivos fsicos aleatorios (ruletas,

contadores de rayos csmicos, ...)


autnticamente aleatorios
no repetible, difcil conexin con programas

Algoritmo recursivo (determinista)


repetible (total control sobre la secuencia
generada), informticamente natural
pseudoaleatorio, limitaciones intrnsecas a
aleatoriedad: ciclos, autocorrelacin, ...

Dep. dEstadstica. Divisi de Cincies

Generadores
congruenciales lineales
(GCL)
Producen
secuencia de enteros no negativos {X },
i

multiplicador

0 Xi < m1, a partir de semilla inicial X0, mediante

X i +1 = (aX i + c) mod m
a, m > 0

c 0

(i = 0,1, K )
mdulo

incremento

Y secuencia de nmeros aleatorios mediante Ri = Xi/m, Ri


[0,1)
Dep. dEstadstica. Divisi de Cincies

Propiedades de los GCL


A pesar de sus limitaciones son los

ms usados (y mejor conocidos):


Perodo: menor entero k tal que Xk=X0 (y
la secuencia se repite!). Siempre k m.
Perodo completo sii k = m. Condicin
necesaria y suficiente (Hull y Dobell):
c primo respecto de m
(a1) mltiplo de q, para todo factor primo q
de m
(a1) mltiplo de 4, si m lo es

Dep. dEstadstica. Divisi de Cincies

GCL mixtos (c > 0)


Ordenadores binarios: si m = 2b, mod

es simple desplazamiento de bits. Si 32


bits: m = 231 o m = 232 (perodo
alcanzable 4,29109), (16 bits perodo
alcanzable 215=32767 o 216=65534)
En este caso perodo completo si c
impar y (a1) mltiplo de 4. Pega:
perodo de los ltimos d bits tambin
del orden de 2d
Dep. dEstadstica. Divisi de Cincies

GCL multiplicativos (c = 0)
1 condicin de Hull y Dobell imposible

de cumplir nunca perodo completo.


Recomendable m primo. Si a es un
elemento primitivo mdulo (EPM) m
perodo igual a m1 (Knuth)
Escoger m primo lo ms grande posible
(cerca de 2b, b nm. bits) y a EPM m
m primo y m = 2h1 (primo de
Mersene) mod eficiente (ideal h=b)
Dep. dEstadstica. Divisi de Cincies

Los tres tipos de GCL en el


software actual

Informacin escasa, en general:


Tipo A: mixtos de perodo completo, m =
2b, a1 mltiplo de 4, c impar (NAG?)
Tipo B: multiplicativos de perodo mximo
dado m (es decir, perodo m1), m
primo, a elemento primitivo modulo m
(Simpscript II)
Tipo C: multiplicativos, m=2b, a5
mltiplo de 8, perodo = m/4.
Dep. dEstadstica. Divisi de Cincies

Propiedades estadsticas
calculables tericamente

10

T ipo A:
m- 1
E (R) =
2m

m2 - 1
var ( R ) =
12m2

T ipo B:
1
E (R) =
2

m2 - 2m
var ( R ) =
12m2

Autocorrelacin: solamente algunas cotas,


complicadas y no muy tiles. Estructuras de
mayor orden (n-distributividad) propiedades en
general muy malas en este tipo de generadores,
especialmente
pocos bits.
Dep.para
dEstadstica.
Divisi de Cincies

11

Otros tipos de generadores


Generador lineal congruencial general

X i = ( a1X i - 1 + K + apX i -

) modm

p > 1, ap 0
No hay repeticin hasta que

( X 0,K , X p- 1 )

= ( X k , K , X k+p- 1 )

Potencialmente, perodo mximo mp1.


p=2, a1=a2=1: de Fibonacci (muy malos)
Dep. dEstadstica. Divisi de Cincies

Generadores de
Tausworthe. I

12

Caso de generador lineal congruencial

general con m primo. Perodo mximo si


xp a1xp1 ... ap es un polinomio primitivo
mdulo m
Tausworthe: si m=2: secuencia de bits, ai
= 0 1. Suelen emplearse trinomiales de
forma xp + xq + 1, p > q recurrencia:

X i = X i - p xor X i - ( p- q)
Dep. dEstadstica. Divisi de Cincies

Generadores de
Tausworthe. II

13

Posteriormente estos bits agrupados

en enteros de longitud L (L p), segn


bits por entero deseados. Q bits de
espacio para siguiente entero (Q L).
Ms independientes de la mquina
Propiedades estadsticas de primer y
segundo orden y n-distributividad
mucho mejores que en
congruenciales.
Dep. dEstadstica. Divisi de Cincies

14

Otros mtodos
Shuffled: propuestos diversos

algoritmos para barajar de alguna


manera la salida de otro generador.
Otra posibilidad es combinar
generadores, p.e. mediante xor
Se puede demostrar que si Xi e Yi son
aleatorias, Zi = Xi xor Yi tambin lo es

Poco conocidos tericamente, principal

ventaja parece mejor n-distributividad


Dep. dEstadstica. Divisi de Cincies