viernes, 25 de octubre de 2013

PRUEBAS ESTADISTICAS PARA LOS NUMEROS PSEUDO ALEATORIOS

PRUEBAS ESTADISTICAS

Puesto que en el muestreo Monte Carlo cualquier variable aleatoria no uniforme (normal, exponencial, Poisson, etc.), es obtenida a partir de números aleatorios uniformes (0,1), el principal énfasis en las pruebas estadísticas deberán ser con respecto al generador de los números aleatorios, ya que cualquier deficiencia estadística en la distribución de la variable aleatoria no uniforme, se deberá exclusivamente a la utilización de un deficiente generador de números aleatorios. Por ello se aplicarán algunas de las muchas pruebas estadísticas que han sido desarrolladas para probar la uniformidad y aleatoriedad o independencia de los mismos, lo cual significa que la ocurrencia de un número aleatorio no determina la ocurrencia del siguiente y así sucesivamente.

Para la uniformidad
  • Bondad de ajuste o CHI-cuadrada: X2
  • Bondad de ajuste Kolmogorov-Smirnov
Para la aleatoriedad o independencia
  • Corridas por arriba y por abajo del promedio
PRUEBA DE BONDAD DE AJUSTE CHI CUADRADA.

Procedimiento:
1. Generar la muestra de números aleatorios de tamaño N.
2. Subdividir el intervalo [0,1] en n subintervalos.
3. Para cada subintervalo contar la frecuencia observada F0 y calcular la frecuencia esperada FE de números aleatorios, la cual se obtiene dividiendo N/n.
4. Calcular el estadístico de prueba.
5. Comparar el valor calculado X02 contra el valor tabulado de la distribución X2, con (n-1) grados de libertad y una significancia ?. Si X02 es menor que X2(n-1),? entonces no se puede rechazar la uniformidad de los números aleatorios.

PRUEBA DE BONDAD DE AJUSTE DE KOLMOGOROV-SMIRNOV
Procedimiento
1. Generar una muestra de números aleatorios uniformes de tamaño N.
2. Ordenar dichos números en orden ascendente.
3. Calcular la distribución acumulada de los números generados con la siguiente
expresión
Donde i es la posición que ocupa el número aleatorio Xi en el vector ordenado obtenido en el paso 2.
4. Calcular el estado de prueba Kolmogorov-Smirnov del modo siguiente
Dn = máx | Fn (Xi) – Xi | para toda Xi

5. Si Dn es menor dalfa,n, entonces no se puede rechazar la hipótesis de que los números generados provienen de una distribución uniforme. La distribución de Dnha sido tabulada como una función de n y alfa para cuando Fn (x) = F0 (x).



CORRIDAS POR ARRIBA Y POR ABAJO DEL PROMEDIO

Procedimiento
Generar la muestra de tamaño N de números aleatorios.
Con base en esta muestra, obtener una nueva sucesión binaria, según el criterio siguiente:
Si rj es menor o igual a 0.50 entonces asignarle a rj el símbolo 0.
Si rj es mayor a 0.50 entonces asignarle a rj el símbolo 1.
La frecuencia esperada para cada longitud de corrida i, es:

Qué es la simulación de MonteCarlo?


La simulación de MonteCarlo es una técnica cuantitativa que hace uso de la estadística y los ordenadores para imitar, mediante modelos matemáticos, el comportamiento aleatorio de
sistemas reales no dinámicos (por lo general, cuando se trata de sistemas cuyo estado va cambiando con el paso del tiempo, se recurre bien a la simulación de eventos discretos o bien a la simulación de sistemas continuos). 

La clave de la simulación MC consiste en crear un modelo matemático del sistema, proceso o actividad que se quiere analizar, identificando aquellas variables cuyo comportamiento aleatorio determina el comportamiento global del sistema. 

Una vez identificados dichas variables aleatorias, se lleva a cabo un experimento consistente en:
(1) generar – con ayuda del ordenador- muestras aleatorias (valores concretos) 
(2) analizar el comportamiento del sistema ante los valores generados. 

Tras repetir n veces este experimento, dispondremos de n observaciones sobre el comportamiento del sistema, lo cual nos será de utilidad para entender el funcionamiento del mismo –obviamente, nuestro análisis será tanto más preciso cuanto mayor sea el número n de experimentos que llevemos a cabo.

MÉTODOS CONGRUENCIALES PARA GENERAR NÚMEROS PSEUDOALEATORIOS.

 MÉTODOS CONGRUENCIALES

Se han desarrollado básicamente tres métodos de congruenciales para generar números pseudoaleatorios, los cuales se derivan del empleo de diferentes versiones de la relación fundamental de congruencia. El objetivo de cada uno de los métodos es la generación en un tiempo mínimo, de sucesiones de números aleatorios con periodos máximos. Los métodos congruenciales son: el aditivo, el multiplicativo y el mixto. 

1. Método Congruencial Aditivo:

Calcula una sucesión de números pseudoaleatorios mediante la relación Xn+1= Xn +Xn-k (mod M). Para usar este método se necesitan k valores iniciales, siendo k entero. Las propiedades estadísticas de la secuencia tienden a mejorarse a medida que k se incrementa. 
Este es el único método que produce periodos mayores que M. 

2. Método Congruencial Multiplicativo: 

Calcula una sucesión Xn de enteros no negativos, cada uno de los cuales es menor que M mediante la relación Xn+1= a.Xn (mod M). Es un caso especial de la relación de congruencia en que c=0, este método se comporta de manera satisfactoria estadísticamente, es decir, los 
números generados por medio de este método están unifórmente distribuidos, y pero se pueden imponer condiciones en a y X0 de tal forma que se obtenga el periodo máximo. Desde el punto de vista computacional es el más rápido de todos. 

  
3. Método Congruencial Mixto o Lineal:

Los generadores congruenciales lineales generan una secuencia de números pseudoaleatorios en la cual el próximo número pseudoaleatorio es determinado a partir del último número generado, es decir, el número pseudoaleatorio Xn+1 es derivado a partir del número pseudoaleatorio Xn La relación 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 relación 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 número posible de valores diferentes que pueden ser generados. 



MÉTODOS ARITMÉTICOS PARA GENERAR NÚMEROS PSEUDOALEATORIOS.


 1. Métodos de Cuadrados Medios:

El procedimiento de obtención de números pseudoaleatorios con este tipo de generador es el siguiente: 

• Se define una semilla. 
• Se eleva la semilla al cuadrado. 
• Dependiendo de la cantidad de dígitos que se desea tenga el número pseudoaleatorio, se toman de la parte central del número resultante en el paso anterior el número de dígitos requeridos. Si no es posible determinar la parte central, se completa el número agregando ceros al principio o al final.  
• Debe tenerse en cuenta que se desean números pseudoaleatorios entre 0 y 1, en consecuencia el resultado se debe normalizar, es decir, si los números son de dos dígitos se normaliza dividiendo por 100, si es de tres dígitos por mil y así sucesivamente. 


2. Método de Producto medio: 

Este método es un poco similar al anterior pero se debe comenzar con dos semillas cada una con k dígitos, el número resultante se toma como las cifras centrales del producto de los dos números anteriores.

Por ejemplo, tomando como semillas a X0 =13 y X1 =15 el método 
sería 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. 

3. Método 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 métodos anteriores tienen periodos relativamente cortos, los cuales son afectados grandemente por los valores iniciales que se escojan, además son estadística mente insatisfactorios. También debe tenerse en cuenta que un generador con un periodo corto no sirve para hacer un número considerado de ensayos de simulación.

QUE SON LOS NÚMEROS ALEATORIOS Y PSEUDOALEATORIOS, Y PARA QUE SIRVEN?



Los números aleatorios tienen la propiedad de ser obtenidos al azar, es decir, son resultado de un proceso en el cual su resultado no es predecible ya que todo número tiene la misma probabilidad de ser elegido y la elección de uno no depende de la elección del otro. La palabra aleatorio se usa para expresar una aparente carencia de propósito, causa, u orden. El ejemplo clásico más utilizado para generarlos es el lanzamiento repetitivo de una moneda o dado. 

Los números pseudo aleatorios son números generados en un proceso que parece producir números al azar, pero no lo hace realmente, de aquí el prefijo pseudo que quiere decir falso, ya que su generación parte de algoritmos determinísticos, lo cual nos quiere decir que obtendremos siempre el mismo resultado bajo las mismas condiciones iniciales. Estas condiciones se refieren a varios parámetros de arranque, siendo el valor inicial, también llamado semilla, el denominador común de todos los algoritmos. 

Estos números tienen la característica de que deben seguir una distribución Uniforme, es decir que pueden tomar cualquier valor dentro del intervalo (0, 1), entonces podemos decir que los números pseudo aleatorios son números entre 0 y 1 que han pasado por un tamizado de pruebas para poder determinar que tendrán una función aproximada a la realidad es decir, haya aleatoriedad. La función de los números pseudo aleatorios es que a partir de ellos podemos generar variables aleatorias las cuales están sujetas en el mayor de los casos, a distribuciones estadísticas que son las que se usan para establecer el comportamiento de materiales, sucesos, personas, etc., en todo proceso de simulación. 

¿Para qué y cómo se usan dichos números? Se usan como una fuente confiable de variabilidad dentro de losmodelos de simulación fundamentalmente porque las sucesiones de númerospseudoaleatorios son más rápidas de generar que las de números aleatorios.