RECURSIVE LEAST SQUARES
TUGAS AKHIR
Diajukan Untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Teknik
Program Studi Teknik Elektro
Disusun oleh:
ARSENIUS ANOM PERMADI
NIM: 035114047
PROGRAM STUDI TEKNIK ELEKTRO
JURUSAN TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2007
RECURSIVE LEAST SQUARES ALGORITHM
FINAL PROJECT
Presented as Partial Fulfillment of the Requirements
To Obtain the Sarjana Teknik Degree
In Electrical Engineering Study Program
By:
ARSENIUS ANOM PERMADI
Student Number: 035114047
ELECTRICAL ENGINEERING STUDY PROGRAM
ELECTRICAL ENGINEERING DEPARTMENT
SCIENCE AND TECHNOLOGY FACULTY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2007
HALAMAN PENGESAHAN
Kupersembahkan karya tulis ini kepada:
Yesus Kristus Penuntun jalanku
Ayahanda dan Ibundaku tercinta
yang selalu memberikan doa & dukungan
Kedua saudaraku yang tercinta Danu dan Danan
Almamaterku Teknik Elektro USD
Lebih baik bertempur dan kalah daripada tidak pernah
bertempur sama sekali.
Matahari yang telah terbenam, esok masih bisa terbit lagi,
burung yang terbang jauh, masih bisa terbang kembali,
waktu yang telah berlalu, tidak akan pernah bisa kembali.
Kehilangan emas, hanya suatu kerugian yang kecil.
Kehilangan sahabat, adalah suatu kehilangan yang besar.
Kehilangan kepercayaan, adalah kehilangan segala –
galanya.
Tidaklah sulit bagi seseorang untuk berbuat kebaikan,
yang sulit adalah melakukan kebaikan seumur hidupnya.
Kejujuran adalah papan nama yang tidak pernah dapat
diturunkan.
Tugas akhir ini mendeskripsikan program simulasi untuk tapis adaptif
menggunakan algoritma
least mean square
(LMS) dan
recursive least squares
(RLS).
Program simulasi akan mensimulasikan tahap-tahap pendekatan sinyal masukan, dari
perancangan sinyal tercampur, perancangan sinyal pengganggu acuan awal, perancangan
tapis adaptif, dan pemilihan algoritma yang digunakan.
Program simulasi ini menggunakan sinyal masukan berekstensi *.wav. Sinyal
masukan hanya diolah satu sisi saja (mono). Sinyal tercampur merupakan hasil dari
sinyal masukan yang dicampur dengan sinyal pengganggu. Sinyal pengganggu acuan
awal diolah untuk mendekati sinyal tercampur. Hasil pendekatan sinyal masukan
tergantung pada algoritma yang digunakan.
Program simulasi tapis adaptif telah diamati dan diuji. Kinerja tapis adaptif diamati
dari kesalahan pada sinyal keluaran serta perbedaan suara sinyal masukan dan keluaran.
Program ini telah berhasil melakukan simulasi untuk proses
noise cancellation
dengan
algoritma LMS dan RLS dengan baik.
Kata kunci : tapis adaptif,
least mean square
,
recursive least squares
,
noise
cancellation
This final project describes the simulation program for adaptive filter using
least
mean square
(LMS) and recursive least squares (RLS) algorithm. Simulation program
will simulate steps of input signal estimation from design of mixed signal, design of
interference signal that will be used as reference signal, design of adaptive filter, and
determine the algorithm.
This simulation program use input signal with *.wav extension. The input signal
will be processed for one side only (mono). The mixed signal is a product of input signal
and interference signal. The interference signal that will be used as reference signal will
be processed to estimate the mixed signal. The result of input signal estimation depends
on which algorithm that is used.
Simulation program for adaptive filter have been observed and tested. The
performance of adaptive filter is observed from the error of output signal and the
difference of output and input signal voice. This program have been performed the noise
cancellation process using LMS and RLS algorithm successfully.
Keyword : adaptive filter, least mean square, recursive least squares, noise
cancellation
Puji syukur dan terima kasih penulis panjatkan kepada Tuhan Yang Maha Esa
atas segala kasih karunia-Nya sehingga tugas akhir ini dapat diselesaikan dengan baik.
Dalam proses penulisan tugas akhir ini penulis menyadari bahwa ada begitu
banyak pihak yang telah memberikan perhatian dan bantuan sehingga tugas akhir ini
dapat terselesaikan. Maka dari itu, penulis ingin mengucapkan terima kasih kepada :
1.
Juru selamat dan sumber inspirasiku, Yesus Kristus.
2.
Bapak Ir. Greg. Heliarko, SJ., B.ST., MA., M.Sc, selaku dekan fakultas
teknologi dan sains.
3.
Bapak Damar Wijaya, S.T., M.T., selaku pembimbing I yang telah
membimbing, mendukung, memberikan saran dan kesabaran bagi penulis dari
awal hingga tugas akhir ini bisa selesai.
4.
Bapak Bayu Primawan, S.T., M.Eng. selaku pembimbing II yang telah
bersedia meluangkan waktu serta memberikan bimbingan dan saran yang
tentunya sangat berguna untuk tugas akhir ini.
5.
Bapak Martanto, S.T., M.T dan Ibu Ir. Th. Prima Ari Setiyani, MT, selaku
penguji yang telah bersedia memberikan kritik dan saran.
6.
Seluruh dosen teknik elektro atas ilmu yang telah diberikan selama penulis
menimba ilmu di Universitas Sanata Dharma.
7.
Ayahanda dan Ibundaku tercinta atas segala yang telah diberikan dan
dikorbankan yang tak akan pernah dapat ternilai harganya.
HALAMAN JUDUL
... i
LEMBAR PENGESAHAN OLEH PEMBIMBING
... iii
LEMBAR PENGESAHAN OLEH PENGUJI
... iv
LEMBAR PERNYATAAN KEASLIAN KARYA
... v
HALAMAN PERSEMBAHAN
... vi
HALAMAN MOTTO
... vii
INTISARI
... viii
ABSTRACT
... ix
KATA PENGANTAR
... x
DAFTAR ISI
... xii
DAFTAR GAMBAR
... xv
DAFTAR TABEL
... xvii
BAB I PENDAHULUAN
1.1 Judul ...
1
1.2 Latar Belakang Masalah ...
1
1.3 Tujuan dan Manfaat ... 2
1.4 Batasan Masalah ...
3
1.5 Metodologi Penelitian……….. 3
1.6 Sistematika Penulisan ...
4
BAB II DASAR TEORI
2.1
Tapis Adaptif ...
5
2.1.1
Tapis Adaptif sebagai Sebuah
Noise Canceller
... 5
2.2
Tapis Wiener ... 9
2.2.1
Batasan Tapis Wiener ……...……….. 12
2.3
Metode
Steepest Descent
... 12
2.4
Algoritma LMS Adaptif ... 16
2.4.1 Dasar – Dasar LMS ... 16
2.4.2 Implementasi Algoritma LMS ... 18
2.4.3.3 Kebutuhan
Wordlength
... 21
2.4.3.3 Pergeseran Koefisien ... 21
2.5 Algoritma Recursive Least Squares ... 22
2.5.1 Dasar – Dasar RLS ... 22
2.5.2 Batasan Algoritma RLS ... 25
BAB III PERANCANGAN PROGRAM
3.1 Algoritma Perancangan Program ... 27
3.2 Perancangan Tampilan Depan ... 28
3.3 Perancangan Sinyal Masukan ... 29
3.4 Perancangan Sinyal Pengganggu Sebagai Acuan Awal ... 31
3.5 Perancangan Program Simulasi Tapis FIR
Transversal Structure
... 32
3.6 Perancangan Program Simulasi Tapis Adaptif Menggunakan
Algoritma LMS ... 34
3.7 Perancangan Program Simulasi Tapis Adaptif Menggunakan
Algoritma RLS ... 35
3.8 Perancangan
Layout
Program ... 37
3.8.1
Layout
Program Tampilan Depan... 37
3.8.2
Layout
Program Langkah 1 ... 38
3.8.3
Layout
Program Langkah 2 ... 40
BAB IV HASIL DAN PEMBAHASAN
4.1 Tampilan Program... 44
4.1.1 Halaman Pembuka Program... 44
4.1.2 Halaman Perancangan Sinyal Masukan ... 45
4.1.3 Halaman Perancangan Sinyal Pengganggu Acuan Awal dan
Tapis Adaptif... 51
4.2
Proses
noise cancellation
... 57
4.2.1 Perancangan Sinyal Masukan dengan Data
ringout
.
wav
... 57
4.2.2 Perancangan Sinyal Masukan dengan Data
chimes
.
wav
... 59
ringout
.
wav
... 61
4.3.2
Variasi
Parameter
Algoritma Tapis Adaptif dengan Data
chimes
.
wav
... 63
4.3.3 Variasi Parameter Orde Tapis Adaptif...
64
4.4 Perbandingan Koefisien Tapis Algoritma LMS dan RLS...
66
4.4.1 Koefisien Tapis dengan Data
ringout
.
wav
... 66
4.4.2 Koefisien Tapis dengan Data
chimes
.
wav
... 72
BAB V KESIMPULAN DAN SARAN
5.1 Kesimpulan... 73
5.2 Saran... 73
DAFTAR PUSTAKA
... 74
LAMPIRAN
... 75
Gambar 2.1
Diagram blok dari sebuah tapis adaptif sebagai sebuah
noise
canceller
...
6
Gambar 2.2
Dasar tapis Wiener... 9
Gambar 2.3
Permukaan
error
kuadrat... 10
Gambar 2.4
Ilustrasi dari koefisien tapis yang bervariasi... 18
Gambar 2.5
Algoritma tapis adaptif LMS... 19
Gambar 2.6
Metode
least square
……….. 23
Gambar 3.1
Algoritma perancangan program simulasi tapis adaptif... 27
Gambar 3.2
Diagram alir
layout
”judul”... 28
Gambar 3.3
Diagram alir perancangan sinyal masukan... 30
Gambar 3.4
Diagram alir perancangan sinyal pengganggu acuan awal... 31
Gambar 3.5
Diagram blok tapis FIR
transversal structure
... 32
Gambar 3.6
Diagram alir perancangan FIR... 33
Gambar 3.7
Diagram alir algoritma LMS tapis adaptif... 34
Gambar 3.8
Diagram alir RLS tapis adaptif... 36
Gambar 3.9
Layout
program tampilan depan... 38
Gambar 3.10
Layout
program langkah 1... 40
Gambar 3.11
Layout
program langkah 2... 41
Gambar 3.12
Tampilan hasil akhir proses tapis adaptif... 42
Gambar 3.13
Tampilan kurva koefisien tapis... 43
Gambar 4.1
Tampilan halaman pembuka program... 44
Gambar 4.2
Tampilan halaman perancangan sinyal masukan... 45
Gambar 4.3
Tampilan submenu
Help
... 46
Gambar 4.4
Tampilan pengambilan data berekstensi *.wav... 47
Gambar 4.5
Tampilan perancangan sinyal masukan dengan data
default
... 48
Gambar 4.6
Pesan
error
untuk nilai amplitudo 0
mV
pada bagian masukan
interference signal
... 49
Gambar 4.7
Pesan
error
untuk nilai frekuensi 10
MHz
pada bagian masukan
interference signal
... 50
Gambar 4.10
Contoh pesan
error
untk
filter order
pada perancangan tapis
adaptif... 53
Gambar 4.11
Message box
keluar perancangan sinyal pengganggu acuan
awal dan tapis adaptif... 54
Gambar 4.12
Tampilan halaman perancangan sinyal pengganggu dan tapis
adaptif dengan data
default
... 54
Gambar 4.13
Tampilan hasil dengan data
default
... 55
Gambar 4.14
Tampilan
filter coefficient curve
... 56
Gambar 4.15
Kurva perancangan sinyal masukan
ringout
.
wav
... 57
Gambar 4.16
Kurva perancangan sinyal pengganggu acuan awal... 60
Gambar 4.17
Kurva perubahan koefisien tapis LMS... 67
Gambar 4.18
Kurva perubahan koefisien tapis RLS... 69
Gambar 4.19
Waktu yang diperlukan dalam mencapai konvergensi pada
algoritma RLS... 70
Gambar 4.20
Kurva koefisien tapis dengan jumlah orde tapis 1 untuk sinyal
masukan
ringout
.
wav
... 71
Gambar 4.21
Kurva koefisien tapis dengan jumlah orde tapis 1 untuk sinyal
masukan
chimes
.
wav
... 72
Tabel 4.1
Perancangan sinyal masukan
ringout
.
wav
... 57
Tabel 4.2
Amplitudo untuk data ke – 1000 pada perancangan sinyal masukan
dengan data
default
... 58
Tabel 4.3
Perancangan sinyal masukan
chimes
.
wav
... 59
Tabel 4.4
Amplitudo untuk data ke – 4000 pada perancangan sinyal masukan
chimes
.
wav
dengan data
default
... 59
Tabel 4.5
Perancangan sinyal pengganggu acuan awal... 60
Tabel 4.6
Perbandingan variasi pada sinyal pengganggu acuan awal... 61
Tabel 4.7
Perbandingan data ke – 1000 dengan variasi
step size
pada
algoritma LMS...
62
Tabel 4.8
Perbandingan data ke – 1000 dengan variasi
forgetting
factor
pada algoritma RLS... 62
Tabel 4.9
Perbandingan data ke – 1000 dengan variasi faktor inisialisasi pada
algoritma RLS... 62
Tabel 4.10
Variasi
step size
dengan sinyal masukan
chimes
.
wav
pada data ke –
1000... 63
Tabel 4.11
Variasi
forgetting factor
dengan sinyal masukan
chimes
.
wav
pada
data ke – 1000... 64
Tabel 4.12
Variasi faktor inisialisasi
dengan sinyal masukan
chimes
.
wav
pada
data ke – 1000... 64
Tabel 4.13
Hubungan jumlah orde tapis dengan besar
error
pada data ke - 1000
untuk algoritma LMS... 65
Tabel 4.14
Hubungan jumlah orde tapis dengan besar
error
pada data ke - 1000
untuk algoritma RLS... 65
Tabel 4.15
Hubungan jumlah orde tapis dengan rata – rata besar
error
... 66
Tabel 4.16
Data selang waktu pada algoritma RLS berdasarkan Gambar 4.19.... 71
PENDAHULUAN
1.1
Judul
Program Simulasi Tapis Adaptif
Menggunakan Algoritma
Least Mean
Square
dan
Recursive Least Squares
1.2
Latar Belakang Masalah
Kontaminasi sinyal yang diinginkan oleh sinyal lain yang tidak diinginkan
merupakan permasalahan yang sering dihadapi dalam banyak aplikasi [1]. Dalam
banyak kasus, sering diinginkan karakteristik tapis yang dapat berubah, atau mampu
beradaptasi untuk mengubah karakteristik sinyal. Hal ini dapat dilihat dalam kasus
spektrum yang
overlap
antara sinyal dan
noise
atau jika rentang frekuensi yang
ditempati oleh
noise
tidak diketahui atau berubah terhadap waktu. Tapis adaptif
diperlukan agar
noise
dapat dieliminasi.
Permasalahan juga muncul pada kasus lain, yaitu pada
Electroencephalography
(EEG). Dalam EEG, aktivitas kelistrikan asli dari otak yang
digunakan dalam diagnosa penyakit syaraf dapat terkontaminasi oleh sinyal
ocular
artefact
(OA). OA merupakan sinyal pengganggu yang menyebar melalui kulit
kepala dan merupakan hasil dari pergerakan mata atau kedipan mata. Sinyal
interferer
ini memiliki rentang frekuensi yang sama dengan EEG, sehingga
diperlukan tapis adaptif untuk memisahkan frekuensi EEG dengan OA.
Contoh lain adalah dalam komunikasi digital yang menggunakan
spread
spectrum
. Sinyal
interferer
bercampur dengan sinyal yang diinginkan, sehingga
mengakibatkan komunikasi dapat terganggu. Sinyal
interferer
ini menempati suatu
bagian sempit atau terbatas dan tidak diketahui spektrumnya. Hal ini hanya dapat
diuraikan secara efektif menggunakan cara adaptif.
Sejalan dengan berkembangnya pengolahan sinyal digital, permasalahan –
permasalahan yang muncul dalam aplikasi tersebut dapat diatasi dengan
menggunakan algoritma tapis adaptif [2]. Pada saat ini, tapis adaptif banyak
digunakan dalam peralatan seperti
mobile phone
dan peralatan komunikasi lainnya,
camcoder
dan kamera digital, dan peralatan pengamatan medis.
Tapis adaptif terbentuk dari suatu algoritma tertentu. Untuk membentuk suatu
tapis adaptif, maka diperlukan suatu pemahaman terhadap algoritma – algoritma
pembentuknya. Oleh karena pemahaman tapis adaptif biasanya hanya diperoleh dari
buku – buku atau literatur
digital signal processing
, maka penulis ingin memberikan
kontribusi berupa simulasi suatu tapis adaptif dengan beberapa algoritma tapis
adaptif.
1.3
Tujuan dan Manfaat
Tujuan yang akan dicapai, yaitu
a.
merancang dan membuat simulasi tapis adaptif, dan
Manfaat yang dapat dicapai, yaitu
a.
mempermudah mahasiswa dalam pemahaman mengenai tapis adaptif, dan
b.
sebagai bahan untuk pengembangan dan aplikasi tapis adaptif di perkuliahan
digital signal processing
.
1.4
Batasan Masalah
Dalam perancangan dan simulasi ini memiliki batasan sebagai berikut :
a.
Simulasi tapis adaptif menggunakan algoritma
least mean square
(LMS).
b.
Simulasi tapis adaptif menggunakan algoritma
recursive least squares
(RLS).
c.
Simulasi tapis adaptif menggunakan perangkat lunak MATLAB
®.
1.5 Metodologi Penelitian
Metodologi yang digunakan penulis dalam penelitian adalah sebagai berikut :
a.
Mengumpulkan referensi dan literatur dari buku – buku perpustakaan dan
internet.
b.
Menyusun referensi dan literatur yang ada.
c.
Perancangan dan pembuatan simulasi terkonsep menggunakan perangkat lunak
yang telah ditentukan.
1.6 Sistematika Penulisan
Penulis menggunakan sistematika penulisan sebagai berikut :
BAB I
Berisi latar belakang masalah, tujuan dan manfaat dari penelitian,
batasan masalah, metodologi penelitian, dan sistematika penulisan.
BAB II
Berisi dasar teori tentang tapis Wiener, metode
steepest descent
,
algoritma LMS, dan algoritma RLS
BAB III
Berisi rancangan simulasi yang dibuat, meliputi diagram blok, bagan
alir program (
flow chart
), dan penjelasan singkat tentang cara
kerjanya.
BAB IV
Berisi data pengamatan dan pembahasan.
BAB V
Berisi kesimpulan dan saran.
DASAR TEORI
2.1 Tapis Adaptif
Tapis adaptif adalah sebuah tapis yang mengatur sendiri fungsi alihnya
menurut algoritma tertentu [3]. Tapis adaptif diperlukan pada saat sifat dari sistem
atau sinyal tidak diketahui atau berubah terhadap waktu, atau keluaran tapis yang
diinginkan berubah terhadap waktu. Hal ini mengakibatkan koefisien tapis berubah
terhadap waktu. Tapis adaptif merupakan tapis digital yang dapat menyesuaikan
kemampuannya berdasarkan sinyal masukannya.
2.1.1 Tapis Adaptif sebagai Sebuah
Noise Canceller
Tapis adaptif terdiri dari 2 bagian, yaitu sebuah tapis digital dengan koefisien
yang dapat diubah – ubah dan algoritma adaptif yang digunakan untuk mengubah
koefisien tapis [1]. Hal ini dapat dilihat dalam Gambar 2.1. Dua sinyal masukan,
yaitu
y
kdan
x
kdimasukkan secara bersamaan pada tapis adaptif. Sinyal
y
kmerupakan
sinyal campuran dari sinyal yang diinginkan,
s
k, dannoise
,
n
k. Sinyalx
k merupakanpengukur dari sinyal
noise
yang berkorelasi dengan
n
k. Sinyalx
k diproses oleh tapisdigital untuk menghasilkan pendekatan
noise
,
. Pendekatan dari sinyal yang
diinginkan diperoleh dari pengurangan sinyal
y
k
n
ˆ
k
dengan
n
ˆ
k.
Tapis
Digital
Algoritma
Adaptif
∑
k ks
e
=
ˆ
(pendekatan
sinyal)
k
n
ˆ
(pendekatan
noise
)
k
x
(
noise
)
_
+
k k k
s
n
y
=
+
(sinyal+
noise
)
Gambar 2.1
Diagram blok dari sebuah tapis
adaptif sebagai sebuah
noise canceller
[1].
Tujuan utama dari
noise canceller
adalah menghasilkan pendekatan optimal
dari
noise
dalam sinyal tercampur, sehingga diperoleh pendekatan optimal dari sinyal
yang diinginkan,
. Hal ini dicapai dengan
yang diumpanbalikkan untuk
mengatur koefisien tapis digital. Pengaturan koefisien tapis ini menggunakan
algoritma adaptif agar
noise
dalam
dapat diperkecil, yaitu dengan cara pencapaian
pendekatan optimal sinyal
. Selisih
s
k
s
ˆ
s
ˆ
kk
s
ˆ
k
n
ˆ
k dengandigunakan sebagai sinyal
error
untuk mengatur koefisien tapis.
k
s
ˆ
Gambar 2.1 menunjukkan adanya pengurangan sisa daya
noise
pada keluaran
canceller
yang akan memperbesar keluaran
signal – to – noise
ratio
.
Tunjukkan bahwa pengurangan sisa daya total pada keluaran
canceller
k k k k k
k
y
n
s
n
n
s
ˆ
=
−
ˆ
=
+
−
ˆ
Pendekatan dari sinyal yang diharapkan pada keluaran
adaptive noise
canceller
diberikan oleh
merupakan replika dari
n
k, maka daya keluaran akan hanya mengandungdaya sinyal. Hal ini terlihat jelas dalam persamaan (2.5). Sisa daya
noise
dan total daya keluaran diperkecil dengan mengatur tapis adaptif agar
mencapai pendekatan
noise
yang optimal. Daya sinyal yang diinginkan
tidak berpengaruh dengan pengaturan ini jika
s
ktidak berkorelasi dengan
dengan merupakan daya total sinyal,
merupakan pendekatan
dari daya sinyal (juga mewakili daya total keluaran), dan
merupakan sisa daya
noise
yang terdapat dalam
s
]
[
s
k2E
E
[
s
ˆ
k2]
]
)
ˆ
[(
n
kn
k 2E
−
k. Apabila pendekatan
n
ˆ
k]
)
ˆ
[(
]
[
]
ˆ
[
s
k2E
s
k2E
n
kn
k 2E
=
+
−
(2.5)
)]
ˆ
(
[
2
]
)
ˆ
[(
]
[
]
ˆ
[
s
k2E
s
k2E
n
kn
k 2E
s
kn
kn
kE
=
+
−
+
−
(2.4)
dengan
E
[.] merupakan simbol untuk estimasi. Jika sinyal yang diinginkan,
s
k, tidak berkolerasi dengann
k atau dengan, maka suku terakhir dari
persamaan (2.4) sama dengan nol, sehingga diperoleh
k
n
ˆ
)
ˆ
(
2
)
ˆ
(
ˆ
2 2 2k k k k k k
k
s
n
n
s
n
n
s
=
+
−
+
−
(2.3)
Estimasi dari kedua sisi persamaan (2.3) adalah
k k k k k
k
y
n
s
n
n
s
ˆ
=
−
ˆ
=
+
−
ˆ
(2.2)
Dengan menguadratkan persamaan (2.2) didapatkan
dan pendekatan sinyal yang diinginkan diberikan oleh
Sinyal terkontaminasi diberikan oleh
y
k= s
k+ n
k(2.1)
akan memperbesar keluaran
signal – to – noise
ratio
[1] !
n
k. Jadi,
]
)
ˆ
[(
min
]
[
]
ˆ
[
min
E
s
k2=
E
s
k2+
E
n
k−
n
k 2(2.6)
Persamaan (2.6) menjelaskan pengaruh dari memperkecil sisa daya
noise
akan memperbesar keluaran
signal – to – noise
ratio
. Kondisi ini secara
tidak langsung juga akan memperkecil daya total keluaran dari
canceller
.
Pada saat tapis mencapai kondisi
n
ˆ
k=
n
kdan
s
ˆ
k=
s
k, keluaran dari
adaptive noise canceller
menjadi bebas dari
noise
. Ketika sinyal
y
k tidakterdapat
noise
,
n
k=
0, pengolahan koefisien tapis adaptif berhenti secara
otomatis dengan mengatur kembali semua koefisien tapis dalam keadaan
nol.
2.2 Tapis Wiener
Algoritma adaptif dapat dilihat sebagai pendekatan tapis Wiener diskret [1].
Gambar 2.2 menunjukkan
x
k (noise
) dan
y
k (sinyal utama) dilewatkan dalam tapissecara bersamaan. Sinyal utama terdiri dari 2 komponen, yaitu sinyal informasi dan
noise
.
Noise
dalam
y
k berkorelasi denganx
k.∑
Tapis
Wiener
y
k(sinyal informasi +
noise
)
∑
− = −=
1 0)
(
ˆ
N i i k kw
i
x
n
Gambar 2.2
Dasar tapis Wiener [1].
x
k(
noise
)
+
_
e
k(keluaran)
Apabila struktur tapis FIR mempunyai jumlah koefisien N, maka tapis
Wiener menghasilkan pendekatan optimal dari komponen
y
kyang berkolerasi dengan
x
k, yang menghasilkan
error
,
e
k, sebagai
∑
− = −−
=
−
=
−
=
1 0)
(
ˆ
N i i k k k T k k kk
y
n
y
W
X
y
w
i
x
e
(2.7)
Vektor sinyal masukan,
X
k, dan vektor koefisien,W
, dinyatakan dengan
⎥
⎥
⎥
⎥
⎥
⎦
⎤
⎢
⎢
⎢
⎢
⎢
⎣
⎡
=
− − − ) 1 ( 1 N k k k kx
x
x
X
M
(2.8)
⎥
⎥
⎥
⎥
⎦
⎤
⎢
⎢
⎢
⎢
⎣
⎡
−
=
)
1
(
)
1
(
)
0
(
N
w
w
w
W
M
Apabila persamaan (2.7) dikuadratkan, maka diperoleh kuadrat
error
W
X
X
W
W
X
y
y
MSE (
mean square error
),
J
, didapatkan dari estimasi kedua sisi persamaan
(2.9). Dengan asumsi masukan vektor
X
k dan sinyaly
k merupakanstationary
, maka
J
dinyatakan sebagai
]
[
]
[
2
]
[
]
[
e
2E
y
2E
y
X
W
E
W
X
X
W
E
J
T k k T T k k kk
=
−
+
=
=
σ
2+
2
P
TW
+
W
TRW
(2.10)
dengan
σ
2=
E
[
y
k2]
merupakan varian
y
k,P
=
E
[
y
kX
k] merupakan panjang N vektorcross-correlation
, dan
merupakan matriks
autocorrelation
N x N.
Apabila
P
dan
R
tidak diketahui, maka perlu dilakukan pendekatan sebagai berikut
[4],
]
[
X
kX
kTE
R
=
∑
− = ∗−
=
1 0)
(
1
)
(
ˆ
N kk
x
k
i
x
N
i
R
(2.11)
∑
− = ∗−
=
1 0)
(
1
)
(
ˆ
N kk
x
k
i
y
N
i
P
(2.12)
dengan
R
ˆ
(
i
)
adalah pendekatan terhadap
R
dan
P
ˆ
(
i
)
adalah pendekatan terhadap
P
.
W
optW
0W
1J
minJ
Gambar 2.3
Permukaan
error
kuadrat
[1].
RW
P
W
J
2
2
+
−
=
∂
∂
=
∇
(2.13)
Gradien mencapai nilai nol pada titik terendah dari
plotting
, sedangkan vektor
koefisien tapis mencapai nilai optimal
W
opt[1]. Persamaan
W
opt dapat dinyatakansebagai
W
opt =R
-1P
(2.14)
Persamaan (2.14) dikenal sebagai persamaan atau solusi Wiener-Hopf. Persamaan
ini akan lebih mudah dipahami dengan melihat Contoh 2.2.
Jika diatur
∇
=
0
, maka
P
dW
W
P
d
T2
)
2
(
−
=
RW
dW
RW
W
d
T2
)
(
=
0
2=
dW
d
σ
kemudian
dW
RW
W
d
dW
W
P
d
dW
d
dW
dJ
2(
T)
(
T)
+
+
=
=
∇
σ
Dari persamaan (2.10), gradien
∇
dari MSE diperoleh dengan
mendeferensialkan MSE dan vektor koefisien
W
, dan menghasilkan nilai
nol
Penyelesaian
W
opt=
R
-1P
kemudian didapatkan vektor koefisien optimal
0
2
2
+
=
−
=
=
∇
P
RW
dW
dJ
2.2.1 Batasan Tapis Wiener
Tapis Wiener memiliki batasan – batasan sebagai berikut [1] :
1.
Membutuhkan matriks
autocorrelation
,
R
, dan vektor
cross-correlation
,
P
.
2.
Membutuhkan invers matriks.
3.
Mengubah
R
dan
P
seiring dengan waktu pada kondisi sinyal
nonstationar
sehingga
W
optsegera tercapai.
2.3 Metode
Steepest Descent
Komponen
W
kadalah sebuah pendekatan dari vektor yang memperkecil MSE
pada pencuplikan ke
– k
[4]. Pada waktu
k
+ 1, sebuah pendekatan baru dibentuk
dengan menambahkan koreksi
W
k, sehingga menyebabkan
W
klebih dekat dengan
hasil yang diharapkan. Koreksi yang dilakukan meliputi
step size
,
μ
, dalam arah
penurunan
maximum
pada permukaan
error
kuadrat yang dapat dilihat dalam
Gambar 2.3. Jadi persamaan
update
untuk
W
kadalah
J
W
Algoritma
steepest descent
dapat diurutkan sebagai berikut :
1.
Inisialisasi algoritma
steepest descent
dengan sebuah pendekatan
W
opt.2.
Evaluasi gradien dari
J
pada pendekatan
W
opt.
3.
Pembaruan pendekatan saat waktu ke
k
dengan menambahkan sebuah koreksi
step size
pada arah gradien negatif.
4.
Pengulangan proses dimulai dari langkah 2.
Vektor gradien,
, memerlukan asumsi bahwa
W
kompleks, sehingga
gradien merupakan turunan dari MSE dengan
W
J
∇
*
. Persamaan vektor gradien dapat
diperoleh sebagai
}
{
}
|
|
{
}
|
{|
e
k 2E
e
k 2E
e
ke
kE
J
=
∇
=
∇
=
∇
∗∇
(2.16)
dan
k k
X
e
∗=
−
∗∇
(2.17)
Dari persamaan (2.16) dan (2.17) didapatkan persamaan
}
{
e
kX
kE
J
=
−
∗∇
(2.18)
Jadi, algoritma
steepeset descent
menjadi
}
{{
1 k k k
k
W
E
e
X
W
+=
+
μ
∗(2.19)
Dalam kasus pengolahan
stationary
, algoritma
steepest descent
menjadi
W
k+1=
W
k+
μ
(
P
–
RW
k),
max
2
0
λ
μ
<
<
(2.20)
dengan
λ
maxmerupakan
eigenvalue
maksimal dari matriks korelasi,
R
.
Persamaan (2.14) disesuaikan pada persamaan (2.20), sehingga algoritma
steepest descent
menjadi
dengan
I
adalah sebuah matriks identitas.
Kemudian kedua sisi dari persamaan (2.21) dikurangi dengan
W
W
k+1–
W
= (
I
–
μ
R
)
W
k+
μ
RW
–
W
= [
I
–
μ
R
](
W
k–
W
) (2.22)
Jika
c
kmerupakan vektor
error
koefisien,
c
k =W
k–W
(2.23)
maka persamaan (2.22) menjadi
c
k+1= (
I
–
μ
R
)
c
k(2.24)
Dengan menggunakan teorema spektral, matriks
autocorrelation
,
R
, dapat
difaktorkan sebagai
R
= V
Λ
V
H(2.25)
Λ
merupakan matriks diagonal yang mengandung
eigenvalue
dari
R
, sedangkan V
merupakan matriks dengan kolom yang merupakan
eigenvector
dari
R
.
Persamaan (2.24) disubstitusi dengan persamaan (2.25) menghasilkan
c
k+1= (I –
μ
V
Λ
V
H)
c
k(2.26)
Apabila menggunakan sifat kesatuan V dan mengalikan kedua sisi persamaan dengan
V
H, maka diperoleh
V
Hc
k+1= (I –
μ
Λ
) V
Hc
k(2.27)
Jika didefinisikan
u
k = VHc
k(2.28)
maka persamaan (2.28) menjadi
dengan (I –
μ
Λ
) merupakan sebuah matriks diagonal.
W
k bertujuan untuk mencapaiW
, sehingga
c
kmengarah pada nilai nol. Hal ini mengakibatkan persamaan (2.28)
mengarah pada nilai nol.
Pengukuran lain yang juga penting dalam mengukur kemampuan tapis adaptif
adalah MSE. MSE minimal pada tapis Wiener dapat dinyatakan sebagai
W
P
P
J
min=
y(
0
)
−
H(2.30)
Jika vektor koefisien,
W
k, berubah – ubah, maka MSE
adalah
}
|
{|
}
|
{|
e
k 2E
y
kW
kTX
k 2E
J
=
=
−
=
P
y(
0
)
−
P
HW
k−
W
KHP
+
W
kHRW
k(2.31)
Komponen
W
k disubtistusi dengan persamaan (2.23) membentuk)
(
)
(
)
(
)
(
)
0
(
H k k H k H ky
P
W
c
W
c
P
W
c
R
W
c
P
J
=
−
+
−
+
+
+
+
(2.32)
Apabila menggunakan persamaan (2.14) dan mengembangkan hasil persamaan
(2.32), maka didapatkan
k H k H
y
P
W
c
Rc
P
J
=
(
0
)
−
+
(2.33)
Persamaan (2.33) disubstitusi dengan persamaan (2.30), sehingga
error
saat k adalah
k H k
Rc
c
J
J
=
min+
(2.34)
Apabila persamaan (2.34) diterapkan untuk u
k, maka persamaan (2.28) digabung
dengan persamaan (2.25), kemudian didapatkan
k H k
u
u
J
2.4 Algoritma LMS Adaptif
2.4.1 Dasar – Dasar LMS
Koefisien LMS diatur dari
sample to sample
seperti pada proses
memperkecil MSE [1]. LMS didasarkan pada algoritma
steepest descent
, yaitu
adanya pembaruan vektor koefisien dari
sample to sample
yang dinyatakan dengan
k k k
W
W
+1=
−
μ
∇
(2.36)
dengan
merupakan vektor gradien yang sebenarnya pada pencuplikan ke
k
, dan
μ
berfungsi untuk mengendalikan kestabilan dan tingkat konvergensi. Algoritma
persamaan (2.36) masih membutuhkan informasi dari
R
dan
P
, dengan perolehan
k
∇
k
∇
dari persamaan sebelumnya.
Pada algoritma LMS Widrow-Hopf, pembaruan koefisien dari
sample to
sample
dinyatakan dengan
k k k
k
W
e
X
W
+1=
+
2
μ
(2.37)
dan besar
e
k, yaitu
k T k k
k
y
W
X
e
=
−
(2.38)
Jadi, algoritma LMS tidak membutuhkan informasi terlebih dahulu dari
statistik sinyal (korelasi
R
dan
P
), akan tetapi menggunakan pendekatan secara
langsung.
k k k
W
W
+1=
−
μ
∇
Dapatkan algoritma Widrow-Hopf untuk
adaptive noise cancelling
dari
algoritma di atas dan uraikan alasan – alasan asumsi yang ada !
Penyelesaian
Algoritma
steepest descent
dinyatakan oleh
k k k
W
W
+1=
−
μ
∇
(2.39)
Vektor gradien,
∇
,
cross-correlation
antara masukan primer dan sekunder,
P
, dan
autocorrelation
dari masukan primer,
R
, dinyatakan sebagai
RW
P
2
2
+
−
=
∇
(2.40)
Pada algoritma LMS,
∇
didekati secara langsung. Jadi
k T k k k k k k k
k
=
−
2
P
+
2
R
W
=
−
2
X
y
+
2
X
X
W
∇
=
−
2
X
k(
y
k−
X
kTW
k)
=
−
2
e
kX
k(2.41)
e
kdidefinisikan sebagai
k T k k
k
y
X
W
e
=
−
Apabila persamaan (2.41) disubstitusi dalam persamaan algoritma
steepest
descent
, maka akan didapatkan algoritma LMS Widrow-Hopf dasar, yaitu
W
kW
ke
kX
kKoefisien yang diperoleh dari algoritma LMS hanya merupakan suatu
pendekatan. Pendekatan ini diperbaiki secara berangsur-angsur seiring waktu dengan
cara mengatur koefisien, sehingga tapis mampu mengikuti karakteristik dari sinyal
μ
2
1=
+
+
(2.42a)
dan besar
e
kadalah
k T k k
k
y
W
X
bahkan konvergensi dari koefisien
itu sendiri. Kondisi untuk konvergensi dinyatakan
sebagai
max
/
1
0
<
μ
<
λ
(2.43)
Pada
kenyataannya,
W
k tidak pernah mencapai kondisi optimal dari teorinya(solusi Wiener), tetapi berubah naik turun diantaranya. Hal ini terlihat jelas dalam
Gambar 2.4. Gambar 2.4 mengilustrasikan suatu pencapaian nilai
W
opt dengan caramengubah – ubah koefisien tapis.
W
optW
k
Gambar 2.4
Ilustrasi dari koefisien tapis yang bervariasi [1].
2.4.2 Implementasi Algoritma LMS
Langkah – langkah penghitungan dari algoritma LMS dapat diringkas sebagai
berikut [1] :
1.
Inisialisasi, dengan mengatur masing – masing koefisien
w
k(i
),
i
= 0, 1, …,
N
-1
pada nilai 0
2.
Hitung keluaran tapis
∑
−= −
=
10
)
(
ˆ
N i
i k k k
w
i
x
n
(2.44)
3.
Hitung pendekatan kesalahan
k k k
y
n
4.
Perbarui koefisien tapis yang berikutnya
i k k k
k
i
w
i
e
x
w
+1(
)
=
(
)
+
2
μ
−(2.46)
Penyelesaian langkah 2 sampai 4 dilakukan untuk masing – masing pencuplikan
k
=
1, 2, ….
Algoritma sederhana untuk tapis adaptif dengan LMS dapat ditunjukkan
dalam Gambar 2.5.
Inisialkan
w
k(i
) dan
x
k-iBaca
x
k dany
k dari ADCTapis
x
k∑
−= k i
k wi x
nˆ ()
Menghitung
error
k k k
y
n
e
=
−
ˆ
Menghitung faktor
2
μ
e
kKoefisien yang diperbarui
i k k k
k
i
w
i
e
x
w
+1(
)
=
(
)
+
2
μ
−2.4.3 Batasan Algoritma LMS
Ada beberapa masalah yang dihadapi ketika menggunakan algoritma LMS
[1]. Permasalahan – permasalahan tersebut adalah efek
non-stationarity
, efek dari
komponen sinyal masukan
noise
, kebutuhan
wordlength
, dan penyimpangan
koefisien.
2.4.3.1 Efek
Non-Stationarity
Dalam wilayah
stationary
,
plotting
tapis adaptif pada Gambar 2.3 mempunyai
bentuk konstan dan terarah. Tapis tersebut hanya berkonvergensi dan beroperasi pada
atau mendekati titik optimal [1]. Jika statistik sinyal berubah setelah koefisien
konvergen, maka tapis menanggapi perubahan tersebut dengan mengatur kembali
koefisiennya dalam kondisi baru dengan nilai yang optimal. Adanya perubahan
dalam stastistik sinyal menyebabkan tapis cukup lambat dalam mencapai
konvergensi.
Dalam wilayah
non – stationarity
, letak dari bagian bawah atau titik minimal
plotting
berubah seiring waktu, selain itu orientasi dan lengkungannya dapat berubah
juga. Jadi dalam kasus ini, algoritma LMS tidak hanya dapat mencari titik minimal
plotting
tetapi juga mampu mengikuti alur perubahan permukaan
error
kuadrat pada
plotting
, sehingga didapatkan kondisi
error
terendah.
2.4.3.2 Efek dari Komponen Sinyal Masukan
Noise
dan berkorelasi rendah (secara teori 0) dengan sinyal yang diinginkan [1].
2.4.3.3 Kebutuhan
Wordlength
Ketika tapis adaptif diimplementasikan secara praktis, koefisien tapis,
W
k,
dan variabel masukan,
x
kdan
y
k, diwakili dengan sejumlah bit terbatas [1].
Error
pada tapis adaptif terjadi karena pengaruh koefisien tapis dan hasil operasi aritmatika
yang memiliki akurasi yang terbatas. Hal ini akan mengakibatkan :
1.
Tapis adaptif dapat menjadi tidak konvergen (misalnya jika tapis digunakan
sebagai sebuah
interference canceller
, maka akan ada beberapa sisa
percampuran).
2.
Keluaran tapis dapat mengandung
noise
yang mengakibatkan kenaikan dan
penurunan secara acak.
3.
Penghentian algoritma secara tiba – tiba dapat terjadi.
Jadi, jumlah bit yang cukup harus digunakan untuk menjaga
error
pada
tingkat yang masih dapat ditoleransi. Kebanyakan sistem adaptif memiliki jumlah
tetap
x
k-idan
y
k pada 8 hingga 16 bit, dengan koefisien terkuantisasi antara 16 dan 24bit.
Multiplier
yang digunakan memiliki rentang 8 x 8 bit hingga 24 x 16 bit,
sedangkan akumulator memiliki rentang antara 16 dan 40 bit. Tapis dengan orde
rendah (hingga 100 koefisien) cukup untuk menyimpan koefisien tidak lebih dari 16
bit dengan
multiplier
16 x 16 bit dan akumulator 32 bit.
2.4.3.4 Pergeseran Koefisien
melebihi
wordlength
yang diijinkan [1]. Hal ini merupakan permasalahan yang
melekat dalam algoritma LMS, sehingga algoritma ini menjadi tidak konvergen.
Faktor kebocoran digunakan untuk menghilangkan pergeseran koefisien, yaitu
dengan cara membangkitkan koefisien menuju nol, sehingga menjadi konvergen.
Kedua pola LMS dapat dinyatakan sebagai berikut,
i k k k
k
i
w
i
e
x
w
+1(
)
=
δ
(
)
+
2
μ
−0
<
δ
<
1
(2.47)
δ
μ
±
+
=
−+ k k k i
k
i
w
i
e
x
w
1(
)
(
)
2
0
<
δ
<
1
(2.48)
dengan
δ
merupakan faktor kebocoran yang memastikan adanya pergeseran, akan
tetapi memberikan perlakuan khusus pada kondisi
error
,
e
k.
2.5 Algoritma
Recursive Least Squares
2.5.1 Dasar – dasar RLS
Algoritma RLS didasarkan dari pengetahuan metode
least square
(LS) [1].
Ide dasar dari
least square
ini ditunjukkan pada Gambar 2.6. Sinyal masukan dan
keluaran direlasikan dengan model regresi sederhana, yaitu
∑
−=
+
=
10
)
(
)
(
n i
k k
k
w
i
x
i
e
y
(2.49)
Permasalahan dalam metode LS setelah
x
k(
i
) dan
y
kdiberikan, adalah cara
memperoleh pendekatan dari
w
(0) hingga
w
(
N
-1). Pendekatan optimal dari koefisien
tapis,
w
(
i
), dalam cara
least squares
dinyatakan oleh
[
]
mT m m T m
m
X
X
X
Y
W
=
−1(2.50)
Y
m,W
m, danX
m dinyatakan sebagai berikut,⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = −1 2 1 0 m m y y y y Y M
(2.51)
(2.52)
⎥
⎥
⎥
⎥
⎥
⎥
⎦
⎤
⎢
⎢
⎢
⎢
⎢
⎢
⎣
⎡
−
=
)
1
(
)
2
(
)
1
(
)
0
(
m
x
x
x
x
X
T T T T mM
(2.53)
⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ − = ) 1 ( ) 2 ( ) 1 ( ) 0 ( N w w w w Wm MTapis
LS
∑
y
k (sinyal +noise
)
x
k (noise
)
n
ˆ
k+
_
e
k(keluaran)
dengan
x
T(
k
) = [
x
k(0)
x
k(1) ...
x
k(
N
-1)] untuk
k
= 0, 1, ...,
m
– 1 dan
m
merupakan indikasi bahwa masing – masing matriks diperoleh menggunakan semua
titik data
m
dan
T
merupakan tanda untuk matriks transposisi. Jadi, keluaran tapis
dapat diperoleh dengan
∑
− = −=
1 0)
(
ˆ
ˆ
n i i k kw
i
x
n
,
k
= 1, 2, ...,
m
(2.54)
Penghitungan
W
m dalam persamaan (2.50) membutuhkan waktu lama untukmenghitung invers matriks. Jadi, metode LS tidak sesuai untuk kebutuhan proses
dengan waktu cepat. Pada praktisnya, metode rekursif lebih dipilih ketika data
diperoleh secara berkesinambungan dan pendekatan terhadap
W
m dilakukan denganmenggunakan data baru. Pendekatan
W
mdapat diperbarui untuk setiap himpunan
data baru yang diperoleh tanpa mengulangi penyelesaian invers matriks secara
langsung dengan menggunakan algoritma RLS.
Algoritma RLS yang sesuai didapatkan dengan memperbarui koefisien data,
sehingga secara berangsur – angsur dapat menghilangkan pengaruh data sebelumnya
pada
W
mdan mengijinkan alur karakteristik sinyal yang berubah – ubah. Jadi,
k k k
k
W
G
e
W
=
−1+
(2.55a)
]
)
(
[
1
1 1 − −−
=
T kk k
k
P
G
x
k
P
P
γ
(2.55b)
dengan ketentuan
k k kk
x
P
G
α
)
(
1 −=
1)
(
−−
=
T kk
k
y
x
k
W
)
(
)
(
k
P
1x
k
x
T kk
=
γ
+
−α
dengan
P
kmerupakan sebuah cara rekursif dari penghitungan invers matriks
.
[
]
−1k T k
X
X
Variabek
k
merupakan jumlah yang diperoleh pada masing – masing titik
sample
. Variabel
γ
mewakili
forgetting factor
. Pola koefisien ini berkurang dari LS
ketika
γ
=
1
. Nilai
γ
berkisar antara 0.98 dan 1. Nilai yang lebih kecil menandakan
terlalu banyak koefisien untuk data baru yang berpengaruh dalam perubahan
pendekatan yang naik turun.
Jumlah dari
sample
yang sebelumnya, yang memberikan kontribusi penting
pada nilai
W
kuntuk setiap titik
sample
, disebut
asymptotic sample length
(ASL) dan
dinyatakan sebagai
∑
∞=
−
=
0
1
1
k k
γ
γ
(2.56)
ASL merupakan sebuah memori dari tapis RLS. Jika
γ
=
1
atau sesuai dengan LS,
maka tapis memiliki memori yang terbatas.
2.5.2 Batasan Algoritma RLS
Metode RLS sangat efisien karena operasi aritmatika antara
sample
seperti
W
kdan
P
kdalam persamaan (2.55) memiliki dimensi tetap [1]. Hal ini merupakan
kebutuhan penting untuk efisiensi penapisan dalam waktu sebenarnya. Ada 2
permasalahan yang akan dihadapi jika algoritma RLS diimplementasikan secara
langsung, yaitu :
ketika matriks
P
kakan mengembangkan eksponensial sebagai hasil dari
pembagian oleh
γ
(kurang dari 1) pada tiap titik
sample
⎟⎟
⎠
⎞
⎜⎜
⎝
⎛
=
− − ∞ → ∞
→
1 1
lim
lim
k k k k k
P
P
γ
(2.57)
2.
Sensitifitas pada penghitung untuk membulatkan
error
yang mengakibatkan
definisi negatif matriks
P
dan menjadi tidak stabil. Matriks
P
sangat penting
menjadi definisi semi positif (bentuk kuadratik
≥
0), sehingga sama dengan
kebutuhan dalam metode LS, yaitu matriks
X
TX
menjadi berkebalikan. Hal ini
bertujuan untuk keberhasilan pendekatan dari
W
. Oleh karena perbedaan kondisi
dalam persamaan (2.55b), maka sulit mencapai definisi positif (bentuk kuadratik
> 0) dari
P
.
PERANCANGAN
PROGRAM
3.1 Algoritma Perancangan Program
Algoritma perancangan program untuk tapis adaptif dapat dilihat dalam
Gambar 3.1.
Menentukan pilihan algoritma dari tapis adaptif
Mengatur tapis adaptif dan mengubah parameternya
Menampilkan
plotting
sinyal masukan, hasil
pengolahan sinyal masukan, dan
error
Memberikan
interference signal
sebagai acuan awal
Gambar 3.1
Algoritma perancangan program simulasi tapis adaptif.
Masukan sinyal dari pengguna
Pengguna memberikan masukan sesuai spesifikasi dan kriteria yang tersedia.
Apabila masukan ternyata tidak sesuai dengan spesifikasi dan kriteria yang tersedia,
maka pengguna diminta untuk memberikan masukan baru. Proses selanjutnya adalah
pengguna memberikan
interference signal
pada masukan sebagai acuan awal.
Kemudian pengguna melakukan pemilihan algoritma tapis adaptif yang akan
digunakan, yaitu berdasarkan algoritma LMS atau algoritma RLS. Tahap selanjutnya
adalah pengaturan dari tapis adaptif. Parameter dari tapis adaptif diatur oleh
algoritma adaptif sedemikian rupa sehingga diperoleh hasil yang sesuai dengan
keinginan pengguna. Tahap akhir adalah menampilkan
plotting
dari sinyal masukan,
hasil pengolahan sinyal masukan, dan besar
error
.
3.2 Perancangan Tampilan Depan
Tampilan depan merupakan bagian awal dari
layout
yang menjadi langkah
awal dari pengguna untuk memulai program yang dijalankan. Tampilan ini dapat
muncul apabila pengguna memanggil fungsi
judul.mpada
command window
dari
perangkat lunak MATLAB
®. Diagram alir dari
layout
”judul” dapat dilihat pada
Gambar 3.2.
Pada
layout
ini pengguna dapat melakukan pemilihan langkah mana yang
akan dijalankan. Ada 2 proses yang dapat dipilih, yaitu
start
untuk memulai program
dan
exit
untuk mengakhiri program. Apabila pengguna memilih
start
, maka proses
selanjutnya adalah memanggil fungsi
masukan.mdengan data yang telah terisi
secara
default
. Apabila pengguna tidak melakukan pemilihan, maka tampilan judul
tetap dalam keadaan diam hingga ada pilihan baru dari pengguna.
3.3 Perancangan Sinyal Masukan
Sinyal masukan yang akan diolah oleh tapis adaptif merupakan sinyal yang
telah tercampur dengan sinyal pengganggu. Sinyal ini berasal dari
file
dengan
ekstensi *.wav. Pengguna memberikan masukan berupa sinyal asli yang diperoleh
dari
file
berekstensi *.wav. Pada proses selanjutnya, data masukan akan diubah
menjadi bentuk matriks vektor untuk memudahkan pengolahan.
Kemudian pengguna memberikan masukan berupa amplitudo,
A
, dengan
satuan
mV
dan
V
dan frekuensi,
f
, dengan satuan
Hz
,
KHz
, dan
MHz
yang diinginkan
untuk sinyal pengganggu. Bilangan yang digunakan merupakan bilangan positif atau
random
. Hal ini akan membangkitkan sebuah sinyal baru yang berfungsi sebagai
interference signal.
3.4 Perancangan Sinyal Pengganggu Sebagai Acuan Awal
Sinyal pengganggu yang digunakan sebagai acuan awal untuk pengolahan
tapis adaptif merupakan sinyal yang dihasilkan dari masukan amplitudo dan
frekuensi tertentu dari pengguna. Pengguna juga dapat memilih amplitudo dan
frekuensi
random
. Apabila pengguna telah memasukkan amplitudo dan frekuensi
sesuai dengan yang diinginkan, maka secara otomatis akan dihasilkan sinyal
pengganggu dengan amplitudo dan frekuensi yang sesuai. Diagram alir untuk
perancangan sinyal pengganggu untuk acuan awal dapat dilihat dalam Gambar 3.4.
Pada Gambar 3.4 dapat dilihat bahwa perancangan menuju titik ”A”. Titik ”A”
menunjukkan bahwa perancangan berlanjut ke perancangan tapis adaptif.
3.5 Perancangan Program Simulasi Tapis FIR
Transversal Structure
Diagram blok untuk tapis adaptif
transversal
N-
tap
dapat dilihat dalam
Gambar 3.5 [1].
Gambar 3.5
Diagram blok tapis FIR
transversal structure
[1].
Tapis adaptif FIR ini menghasilkan pendekatan sinyal pengganggu,
dari
sinyal tercampur,
y
k
n
ˆ
k
. Hal ini telah dijelaskan dalam Gambar 2.1 mengenai
noise
canceller
. Keluaran yang dihasilkan memiliki persamaan
∑
−= −
=
10
)
(
ˆ
N i
i k k
w
i
x
n
(3.1)
dengan
w
(
i
) adalah koefisien tapis ke-
i
dan
x
k-i adalah sinyal pengganggu acuan awalyang merupakan masukan dari tapis.
Masukan dari pengguna berupa data sinyal tercampur dalam bentuk
file
perancangan FIR dapat dilihat dalam Gambar 3.6. Titik ”A” merupakan lanjutan dari
proses perancangan sinyal pengganggu acuan awal.
Gambar 3.6
Diagram alir perancangan FIR.
3.6 Perancangan Program Simulasi Tapis Adaptif Menggunakan
Algoritma LMS
Gambar 3.7 menunjukkan diagram alir untuk proses tapis adaptif dengan
menggunakan algoritma LMS.
Sebelum
menjalankan
proses
LMS,
terlebih dahulu dilakukan inisialisasi
w
k(i
) = 0,
x
k= 0, dan menentukan besarstep size
,
μ
, yang ingin digunakan. Apabila
nilai
μ
besar, maka proses estimasi berjalan cepat, akan tetapi konvergensinya rendah
[1]. Namun, apabila
μ
kecil, maka proses estimasi berjalan lambat dan
konvergensinya cukup tinggi. Syarat agar
μ
mencapai konvergensi adalah
max
/
1
0
<
μ
<
λ
(3.3)
Proses selanjutnya adalah memasukkan komponen
x
k ke dalam tapis FIR dan diolahuntuk menghasilkan pendekatan sinyal pengganggu, yaitu
∑
−= −
=
10
)
(
ˆ
N i
i k k
w
i
x
n
(3.4)
Langkah selanjutnya adalah mencari selisih dari sinyal tercampur dengan
pendekatan sinyal pengganggu, sehingga diperoleh pendekatan sinyal informasi yang
diinginkan. Apabila pendekatan sinyal informasi ini belum optimal, maka koefisien
akan diperbarui kembali dan proses penapisan
noise
kembali diulangi. Apabila
pendekatan sinyal informasi sudah optimal, maka diperoleh
error
minimal dan
koefisien tapis diatur kembali dalam inisialisasi awal sehingga proses berhenti.
3.7 Perancangan Program Simulasi Tapis Adaptif Menggunakan
Algoritma RLS
Nilai
γ
ini berkisar pada [1]
0 <
γ
≤
1
(3.5)
Proses selanjutnya adalah memasukkan komponen
x
kke dalam tapis FIR dan
diolah untuk menghasilkan pendekatan sinyal pengganggu, yaitu
∑
−= −
=
10
)
(
ˆ
N i
i k k
w
i
x
n
(3.6)
Langkah selanjutnya adalah mencari selisih dari sinyal tercampur dengan
pendekatan sinyal pengganggu, sehingga diperoleh pendekatan sinyal informasi yang
diinginkan. Apabila pendekatan sinyal informasi ini belum optimal, maka koefisien
akan diperbarui kembali dan proses penapisan
noise
kembali diulangi. Apabila
pendekatan sinyal informasi sudah optimal, maka diperoleh
error
minimal dan
koefisien tapis diatur kembali dalam inisialisasi awal sehingga proses berhenti.
Gambar 3.8 (lanjutan)
Diagram alir RLS tapis adaptif.
3.8 Perancangan
Layout
Program
Pada subbab ini menjelaskan perancangan
layout
program untuk tiap tahapan
proses tapis adaptif. Tahapan
layout
proses tapis adaptif yaitu program tampilan
depan, program langkah 1, dan program langkah 2.
3.8.1
Layout
Program Tampilan Depan
fungsi yang berbeda, yaitu
start
dengan menggunakan data
default
, dan
exit
untuk
mengakhiri program.
Layout
ini berkaitan dengan
flowchart
pada Gambar 3.2.
Gambar 3.9
Layout
program tampilan depan.
3.8.2
Layout
Program Langkah 1
Layout
tampilan program langkah 1 ditunjukkan pada Gambar 3.10.
Layout
program langkah 1 ini merupakan bagian untuk perancangan sinyal masukan yang
diinginkan oleh pengguna. Hal ini berkaitan dengan
flowchart
pada Gambar 3.3.
Sinyal masukan yang akan dirancang merupakan sinyal tercampur. Perancangan
sinyal masukan mempunyai 3 bagian, yaitu
1. Sinyal Asli
Static text
adalah area yang digunakan sebagai tempat untuk menampilkan
text
informasi. Pada bagian ini,
static text
berfungsi untuk menampilkan keterangan
tentang cara memasukkan
file
*.wav. Tombol
push button
mengarahkan pengguna
untuk mencari data *.wav yang diinginkan, mendengarkan suara dari data, dan
menampilkan data tersebut.
2. Sinyal Pengganggu
Bagian sinyal pengganggu berisi empat buah
static text
, dua buah
pop-up
menu
, dua buah
edit text
, dua buah
check box
, dan dua buah
push button
.
Static text
berfungsi untuk memberikan keterangan amplitudo dan frekuensi sinyal pengganggu
yang diinginkan pengguna.
Pop-up menu
berfungsi untuk memberikan pilihan satuan
yang akan digunakan.
Edit
text berfungsi untuk memasukkan bilangan positif yang
diinginkan.
Check box
berfungsi untuk memilih sinyal
random
sebagai sinyal
pengganggu dan melakukan proses data.
Push button
berfungsi untuk mendengarkan
suara dari data dan menampilkan data tersebut.
3. Pencampuran Sinyal
Bagian pencampuran sinyal ini berisi dua buah
push button
dan satu buah
Axes
Figure
Edit text
Check box
Static text
Pop-up menu
Push button
Gambar 3.10
Layout
program langkah 1.
3.8.3
Layout
Program Langkah 2
Gambar 3.11
Layout
program langkah 2.
Pada
layout
ini terdiri dari 3 bagian, yaitu