You are on page 1of 9

4. NMEROS PSEUDOALEATORIOS.

En los experimentos de simulacin es necesario generar valores para las variables aleatorias representadas estas por medio de distribuciones de probabilidad.

Para poder generar entradas estocsticas (probabilisticas) para un modelo de simulacin, se debe contar con un generador de nmeros pseudoaleatorios. Con estos y mtodos de generacin de variables aleatorias, se pueden simular las entradas incontrolables para un modelo de simulacin.

Inicialmente los nmeros aleatorios se generaban en forma manual o mecnica utilizando tcnicas como ruedas giratorias, lanzamientos de dados, barajas. Tambin existen mtodos aritmticos que permiten generan un gran conjunto de nmeros aleatorios, pero el advenimiento de la computadora ha permitido crear generadores que permitan generar de manera sucesiva todo los nmeros aleatorios que se requieran.

Un nmero pseudoaleatorio no es ms que el valor de una variable aleatoria x que tiene una distribucin de probabilidad uniforme definida en el intervalo (0, 1).

Se sabe que la funcin de densidad f(x) de una variable aleatoria x con una distribucin de probabilidad uniforme en el intervalo [a, b] es:

1 f ( x) = b a 0

para otros valores para a x b

La funcin acumulativa F(x), que representa la probabilidad de que las variable aleatoria x sea menor o igual a un valor especfico de x est dada por:

0 x a F ( x) = b a 1

para a x b si x > b si

x<a

La figura 6, muestra la funcin de densidad y acumulativa para dicha variable aleatoria

1 b-a

Figura 6. Funcin de densidad y acumulativa para una variable aleatoria x con una distribucin de probabilidad uniforme en el intervalo [a, b].

El valor esperado y la varianza de una distribucin de probabilidad uniforme son respectivamente.

a+b , 2 2

( a + b) 2 12

Al definir la funcin de densidad de la distribucin de probabilidad uniforme en el intervalo [0, 1], una variable aleatoria R tendra una funcin de densidad f(R) y una funcin acumulada F(R), dadas por: para 0 R 1

1 f ( R) = 0

para otros valores

0 R a F ( R) = b a 1

para 0 R 1 si R > b si

R<a

Los valores de la media y la varianza, estn dados por:

1 , 2 2

1 12

La variable aleatoria R es continua y debe ser estadsticamente independiente. Finalmente para que para que un conjunto de nmeros sean considerados aleatorios deben cumplir las siguientes caractersticas: Deben estar uniformemente distribuidos. Deben ser estadsticamente independientes. Su media debe ser estadsticamente igual a . Su varianza debe ser estadsticamente igual a 1/12. Deben ser reproducibles.

4.1. MTODOS PARA GENERAR NMEROS PSEUDOALEATORIOS.

4.1.1. Mtodos Manuales: son los mtodos ms simples y lentos, ejemplo de estos mtodos son lanzamientos de monedas, dados, cartas y ruletas. Los nmeros producidos por estos mtodos cumplen las condiciones estadsticas mencionadas anteriormente, pero es imposible reproducir una secuencia generadas por estos mtodos.

4.1.2. Tablas de nmeros aleatorios: estos nmeros se pueden generar por medio de una hoja de clculo o por cualquier generador de cualquier lenguaje de programacin razn por la cual su comportamiento es totalmente determinstico.

4.1.3. Mediante el computador digital: existen tres mtodos para producir nmeros aleatorios mediante un computador: 4.2. Provisin externa. Generacin interna a travs de un proceso fsico aleatorio. Generacin por medio de una regla de recurrencia.

MTODOS

ARITMTICOS

PARA

GENERAR

NMEROS

PSEUDOALEATORIOS.

4.2.1. Mtodos de Cuadrados Medios: el procedimiento de obtencin de nmeros pseudoaleatorios con este tipo de generador es el siguiente: Se define una semilla. Se eleva la semilla al cuadrado. Dependiendo de la cantidad de dgitos que se desea tenga el nmero pseudoaleatorio, se toman de la parte central del nmero resultante en el paso anterior el nmero de dgitos requeridos. Si no es posible determinar la parte central, se completa el nmero agregando ceros al principio o al final.

Debe tenerse en cuenta que se desean nmeros pseudoaleatorios entre 0 y 1, en consecuencia el resultado se debe normalizar, es decir, si los nmeros son de dos dgitos se normaliza dividiendo por 100, si es de tres dgitos por mil y as sucesivamente.

Ejemplo: generar 3 nmeros aleatorios de 4 dgitos a partir de un generador de cuadrados medios utilizando como semilla el nmero 445.

Como se quieren nmeros pseudoaleatorios Ri de 4 dgitos, se tomarn los cuatro dgitos de la parte central del cuadrado de la semilla, de la siguiente manera:
2

(445) =198025 = 9802 (9802)2 = 96079204 = 0792 (792) = 627264 = 2726


2

luego R1= 9802 / 10000 = 0.9802 luego R2 = 0792 / 10000 = 0.0792 luego R3 = 2726 / 10000 = 0.2726

Observacin: como los nmeros pseudoaleatorios deben estar entre 0 y 1 y son de 4 dgitos, se normaliza dividiendo entre 10000.

4.2.2. Mtodo de Producto medio: este mtodo es un poco similar al anterior pero se debe comenzar con dos semillas cada una con k dgitos, el nmero resultante se toma como las cifras centrales del producto de los dos nmeros anteriores. Por ejemplo, tomando como semillas a X0 =13 y X1 =15 el mtodo sera el siguiente: X2 = (13*15)= 0195 = 19, luego R2 =19 / 100 = 0.19. X3 = (15*19) = 0285 = 28, luego R3 = 28 / 100 = 0.28. X4 = (19*28) = 0532 = 53, luego R4=53 / 100 = 0.53.

4.2.3. Mtodo del producto medio modificado: consiste en usar una constante multiplicativa en lugar de una variable. Es decir Xn+1 = (K*Xn). Debe notarse que los mtodos anteriores tienen periodos relativamente cortos, los cuales son afectados grandemente por los valores iniciales que se escojan, adems son

estadsticamente insatisfactorios. Tambin debe tenerse en cuenta que un generador con un periodo corto no sirve para hacer un nmero considerado de ensayos de simulacin.

4.3. MTODOS CONGRUENCIALES.

Se han desarrollado bsicamente tres mtodos de congruenciales para generar nmeros pseudoaleatorios, los cuales se derivan del empleo de diferentes versiones de la relacin fundamental de congruencia. El objetivo de cada uno de los mtodos es la generacin en un tiempo mnimo, de sucesiones de nmeros aleatorios con periodos mximos. Los mtodos congruenciales son: el aditivo, el multiplicativo y el mixto.

4.3.1. Mtodo Congruencial Aditivo: calcula una sucesin de nmeros pseudoaleatorios mediante la relacin Xn+1= Xn +Xn-k (mod M). Para usar este mtodo se necesitan k valores iniciales, siendo k entero. Las propiedades estadsticas de la secuencia tienden a mejorarse a medida que k se incrementa. Este es el nico mtodo que produce periodos mayores que M.

4.3.2. Mtodo Congruencial Multiplicativo: calcula una sucesin Xn de enteros no negativos, cada uno de los cuales es menor que M mediante la relacin Xn+1= a.Xn (mod M). Es un caso especial de la relacin de congruencia en que c=0, este mtodo se comporta de manera satisfactoria estadsticamente, es decir, los nmeros generados por medio de este mtodo estn unifrmente distribuidos, y no estn correlacionados. Este mtodo tiene un periodo mximo menor que M, pero se pueden imponer condiciones en a y X0 de tal forma que se obtenga el periodo mximo. Desde el punto de vista computacional es el ms rpido de todos.

4.3.3. Mtodo Congruencial Mixto o Lineal: los generadores congruenciales lineales generan una secuencia de nmeros pseudoaleatorios en la cual el prximo nmero pseudoaleatorio es determinado a partir del ltimo nmero generado, es decir, el nmero pseudoaleatorio Xn+1 es derivado a partir del nmero pseudoaleatorio Xn La relacin de recurrencia para el generador

congruencial mixto es Xn+1 =(a Xn+c) mod m, en donde X0 = es la semilla a =el multiplicador c = constante aditiva m = el modulo (m > X0, a,c) X0, a, c >0

Esta relacin de recurrencia nos dice que Xn+1 es el residuo de dividir a Xn+c entre el modulo. Lo anterior significa que los valores posibles de Xn+1 son 0,1,2,3 ....m-1, es decir, m representa el nmero posible de valores diferentes que pueden ser generados.

Ejemplo: supongamos que se tiene un generador en el cual los valores de sus parmetros son: a = 5, c = 7, X0 = 4 y m = 8. El generador quedar de la siguiente manera: Xn+1 = (5 Xn + 7) mod 8 En la tabla 2, se muestran los nmeros aleatorios generados por este mtodo.

n 1 2 3 4 5 6 7 8 4 3 6 5 0 7 2 1

Xn

(5 Xn+7)/8 27/8 22/8 37/8 32/8 7/8 42/8 17/8 12/8 3 6 5 0 7 2 1 4

Xn+1 (Residuo)

Nmeros aleatorios 3/8=0.375 6/8=0.75 5/8 =0.625 0 7/8=0.875 2/8=0.25 1/8=0.125 4/8=0.5

Tabla 2. Generacin de nmeros aleatorios por le mtodo congruencial mixto.

Cuando se quiere construir un generador de nmeros aleatorios para simular los valores de una variable aleatoria, se deben elegir los parmetros de tal manera que se garantice un periodo largo para que se puedan hacer todos los ensayos de simulacin, por lo tanto se deben tener en cuenta las siguientes condiciones: a debe ser un nmero impar, no divisible ni por 3 ni por 5. c usualmente puede ser cualquier constante, sin embargo, para asegurar buenos resultados, se debe seleccionar a de tal forma que, a mod 8 = 5 para una computadora binaria, o a mod 200 = 21 para computadora decimal. m debe ser el nmero entero ms grande que la computadora acepte. De acuerdo con Hull y Dobell, los mejores resultados para un generador congruencial mixto en una computadora binaria son: c = 8*a3 a = cualquier entero X0 = Cualquier entero impar. M = 2 donde b >2 y que m sea aceptado por la computadora.
b

4.4. PROBLEMAS PROPUESTOS.

Determine el perodo de los siguientes generadores congruenciales mixtos: Xn+1 = (8 Xn+16) mod 100 y X0 = 15. Xn+1 = (50 Xn+17) mod 64 y X0 = 13. Xn+1 = (5 Xn+24) mod 32 y X0 = 7. Xn+1 = (5 Xn+21) mod 100 y X0 = 3. Xn+1 = (9 Xn+13) mod 32 y X0 = 8.

Determine

el

perodo

de

los

siguientes

generadores

congruenciales

multiplicativos: Xn+1 = 203 Xn mod 105 y X0 = 17. Xn+1 = 211 Xn mod 10 y X0 = 19. Xn+1 = 221 Xn mod 10 y X0 = 3. Xn+1 = 5Xn mod 64 y X0 = 7. Xn+1 = 11 Xn mod 128 y X0 = 9.
3 8

Genere nmeros aleatorios entre 0 y 1 con los siguientes generadores congruenciales y determine el ciclo de vida de cada uno. Xn+1 = (40 Xn+13) mod 33 y X0 = 302. Xn+1 = (71 Xn+57) mod 341 y X0 = 71. Xn+1 = (71 Xn+517) mod 111 y X0 = 171. Xn+1 = (71561 Xn+56822117) mod 341157 y X0 = 31767. Xn+1 = (723 Xn+531) mod 314 y X0 = 927. Xn+1 = (452 Xn+37452) mod 1231 y X0 = 4571. Xn+1 = (17 Xn) mod 37 y X0 = 51. Xn+1 = (16Xn+4) mod 14 y X0 = 22.

Genere 50 nmeros aleatorios entre 0 y 1 de 4 dgitos, mediante un generador de cuadrados medios cuya semilla sea: 4567234902. 3567345. 1234500012.

En cada caso calcule el valor esperado, la varianza y el histograma. Demuestre que los nmeros generados provienen de una distribucin uniforme con un nivel de aceptacin del 90%.

You might also like