KALMAN FILTER2.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 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 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.
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)
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 : 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)
Time Update(Predic
t)
Measurement Update
(Correct)
Inisialisasi
X0 = X0, P0 =Pxo
Tahap Prediksi
Estimasi: Xk+1 = Ak X + Bk Uk
Kovariansi error : Pk+1 = Ak Pk ATk + Qk
Tahap Koreksi
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
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)
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)
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
NXk,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:
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
NXk,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
Nε¿¿ 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
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
NXk,i
Tahap Prediksi
xk,I = ƒ( xk-1,uk-1) + Wk dengan Wk,i N(0,Qk)
Estimasi :
Xk = 1Nε∑i=1
Nεxk,i
Kovariansi error :
Pk = 1
Nε−1 ∑i=1
Nε¿¿ 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
NεXk,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 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)
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
2L¿¿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)
XKX
| K-1 = ƒ( XK−1X ,XK−1
w )
xk = ∑i=0
2L¿¿ Wi (m)Xi,k∨k−1
X ]
Pxk = ∑i=0
2L¿¿ Wi
(c) (Xi,k∨k−1X −xk ¿(Xi,k∨k−1
X −xk)T + Qk]
Zk∨k−1❑ = H ( XK−1
X ,XK−1v )
Zk = ∑i=0
2L¿¿ Wi
(m)Zi,k∨k−1❑ ¿
Tahap Koreksi (Measurement update)
Pzk,zk = ∑i=0
2L¿¿ Wi
(c) (Zi,k∨k−1❑ −zk¿(Zi,k∨k−1
❑ −zk )T + Rk]
Pxk,zk = ∑i=0
2L¿¿ Wi
(c) (Xi,k∨k−1❑ −xk ¿(Zi,k∨k−1
❑ −zk)T ]
Kk = Pxk,zkPzk,zk−1
xk = xk + Kk(zk-zk)
Pxk = Pxk−¿¿ - Kk PzkKk
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)
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
Top Related