Actualmente estoy tratando a los valores Simular de un -dimensional variable aleatoria que tiene una distribución normal multivariante con media vector y la matriz de covarianza .
Espero utilizar un procedimiento similar al método CDF inverso, lo que significa que primero quiero generar un uniforme -dimensional variable aleatoria y luego enchufe que en la CDF inversa de esta distribución, de modo de generar valor .
Tengo problemas porque el procedimiento no está bien documentado y existen ligeras diferencias entre la función mvnrnd en MATLAB y una descripción que encontré en Wikipedia .
En mi caso, también elijo los parámetros de la distribución al azar. En particular, genero cada uno de los medios, , a partir de una distribución uniforme U (20,40) . Luego construyo la matriz de covarianza S usando el siguiente procedimiento:
Cree una matriz triangular inferior donde para y para
Deje que donde denota la transpuesta de .
Este procedimiento me permite asegurar que sea simétrico y positivo definido. También proporciona una matriz triangular inferior para que , que creo que es necesario para generar valores a partir de la distribución.
Usando las pautas en Wikipedia, debería poder generar valores de usando un uniforme dimensional de la siguiente manera:
Sin embargo, de acuerdo con la función MATLAB, esto generalmente se hace como:
Cuando es la inversa de una CDF distribución -dimensional, separable, normal, y la única diferencia entre ambos métodos es simplemente si para uso o .
¿Es MATLAB o Wikipedia el camino a seguir? ¿O ambos están equivocados?