Kalman sezgisel olarak nasıl kazanılır?


30

Kalman filtre algoritması aşağıdaki gibi çalışır

ve başlat .x^0|0P0|0

Her yinelemedek=1,,n

Tahmin

Tahmini (önceden belirlenmiş) bir durum tahmini Tahmini (önceden verilen) kovaryansı tahmin et Güncelle

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

Yenilik veya ölçüm artık Yenilik (veya artık) kovaryansı Optimal Kalman gain Güncellenmiş (bir posteriori) durum tahmini Güncelleme (bir posteriori) kovaryansı tahmin eder

y~k=zkHkx^k|k1
Sk=HkPk|k1HkT+Rk
Kk=Pk|k1HkTSk1
x^k|k=x^k|k1+Kky~k
Pk|k=(IKkHk)Pk|k1

Kalman kazancı , hatasının önceki tahminime göre göreceli önemini gösterir .Kky~kx^k|k1

Ben Kalman kazanç formülünü anlamak için acaba sezgisel ? Durumlar ve çıktılar skaler olduğunda durumu göz önünde bulundurun, neden kazanç daha büyük, ne zamanKk

  • Pk|k1 daha büyük

  • Hk daha büyük

  • Sk daha küçük?

Teşekkürler ve saygılar!


Bu doğru cevaplamak için zor bir soru. Denedim ama kendi cevabımı ikna etmedim. Temel olarak, kazanç tahmin üzerinden ölçümlere ne kadar güveneceğinizi kontrol eder, ancak bu kazancın nasıl uygun olduğunu açıklayamam.
Jav_Rock

Yanıtlar:


18

Kalman Gain sezgisel olarak düşünmenin iyi bir yolunu buldum . Eğer yazarsanız bu şekildeKK

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

Matrislerin ( ) ve ( ) göreceli büyüklüklerinin , filtrenin öngörülen tahmin tahmini kullanımı ( ) ile ölçüm ( ) arasındaki bir ilişkiyi kontrol .RkPkxkk

 limRk0PkHkT HkPkHkT+Rk =Hk1

 limPk0PkHkT HkPkHkT+Rk =0

İlk limiti ölçüm güncelleme denklemine koyma

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

büyüklüğünün küçük olduğu, ölçümlerin doğru olduğu anlamına gelen durum tahmininin, çoğunlukla ölçümlere bağlı olduğunu göstermektedir.R

Durum doğru bilindiğinde, , karşılaştırıldığında daha küçüktür ve filtre çoğunlukla önceki durumdan türetilen tahmine dayanarak yapılan ölçümleri dikkate almaz ( ).HPHTRxk


2
Teşekkürler! Doğru isem, göre monotonik olmadığı . KkHk
Tim

12

Kalman kazancı, bir ölçümle tahminimi ne kadar değiştirmek istediğimi söyler .

Sk , ölçümlerinin tahmini kovaryans matrisidir . Bu bize ölçümlerimizdeki "değişkenliği" söyler. Büyükse, ölçümlerin çok fazla "değiştiği" anlamına gelir. Yani bu ölçümlere olan güveniniz düşük. Öte yandan, eğer küçükse , değişkenlik düşüktür, ölçüme olan güvenimiz artar. Ölçümlerimizden emin olduğumuzda, edindiğimiz bilgilerin devlet tahminlerimizi güncellememiz / değiştirmemiz için yeterince iyi olduğundan eminiz. Yani Kalman kazancı daha yüksek.zkSk

Pk , tahmini durum kovaryansı matrisidir. Bu bize, durumunun "değişkenliğini" gösterir . Eğer büyüktür , devlet çok değiştirmek tahmin ediliyor demektir. Dolayısıyla tahminlerinizi yeni ölçümlerle değiştirebilmeniz gerekir. Sonuç olarak, Kalman kazancı daha yüksektir.xkPk

Tersine, eğer küçükse, o zaman durumunuzun o kadar fazla değişmediğini biliyorsunuzdur, bu nedenle tahminlerinizi her zaman çok fazla değiştirmek istemezsiniz. @ Jav_Rock'ın cevabı, , o zaman olduğunu söylüyor . Başka bir deyişle, durumunuzun artık değişmediğini düşünüyorsanız, tahmininizi değiştirmeye çalışmadığınızı belirtti.PkPk0K0


2

Jav_Rock anladı. Yazdığınız Aslında eğer böyleKk

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

kesimin payı, modelden yayılan belirsizliği, ise ölçümden gelen belirsizliği ifade eder. Böylece, fraksiyonun değeri, Jav_Rock tarafından açıklandığı gibi, ölçüme ne kadar güvenmemiz gerektiği anlamına gelir.Rk

Gelince biz, güncelleme değil gözlem istediğiniz halidir çünkü, bu sadece, devlete gözlem geri dönüşümü.Hk

, kazanç , gözlemden ne kadar düzeltme almamız gerektiğini hesaplar ve gözlem düzeltmesini, devlet tahmininin güncellenmesine yol açan durum düzeltmesine geri dönüştürür:Kk

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


-1

Kalman Filtre (KF) algoritması üzerinde çalışıyorum. Kalman kazancının algoritmanın zamanla yakınsaması ile ilgilendiğini, yani algoritmanın artıkları ne kadar hızlı düzelttiğini ve en aza indirdiğini gözlemledim.

Denklemle gelince, ilk bir kalman kazanç değeri seçin ve bu değeri yaklaşık bir değer verecek şekilde düşükten yükseğe doğru değiştirir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.