칼만의 이해를 직관적으로 이해하는 방법은 무엇입니까?


30

칼만 필터 알고리즘은 다음과 같이 작동합니다

초기화 과 .P0| 0x^0|0P0|0

각 반복에서k=1,,n

예측

예측 된 (선험적) 상태 추정치 예측 된 공분산 추정 업데이트Pk| k1=FkPk1| k1F T k +Qk

x^k|k1=Fkx^k1|k1+Bkuk
Pk|k1=FkPk1|k1FkT+Qk

혁신 또는 측정 잔차 혁신 (또는 잔차) 공분산 최적 칼만 이득 \ textbf {K} _k = \ textbf {P} _ {k | k-1} \ textbf {H} _k ^ \ text {T} \ textbf {S} _k ^ {-1} 업데이트 된 ( 포스터 ) 상태 추정 \ hat {\ textbf {x}} _ {k | k} = \ hat {\ textbf {x}} _ {k | k-1} + \ textbf {K} _k \ tilde {\ textbf {y}} _ k 업데이트 ( 후술 ) 추정 공분산 \ textbf {P} _ {k | k} = (I-\ textbf {K} _k \ textbf {H} _k) \ textbf {P} _ {k | k-1}Sk=HkPk| k-1H T k +Rk

y~k=zkHkx^k|k1
Sk=HkPk|k1HkT+Rk
X K | K = X K | k 1 + K k ~ y k P k | k =(I K k H k ) P k | k - 1
Kk=Pk|k1HkTSk1
x^k|k=x^k|k1+Kky~k
Pk|k=(IKkHk)Pk|k1

칼만 이득 는 이전 추정 에 대한 오차 의 상대적 중요성을 나타냅니다 .~ Y K X K | k - 1Kky~kx^k|k1

칼만 게인 의 공식을 직관적 으로 이해하는 방법이 궁금합니다 . 상태와 출력이 스칼라 인 경우를 고려할 때 이득이 더 큰 이유는 무엇입니까?Kk

  • Pk|k1 이 더 큽니다

  • Hk 가 더 큽니다

  • Sk 가 더 작습니까?

감사합니다.


이것은 제대로 대답하기 어려운 질문입니다. 나는 시도했지만 내 자신의 대답에 확신하지 못했습니다. 기본적으로 게인은 추정보다 측정을 얼마나 신뢰하는지 제어하지만이 게인이 어떻게 적용되는지는 설명 할 수 없습니다.
Jav_Rock 2016 년

답변:


18

Kalman Gain 직관적으로 생각하는 좋은 방법을 찾았습니다 . 이런 식으로 를 쓰면KK

 Kk=PkHkT(HkPkHkT+Rk)1=PkHkTHkPkHkT+Rk

행렬의 상대적인 크기 ( )와 ( )는 필터의 예측 된 상태 추정값 사용 ( ) 과 측정 ( ) 사이의 관계를 제어한다는 것을 있습니다.RkPkxkk

 limRk0PkHkT HkPkHkT+Rk =Hk1

 limPk0PkHkT HkPkHkT+Rk =0

첫 번째 한계를 측정 업데이트 방정식으로 대체

 x^k=xk+Kk(y~kHkxk)

의 크기 가 작을 때 (측정이 정확함을 의미) 상태 추정값은 대부분 측정에 의존합니다.R

상태가 정확하게 알려지면 는 과 비교하여 작고 필터는 이전 상태 ( ) 에서 파생 된 예측에 의존하는 측정을 대부분 무시합니다 .HPHTRxk


2
감사! 내가 맞으면 는 와 관련하여 . KkHk
Tim

12

칼만 게인은 측정을 통해 추정치 를 얼마나 변경하고 싶은지 알려줍니다 .

Sk 는 측정치 의 추정 공분산 행렬입니다 . 이것은 측정에서 "가변성"을 알려줍니다. 크면 측정 값이 많이 변한다는 것을 의미합니다. 따라서 이러한 측정에 대한 확신은 낮습니다. 반면에, 경우 작고 , 변화는 측정의 증가 우리의 자신감은 낮다. 측정 결과에 대한 확신이있을 때 얻은 정보가 상태 추정치를 업데이트 / 변경하기에 충분하다고 확신했습니다. 따라서 칼만 이득이 더 높습니다.zkSk

Pk 는 추정 된 상태 공분산 행렬입니다. 이것은 우리에게 상태의 "변수"를 알려줍니다 . 경우 크고 ,이 상태는 많은 변경 예상되는 것을 의미한다. 따라서 새로운 측정 값으로 추정값을 변경할 수 있어야합니다. 결과적으로 칼만 이득이 더 높습니다.xkPk

반대로 가 작 으면 주가 그다지 많이 변하지 않는다는 것을 알고 있으므로 매 순간마다 추정치를 너무 많이 변경하고 싶지 않습니다. @Jav_Rock의 대답에 따르면 이면 입니다. 다시 말해, 주가 더 이상 변하지 않는다고 생각하면 더 이상 견적을 변경하려고 시도하지 않는다는 것을 의미했습니다.PkPk0K0


2

Jav_Rock이 포인트를 얻었습니다. 실제로 이런 식으로Kk

 Kk=PkHkT(HkPkHkT+Rk)1=HkHkPkHkTHkPkHkT+Rk

분수의 분자는 모델에서 전파 된 불확실성을 나타내고 는 측정의 불확실성을 나타냅니다. 따라서 분수의 값은 Jav_Rock이 설명하는 것처럼 측정을 얼마나 신뢰해야 하는지를 나타냅니다.Rk

에 관해서는 우리가 업데이트를하지 관찰을 원하는 상태이기 때문에, 그냥, 상태로 관찰 다시 변환.Hk

, 이득 는 관측에서 취해야 할 보정량을 계산하고 관측 보정을 상태 보정으로 다시 변환하여 상태 추정값을 업데이트합니다.Kk

 x^k=xk+Kk(y~kHkxk)


-1

KF (Kalman Filter) 알고리즘을 개발 중입니다. 칼만 게인은 시간에 따른 알고리즘 수렴, 즉 알고리즘이 얼마나 빨리 수정하고 잔차를 최소화 하는지를 관찰했습니다.

방정식으로 오면 초기 칼만 게인 값을 선택하고 낮은 값에서 높은 값으로 변경하면 근사값을 얻을 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.