Explicando os filtros Kalman em modelos de espaço de estado


10

Quais são as etapas envolvidas no uso de filtros Kalman em modelos de espaço de estado?

Eu já vi algumas formulações diferentes , mas não tenho certeza dos detalhes. Por exemplo, Cowpertwait começa com este conjunto de equações:

yt=Ftθt+vt
θt=Gtθt1+wt

onde e , são nossas estimativas desconhecidas e são os valores observados.θ0N(m0,C0),vtN(0,Vt)wtN(0,Wt)θtyt

Cowpertwait define as distribuições envolvidas (distribuição anterior, de probabilidade e posterior, respectivamente):

θt|Dt1N(at,Rt)
yt|θtN(Ftθt,Vt)
θt|DtN(mt,Ct)

com

at=Gtmt1,Rt=GtCt1Gt+Wtet=ytft,mt=at+Atetft=Ftat,Qt=FtRtFt+VtAt=RtFtQt1,Ct=RtAtQtAt

A propósito, significa a distribuição de considerando os valores observados até . Uma notação mais simples é mas continuarei com a notação de Cowpertwait.θt|Dt1θtyt1θt|t1

O autor também descreve a previsão para em termos de expectativas:yt+1|Dt

E[yt+1|Dt]=E[Ft+1θt+1+vt+1|Dt]=Ft+1E[θt+1|Dt]=Ft+1at+1=ft+1

Pelo que entendi, estas são as etapas, no entanto, informe-me se houver um erro ou uma imprecisão:

  1. Começamos com , , ou seja, supomos um valor para nossas estimativas .m0C0θ0
  2. Prevemos um valor para . Isso deve ser igual a que é . é conhecido desde .y1|D0f1F1a1a1a1=G1m0
  3. Uma vez que temos nossa previsão para , calculamos o erro .y1|D0e1=y1f1
  4. O erro é usado para calcular a distribuição posterior que requer e . é dado como uma soma ponderada da média anterior e o erro: .e1θ1|D1m1C1m1a1+A1e1
  5. Na iteração a seguir, começamos prevendo como na etapa 1. Nesse caso, . Como e é a expectativa de que já calculamos na etapa anterior, então podemos calcular o erro e a média da distribuição posterior como antes.y2|D1f2=F2a2a2=G2m1θ 1 | D 1 e 2 θ 2 | D 2m1θ1|D1e2θ2|D2

Eu acho que o cálculo da distribuição posterior é o que algumas pessoas chamam de etapa de atualização e o uso da expectativa de é a etapa de previsão. y t + 1 | D tθt|Dtyt+1|Dt

Por uma questão de brevidade, omiti as etapas para calcular as matrizes de covariância.

Eu perdi alguma coisa? Você conhece uma maneira melhor de explicar isso? Eu acho que isso ainda é um pouco confuso, então talvez haja uma abordagem mais clara.

Respostas:


3

Eu acho que o que você diz está correto, e não acho que seja confuso. Uma maneira de frasear seria dizer que o filtro Kalman é um algoritmo de correção de erros, que modifica previsões à luz das discrepâncias com as observações atuais. Essa correção é feita na etapa 4) usando a matriz de ganho .At


Obrigado pela sua resposta. Talvez esteja correto, mas eu gostaria de ler uma explicação mais detalhada (e natural) disso. Li descrições em livros e slides, mas a maioria não é muito clara e há pequenas diferenças.
Robert Smith
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.