Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Facultad de Ingenierı́a
Ingenierı́a Civil Industrial
Marcel Favereau
1 Introducción
3 Método de Composición
4 Método de Convolución
6 Otros Métodos
1 Introducción
3 Método de Composición
4 Método de Convolución
6 Otros Métodos
Objetivo
Usar números U (0, 1) para generar realizaciones (observaciones) de otras
distribuciones de probabilidad, e incluso procesos estocásticos. Intentar que sea
rápido y reproducible
1 Introducción
3 Método de Composición
4 Método de Convolución
6 Otros Métodos
Demostración.
Sea Y = F (X) y supongamos que Y tiene cdf H(y). Luego,
1.0
cdf (0, 1)
0.6
u U(0, 1)
0.4
0.2
x = F 1(u) = 0.68
0.0
4 2 0 2 4
x (0, 1)
Marcel Favereau (UNAB) Generación de Variables Aleatorias ICI3217 / 2022-1 8 / 52
Método de la Transformada Inversa: Distribuciones
Continuas
La cdf es
x2
(
2 si 0 ≤ x < 1
F (x) = (x−2)2 .
1− si 1 ≤ x ≤ 2
2
√
Si U < 1/2, resolvemos X 2 /2 = U para obtener X = 2U . p
Si U ≥ 1/2, la única raı́z de 1 − (X − 2)2 /2 = U en [1, 2] es X = 2 − 2(1 − U ).
√ √
Ası́, por ejemplo, si U = 0,3, tomamos X = 2 · 0,3 = 0,6
U 0,135 − (1 − U )0,135
Z = Φ−1 (U ) ≈ .
0,1975
Por ejemplo, si U = 0,975, usando la aproximación previa tenemos Z ≈ 1,9688
c0 + c1 t + c2 t2
Z = sign(U − 1/2) t − ,
1 + d1 t + d2 t2 + d3 t3
X = µ + σZ
= 10 + 3Φ−1 (0,85)
= 10 + 3 · (1,0364)
= 13,1093
Ejemplo
Suponer que tenemos una pmf discreta un poco menos trivial
f (k) = q k−1 p,
y cdf
F (k) = 1 − q k
para k ∈ {1, 2, . . . }, donde q = 1 − p. Por lo tanto, luego de un poco de álgebra
ln(1 − U ) ln(U )
X = mı́n{k : 1 − q k ≥ U } = ∼ .
ln(1 − p) ln(1 − p)
Pero la vida no siempre consiste en lanzar un dado. Una forma general de generar
una Geom(p) es contar el número de experimentos hasta Ui ≤ p. Por ejemplo, si
p = 0,3, entonces U1 = 0,71, U2 = 0,96 y U3 = 0,12 implican que X = 3
Si no se puede encontrar una buena distribución teórica para modelar una cierta
variable aleatoria, se podrı́a utilizar la cdf empı́rica de los datos {Xi }i∈[n] ,
Z(x)
F̂n (x) ≡ ,
n
donde [n] = {1, 2, . . . , n} y Z(x) representa el número de Xi ’s ≤ x. Notar que
F̂n (x) es una función escalonada con saltos de altura 1/n (cada vez que se
produce una observación).
Una ventaja de este método es que incluso aunque X es continua, el lema
Glivenko-Cantelli dice que F̂n (x) → F (x) para todo x cuando n → ∞. Ası́, F̂n (x)
es una buena aproximación a la verdadera cdf, F (x)
𝐹(𝑥)
cdf empírica 𝐹𝑛 (𝑥)
1
1
3
1 2 3 4 5 6 7 𝑥
0.4
0.2
0.0
n = 50 observaciones n = 500 observaciones
1.0 cdf (0, 1) cdf (0, 1)
cdf empírica cdf empírica
0.8
0.6
F(x)
0.4
0.2
0.0
4 2 0 2 4 4 2 0 2 4
x x
y
1 Definir F (X) = U ∼ U (0, 1). Sea P = (n − 1)U y I = dP e
2 Resolver para obtener X = X(I) + (P − I + 1)(X(I+1) − X(I) )
Ejemplo
𝐹(𝑥)
cdf empírica 𝐹𝑛 (𝑥)
Suponer X(1) = 1, X(2) = 4 y X(3) = 6. 1
P = (n − 1)U = 1,46 y I = dP e = 2. 2
3
1 2 3 4 5 6 7 𝑥
= 4 + (0,46)(6 − 4) = 4,92
Ejemplo
Podemos usar una cdf empı́rica aproximada cuando se trabaja con datos
agrupados. Veamos una muestra de 100 tiempos de reparación
Por ejemplo, si U ∈ (0,66, 1,0] (las últimas dos entradas F̂ (x) de la tabla),
entonces
−1
F̂ (1,0) − F̂ −1 (0,66)
X = F̂ −1 (0,66) + (U − 0,66)
1,0 − 0,66
2,0 − 1,5
= 1,5 + (U − 0,66)
1,0 − 0,66
= 1,5 + 1,471 · (U − 0,66)
α1 α2 α3 α4 α5
0.81 5.0 2.0 1.47 -
4 X = xi + αi (U − ri )
Marcel Favereau (UNAB) Generación de Variables Aleatorias ICI3217 / 2022-1 29 / 52
Contenido
1 Introducción
3 Método de Composición
4 Método de Convolución
6 Otros Métodos
Suponer una variable aleatoria que proviene de dos variables aleatorias. E.g., un
avión puede salir tarde por dos razones: retrasos en el tráfico aéreo y en el
mantenimiento, que componen el tiempo total de retraso
donde pi > 0 para todo i, 1> p = 1, y los Fi (x)’s son cdf’s “fáciles” para generar
realizaciones. Esto se hace de la siguiente manera
1 Generar I ∈ Z+ tal que P(I = i) = pi para todo i
2 Retornar X de la cdf FI (x)
Demostración.
Por la ley de probabilidad total (ver Capı́tulo 1), X tiene cdf F (x):
∞
X
P(X ≤ x) = P(X ≤ x|I = i)P(I = i)
i=1
X∞
= Fi (x)pi
i=1
= F (x)
Distribución de Laplace
La distribución exponencial doble (o Laplace) es representada por
( (
0,5ex x<0 0,5ex x<0
f (x) ≡ y F (x) ≡
0,5e−x x>0 1 − 0,5e−x x>0
𝑓(𝑥)
𝐹(𝑥)
𝑥 𝑥
Distribución de Laplace
Por ahora, descompongamos X en distribuciones “exponenciales negativas” y
exponenciales regulares
( (
ex x<0 0 x<0
F1 (x) ≡ y F2 (x) ≡ .
1 x>0 1 − e−x x>0
1 Introducción
3 Método de Composición
4 Método de Convolución
6 Otros Métodos
Definición 4.1
Convolución hace referencia a la suma de cosas
+ =
0 1 0 1 0 1 2
Esto sólo toma una evaluación de logaritmo natural, por lo que es bastante
eficiente
1 Introducción
3 Método de Composición
4 Método de Convolución
6 Otros Métodos
Motivación
La mayorı́a de las cdf’s no pueden ser invertidas fácilmente. Aceptación y rechazo
(A-R) muestrea desde una distribución que es “casi” la que queremos, y luego lo
ajusta al “aceptar” sólo una cierta proporción de estas muestras
Ejemplo simple
Generar una variable aleatoria U (2/3, 1). Aquı́ está el algoritmo A-R
1 Generar U ∼ U (0, 1)
2 Si U ≥ 2/3, se acepta X ← U . En otro caso, se rechaza y se vuelve al Paso 1
0.3
f(x)
0.2 Rechazar
0.1
Aceptar
0.0
6 4 2 0 2 4 6
x
Marcel Favereau (UNAB) Generación de Variables Aleatorias ICI3217 / 2022-1 41 / 52
Notación
Usualmente, f (x) y t(x) son conocidas como las distribuciones objetivo (target) y
propuesta (proposal), respectivamente
Ejemplo
Generar una variable aleatoria con pdf f (x) = 60x3 (1 − x)2 para 0 ≤ x ≤ 1. Esta
no se puede invertir analı́ticamente. Notar que el máximo ocurre en x = 0,6, y
f (0,6) = 2,0736.
Usando la majorizing function t(x) = 2,0736 para 0 ≤ x ≤ 1 (que no es muy
R1
eficiente), obtenemos c = 0 t(x)dx = 2,0736, y ası́
t(y)
h(y) = = 1,
c
con 0 ≤ y ≤ 1 (i.e., una pdf U (0, 1)), y
Ejemplo
−x 2
Generar una variable aleatoria semi-normal estándar con pdf f (x) = √2 e 2
2π
para x ∈ R+ . Usando la majorizing function
r
2e −x
t(x) = e ≥ f (x) ∀x ≥ 0,
π
tenemos
2e ∞ −x
r Z r
2e
c= e dx = = 1,3155,
π 0 π
t(y)
h(y) = = e−y ,
c
y
f (y) −(y−1)2
g(y) = =e 2
t(y)
1 Introducción
3 Método de Composición
4 Método de Convolución
6 Otros Métodos
Teorema 6.1
Si U1 , U2 son U (0, 1) iid, entonces
p
Z1 = −2 ln(U1 ) cos(2πU2 )
p
Z2 = −2 ln(U1 ) sin(2πU2 )
1.0
3
0.8
2
0.6 1
Z2
U2
0
0.4
1
0.2 2
3
0.0
0.0 0.2 0.4 0.6 0.8 1.0 4 3 2 1 0 1 2 3 4
U1 Z1
Ejemplo
Notar que
Z12 + Z22 ∼ χ2 (1) + χ2 (1) ∼ χ2 (2).
Pero,
= −2 ln(U1 )
= Exp(1/2).
χ2 (2) ∼ Exp(1/2)
Este método es un poco más rápido que Box-Muller. Se puede resumir como:
1 Generar U (0, 1) iid U1 , U2 .
Sea Vi = 2Ui − 1 para i = 1, 2, y W = V12 + V22 .
2 Si W > 1, rechazar y volver al Paso 1. En otro caso, definir
p
Y = −2 ln(W )/W ,
y aceptar Zi ← Vi Y para i = 1, 2.
Luego, Z1 y Z2 son N (0, 1) iid
Estado
1.2 Aceptado 3
Rechazado
1.0 2
0.8 1
0.6 0
Z2
U2
0.4 1
0.2 2
0.0
3
0.2
4
0.2 0.0 0.2 0.4 0.6 0.8 1.0 1.2 4 3 2 1 0 1 2 3 4
U1 Z1
Marcel Favereau