Está en la página 1de 9

Apuntes N°2

Nombre de la asignatura SIMULACIÓN


Unidad académica Facultad de Ingeniería y Arquitectura
Carrera/Programa Ingeniería Civil Industrial

UNIDAD III: GENERACIÓN DE VARIABLES ALEATORIAS.

Contexto

Seguro que en más de una ocasión has llevado a cabo algún experimento varias veces y no siempre
te ha dado el mismo resultado. Esto no quiere decir que lo hayamos realizado mal, todo lo contrario,
en algunas ocasiones las variables que podemos obtener son precisamente muy distintas. Es por
ello por lo que la asignatura de simulación también trabaja con la estadística y la probabilidad, y
dentro de estas modalidades nos encontramos con las variables aleatorias.

Número Aleatorios

• Elemento central en la Simulación digital.


• Definición formal controvertida.
• Elemento esencial en muchas áreas del conocimiento Ingeniería, Economía, Física,
Estadística, etc.
• Definición intuitiva: Una sucesión de números aleatorios puros, se caracteriza por que
no existe ninguna regla o plan que permita conocer sus valores.
• Los números aleatorios obtenidos a través de algoritmos recursivos se llaman
pseudoaleatorios.
• La gran disponibilidad de generadores de números aleatorios en muchos entornos y
compiladores puede llevar a pensar que para un usuario de la simulación no sería
necesario estudiar estas cuestiones.
• Una lección del pasado reciente obliga a sacar lecciones y actuar con mucho cuidado
con dichos generadores: (RANDU – IBM / 1960).
• Es ampliamente considerado como uno de los generadores de números aleatorios más
mal concebidos que se haya diseñado.

Algunas Propiedades de números Aleatorios

• Distribución Uniforme: Cualquier número que pertenezca al rango de interés debe


tener la misma probabilidad de resultar sorteado.
• No Correlación Serial: La aparición de un número en la secuencia, no afecta la
probabilidad de que aparezca otro (o el mismo) número.

Ejemplo: La sucesión 1,2,3,4,5,1,2,3,4,5,1,2,3,4,5… es uniforme, pero está correlacionada.


Propiedades deseables números Aleatorios

• Uniformemente distribuidos.
• Estadísticamente independientes (no correlación).
• Periodo largo (sin repetición).
• Reproducibles y mutables.
• Sencillo en su implementación.
• Portabilidad.
• Método rápido de generación.
• Poca memoria para la generación.

Generación de Series de N° Aleatorios

Es un proceso fundamental en la simulación, ¿Por qué?

Porque permite simular el comportamiento de variables aleatorias, además, el comportamiento


de un sistema depende del comportamiento de sus variables (variables aleatorias).

Generadores de N° Aleatorio

• Generadores no congruenciales

✓ Método del cuadrado medio

✓ Método del producto medio

• Generadores congruenciales

✓ Método congruencial lineal (MCL).

✓ Método congruencial multiplicativo (MCM).

Método del cuadrado medio

• Fue propuesto inicialmente por Von Newman y Metrópolis en el año 1946.


• Para generar el siguiente número pseudoaleatorio, se toman los n dígitos centrales del
cuadrado del número anterior de n dígitos.
• Se requiere una semilla.

Método del Producto Medio

• Este método es muy similar al anterior ya que se tomará como número aleatorio
siguiente de la serie, a los n dígitos centrales del resultado de una multiplicación
previa.
• Se requiere dos semillas.
Generadores Congruenciales

• Método Congruencial Mixto.


• Método Congruencial Multiplicativo.

Xn
Un =
Xn+1 = (a Xn + c) mod m ; m

Los parámetros del algoritmo se llaman:

• a multiplicador
• c sesgo
• m módulo
• Xo semilla (valor inicial)

Xn+1 = (a Xn + c) mod m

Observación:

• Cuando c=0 el generador se denomina Generador congruencial multiplicativo.


• Cuando c0 el generador se denomina Generador congruencial mixto.
• A pesar de la simplicidad una adecuada elección de los parámetros de “a, c y m”, permite
obtener de manera eficiente una larga e impredecible sucesión de números como para
considerarse “aleatoria”.

Método Congruencial Lineal (MCL)

• Los generadores congruenciales lineales generan una serie de números pseudo -


aleatorios de tal forma que se puede generar el siguiente a partir del último número
derivado, es decir, que el número Xn+1 es generado a partir de Xn.
• La relación de recurrencia para el método congruencial mixto es:

Donde:

Xn+1 = (a Xn + c) mod (m)

• X0 = semilla (X0 >0)


• a = multiplicador (a >0)
• c = constante aditiva (c >0)
• m = módulo (m >X0, m >a y m>c)
Si se quiere obtener números Uniformes (0,1) se normaliza el resultado:

Un = Xn / m

En el MCL, si se repite un número, se repite toda la secuencia.

Ventajas:

• Utiliza poca memoria y es muy rápido.


• Fácil de volver a generar la misma secuencia, guardando un solo número, (se alcanza
con partir desde la misma semilla: X0).

Streams - Torrentes

• Un generador de números aleatorios que comience con la misma semilla siempre


producirá la misma secuencia de números.
• Diferentes semillas generarán diferentes secuencias. Si las semillas se eligen con valores
no cercanos (en el ciclo del generador), entonces las secuencias de números generados
(torrentes) parecerán y actuarán como números aleatorios independientes entre sí con
lo que colaborarán en la generación de v.a. Independientes entre sí.

Validación de Generadores Congruenciales

Finalmente, la fase de validación se basa en ciertas propiedades estadísticas que deben cumplirse a
la salida de los generadores de N° aleatorios.

Los Test empíricos que se verá a continuación son genéricos y pueden usarse en la evaluación de
generadores de No. aleatorios, en generadores de variables aleatorias y en la modelación de
entradas de modelos de simulación.

La mayoría de las Pruebas se encuentran disponibles en paquetes estadísticos comerciales. SAS,


estadística, etc.

Pruebas de uniformidad, chi-cuadrado y Kolmogórov-Smirnov

Una de las propiedades más importantes que debe cumplir un conjunto de números ri es la
uniformidad.

Para comprobar su acotamiento se han desarrollado pruebas estadísticas tales como las pruebas
Chi-cuadrada y de Kolmogórov-Smirnov .

En cualquiera de ambos casos, para probar la uniformidad de los números de un conjunto ri es


necesario formular las siguientes hipótesis:

Ho: ri~U(0,1)

H1: ri no son uniformes


Prueba Chi-cuadrado

La prueba Chi-cuadrado busca determinar si los números del conjunto ri se distribuyen


uniformemente en el intervalo (0,1). Para llevar a cabo esta prueba es necesario dividir el intervalo
(0,1), en m subintervalos,

Es recomendable que m=√n. Posteriormente se clasifica cada número pseudo aleatorio del conjunto
ri en los m intervalos.

A la cantidad de números ri que se clasifican en cada intervalo se le denomina frecuencia observada


(Oi), y a la cantidad de números ri que se espera encontrar en cada intervalo se le llama frecuencia
esperada (Ei); teóricamente, la Ei es igual a n/m.

A partir de los valores de Oi y Ei se determina el estadístico mediante la ecuación:


𝑚
(𝐸𝑖 − 𝑂𝑖 )²
𝑋02 =
𝐸𝑖
𝑖=1

2
Si el valor del estadístico 𝑥02 es menor al valor de tablas de 𝑥𝑎, 𝑚−1 , entonces no se puede rechazar
que el conjunto de números ri sigue una distribución uniforme. En caso contrario, se rechaza que ri
sigue una distribución uniforme.

Prueba de Kolmogórov-Smirnov

Propuesta por Kolmogórov-Smirnov, esta es una prueba estadística que también sirve para
determinar si un conjunto ri cumple la propiedad de uniformidad. Es recomendable aplicarla en
conjuntos ri pequeños, por ejemplo, n < 20. El procedimiento es el siguiente:

• Ordenar de menor a mayor los números del conjunto ri.


• r1 ≤ r2 ≤ r3 ≤… ≤ rn
• Determinar los valores de D+, D- y D con las siguientes ecuaciones:

• Determinar el valor crítico de acuerdo con la tabla de valores críticos de Kolmogórov


para un grado de confianza α, y según el tamaño de la muestra n.
• Si el valor D es mayor que el valor critico se concluye que los números del conjunto ri
no siguen una distribución uniforme.
• De lo contrario se dice que no se ha detectado diferencia significativa entre la
distribución de los números del conjunto ri y la distribución uniforme.
Pruebas de independencia

A continuación, se estudia las pruebas estadísticas que tratan de corroborar si los números en el
intervalo (0,1) son independientes o, en otras palabras, si parecen pseudo aleatorios.

Para probar la independencia de los números de un conjunto ri primero es preciso formular las
siguientes hipótesis:

• H0: los números del conjunto ri son independientes.


• H1: los números del conjunto ri no son independientes.

Test de Rachas o corridas arriba y abajo


• El procedimiento de esta prueba consiste en determinar una secuencia de números (S)
que sólo contiene unos y ceros, de acuerdo con una comparación entre ri y ri-1. La
secuencia de unos y ceros se construye de esta manera:

• Se coloca un cero si el número ri es menor que o igual al número ri anterior; en caso de


ser mayor que el número ri anterior, se pone un uno.

• Posteriormente se determina el número de corridas observadas, Co (una corrida se


identifica como la cantidad de unos y ceros consecutivos). Luego se calcula el valor
esperado, la varianza del número de corridas y el estadístico Z0, mediante las
ecuaciones:

Si el estadístico Z0 es menor que el valor crítico de Zα/2, se concluye que los números del conjunto
ri son independientes y se acepta H0.

Prueba de corridas arriba y abajo de la media


• El procedimiento de esta prueba consiste en determinar una secuencia de unos y ceros,
de acuerdo con una comparación entre los números del conjunto ri y 0.5.
• Posteriormente se determina el número de corridas observadas Co, y los valores de no
y n1.
• Co es el número de corridas en la secuencia, determinado de la misma manera que en
la prueba de corridas arriba y abajo;
• no es igual a la cantidad de ceros en la secuencia, y
• n1 es igual a la cantidad de unos en la secuencia, cumpliéndose que n0 + n1 = n.
• Luego se calcula el valor esperado, la varianza del número de corridas y el estadístico Z0
con las siguientes ecuaciones:

• Si el estadístico Zo está dentro del intervalo: -Zα/2  Z0  Zα/2 se concluye que los
números del conjunto ri son independientes. De lo contrario se rechaza que el conjunto
de ri es independiente (se rechaza Ho).

Generación de variables aleatorias

Métodos para generar variables aleatorias

Existen varios métodos para generar variables aleatorias:

• Método de la transformada inversa.


• Método de convolución.
• Método de aceptación rechazo.
• Método directo.

Método de la transformada inversa.

Distribución uniforme

Obtenida a partir del método de la transformada inversa.

x = a + (b − a) RNDi
donde:

a = límite inferior de la distribución uniforme.

b = límite superior de la distribución uniforme.

RNDi = número aleatorio con distribución uniforme entre 0 y 1.


Distribución exponencial

Obtenida a partir del método de la trasformada inversa.

1
x=− ln(1 − RNDi )

donde:

1
 = media de la distribución exponencial.

Distribución Normal

Obtenida a partir del método de la transformada inversa.

x =  + inv.dist.normal(RNDi )*
donde:

 = Media.
 = parámetro de forma.

Distribución Erlang

Obtenida a partir del método de convolución.

1  k 
x=− ln   RNDi 
k    i =1 
donde:

 = parámetro de escala.

k = parámetro de forma.
Distribución Weibull

Obtenida a partir del método de la transformada inversa.

x =  +    − ln(1 − RNDi )
donde:

 = parámetro de escala.

 = parámetro de forma.

 = parámetro de localización.

Distribución Gamma

Obtenida a partir del método de convolución.

1  k 
x=− ln   RNDi 
k    i =1 
donde:

 = parámetro de escala.

k = parámetro de forma.

¿Qué es la Simulación de Montecarlo?

Es una técnica cualitativa que hace uso de la estadística y de los ordenadores para imitar, mediante
modelos matemáticos, el comportamiento aleatorio de sistemas reales no dinámicos.

Pasos para hacer una Simulación Montecarlo


1. Identificar las variables inputs del modelo, tanto estáticas (parámetros) como aleatorias
(estocásticas)
2. Construir el modelo matemático del sistema, proceso o actividad que se quiere analizar.
Este modelo genera los outputs a estudiar.
3. Llevar a cabo experimentos generando muestras aleatorias para los inputs y generando
resultados que permitan estudiar el comportamiento del sistema.
4. Tras repetir n veces el experimento, tendremos n observaciones sobre el comportamiento
del sistema, lo que permite comprender mejor el funcionamiento del sistema.
5. El análisis es más preciso cuanto mayor sea el número n de experimentos llevados a cabo.

También podría gustarte