2. GENERACIÓN NUMEROS ALEATORIOS GENERAR úmeros aleatorios de ua cierta distribució de probabilidad sigifica obteer VALORES DE LA DISTRIBUCIÓN que se pueda cosiderar INDEPENDIENTES. E u proceso e tres fases:. Obteció de los valores 2. Comprobació de que perteece a la distribució elegida (test de hipótesis) 3. Comprobació de que puede cosiderarse idepedietes (test de hipótesis) GENERACIÓN NUMEROS ALEATORIOS La obteció de los valores se hace e dos pasos:. Obteció de valores de ua distribució U(0,) 2. Trasformació de los valores ateriores e valores de la distribució elegida. Estudiaremos las dos fases por separado.
GENERACIÓN NUMEROS ALEATORIOS U(0,) Por orde croológico: Extracció co reemplazamieto de bolas de ua ura o similares. Método cuadrado medio (940). Métodos cogrueciales lieales (95). Métodos cogrueciales multiplicativos módulo primo (962). Métodos múltiplemete recursivos (990). Combiació de métodos de los dos últimos tipos. GENERACIÓN NUMEROS ALEATORIOS U(0,) Método más atiguo: Elecció, co reemplazamieto, de úmeros del 0 al 9 sacado bolas umeradas de ua bolsa. Si se quiere, por ejemplo, 4 decimales, se extrae 4 bolas y se poe u puto decimal delate. Vetaja: los úmeros obteidos so totalmete idepedietes. Icoveiete: la geeració es muy leta. Se busca métodos mecaizados. 2
GENERACIÓN NUMEROS ALEATORIOS U(0,) Método cuadrado medio (940) Vo Newma: Se elige u etero de cuatro cifras, Z 0. Cada valor Z i+ se obtiee a partir de Z i tomado los cuatro dígitos cetrales de Z i2. Si Z i2 o tiee ocho dígitos se completa co ceros a su izquierda hasta que sí los tega. Se poe u puto decimal delate obteiédose el valor U i, úmero aleatorio de ua U(0,) MÉTODO CUADRADO MEDIO 2 Zi Zi 782 55824 Ui 0.58 58 3376772 0.7677 7677 58936329 0.9363 Icoveiete: la geeració o es idepediete e absoluto y la secuecia preseta ua fuerte tedecia a 0. 3
GENERACIÓN NUMEROS ALEATORIOS U(0,) TODOS los geeradores que se usa tiee este icoveiete: los úmeros NO so idepedietes. Si embargo, si se geera co cuidado, puede obteerse úmeros que PARECEN idepedietes (pasa los test de hipótesis) Por este motivo, los úmeros o se llama aleatorios sio PSEUDOALEATORIOS. MÉTODOS CONGRUENCIALES LINEALES (95; Lehmer) Se elige cuatro eteros iiciales: Z 0 (semilla), m (módulo), a (multiplicador) y c (icremeto); 0 < Z 0, a, c < m. Se usa la fórmula recursiva: ( ) Z = i az + + i c mod m Se defie U i como: U i Zi = m 4
OBJECCIONES A LOS MÉTODOS CONGRUENCIALES LINEALES Cada valor de la secuecia está totalmete determiado desde el pricipio a partir de Z 0, m, a y c: i c( a i ) Zi = az0+ mod m a Los valores U i solamete puede ser 0, /m, 2/m,..., (m-)/m y si m es pequeño hay muchos úmeros del itervalo [0,] que o puede salir. Esto se resuelve tomado m grade. Ejemplo co Z 0 = 7, m = 6, a = 5 y c = 3. i 0 2 3 4 5 6 7 8 9 0 7 6 8 Z i 0 5 2 5 4 9 U i 0.375 0.063 0.500 0.688 0.625 0.33 0.750 0.938 0.875 0.563 i Z i 0 2 3 3 2 4 3 5 4 6 7 7 6 8 9 8 20 2 0 0 U i 0.88 0.25 0.83 0.250 0.438 0.375 0.063 0.500 0.688 0.625 5
OBSERVACIONES El comportamieto cíclico de este ejemplo es INEVITABLE. La logitud del ciclo se llama PERIODO del geerador. Claramete, el periodo siempre es meor o igual que m. Si el periodo es m se dice que el geerador tiee PERIODO COMPLETO. Como e ua simulació se usa cietos de miles de úmeros aleatorios iteresa que los geeradores tega periodo lo más largo posible y, si se puede, que tega periodo completo. CARACTERÍSTICAS DE UN BUEN GENERADOR Los úmeros geerados debe de parecer idepedietes y veir de U(0,) (pasar los test). Debe de ser rápidos y ecesitar poca memoria (almaceamieto). Debe de poder producir secuecias largas (periodo máximo m) para asegurar que e ua secuecia de m úmeros aleatorios, cada uo sólo se repite ua vez. Debe de poder reproducir la misma secuecia de úmeros aleatorios. Debe de poder producir secuecias idepedietes para poder modelizar las distitas fuetes de aleatoriedad del sistema. 6
MÉTODOS CONGRUENCIALES LINEALES CON PERIODO COMPLETO TEOREMA: (Hull-Dobell, 962) u método cogruecial lieal tiee periodo completo m sí y solo sí:. El úico etero positivo que divide de maera exacta a m y c es (m.c.d.{m,c}=). 2. Si q es u úmero primo que divide a m, etoces q tiee que dividir a (a-). 3. Si 4 divide a m, etoces 4 divide a (a-). MÉTODOS CONGRUENCIALES LINEALES CON PERIODO COMPLETO La codició del teorema hace que sea diferete el trato de los métodos e los que c = 0 o c 0. Si c 0: MÉTODOS MIXTOS: se puede verificar la codició del teorema y obteer periodo completo. Si c = 0: MÉTODOS MULTIPLICATIVOS: o se puede obteer periodo completo pero so más secillos de implemetar. Se estudiaro e primer lugar métodos mixtos (puede obteerse periodo completo) pero los úmeros obteidos o teía bueas propiedades estadísticas. 7
MÉTODOS CONGRUENCIALES LINEALES MULTIPLICATIVOS Elecció de m: dividir por m para obteer el resto es ua operació relativamete leta. Es deseable o teer que hacer la divisió e forma explícita. Si b = logitud de palabra del ordeador, eligiedo m = 2 b se puede evitar la divisió utilizado el overflow de eteros. MÉTODOS CONGRUENCIALES LINEALES MULTIPLICATIVOS Ejemplo: Z 0 = 5, b = 4 (m = 2 4 =6), a = 5 y c = 3. Cómo obteer Z = 2 si hacer la divisió etre m = 6? 5 Z 0 + 3 = 28. Su represetació biaria es 00. Como solo se puede almacear 4 dígitos, se pierde el de la izquierda, resultado 00, que es la represetació biaria de Z = 2. 8
MÉTODOS CONGRUENCIALES LINEALES MULTIPLICATIVOS No se puede obteer periodo completo m pero co ua elecció adecuada de m y a se puede obteer periodo m- (casi completo). La elecció de m = 2 b parece adecuada pero solo se obtiee u periodo máximo de 2 b-2 = = 2 b /4 como mucho (sólo se obtiee la cuarta parte de los valores que podría obteerse e (0,)). Cosecuecia: o se obtiee valores de ua U(0,). Se observó que si se elige m primo, se obtiee mejores resultados. Esto llevó a los métodos cogrueciales lieales multiplicativos módulo primo. MÉTODOS CONGRUENCIALES LINEALES MULTIPLICATIVOS MÓDULO PRIMO TEOREMA (Hutchiso-Lehmer, 966):. Si m es primo 2. Elegimos a de maera que el meor etero, k, para el cual a k es divisible por m es k = m- 3. Z 0 < m-, etero, etoces, el método cogruecial multiplicativo resultate tiee periodo (m-). 9
MÉTODOS CONGRUENCIALES LINEALES MULTIPLICATIVOS MÓDULO PRIMO El caso de logitud de palabra b = 32 bits ha sido muy estudiado porque muchos ordeadores y compiladores e uso fucioa co esta logitud de palabra. Para este caso, tomado m = 2 3 hay 534 milloes de úmeros que cumple la codició para a. Fucioa bie a = 7 5 o a = 630.360.06. Todos los leguajes de simulació tiee implemetados métodos cogrueciales lieales multiplicativos módulo primo. MÉTODOS CONGRUENCIALES MÚLTIPLEMENTE RECURSIVOS So métodos propuestos e la década de los 90. La secuecia obteida satisface la relació recursiva: Zi+ = ( az 0 i + az i + az 2 i 2 +... + az k i k) mod m Dode m, k, a i eteros positivos, co 0 < a i < m-. El máximo periodo coseguido co estos geeradores es m k, que se alcaza cuado m es primo y y el poliomio característico de la relació recursiva aterior verifica ua serie de codicioes. 0
MÉTODOS CONGRUENCIALES MÚLTIPLEMENTE RECURSIVOS Co estos métodos se obtiee secuecias mucho mayores que co los métodos cogrueciales lieales (se pasa de periodo m- a periodo m k ) Si embargo, las propiedades estadísticas de la secuecia sigue si ser óptimas. Éstas mejora si se trabaja co ua combiació de métodos cogueciales lieales (MacLare, 965))o métodos múltiplemete recursivos (L Ecuyer, 996). Pascal utiliza ua combiació de métodos cogrueciales lieales para geerar úmeros aleatorios de U(0,). TEST DE HIPÓTESIS Ua vez geerada la secuecia de úmeros aleatorios es FUNDAMENTAL verificar que cumple las propiedades estadísticas requeridas: Los úmeros obteidos so idepedietes: TEST DE INDEPENDENCIA. Los úmeros aleatorios viee de U(0,): TEST DE DISTRIBUCIÓN (cotraste de Kolmogorov- Smirov)
GENERACIÓN NUMEROS ALEATORIOS Vimos que la obteció de úmeros aleatorios de ua distribució se hace e dos pasos:. Obteció de valores de ua distribució U(0,) (YA HECHO) 2. Trasformació de los valores ateriores e valores de la distribució elegida. E la fase 2, hay métodos específicos para cada distribució. Sólo estudiaremos los que os hace falta para realizar el trabajo: distribucioes expoecial y Erlag (cotiuas) y distribució discreta cualquiera. Distribució expoecial Método de la trasformada iversa: Si U es ua v.a. co distribució U(0,) y X es ua v.a. co fució de distribució F(x), etoces, la v.a. defiida por F - (U) tiee fució de distribució F(x). Si se desea geerar u úmero aleatorio de ua expoecial co parámetro β,x,. Geerar u úmero aleatorio de U(0,), u, segú el método elegido (e Pascal, u:= radom); 2. Aplicar la fórmula : x : = l( u) β 2
Distribució Erlag Reproductividad: si X i, i=,..,, so v.a. expoeciales de parámetro β, idepedietes X+ X 2 +... + X γ (, β) = Erlag(, β) Si se desea geerar u úmero aleatorio de ua Erlag (,β),x,. Geerar º aleatorios de U(0,), u, u 2,..., u, segú el método elegido (e Pascal, u i : = radom, i =,..,); 2. Aplicar la fórmula : x : = lu = l u β i i= β i= i Distribució discreta Se desea geerar u úmero aleatorio,x, de ua variable discreta que toma valores, {, 2,..., }, < 2 <... < { } x x x x x x co probabilidades p, p2,..., p Paso.- Dividir el itervalo [0,] e subitervalos cada u de logitud p i (cerrados por la izquierda y abiertos por la derecha). Paso 2.- Geerar u º aleatorio de ua U(0,), u, segú el método elegido. Paso 3.- Si u cae e el itervalo i-ésimo, hacer x = x i. 3
Ejemplo Se desea geerar u úmero aleatorio,x, de ua variable discreta que toma 4 valores, { 0,, 2, 3} co probabilidades,,, 6 3 4 4 Paso.- El itervalo [0,] se divide e los subitervalos [0,/6), [/6,/2), [/2, 3/4) y [3/4, ). Paso 2.- Se geera valores de ua U(0,), u i : u = 0.2365, u 2 = 0.9763, u 3 = 0.57,... Paso 3.- Si u cae e el itervalo i-ésimo, hacer x = x i.etoces, x =, x 2 = 3, x 3 =,... Distribució discreta Para el trabajo: se ecesita geerar u úmero aleatorio,x, de ua variable discreta que toma dos valores, NODO 2 y NODO 3 co probabilidades 0.4 y 0.6, respectivamete:.- Geerar u úmero aleatorio de U(0,) (e Pascal, u:= radom); 2.- Si u < 0.4, hacer x:= NODO 2, si u > = 0.4, hacer x:= NODO3. 4
3.- DECIDIR EN UNA SIMULACIÓN CUANDO SE ALCANZA EL ESTADO ESTACIONARIO Objetivo de la simulació: estimar algú parámetro de redimieto e estado estacioario. Periodo estacioario: mometo a partir del cual las codicioes iiciales de la simulació deja de ifluir sigificativamete e los resultados. Periodo trasitorio: desde que comieza la simulació hasta que se alcaza el estado estacioario. Ejemplo: al simular u proceso de producció, el sistema comieza vacío e iteresa estudiar este sistema fucioado a pleo redimieto. Procedimieto habitual: o teer e cueta la parte iicial de la simulació, iiciado la cotabilidad después de ua catidad de tiempo adecuada. Primera idea: Se realiza u ejecució larga, se parte e trozos y para cada uo, se calcula algua medida de redimieto del sistema. Si esta medida se estabiliza a partir del istate t E, tomar éste como iicio del periodo estacioario. Mejora: Realizar el proceso aterior varias veces. Obteer de la ª ejecució t E y comezar el resto de simulacioes co las codicioes que tiee el sistema e el istate t E, obteer u istate de tiempo para cada ejecució y tomar el mayor de todos ellos como mometo e que comieza el periodo estacioario. 5
4.- ANÁLISIS ESTADÍSTICO DE LOS RESULTADOS Como los resultados de ua simulació so aleatorios, la forma de trabajar es REALIZAR EJECUCIONES y estimar los parámetros de redimieto mediate técicas estadísticas a partir de los resultados para las ejecucioes del programa. a) Estimació de medidas de redimieto e estado estacioario. b) Itervalos de cofiaza. c) Número de ejecucioes (réplicas) a realizar y logitud de las mismas. Obteció de réplicas idepedietes. 4.-ESTIMACIÓN DE MEDIDAS DE RENDIMIENTO EN ESTADO ESTACIONARIO ESTADÍSTICA: Sea X la característica e estudio, tal que E[X]=θ, descoocido. Forma de trabajo: Tomar ua m.a.s. (v.a. INDEPENDIENTES) X ˆ, X2,..., X y θ = Xi = X i= Maera de medir el error: itervalo de cofiaza para θ, co ivel -α. θ 2 ˆ θ S 2 ± h, S = ( Xi X), P( h< t h) α < = i= 6
ESTIMACIÓN DE MEDIDAS DE RENDIMIENTO EN ESTADO ESTACIONARIO A partir del itervalo de cofiaza para θ, se defie: ˆ S θ θ ± h ˆ S EA = θ θ < h ERROR ABSOLUTO: S θ ˆ θ h ERROR RELATIVO: ER = < ˆ θ X No depede de las uidades de medida i de la magitud de los datos. Se puede medir e % y se llama precisió del itervalo. ESTIMACIÓN DE MEDIDAS DE RENDIMIENTO EN ESTADO ESTACIONARIO Aplicació e ua simulació: Sea, por ejemplo, L, la característica a estimar (se razoa igual para cualquier otro parámetro, p k o W) Forma de trabajo: Realizamos ejecucioes INDEPENDIENTES. E cada ua de ellas obteemos ua estimació para L, L i : ˆ Teemos L, L,..., L idepedietes y L = L = L 2 Error absoluto e la estimació de L: S ( ) 2 i 2 EA= L L < h, S = L L i= i = i 7
4.-RELIZACIÓN DE EJECUCIONES INDEPENDIENTES MÉTODO : Ejecutar veces la simulació, cada ua co úmeros aleatorios distitos y descotar e cada ua el periodo trasitorio. MÉTODO 2: Realizar ua sola simulació larga y partirla e trozos. Así solo se cueta ua vez el periodo trasitorio pero las ejecucioes o so idepedietes. MÉTODO 3: Igual que el dos pero dejar etre dos trozos u periodo si cotar, más pequeño que el trasitorio. Es el más utilizado. MÉTODO 4 (REGENERATIVO): Localizar istates e el tiempo e los que el proceso se reiicie (putos de regeeració). 4.- NÚMERO DE EJECUCIONES Y LONGITUD DE LAS MISMAS Se obtiee resultados equivaletes usado meos ejecucioes más largas o más ejecucioes meos largas. Procedimieto: - Fijar la logitud de las ejecucioes. Fijar el error relativo γ máximo a cometer e la estimació del parámetro de iterés, θ. 2.- Realizar u úmero 0 de simulacioes (8 ó 9 e la práctica). Comprobar si la estimació de θ preseta u error relativo meor que γ. * si : ER < γ, termiar las ejecucioes * sio, 0 = 0 + y repetir el proceso. 8