Está en la página 1de 26

Unidad Dos

Nmeros pseudoaleatorios
Instituto Tecnolgico Superior de Tierra Blanca
Conocer las caractersticas, formas
de generacin de nmeros aleatorios y
pseudoaleatorios. Investigar y
aplicar las pruebas de aleatoriedad a
un conjunto de nmeros generados.
OBJETIVO EDUCACIONAL
Nmeros aleatorios
Sistemas reales
Valores de tiempo
y cantidades que
varan (rango)
Funcin de
densidad definida
por una
distribucin de
probabilidad
Ejemplo: La mquina se tarda en procesar
de 2.2 minutos hasta 4.5 minutos
El simulador generar un nmero al azar entre 2.2 y 4.5 minutos para simular el
tiempo de procesamiento de esa pieza
Nmeros aleatorios
Definicin
Un nmero
aleatorio es aqul
que es generado a
partir de la
distribucin
Uniforme U(0,1)
Nmeros aleatorios
Propiedades
Su generacin se basa en el uso de
mecanismos fsicos
Tienen el inconveniente de ser generados
lentamente. Adems, los nmeros aleatorios
no pueden almacenarse de forma automtica.
Nmeros aleatorios
Tablas
Nmeros pseudoaleatorios
Hay que aclarar que los nmeros U(0,1) producidos por
un generador de nmeros aleatorios (algoritmo
computacional) no son aleatorios en el verdadero sentido
de la palabra, ya que el generador puede reproducir la
misma secuencia de nmeros una y otra vez, lo cual no
indica un comportamiento aleatorio. Por esta razn, a
los nmeros U(0,1) producidos por un generador
(algoritmo) se les llama pseudoaleatorios.
Nmeros aleatorios
Propiedades
Uniformemente distribuidos.
Estadsticamente independientes.
Reproducibles.
Periodo largo.
Generados mediante un mtodo rpido.
Generados mediante un mtodo que no requiera
mucha capacidad de almacenamiento de la
computadora.
Nmeros aleatorios
Propiedades
Generar nmeros
pseudoaleatorios es una
tarea relativamente fcil
Disear un algoritmo de
generacin
Lo difcil es disear un
algoritmo que genere nmeros
* Periodo de vida grande
* Pase las pruebas de
uniformidad
Nmeros aleatorios
Propiedades
Que los nmeros del conjunto no estn uniformemente distribuidos, es decir,
que haya demasiados nmeros en un sub-intervalo y otro muy pocos o ninguno.
Que los nmeros pseudoaleatorios sean discretos en lugar de continuos.
Que la media del conjunto sea muy alta o muy baja, es decir, que est por arriba
o por debajo de .
Que la varianza del conjunto sea muy alta o muy baja, es decir, que se localice
por arriba o por debajo de 1/12.
Secuencias de nmeros por arriba de la media y luego por debajo.
Nmeros aleatorios
Tcnicas de generacin
Mtodo de centros al cuadrado
Mtodo de Lehmer
Mtodo congruencial Mixto Lineal
Mtodo congruencial multiplicativo
Nmeros aleatorios
Mtodo de Centros al Cuadrado (Mtodo de los cuadrados medios)
1. Inicie con un nmero entero positivo de 4 (2n) dgitos y llmele Z
0

(X
0
), (semilla).
2. Eleve Z
0
(X
0
) al cuadrado para obtener un nmero de 8 (4n) dgitos. Si
es necesario, agregue ceros a la izquierda para hacerlo exactamente
de 8 dgitos.
3. Tome los 4 (2n) dgitos centrales como el prximo nmero de 4 (2n)
dgitos y llmele Z
1
(X
1
).
4. Coloque el punto decimal a la izquierda de Z
1
(X
1
) para obtener el
primer nmero pseudoaleatorio U(0,1).
5. Continu generando de esta forma nmeros pseudoaleatorios U(0,1).
Von Neumann
Nmeros aleatorios
Mtodo de Centros al Cuadrado
Ejemplo 1: Genere nmeros pseudoaleatorios U(0,1) utilizando el mtodo de centros al
cuadrado con Zo = 4122.
i Zi Zi
2
U
i+1

0 4122
1
2
3
4
5
Etc.
16990884 16990884 0.9908
98168464 98168464 0.1684
9908
02835856 02835856 0.8358
8358
1684
69856164 69856164 0.8561
8561 73290721
73290721 0.2907
2907 08450649
08450649 0.4506
La secuencia de nmeros
pseudoaleatorios generada es:
0.4122, 0.9908, 0.1684, 0.8385,
0.8561, 0.2907, 0.4506.
Nmeros aleatorios
Mtodo de Centros al Cuadrado
Ejemplo 2: Genere nmeros pseudoaleatorios U(0,1) utilizando el mtodo de centros al
cuadrado con Zo = 1009
i Zi Zi
2
U
i+1

0 1009 01018081 0.0180
1 0180 00032400 0.0324
2 0324 00104976 0.1049
3 1049 01100401 0.1004
4 1004 01008016 0.0080
5 0080 00006400 0.0064
6 0064 00004096 0.0040
7 0040 00001600 0.0016
8 0016 00000256 0.0002
9 0002 00000004 0.0000
Etc.
Nmeros aleatorios
Mtodo de Centros al Cuadrado
El Mtodo de Centros al Cuadrado (Mtodo de los cuadrados medios)
Desventaja del mtodo de centros al
cuadrado: Tiene una fuerte tendencia a
degenerar rpidamente hacia cero, donde
permanecer por siempre.
Nmeros aleatorios
Mtodo de Lehmer
1. Se toma como semilla un nmero entero, X
0
, de n cifras.
2. Se elige otro entero, c, de k cifras. Suele tomarse k<n.
3. Se calcula X
0
*c, nmero de a lo sumo, n + k cifras.
4. Se separan las k cifras de la izquierda de X
0
*c y al nmero formado por
las n cifras restantes se le resta el que se forma de esas k cifras de la
izquierda, dando lugar a X
1
.
5. Se repite este proceso tantas veces como sea necesario.
6. Se devuelven los valores
n
xi
ui
2
10

Nmeros aleatorios
Mtodo de Lehmer
Ejemplo 3: Tomando n=4, k=2, X
0
=4122 y c=76, se obtiene:
X
i
X
0
*c X
i+1

4122
313272 3272 31
3241
3241
(3241*76)
(4122*76)
246316
478192
619020
680884
062016
6316 24
8192 47
9020 61
0884 68
2016 06
(6292*76)
(8145*76)
(8959*76)
(0816*76)
6292
8145
8959
0816
2010
6292
8145
8959
0816
De esta forma, la secuencia de nmeros pseudoaleatorios generada es: 0.4122,
0.3241, 0.6292, 0.8145, 0.8959, 0.0816, 0.2010
Nmeros aleatorios
Mtodo Congruencial Mixto Lineal
Los valores posibles de X
n+1
son 0, 1, 2,3,, m-1, m representa el nmero posible de valores que pueden ser
generados.
Frmula:
m c aX X
n n
mod
1

Donde:
Xn= la semilla (X
0
>0)
a= el multiplicador (a>0)
c= constante aditiva (c>0)
m= Mdulo (m>X
n
; m>a; m>c)
Nmeros aleatorios
Mtodo Congruencial Mixto Lineal
Ejemplo 4: Genere nmeros pseudoaleatorios U(0, 1) aplicando el mtodo congruencial mixto lineal con: a= 5;
c= 7; X
0
=4; m= 8
n X
n
X
n+1
(5X
n
+7)mod 8 (X
n+1
/m)
0
4 (5*4+7)mod 8 27/8=3.375 .375*8= 3 3/8= 0.375 3
3 6
6 5
5 0
0 7
7 2
2 1
1 4
4
1
2
3
4
5
6
7
8
(5*3+7)mod 8
(5*6+7)mod 8
(5*5+7)mod 8
(5*0+7)mod 8
(5*7+7)mod 8
(5*2+7)mod 8
(5*1+7)mod 8
Se repite el ciclo
22/8=2.75
37/8=4.625
32/8=4
7/8=0.875
42/8=5.25
17/8=2.125
12/8=1.5
.75*8=6
.625*8=5
0*8=0
0.875*8=7
.25*8=2
.125*8=1
.5*8=4
6/8= 0.750
5/8= 0.625
0/8= 0.000
7/8= 0.875
2/8= 0.250
1/8= 0.125
4/8= 0.500
Nmeros aleatorios
Mtodo Congruencial Mixto Lineal
Periodo de generador= 8
Periodo= longitud de ciclo= p m
Como p= m, el periodo es completo
La secuencia de nmeros pseudoaleatorios generada es: 0.375, 0.750, 0.625,
0.000, 0.875, 0.250, 0.125, 0.500
Nmeros aleatorios
Mtodo Congruencial Mixto Lineal
Ejemplo 5: genere nmeros pseudoaleatorios U(0, 1) con: a= X
0
; c=7 y m=10
n X
n
X
n+1
(7X
n
+7)mod 10 (X
n+1
/m)
0
De esta forma, la secuencia de nmeros pseudoaleatorios generada es: 0.60, 0.90, 0.00, 0.70
Periodo del generador = 4
7 6 (7*7+7)mod 10 56/10=5.6 .6*10= 6 6/10= 0.60
1 6 9 (7*6+7)mod 10 49/10=4.9 .9*10=9 9/10= 0.90
2 9 0 (7*9+7)mod 10 70/10=7 0*10=0 0/10= 0.00
3 0 7 (7*0+7)mod 10 7/10=0.7 .7*10=7 7/10= 0.70
4 7 Se repite el ciclo
Nmeros aleatorios
Mtodo Congruencial Mixto Lineal
Reglas para la seleccin de
parmetros:
Banks, Carson, Nelson y Nicol
m= 2
g

a= 1 + 4k
k debe ser entero
c relativamente primo a m
g debe ser entero
Bajo estas condiciones se obtiene un periodo de vida mximo: N= m= 2
g
.
Nmeros aleatorios
Mtodo Congruencial Mixto Lineal
Ejemplo 6: genere nmeros pseudoaleatorios U(0, 1) con: X
0
=6; k=3; g=3, hasta encontrar el periodo de vida
mximo (N).
Primero verificar si se cumple con las reglas:
m= 2
g

a= 1 + 4k
k debe ser entero
c relativamente primo a m
g debe ser entero
m= 2
g
= 2
3
=8
k debe ser entero = 3
a= 1 + 4k = 1+4(3)=13
c relativamente primo a m =7 (el nmero primo ms cercano)
g debe ser entero = 3
Nmeros aleatorios
Mtodo Congruencial Mixto Lineal
n X
n
X
n+1
(13X
n
+7)mod 8 (X
n+1
/m)
1 6 5 (13*6+7)mod 8 85/8=10.625 .625*8=5 5/8= 0.625
2 5 0 (13*5+7)mod 8 72/8=9 .0*8=0 0/8= 0.000
3 0 7 (13*0+7)mod 8 7/8=0.875 .875*8=7 7/8= 0.875
4 7 2 (13*7+7)mod 8 98/8=12.25 .25*8=2 2/8= 0.250
5 2 1 (13*2+7)mod 8 33/8=4.125 .125*8=1 1/8=0.125
6 1 4 (13*1+7)mod 8 20/8=2.5 .5*8=4 4/8=0.500
7 4 3 (13*4+7)mod 8 59/8=7.375 .375*8=3 3/8=0.375
8 3 6 (13*3+7)mod 8 46/8=5.75 .75*8=6 6/8=0.750
Como puede observarse el nmero generado en n=8 es 6 que es igual a la semilla X
0
y si se continua con la generacin de
nmeros, stos se repetiran m=p por lo que el ciclo est completo.
Nmeros aleatorios
Mtodo Congruencial Multiplicativo
Al igual que el generador congruencial mixto lineal, el generador congruencial multiplicativo
determina el prximo nmero pseudoaleatorio a partir del ltimo nmero generado, de
acuerdo a la siguiente frmula:
m aX X
n n
mod
1

Nmeros aleatorios
Mtodo Congruencial Multiplicativo
Ejemplo 7: genere nmeros pseudoaleatorios U(0, 1) con: X
0
=5; a=5; m=32
n X
n
X
n+1
(5X
n
)mod 32 (X
n+1
/m)
0
5 (5*5)mod 32 25/32=0.78125
.78125*32
25/32= 0.78125
25
25 29
29 17
17 21
21 9
9 13
13 1
1 5
5
1
2
3
4
5
6
7
8
(5*25)mod 32
(5*29)mod 32
(5*17)mod 32
(5*21)mod 32
(5*9)mod 32
(5*13)mod 32
(5*1)mod 32
Se repite el ciclo
125/32=3.90625
145/32=4.53125
85/32=2.65625
105/32=3.28125
45/32=1.40625
65/32=2.03125
5/32=0.15625
.90625*32
.53125*32
.65625*32
.28125*32
.40625*32
.03125*32
.15625*32
29/32= 0.90625
17/32= 0.53125
21/32= 0.65625
9/32= 0.28125
13/32= 0.40625
1/32= 0.03125
5/32= 0.15625
Perodo del generador = 8

También podría gustarte