MINIMUM VARIANS UNTUK SISTEM MULTI INPUT MULTI OUTPUT (MIMO) Erwin Susanto Departemen Teknik Elektro, ITB Email:
[email protected] ABSTRACT This paper will describe variance minimum algorithm that will be implemented on multi input multi output system (MIMO). Considering on system and measurement noises, it can be overcome with Kalman Filter estimation for system identification. Simulation result shows that variance minimum algorithm is suitable for tracking process of periodic changing input with mean square error is about 6.78%. Keywords: MIMO, identification, minimum variance INTISARI Makalah ini akan menjelaskan minimum variansi yang diimplementasikan pada sistem dengan multi masukan multi keluaran (MIMO). Pertimbangan noise sistem dan noise pengukuran di atasi dengan estimasi filter kalman untuk identifikasi sistem. Hasil simulasi untuk satu relasi masukan keluaran menunjukkan kendali variansi minimum dapat diimplementasikan untuk proses tracking terhadap masukan yang berubah secara periodik dengan error kuadrat rata-rata 6.78% Kata kunci : multi masukan multi keluaran, identifikasi, variansi minimum
PENDAHULUAN Pertama kali, variansi minimum merupakan algoritma yang didesain untuk aplikasi kendali swatala (self tuning controler), yang pendekatannya diadopsi dari desain kendali prediktif berbasis model. Tahapan pembentukan model dan desain kendalinya dapat dijelaskan berikut ini: Model Sistem dengan Variansi Minimum Suatu sistem input-output dapat dituliskan dalam model ARMAX, sebagai berikut:
( )
( )
A q −1 y (t ) = q − k B q −1 u (t )
(1)
Jika masing-masing polynomial A dan B berikut ini:
( ) ∑a q
A q −1 =
na
i
−i
i =1
( )
B q −1 = b0 +
(2) nb
∑ bi q −i i =1
(3)
Maka pers.(1) dapat dituliskan lagi menjadi: na nb ⎛ ⎞ ⎛ ⎞ ⎜1 + a i q −i ⎟ y (t ) = q − k ⎜ b0 + bi q −i ⎟u (t ) ⎜ ⎟ ⎜ ⎟ i =1 ⎝ i =1 ⎠ ⎝ ⎠
∑
∑
(4)
atau na ⎛ ⎞ ⎛ na ⎞ y (t ) = u (t )q − k ⎜ b0 + bi q −i ⎟ − y (t )⎜ a i q −i ⎟ ⎜ ⎟ ⎜ ⎟ i =1 ⎝ ⎠ ⎝ i =1 ⎠
∑
∑
(5) Dengan menggeser output sebesar k step, diperoleh output pada t+k dibawah ini: nb ⎛ ⎞ ⎛ na ⎞ y (t + k ) = u (t )⎜⎜ b0 + ∑ bi q − i ⎟⎟ − y (t + k )⎜⎜ ∑ ai q − i ⎟⎟ i =1 ⎝ ⎠ ⎝ i =1 ⎠
(6)
142
Persamaan output di atas disubstitusikan pada fungsi biaya (cost function) pada pers. (7) berikut ini:
(
J = (Py (t + k ) − Rr (t )) + Q ' u (t ) 2
2
)
(7)
Sehingga menjadi J =
nb na ⎛ ⎞ ⎜⎜ P ( u (t )b 0 + u (t − i )∑ b i − y (t + k − i )∑ a i ) − Rr (t )⎟⎟ i =1 i =1 ⎝ ⎠
2
+
Q'
2
u
(t )
2
(8) Untuk memperoleh aksi control u(t), maka cost function pada pers. (8) diturunkan parsial terhadap masukan u(t), kemudian disamadengankan dengan nol untuk mendapatkan harga minimum, seperti pada pers.(9) dan pers.(10) dibawah ini:
∂
J
=
∂ u (t ) P
2
nb na 2 ⎛ 2 ⎞ ⎜⎜ 2 b 0 u (t ) + 2 b 0 u (t − i )∑ b i − 2 b 0 y (t + k − i )∑ a i − 2 b 0 Rr (t )⎟⎟ + 2 Q ' u i =1 i =1 ⎝ ⎠
(t ) = 0 2
(9) nb na 2 ⎛ ⎞ P 2 b0 ⎜⎜ b0 u (t ) + u (t − i )∑ bi − y (t + k − i )∑ a i − Rr (t )⎟⎟ + Q ' u i =1 i =1 ⎝ ⎠
(t ) = 0 2
(10) Dengan memisahkan u(t), pers.(10) dapat dituliskan lagi menjadi pers.(11): nb na 2 ⎛ ⎞ u (t )⎛⎜ P 2 b02 + Q ' ⎞⎟ = P 2 b0 ⎜⎜ − u (t − i )∑ bi + y (t + k − i )∑ ai + Rr (t )⎟⎟ ⎠ ⎝ i =1 i =1 ⎝ ⎠
(11) Dengan mengganti nilai Q untuk menyederhanakan persamaan berikut ini:
( )
⎛ ' 2 ⎜ Q Q=⎜ ⎜ Pb0 ⎝
⎞ ⎟ ⎟⎟ ⎠
Akan mendapatkan hasil aksi kontrol u(t) berikut ini: nb ⎛ na ⎞ P⎜ a i y (t + k − 1) − bi u (t − i )⎟ + Rr (t ) ⎟ ⎜ i =1 ⎝ i =1 ⎠ u (t ) = Pb0 + Q
∑
∑
(12) Dengan mengeset P=1, Q=0 dan R=1 maka pers. (12) di atas merupakan aksi kendali minimum varians. Meski demikian pemilihan bobot P,Q dan R dapat disesuaikan menurut karakteristik kinerja yang diinginkan. Estimasi Filter Kalman Filter Kalman merupakan sekumpulan persamaan matematik yang diimplementasikan sebagai estimator yang meminimalkan error kovarian terestimasi sehingga diperoleh sistem yang optimal. Filter Kalman banyak dijumpai pada aplikasi otomasi dan navigasi. Kemampuan estimasi inilah yang dimanfaatkan dalam proses identifikasi sistem, termasuk sistem dengan noise untuk memperoleh sistem yang sesungguhnya.
Algoritma kalman filter terbagi dua: 1. Persamaan time update yang bertugas mengestimasi state sistem dan kovarian error saat sekarang sebagai parameter estimasi sebelumnya (a priori) yang akan dipakai pada step berikutnya, disebut juga sebagai pemrediksi (predictor) 2. Persamaan measurement update yang bertugas mendapatkan data pengukuran baru yang bersama dengan estimasi sebelumnya (a priori) memperbaiki estimasi sesudahnya (a postpriori), disebut juga pengoreksi (corrector). Selanjutnya penurunan persamaan dijelaskan berikut ini: Suatu sistem waktu diskrit yang diestimasi dapat dituliskan dalam bentuk state space sebagai berikut:
143
x k +1 = φ k x k + wk
(13)
z k = H k xk + vk
(14)
dimana
x k = vektor state φk =
matriks transisi state
wk
dan
vk =
noise proses dan noise pengukuran
zk =
vektor pengukuran
Hk =
matrik koneksi antara vektor state dan pengukuran saat tk
Noise proses dan noise pengukuran diasumsikan independent, white, uncorrelated sehingga matriks kovarian untuk wk dan vk sebagai berikut:
E[ wk wkT ] = Q, E[v k v kT ] = R, E[ wk v kT ] = 0 xˆ − ∈ ℜ n
(15)
xˆ ∈ ℜ n
Didefinisikan k dan k sebagai estimasi state sebelumnya (a prior) berdasarkan sekumpulan data pengukuran sebelum ke k dan estimasi state sesudahnya (a posterior) berdasarkan sekumpulan data pengukuran sampai k. Dengan demikian error estimasi sebelumnya dan sesudahnya dirumuskan:
ek− = x k − xˆ k−
(16)
ek = x k − xˆ k
(17) Kovarian error estimasi sebelumnya dan sesudahnya merupakan nilai ekspektasi berikut ini:
] [ ]= [(
[ [
] )]
Pk− = E ek− (ek− ) T = E (x k − xˆ k− )(x k − xˆ k− ) T Pk = E e k ( e k ) T E x k − xˆ k x k − xˆ k T
)(
(18) (19)
Penurunan Filter Kalman dimulai dengan menghitung estimasi state sebelumnya dan
xˆ −
xˆ
sesudahnya ( k dan k ). Selanjutnya menghitung selisih antara pengukuran sebenarnya dengan prediksi yang diberi bobot Kk seperti pada persamaan berikut:
xˆ k = xˆ k− + K k ( y k −Cxˆ k− )
(20)
Dengan mensubstitusikan pers.(14) ke pers.(20), kemudian ke pers.(19) maka diperoleh:
[( = E [[(x
)( )] − xˆ ) − K H (x − xˆ ) + K v ][(x − xˆ ) − K H (x − xˆ ) + K v ] = (1 − K H ) E [(x − xˆ )(x − xˆ )](1 − K H ) + K E [v v ]K
Pk = E x k − xˆ k x k − xˆ k
Pk Pk
T
k
k
k
k
k
k
k
k
k
k
k
k
T
k
k
k
k
− k
k
k
Pk = (1 − K k H k ) P (1 − K k H k ) + K k R k K T
k T k
k
k
k
k
T k
k
k
k
]
T k
(21) dimana Kk dipilih sedemikian sehingga meminimalkan kovarian error estimasi dan dirumuskan:
K k = Pk− H kT ( H k Pk− H kT + Rk ) −1
(22)
State a priori pada k+1, dirumuskan:
xˆ k−+1 = φ k xˆ k
(23)
xˆ
dimana k adalah state estimasi pada k Kemudian, kovarian error state a priori pada k+1 dirumuskan:
ek−+1 = x k +1 − xˆ k−+1 = (φ k x k + wk ) − φ k xˆ k = φ k ek + wk
(24)
144
Sesuai dengan pers.(18), pers.(19) dan pers.(14), kovarian error estimasi a priori pada k+1:
[
Pk−+1 = E (φ k ek + wk )(φ k ek + wk ) − k +1
P
[(
T
(
)
T k
(
T k
Pk−+1 = φ k E ek ekT φ kT + E wk wkT − k +1
P
]
= E φ k ek φ e + φ k ek w + wk φ kT ekT + wk wkT T k
)
= φ k Pk φ + Qk T k
)] (25)
Ruang Keadaan Sistem Multi Input Multi Output (MIMO) Sebagai contoh kasus sistem MIMO, diaplikasikan sistem kemudi empat roda (four wheel steering). Ruang keadaan (state space) yang disusun terdiri dari laju geleng (yaw rate) ψ& dan sudut slip samping pada garda belakang βr sebagai output. Sudut pengemudian roda depan dan belakang (δf dan δr) sebagai input proses. Input, output dan vektor state dari model adalah:
⎛ u ⎞ ⎛δ ⎞ u = ⎜⎜ 1 ⎟⎟ = ⎜⎜ f ⎟⎟ ⎝ u2 ⎠ ⎝ δ r ⎠ ⎛ y ⎞ ⎛ ψ& ⎞ y = ⎜⎜ 1 ⎟⎟ = ⎜⎜ ⎟⎟ ⎝ y2 ⎠ ⎝ β r ⎠
(26)
(27)
⎛ ψ& ⎞ ⎜ ⎟ ⎜β ⎟ x=⎜ r⎟ S ⎜ f⎟ ⎜S ⎟ ⎝ r⎠
(28)
Dengan ruang keadaan orde empat berikut ini:
x& = Ax + Bu y = Cx + Du
(29) (30)
dimana:
⎛ ⎜ 0 0 ⎜ ⎜ 1 0 ⎜ ⎜ ⎜ ⎛ I ⎞ l f + zz ⎟ ⎜ ⎜ lf m ⎟ ⎜ ⎜ A = ⎜ a⎜ − C f ⎟ aC f vx ⎜ ⎟⎟ ⎜ ⎜ ⎠ ⎜ ⎝ ⎜ ⎛ I zz ⎞ ⎟ ⎜ ⎜ lr − lf m ⎟ ⎜ a⎜ C aC r ⎟ ⎜ ⎜ r vx ⎟⎟ ⎜⎜ ⎜⎜ ⎠ ⎝ ⎝ 0 ⎞ ⎛ 0 ⎜ ⎟ 0 ⎟ ⎜ 0 B=⎜ aC 0 ⎟ ⎜ f ⎟ ⎜ 0 ⎟ aC r ⎠ ⎝
lf I zz 0
lr I zz l − l f mv x −
−a
0
0
−a
⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟⎟ ⎠
145
⎛1 0 0 0⎞ ⎟⎟ C = ⎜⎜ ⎝0 1 0 0⎠ ⎛0 0⎞ ⎟⎟ dan D = ⎜⎜ ⎝0 0⎠ Dari pers.(26) sampai dengan pers.(30), diperoleh persamaan ruang keadaan (state space) berikut:
⎛ ψ&& ⎞ ⎛ ψ& ⎞ ⎜ ⎟ ⎜ ⎟ ⎜ β& r ⎟ ⎜ β r ⎟ ⎛ δ f ⎜ S& ⎟ =A ⎜ S ⎟ +B ⎜⎜ δ ⎜ f⎟ ⎜ f⎟ ⎝ r ⎜ S& ⎟ ⎜ S ⎟ ⎝ r⎠ ⎝ r⎠
⎞ ⎟⎟ ⎠
dan
⎛ ψ& ⎞ ⎜ ⎟ ⎛ ψ& ⎞ ⎜ β r ⎟ ⎛ δ f ⎜⎜ ⎟⎟ =C ⎜ ⎟ +D ⎜⎜ ⎝ βr ⎠ ⎜ S f ⎟ ⎝δr ⎜S ⎟ ⎝ r⎠
⎞ ⎟⎟ ⎠
(31)
Adapun blok diagram sistem multi input multi output menurut pers. (31), dapat dilihat pada gambar 1. dibawah ini
Gambar 1: Model input-output sistem 4WS Berdasarkan gambar 1. maka dapat diketahui bahwa output:
ψ& = G11δ f + G12δ r β r = G21δ f + G22δ r ,
(32) (32)
HASIL DAN PEMBAHASAN Sesuai dengan parameter-parameter yang diketahui, maka fungsi ruang keadaan sistem kemudi empat roda. Melalui diskritisasi dengan time sampling 0.05 detik, diperoleh fungsi alih multi input multi output yang dapat direpresentasikan dalam model ARMAX. -1
Fungsi alih (q ) dari masukan f ke keluaran: 0.594 - 0.1424 q-1 - 0.1885 q-2 + 0.2579 q-3 yaw-dot: --------------------------------------------------------------1 -2 -3 -4 1 - 2.226 q + 2.326 q - 1.21 q + 0.2865 q
beta-r:
0.009735 + 0.02375 q-1 - 0.013371885 q-2 - 0.00421 q-3 ---------------------------------------------------------------------1 - 2.226 q-1+ 2.326 q-2 - 1.21 q-3+ 0.2865 q-4
146
Fungsi alih dari masukan " r" ke keluaran: -0.9638 + 0.4115 q-1 + 0.4489 q-2 - 0.4176 q-3 yaw-dot: ------------------------------------------------------------1 - 2.226 q-1 + 2.326 q-2 - 1.21 q-3 + 0.2865 q-4 -0.2837 + 0.06308 q-1 + 0.1375 q-2 - 0.109 q-3 ----------------------------------------------------------1 - 2.226 q-1 + 2.326 q-2 - 1.21 q-3 + 0.2865 q-4
beta-r:
-1
Di sini, perbandingan parameter untuk fungsi alih (q ) masukan f dan keluaran beta-r, dapat diperoleh berdasarkan estimasi sistem yang mendapatkan noise dengan algoritma filter Kalman, berikut ini:
Awal Estimasi
Awal Estimasi
a0 1.000 1.000
a1 -2.226 -2.2265
b0 0.009735 0.0097
a2 2.326 2.3259
b1 0.02375 0.0237
a3 - 1.21 -1.2096
b2 -0.013371885 -0.0134
a4 0.2865 0.2865
b3 -0.00421 -0.0042
Sinyal aksi kontrol u(t) untuk kendali varians minimum dengan P=0.1, Q=0.1 dan R=1 diperoleh sebagai berikut: 15
10
aksi kontrol
5
0
-5
-10
-15
0
20
40
60 iterasi
80
100
120
Gambar 2: Aksi kontrol dengan varians minimum untuk sistem 4WS Kurva keluaran sistem kendali varians minimum pada sistem kemudi empat roda, terlihat dapat mengikuti sinyal acuan, seperti terlihat pada gambar 3.
147
2.5 2 1.5
Tanggapan Sistem
1 0.5 0 -0.5 -1 -1.5 -2 -2.5
0
20
40
60 iterasi
80
100
120
Gambar 3: Grafik keluaran sistem vs acuan Terlihat pada gambar 3. di atas sistem kendali varians minimum dapat mengikuti sinyal acuan, akan tetapi sistem mengalami osilasi dan overshoot. Sedangkan error antara sinyal keluaran dan sinyal acuan, terlihat pada gambar 4., berikut ini: 2.5 2 1.5 1
error
0.5 0 -0.5 -1 -1.5 -2 -2.5
0
20
40
60 iterasi
80
100
120
Gambar 4: Grafik error Sampai dengan iterasi waktu ke 120, didapatkan bahwa error kuadrat rata-rata sistem kendali dengan varians minimum pada sistem kemudi empat roda yang merupakan sistem multi input multi output untuk satu fungsi alih (q-1) masukan f dan keluaran beta-r sebesar 6.78 %. Kurva sinyal keluaran dan error senantiasa periodik sehingga mengurangi kinerja sistem kendali.
148
KESIMPULAN Kendali varians minimum dapat diimplementasikan pada sistem multi input multi output. Terbukti sistem mampu mengikuti sinyal acuan, meskipun terjadi overshoot dan osilasi secara periodik terutama ketika perubahan sinyal acuan. Besaran overshoot yang relatif tinggi akan mengganggu kinerja sistem keseluruhan sehingga diperlukan perbaikan algoritma termasuk mengubah bobot kendali P,Q dan R.
DAFTAR PUSTAKA [1]. Lazic, Nenand.2002. Optimal Vehicle Dinamics-Yaw Rate and Side slip Angle Control Using 4 Wheel Steering. Dep. Of Automatic Control, Lund Institute of Technology [2]. Lewis, FL. Syrmos, VL. 1995. Optimal Control. John Wiley & Sons [3]. M.T. Tham.1999., Minimum Variance and Generalized Minimum Variance Control Algorithm. Dept. of Chemical and Process Engineering,University of Newcastle upon Tyne,Newcastle upon Tyne, NE1 7RU, UK. [4]. Ogata, K.1990. Modern Control Engineering.Prentice Hall [5]. Susanto, Erwin.2006. Kontrol Prediktif Sistem Kemudi Empat Roda Kendaraan Menggunakan Filter Kalman. Thesis, Teknik Pengaturan. Jurusan Teknik Elektro. Institut Teknologi Sepuluh Nopember Surabaya [6]. Welch, Greg. Bishop, Garg. 2001. An Introduction to the Kalman Filter. University of North Carolina at Chapel Hill. Dept of Computer Science
149