Académique Documents
Professionnel Documents
Culture Documents
NMEROS
ALEATORIOS
(Pequeo Resumen)
N
umeros aleatorios.
Contenidos
1. Descripcion estadstica de datos.
2. Generacion de n
umeros aleatorios
N
umeros aleatorios con distribucion uniforme.
N
umeros aleatorios con otras distribuciones.
Metodo basado en la inversa de la distribuci
on
de probabilidad acumulada.
Metodo Box-Muller (distribuci
on normal).
Metodo del rechazo.
N
umeros aleatorios con correlaciones.
Distribuci
on de Poisson
Descripci
on estadstica de los datos.
0.20
P (n) =
1
nn en
n!
0.15
0.10
0.05
Distribuci
on de probabilidad.
0.00
0.0
5.0
10.0
15.0
20.0
Ejemplos:
Distribuci
on binomial: Siendo p la probabilidad de
que ocurra un suceso en una medida determinada,
la probabilidad de m ocurrencias del suceso en N
medidas independientes es
PN (m) =
N
m
(1 p)N mpm
Distribuci
on de densidad de probabilidad
1
(x x)
P (x) =
exp
2 2
2 2
1.0
0.8
0.6
0.4
0.2
11
00
00
11
00
11
00 P(x) dx
11
00
11
x x+dx
00
11
0.0
2.0
1.0
0.0
1.0
2.0
1
1
2
P (y) =
exp 2 (log y log y) .
2
2
2 y
1
1.5
1.0
0.5
0.0
0.0
1.0
2.0
3.0
Momentos.
N
1
(xi x)n
x =
N i=1
n
En MATLAB: moment(x,orden)
Varianza 2
1
=
(xi x)2
N 1 i=1
2
En MATLAB: mean(x)
En Excel: PROMEDIO()
Notas: Deja de ser u
til cuando el primer momento de las colas
de la distribucion es grande.
1
=
(xi x)2 = x2 x2 .
N i=1
2
Desviaci
on est
andar o desviaci
on tpica =
V ar.
Curtosis
4
N
1 xi x
Curt =
3
N i=1
En MATLAB: kurtosis(x)
En Excel: CURTOSIS()
En MATLAB: iqr(x)
En Excel: CUARTIL(datos,opciones)
Media
Norma
D
1
N
N
i=1
xi x
P (xr ) = 1 E[x] =
r=1
3
P (x)dx = 1
D
E[x] =
r=1 xr P (xr )
D
Momento de orden n
E[x ] =
n
D
xnP (xr )
r=1
x P (x)dx
E[xn] =
xnP (x)dx
D
Distribuci
on Media Varianza Coef.
asim. Curtosis
Poisson
x
x
1/ x
1/ x
Normal
x
0
0
En MATLAB: skewness(x)
En Excel: COEFICIENTE.ASIMETRIA()
Descripci
on estadstica de errores.
P (%)
zc
99.9 3.29
99 2.58
Considera la variable denida como suma de variables
N
aleatorias {xi}i=1 tomadas de las distribuciones de
probabilidad Pi(xi) centradas en torno al origen
N
1
xi
y=
N i=1
En el lmite N , la distribuci
on de y es una
distribuci
on normal centrada en torno al origen y cuya
varianza es
N
1 2
2
(xi)
(y) =
N i=1
95 2.00
90 1.64
68 1.00
Desviacion tpica de la media.
Dado
N
1
xi
x =
N i=1
se cumple
(x)
(x) =
N
10
11
Generador de n
umeros aleatorios.
Uj
Ij+1
Ij
;
m
= (aIj ) mod m, j = 0, 1, . . . ,
=
P (u) =
0 u (0, 1)
1 u (0, 1)
m modulo
a multiplicador
I0 semilla (entero entre 1 y m 1
m es primo.
ultiplo de m.
am1 1 es un m
j1
1; j = 1, 2, . . . , m 2 no son m
ultiplos de m.
a
12
13
Uj
Ij+1
Ejemplo 2: (Park+Miller)
Ij
;
m
= (aIj + c) mod m, j = 0, 1, . . .
m
a
c
I0
=
=
=
231 1 = 2147483647
75 = 16807
0
0
14
15
N
umeros aleatorios con otras distribuciones.
El problema a resolver es como obtener a partir de
un generador de n
umeros aleatorios con una distribucion
(u) (generalmente uniforme), un generador de n
umeros
aleatorios con la distribucion p(z).
Por el principio de conservacion de probabilidad
du
|(u)du| = |p(z)dz| = p(z) = (u)
dy
Dada la forma de la distribuci
on objetivo p(z), y si
partimos de una distribuci
on de probabilidad uniforme en
u, hemos de resolver la ecuacion diferencial
p(z) =
du
.
dz
En terminos de la distribuci
on de probabilidad acumulada
z
P (z) =
dyp(y)
la solucion es
u = P (z) = z = P 1(u).
16
17
Ejemplo:
N
umeros aleatorios con distribuci
on normal.
La distribuci
on objetivo es la exponencial
p(z) = ez ,
z [0, ]
La distribuci
on de probabilidad acumulada
P (z) =
z
0
dzez = 1 ez
La transformaci
on apropiada es
z2
1
p(z) = exp( ).
2
2
La transformaci
on a utilizar es
Generar un n
umero aleatorio con distribucion uniforme
u U [0, 1] .
Calcular el n
umero aleatorio z = log(1 u).
Los n
umeros aleatorios z tienen una distribuci
on
z
p(z) = e .
z1
z2
=
2 log(u1) cos(2u2)
=
2 log(u1) sin(2u2),
18
19
Demostracion:
Algoritmo:
1. Genera los n
umeros v1, v2 a partir de una
distribuci
on uniforme en [0, 1].
2. Elige u
nicamente aquellos pares v1 , v2 correspondientes
a una distribuci
on uniforme en un crculo de radio
unidad
R2 v12 + v22 < 1.
u1
u2
1
= exp (z12 + z22)
2
z2
1
arctan
=
2
z1
3. Genera los n
umeros aleatorios z1, z2 mediante la
f
ormula
v1
2 log(R)
R
v2
=
2 log(R) .
R
z1 =
z2
el Jacobiano es
1
1 2
(u1, u2)
2
= exp (z1 + z2 ) .
(dz1, dz2)
2
2
Siendo P (u1, u2) = 1, el resultado es
P (z1, z2) =
2
1
ez1 /2
2
2
1
ez2 /2
2
20
21
M
etodo de rechazo.
F(x)
U
-1
f(F (U))
f(x)
p(x)
f (x) p(x) x [, ]
x
dy f (y) es conocida
F (x)
0
-1
F (U)
F () =
Algoritmo alternativo
dy f (y) = A (> 1)
2. Generamos un n
umero aleatorio U a partir de una
distribuci
on U [0, A]. A partir de este n
umero denimos
A pdf (x)
cdf (x)
p(x) x [, ]; A 1
X = F 1(U )
3. Generamos un segundo n
umero aleatorio V a partir de
una distribuci
on uniforme en [0, f (x)]:
V < p(X)
x es aceptado
V p(X) x es rechazado
22
dx cdf (x )
2. Generamos un n
umero aleatorio X con la distribuci
on de referencia. Para ello podemos utilizar el
metodo de la inversa:
(a) Generar U a partir de una distribuci
on U [0, 1].
(b) A partir de U calculamos X = cdf 1 (U ).
on uniforme en [0, A pdf (x)]:
3. Generamos un segundo n
umero aleatorio V a partir de una distribuci
V < p(X)
x es aceptado
V p(X)
x es rechazado
23
Ejemplo
N
umeros aleatorios con correlaciones
para generar n
umeros aleatorios N (0, 1), a partir de una
funcion de referencia uniforme en [R, R]
f (x) = normpdf (0); x [R, R]
f (x) normpdf (x); x [R, R]
= A A
En MATLAB A = chol().
Finalmente
y1
y2
...
yN
24
= 2 + A
...
x1
x2
...
xN
25