Você está na página 1de 11

04

Métodos de Geração
Mat02274 de Variáveis Aleatórias
Estatística Computacional

Prof. Lorí Viali, Dr.


viali@mat.ufrgs.br
http://www.ufrgs.br/~viali/

Existem algumas técnicas para a geração As principais abordagens são:


de variáveis aleatórias. O tipo de algoritmo a (i) Inversão;
ser utilizado depende da distribuição que se (ii) Composição;
quer gerar. (iii) Convolução;
Contudo, quase todas as técnicas podem (iv) Aceitação e Rejeição;
ser classificadas conforme suas bases teóricas. (v) Propriedades Especiais.

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

Variáveis Contínuas
Suponha que se queira gerar uma
Método da variável contínua X com FDA F(x).
Vamos admitir que a inversa existe e que
Transformada
será representada por F-1(x). Então um
Inversa algoritmo para gerar valores da VAC X
com fdp f(x) é:

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

1
F(x)
1
1. Gerar u ≈ U(0, 1);
u1
2. Fazer x = F-1(u).
Note-se que F-1(u) vai sempre
estar definida, pois 0 ≤ u ≤ 1 e a
u2
imagem da F é o intervalo [0, 1].
x2 x1 x
Ilustração do Método da Inversão
Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

Para mostrar que o valor de X obtido Mas, como F é inversível, tem-se:


com o algoritmo anterior, denominado de P(X ≤ x) = P[F-1(U) ≤ x] = P[F(F-1(U)) ≤ F(x)]
método da transformada inversa, tem a = P[U ≤ F(x)] = P[0 ≤ U ≤ F(x)] =

desejada distribuição F, é preciso mostrar = F(x) – 0 = F(x).


Onde a última igualdade segue do fato de
que para qualquer número real x, P(X ≤ x)
que U ≈ U(0, 1) e 0 ≤ F(x) ≤ 1.
= F(x).

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

Exemplo Exemplo
Seja X uma VAC com uma distribuição Resolvendo U = F(x) para X, tem-se:
W(α, β). Assim a fdp de X é:
α
U = 1 − e − ( x / β)
α
 −α α −1 −( x / β)α se x > 0 e −( x / β) = 1 − U
f ( x ) = α β x e
0 se x ≤ 0 − ( x / β)α = ln(1 − U )

A FDA de X é: X = β [− ln(1− U )]1/ α

1 − −( x / β) se x > 0α Uma vez que 1 – U ~U(0, 1) pode-se


F( x ) = ∫0xf (u )du =  e
0 se x ≤ 0 escrever: X = β[-ln(U)]1/α

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

2
Exercício Variáveis Discretas
Seja X uma VAD onde p(xi) é a
Gere 10000 valores de uma W(2, 3).
Represente graficamente a distribuição e o função de probabilidade, isto é, p(xi) =
modelo. Compare os parâmetros do modelo e P(X = xi).
estime os seus valores com os dados obtidos, Vamos supor que X possa assumir os
determinando as seguintes medidas: média, valores x1, x2, ..., xn, ..., onde x1 < x2 < ...
desvio, mediana, assimetria e curtose. < xn < .... Então o algoritmo é:

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

F(x)
1. Gerar U ≈ U(0, 1); 1 p(x6)

2. Determinar o menor inteiro positivo I tal u p(x5)


p(x4)

que U ≤ F(xI) e retornar X = xI.


p(x3)
Para verificar que o método da
p(x2)
transformada inversa discreta é válido, devemos p(x1)
x
x1 x2 x3 x4 x5 x6
mostrar que P(X = xi) = pi para todo i. X
Método da Inversão para variáveis discretas
Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

Exercício
Para i = 1, teremos X = x1 se e só se U ≤
Seja X uma VAD assumindo os
F(x1) = p(x1), uma vez que os valores xi estão em
valores: 1, 2, ..., 10 com probabilidades
ordem crescente. Como U ≈ U(0, 1), P(X = x1) =
1/10 para x = 1, 2, ..., 10. Gerar 5000
p(x1) como o requerido. Para i ≥ 2, o algoritmo
coloca X = xi se e só se F(xi-1) < U ≤ F(xi), já
valores dessa distribuição. Representar

que o i determinado pelo algoritmo é o menor graficamente e determinar: média,


inteiro positivo tal que U ≤ F(xi). desvio, mediana, assimetria e curtose.
Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

3
Suponha que desejamos uma
Método da
amostra de uma VAC com fdp f(x) e que
Aceitação Rejeição isso não possa ser feito pelo método da
Inversão.
Suponha que sejam válidas as
seguintes hipóteses:

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

1. Existe uma função r(x) que domina f(x), 3. Se o gráfico da r(x) é esboçado no

isto é, r(x) ≥ f(x) para todo x. mesmo diagrama, os pontos (X, Y)

2. É possível gerar pontos uniformente estarão acima ou abaixo dele de acordo

espalhadas sob o gráfico da r(x), acima com Y > f(X) ou Y ≤ f(X).

do eixo x. Representa-se as coordenadas 4. Se a função r(x) não for uma fdp então

de um desses pontos por (X, Y). fazer g(x) = r(x)/c, onde c é a área da r(x).

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

O Algoritmo Exemplo

1. Gerar Y tendo uma densidade g(x). Seja B(4, 3), isto é, com fdp dada por

2. Gerar U(0, 1) (independente de Y em um). f(x) = 60x3(1 – x)2 se 0 ≤ x ≤ 1 e 0 cc.

3. Se U ≤ f(Y)/r(Y), retorna X = Y e pare; O topo da densidade é f(0,6) =

senão volte para o passo um e tente 2,0736. Vamos fazer r(x) = 2,0736 se

novamente (repita até que uma aceitação 0 ≤ x ≤ 1. Assim c = 2,0736 e g(x) =

aconteça no passo 3). r(x)/c e, portanto, g(x) é uma U(0,1).

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

4
O Algoritmo

1. Gerar Y ~ U(0, 1).


2. Gerar U ~ U(0, 1) (independente de Y).
Pontos 3. Se U ≤ 60Y3(1 – Y)2/2,0736, retorna
Rejeitados

Pontos X = Y e para, senão volta ao passo 1.


Aceitos

x x x x

Ilustração do Método da Aceitação-Rejeição


Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

Exercício Solução
Para obter uma função r(x) simples
Gerar 10000 valores da variável
para simular valores de f(x) vamos
aleatória abaixo, utilizando o método
desconsiderar valores acima de x = 5,
da Aceitação/Rejeição.
pois se x < 5, F(x) = 0,9995.
4x e-2x se x ≥ 0
f (x) = 
0 c. c.
4x e-2x se x ≥ 0
f (x) = 
0 c. c.

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

Então uma função r(x) poderá Então uma função r(x) poderá ser:
ser: 1 - x/5 se 0 ≤ x ≤ 5
1 - x/5 se 0 ≤ x ≤ 5 r( x ) = 
r( x ) = 
0 c. c.
0 c. c.

A função g(x) será obtida A função g(x) será obtida


integrando a r(x) no intervalo integrando a r(x) no intervalo
considerado. considerado.
Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

5
Assim a função g(x) será: Então a G(x) será:
2 0 se x < 0
 (1 - x/5) se 0 ≤ x ≤ 5 
g( x ) =  5 G ( x ) = (10x - x 2)/25 se 0 ≤ x ≤ 5
0 c. c. 1 se x > 5

A função g(x) é obtida integrando a Igualando a expressão de G(x) a U e

r(x) no intervalo considerado e isolando X, obtém-se: X = 5(1 − U )

dividindo r(x) pela área obtida. que é o gerador da variável com fdp g(x).

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

Método da O método da composição pode ser


aplicado quando a FDA da qual
Composição
precisamos gerar valores pode ser expressa
como uma combinação convexa de outras
FDAs F1, F2, ... . Com isso, espera-se
poder determinar valores das Fis de uma
forma mais simples do que da F original.
Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

Especificamente, assume-se que De forma equivalente se X tem


para todo x a F(x) pode ser escrita como: densidade f então:

F( x ) = ∑ pi Fi ( x ) ∞
f ( x ) = ∑ pi f i ( x )
i =1
i =1

onde os pesos, pi, satisfazem pi > 0 e onde as fi são outras densidades.


Σpi = 1 e cada Fi é uma FDA. O caso discreto é análogo.

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

6
O Algoritmo

O algoritmo para o método da O problema é encontrar Fi que


composição é, então: possibilite uma geração rápida e fácil.
(i) Gerar um número inteiro aleatório I tal Algumas vezes a geometria da
que: P(I = i) = pi para i = 1, 2, ... distribuição pode dar uma ideia dessa
(ii) Retornar X com FDA FI. decomposição.

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

Exemplo 1

Considere a distribuição 1,0

triangular simétrica em [-1, 1].


0,8

0,6

 x +1 se - 1 ≤ x ≤ 0 0,4


f ( x ) = − x + 1 se 0 < x ≤ 1 0,2

 0 c. c.

0,0
-1,5 -1,0 -0,5 0,0 0,5 1,0 1,5

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

A distribuição acumulada é: 1,0

0,8

0 se x < - 1
 2 0,6

 x +x+ 1 se - 1 ≤ x ≤ 0
 2 2
F( x ) =  0,4

2
-x +x+1 se 0 < x ≤ 1
 2 2 0,2


1 se x > 1
0,0
-1,5 -1,0 -0,5 0,0 0,5 1,0 1,5

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

7
A transformação inversa será Então:
feita por:
 2U -1 se U≤ 1/2
 x2 1 X=
 +x+ se U ≤ 1/2  1- 2(1- U) se U > 1/2
U = F( x ) =  2 2
2
- x +x+1 se U ≥ 1/2
 2 2

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

A Composição
2,0 2,0

Definir a função indicadora para o 1,8

1,6
1,8

1,6

1,4 1,4

conjunto A como: 1,2

1,0
1,2

1,0

1 se x ∈ A 0,8 0,8

IA ( x ) = 
0,6 0,6

0 se x ∉ A
0,4 0,4

0,2 0,2

0,0 0,0

Assim: -1,5 -1,0 -0,5 0,0 0,5 1,0 1,5 -1,5 -1,0 -0,5 0,0 0,5 1,0 1,5

f ( x ) = ( x + 1) I[ −1, 0] ( x ) + (− x + 1) I[0,1] ( x ) = F1 (x) = x2 + 2x + 1 F2 (x) = - x2 + 2x


= 0,5[2( x + 1) I[ −1,0] ( x )] + 0,5[ 2(− x + 1) I[0,1] ( x )] = F1−1 (U) = U -1 F2−1 (U) = 1- 1- U
= p1 f 1 (x) + p 2 f 2 (x)

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

O Algoritmo

Obs. Agora não é necessário somar ½ na O algoritmo da composição será:


segunda função, pois a f2(x) é agora 1. Gerar U1 e U2 ~ U(0, 1) de forma
uma fdp e assim F2(x) é uma FDA independente;
sem a necessidade de somarmos 2. Se U1 < ½, retorna X = U2 −1
mais 0,5. senão, retorna X = 1 − 1.− U 2

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

8
Exercício
Considere a distribuição trapezoidal
2− a
Área = a
em [0; 1] com parâmetro a (0 < a < 1).
a
Expresse a distribuição como uma soma Área = 1 - a

de duas densidades mais simples.

2 − a − 2(1 − a ) x se 0 ≤ x ≤ 1
f (x) =  -0,5 -0,3 -0,1 0,1 0,3 0,5 0,7 0,9 1,1 1,3 1,5

0 c. c.

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

A representação é:
A distribuição acumulada é: 1,0

0,9

0,8

0 se x < 0
0,7

 0,6

F( x ) =  (2 - a)x - (1 - a) x 2 se 0 ≤ x ≤ 1 0,5

1 se x > 1
 0,4

0,3

0,2

0,1

0,0
-0,5 -0,3 -0,1 0,1 0,3 0,5 0,7 0,9 1,1 1,3 1,5

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

A composição

A transformação inversa é dada por: Definir a função indicadora para o


conjunto A como:
U = F(X) = (2 – a)X – (1 – a)X2.
Então: f ( x ) = a[I[ −1,0] ( x )] + (1 − a )[2(1 − x ) I[0,1] ( x )] =
= p1 f 1 (x) + p 2 f 2 (x)
2
2−a (a - 2) U
X=
2(1 − a )
-
4 (1- a) 2

1− a onde p1 = a e f1(x) = I[-1,0](x), p2 = 1 – a
e f2(x) = 2(1 – x)I[0, 1](x)

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

9
O Algoritmo
1,0 2,0

0,9

0,8

0,7
1,5 O algoritmo da composição:
0,6

0,5

0,4
1,0
1. Gerar U1 e U2 ~ U(0, 1) de forma
0,3

0,2
0,5
independente.
0,1

2. Se U1 < a, retorna X = U2
0,0 0,0
-0,5 0,0 0,5 1,0 1,5 -0,5 0,0 0,5 1,0 1,5

F1 ( x ) = x F1 ( x ) = - x + 2x2
senão, retorna X = 1 − 1− U 2 .
F1−1 ( U ) = U F1−1 ( U) = 1 - 1 - U

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

Método da
Suponha que a VA desejada tem a
Convolução mesma distribuição que Y1 + Y2 + ... + Yn,
onde as Yi são IID.
X ~ Y1 + Y2 + ... + Yn, é denominado
uma convolução das Yi.

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

O Algoritmo
Resumindo tem-se:
Composição: a função de distribuição (a fp
ou fdp) é expressa como uma soma 01. Gerar Y1 + Y2 + ... + Yn,
(ponderada) de outras funções de independente da sua distribuição.
distribuição (a fd ou fdp). 02. Retornar X ~ Y1 + Y2 + ... + Yn.
Convolução: expressa a própria variável
como a soma de outras variáveis.
Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

10
Exemplo 1 Exemplo 2

Se X é uma Erlang de parâmetros r Considere a distribuição triangular


inteiro e λ, isto é, X ~ E(r, λ). simétrica em [-1, 1]. A densidade é:
Expresse X ~ Y1 + Y2 + ... + Yr onde
x + 1 se - 1 ≤ x ≤ 0

as Yi são variáveis IDD exponenciais f ( x ) = − x + 1 se 0 ≤ x ≤ 1
0 c. c.

com média λ. Faça r = 5 e λ = 2.

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

1,0
Por uma probabilidade condicional: se

0,8
U1 e U2 são IID U(0, 1), então U1 + U2 ~ é
0,6 triangular simétrica em [0, 2], basta então
0,4
deslocar por 1:
0,2
X = U1 + U2 – 1 = U1 – 0,5 + U2 – 0,5
= Y1 + Y2.
0,0
-1,5 -1,0 -0,5 0,0 0,5 1,0 1,5

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

Referências
CARLO, David. Random Number Generation: Types LEWIS, P. A. W., ORAV, E. J. Simulation
and Techniques, 2012. Methodology for Statisticians, Operations
FISHMAN, George S. Monte Carlo: Concepts, Analysts and Engineers. Volume I. Belmont
Algortihms, and Applications. New York (NY): (California): Wadsworth, Inc., 1989.
Springer, 1996. MADRAS, Neal. Lectures on Monte Carlo
KNUTH, Donald E. The Art of Computer Programing. Methods. Providence (RI): American
Volume 2 - Seminumerical Algorithms. Reading Mathematical Society, 2002.
(Massachusetts): Addison Wesley, 1981.

Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística Prof. Lorí Viali, Dr. – UFRGS – Instituto de Matemática - Departamento de Estatística

11

Você também pode gostar