c - simulacion

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 <[email protected]> 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

Upload: dario-iglesias

Post on 10-Jul-2016

215 views

Category:

Documents


0 download

DESCRIPTION

c

TRANSCRIPT

Page 1: C - Simulacion

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 maila Alejandro D. Zylberberg <[email protected]>Versión Actualizada al: 17 de junio de 2004

APÉNDICE CSimulaciónSi una población sigue una determinada distribución, entonces al tomar una muestrade 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 probabilidadno-nula en la distribución de la población)2) las proporciones entre los valores cumplirán aproximadamente con la forma de ladistribución.

Por ejemplo, si la población fueran las duraciones de determinados componentesproducidos, y dichas duraciones siguen una distribución exponencial negativa, y setoma una muestra (es decir, se eligen n componentes al azar y se miden susduraciones) entonces:1) los valores obtenidos serán números reales positivos (la distribución exponencialnegativa le asigna probabilidad no nula a los valores reales positivos)2) la proporción entre los valores cumplirá aproximadamente con la forma de ladistribución exponencial negativa, es decir, la cantidad de valores obtenidoscercanos al cero seguramente será mayor que la cantidad de valores obtenidoslejanos al cero, porque en la distribución exponencial negativa los valores másprobables son los más cercanos al cero).

Esto se entiende porque como vimos en los capítulos anteriores, cada elemento quecompone nuestra muestra no es otra cosa que una variable aleatoria cuyadistribució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 quetenga esa distribución, es decir, que sean valores posibles, y que las proporcionesentre ellos reflejen la distribución de la cual deben parecer venir. La diferencia entretomar una muestra y simular, es que en la muestra los valores se obtienenextrayendo 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 ladistribució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 cadavez que la invocamos de un número al azar entre cero y uno. Notemos que obtener

Page 2: C - Simulacion

un número al azar entre cero y uno, no es otra cosa que una simulación de unadistribución U(0;1). Luego para obtener una muestra simulada de tamaño n de unadistribución U(0;1) basta con utilizar n veces la función random de la calculadora ocomputadora.

¿Cómo hacemos si la distribución que queremos simular no es U(0;1)? Comodijimos antes, cada elemento de una muestra que se toma es una variable aleatoriaque tiene la distribución de la población. Entonces para poder simular tenemos queencontrar la manera de crear artificialmente una variable aleatoria cuya distribuciónsea 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 valorarrojado por la función random es una variable aleatoria X:U(0;1), y lo quequeremos simular es una variable aleatoria cualquiera Y, cuya distribución vienedada por fY(y). Lo que haremos será tomar un cambio de variables Y = Φ(X), demodo tal que dados los valores de X(que podemos obtener fácilmente) mediante unpequeño cálculo obtengamos los valores de Y. Entonces nuestro problema sereduce a encontrar un cambio de variables adecuado, que nos garantice que si ladistribución de X es U(0;1) entonces la distribución de Y = Φ(X) sea la fY(y) quequeremos simular.

Como cambio de variables, vamos a proponer la función Y = Φ(x) = FY-1(x). Como

vimos en el capítulo 2, la fórmula para encontrar la distribución de Y es:

dy

dxxf

dx

dy

xfyf

XX

Y))((

))(()( 1

1−

Φ=Φ

=

Como se vio en el capítulo 7, si X:U(0;1) entonces la función fX(x) vale:

∀<<

=xotro

xxf

X 0

101)(

Luego como dentro del dominio de X, fX(x) siempre vale 1, queda:

dy

dxyf

Y=)(

Decir que Y = FY-1(x) es lo mismo que decir que X = FY(y). Luego, dx/dy es fY(y).

Por lo tanto, hemos demostrado que si X es uniforme entre 0 y 1, y dada fY(y) unadistribución cualquiera que queremos simular, entonces si tomamos el cambio devariables Y = Φ(x) = FY

-1(x), los valores que obtendremos para Y tendrán ladistribución fY(y) que queríamos simular.

Ejemplo

Page 3: C - Simulacion

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

∀<<

=yotro

yyyf

Y 0

202/)(

Vamos a necesitar FY-1(y). Construimos FY(y):

><<

<=

21

204/

00

)( 2

y

yy

y

yFY

Solamente nos interesa la rama 0 < y < 2. Si X = FY(y) = y2 / 4 entoncesxxY 24 ==

.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

Luego aplicándole a esos valores la transformación xY 2=

obtenemos:1.12, 1.52, 0.82, 1.80, 0.99, 1.14, 1.74, 1.41, 1.99, 0.68Estos valores constituyen nuestra simulación de tamaño 10 de la variable aleatoriadada por la fY(y) de la que partimos. Mirándolos vemos que efectivamente parecenbastante representativos de la distribución estudiada, porque predominan losvalores cercanos al 2.

Resuelto el ejemplo, volveremos sobre una pregunta que quedó pendiente: ¿por quése nos ocurrió proponer Y = Φ(x) = FY

-1(x) como solución al problema de lasimulación?Observemos que el dominio de la función FY(y) son los números reales, y que al serla función de probabilidad acumulada, su imagen es el intervalo [0;1]. Luego lainversa FY

-1(x) irá del intervalo [0;1] a los reales. Más precisamente, si el número querecibe está en el intervalo (0;1), FY

-1(x) nos devolverá un valor posible de la variablealeatoria Y.

Page 4: C - Simulacion

Ese valor tendrá la distribución deseada fY(y). Por ejemplo, en los lugares donde fY

(y) sea alta, FY(y) crecerá rápidamente, es decir que una pequeña porción deldominio de FY(y) estará asociada a una gran porción de la imagen [0;1]. Luego unagran porción del dominio de FY

-1(x) estará asociada a una pequeña porción de laimagen de FY

-1(x), o sea de los valores de Y, con lo cual habrá probabilidad alta deque un número random caiga en la porción asociada a los valores correspondientesde la variable Y. Luego vemos que si en una región fY(y) es alta, efectivamente secumple que habrá alta probabilidad de que muchos valores simulados caigan en esaregión. Comprobamos entonces que este método para simular es coherente.

Variables discretas

Para variables discretas, el método de tomar Y = Φ(x) = FY-1(x) con X random

sigue siendo válido. De hecho resulta más simple, porque en vez de encontrar laexpresión de la función inversa FY

-1(x) se puede directamente ver en qué región deldominio de FY(x) cae cada valor X.

Page 5: C - Simulacion

Ejemplo

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

∀===

=

yotro

y

y

y

yPY

0

33.0

25.0

12.0

)(

Construyendo la función FY(y) obtenemos:

≥<≤<≤

<

=

31

327.0

212.0

10

)(

y

y

y

y

yFY

Podemos hacer un gráfico de este estilo:

Luego, dados los valores random, basta con ver en qué intervalo caen para saber aqué 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, 2Vemos que obtuvimos 10% de 1, 60% de 2 y 30% de 3, proporciones bastanteparecidas a las probabilidades respectivas 0.2, 0.5 y 0.3 de la distribución quesimulamos. Cuando mayor sea el tamaño de la muestra simulada, más tenderán aparecerse las proporciones de los valores simulados a las probabilidadescorrespondientes.

Problemas típicos

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

Page 6: C - Simulacion

ResoluciónSi Y:Expneg(λ =2), entonces:

≤>

=−

00

02)(

2

y

yeyf

y

Y

Luego la función de distribución acumulada es:

>−<

=− 01

00)(

2 ye

yyF

yY

Tenemos que X = FY(y) = 1 - e-2y. Luego:

)1ln(2

1xy −−=

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ónSi Y:Bi(n = 3 ; p = 0.8), entonces:

∀====

=

yotro

y

y

y

y

yPY

0

4343.0

3441.0

2189.0

1027.0

)(

Construyendo la función FY(y) obtenemos:

≥<≤<≤<≤

<

=

31

32657.0

21216.0

10027.0

00

)(

y

y

y

y

y

yFY

Procediendo como en el ejemplo, asignamos los siguientes intervalos a lossiguientes valores:• [0 ; 0.027) → 0• [0.027 ; 0.216) → 1• [0.216 ; 0.657) → 2• [0.657 ; 1) → 3

Page 7: C - Simulacion

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.175Entonces los valores simulados son:3, 0, 3, 3, 2, 2, 2, 2, 3, 1Este material se encuentra en etapa de corrección y no deberá serconsiderado una versión final.Para hacer comentarios y sugerencias, o reportar errores, enviar maila Alejandro D. Zylberberg <[email protected]>Versión Actualizada al: 17 de junio de 2004