Академический Документы
Профессиональный Документы
Культура Документы
Tema 02
Números Pseudo
Aleatorios
Los números pseudo aleatorios
Son necesarios para acreditar la variabilidad
dentro de los eventos de una simulación
Casi todos los simuladores tienen generadores
de números aleatorios
Estos aunque no se pueden comprobar con total
certeza (pues se necesitaría generar un numero
infinito de valores para probara la NO
correlación entre ellos) pues resulta muy
costoso e impractico en simulación.
Generación de números aleatorios
Se necesitan un valor X de números en el
intervalo : (0,1) a los que se les referencia con ri
es decir una secuencia ri = {r1, r2, r3,…rn}
Los generadores de números aleatorios en los
simuladores pueden generar secuencias de hasta
n=2200, lo mínimo exigido es n=231, aunque según
L’Ecuyer esta secuencias son relativamente
pequeñas
¿Por qué números aleatorios?
Supongamos que se desea simular el tiempo de atención a clientes en un banco
que tiene 5 cajeros en paralelo, cada uno atiende 50 clientes aprox. De manera
diaria.
Para simular el tiempo de atención se requiere de una función de variable
aleatoria en referencia a ri, por ejemplo Ti=5+2ri , expresado en minutos para
toda i=1,2,3…n.
Si se simula el tiempo de atención de manera aislada (sin considerar el tiempo
desde la llegada de los clientes) se necesitarán 5(50) = 250 números ri , para
simular un día, en 5 días se necesitan 250(5)=1250 ri
si se considera el tiempo de llegada de los clientes se pensaría en 250ri para
simular el tiempo de llegada de los 250 clientes al banco por día y 1250ri
(250x5) para simular el total de atenciones en 5 días.
Por tanto se necesitan 2500 números pseudo aleatorios para poder diseñar el
modelo
Algoritmos para generar números
aleatorios
Algoritmo de cuadrados medios
Diagrama de actividades
contador <= N
Generar 5 números ri a
Seleccionar cantidad SI
NO partir de las semillas
de Digitos D (D>3)
Y = Semilla A * Semilla B X0 = 5015 y X1 = 5734
Seleccionar Semilla A de
D digitos ancho de Y es impar colocar un 0 (cero)
SI a la izquierda
NO
Seleccionar Semilla B de
D digitos valor = D digitos
del medio de Y
Seleccionar cantidad de
numeros a generar N R = concatenar (0. y valor)
contador = 1
mostar R
Donde X0 es la semilla
a es constante multiplicativa
c es constante aditiva
m es modulo
X0 > 0, a > 0, c > 0, m > 0 y todos deben ser enteros
Algoritmos para generar números
aleatorios
Algoritmo lineal
Xi
ri =
m −1
Para todo i = 1,2,3…,n
Algoritmos para generar números
aleatorios
Algoritmo lineal
Diagrama de actividad
• En resultado del programa de computadora puede apreciarse que a partir del tercer valor se
repiten lo números generados, por tanto no se logra su máximo periodo de vida n.
• Se concluye que si los parámetros no cumplen con las observaciones mencionadas no se
logrará n
Algoritmos para generar números
aleatorios
Algoritmo congruencial multiplicativo
Xi
ri = Para todo i = 1,2,3…,n
m −1
Algoritmos para generar números
aleatorios
Algoritmo congruencial multiplicativo
f ( x) = entre a y b
b−a
Donde a≤x≤b
x
En este caso a=0 y b=1 a b
Propiedades de los números
Pseudo aleatorios entre 0 y 1
Para obtener la media de la distribución se multiplica
la función de densidad por x, y se integra en todo el
rango de la misma distribución:
b 2
1 x
E ( x) = ∫ x=
a
b−a 2(b − a )
Evaluando en a y b
E ( x) =
1
2
µ = 0.5
Propiedades de los números
Pseudo aleatorios entre 0 y 1
Varianza de los números aleatorios[0,1]: partiendo de la misma
distribución uniforme continua, obtenemos la varianza de la
distribución por medio de la ecuación:
V ( x) = σ = E ( x ) − µ
2 2 2
Calculando E(x2):
b 3
1 x 1
E(x2 ) = ∫ x2 = Por lo tanto al E(x ) =
2
a
b−a 3(b − a ) evaluar en a y b: 3
2
1 1 1
Entonces: V ( x) = − =
3 2 12
Propiedades de los números
Pseudo aleatorios entre 0 y 1
Observación:
De lo anterior trabajado se concluye que los números
aleatorios comprendidos en el intervalo [0,1] deben
tener:
1
µ=
2
y
1
σ =2
12
Propiedades de los números
Pseudo aleatorios entre 0 y 1
Independencia: esta propiedad implica que los números aleatorios no deben
tener correlación entre si.
1 1 1 1
Lir = − Zα / 2 Lsr = + Zα / 2
2 12n 2 12n
Pruebas estadísticas para los
números Pseudo aleatorios
Si el valor r se encuentra dentro de los límites
de aceptación, se concluye que no se puede
rechazar el conjunto ri, pues tiene:
μ = 0.5
Nivel de aceptación de 1 – α
Pruebas estadísticas para los
números Pseudo aleatorios
Ejemplo:
Determinar un valor de r esperado (1/2) con un nivel de
aceptación del 95%
n = 40 1
r= ( 0.0449 + 0.1733 + 0.5746... + 0.4145) = 0.43184
α = 5% 40
Pruebas estadísticas para los
números Pseudo aleatorios
Calculando los límites:
1 1
Lir = − Z 0.05 / 2
2
12(40)
Como el promedio r = 0.43184
1 1 esta dentro de los límites de
Lir = − (1.96) = 0.410538649
2
12(40) aceptación se concluye que el
conjunto ri estudiado tiene un
valor u = 0.5 con un nivel de
1 1
Lsr = + Z 0.05 / 2 aceptación del 95%
2
12(40)
1 1
Lsr = + (1.96) = 0.589461351
2
12(40)
Pruebas estadísticas para los
números Pseudo aleatorios
Prueba de varianza:
Se debe cumplir que la varianza del conjunto de números ri
generado sea 1/12.
La prueba de varianza emplea la siguiente ecuación:
n
(
∑ ir − r ) 2
V (r ) = i =1
n −1
Los límites de aceptación inferior y superior se obtienen mediante:
40
∑ (r − 0.43250)
i
2
V (r ) = i =1
40 − 1
1
V (r ) = [(0.04487 − 0.43250) 2 + (0.17328 − 0.43250) 2 ... + (0.41453 − 0.43250) 2 ]
39
V (r ) = 0.08695062
Pruebas estadísticas para los
números Pseudo aleatorios
Calculando los límites:
X (20.05 / 2 ),39
58.1200541
LiV ( r ) = = = 0.12418815
12(39) 468
X [(21−0.05) / 2 ],39 23.6543003
LsV ( r ) = = = 0.05054338
12(39) 468
Como V(r)=0.8695062 está dentro de los límites de aceptación no se rechaza el conjunto de 40
números ri, pues tienen una varianza de 1/12 = 0.0833333
Pruebas estadísticas para los
números Pseudo aleatorios
Pruebas de uniformidad:
Una de las propiedades que deben cumplir un
conjunto de números ri es la uniformidad.
Para comprobar el cumplimiento de esta propiedad
se empleará la prueba de Kolmogorov-Smirnov y la
prueba Chi cuadrada.
Pruebas estadísticas para los
números Pseudo aleatorios
prueba de Kolmogorov-Smirnov:
Es una prueba estadística que sirve para determinar si se cumple o no
con la uniformidad.
Se recomienda emplear esta prueba en conjuntos ri pequeños, v.g. n <
20
Procedimiento:
Ordenar de mayor a menor los números del conjunto ri:
Determinar los valores de D+, D- y D
Determinar el valor critico de Dα,n de acuerdo con los valores críticos de
Kolmogorov-Smirnov para un grado de confianza α y según el tamaño de la
muestra n
Si el valor de D es mayor que el valor critico de Dα,n se concluye que el
conjunto ri no cumple con la uniformidad, de lo contrario se dice que no se
ha detectado una diferencia significativa entre los ri y la distribución
uniforme
Pruebas estadísticas para los
números Pseudo aleatorios
Prueba de Kolmogorov-Smirnov:
Las ecuaciones para hallar D+, D- y D son:
+ 1
D = Max − ri
1<i < n n
− i − 1
D = Max ri −
1<i < n n
+ −
D = Max( D , D )
Pruebas estadísticas para los
números Pseudo aleatorios
Prueba de Kolmogorov-Smirnov:
Realizar la prueba a los siguientes números con un nivel de confianza del 90%
ri = 0.97,0.11,0.65,0.26,0.98,0.03,0.13,0.89,0.21,0.69
α =10%, ordenado los números:
ri = 0.03,0.11,0.13,0.21,0.26,0.65,0.69,0.89,0.97,0.98
Pruebas estadísticas para los
números Pseudo aleatorios
Prueba de Kolmogorov-Smirnov: n=10
i 1 2 3 4 5 6 7 8 9 10
i 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
n
0.03 0.11 0.13 0.21 0.26 0.65 0.69 0.89 0.97 0.98
ri
i −1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
n
i 0.07 0.09 0.17 0.19 0.24 -0.05 0.01 -0.09 -0.07 0.02
− ri
n
i − 1 -0.04 0.02 -0.04 0.02 0.02 0.7 0.68 0.98 1.04 0.96
ri −
n
10
n
0.24 1.04 1.04
D+ D− D
Pruebas estadísticas para los
números Pseudo aleatorios
Prueba de Kolmogorov-Smirnov:
De acuerdo a la tabla de valores para la prueba
pedida, el valor critico de D0.10,10 correspondiente a n
= 10 es 0.368
El valor encontrado D =1.04 es mayor, por lo tanto
se concluye que los valores no se distribuyen
uniformemente
Pruebas estadísticas para los
números Pseudo aleatorios
Prueba Chi-cuadrada:
También busca determinar si los números generados se distribuyen
uniformemente en el intervalo [1,0]
Para ello es necesario dividir el intervalo [1,0] en m sub intervalos,
donde:
m= n
Luego clasificar cada número en los m intervalos, a la cantidad calculada de números en
cada intervalo se denomina frecuencia observada Oi y a la cantidad de números que se
espera encontrar en cada intervalo m se le llama frecuencia esperada Ei.
En teoría ri = n/m,
A partir de los valores Oi y Ei se determina la Chi-cuadrada
Pruebas estadísticas para los
números Pseudo aleatorios
Prueba Chi-cuadrada:
La ecuación de este estadístico es:
( Ei − Oi )
m
X =∑
2
0
i =1 Ei
Si el valor de la Chi-cuadrada calculada con la ecuación anterior es
menor al valor de las tablas de:
X α2 ,m −1
No se puede rechazar que el conjunto de números evaluado sigue
una distribución uniforme, en caso contrario se rechaza que los
números siguen una distribución uniforme.
Pruebas estadísticas para los
números Pseudo aleatorios
Realizar la prueba Chi-cuadrada con un nivel de aceptación del 95% a:
0.6731 0.149
0.8653
n = 100 α = 5% m = n = 10
0.641
Pruebas estadísticas para los
números Pseudo aleatorios
n ( Ei − Oi ) 2
Oi Ei =
intervalo m Ei X α2 ,m −1 → X 02.05,9 = 16.9
[0.1-0.2) 10.8
Pruebas estadísticas para los
números Pseudo aleatorios
Pruebas de independencia:
Prueba de corrida arriba y abajo: consiste en
determinar una secuencia de números S, que solo
tiene unos y ceros, de acuerdo a la comparación
entre ri y ri-1
Luego se determina el número de corridas C0 (una
corrida es la cantidad de ceros ó unos consecutivos)
Posteriormente debe ser calculado el valor
esperado, la varianza del número de corridas y el
estadístico Z0
Pruebas estadísticas para los
números Pseudo aleatorios
Prueba de corrida arriba y abajo:
2n − 1
µ C0 = Si el estadístico Z0 es
3 mayor que el valor crítico
16n − 29 de Zα/2 , se concluye que
σ C20 = los números observados
90 no son independientes, de
C0 − µ C 0 los contrario se acepta
Z0 = que el conjunto de
σ C0 números es independiente
Pruebas estadísticas para los
números Pseudo aleatorios
Prueba de corrida arriba y abajo:
Ejecutar la prueba a la siguiente serie de números, con un nivel de aceptación del 95%, n = 40
0.34
La secuencia de unos y ceros se construye de la siguiente manera: se coloca un
cero si ri+1 ≤ ri, en caso contrario se coloca uno; como el primer número de la
0.83
0.67 0.62
serie no tiene anterior no se considera
S = {110110101100110001000100010100110100110}
C0 = 24
α = 5%
Pruebas estadísticas para los
números Pseudo aleatorios
Prueba de corrida arriba y abajo:
Calculando el valor esperado y la varianza del número de corridas:
2(40) − 1
µ C0 = = 26.33 Z0.05/2 = Z0.025 = 1.96
3
Como Z0 es menor que Zα/2 , se
16(40) − 29
σ C0 =
2
= 6.788 concluye que no se puede rechazar
90 que los números observados son
independientes, están aptos para
24 − 26.33 usarse en la simulación
Z0 = = −0.3437
6.788
Pruebas estadísticas para los
números Pseudo aleatorios
Prueba de corrida arriba y debajo de la media:
Este procedimiento consiste en determinar una secuencia de unos y ceros de
acuerdo a la comparación de cada número ri y 0.5.
Luego se determina el numero de corridas C0 y los valores de n0 y n1
n = n0 + n1
Pruebas estadísticas para los
números Pseudo aleatorios
Prueba de corrida arriba y debajo de la media:
Posteriormente se calcula el valor esperado, la varianza del
número de corridas y el estadístico Z0 con las siguientes
ecuaciones:
2n0 n1 1 Si el estadístico Z0 está fuera del
µ C0 = + intervalo :
n 2
2n0 n1 (2n0 n1 − n) − Zα ≤ Z0 ≤ Zα
σ C0 =
2
2 2
n 2 (n − 1) Se concluye que los números
C0 − µ C 0 evaluados no son independientes,
Z0 = de lo contrario no se rechaza el
σ C0 conjunto
Pruebas estadísticas para los
números Pseudo aleatorios
Prueba de corrida arriba y debajo de la media:
Realizar la prueba con un nivel de aceptación de 95% al
siguiente grupo de números:
0.809 0.04
Si el número es mayor o igual a 0.5 se coloca 1, de lo contrario se coloca 0.
S = {10010111010011010010010001111110000001111111100011}
0.397
n = 50 → n0 = 23 → n1 = 27
C0 = 21 0.26
Pruebas estadísticas para los
números Pseudo aleatorios
Prueba de corrida arriba y debajo de la media:
Calculando el valor esperado y la varianza del número de corridas