of 54/54
Generación de números y variables aleatorias Ing. Luis Clemente

02. Generación de números y variables aleatorias

  • View
    1.204

  • Download
    2

Embed Size (px)

Text of 02. Generación de números y variables aleatorias

Generacin de nmeros y variables aleatoriasIng. Luis Clemente

AgendaNmeros aleatorios Generadores de nmeros aleatorios Pruebas de aleatoriedad Generacin de variables aleatorias Pruebas de bondad de ajuste

AgendaNmeros aleatorios Generadores de nmeros aleatorios Pruebas de aleatoriedad Generacin de variables aleatorias Pruebas de bondad de ajuste

Cules son sus aplicaciones?Simulacin de procesos Juegos o teoras de decisiones Clculo numrico Teora del muestreo Programacin

Caractersticas de los nmeros aleatoriosLos nmeros aleatorios (que sern representados por Ri) deben cumplir las siguientes condiciones: Deben estar uniformemente distribuidosR ~ U [ 0 , 1] 1 , 0 c m > Z0 Para obtener el aleatorio R, se divide Z entre m

Generador Congruencial Lineal (GCL)Ejemplom = 8 a = 5N 1 2 3 4 5 6 7 8 9

c = 7 Z0 = 6(5Zi + 7) 5 * 6 + 7 = 37 5 * 5 + 7 = 32 5*0+7=7 5 * 7 + 7 = 42 5 * 2 + 7 = 17 5 * 1 + 7 = 12 5 * 4 + 7 = 27 5 * 3 + 7 = 22 5 * 6 + 7 = 18 (5Zi + 7) mod 8 37 mod 8 = 5 32 mod 8 = 0 7 mod 8 = 7 42 mod 8 = 2 17 mod 8 = 1 12 mod 8 = 4 27 mod 8 = 3 22 mod 8 = 6 37 mod 8 = 5

Zi+1 = (5*Zi + 7) * mod 8Ri 5 / 8 = 0.625 0 / 8 = 0.000 7 / 8 = 0.875 2 / 8 = 0.250 1 / 8 = 0.125 4 / 8 = 0.500 3 / 8 = 0.375 6 / 8 = 0.750 5 / 8 = 0.625Es posible generar 8 nmeros aleatorios antes de repetir el primero. El perodo es igual al mdulo, por lo que se dice que este ejemplo es un generador de perodo completo

Generador Congruencial Lineal (GCL)Algunos apuntes La seleccin de parmetros a, c, m y la semilla, tiene gran influencia en las propiedades estadsticas de los nmeros generados Los enteros que se generan, slo pueden tomar los siguientes posibles valores: {0, 1/m, 2/m, , (m-1)/m}. Esto hace que los valores obtenidos sean discretos en el intervalo (0,1) en lugar de ser continuos Se puede asumir que los valores son de naturaleza continua si se trabaja con mdulos grandes. Los ms usados en lenguajes de simulacin son m = 231-1 y m = 248 Un caso particular es el Generador Congruencial Multiplicativo, en el cual el incremento c toma valor cero

Cmo escoger los parmetros?Teorema de Hull y Dobell para un GCL que asegure el mayor perodo P1: El mdulo y el incremento deben ser primos entre s. Es decir, el nico entero positivo que divide exactamente a m y c es 1 P2: Si q es un nmero primo que puede dividir a m, entonces tambin q debe poder dividir a a 1 P3: Si 4 divide a m, entonces 4 divide a a 1

Cmo escoger los parmetros?Caso 1: Mdulo potencia de 2 e incremento 0 Zi+1 = (aZi + c) mod 2b Si c y m son primos entre s, y el multiplicador es de la forma 4k + 1, la longitud mxima del perodo es P = m = 2b

Caso 2: Mdulo potencia de 2 e incremento = 0 Zi+1 = (aZi) mod 2b Semilla impar b>2 a = 3 + 8k ( o en su defecto a = 5 + 8k) P = 2b-2

Caso 3: Mdulo primo e incremento = 0 Zi+1 = (aZi) mod m El menor entero que hace posible que ak-1 sea divisible por m, es k = m - 1 P=m-1

AgendaNmeros aleatorios Generadores de nmeros aleatorios Pruebas de aleatoriedad Generacin de variables aleatorias Pruebas de bondad de ajuste

Qu tan adecuados son los nmeros generados?Existen diferentes mtodos para comprobar que los nmeros aleatorios generados (bajo cualquier tcnica) cumplen con las condiciones deseadas de uniformidad e independenciaDescripcinPrueba de Frecuencia Prueba de Corridas (Run Test) Prueba de Autocorrelacin Prueba de Espacios (Gap Test) Prueba PkerCompara la secuencia generada contra una distribucin uniforme mediante las pruebas de K-S, o Chi-cuadrado Determina la existencia o no de comportamientos anormales de (de)crecimiento constante o por encima o debajo del promedio Compara la correlacin existente entre los nmeros generados con la esperada (nula correlacin) Cuenta los dgitos entre dos repeticiones seguidas y compara ese valor con el esperado con la prueba K-S Controla la frecuencia de aparicin de dgitos dentro de una serie

Qu tan adecuados son los nmeros generados?Las pruebas antes mostradas pueden agruparse segn el objetivo e hiptesis a usar

Objetivo Probar uniformidad Probar independencia

Pruebas adecuadasFrecuencia

Hiptesis evaluadaH0: Ri ~ U [ 0,1 ] H1: Ri U [ 0,1 ] H0: Ri ~ independiente H1: Ri independiente

Corridas, autocorrelacin, espacios, pker

En todas las pruebas, es necesario fijar un nivel de significancia adecuado. Este suele oscilar entre 0.01 y 0.05

Prueba de FrecuenciaExisten 2 mtodos para esta prueba. Ambos miden el grado de aproximacin de la distribucin emprica de los nmeros generados y la distribucin uniforme terica Kolmogorov Smirnov (KS) Ordenar los nmeros aleatorios de menor a mayor Calcular Calcular Determinar el valor crtico usando la tabla KS Si D es mayor a este valor crtico, se rechaza la hiptesis nula

Prueba de FrecuenciaChi - Cuadrado Se evala la frmula Donde O es el nmero de observaciones de cada intervalo, y E (E = N / n) es el esperado de cada intervalo*, siendo N el nmero de datos y n el nmero de intervalos Determinar el valor crtico usando la tabla Chi Cuadrado, con n 1 grados de libertad Si el estadstico es mayor al crtico, se rechaza la hiptesis nula* Si N 100, el nmero de intervalos es N1/2. En caso contrario, usar la ley de Sturges: 1+3.33 log (N)

La prueba Chi Cuadrado slo es vlida para muestras grandes de nmeros. La prueba KS sigue siendo eficiente con muestras pequeas

Prueba de CorridasSe verifica la aleatoriedad de los nmeros, comprobando que el nmero de corridas sea una variable aleatoria distribuida normalmente Una corrida se define como una sucesin de eventos similares precedidos y seguidos por un evento diferente a ste

Corrida Corrida #1 #2

Corrida #3

Corrida #4

Prueba de CorridasCorridas Arriba y Abajo Si a un nmero le sigue otro mayor, se le asigna un signo +, caso contrario, se asigna un singo - Se calcula b = nmero de corridas Considerando como N la cantidad de nmeros de la secuencia, se calculan los parmetros

Para N > 20, el nmero de corridas se puede aproximar a una distribucin normal. El estadstico de pruebas es

Si |Z0| > Z1- /2, se rechaza la hiptesis nula

Prueba de CorridasCorridas Arriba y Debajo de la Media Si un nmero est por encima de la media terica (1/2), se le asigna un signo +, caso contrario, se asigna un singo - Se calculan los valores n1= observaciones encima de la media, n2= observaciones debajo de la media, b = nmero de corridas Considerando como N la cantidad de nmeros de la secuencia, se calculan los parmetros

Para N > 20, el nmero de corridas se puede aproximar a una distribucin normal. El estadstico de pruebas es

Si |Z0| > Z1- /2, se rechaza la hiptesis nula

AgendaNmeros aleatorios Generadores de nmeros aleatorios Pruebas de aleatoriedad Generacin de variables aleatorias Pruebas de bondad de ajuste

Consideraciones previasSe asume que se cuenta con un buen generador de nmeros aleatoriosf(R) = 1 , 0