Kalman Filter: Ketika Noise tak lagi Putih


Kalman filter yang saya jelaskan sebelumnya itu diasumsikan noise-nya adalah white noise. Lalu bagaimana jika ternyata bukan white noise? Kalau kita tahu bandwidth si noise-nya, sebaiknya kita masukan juga informasi ini ke dalam desain. Memang sih dengan asumsi white noise berarti semua macam noise bisa diaplikasikan, tetapi hasilnya tidak akan sebagus kalman filter yang khusus untuk noise pada bandwidth itu. Analoginya seperti 2 gitaris bermain lagu jazz, yang satu pemain all-around yang satu khusus pemain jazz. Pasti performanya lebih bagus yang khusus pemain jazz donk.

Jadi, inilah caranya membuat kalman filter kalau noise-nya tak lagi putih (siap-siap alis berkerut, soalnya persamaannya jadi agak njlimet, atau bahasa jawanya “this is going to get ugly”): 

Dimulai dari state space si plant:

Kita tahu bahwa gangguan w dan v memiliki karakteristik frekuensi tertentu, dan bisa dituliskan dengan state space:

dengan w1 dan v1 adalah input unity white noise (spectral density-nya: Sw1 = Sv1 = 1). Lalu kita gabungkan model dari noise ini ke dalam plant. Supaya tidak pusing, kita masukkan satu persatu. Pertama kita masukan model untuk gangguan w, state space totalnya menjadi:

Sekarang plant kita memiliki input gangguan w1 yang berupa white noise. Lalu, kita masukkan model noise v. Jadi state space plant kita:

Sekarang plant kita jadi noise-nya semua adalah white noise (w1 dan v1). Karena kita memasukkan model noise v ke dalam plant, jadinya sekarang noise kita itu tidak muncul di persamaan output. Maka kalman gainnya tidak bisa dicari dengan metode yang sama seperti biasa. Kita harus modifikasi caranya menjadi seperti ini:

Pertama, buat matrix-matrix ini:

Ingat bahwa w1 dan v1 adalah unity white noise, jadi Sw1 dan Sv1 = 1. Lalu kita cari Q dari persamaan Ricatti:

untuk dapatkan kalman gain L:

Dan kalman estimatornya menjadi:

Rasanya ada yang aneh ya dengan persamaan di atas. Hasil estimasi yang kita inginkan itu ada di xg. Jadi cara mendapatkan xg adalah mengintegral persamaan di atas, lalu dikurangi dengan Lm. Kalau digambarkan dalam diagram blok jadinya seperti ini:

Bingung kan? Wakakakak. Kita ke contoh deh sekarang:

Contoh

Kita pakai contoh untuk kalman filter yang sebelumnya, tetapi kita masukkan model gangguan w dan noise v:

Ikuti prosedur di atas, hasil simulasinya (dengan input gangguan w sinusiodal 0.5 Hz dan noise v sinusoidal 30 Hz) seperti ini:

Terlihat kan, dengan pengukuran sensor yang kotor dengan sinus itu kalman filter bisa menghasilkan estimasi yang bagus.

Referensi:

Burl, Jeffrey B. 1999. Linear Optimal Control: H2 and H∞ Methods. Menlo Park CA: Addison Wesley Longman.

 

About Junot D. Ojong

Author is a control systems engineer at a private company in Jakarta.
This entry was posted in Ah, teori! and tagged , , , , , , , , . Bookmark the permalink.

3 Responses to Kalman Filter: Ketika Noise tak lagi Putih

  1. eko says:

    mas…apakah filter kalman juga dapat mencari parameter yang tidak kita ketahui…maksudnya jika kita mengukur parameter dari sebuah generator, tentunya terdapat beberapa parameter yang tidak kita dapatkan karena kekurangan peralatan, jadi apakah dengan menggunakan filter kalman parameter yg tidak kita ketahui tadi dapat kita dapatkan…??
    kalau bisa, bagaimana cara kerjanya mas,..??saya sangat mohon bantuannya mas…T.T

    • Maaf nih, mas, saya lama balasnya. Sambil cari2 juga, tetapi belum bisa menemukan. Saya belum pernah menemukan kalman filter untuk modelling parameter. Maklum saya hanya belajar pengantar untuk kalman filter saja. Maaf tidak bisa membantu. Mungkin kalau mas sudah menemukan caranya, bisa dishare di sini. Terima kasih.

  2. eko says:

    maaf mas…bisa nggak saya mintak turunan rumus estimasi kalman filter yang lengkap mas…klo boleh tolong kirim ke email saya ya mas

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s