You are on page 1of 5

Scientia et Technica Año X, No 25, Agosto 2004. UTP.

ISSN 0122-1701 185

GENERADOR DE PROCESOS NORMALES MULTIVARIADOS

RESUMEN ALVARO TREJOS CARPINTERO


En este artículo se presenta un método para la generación de variables Profesor Auxiliar
aleatorias que provienen de un proceso normal multivariado, de alta Facultad de Ingeniería Industrial
aplicación en la simulación de sistemas dinámicos. Universidad Tecnológica de Pereira
alvarot@utp.edu.co
PALABRAS CLAVES: Proceso normal multivariado.
PATRICIA CARVAJAL OLAYA
ABSTRACT Estudiante Tesista
In this article a method for the generation of variates appears that come Maestría en Investigación Operativa y
from a multivaried normal process, of high application in the simulation Estadística
of dynamic systems. Universidad Tecnológica de Pereira
pacarva@utp.edu.co
KEYWORDS: multivariated normal process.
MAURICIO BARRERA
Estudiante décimo semestre
Facultad de Ingeniería Industrial
Universidad Tecnológica de Pereira
voneumann@hotmail.com

1. INTRODUCCIÓN
Definición 2.1
Para implementar algunos modelos de simulación es
r
necesario generar vectores aleatorios X = Una variable aleatoria Z tiene una distribución normal
(x1,x2,.........,xn) los cuales provienen de una distribución estándar univariada si y solo si la función de densidad de
de probabilidad multivariada, donde los componentes probabilidad de Z esta dada por:
individuales del vector aleatorio podrían no ser
independientes, ello implica que las correlaciones, ρ ij , 1  z2 
n( Z ;0,1) = exp −  −∞< z <∞
entre las variables Xi, Xj del vector aleatorio deben ser 2π  2 
especificadas por el modelador.
donde n(Z:0,1) significa que la variable Z está
En este artículo, la atención se centra en el estudio de la distribuida normalmente con media cero y varianza uno,
generación de vectores aleatorios normales dada la y exp representa la función exponencial. [4]
importancia que la distribución tiene para describir
muchos fenómenos naturales y sociales. Existe además,
Definición 2.2
una justificación matemática para el empleo de la
distribución normal, proporcionada por el teorema La variable aleatoria X tiene una distribución normal
central del límite.
univariada con media µ y varianza σ si y solo si la
2

Aunque las formulas para la generación de variables función de densidad de probabilidad de x esta dada por:
aleatorias normales son muy conocidas en la actualidad, 1
n( x; µ , σ 2 ) = e −( x − µ ) / 2σ 2
−∞ < x < ∞
2

la deducción de ellas no es tan común por lo que se


realizará un desarrollo un tanto riguroso de estas, lo que σ 2π
contribuirá a una mejor compresión del método y de los Ahora en el conjunto de variables Zi, donde cada i-ésima
supuestos bajo los cuales funcionan. Z está distribuida n(Z:0,1). Se puede decir, que si las Zi
variables son mutuamente independientes, la distribución
conjunta aleatoria esta dada por:
2. DISTRIBUCIÓN NORMAL MULTIVARIADA
k
− ∑ zi 2
zi 2 1
k −
1 1
∏ =
2 i =1
Primero se recuerda la distribución normal univariada e 2
e
estándar y a partir de allí se definirá la distribución i =1 2π (2π ) k/2 (1)
normal multivariada.
− ∞ < zi < ∞ i = 1,2,.....k

Fecha de recepción: 29 Marzo de 2004


Fecha de aceptación: 23 Julio de 2004
186 Scientia et Technica Año X, No 25, Agosto 2004. UTP

r
Siendo Zi el i-ésimo elemento del vector Z (kx1) se 1 T
Σ−1 ( X − µ )
n( X : µ , Σ) = e −1 / 2( X −µ )
puede escribir la ecuación 1 en forma más compacta así:
(2Π) p / 2 Σ
1/ 2
3.
r 1 t X ∈ Εp
n( Z : 0, I ) = e − 1 / 2 Z Z 2.
(2π ) k / 2
Prueba:
La ecuación 2, puede ser vista como una generalización
La transformación que pasa de (Z1,.........., Zp) a
multidimensional de la función de densidad de
(X1,.........., Xp) es lineal.
probabilidad de la normal univariada estándar. [4]
r r
Definición 2.3 x = ΓT Z T + µ Por lo cual el jacobiano es
J = (Γ T ) −1 y debido a que ∑= Γ T
Γ (definición
Sea X un vector aleatorio con p componentes y con 2.3).
vector de medias µ y matriz de covarianzas Σ , donde 1/ 2
Σ −1 = Γ −1 (Γ T ) −1 de donde Σ −1 = ( Γ T ) −1 y
el rango de ∑ = p > 0. Sea
además
ΓT Γ = Σ, esto es, ΓT Γ es una factorización no
única de Σ , donde Γ es una matriz de pxp. X tiene
T
r r
( −1 r r T −1 r r
Z T Z = ΓT ( X − µ ) (ΓT ( X − µ ))
una distribución normal p-variada si y solo si la

(X − µr )) (Γ
r r r
v X vtiene la misma distribución del vector
T T −1 T −1
distribución de ) ΓT ( X − µ )
aleatorio Γ Z + µ , donde la distribución del vector
T

r r r
aleatorio Z es n( Z : O, I ) , es decir, Z tiene una ( X − µr ))T (ΓT Γ) −1
(X − µ)
distribución normal estándar p-variada.
r r
De la definición anterior se tiene que
(X − µr ) )T Σ −1 ( X − µr )
E ( Z ) = µ y cov( X ) = Σ , entonces para que X Quedando así demostrado el teorema (2.1)
v
tenga la misma distribución de Γ Z + µ , la esperanza
T
Antes de generar los vectores aleatorios es necesario
v abordar el tema de la factorización de la matriz Σ
de Γ Z + µ debe ser igual a µ al igual la covarianza
T

v (covarianzas) por lo mencionado en la definición 2.3.


de Γ Z + µ debe ser igual a Σ.
T

Aunque existen diversas factorizaciones de está matriz la


Prueba: técnica de descomposición de Cholesky proporciona un
algoritmo para descomponer la matriz Σ en dos matrices
triangulares superior e inferior, y además garantiza que
E(ΓT Z + µ) = ΓT E(Z) + µ = µ = E(X ) estas dos matrices sean únicas.
debidoa queZ ≈ n(O, I ) 3. TÉCNICA DE DESCOMPOSICIÓN DE
CHOLESKY [1]
COV(Γ Z + µ)
T

[
= E (ΓT Z + µ − E(ΓT Z + µ))(ΓT Z + µ − E(ΓT Z + µ))T ] A continuación se justifica la descomposición de la
matriz Σ , en matrices triangulares superior e inferior
= E[(Γ Z + µ − µ)(Γ Z + µ − µ) ]
T T T debido a sus características especiales.

= E[(Γ Z)(Γ Z) ] = Γ E(ZZ )Γ = Γ Γ = Σ


T
T T T T T Teorema 3.1

Teorema 2.1 Sea S pxp una matriz definida positiva. Existe una
matriz triangular superior T de rango P, con Tii > 0 para
i=1,2,...,p, tal que S = T T . Esta descomposición es
T
Si X esta distribuida n( X : µ , Σ) donde X es un
única.
vector (px1) y si el rango de Ó es p, entonces X tiene
una función de densidad de probabilidad y está dada por:
Scientia et Technica Año X, No 25, Agosto 2004. UTP 187

Prueba: S * y S11* son definidas positivas, entonces


La prueba se hará por inducción matemática. Primero, S > 0., S11 > 0.
sea P=1; como S* es definida positiva entonces podemos
[ ]
escribir S * = s11 . Por lo tanto t11 = s11 , con lo
2 Esto significa que: S 22 − S 21S11−1 S 12 > 0, pero

cual T * = t11[ ] es una matriz triangular superior con S 22 − S 21 S11−1 S 12 es una escalar y por lo tanto igual a su
t11 > 0 y además, t11 es único. determinante. Esto implica que S 22 − S 21 S11−1 S 12 >0
Supóngase el teorema verdadero para P=K.
Mostraremos que es verdadero para P=K+1. Si el
teorema es verdadero para P=K, entonces para cualquier Entonces Σ se puede descomponer en 2 matrices Γ Γ Γ
así:
matriz definida positiva de k × k , S *11 , existe una única
matriz triangular superior T *11 , con t ii > 0 para σ 11 σ 12 ... σ 1 p  a11 O O a11 a12 .. a1 p 
i=1,2,...,K, tal que S *11 = T * T *11 .
T      
σ 21 σ 22 . .σ 2 p  = a12 a 22 ... O  O a 22 a2 p 
11 Sea S*
cualquier matriz definida positiva de tamaño .................  .................  ................. 
( k + 1) × (k + 1) , entonces podemos escribir S* como:      
σ p1 σ p 2 ...σ pp  a1 p a 2 p ...a pp  O O ...a pp 
r
 S *11 S 12  donde
S* =  
 S 21 S 22  σ 11 = a112
σ 12 = a11 a12
Donde S *11 es una matriz definida positiva de k × k
....... .........
componentes pero por la hipótesis de inducción
T
S *11 = T *11 T *11 , donde T *11 es una matriz σ 1 p = a11 a1 p
triangular superior con elementos positivos en la σ 22 = a122 + a 22
2

diagonal. ( S 12 = S 21 ya que S es simetrica) y por ....... .........


tanto queda:
σ pp = a12p + a 22 p + ... + a 2pp
r
 S *11S 12  T *11T T *11 S12 
[1]
S* =   =  =
4. GENERADOR DE PROCESOS
 S 21S 22   S 21 S 22  MULTIVARIADOS
Y por inspección
Para generar un vector aleatorio con componentes
T11T T11 S 12  independientes, simplemente se crean n variables
  aleatorias independientes y se multiplican, es decir, sea
 S 21 S 22  x = ( x1 , x 2 ,..., x n ) T cuyas componentes son
T T O  T11 (T11T ) −1 S 12  independientes entre sí, entonces la función de
=  11   = T TT distribución simultánea de x sería:
 S 12 T T11−1 b O b 
n

−1
F ( X ) = Π Fi ( X i ) donde Fi ( X i ) representa la
Donde b = ( S 22 − S S S 12 )
21 11
1/ 2
, si podemos mostrar i =1

−1 función de distribución marginal de X i . Por tanto para


que S 22 − S 21 S11 S 12 > 0, ya que b es real, entonces T
es triangular superior con elementos en la diagonal generar el vector X , se genera la componente X i de
positivos y además T es único. esa distribución Fi independientemente.
Para mostrar esto, se observa que el determinante de Ejemplo: Para generar una normal multivariada de K
S *, S * , es igual a S11* . S 22 − S 21S11−1 S 12 . Pero variables aleatorias independientes Zi, cada una es
188 Scientia et Technica Año X, No 25, Agosto 2004. UTP

n(Z : 0,1) , y si las variables son mutuamente está distribuida normal estándar, en X con distribución
independientes. Su distribución conjunta sería:
normal con media µ y covarianza Σ . Quedando así:
k
− ∑ Zi 2
1

F ( Z 1 , Z 2 ,..., Z k ) =
1
e
2 i =1
(4) X 1 = a11 Z 1 + U 1
(2π ) k/2
X 2 = a 21 Z 1 + a 22 Z 2 + U 2
y simplemente se generarían K variables aleatorias
independientes normales univariadas. .
.
El problema puede volverse más complejo cuando las
variables son dependientes. En tal caso la función de Xp = a p1 Z 1 + a p 2 Z 2 + ... + a pp Z p + U p
distribución conjunta puede ser expresada por: Lo cual articula también con el conjunto recursivo de
ecuaciones donde los aij son los términos de la matriz de
la factorización de Cholesky.
F ( X ) = F1 ( X 1 ) F2 ( X 2 X 1 )...Fn ( X n X 1 ,... X n −1 )
Entonces para generar el vector X , se pueden utilizar n El procedimiento para generar procesos normales
multivariados es el siguiente:
números aleatorios independientes u1 , u 2 ,...u n y
resolver el siguiente conjunto recursivo de ecuaciones:
F1 ( X 1 ) = U 1
1) Proporcionar µ y Σ = σ ij [ ]
2) Calcular la matriz Γ a partir de Σ utilizando
T
F2 ( X 2 X 1 ) = U 2 la técnica de descomposición de Cholesky
. 3) Generar Z = ( Z 1 , Z 2 ,..., Z p ) T variables
. aleatorias estándar mutuamente independientes
Fn ( X n X 1 , X 2 ,..., X n −1 ) = U n 4) Calcular X = ΓT Z + µ

Ejemplo: Para generar una normal multivariada de p Ahora el problema en consideración, sería como generar
variables aleatorias Xi dependientes entre si, su variables aleatorias normales estándar mutuamente
distribución conjunta sería: independientes y para ello puede utilizarse el método de
la transformación inversa para generar variables
aleatorias continuas así:
F ( X 1 , X 2 ,..., X p ) = − x2
1
1 T
Σ −1 ( X − µ )
f ( x) = e 2
− ∞ < X < ∞ X ≈ n(0,1)
e −1 / 2( X − µ ) 2π
(2Π ) p / 2 Σ
1/ 2
Y lo que puede hacerse es calcular su función de
y lo que se podría hacer es utilizar el hecho de que, distribución acumulada e igualarla a una variable
aleatoria uniforme U (0,1) así:
X tiene una distribución normal p-variada si y solo si
X tiene la misma distribución del vector aleatorio − x2
X 1
ΓT Z + µ donde Z está distribuida normal estándar y F ( x) = ∫ e 2
dx = U (5)
−∞ 2Π
ΓT Γ es una factorización de Σ (definición 2.3), y
aunque esta factorización no es única puede utilizarse la Y despejar a X en términos de U, lo cual no se puede
descomposición de Cholesky. hacer directamente debido a la complejidad del cálculo
de F(x), por tanto se utilizarán las coordenadas polares
En otras palabras se ha definido un vector aleatorio para generar 2 variables aleatorias normales estándar
normal multivariado en términos de funciones lineales de independientes así:
variables aleatorias normales univariadas estándar. Así
 1 −x  1 −y 
2 2

que siX tiene una distribución normal p-variada con F ( x, x ) =  e 2  e 2  (6)


 2Π  2Π 
media µ y covarianza Σ (Γ Γ = Σ) , entonces se
T
  
puede usar X = ΓT Z + µ para transformar Z , la cual La que es una distribución normal bivariada estándar con
variables independientes entre si, arreglando un poco la
ecuación 6 nos daría
Scientia et Technica Año X, No 25, Agosto 2004. UTP 189

x2 + y2 Utilizando 11 y 12, y reemplazando en las ecuaciones de


1 −
F ( x, y ) = e 2
(7) transformación a) y b) nos queda:

Y utilizando la siguiente transformación x = − 2 ln U 2 cos(2ΠU1 ) (13)
y
x 2 + y 2 = R, y, tan φ = o de esta manera: y = − 2 ln U 2 sen(2ΠU 1) (14)
x
a) X = R cos φ Para generar P variables aleatorias normales
y calculando el determinante
independientes simplemente se generan P secuencias de
b) Y = R senφ números aleatorios independientes y reemplazando en 12
jacobiano y 13 obtenemos P variables aleatorias normales
independientes.
∂x ∂x cos φ
− R senφ Estas transformaciones 12 y 13 son conocidas como las
∂R ∂φ 2 R 1
J = = = transformaciones de Box-Muller (1958).
∂y ∂y senφ 2
R cos φ
∂R ∂φ 2 R 5. CONCLUSIONES

Reemplazando en 7 e integrando Aunque las transformaciones de Box-Muller se pueden


hacer más eficientes computacionalmente a través de las
φ R transformaciones matemáticas basadas en relaciones
1 1 −R/ 2
F ( R,φ ) = ∫∫ e dRdφ (8) trigonométricas, el método desarrollado en este trabajo
0 0
2 Π 2 proporciona un buen generador de procesos
1 multivariados, si se toma en cuenta el avance de la
f (φ) = , que es la función de densidad de una tecnología computacional.

1
distribución uniforme en (0,2Π ) y g (R ) = e − R / 2
2 6. BIBLIOGRAFÍA
que es una función de densidad exponencial negativa con
media 2, se puede escribir la ecuación 8 así: [1]. Graybill A. Franklin. Theory and Application of the
Linear Model. Duxbury Press PWS publishers.1976.
φ R

F(R , φ) = ∫ ∫ f (φ)g(R ) dRdφ


0 0
(9) [2]. Thompson James R., Wiley
modelers Aproach. 2000
Jhon and sons. A

[3]. Law - Kelton. Simulation Modeling and Analysis.


Reemplazando f (R ) y f (φ) en 9 se tiene: Third edition. Mc Graw Hill. 2000.
φ R
1 1 −R / 2
F(R , φ) = ∫
0

2Π o 2
e∫ dR (10) [4]. Cuadras C.M. Métodos de Análisis Multivariado.
Editorial Eunibar. Barcelona. 1981
Ross M. Sheldon. Simulación. Segunda edición. Prentice
Entonces, simplemente se debe generar una distribución may. 1999
uniforme entre (0,2Π ) y una exponencial negativa con
[5]. C. Radhakrishna Rao. Linear Statistical Inference
media 2 y las multiplicamos
φ
and its applications. Second Edition. Wiley series in
1 probability and statistics. 2002.
∫ 2Π dφ = U
0
1 φ = 2Π U1 (11)

R
1
∫2e
−R / 2
= U2 1 − e −R / 2 = U 2 ∴
0
(12)
R = −2 ln(1 − U 2 )

De la ecuación 12 tenemos que 1-U2 en si es un número


aleatorio quedando entonces R=-2lnU2

You might also like