22
Introdu¸c˜ ao a cadeias de Markov e Simula¸c˜ ao An´ alise de dados e Simula¸c˜ ao arcia D’Elia Branco Apoio: Andressa Cerqueira (Aluna do Programa PAE)

Introdução a cadeias de Markov e Simulaçãombranco/Aulacadeiamarko_MAE03992017.… · Introdução a cadeias de Markov e Simulação Author: Análise de dados e Simulação 0.5cmMárcia

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Introdução a cadeias de Markov e Simulaçãombranco/Aulacadeiamarko_MAE03992017.… · Introdução a cadeias de Markov e Simulação Author: Análise de dados e Simulação 0.5cmMárcia

Introducao a cadeias de Markov e Simulacao

Analise de dados e Simulacao

Marcia D’Elia Branco

Apoio: Andressa Cerqueira (Aluna do Programa PAE)

Page 2: Introdução a cadeias de Markov e Simulaçãombranco/Aulacadeiamarko_MAE03992017.… · Introdução a cadeias de Markov e Simulação Author: Análise de dados e Simulação 0.5cmMárcia

Processo Estocastico

I X1,X2, · · · ,Xn representa a evolucao no tempo de um sistemanos instantes 1, 2, · · · , n;

I A variavel aleatoria Xt representa o estado do sistema no ins-tante t;

I O conjunto de valores que a variavel Xt pode assumir e chamadode espaco de estados;

Page 3: Introdução a cadeias de Markov e Simulaçãombranco/Aulacadeiamarko_MAE03992017.… · Introdução a cadeias de Markov e Simulação Author: Análise de dados e Simulação 0.5cmMárcia

I Um exemplo simples de processo estocastico seria considerarque X1,X2, · · · ,Xn sao variaveis aleatorias independentes;

I Porem, esse processo e muito simples para modelar fenomenosreais;

Exemplo: Suponha que Xn representa o saldo de uma conta cor-rente no dia n;

X0: representa o saldo no instante de abertura da conta;O espaco de estados do processo e dado por S = R

Nesse caso, o saldo da conta corrente no dia n dado o saldo daconta nos dias anteriores Xn−1,Xn−2, · · · ,X0 dependera apenas dodia anterior, ou seja, Xn−1.

Page 4: Introdução a cadeias de Markov e Simulaçãombranco/Aulacadeiamarko_MAE03992017.… · Introdução a cadeias de Markov e Simulação Author: Análise de dados e Simulação 0.5cmMárcia

Cadeias de Markov

Definicao: Um processo estocastico {Xn}, com espaco de esta-dos discreto (enumeravel) S e em tempo discreto, e uma cadeia deMarkov homogenea se para todo i0, i1, · · · , in−1 ∈ S

P(

futuro︷ ︸︸ ︷Xn+1 = j |

presente︷ ︸︸ ︷Xn = i ,

passado︷ ︸︸ ︷Xn−1 = in−1, · · · ,X0 = i0)

= P(Xn+1 = j︸ ︷︷ ︸futuro

| Xn = i︸ ︷︷ ︸presente

) = pij(1)

Page 5: Introdução a cadeias de Markov e Simulaçãombranco/Aulacadeiamarko_MAE03992017.… · Introdução a cadeias de Markov e Simulação Author: Análise de dados e Simulação 0.5cmMárcia

As probabilidades de transicao da cadeia podem ser representadaspor uma matriz P, cujos elementos pij satisfazem

I pij ≥ 0, para todo i , j ∈ S

I∑j∈S

pij = 1, para todo i ∈ S .

A distribuicao inicial da cadeia e dada pelo vetor π0 = (π0(i))i∈Stal que

π0(i) = P(X0 = i) (2)

Page 6: Introdução a cadeias de Markov e Simulaçãombranco/Aulacadeiamarko_MAE03992017.… · Introdução a cadeias de Markov e Simulação Author: Análise de dados e Simulação 0.5cmMárcia

Exemplo: (Previsao do tempo)

Suponha que a chance de chover amanha depende apenas se choveuou nao hoje e nao depende das condicoes de dias anteriores.Considere tambem que se chover hoje entao chovera amanha comprobabilidade 0.7; e se nao chover hoje, entao chovera amanha comprobabilidade 0.4.

Qual e o espaco de estados?

Associamos a acao “chover” ao estado 1 e “nao chover” ao estado0, assim o espaco de estados da cadeia e dado por S = {0, 1}.A matriz de transicao e dada por

P =

(p00 p01p10 p11

)=

(0.6 0.40.3 0.7

)(3)

Page 7: Introdução a cadeias de Markov e Simulaçãombranco/Aulacadeiamarko_MAE03992017.… · Introdução a cadeias de Markov e Simulação Author: Análise de dados e Simulação 0.5cmMárcia

Simulacao de uma cadeia de Markov

Para construir um algoritmo de simulacao de uma cadeia de Markovprecisamos construir duas funcoes:

I Funcao inicial: ψ : [0, 1]→ Ssimula o valor inicial da cadeia com base na distribuicao π0

I Funcao de atualizacao: φ : S × [0, 1]→ Satualizara o estado da cadeia em cada instante de tempo.

Page 8: Introdução a cadeias de Markov e Simulaçãombranco/Aulacadeiamarko_MAE03992017.… · Introdução a cadeias de Markov e Simulação Author: Análise de dados e Simulação 0.5cmMárcia

Simulando o valor inicial

Suponha que o espaco de estados da cadeia e dado por S = {s1, s2, · · · , sk}e u ∈ [0, 1].Simular o valor inicial da cadeia e equivalente a simular de umavariavel aleatoria discreta com distribuicao de probabilidade dadapor

x0 s1 s2 · · · sk

P(X0 = x0) π0(s1) π0(s2) · · · π0(sk)

Page 9: Introdução a cadeias de Markov e Simulaçãombranco/Aulacadeiamarko_MAE03992017.… · Introdução a cadeias de Markov e Simulação Author: Análise de dados e Simulação 0.5cmMárcia

Simulando o valor inicial

Assim, uma possıvel funcao ψ e dada por

ψ(u) =

s1, se u ∈[0, π0(s1)

)s2, se u ∈

[π0(s1), π0(s1) + π0(s2)

)...

sj , se u ∈

[j−1∑l=1

π0(sl),j∑

l=1

π0(sl)

)...

sk , se u ∈[

k∑l=1

π0(sl), 1

]

Page 10: Introdução a cadeias de Markov e Simulaçãombranco/Aulacadeiamarko_MAE03992017.… · Introdução a cadeias de Markov e Simulação Author: Análise de dados e Simulação 0.5cmMárcia

Simulando o proximo passo

Dado que a cadeia esta no estado si no passo n, para simular oproximo passo da cadeia basta simular da seguinte distribuicao deprobabilidade discreta:

xn+1 s1 s2 · · · sk

P(Xn+1 = xn+1|Xn = si ) psi s1 psi s2 · · · psi sk

Page 11: Introdução a cadeias de Markov e Simulaçãombranco/Aulacadeiamarko_MAE03992017.… · Introdução a cadeias de Markov e Simulação Author: Análise de dados e Simulação 0.5cmMárcia

Simulando o proximo passo

Uma possıvel funcao de atualizacao e dada por

φ(si , u) =

s1, se u ∈ [0, psi s1)s2, se u ∈ [psi s1 , psi s1 + psi s2)...

sj , se u ∈

[j−1∑l=1

psi sl ,j∑

l=1

psi sl

)...

sk , se u ∈[

k∑l=1

psi sl , 1

]

Page 12: Introdução a cadeias de Markov e Simulaçãombranco/Aulacadeiamarko_MAE03992017.… · Introdução a cadeias de Markov e Simulação Author: Análise de dados e Simulação 0.5cmMárcia

Algoritmo:

1. Simule u ∼ U[0, 1]

2. Faca x0 = ψ(u)No passo n

3. Simule u ∼ U[0, 1]

4. Faca xn+1 = φ(xn, u)

Page 13: Introdução a cadeias de Markov e Simulaçãombranco/Aulacadeiamarko_MAE03992017.… · Introdução a cadeias de Markov e Simulação Author: Análise de dados e Simulação 0.5cmMárcia

Exemplo: (Previsao do tempo)Simular da cadeia que descreve o problema da previsao do tempoconsiderando a distribuicao inicial π0 = (0.3, 0.7).

Funcao inicial:

ψ(u) =

{0, se u ∈ [0, 0.3)1, se u ∈ [0.3, 1)

Lembrando que:

P =

(0.6 0.40.3 0.7

)(4)

Funcao de atualizacao:

φ(0, u) =

{0, se u ∈ [0, 0.6)1, se u ∈ [0.6, 1)

φ(1, u) =

{0, se u ∈ [0, 0.3)1, se u ∈ [0.3, 1)

Page 14: Introdução a cadeias de Markov e Simulaçãombranco/Aulacadeiamarko_MAE03992017.… · Introdução a cadeias de Markov e Simulação Author: Análise de dados e Simulação 0.5cmMárcia

2 4 6 8 10

0.0

0.2

0.4

0.6

0.8

1.0

Passos

esta

do d

a ca

deia

Page 15: Introdução a cadeias de Markov e Simulaçãombranco/Aulacadeiamarko_MAE03992017.… · Introdução a cadeias de Markov e Simulação Author: Análise de dados e Simulação 0.5cmMárcia

Dado que choveu hoje, qual a probabilidade de chover daqui 2 dias?

P(Xn+1 = 1|Xn = 1) = p(2)11 (5)

p(2)11 representa a trasicao do estado i para o estado j em dois passos.

A matriz de transicao em n passos e dada por

P(n) = Pn (6)

Page 16: Introdução a cadeias de Markov e Simulaçãombranco/Aulacadeiamarko_MAE03992017.… · Introdução a cadeias de Markov e Simulação Author: Análise de dados e Simulação 0.5cmMárcia

P2 =

(0.480 0.5200.390 0.610

)

P5 =

(0.429 0.5710.428 0.572

)

P10 =

(0.429 0.5710.429 0.571

)

P20 =

(0.429 0.5710.429 0.571

)Entao,

limn→∞

Pn =

(0.429 0.5710.429 0.571

)e

limn→∞

P(n)i0 = 0.429 lim

n→∞P(n)i1 = 0.571 para i ∈ {0, 1}

Page 17: Introdução a cadeias de Markov e Simulaçãombranco/Aulacadeiamarko_MAE03992017.… · Introdução a cadeias de Markov e Simulação Author: Análise de dados e Simulação 0.5cmMárcia

I O estudo do comportamento da cadeia de Markov quando onumero de passos n→∞ e um dos problemas importantes nocontexto de simulacao

I Nesse caso, um dos conceitos importantes de cadeias de Markove a distribuicao estacionaria da cadeia.

Considere uma cadeia de Markov com espaco de estados S = {1, · · · , k}.O vetor π = (π1 · · ·πk) e chamado de distribuicao estacionaria dacadeia se

1. πj ≥ 0,∀j ∈ S

2.k∑

j=1πj = 1

3. πP = π

Page 18: Introdução a cadeias de Markov e Simulaçãombranco/Aulacadeiamarko_MAE03992017.… · Introdução a cadeias de Markov e Simulação Author: Análise de dados e Simulação 0.5cmMárcia

Resultado: Considere uma cadeia de Markov com espaco de estadosS = {1, · · · , k}. Se lim

n→∞Pn existe e

limn→∞

P(n)ij = πj , ∀i ∈ S e ∀j ∈ S

Entao, (π1 · · ·πk) e a distribuicao estacionaria da cadeia.

Observacao: A existencia de limn→∞

Pn e garantida atraves de pro-

priedades da cadeia. Essas propriedades e resultados sao abordadosno curso de processos estocasticos.

Page 19: Introdução a cadeias de Markov e Simulaçãombranco/Aulacadeiamarko_MAE03992017.… · Introdução a cadeias de Markov e Simulação Author: Análise de dados e Simulação 0.5cmMárcia

Exemplo: Considere a cadeia de Markov com espaco de estadosS = {1, 2, 3} e matriz de transicao

P =

0.50 0.25 0.250.20 0.10 0.700.25 0.25 0.50

Vamos estudar o comportamento da cadeia quando n→∞

Page 20: Introdução a cadeias de Markov e Simulaçãombranco/Aulacadeiamarko_MAE03992017.… · Introdução a cadeias de Markov e Simulação Author: Análise de dados e Simulação 0.5cmMárcia

0 2 4 6 8 10

0.0

0.2

0.4

0.6

0.8

1.0

x0 = 1

Passos

p 1jn

0 2 4 6 8 100.0

0.2

0.4

0.6

0.8

1.0

x0 = 2

Passos

p 2jn

estado 1estado 2estado 3

Page 21: Introdução a cadeias de Markov e Simulaçãombranco/Aulacadeiamarko_MAE03992017.… · Introdução a cadeias de Markov e Simulação Author: Análise de dados e Simulação 0.5cmMárcia

0 2 4 6 8 10

0.0

0.2

0.4

0.6

0.8

1.0

x0 = 3

Passos

p 3jn

estado 1estado 2estado 3

Page 22: Introdução a cadeias de Markov e Simulaçãombranco/Aulacadeiamarko_MAE03992017.… · Introdução a cadeias de Markov e Simulação Author: Análise de dados e Simulação 0.5cmMárcia

P2 =

0.363 0.213 0.4250.295 0.235 0.4700.300 0.212 0.488

P5 =

0.319 0.217 0.4630.318 0.217 0.4640.318 0.217 0.464

P10 =

0.319 0.217 0.4640.319 0.217 0.4640.319 0.217 0.464