Universidade de São Paulo Instituto de Matemática e Estatística http:www.ime.usp.br/ mbranco Simulação de Variáveis Aleatórias Contínuas.
O método da Transformada Inversa Teorema Seja U U (0,1). Para qualquer função de distribuição acumulada F contínua, a v.a. X definida por tem distribuição F. Prova: (em aula). X = F 1 (U) Exemplo 1: F(x) = x a, 0 < x < 1, com a um número natural. Então tem distribuição F. X = F 1 (U) = U 1/a
O método da Transformada Inversa Exemplo 2: Distribuição exponencial X Exp(λ) Sua f.d.p. é dada por Sua f.d.acumulada é f(x) = λe λx, x > 0, λ > 0. Portanto, x F(x) = λe λt dt = 1 e λx. 0 com U U (0,1). X = ln(1 U) λ = lnu λ
O método da Transformada Inversa Exemplo 3: Simular da Poisson a partir da Exponencial N(t) número de eventos até o instante t. X i tempo entre os eventos (i 1) e i. Se N(t) é Poisson então X 1, X 2,... são ind. Exponenciais. Faça t = 1 e N(1) = max{n : n X i 1}. i=1 Usando o exemplo anterior temos que N(1) = max{n : n ln(u i ) λ} i=1 N(1) = max{n : U 1 U 2 U n e λ }
O método da Transformada Inversa Exemplo 4: Distribuição Gama X Gama(n, λ). Sua f.d.p. é λ n Γ(n) xn 1 e λx. A f.d.a. da Gama não pode ser obtida analiticamente. Se n é um número natural temos que X pode ser escrita como uma soma de exponencias. Então, X = n 1 λ ln(u i) = 1 λ ln(u 1..., U n ). i=1
O método da Rejeição/aceitação Sejam f(x) uma f.d.p. de interesse e g(x) uma f.d.p. proposta. Considere que exista uma constante C tal que O algoritmo consiste em: f(x) g(x) C, x. (i) Simular x da densidade g(x). (ii) Simular um número aleatório u. (iii) Se u f(x) Cg(x) então faça x = x. Caso contrário, volte a (i).
O método da Rejeição/aceitação Observações: A probabilidade de aceitação de um particular valor x de X é f(x) Cg(x). É importante garantir a existência da constante C. Pode não existir e então o método não deverá ser aplicado. Os valores simulados usando o algoritmo formam uma amostra da distribuição de X (provar!). O número de iterações necessárias para a simulação de uma unidade amostral é uma v.a. com distribuição geométrica com média C (provar!). 1 C é denominada probabilidade de aceitação do algoritmo (média ).
O método da Rejeição/aceitação Exemplo 5: Distribuição Gama com parâmetro não natural X Gama(3/2, 1). Sua f.d.p. é f(x) = 2 π x 3/2 1 e x, x > 0. Vamos considerar com proposta uma Exp( 2 3 ) com Note que g(x) = 2 3 e 2x 3, x > 0. f(x) g(x) = 3 π x 1/2 e x/3. Existe C? Maximizando a razão acima obtemos C = 1.257.
O método da Rejeição/aceitação No exemplo 5, a probabilidade de aceitação é 0.795 e o algorítmo consiste em (i) Simular dois números aleatórios u 1 e u 2. (ii) Faça x = 3 2 ln(u 1) e α = 0.795 f(x ) g(x ) (iii) Se u 2 < α faça x = x e pare. Caso contrário, volte a (i). O número médio de iterações necessarias para obtenção de um valor de X é 1.257.
O método da Rejeição/aceitação Exemplo 6: Simulando da Normal via algoritmo de rejeição. Considere Z N(0, 1) com f.d.p. Se X = Z (modulo) então f(z) = 1 2π e x2 /2 f(x) = 2 2π e x2 /2, x > 0. Essa distribuição é denominada normal positiva ou half-normal. Se soubermos simular de X usamos o esquema abaixo para obter amostras de Z Z = X com probabilidade 1/2 Z = X com probabilidade 1/2
O método da Rejeição/aceitação Usamos o algoritmo de rejeição para simular de X com proposta Exponencial com média 1, então e g(x) = e x f(x) 2 g(x) = /2 π ex x2. O ponto de máximo é obtido quando x = 1 e C = f(1) 2e g(1) = π = 1.31.
O método da Rejeição/aceitação Algoritmo (i) Simule u 1 e u 2 da U (0,1) (ii) Calcule x = lnu 1. Se u 2 > e 1 2 (x 1) 2 volte para (i). Caso contrário, faça x = x e siga. (iii) Simule u 3 da U (0,1). Se u 3 < 1/2 faça z = x. Caso contrário, faça z = x. A probabilidade de aceitação do algoritmo é 0.76 e o número esperado de iterações é 1.31.
O método de Box-Muller para simular da Normal O método usa a idéia de transformação de variáveis bidimensional. Considere duas v.a. X e Y com distribuição normal padrão N(0, 1) e a seguinte transformação de variáveis: ( ) Y D = X 2 + Y 2 e θ = arctg. X Usando o método Jacobiano obtemos a f.d.p. de (D, θ) f(d, θ) = 1 2 e d/2 1 2π I (0,2π)(θ) d > 0, em que I A representa a função indicadora. Portanto, θ tem distribuição Uniforme em (0, 2π) e D tem distribuição exponencial com λ = 1/2.
O método de Box-Muller para simular da Normal Lembrando que D = 2lnU 1 e θ = 2πU 2 com U 1 e U 2 v.a. Uniformes no (0, 1). O algoritmo consiste em (i) Simular u 1, u 2 números aleatórios independentes. (ii) Calcular x = 2lnu 1 Cos(2πu 2 ) e y = 2lnu 1 Sen(2πu 2 ) Se desejamos simular de uma normal qualquer com média µ e variância σ 2 basta considerar a transformação W = µ + σx.
O método da Composição 1. Mistura Finita Suponha que seja possível decompor uma f.d.a. como uma mistura finita de outras f.d.a com n p i = 1. i=1 F(x) = n p i F i (x) Podemos então considerar o seguinte esquema de simulação: i=1 (i) Ordenar os p i s tal que p (1) p (2) p (n). (ii) Simular um número aleatório u. Se u < p (1) simula X de F 1 e para. Caso contrário, se p (1) + + p (j 1) u < p (1) + + p (j) simula X de F j e para.
O método da Composição 2. Mistura Infinita F(x) = F X Y =y (x y)f Y (y)dy Com f Y a f.d.p. de uma v.a. Y e F X Y =y a f.d.a. condicional da v.a. X dado Y = y O algoritmo consiste em simular y de Y e depois simular x de X Y = y. A relação acima pode ser escrita em função das funções densidades. f(x) = f X Y =y (x y)f Y (y)dy.