You are on page 1of 7

El siguiente material se encuentra en etapa de corrección y no deberá

ser considerado una versión final.


Para hacer comentarios y sugerencias, o reportar errores, enviar mail
a Alejandro D. Zylberberg <alejandro@probabilidad.com.ar>
Versión Actualizada al: 17 de junio de 2004

APÉNDICE C
Simulación
Si una población sigue una determinada distribución, entonces al tomar una muestra
de n valores de esa población, los valores obtenidos cumplirán con 2 características:
1) todos ellos serán valores posibles (es decir, son valores que tienen probabilidad
no-nula en la distribución de la población)
2) las proporciones entre los valores cumplirán aproximadamente con la forma de la
distribución.

Por ejemplo, si la población fueran las duraciones de determinados componentes


producidos, y dichas duraciones siguen una distribución exponencial negativa, y se
toma una muestra (es decir, se eligen n componentes al azar y se miden sus
duraciones) entonces:
1) los valores obtenidos serán números reales positivos (la distribución exponencial
negativa le asigna probabilidad no nula a los valores reales positivos)
2) la proporción entre los valores cumplirá aproximadamente con la forma de la
distribución exponencial negativa, es decir, la cantidad de valores obtenidos
cercanos al cero seguramente será mayor que la cantidad de valores obtenidos
lejanos al cero, porque en la distribución exponencial negativa los valores más
probables son los más cercanos al cero).

Esto se entiende porque como vimos en los capítulos anteriores, cada elemento que
compone nuestra muestra no es otra cosa que una variable aleatoria cuya
distribución es la de la población de la cual extraemos la muestra.

El problema de la simulación consiste en, dada una determinada distribución,


generar un conjunto de valores que podrían haber venido de una población que
tenga esa distribución, es decir, que sean valores posibles, y que las proporciones
entre ellos reflejen la distribución de la cual deben parecer venir. La diferencia entre
tomar una muestra y simular, es que en la muestra los valores se obtienen
extrayendo elementos de una población, mientras que en la simulación se "inventan".

Por ejemplo, si la población de la cual queremos simular una muestra tiene la


distribución U(0;1) (capítulo 7) entonces la podemos simular con la función
"random" de cualquier calculadora o computadora. Dicha función nos provee cada
vez que la invocamos de un número al azar entre cero y uno. Notemos que obtener
un número al azar entre cero y uno, no es otra cosa que una simulación de una
distribución U(0;1). Luego para obtener una muestra simulada de tamaño n de una
distribución U(0;1) basta con utilizar n veces la función random de la calculadora o
computadora.

¿Cómo hacemos si la distribución que queremos simular no es U(0;1)? Como


dijimos antes, cada elemento de una muestra que se toma es una variable aleatoria
que tiene la distribución de la población. Entonces para poder simular tenemos que
encontrar la manera de crear artificialmente una variable aleatoria cuya distribución
sea la de la población para la cual queremos simular una muestra.

Para esto, nos valdremos justamente de la función random. Sabemos que el valor
arrojado por la función random es una variable aleatoria X:U(0;1), y lo que
queremos simular es una variable aleatoria cualquiera Y, cuya distribución viene
dada por f Y(y). Lo que haremos será tomar un cambio de variables Y = Φ (X), de
modo tal que dados los valores de X(que podemos obtener fácilmente) mediante un
pequeño cálculo obtengamos los valores de Y. Entonces nuestro problema se
reduce a encontrar un cambio de variables adecuado, que nos garantice que si la
distribución de X es U(0;1) entonces la distribución de Y = Φ (X) sea la f Y(y) que
queremos simular.

Como cambio de variables, vamos a proponer la función Y = Φ (x) = F Y-1 (x). Como
vimos en el capítulo 2, la fórmula para encontrar la distribución de Y es:
f X (Φ −1 ( x)) dx
f Y ( y) = = f X (Φ −1 ( x))
dy dy
dx
Como se vio en el capítulo 7, si X:U(0;1) entonces la función f X(x) vale:
1 0 < x < 1
f X ( x) = 
0 ∀ otro x
Luego como dentro del dominio de X, f X(x) siempre vale 1, queda:
dx
f Y ( y) =
dy
Decir que Y = F Y-1 (x) es lo mismo que decir que X = F Y(y). Luego, dx/dy es f Y(y).
Por lo tanto, hemos demostrado que si X es uniforme entre 0 y 1, y dada f Y(y) una
distribución cualquiera que queremos simular, entonces si tomamos el cambio de
variables Y = Φ (x) = F Y-1 (x), los valores que obtendremos para Y tendrán la
distribución f Y(y) que queríamos simular.

Ejemplo
Simularemos a continuación 10 valores de la siguiente distribución:
y / 2 0 < y < 2
f Y ( y) = 
 0 ∀ otro y
Vamos a necesitar F Y-1 (y). Construimos F Y(y):
 0 y<0

FY ( y) =  y 2 / 4 0 < y < 2
 1 y>2

Solamente nos interesa la rama 0 < y < 2. Si X = F Y(y) = y 2 / 4 entonces
Y = 4x = 2 x
.
Usando la función random de cualquier calculadora obtenemos los valores:
0.313, 0.579, 0.168, 0.812, 0.247, 0.324, 0.759, 0.499, 0.991, 0.117

Y =2 x
Luego aplicándole a esos valores la transformación obtenemos:
1.12, 1.52, 0.82, 1.80, 0.99, 1.14, 1.74, 1.41, 1.99, 0.68
Estos valores constituyen nuestra simulación de tamaño 10 de la variable aleatoria
dada por la f Y(y) de la que partimos. Mirándolos vemos que efectivamente parecen
bastante representativos de la distribución estudiada, porque predominan los
valores cercanos al 2.

Resuelto el ejemplo, volveremos sobre una pregunta que quedó pendiente: ¿por qué
se nos ocurrió proponer Y = Φ (x) = F Y-1 (x) como solución al problema de la
simulación?
Observemos que el dominio de la función F Y(y) son los números reales, y que al ser
la función de probabilidad acumulada, su imagen es el intervalo [0;1]. Luego la
inversa F Y-1 (x) irá del intervalo [0;1] a los reales. Más precisamente, si el número que
recibe está en el intervalo (0;1), F Y-1 (x) nos devolverá un valor posible de la variable
aleatoria Y.
Ese valor tendrá la distribución deseada f Y(y). Por ejemplo, en los lugares donde f Y
(y) sea alta, F Y(y) crecerá rápidamente, es decir que una pequeña porción del
dominio de F Y(y) estará asociada a una gran porción de la imagen [0;1]. Luego una
gran porción del dominio de F Y-1 (x) estará asociada a una pequeña porción de la
imagen de F Y-1 (x), o sea de los valores de Y, con lo cual habrá probabilidad alta de
que un número random caiga en la porción asociada a los valores correspondientes
de la variable Y. Luego vemos que si en una región f Y(y) es alta, efectivamente se
cumple que habrá alta probabilidad de que muchos valores simulados caigan en esa
región. Comprobamos entonces que este método para simular es coherente.

Variables discretas

Para variables discretas, el método de tomar Y = Φ (x) = F Y-1 (x) con X random
sigue siendo válido. De hecho resulta más simple, porque en vez de encontrar la
expresión de la función inversa F Y-1 (x) se puede directamente ver en qué región del
dominio de F Y(x) cae cada valor X.
Ejemplo

Simularemos a continuación 10 valores de la siguiente distribución:


0.2 y =1

0.5 y=2
PY ( y) = 
0.3 y =3
 0 ∀ otro y
Construyendo la función F Y(y) obtenemos:
0 y <1

0.2 1 ≤ y < 2
FY ( y) = 
0.7 2 ≤ y < 3
 1 y≥3
Podemos hacer un gráfico de este estilo:

Luego, dados los valores random, basta con ver en qué intervalo caen para saber a
qué valor de Y están asociados. Si los valores random que obtenemos son:
0.057, 0.532, 0.639, 0.346, 0.588, 0.920, 0.888, 0.511, 0.841, 0.382

Entonces los valores simulados de Y serán:


1, 2, 2, 2, 2, 3, 3, 2, 3, 2
Vemos que obtuvimos 10% de 1, 60% de 2 y 30% de 3, proporciones bastante
parecidas a las probabilidades respectivas 0.2, 0.5 y 0.3 de la distribución que
simulamos. Cuando mayor sea el tamaño de la muestra simulada, más tenderán a
parecerse las proporciones de los valores simulados a las probabilidades
correspondientes.

Problemas típicos

1) Simule 10 valores de una distribución exponencial negativa con λ = 2.


Resolución
Si Y:Expneg( λ =2), entonces:
2e −2 y y > 0
f Y ( y) = 
 0 y≤0
Luego la función de distribución acumulada es:
 0 y<0
F ( y) = 
1 − e 2 y y > 0

Y
Tenemos que X = F Y(y) = 1 - e -2y . Luego:
1
y = − ln( 1 − x)
2
Obtenemos 10 valores random:
0.057, 0.532, 0.639, 0.346, 0.588, 0.920, 0.888, 0.511, 0.841, 0.382

Ahora aplicamos la transformación para obtener los valores simulados de Y:


0.029, 0.380, 0.509, 0.212, 0.443, 1.263, 1.095, 0.358, 0.919, 0.241

2) Simule 10 valores de una variable aleatoria binomial con n = 3 y p = 0.8

Resolución
Si Y:Bi(n = 3 ; p = 0.8), entonces:
0.027 y =1

0.189 y=2
PY ( y) = 0.441 y =3

0.343 y=4
 0 ∀ otro y
Construyendo la función F Y(y) obtenemos:
 0 y<0

0.027 0 ≤ y < 1
FY ( y) = 0.216 1 ≤ y < 2
 ≤ <
0.657 2 y 3
 1 y≥3
Procediendo como en el ejemplo, asignamos los siguientes intervalos a los
siguientes valores:
• [0 ; 0.027) → 0
• [0.027 ; 0.216) → 1
• [0.216 ; 0.657) → 2
• [0.657 ; 1) → 3
Luego, si los valores random fueran por ejemplo:
0.685, 0.012, 0.960, 0.833, 0.551, 0.699, 0.320, 0.227, 0.918, 0.175
Entonces los valores simulados son:
3, 0, 3, 3, 2, 2, 2, 2, 3, 1
Este material se encuentra en etapa de corrección y no deberá ser
considerado una versión final.
Para hacer comentarios y sugerencias, o reportar errores, enviar mail
a Alejandro D. Zylberberg <alejandro@probabilidad.com.ar>
Versión Actualizada al: 17 de junio de 2004