Professional Documents
Culture Documents
20deFebrerode2007
NDICE
Definicindesimulacin. Generacindevariablesaleatorias: Generacindenmeroaleatorios Mtododelafuncininversa Otrosmtodos: Composicin Convolucin Transformacionesconocidas Generacindesecuencias Comprobacinderesultados Bibliografa
20deFebrerode2007
DEFINICINDESIMULACIN
SIMULACIN: "Experimentar con modelos matemticos en un computador". Esquemageneraldelasimulacin: Experimentacin/Medida Sistema Generacinde sealesdeentrada Anlisisde resultados Modelomatemtico delsistema Simulacin Anlisisde resultados
GENERACINDEVARIABLESALEATORIAS
Muchos modelos de sistemas reales contienen elementos que precisanoadmitenunmodeladoestadstico: Sistemasdecomunicaciones:ruido,desvanecimiento,... Sistemas de conmutacin: llegadas de usuarios al sistema, duracindeservicios,... Sistemassensores:procesodedeteccin,procesodemedida,... ... Modeladotomaformadefiniendo: Variables aleatorias que rigen ciertos comportamientos del sistema Procesos estocsticos para modelar variacin de entradas en el tiempo. Se deben definir mtodos para generar muestras de variables aleatoriasymuestrasdeprocesosestocsticos.
20deFebrerode2007 4
GENERACINDEVARIABLESALEATORIAS(II)
{Ui}: Conjunto de nmeros generados en el computador, que siguenunadistribucinuniformeentre0y1,independientes. {xi}:Conjuntodenmerosquepuedenversecomo: Muestrasdeunadeterminadavariablealeatoria Muestras de un proceso estocstico en distintos instantes de tiempo
20deFebrerode2007 5
GENERACINDENUMEROSALEATORIOS
Nmeros aleatorios: los que generan variables aleatorias con distribucinuniformeentre0y1. Importante:Poderreproducirexactamenteelmismoexperimento: Detectarcasossingulares Compararsistemassimilaresbajocondicionesidnticas. Objetivo: U(0,1) Secuenciadenmerosindependienteslinealmente:Incorrelados Secuenciareproducibleapartirdepocosdatos Costecomputacionalreducido
20deFebrerode2007
GENERACINDENUMEROSALEATORIOS(II)
Existen varias familias de mtodos de generacin de nmeros aleatorios. Aqu explicaremos el funcionamiento de los ms usuales: tipo congruenciallineal. Frmula: Generaunasecuenciadeenteros{zi}como: zi=(azi1+c)modm meselmdulo aeselmultiplicador ceselincremento m>0,m>a,m>c Elnmeroaleatorioentre0y1seobtienecomo: Ui=zi/m
20deFebrerode2007
GENERACINDENUMEROSALEATORIOS(III)
Propiedades: Ecuacin recursiva: con un valor inicial (z ) se define la o secuencia completa. A este valor se el denomina semilla aleatoria. Como mximo se pueden conseguir m nmeros aleatorios distintos. Tienecomportamientocclico.Longituddelciclocomomximo m,dependedez0. Quepasasiz =0?Seleccindez puedeserimportante. 0 0 Nopuedesalircualquiernmero,sololosdelaformaz/m. Dependenciafuertementenolineal Ejemplo:funcinranddeMATLAB4: zi=(77zi1)mod(2311)
20deFebrerode2007 8
GENERACINDENUMEROSALEATORIOS(IV)
Otrosmtodos,concarctergeneral,mantienenmismaestructura: Ecuacin recursivas, reproducibles a partir de valor inicial seleccionable. Dependenciasnolineales=>linealesimplicancorrelacinentre muestras. Tienencomportamientocclico.
20deFebrerode2007
GENERACINDEVARIABLESALEATORIAS
Sabemos generar U(0,1). Aqu generalizaremos para conseguir muestrasque: Siganunadistribucindeseada(funcindedistribucinF (x)o X densidaddeprobabilidadfX(x)). Seanindependientes(linealmente). Generacinde nmeros pseudoaleatorios {Ui} Transformacin X=f(U) {xi}
Comodebeserf(U)paraconseguirladistribucindeseada
20deFebrerode2007
10
MTODODELAFUNCININVERSA
Mtodoparafuncionescontinuas: f(U)=FX1(U) Demostracindesuvalidez: DefinimosY=f(U) QueremoscalcularF (y)=P(Yy) Y F (.)esmontonacreciente=>P(Yy)=P(F (Y)F (y)) X X X F (y)=P(F (f(U))F (y)) Y X X 1 F (y)=P(F (F (U))FX(y)) Y X X F (y)=P(UF (y)) Y X Como U es una variable aleatoria uniforme, si 0<p<1 P(Up)=p. PortantoF (y)=F (y) Y X
20deFebrerode2007 11
MTODODELAFUNCININVERSA(II)
U 1 fU(U)
FX(X)
0 fX(X) X
20deFebrerode2007 12
MTODODELAFUNCININVERSA(III)
Generacincompletadeunamuestradeunavariablealeatoria: Segeneraunnumeroaleatoriou conungeneradordenmeros i aleatorios. 1 Setransformautilizandox =F (ui) i X Propiedadesdelmtodo: Si podemos asumir que los nmeros aleatorios son independientes, las muestras de las variables aleatorias transformadastambinsernindependientes General,valeparacualquierdistribucin. 1 Problema:GenerarF (U) X
20deFebrerode2007
13
MTODODELAFUNCININVERSA(IV)
Extensinavariablesaleatoriasdiscretas: Solo los puntos x tienen una cierta probabilidad de aparecer k (p(xk)).
F X x=P X x= p x i
x i x
Alfinyalcabo,sondistribucionescomocualquierotra Veamosgrficamente
20deFebrerode2007
14
MTODODELAFUNCININVERSA(V)
U 1 fU(U) 0 fX(X) X
FX(X)
20deFebrerode2007
15
MTODODELAFUNCININVERSA(VI)
Loquecambiaeselmtododegeneracin: Generacin completa de una muestra de una variable aleatoria discreta: Segeneraunnumeroaleatoriou conungeneradordenmeros i aleatorios. Setransformaseleccionandoelmenorx talqueu <F(x ). k i k Implementacin prctica: Ordenar xk, ir recorriendo hasta que se cumplalaanteriorcondicin,devolverxi=xk. Generalizacinadistribucionesmixtasesinmediata.
20deFebrerode2007
16
EJEMPLOS
Generacin de muestras que siguen una distribucin exponencial: f (x)=1/cexp(x/c)paravalorespositivosdex. X F (x)=1exp(x/c) X 1 f(u)=F (u)=cln(1u) X MATLAB:>>x=c*log(1rand(1,1)); Generacindemuestrasquesiguenunadistribucindiscreta: p(1)=1/3,p(2)=1/2,p(4)=1/6 MATLAB: >>u=rand(1,1) >>if(u<1/3) x=1; >>elseif(u<5/3)x=2; >>elsex=4;
20deFebrerode2007 17
OTROSMTODOS
20deFebrerode2007
18
COMPOSICIN
Mtodotpicoparagenerardistribucionesmultimodales: fX(X)=p1fX1(X)+p2fX2(X)+p3fX3(X)+...+pNfXN(X) Siunadistribucinesmezclaestadsticadeotras,porqueno: Generar una variable aleatoria discreta coherente con la probabilidaddecadamodo Seleccionarelmodoresultante Generar la variable aleatoria con la distribucin asociada al modo.
20deFebrerode2007
19
COMPOSICIN(II)
Ejemplo:distribucindeLaplacefX(X)=1/(2c)exp(|x|/c) Puede verse como composicin de dos exponenciales, una positivayotranegativa Generando dos nmeros aleatorios u y u se puede calcular 1 2 decidiendo con el primero el signo (equiprobable) y con el segundoelmdulo(exponencial). MATLAB: ifrand(1,1)<0.5 x=c*log(1rand(1,1)); else x=c*log(1rand(1,1));
20deFebrerode2007 20
CONVOLUCIN
Enotrasocasiones,sesabequeunavariablealeatoriaesresultado delasumadevariasotrasvariables. Sidosvariablesaleatorias(XeY)sonindependientes,lafuncin densidad de probabilidad se la suma Z=X+Y puede demostrarse (ISA)quees:fZ(z)=fX(z)*fY(z)=>dehayelnombredelmtodo. SisabemosqueZcumpleestapropiedad,porqueno: Generar muestras (en el ejemplo x e yi) de las variables i aleatoriasoriginales(XeYenelejemplo)utilizandoelmtodo queseapreciso. Sumarlas(enelejemplo,z =x +y ) i i i
20deFebrerode2007
21
CONVOLUCIN(II)
20deFebrerode2007
22
CONVOLUCIN(III)
Ejemplo2:Sntesisdegaussianascomosumadeuniformes Teoremadelmitecentral. Sumandosuficientesuniformes,tenderemosaunagaussiana. Mtodoclsicousa12=>resultado:N(6,1)
20deFebrerode2007
23
TRANSFORMACIONESCONOCIDAS
Enocasiones,seconocenrelacionesentrevariablesaleatoriasque permitentransformarunasenotras. Ejemploclsico:Generacindevariablesaleatoriasgaussianas Propiedad conocida: Si tenemos dos variables aleatorias gaussianasXeY(medianulayvarianzaigual): Cualesladistribucinde|X+jY|? LadeM=|X+jY|2? YladeF=arg(X+jY)? HaydependenciaentreMyF? Generar variables aleatorias exponencial y uniforme no es complicado=>yahemosvistocomo
20deFebrerode2007
24
TRANSFORMACIONESCONOCIDAS(II)
Apartirdedosvariablesaleatorias,unaexponencial(M)ylaotra uniforme entre 0 y 1 (F), se pueden generar dos gaussianas independientesutilizandolassiguientestransformaciones:
X = M cos2 F Y = M sen 2 F
Elmtodocompletoquedar: Generardosvariablesaleatoriasuniformes(u yu ). 1 2 Utilizarlasiguientetransformacin: x= 2 lnu 1 cos2 u2 Y = 2 ln u 1 sen 2 u2 Resultado: pareja de dos muestras de una gaussiana (N(0,1))), independientesentresi
20deFebrerode2007 25
TRANSFORMACIONESCONOCIDAS(III)
Ejemplo 2: Como modificar media y varianza de una variable aleatoria? Traslacin de la media: Y=X+m => aplicar sobre muestras generadasdeX(comprobarqueE{Y}=E{X}+m): yi=xi+m Modificacindelavarianza:RecordarqueY=aXimplicaque Var(Y)=a2 Var(X).Aplicardeformaequivalentealasmuestras generadasdeX: yi=axi Traslacindelamediaymodificacindelavarianzaconjuntas: QuepasaconmediayvarianzasiY=aX+m?Pensarantes deiralaprctica.
20deFebrerode2007 26
GENERACINDESECUENCIAS
Deentretodoslosprocesosaleatorios,nosvamosaquedarconlos estacionarios.Existenmtodosparaotrasfamilias,peronosonde intersenestecurso. OBJETIVO: Generar un proceso estocstico (discreto) con funcindensidaddeprobabilidad(odistribucin)ycorrelacin(o espectro)arbitrarias. Problemasinsolucingeneral. Engeneral,inclusocuandoesposible,sintetizaradecuadamente elprocesoesdifcil Vamos a exponer un mtodo de generacin lo ms genrico posible
20deFebrerode2007
27
GENERACINDESECUENCIAS(II)
Comogenerarprocesosgaussianosconunaciertacorrelacin? RecordardeISA: Sitenemosunruidoblancogaussiano PasamosporunfiltroconrespuestaenfrecuenciaH(f) Espectrodelruidocoloreado:|H(f)|2 Distribucinsiguesiendogaussiana. Esteeselfundamentodelageneracindesecuenciascorreladas: Generacinde x[n] gaussianas SY(f)=|H(f)|2 RY[n]=1{|H(f)|2}
20deFebrerode2007 28
H(f)
y[n]
GENERACINDESECUENCIAS(III)
x[n]
H(f)
y[n]
GENERACINDESECUENCIAS(IV)
Cambiemosahoraelmtodo: Quepasasi: Generacinde x[n] gaussianas ?
H(f)
y[n]
f(Y)
z[n]=f(y[n])
Z=f(Y):Nolinealidadsinmemoria. Distribucin es una gaussiana tras pasar por la transformacin f(Y) => predecible => controlando f(Y) podemos generar la distribucindeseada. Espectro, al pasar por no linealidad, se distorsiona (y por tanto correlacin). Tambin es predecible esta distorsin => controlando H(f), para una f(Y) dada, se puede controlar espectrodelasalida.
20deFebrerode2007 30
GENERACINDESECUENCIAS(V)
Comocalcularf(Y)?:Puedehacerseendosetapas: 1 Convertir gaussiana en uniforme: al igual que F (.) sirve para X transformar una uniforme en una distribucin, FX(.) sirve para transformaresadistribucinenuniforme. Convertir uniforme en la distribucin deseada (mtodo de la funcininversa): 1 f(Y)=F (FY(Y)) Z
20deFebrerode2007
31
GENERACINDESECUENCIAS(VI)
ComocalcularH(f)?: Autocorrelacinantesdepasarpornolinealidad:R'(n) Funcindensidaddeprobabilidadconjuntadedosmuestras(uy v)delavariablealeatoriay[n]separadasnmuestras:
g u , v , R ' n=
Autocorrelacinalasalida(z[n]):
R n =
f u f v g u , v , R ' n dudv
GENERACINDESECUENCIAS(V)
Relacin R'(n)=funcin(R(n)) complicada de resolver en general. En introduccin terica a la prctica se da resuelta para algunos casosdedistribuciones. Enintroduccintericatambinseproponeunmtododesntesis defiltrosapartirdeR(n)(usandolaDFT).
20deFebrerode2007
33
COMPROBACINDERESULTADOS
En la prctica se van a generar un conjunto de muestras de variablesaleatoriasydeprocesosestocsticos. Hayquevalidarlosresultados. Para ello utilizaremos un conjunto de funciones de MATLAB, aplicndolas sobre los resultados obtenidos para estimar parmetros de las variable aleatorias y procesos estocsticos generados. Enprcticasposterioresveremosqueesloquehaceninternamente estasfunciones.
20deFebrerode2007
34
COMPROBACINDERESULTADOS(II)
HabrqueutilizarlassiguientesfuncionesdeMATLAB: mean:media std:desviacintpica(raizcuadradadelavarianza) xcorr: correlacin cruzada (como la usara para calcular autocorrelacin?) psd:densidadespectraldepotenciadeunaseal hist:Histograma(recordardeLSCM)
20deFebrerode2007
35
RESUMEN
{xi}
Anlisisde resultados
20deFebrerode2007
36