BAB 2 LANDASAN TEORI
2.1
Dasar Perancangan Software Menurut Pressman (2002, p10) perangkat lunak adalah:
1. perintah (program komputer) yang bila dieksekusi akan memberikan fungsi dan unjuk kerja seperti yang diinginkan 2. struktur data yang memungkinkan program memanipulasi informasi secara proposional, dan 3. dokumen yang menggambarkan operasi dan kegunaan program. Salah satu cara perancangan perangkat lunak adalah dengan menggunakan model air terjun (waterfall model). Menurut Sommerville (1995), tahap-tahap utama dalam model air terjun dapat digambarkan dalam aktifitas dasar pengembangan seperti berikut ini: 1. Analisis dan penentuan kebutuhan Tugas, kendala, dan tujuan sistem ditentukan melalui konsultasi dengan pengguna sistem kemudian ditentukan cara yang dapat dipahami baik oleh pengguna maupun staf pengembang. 2. Desain sistem dan perangkat lunak Proses desain sistem terbagi dalam kebutuhan perangkat keras dan perangkat lunak. Hal ini menentukan arsitektur perangkat lunak secara keseluruhan. Desain perangkat lunak mewakili fungsi sistem perangkat lunak dalam suatu bentuk yang dapat ditranformasikan ke dalam satu atau lebih program yang dapat dieksekusi.
6 3. Implementasi dan pengujian unit Dalam tahap ini, desain perangkat lunak direalisasikan dalam suatu himpunan program atau unit-unit program. Pengujian unit mencakup kegiatan verifikasi terhadap setiap unit sehingga memenuhi syarat spesifikasinya. 4. Integrasi dan pengujian sistem Unit program secara individual diintegrasikan dan diuji sebagai satu sistem yang lengkap untuk memastikan bahwa kebutuhan perangkat lunak telah terpenuhi. Setelah pengujian, sistem perangkat lunak disampaikan kepada pengguna. 5. Pengoperasian dan pemeliharaan Secara normal, walaupun tidak perlu, tahap ini merupakan fase siklus hidup yang terpanjang. Sistem telah terpasang dan sedang dalam penggunaan. Pemeliharaan mencakup perbaikan kesalahan yang tidak ditemukan dalam tahap-tahap sebelumnya, meningkatkan implementasi unit-unit sistem dan mempertinggi pelayanan sistem sebagai kebutuhan baru yang ditemukan.
Gambar 2.1 Model Air Terjun
7 2.2
Software Testing Pengetesan software adalah proses yang digunakan untuk mengidentifikasikan
kelengkapan, keamanan, kualitas, dan bebas kesalahan dalam pengembangan software. Secara garis besar, teknik pengetesan software dapat diklasifikasikan dalam dua bagian besar yaitu teknik black box dan white box. Teknik black box juga dikenal sebagai functional testing adalah teknik pengetesan software dimana orang yang akan mengetesnya tidak mengetahui cara kerja internal dari software tersebut. Biasanya teknik ini digunakan untuk mengetes : •
Validitas fungsional dari software.
•
Persyaratan (requirement).
•
Hasil (output).
Teknik white box biasanya digunakan oleh orang yang dapat membaca dan menulis bahasa pemrograman. Tujuan teknik ini adalah untuk memastikan bahwa semua pernyataan dan kondisi telah dieksekusi minimal sekali.
2.3
Interaksi Manusia dan Komputer (IMK) Definisi IMK adalah disiplin ilmu yang berhubungan dengan interaksi antara
manusia dan komputer. Interaksi antara manusia dan komputer terjadi pada user interface. Tujuan dasar dari IMK ini adalah untuk meningkatkan interaksi antara manusia dan komputer dengan membuat komputer lebih user-friendly dan memenuhi kebutuhan user.
8 Suatu program yang interaktif dan baik harus bersifat user friendly. Shneiderman (1998, p15) menjelaskan lima kriteria yang harus dipenuhi oleh suatu program yang user friendly yaitu : 1. Waktu belajar yang tidak lama. 2. Kecepatan penyajian informasi yang tepat. 3. Tingkat kesalahan pemakaian rendah. 4. Penghafalan sesudah melampaui jangka waktu. 5. Kepuasan pribadi. Secara spesifik, IMK berhubungan dengan : •
Metodologi dan proses untuk mendesain interface.
•
Metode untuk mengimplementasikan interface.
•
Teknik untuk evaluasi dan membandingkan interface.
•
Mengembangkan interface baru dan teknik interaksi.
•
Mengembangkan model eskriptif dan prediktif dan teori interaksi.
Tujuan lain dari IMK ini adalah untuk mendesain sistem yang meminimalisasikan penghalang antara model kognitif manusia mengenai apa yang ingin mereka capai dan pengertian komputer akan tugas yang diberikan manusia. Berikut adalah prinsip-prinsip perancangan antarmuka : 1
Prinsip 1 : Kenali perbedaan. Dalam perancangan antarmuka harus mengenali jenis pemakai. Ada 3 jenis pemakai yaitu : a. Novice (first-time user) : konsep tugas dan antarmuka dangkal.
9 Perancangannya harus membatasi jumlah pilihan, memberikan umpan balik yang informatif, manual, dan tutorial online yang efektif. b. Knowledgeable user : konsep antarmuka luas namun sulit mengingat sintaktik. Perancangannya yaitu struktur menu yang rapih, konsistensi, kejelasan antarmuka yang jelas, perlindungan dari bahaya karena eksplorasi fitur. c. Expert frequent users : sudah terbiasa dengan konsep dan sintaksis. Perancangannya secara makro, ada penggunaan shortcut dan singkatan. 2. Prinsip 2 : Gunakan delapan aturan emas perancangan interface. Menurut Schneiderman (1998, p72-73), ada delapan aturan emas dalam merancang antar muka pemakai : a. Berusaha keras untuk konsisten. Aturan ini yang paling sering dilanggar, tetapi jika mengikuti aturan ini maka akan menjadi lebih rumit karena terdapat banyak bentuk dari konsistensi. Urutan aksi harus selalu konsisten dalam setiap situasi yang sama; baik dalam penggunaan istilah pada menu-menu dan layar bantuan; serta konsisten dalam penggunaan warna, tampilan, huruf besar, jenis huruf, dan sebagainya. b. Memungkinkan frequent users menggunakan shortcuts. Dengan adanya peningkatan dalam penggunaan shortcut dapat mengurangi jumlah interaksi dan meningkatkan kecepatan tampilan. c. Memberikan umpan balik (feed back) yang informatif. d. Merancang dialog untuk menghasilkan keadaan akhir (sukses atau selesai). e. Memberikan penanganan kesalahan yang sederhana. Jika memungkinkan, sistem yang dirancang tidak membuat user melakukan kesalahan yang serius. Apabila user melakukan kesalahan, sistem harus dapat
10 mendeteksi kesalahan serta memberikan instruksi sederhana dan spesifik agar user dapat melakukan perbaikan. f. Mengizinkan pembalikan aksi (undo) dengan mudah. Jika memungkinkan, aksi harus bisa dibalik. Hal ini dapat mengurangi kegelisahan user, karena kesalahan yang dilakukan oleh user dapat diperbaiki. g. Mendukung pusat kendali internal. Untuk mendukung user agar lebih berinisiatif dalam melakukan aksi daripada menunggu respon dari sistem untuk melakukan aksi. h. Mengurangi beban ingatan jangka pendek. Keterbatasan manusia memproses informasi dengan ingatan jangka pendek mengharuskan tampilan yang dihasilkan harus sederhana, tampilan halaman yang banyak dapat digabungkan, frekuensi window-motion dikurangi, dan waktu latihan yang cukup untuk pengkodean, membantu ingatan dan melakukan urutanurutan aksi. 3. Prinsip 3 : Cegah kesalahan. a. Membetulkan pasangan yang bersesuaian. Menempatkan tanda pembuka dan penutup dalam suatu aksi dan mengingatkan jika tanda penutup belum dipasang. b. Melengkapi urutan aksi. Memungkinkan penggabungan aksi-aksi menjadi suatu aksi baru dan juga melakukan aksi-aksi yang tergantung aksi lain secara otomatis. c. Membetulkan perintah. Mengenali kekurangan perintah dan membetulkannya serta memberikan pilihan sebagai pengganti mengetik.
11
2.4
Peramalan
2.4.1
Definisi Peramalan Peramalan (forecasting) merupakan prediksi nilai – nilai sebuah peubah
berdasarkan kepada nilai yang diketahui dari peubah tersebut atau peubah yang berhubungan. Meramal juga dapat didasarkan pada keahlian keputusan (judgment), yang pada gilirannya didasarkan pada data historis dan pengalaman (Makridakis, 1991, p519). Peramalan adalah perpaduan antara seni dan ilmu dalam memperkirakan keadaan di masa yang akan datang, dengan cara memproyeksikan data – data masa lampau ke masa yang akan datang dengan menggunakan model matematika maupun perkiraan yang subjektif (Heizer, 1996, p147). Peramalan adalah tingkat perkiraan yang diharapkan untuk satu atau beberapa produk dalam periode waktu tertentu di masa yang akan datan. Dan dapat diartikan bahwa peramalan adalah suatu taksiran yang ilmiah, meskipun akan terdapat sedikit kesalahan (Biegel, 1992, p19).
2.4.2 Jangka Waktu Peramalan Jangka waktu peramalan dapat dikelompokan menjadi tiga kategori (Heizer, 1996, p142), yaitu : 1. Peramalan jangka pendek, peramalan untuk jangka waktu kurang dari tiga bulan. Kategori ini digunakan untuk perencanaan pembelian material, penjadwalan kerja, penugasan kerja, perencanaan tingkat produksi dan jumlah tenaga kerja.
12 2. Peramalan jangka menengah, peramalan untuk jangka waktu antara tiga bulan sampai tiga tahun. Kategori ini digunakan untuk perencanaan penjualan, perencanaan dan anggaran produksi. 3. Peramalan jangka panjang, peramalan untuk jangka waktu lebih dari tiga tahun. Kategori ini digunakan untuk perencanaan dan pengembangan fasilitas, penelitian dan pengembangan (litbang).
2.4.3
Beberapa Macam Metode Peramalan Menurut Soejoeti (1987, pp1.13-1.14) terdapat beberapa metode peramalan
antara lain : 1. Peramalan Subjektif. Peramalan seperti ini kerap kali digunakan untuk ramalan jangka pendek atau jika pengambilan keputusan lebih mempercayai intuisinya daripada rumus matematik. Satu ciri metode ini adalah faktor apa yang mempengaruhi ramalan dan bagaimana menilainya sangat bersifat pribadi dan tidak dapat ditirukan orang lain. 2. Model Ekonometrik dan Struktural. Di sini metode statistik dan matematik digunakan sebagai alat. Fungsi matematik digunakan untuk menggambarkan lingkungan organisasi, yakni hal – hal yang terlibat dalam peramalan. Karena dalam model tersangkut variabel random, maka model ini merupakan model statistik. Tetapi, karena itu variabel – variabel ekonomi, maka modelnya dinamakan model ekonometri.
Qts = α 0 + α 1 Pt + α 2Wt + ∈s ,t Qtd = β 0 + β1 Pt + β 2Wt + ∈d ,t Qts = Qtd
13 3. Model Deterministik. Model yang menggambarkan hubungan antara variabel yang kita pelajari dengan waktu, dalam bentuk fungsional yang kita tentukan. Kelemahan utama model ini adalah adanya implikasi bahwa perubahan jangka panjang adalah sangat sistematik dan mudah diramalkan. Salah satu bentuk fungsional yang banyak diapakai adalah
Z t = Ae rt 4. Rumus Peramalan Ad Hoc. Ini merupakan cara peramalan yang hanya tergantung pada sejarah yang lalu : Zˆ t (k ) = f ( Z 1 ,..., Z t )
misalnya EWMA :
Zˆ t (k ) = (1 − β ) Z t + (1 − β ) β Z t −1 + (1 − β ) β 2 Z t − 2 + ... Zˆ t (k ) = (1 − β ) Z t + β Zˆ t −1 (k ) 5. Analisis Runtun Waktu. Di sini sebarang Zt dipandang sebagai suatu realisasi dari suatu variabel random Z yang mempunyai fkp (fungsi kepadatan probabilitas) tertentu. Setiap himpunan Zt misalnya Zt1,...,Ztk mempunyai fkp bersama. Model ini dinamakan model statistik (stokastik). Ramalan yang dibuat pada waktu t untuk k langkah ke depan dipandang sebagai nilai ekspetasi Zt+k dengan syarat diketahui observasi yang lalu sampai dengan Zt.
14 2.4.4 Peranan dan Kegunaan Peramalan Peramalan dibuat berdasarkan pada data nyata yang telah terjadi sebelumnya. Setelah ramalan dibuat, maka terdapat beberapa peranan dan kegunaan yang dapat dihasilkan oleh peramalan (Makridakis, 1991, p4-6), yaitu : 1. Penjadwalan dari sumber daya yang tersedia. Penggunaan sumber daya yang efisien memerlukan penjadwalan produksi, transportasi, kas, personalia dan sebagainya. Input yang penting untuk penjadwalan adalah ramalan tingkat permintaan untuk produk, bahan, tenaga, finansial atau jasa pelayanan. 2. Penyediaan sumber daya tambahan. Waktu tenggang untuk memperoleh bahan baku, menerima pekerja baru, membeli mesin dan peralatan dapat berkisar antara beberapa hari sampai beberapa tahun. 3. Penentuan sumber daya yang diinginkan. Setiap organisasi harus menentukan sumber daya yang dimiliki dalam jangka panjang. Keputusan semacam ini harus bergantung pada kesempatan pasar, faktor – faktor lingkungan, dan pengembangan internal dari sumber daya finansial, manusia, produk, dan teknologi. Semua penentuan ini memerlukan peramalan yang baik dan manajer yang dapat menafsirkan pendugaan serta membuat keputusan yang tepat.
2.4.5 Analisis Runtun Waktu (Time Series) Menurut Box et al. (1994, p1) suatu runtun waktu adalah rangkaian observasi yang diambil dalam waktu yang berurutan. Banyak kumpulan data yang berbentuk runtun waktu, seperti rangkaian bulanan jumlah barang yang dikirim dari pabrik, rangkaian mingguan jumlah kecelakaan yang terjadi, dan observasi per jam pada proses percobaan kimia. Aplikasi runtun waktu meliputi berbagai bidang seperti ekonomi,
15 bisnis, industri, ilmu pengetahuan alam (khususnya geofisika dan meteorologi), dan ilmu pengetahuan sosial.
2.4.5.1 Konsep Dasar Runtun Waktu Beberapa konsep dasar dalam analisis runtun waktu, antara lain : 1. Proses Stasioner Suatu proses dikatakan stasioner jika rata – ratanya tidak berubah sepanjang waktu. 2. Estimasi Mean dan Varians Mean μ =E(Zt) dari proses stokastik dapat diestimasi dengan mean sampel
Z =
1 N
N
∑Z t =1
t
dan varians σ z2 dari proses stokastik dapat diestimasi dengan varians sampel
σˆ z2 =
1 N
N
∑ (Z t =1
t
− Z )2
3 Estimasi Autokorelasi Menurut Box et al. (1994, p31) estimasi yang paling memuaskan untuk autokorelasi pada time-lag ke-k adalah rk =
ck c0
di mana
ck =
1 N
N −k
∑ (Z t =1
t
− Z )( Z t + k − Z )
4. Estimasi Autokorelasi Parsial
k = 0, 1, 2, . . . , K di mana K ≤ N/4
16 Autokorelasi parsial antara Zt dan Zt+k, dinotasikan dengan φ kk , dapat diestimasi dengan
φˆ11 = r1 1
φˆ22 =
φˆ33 =
r1
r1 r2 1 r1 r1 1
1
r1
r1
r1
1
r2
r2
r1
r3
1 r1
r1 1
r2 r1
r2
r1
1
M
φˆkk =
1
r1
r2
L rk − 2
r1
r1
1
r1
L rk −3
r2
M
M
M
rk −1
rk − 2
rk −3 L
1
r1
r2
L rk − 2
rk −1
r1
1
r1
L rk −3
rk − 2
M
M
M
rk −1
rk − 2
rk −3 L
M
M
r1
rk
M
M
r1
1
5. Proses White Gaussian Noise Menurut Box et al. (1994, p47) proses white noise at berisikan rangkaian dari variabel acak yang tidak berkorelasi dan memiliki mean nol dan varians konstan, yatu E(at) = 0
var[at] = σ a2
Karena variabel acak at tidak berkorelasi, maka fungsi autokovariansnya adalah
17
γ k = E[at , at + k ] =
σ a2 0
k =0 k ≠0
Jadi fungsi autokorelasi dari white noise memiliki bentuk
ρk =
1 k =0 0 k ≠0
Proses white noise disebut proses white gaussian noise jika fungsi kepadatan probabilitasnya berupa distribusi normal.
2.4.5.2 Metode Autoregressive – AR(1)
Proses autoregressive – AR(1) mempunyai bentuk umum ~ (1 − φ1 B) Z t = at
atau ~ ~ Z t = φ1 Z t −1 + at ,
-1 < φ1 < 1
di mana ~ Zt = Zt − μ
at = proses white gaussian noise dengan distribusi N(0, σ a2 ) Proses autoregressive – AR(1) dinamakan juga proses Markov. Menurut Box et al. (1994, p58) fungsi autokorelasi yang sesuai dengan persamaan AR(1)
ρ k = φ1 ρ k −1
k>0
dengan ρ 0 = 1 , mempunyai solusi
ρ k = φ1k
k≥0
18 Seperti ditunjukkan pada gambar 2.2, fungsi autokorelasi (ACF) menurun secara eksponensial menuju nol jika φ1 bernilai positif, tetapi menurun secara eksponensial dan berosilasi naik turun jika φ1 bernilai negatif. Secara khusus dapat dikatakan bahwa
ρ1 = φ1 Menurut Box et al. (1994, p58) variansi dari proses adalah
σ z2 =
σ a2 1 − ρ1φ1
dengan mensubtitusi ρ1 = φ1 ,
σ z2 =
σ a2 1 − φ12
Fungsi autokorelasi parsial (PACF) akan terputus setelah lag p pada proses AR orde p (Box et al, 1994, 186). Pada AR(1) PACF akan terputus setelah lag 1 seperti terlihat pada gambar 2.2.
19
Gambar 2.2 ACF dan PACF dari AR(1) (http://home.ubalt.edu)
2.4.5.3 Metode Simple Exponential Smoothing
Exponential
smoothing
adalah
metode
analisis
runut
waktu
dengan
menghilangkan variasi yang tidak teratur dari data tetapi tanpa menyertakan variasi musiman dan trend. Metode ini melakukan prediksi dengan menghilangkan variasi tidak teratur dari data (Santosa et al, 2005). Menurut Makridakis, Wheelright, dan McGee (1999), dasar metode exponential
smoothing adalah suatu metode yang menunjukan pembobotan menurun secara eksponensial terhadap nilai pengamatan yang lebih tua.
20
Simple exponential smoothing adalah sebuah metode yang berguna untuk meramal time series yang tidak memiliki trend maupun musiman (Aczel et al, 2002). ) ) Model : Z t +1 = w( Z t ) + (1 − w)( Z t ) ,
0<w<1
) di mana Zt adalah nilai aktual yang diketahui pada waktu t dan Z t adalah nilai ramalan ) pada waktu t. Dengan nilai inisial : Z 1 = Z 1 . Simple exponential smoothing bekerja dengan baik jika data bervariasi pada suatu level yang tidak sering berubah. Ketika trend berlangsung terus – menerus,
exponential smoothing akan selalu berada di belakang nilai sebenarnya (Hanke et al, 2005, p121). Menurut Aczel et al. (2002) pencarian w optimal lebih baik dilakukan memakai MSE (Mean Squared Error) dibandingkan MAPE (Mean Absolute Percentage Error) karena MSE adalah fungsi “smooth” dari w sedangkan MAPE tidak. Dengan MAPE, pencarian w mungkin akan terjebak pada suatu local minimum dan melewatkan global
minimum.
2.4.6
Lima Langkah Proses Peramalan (Hanke et al, 2005, p5-6)
1. Formulasi masalah dan pengumpulan data. Jika metode peramalan kuantitatif yang dipakai maka data yang relevan harus tersedia dan benar. Jika data yang sesuai tidak tersedia maka mungkin perumusan masalah perlu dikaji ulang atau metode peramalan kuantitatif yang dipakai. 2. Manipulasi dan pembersihan data. Ada kemungkinan kita memiliki terlalu banyak data atau terlalu sedikit. Sebagian data mungkin tidak relevan pada masalah. Sebagian data mungkin memiliki nilai
21 yang hilang yang harus diestimasi. Sebagian data mungkin harus dihitung dalam unit selain unit aslinya. Sebagian data mungkin harus diproses terlebih dahulu (misal, dijumlahkan dari berbagai sumber). Data yang lain mungkin sesuai tapi hanya pada periode historis tertentu. Biasanya perlu usaha untuk mengambil data dalam suatu bentuk yang dibutuhkan untuk menggunakan prosedur peramalan tertentu. 3. Pembentukan dan evaluasi model. Pembentukan dan evaluasi model menyangkut pengepasan data yang terkumpul pada suatu model peramalan yang sesuai dengan meminimalkan galat peramalan. 4. Implementasi model (peramalan sebenarnya) Implementasi model terdiri dari model peramalan aktual yang dibuat ketika data yang sesuai telah terkumpul dan terpilihnya model peramalan yang sesuai. Peramalan untuk periode sekarang dengan nilai historis aktual diketahui sering kali digunakan untuk mengecek keakuratan dari proses. 5. Evaluasi peramalan Evaluasi peramalan menyangkut pembandingan nilai ramalan dengan nilai historis aktual. Pada proses ini sebagian dari nilai data terbaru sering kali dikeluarkan dari data yang sedang dianalisis. Setelah model peramalan dibentuk, peramalan dibuat untuk periode ini dan dibandingkan dengan nilai historis yang diketahui. Pengujian pada pola galat sering kali membuat para analis untuk memodifikasi prosedur peramalan.
2.4.7 Ketepatan Metode Peramalan
Ukuran akurasi peramalan menurutl Lerbin R, Aritonang R (2002) selain berdasarkan pola data, pemilihan teknik peramalan dapat juga didasarkan pada ukuran
22 lainnya yaitu error-nya (e) atau kesalahannya yang merupakan selisih nilai dari data yang ada dengan nilai proyeksinya untuk tiap periode atau dapat ditulis
ei = Yi − Fi , di mana Yi merupakan data aktual untuk periode i dan Fi merupakan ramalan (atau nilai kecocokan / fitted value) untuk periode yang sama. Secara sederhana dapat diketahui bahwa semakin besar ei berarti semakin besar selisih antara data yang ada dan nilai proyeksinya. Ini berarti bahwa peramalan yang dilakukan semakin tidak akurat. Ukuran ketepatan yang sering digunakan untuk mengetahui ketepatan suatu model peramalan dalam memodelkan data deret waktu yaitu nilai MAD (Mean Absolute
Deviation), MSE (Mean Squared Error), MAPE (Mean Absolute Percentage Error), dan MPE (Mean Percentage Error).
MAD =
1 n ∑ Yt − Yˆt n t =1
MSE =
1 n ∑ (Yt − Yˆt ) 2 n t =1
ˆ 1 n Yt − Yt MAPE = ∑ n t =1 Yt MPE = dimana,
1 n (Yt − Yˆt ) ∑ n t =1 Yt
Yt = nilai aktual periode t Yˆt = nilai ramalan periode t
n = jumlah periode ramalan
23 Keempat pengukuran ketepatan peramalan ini digunakan untuk (Hanke et al, 2005, p79-81) : •
Membandingkan keakuratan dari dua atau lebih teknik peramalan yang berbeda.
•
Mengukur kegunaan atau reliabilitas teknik tertentu.
•
Membantu mencari teknik yang optimal.
2.5
Kalman Filter
2.5.1
Definisi Kalman Filter
Kalman filter adalah sekumpulan persamaan matematika sebagai alat komputasi efisien (rekursif) untuk memperkirakan/mengestimasi state dari suatu proses dengan meminimalkan mean of the squared error. Kalman Filter dapat memproses semua pengukuran yang tersedia, tanpa mempedulikan ketepatannya, untuk mengestimasi nilai sekarang dari variabel yang diteliti, dengan menggunakan (www.cs.unc.edu): 1. Pengetahuan akan kedinamisan sistem dan alat ukur. 2. Deskripsi statistika dari derau sistem, galat pengukuran, dan ketidakpastian akan model dinamis. 3. Setiap informasi yang tersedia tentang kondisi awal dari variabel yang diteliti.
2.5.2
Pemodelan Matematika Kalman Filter
Model Kalman filter mengasumsikan state yang benar pada waktu k didapatkan dari state pada waktu (k-1) menurut persamaan: xk = Fkxk-1 + Bkuk + wk
24 di mana:
Fk adalah model transisi state yang berlaku pada state terdahulu xk-1
Bk adalah model control-input yang berlaku pada vektor kontrol uk
wk adalah derau yang terjadi dalam proses yang diasumsikan berdistribusi
normal dengan mean nol dan covariance Qk wk ~ N(0,Qk)
Pada waktu k sebuah pengamatan/pengukuran zk pada state sebenarnya dari xk dibuat berdasarkan: zk = Hkxk + vk
di mana Hk adalah model pengamatan yang memetakan state yang sebenarnya dan vk adalah noise pengamatan yang diasumsikan sebagai white gaussian noise dengan mean nol dan covariance Rk. vk ~ N(0,Rk)
Initial State dan derau vektor pada setiap langkah (x0, w1,...,wk, v1,...,vk) diasumsikan saling bebas.
2.5.3
Kalman Filter Algorithm
State dari filter direpresentasikan dengan dua variabel:
, perkiraan state pada waktu k; , error covariance matrix (suatu pengukuran perkiraan akurasi dari state).
Kalman filter memiliki dua fase: Predict dan Update. Fase predict menggunakan perkiraan dari waktu sebelumnya untuk memproduksi perkiraan state sekarang. Pada
25 fase update informasi yang telah diukur dari waktu sekarang digunakan untuk memperbaiki prediksi ini untuk menghasilkan perkiraan yang lebih akurat. Predict
(predicted state) (predicted estimate covariance) Update
(innovation or measurement residual) (innovation (or residual) covariance) (optimal Kalman gain) (updated state estimate) (updated estimate covariance) Rumus updated estimate covariance di atas hanya valid untuk optimal Kalman gain. Penggunaan nilai gain lainnya membutuhkan rumus yang lebih kompleks yang ditemukan pada turunan Kalman filter.
Gambar 2.3 Algoritma Kalman Filter (www.cs.unc.edu)
26 2.6
State Transition Diagram (STD)
STD merupakan suatu modeling tool yang menggambarkan sifat ketergantungan pada waktu di sistem. Pada mulanya STD hanya digunakan untuk menggambarkan suatu sistem yang memiliki sifat real time, seperti process control, telephone switching system, dan high speed data acquisition. Notasi : 1. State disimbolkan segiempat
Dipakai untuk merepresentasikan status menunggu terhadap keadaan yang akan terjadi. State adalah kumpulan keadaan / atribut yang mencirikan seseorang / suatu benda pada waktu / kondisi tertentu. 2. Transition state disimbolkan anak panah
Untuk menghubungkan state dengan state lain. 3. Kondisi dan Aksi Untuk melengkapi STD, diperlukan dua hal tambahan yaitu kondisi sebelum state berubah dan aksi dari pemakai untuk mengubah state.