Kalman Filter

23
KALMAN FILTER 2.9 Filter Digital Filter digital adalah semua filter elektronik yang bekerja dengan menerapkan operasi matematika digital atau algoritma pada suatu pemrosesan sinyal. Salah satu batasan utama pada filter digital adalah dalam hal keterbatasan kecepatan pemrosesan/waktu komputasi yang sangat tergantung dengan kemampuan mikrokontroler atau komputer yang digunakan. 2.10 State of the art Kalman Filter Kalman filter banyak digunakan dalam berbagai aplikasi. Fungsi dari kalman filter itu sendiri adalah sebagai estimator yang handal dalam berbagai sistem yang digunakan. Modelnya yang sederhana sehingga mudah diterapkan dalam berbagai sistem. Dengan memperhitungkan noise yang diestimasi pada seluruh cangkupan frekuensi, sehingga kalman filter langsung dapat digunakan sebagai estimator tanpa perlu memperhitungkan noise yang terjadi pada sistem secara detail terlebih dahulu. Kalman filter dapat digunakan untuk mengestimasi sistem yang linear. Dalam perkembangannya, untuk sistem yang lebih kompleks dengan persamaan matematis yang linier, kalman filterr dimodifikasi agar dapat mengestimasi sistem yang non linier, modifikasi kalman filter ini ada yang dinamakan extended kalman filter (EKF), franctional kalman filter (FKF), dan juga uncented kalman filter (UCF). Berbagai aplikasi kalman filter dapat diterapkan dalam berbagai sistem. Ditahun 2003 John Valasek dan Wei Chan,

description

kalman

Transcript of Kalman Filter

Page 1: Kalman Filter

KALMAN FILTER

2.9 Filter Digital

Filter digital adalah semua filter elektronik yang bekerja dengan menerapkan operasi

matematika digital atau algoritma pada suatu pemrosesan sinyal. Salah satu batasan utama

pada filter digital adalah dalam hal keterbatasan kecepatan pemrosesan/waktu komputasi

yang sangat tergantung dengan kemampuan mikrokontroler atau komputer yang digunakan.

2.10 State of the art Kalman Filter

Kalman filter banyak digunakan dalam berbagai aplikasi. Fungsi dari kalman filter itu

sendiri adalah sebagai estimator yang handal dalam berbagai sistem yang digunakan.

Modelnya yang sederhana sehingga mudah diterapkan dalam berbagai sistem. Dengan

memperhitungkan noise yang diestimasi pada seluruh cangkupan frekuensi, sehingga kalman

filter langsung dapat digunakan sebagai estimator tanpa perlu memperhitungkan noise yang

terjadi pada sistem secara detail terlebih dahulu. Kalman filter dapat digunakan untuk

mengestimasi sistem yang linear. Dalam perkembangannya, untuk sistem yang lebih

kompleks dengan persamaan matematis yang linier, kalman filterr dimodifikasi agar dapat

mengestimasi sistem yang non linier, modifikasi kalman filter ini ada yang dinamakan

extended kalman filter (EKF), franctional kalman filter (FKF), dan juga uncented kalman

filter (UCF).

Berbagai aplikasi kalman filter dapat diterapkan dalam berbagai sistem. Ditahun 2003

John Valasek dan Wei Chan, menggunakan observer kalman filter untuk mengidentifikasi

secara online sistem pesawat. Masalah sistem identifikasi online muncul dari keakurasian,

locally linier, serta model dinamik pesawat dari nonlinier pesawat. Metode identifikasi kalma

ini cocok untuk mengidentifikasi secara online sistem pesawat dari model pesawat locally

linier dan secara umum cukup intensif mengendalikan intensitas white noise sensor Gaussian

dan untuk menyalakan intensitas hembusan diskrit.

Di tahun yang sama, Zhuang Xu dan M.F.Rahman menggunakan extended kalman

filter(EKF) untuk mengestimasi kecepatan rotor pada saat kecepatan yang sangat rendah.

Untuk dapat mengestimasi pada kecepatan yang sangat rendah diperlukan sensitivitas yang

tinggi dari estimator untuk model nonlinier, gangguan dan model parameter detuning. Telah

dilakukan riset mengenai prinsip dari direct torque control (DTC) diimplementasikan pada

Page 2: Kalman Filter

interior permanent magnet(IPM). Ditahun sebelumnya telah dilakukan riset mengenai IPM

namun belum dapat mengestimasi kecepatan rotor pada saat kecepatan yang sangat rendah.

Di tahun 2003 juga kalman filter dipakai oleh D. Loebis,R. Sutton, J. Chudley, dan

W. Naeem untuk melakukan riset mengenai penerapan sistem navigasi cerdas, didasarkan

pada penggunaan yang terintegrasi dari global positioning sistem(GPS) dan beberapa sistem

navigasi inersia (inertia system navigation/INS) sensor, untuk aplikasi kendaraan otonom

dibawah air(AUV). Dalam riset SKF dan EKF digunakan untuk memadukan data dari sensor

INS dan untuk mengintegrasikannya dengan data GPS. Selain itu juga digunakan teknik

logika fuzzy untuk adaptasi dari asumsi statistic awal dari keduanya(SKF dan EKF),

disebabkan oleh kemungkinan perubahan karakteristik noise sensor. Setelah itu dilakukan

estimasi, perbaikan estimasi dari SKF dan EKF dan meningkatkan akurasi keseluruhan dari

integrasi GPS.

Pada tahun 2004, Pratap R, melakukan penelitian mengenai extended kalman filter

yang digunakan untuk menyaring masuknya noise ke dalam reactor biologis, penelitian

dilakukan karena mikroba yang ada dalam reactor biologis bisa terpengaruh oleh noise

apabila noise ini tidak difilter. Noise ini disebabkan oleh dua sumber yang mempengaruhi

kinerja yaitu noise pengukuran dari sinyal sensor(pH, suhu, kecepatan agitasi, laju aliran, dan

lain-lainya) dan noise dari lingkungan. Peneliti sebelumnya dilakukan oleh M. L. Shuler dan

G. Liden menunjukan bahwa kompleksitas dan efek Ph berpotensi berbahaya pada perilaku

mikroba, karena efek ekonomis, kinetic, maupun benefit. Dari hasil riset EKF telah terbukti

dapat menyelamatkan osilasi periodic yang stabil yang telah terdistorsi oleh noise, serta EKF

telah terbukti efektif dalam menyaring noise dari aliran tersebut bahwa sekitar osilasi beban

noise dapat dipulihkan.

Di tahun 2005, Kalman filter digunakan untuk mengestimasi suhu internal, dengan

menggunakan kalman filter, diterapkan pada sistm hibrida linier oleh L. Boillereaux, H.

Fibrianto, dan J. M. Flaus. Metode ini diterapkan karena keterbatasan penggunaan sensor

invasive, sehingga untuk memperkirakan suhu internal dari makanan dapat diperoleh dengan

pengukuran di permukaan.

Setahun kemudian, Jose dan Wan Yu membandingkan algoritma pembelajaran

normal dengan kalman filter untuk mengidentifikasi sistem non linier dimana modifikasi

dead-zone robust diterapkan pada kalman filter. Kalman filter diterapkan untuk melatih state

spae jaringan saraf tiruan berulang untuk identifikasi sistem nonlinier. Diman riset serupa

telah dilakukan pada tahun-tahun sebelumnya yaitu mengenai analisa konvergensi neural

network, beberapa teknik modifikasi robust pada algoritma least square, analisa kestabilan

Page 3: Kalman Filter

dan lain-lainya. Dari hasil penelitian algoritma kalman filter memiliki beberapa sifat lebih

baik, seperti konvergensi yang lebih cepat, meskipun algoritma ini lebih kompleks dan

sensitive terhadap sifat noise. Serta metode Lyapunov yang digunakan untuk membuktikan

bahwa pelatihan kalman filter stabil.

Tahun 2007 Mickael Hilairet, Francois Auger, dan Eric Berthelot memodifikasi

kalman filter, yang digunakan untuk mengestimasi fluks rotor dan kecepatan pada motor

induksi. Estimasi ini diperlukan untuk menentukan kecepatan dan posisi rotor dari tegangan

dan arus stator apabila tanpa menggunakan sensor kecepatan dan sensor posisi. Estimator

kalman filter modifikasi ini dapat mengurangi jmlah aritmatika sampai 25% daripada

menggunakan kalman filter biasa. Serta estimator ini memperbolehkan sampling rate yang

lebih tinggi menggunakan sebuah mikrokontroler yang lebih murah.

Tahun 2008 X. Luoa , I, M, Moroz, memodifikasi skema ensemble kalman

filter(EnKF) menggunakan konsep uncented transform yang merupakan sebuah konsep

metode baru untuk transformasi nonlinier dari mean dank ovarian dalam filter dan estimator.

Hal ini disebabkan oleh adanya eror distribusi analisa simetri( tidak membutuhkan Gaussian)

apabila menggunakan EnKF biasa menghasilkan estimasi yang kurang akurat. Metode EnKF

ini terbukti dapat memberikan estimasi yang akurat.

Murat Barut pada tahun 2009 juga menerapkan extended kalman filter pada

penelitiannya. Tujuan penelitiannya yaitu mengestimasi secara online masalah yang berkaitan

dengan ketidakpastian dalam stator rotor dan resistensi melekat dengan control sensorless

dengan efisiensi motor induksi(IM) yang tinggi dalam rentang kecepatan yang luas serta

memperluas jumlah state yang terbatas dan estimasi parameter menggunakan algoritma

extended kalman filter tunggal dengan eksekusi berturut-turut dari dua input yang beasal dari

dua model IM berdasarkan resistansi stator dan estimator resistanso rotor. Penelitian

dilakukan karena adanya ketidakpastian estimasi state parameter elektrik dan mekanik dari

motor induksi serta suhu dan frekuensi bergantung pada variansi resistansi rotor dan stator

yang terdapat diseluruh bagian penting dari ketidakpastian elektrik dalam sebuah motor

induksi selama torsi beban dan friksi menentukan mekanik utamanya.

Pada tahun 2011 dilakukan uji keakurasian tracking dan teknik estimasi untuk

besaran, frekuensi dan fasa tegangan kedipan(flicker) menggunakan kalman filter, dilakukan

oleh H. M. AL-Hamadi, dimana menggunakan extended state space untuk mengestimasi

parameter. Dengan menggunakan algoritma kalman filter, konvergensi dari estimasi

parameter yang didapat, nilai parameter estimasinya sangat dekat dengan nilai aslinya.

Page 4: Kalman Filter

Secara umum, kalman filter banyak digunakan sebagai estimator dalam berbagai

permasalahan, karena kalman filter sendiri memiliki keunggulan yaitu kemampuannya

mengestimasi state pada waktu lampau, sekarang, maupun diwaktu mendatang, bahkan ketika

karakteristik spesifik dari model yang akan diestimasi tidak diketahui.

2.10.1 Algoritma Kalman Filter

Kalman filter merupakan sebuah filter yang efisien dan mengestimasi state pada

linear dynamic system dari rentetan pengukuran noise. Disebut recursive sebab untuk

menghitung state estimasi saat ini,hanya membutuhkan sata state estimasi satu waktu

sebelumnya dan data pengukuran saat ini. Teknik filter ini dinamakan berdasarkan

penemunya, Rudolf E. Kalman. Kalman filter sangat berguna terutama dalam navigasi dan

lingkungan dengan Gaussian noise. Pada teori terkendali, kalman filter merupakan sebuah

algoritma atau kumpulan persamaan matematika yang menghasilkan sebuah perhitungan

yang efisien untuk mengestimasi state dari proses, dengan tujuan meminalkan noise atau

variansi terhadap referensi lain. Filter ini sangat bagus dalam beberapa aspek: mendukung

estimasi state sebelumnya,saat ini dan berikutnya. Bahkan hal ini tetap dapat dilakukan

meskipun model sistem yang sebenarnya tidak diketahu. Kalman filter disebut juga sebuah

estimator stokastik yang optimal.

Kalman Filter (KF) adalah suatu metode estimasi variabel keadaan dari sistem

dinamik stokastik linear diskrit yang meminimumkan kovariansi error estimasi. Metode KF

pertama kali diperkenalkan oleh Rudolph E. Kalman pada tahun 1960 lewat papernya yang

terkenal tentang suatu penyelesaian rekursif pada masalah filtering data diskrit yang linear

(Welch & Bishop, 2006). KF merupakan suatu pendekatan teknis untuk menaksir fungsi

parameter dalam peramalan deret berkala (time series). Keunggulan metode KF adalah

kemampuannya dalam mengestimasi suatu keadaan berdasarkan data yang minim. Data

minim yang dimaksud adalah data pengukuran (alat ukur) karena KF merupakan suatu

metode yang menggabungkan model dan pengukuran. Data pengukuran terbaru menjadi

bagian penting dari algoritma KF karena data mutakhir akan berguna untuk mengoreksi hasil

prediksi, sehingga hasil estimasinya selalu mendekati kondisi yang sebenarnya (Masduqi,

2008).

Bentuk umum dinamika stokastik linier diskrit adalah:

Xk+1 = AkXk + Bk Uk + Wk (2.1)

Page 5: Kalman Filter

Dengan pengukuran Zk ∈ ƦP yang memenuhi

Zk = HkXk + Vk (2.2)

X0 N (X0 , Px0); Wk N(0, Qk); Vk N (0,Rk)

(2.3 )

Dengan :

X0 = inisial dari sistem,

Xk+1 = variable keadaan pada waktu k+1 dan berdimensi,

Xk = variable keadaan pada waktu k yang nilai estimasi awalnya X0 dan

kovariansi awal Px0, Xk ∈Rn

Uk = vector masukan deteministik,pada waktu k,Uk ∈Rn

Wk = noise pada sistem dengan mean Wk = 0 dengan kovariansi Qk,

Zk = variabel pengukuran Zk ∈Rp

Vk = noise pada pengukuran dengan mean Vk = 0 dengan kovariansi Rk

Ak,Bk,Hk = matriks-matriks dengan nilai elemen-elemennya adalah koefisien

variabel masing-masing.

Variabel Wk N(0, Qk) dan Vk N (0,Rk) ini diasumsikan white

(berdistribusi normal dengan mean 0), tidak berkorelasi satu sama lain maupun dengan nilai

estimasi awal X0 Proses estimasi KF dilakukan dengan dua tahapan, yaitu dengan cara

memprediksi variabel keadaan berdasarkan sistem dinamik yang disebut tahap prediksi (time

update) dan selanjutnya tahap koreksi (measurement update) terhadap data-data pengukuran

untuk memperbaiki hasil estimasi.Tahap prediksi dipengaruhi oleh dinamika sistem dengan

memprediksi variabel keadaan dengan menggunakan persamaan estimasi variabel keadaan

dan tingkat akurasinya dihitung menggunakan persamaan kovariansi error. Pada tahap

koreksi hasil estimasi variabel keadaan yang diperoleh pada tahap prediksi dikoreksi

menggunakan model pengukuran. Salah satu bagian dari tahap ini yaitu menentukan matriks

Kalman Gain yang digunakan untuk meminimumkan kovariansi error. Tahap prediksi dan

koreksi dilakukan secara rekursif dengan cara meminimumkan kovariansi error estimasi (Xk

– Xk),Xk

Pada sistem navigasi,kalman filter yang digunakan adalah kalman filter diskrit.

Kalman filter yang mengestimasi proses dengan menggunakan bentuk pengendali feedback :

Page 6: Kalman Filter

filter mengestimasi state proses pada beberapa waktu dan kemudian mendapatkan umpan

balik(feedback) dalam benk pengukuran(noise). Oleh karena itu, persamaan kalman filter

dibagi menjadi dua kelompok yaitu persamaan time update dan persamaan measurement

update. Time update dapat disebut juga sebagai proses predict,yaitu menggunakan estimasi

state dari satu waktu sebelumnya untuk mendapatkan sebuah estimasi state pada saat ini.

Sedangkan measurement update disebut juga sebagai proses correct, yaitu informasi

pengukuran pada saat ini digunakan untuk memperbaiki prediksi, dengan harapan akan

didapatkan state estimasi yang lebih akurat. Sehingga dalam aplikasinya, algoritma kalman

filter akan menggunakan proses berulang dari predict dan correct. Seperti yang dilihat pada

gambar 2.8 dibawah ini

Gambar 2.8 Perputaran Algoritma Kalman Filter

Berikut ini adalah persamaan predict dan correct dalam kalman filter:

Tabel 2.1 Algoritma Kalman Filter

Model Sistem dan Model Pengukuran

Xk+1 = AkXk + Bk Uk + Wk

Zk = HkXk + Vk

X0 N (X0 , Px0); Wk N(0, Qk); Vk N (0,Rk)

Inisialisasi

X0 = X0, P0 =Pxo

Tahap Prediksi

Estimasi: Xk+1 = Ak X + Bk Uk

Kovariansi error : Pk+1 = Ak Pk ATk + Qk

Tahap Koreksi

Measurement Update (Correct)

Time Update(Predict)

Page 7: Kalman Filter

Kalman Gain : Kk+1 = Pk+1 HTk +1(Hk+1 Pk+1 HT

k +1 + Rk+1)-1

Estimasi : Xk+1 = Xk+1 + Kk+1(Zk+1-Hk+1 Xk+1)

Kovariansi error : Pk+1 = [ I - Kk+1Hk+1] Pk+1

Pada table 2.1 menunjukkan algoritma KF yang terdiri dari empat bagian, diantaranya bagian

pertama mendefinisikan model sistem dan model pengukuran, bagian kedua merupakan nilai

awal (inisialisasi), selanjutnya ketiga dan keempat masing-masing tahap prediksi dan koreksi

(Purnomo, 2008).

Kalman filter banyak digunakan dalam berbagai aplikasi. Fungsi dari kalman filter

itu sendiri adalah sebagai estimator yang handal dalam berbagai sistem yang

digunakan.Modelnya yang sederhana sehingga mudah diterapkan dalam berbagai sistem.

Dengan memperhitungkan white noise yang merupakan noise yang diestimasi pada seluruh

cangkupan frekuensi,sehingga klman filter langsung dapat digunakan sebagai estimator tanpa

perlu menghitung noise yang terjadi pada sistem secara detail terlebih dahulu. Kalman filter

dapat digunakan untuk mengestimasi sistem yang linier. Dalam perkembangannya untuk

sistem yang lebih kompleks dengan persamaan matematis yang linier,kalman filter

dimodifikasi agar dapat mengestimasi sistem yang non linier,modifikasi kalman filter ini ada

yang dinamakan extended kalman filter(EKF),fractional kalman filter(FKF)dan uncented

kalman filter (UKF).

2.10.1.1 Extended Kalman Filter(EKF)

Extended Kalman Filter dapat digunakan untuk sistem yang tak linier dan juga

kontinu. Dalam Extended Kalman Filter sistem semacam ini perlu dilinierisasi (apabila

sistem tidak linier), pendiskritan sistem (apabila sistem kontinu), dan beberapa tahapan lain.

Algoritma Kalman Filter dikembangkan untuk nilai estimasi dalam bentuk rekursif dari

model linear. Namun demikian, dalam kenyataannya banyak model yang berbentuk

nonlinear. Metode Extended Kalman Filter (EKF) adalah salah satu metode estimasi yang

dikembangkan untuk menyelesaikan model nonlinear.

xk = ƒ(xk-1,uk-1,wk-1) (2.4)

dengan persamaan measurement yang dipelihatkan

Page 8: Kalman Filter

zk = h (xk,vk) (2.5)

dimana ƒ(.) adalah persamaan nonlinier yang menghubungkan state waktu

sebelumnya,process noise dan input dengan state waktu sekarang. Pada persaan

measurement, h(.) adalah persamaan nonlinier yang menghubungkan state sekarang dan mea

surement noise dengan hasil pengukuran. Estimasi untuk mendapatkan state xk, dilakukan

dengan menggunakan (2.6) dan (2.7)

xk = ƒ (xk-1,uk-1,wk-1) (2.6)

zk = h (xk,vk) (2.7)

Untuk persamaan eksplisit estimasi state pada(2.4), pertama persamaan (2.6) dan (2.7) harus

dilinierisasi. Linierisasi ini dilakukan menggunakan deret Taylor disekitar titik kerja yaitu

Wk = 0 dan Vk = 0. Asumsi ini digunakan karena nilai noise yang terjadi pada proses dan

pada pengukuran tidak dapat dihitung. Estimasi dilakukan dengan menganggap noise-noise

tersebut bernilai nol. Dengan demikian, persamaan sistem berubah menjadi (2.8) dan (2.9)

xk ≈ ƒ (xk-1,uk-1,0) + F (xk-1,uk-1,0) + Wwk (2.8)

zk ≈ h (xk,0) + H (xk,0) +Vvk (2.9)

dimana

F[ i,j ] = ∂ ƒ[ i ]∂ x [ j] (xk-1,uk-1,0)

W[ i,j ] = ∂ ƒ[ i ]∂ x [ j] (xk-1,uk-1,0)

H[ i,j ] = ∂ H [i ]∂ w [ j] (xk,0)

V[ i,j ] = ∂ H [i ]∂ v [ j ] (xk,0)

Berikutnya dengan mendefinisikan measurement residual sebagai (2.10) dan memperhatikan

persamaan a-priori state error, didapat persamaan error proses seperti pada (2.11) dan (2.12)

ezk = zk – zk (2.10)

Page 9: Kalman Filter

exk ≈ A (xk-1 – xk-1) + ε k (2.11)

ezk ≈Hexk + ɳk (2.12)

Pada (2.11) dan (2.12), terdapat du variable yaitu ε k dan ɳk. Variabel-variabel ini adalah

variable acak baru yang memiliki mean nol dan matriks kovarians masing-masing WQWT

dan VRVT. Variabel-variabel acak pada (2.10) sampai (2.12) memiliki karakteristik :

p( exk ) N ¿exk exkT])

p(ε k ) N ¿ WQkWT])

p(ɳk) N ¿ VRkVT])

Selanjutnya, akan dicari estimasi dari exk dengan menggunakan kalman filter hipotesis. Hasil

estimasi ini dinamakan ek dan akan digunakan untuk mendapatkan a-posteriori state estimate

berdasarkan (2.13)

xk = xk + ek (2.13)

Dengan memperhatikan karakteristik exk , ek, dan ɳk, men-set nilai prediksi ek menjadi nol, dan

mempertimbangkan data ezk didapatlah persamaan kalman filter hipotesis untuk memperoleh

nilai ek pada (2.14)

ek = Kk ezk (2.14)

Mensubsitusikan (2.13) dan (2.14) dan mempertimbangkan persamaan measurement residual,

didapat (2.15)

xk = xk + Kk ( zk – zk) (2.15)

Pada (2.15) adalah persamaan state estimate update untuk sistem nonlinier. Persamaan-

persamaan yang digunakan dalam algoritma Extended Kalman Filter kemudian adalah sesuai

yang tertera pada table 2.1. Persamaan- persamaan ini diperoleh dari persamaan Kalman

Filter dengan beberapa penyesuaian.

Tabel 2.2 Persamaan – Persamaan Extended Kalman Filter

Time Update (“ Prediction”) Equations

xk = ƒ (xk-1,uk-1,wk-1)

Page 10: Kalman Filter

Pk = FPkFT + WQWT

Measurement Update(“Correction”) Equations

Kk = PkHT [HPkHT + VRVT] -1

xk = xk + Kk ( zk – h (xk,0))

Pk = ( I – Kk H) Pk

2.10.1.2 Ensemble Kalman Filter

Metode Ensemble Kalman Filter (EnkF) adalah metode estimasi modifikasi dari algoritma

kalman filter yang dapat digunakan untuk mengestimasi model sistem linier maupun

nonlinier. Metode EnKF pertama kali dikembangkan oleh G. Evensen (1992-1993) pada saat

mencoba mengimplementasikan metode EKF untuk asimilasi data pada suatu model.

Linieritas dalam metode EKF ternyata menyebabkan kovariansi errornya membesar menuju

tak terhingga. Selanjutnya G. Evensen (1994) telah memperkenalkan ide penggunaan

sejumlah ensemble untuk mengestmasi kovariansi error pada tahap forcasting pada masalah

yang sama ( Evensen 1994, dalam purnomo 2008).

Proses estimasi pada EnKF diawali dengan membangkitkan sejmlah Nε ensemble dengan

mean 0 dan kovariansi konstan. Ensemble yang dibangkitkan dilakukan secara random dan

berdistribusi normal. Berdasarkan eksperimen, pada umumnya jumlah anggota ensemble

yang mencangkup adalah 100-500 (Evensen 2003, dalam purnomo 2008).

Secara umum algoritma EnKF juga terdiri dari dua tahap yaitu tahap prediksi (time update)

dan tahap koreksi (measurement update). Pada metode EnKF terlebih dahulu dihitung mean

ensemble-nya sebelum masuk ke tahap prediksi yaitu :

Xk = 1Nε ∑i=1

N

X k,i (2.16)

Dimana Nε adalah banyaknya ensemble yang dibangkitkan dan Xk,i merupakan nilai

ensemble yang dibangkitkan.Bentuk umum sistem dinamik nonlinier pada EnKF adalah :

Xk+1 = ƒ(k,xk) + Wk (2.17)

dengan persamaan pengukuran linear zk ϵ RP yaitu:

Page 11: Kalman Filter

Zk = Hk Xk+Vk (2.18)

x0 N(X0, Px0) ; wk N ¿k); vk N ¿k)

Dengan Xk+1 merupakan variabel keadaan pada waktu k+1 , ƒ(k,xk) merupakan fungsi tak

linear dari XX dan input WK,VK merupakan data pengukuran, merupakan matriks, yang

merupakan representasi hubungan antara data pengukuran dan variabel keadaan,

x0 N (X0, Px0) ; wk N ¿k); vk N ¿k) masing-masing merupakan derau pada sistem yang

berdistribusi Normal Gauss (sistem Gaussian white noise) dan derau pada pengukuran yang

berdistribusi Normal Gauss (measurement Gaussian white noise). Algoritma dari Ensemble

Kalman filter untuk mengestimasi variable keadaan XK adalah (Evensen, 2003).

Misalkan akan dibangkitkan sejumlah Nε ensemble untuk memperoleh nilai rata-rata mean :

X0 = [X0,1 X0,2 … X0,N-1 X0,N] dengan X0,i N (x0,P0)

Selanjutnya diperoleh mean ensemble pada persamaan (2.16).

Xk = 1Nε ∑i=1

N

X k,i

Mean ensemble ini digunakan untuk menghitung estimasi xk pada tahap prediksi (time

update) dan xk pada tahap koreksi (meansurement update). Sedangkan untuk menghitung

kovariansi error Pk pada tahap prediksi menggunakan

Pk = 1

Nε−1 ∑i=1

¿¿ xk,j – xk)(xk,j – xk)T(2.19)

Pada tahap EnKF, noise sistem wk pada tahap prediksi dan noise pengukuran vk pada tahap

koreksi dibangkitkan dalam bentuk ensemble. Perlu diperhatikan bahwa algoritma EnKF

tidak membutuhkan nilai awal kovariansi error. Sedangkan nilai awal x0 dihitung dari rata-

rata ensemble x0,i yang dibangkitkan pada tahap inisialisasi. Demikian juga, noise sistem wk,j

pada tahap prediksi dan noise pengukuran vk,j pada tahap koreksi dibangkitkan dalam bentuk

ensemble (Purnomo 2008). Algoritma EnKF selengkapnya untuk mengestimasi penyelesaian

model (2.17) dan (2.18) dapat diihat pada tabel 2.3

Tabel 2.3 Algoritma Ensembel Kalman Filter (EnKF)

Model Sistem dan Model Pengukuran

Page 12: Kalman Filter

Xk+1 = ƒ(Xk,Uk) + Wk , Wk N (0,Qk)

Zk = HXk+Vk , Vk N(0,Rk)

Inisialisasi

Bangkitkan Nε ensemble sesuai estimasi awal x0

x0,I = [x0,1 x0,2 x0,3 … x0,Nε]

Tentukan nilai awal :

Xk = 1Nε ∑i=1

N

X k,i

Tahap Prediksi

xk,I = ƒ( xk-1,uk-1) + Wk dengan Wk,i N (0,Qk)

Estimasi :

Xk = 1Nε ∑i=1

xk,i

Kovariansi error :

Pk = 1

Nε−1 ∑i=1

¿¿ xk,j – xk)(xk,j – xk)T

Tahap Koreksi

zk,i = zk + vk,i dengan vk,i N ¿k)

Kalman Gain :

Kk = PkHT(HPkHT +Rk)-1

Estimasi :

Estimasi Tahap Koreksi Adalah:

Xk,i = Xk,i + Kk(Zk,i – HXk,i)

Rata-Rata Estimasi Tahap Koreksi Adalah:

Xk = 1Nε ∑i=1

X k,i

Kovariansi Error

Pk = [ I – KkH]Pk

2.10.1.3 Uncented Kalman Filter (UKF)

Uncented Kalman Filter (UKF) merupakan pengembangan baru di lapangan. Idenya adalah

untuk menghasilkan beberapa titik sampling (poin Sigma) sekitar perkiraan kondisi saat

berdasarkan kovarians nya. Kemudian, menyebarkan titik-titik ini melalui peta nonlinier

Page 13: Kalman Filter

untuk mendapatkan estimasi yang lebih akurat dari mean dan kovariansi dari hasil pemetaan.

Uncented Kalman Filter (UKF) diusulkan oleh Julier dan Uhlman.  UKF, yang merupakan

alternatif turunan-bebas untuk EKF. UKF terdiri dari dua langkah yang sama dengan:

perkiraan Model dan Data asimilasi. UKF digunakan untuk mempermudah dalam pendektan

distribusi probabilitas untuk mendekati fungsi nonlinier . UKF adalah metode untuk

menghitung statistik dari variabel acak yang mengalami transformasi nonlinear.

Unscented Kalman Filter adalah pengembangan dari Filter Kalman untuk sistem yang

nonlinear dengan menggunakan teknik Transformasi Unscented. Misalkan diberikan suatu

fungsi kepadatan peluang diskrit yk=f(xk,k) mempunyai variabel random x dari sebuah model

tak linear dengan dimensi L mempunyai mean dan kovarian . Fungsi yk=f(xk,k) didekati

dengan transformasi unscented. Mean dan kovarian tersebut digunakan untuk menentukan

penyebaran 2L+1 titik-titik sigma disekitar x. Titik-titik sigma dalam bentuk vektor sigma

Xz diperoleh dengan menggunakan persamaan berikut:

X0= X (2.20)

Xi = X + ( √ L+ λPx) I , i = 1,…..,L (2.21)

Xi = X + ( √ L+ λPx) I-L , i = L + 1,……..,2L (2.22)

Dengan λ = α2( n + k) – L adalah parameter penskalaan, α adalah sebuah konstanta yang

digunakan untuk menentukan sebaran dari titik sigma disekeliling X , Dimana α selalu bernilai

positif kecil dan k adalah skala penskalaan tambahan, dimana nilai k≥ 0. Nilai yang paling

sering digunakan yaitu k = 0.

Misalkan diberikan variable keadaan :

x=[x1 x2 … xL]T(2.23)

Jika dinyatakan dalam bentuk matriks sigma points bisa dituliskan menjadi :

Xi = [X0 X1 … XL XL+1 XL+2 … X2L]T(2.24)

Karena yk = ƒ(xk), maka penyebaran vector sigma yk adalah :

yi = ƒ (Xi) i = 0,….,2L (2.25)

Pembobotan mean dank ovarian dihitung berdasarkan persamaan :

W0(m) =

λL+ λ (2.26)

W0(c) =

λL+ λ + 1 – α2 +β (2.27)

Page 14: Kalman Filter

Wi = Wi(c) =

12(L+λ) i =1,….,2L (2.28)

Dengan menggunakan titik-titik sigma persamaan (2.22) dan persamaan pembobotan mean-

kovarians pada persamaan (2.28), maka diperoleh mean :

y = ∑0

2 L

¿¿Wi(c) (ƒ (Xi) - y )(ƒ(Xi)-y)T] (2.29)

Secara ringkas algoritma Unscented Kalman Filter dapat dituliskan pada tabel 2.4 sebagai

berikut:

Tabel 2.4 Algoritma Uncented Kalman Filter (UKF)

Inisialisasi

Pada saat k = 0

X0 = E[X0]

Px0 = E[(x0 – x0)( x0 – x0)T]

xα0 = E[xα] = E [x0

T 0 0]T

Pα0 = E[(x

α0 – x0) (x

α0 – x0)T] =

Px 0 00 Pw 00 0 Pv

Untuk k=1,2,3,…,N

Hitung titik sigma

Xαk-1 = [ Xα

k-1 Xαk-1 + γ √Pk-1 Xα

k-1 - γ √Pk-1 ]

Dengan γ = √ L+ λ dan λ = α 2( L+ k) – L

Tahap Prediksi (time update)

X KX

| K-1 = ƒ( X K−1X ,X K−1

w )

Page 15: Kalman Filter

xk = ∑i=0

2 L

¿¿ Wi (m)X i , k∨k−1X ]

Pxk = ∑i=0

2 L

¿¿ Wi(c) (X i , k∨k−1

X − xk ¿( X i ,k∨k−1X − xk )T + Qk]

Zk∨k−1❑ = H ( X K−1

X ,X K−1v )

Zk = ∑i=0

2 L

¿¿ Wi(m)Zi , k∨k−1

❑ ¿

Tahap Koreksi (Measurement update)

Pzk,zk = ∑i=0

2 L

¿¿ Wi(c) (Zi , k∨k−1

❑ −zk ¿(Z i ,k∨k−1❑ −zk )T + Rk]

Pxk,zk = ∑i=0

2 L

¿¿ Wi(c) (X i , k∨k−1

❑ − xk ¿(Z i ,k∨k−1❑ −zk )T ]

Kk = Pxk,zkP zk , zk−1

xk = xk + Kk(zk-zk)

Pxk = P xk−¿ ¿ - Kk PzkK k

T

Dengan Qk adalah kov.error proses dan Rk adalah kov.error pengukuran

2.10.1.4 Fractional Kalman Filter (FKF)

Kalman Filter merupakan vektor state estimator optimal menggunakan sistem model , input

dan sinyal output ( Kalman 1960) . Hasil estimasi yang diperoleh dengan meminimalkan

langkah dalam panggilan Fungsi sekarang ( Schutter et al., 1999 ).

xk = arg min [ (xk – x)pk−1(xk-x)T + (yk –Cx) Rk−1(yk –Cx)T] (2.30)

Page 16: Kalman Filter

dimana:xk = E [ xk|zk-1 ] (2.31)

adalah prediksi state vektor pada waktu sekarang k , xk didefinisikan sebagai variabel acak

dan dikondisikan pada pengukuran aliran zk−1 (Brown & Hwang 1997).

xk = E [ xk|zk ] (2.32)

adalah prediksi state vektor pada waktu sekarang k , xk didefinisikan sebagai variabel acak

dan dikondisikan pada pengukuran aliran zk.

Pengukuran zk. mengandung nilai nilai pengukuran keluaran y0,y1,…,yk dan sinyal input u0,u1,…,uk.

Pk= E [(xk – xk) (xk – xk)T] (2.33)

adalah prediksi estimasi error matriks kovarians

Rk = E [vkvkT ] (2.34)

adalah matriks kovarians dari noise output di vk

Qk=E [wk w kT ] (2.35)

adalah matriks kovarians dari sistem noise di wk

Pk = E [(xk –xk) (xk –xk)T] (2.36)

adalah estimasi kesalahan matriks kovariansi

*Semua dari matriks-matriks diasumsikan simetris