Klasifikasi Sinyal Radar Menggunakan Jaringan Saraf Tiruan.
ABSTRAK
Radar (radio detecting and ranging) merupakan suatu perangkat elektronis yang digunakan untuk mendeteksi suatu target. Dengan radar suatu target dapat dideteksi, seperti posisi target, kecepatan target, jarak target maupun bentuk target.
Dalam Tugas Akhir ini telah direalisasikan penggunaan jaringan saraf tiruan untuk mengklasifikasikan sinyal target pada radar. Jaringan saraf tiruan adalah salah satu pendekatan dalam bidang kecerdasan buatan yang sangat baik jika diaplikasikan untuk kasus pengklasifikasian pola. Untuk melatih jaringan saraf tiruan diperlukan pasangan data latih dan data target yang diperoleh dari contoh-contoh data radar.
Dari hasil pengujian dapat diperlihatkan bahwa jaringan saraf tiruan mampu mengklasifikasikan sinyal radar. Dari hasil pelatihan membuktikan penggunaan jaringan saraf tiruan mampu mengklasifikasikan sinyal radar dengan keberhasilan 100% untuk data radar yang dimiliki.
(2)
ABSTRACT
Radar ( radio detecting and ranging) is an electronic device that can be used to detect a target. By using a radar a target can be detected, namely its position, its velocity, its range or its shape.
In this Final Project, it has been implemented the artificial neural network to classify the target signals at a radar. Neural network is one approach in the field of a real good artificial intelligence if it was used for pattern classification.There must be a set of data training and a set of data target from data radar to make an artificial neural network can be trained.
From the simulations it was shown that an artificial neural network can classify radar signal. From the training process, it can be proved that the used of an artificial neural network can classify the radar signal with 100% successful rate for the radar data that was used.
(3)
DAFTAR ISI
LEMBAR
PENGESAHAN
SURAT PERNYATAAN
ABSTRAK
iABSTRACT
iiKATA
PENGANTAR
iii
DAFTAR ISI
vDAFTAR
TABEL
viiDAFTAR
GAMBAR
viii
BAB
I
PENDAHULUAN
1
1.1. Latar Belakang 1 1.2. Identifikasi Masalah 1
1.3. Tujuan 1
1.4. Pembatasan Masalah 2 1.5. Sistematika Penulisan 2
BAB
II
LANDASAN
TEORI
3
II.1. Radar 3
II.2. Jaringan Saraf Tiruan (JST) 5
II.2.1. Hubungan Antara Lapisan (Layer) dalam JST 6
II.2.2. Proses Pembelajaran dan Pelatihan 7
II.2.3. Feedback 8
II.2.4. Fungsi Aktivasi Dalam JST 8
II.2.5. Bias dan Threshold 11 II.2.6. Jaringan Saraf Tiruan Dengan Metoda
Brain State In The Box 11
BAB
III
PERANCANGAN
13
III.1. Jaringan Saraf Tiruan Pada Matlab 13
III.2. Blok Diagram Pelatihan 14
(4)
III.3 Diagram Alir Proses Pelatihan 15
III.4. Blok Diagram Pengujian 17
BAB IV PERCOBAAN DAN ANALISA
18IV.1. Data Masukan 18
IV.2. Data Target 20
IV.3. Pelatihan 22
IV.4. Analisa 32
BAB V KESIMPULAN DAN SARAN
33DAFTAR
PUSTAKA
34
Lampiran A Data Masukan dan Data Target
Lampiran B Isi Program dan Hasil Pelatihan
(5)
DAFTAR TABEL
Tabel IV.1. Data Masukan 1 19
Tabel IV.2. Data Target 21
(6)
DAFTAR GAMBAR
Gambar II.1. Prinsip Dasar Radar 3
Gambar II.2. Blok Diagram Radar 4
Gambar II.3. Prinsip Jaringan saraf tiruan 5
Gambar II.4. Jaringan Lapis Tunggal 6
Gambar II.5. Jaringan Lapis Banyak 7
Gambar II.6. Fungsi Tangga Biner 9
Gambar II.7. Fungsi Linear 9
Gambar II.8. Fungsi Sigmoid Biner 10
Gambar II.8. Fungsi Bipolar 10
Gambar II.9. Blok diagram Brain state In the box 12
Gambar III.1. Gambar Fungsi Secara Umum 13
Gambar III.2. Gambar Jaringan Saraf tiruan 13
Gambar III.3. Blok Diagram Pelatihan 15
Gambar III.4. Diagram Alir Proses Pelatihan 16
Gambar III.5. Blok Diagram Pengujian 17
Gambar IV.1. Proses Pelatihan I 22
Gambar IV.2. Proses pelatihan II 23
Gambar IV.3. Proses pelatihan III 24
Gambar IV.4. Proses pelatihan IV 25
Gambar IV.5. Proses pelatihan V 26
Gambar IV.6. Proses pelatihan VI 27
Gambar IV.7. Proses pelatihan VII 28
Gambar IV.8. Proses pelatihan VIII 29
Gambar IV.9. Proses pelatihan IX 30
Gambar IV.10. Proses pelatihan X 31
(7)
Lampiran A
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
(16)
(17)
(18)
(19)
(20)
(21)
(22)
(23)
(24)
(25)
(26)
Lampiran B
(27)
Pelatihan clear;
close all; clc;
% ---% %% Program untuk klasifikasi sinyal radar % ---% %---% %% Sinyal masukan % %---% for j=1:3
[nama_file_masukan,path_file_masukan]=uigetfile('*.mat','Pilih file masukan'); load (nama_file_masukan); x=f; x=abs(x); [brs kol]=size(x); for k=1:brs for m=1:kol if x(k,m)>0 x(k,m)=1; else x(k,m)=-1; end; end; end; if j==1 x1=x; elseif j==2 x2=x; elseif j==3 x3=x; end; clear x f; end clear j k m
masukan_1=x1(1:180,1)'; masukan_2=x2(1:180,1)'; masukan_3=x3(1:180,1)'; bias=ones(1,180);
%---% %% Sinyal target % %---%
[nama_file_target,path_file_target]=uigetfile('*.mat','Pilih file target'); load (nama_file_masukan); x=f; x=abs(x); [brs kol]=size(x); for k=1:brs for m=1:kol if x(k,m)>0 B-1
(28)
x(k,m)=1; else x(k,m)=-1; end; end; end; x4=x; target=x4(1:180,1)'; clear x f;
%---% % % Inisialisasi % %---% alpha=0.1; bobot_bias=zeros(1,180); bobot_masukan_1=zeros(1,180); bobot_masukan_2=zeros(1,180); bobot_masukan_3=zeros(1,180); keluaran=zeros(1,180); iterasi=0; delta_bobot_masukan_1(1)=alpha.*(target(1)-keluaran(1)).*masukan_1(1); delta_bobot_masukan_2(1)=alpha.*(target(1)-keluaran(1)).*masukan_2(1); delta_bobot_masukan_3(1)=alpha.*(target(1)-keluaran(1)).*masukan_3(1); delta_bobot_bias(1)=alpha.*(target(1)-keluaran(1)); maks=[delta_bobot_masukan_1(1),delta_bobot_masukan_2(1),bobot_masukan_3(1),... delta_bobot_bias(1)]; maks=max(maks); disp(['Mulai iterasi']); % temp=zeros(2,40); % temp(1,1:40)=1:1:40; while maks~=0
disp(' '); iterasi=iterasi+1;
disp(['Ini adalah epoch ke-',num2str(iterasi)]);
net(1)=masukan_1(1).*bobot_masukan_1(1)+masukan_2(1).*bobot_masukan_2(1)+... masukan_3(1).*bobot_masukan_3(1)+bobot_bias(1); keluaran(1)=net(1); if keluaran(1)~=target(1) delta_bobot_masukan_1(1)=alpha.*(target(1)-keluaran(1)).*masukan_1(1); delta_bobot_masukan_2(1)=alpha.*(target(1)-keluaran(1)).*masukan_2(1); delta_bobot_masukan_3(1)=alpha.*(target(1)-keluaran(1)).*masukan_3(1); delta_bobot_bias(1)=alpha.*(target(1)-keluaran(1)); else delta_bobot_masukan_1(1)=0; delta_bobot_masukan_2(1)=0; delta_bobot_masukan_3(1)=0; delta_bobot_bias(1)=0; end; bobot_masukan_1(1)=bobot_masukan_1(1)+delta_bobot_masukan_1(1); bobot_masukan_2(1)=bobot_masukan_2(1)+delta_bobot_masukan_2(1); bobot_masukan_3(1)=bobot_masukan_3(1)+delta_bobot_masukan_3(1); bobot_bias(1)=bobot_bias(1)+delta_bobot_bias(1); for j=2:brs,j; B-2
(29)
net(j)=masukan_1(j).*bobot_masukan_1(j-1)+masukan_2(j).*bobot_masukan_2(j-1)+... masukan_3(j).*bobot_masukan_3(j-1)+bobot_bias(j-1); keluaran(j)=net(j); if keluaran(j)~=target(j) delta_bobot_masukan_1(j)=alpha.*(target(j)-keluaran(j)).*masukan_1(j); delta_bobot_masukan_2(j)=alpha.*(target(j)-keluaran(j)).*masukan_2(j); delta_bobot_masukan_3(j)=alpha.*(target(j)-keluaran(j)).*masukan_3(j); delta_bobot_bias(j)=alpha.*(target(j)-keluaran(j)); else delta_bobot_masukan_1(j)=0; delta_bobot_masukan_2(j)=0; delta_bobot_masukan_3(j)=0; delta_bobot_bias(j)=0; end; bobot_masukan_1(j)=bobot_masukan_1(j-1)+delta_bobot_masukan_1(j); bobot_masukan_2(j)=bobot_masukan_2(j-1)+delta_bobot_masukan_2(j); bobot_masukan_3(j)=bobot_masukan_3(j-1)+delta_bobot_masukan_3(j); bobot_bias(j)=bobot_bias(j-1)+delta_bobot_bias(j); end; bobot_masukan_1(1)=bobot_masukan_1(brs); bobot_masukan_2(1)=bobot_masukan_2(brs); bobot_masukan_3(1)=bobot_masukan_3(brs); bobot_bias(1)=bobot_bias(brs); maks=[delta_bobot_masukan_1(brs),delta_bobot_masukan_2(brs),... delta_bobot_masukan_3(brs),delta_bobot_bias(brs)]; maks=max(maks); maks_skala=maks.*1e12 maks_plot(iterasi)=maks_skala; temp(1,iterasi)=iterasi; temp(2,iterasi)=maks_skala; disp(' ');
j; clear j; % pause;
end; end;
%---% %% Gambar kurva kesalahan terhadap epoch %---% figure;
plot(1:iterasi,maks_plot(1:iterasi));grid; title('Hasil simulasi pertama');
xlabel('Epoch ke-');ylabel('Kesalahan'); x_maks=iterasi+2;
y_maks=max(maks_plot)+5e-14; axis([0 x_maks -5e-13 y_maks])
(30)
Bab I
PENDAHULUAN
1.1. Latar Belakang
Aplikasi yang umum dari suatu sistem radar adalah mendeteksi jarak. Untuk mendapatkan informasi jarak, maka suatu sistem radar biasanya mengirimkan sebuah pulsa dengan daya yang cukup besar ke arah target atau obyek. Informasi jarak dapat diperoleh jika pulsa yang dikirimkan ke target dipantulkan sebagian ke penerima sistem radar dan menghitung waktu delay hingga sampai di penerima.
Walaupun demikian, jika terdapat beberapa sistem radar yang beroperasi secara bersamaan di wilayah yang sama, maka sebuah penerima yang sangat sensitif akan mendeteksi berbagai sinyal sehingga harus dilakukan de-interleave terhadap sinyal-sinyal tersebut untuk masing-masing sistem radar. Hal ini dilakukan untuk memisahkan sinyal-sinyal tersebut untuk masing-masing sistem radar.
1.2. Identifikasi Masalah
Bagaimana jaringan saraf tiruan (JST) dapat mengklasifikasikan sinyal yang diterima untuk masing-masing sistem radar dan bagaimana kinerja pengklasifikasian sinyal yang diterima untuk masing-masing sistem radar ?
1.3. Tujuan
Tugas Akhir ini bertujuan untuk menganalisa pengklasifikasian sinyal radar menggunakan JST dan juga menghitung persentase kesalahan pengklasifikasian sinyal yang diterima untuk masing-masing sistem radar.
(31)
2
1.4. Pembatasan Masalah
Dalam Tugas Akhir ini pengklasifikasian radar dengan menggunakan JST akan dibatasi dengan pembatasan masalah antara lain :
1. Sinyal input, target dan output berupa sinyal bipolar.
2. Jumlah sistem radar yang beroperasi secara serentak ada 3 buah. 3. Model jaringan saraf tiruan yang digunakan adalah
Brain-State-in-a-Box (BSB).
4. Simulasi dengan menggunakan software matlab 6.5.
1.5. Sistematika Penulisan
Penulisan laporan Tugas Akhir terdiri dari lima bab, dengan susunan sebagai berikut :
• Bab I Pendahuluan
Bab ini menjelaskan tentang latar belakang, identifikasi masalah, tujuan, pembatasan masalah dan sistematika penulisan.
• Bab II Teori Penunjang
Bab ini berisi tentang landasan teori yang berkaitan dengan Tugas Akhir ini, seperti dasar teori dari radar, JST, serta metode pelatihan yang digunakan.
• Bab III Perancangan dan Realisasi
Berisi tentang perancangan perangkat lunak yang dibuat dan diagram alir yang meliputi pelatihan data dan prediksi data.
• Bab IV Pengujian dan Analisa
Berisi tentang hasil data percobaan dan analisa terhadap hasil yang diperoleh dari pengujian perangkat lunak yang sudah dibuat.
• Bab V Kesimpulan dan Saran
Bab ini berisikan kesimpulan dari hasil pengamatan dan saran-saran untuk pengembangan lebih lanjut.
(32)
BAB V
KESIMPULAN DAN SARAN
V.1. Kesimpulan
Kesimpulan yang dapat diambil dari Tugas Akhir ini adalah :
1. Berdasarkan hasil percobaan dapat disimpulkan bahwa program dapat menghasilkan keluaran sesuai dengan target.
2. Hasil pelatihan menunjukkan sinyal radar dapat diklasifikasi dengan menggunakan jaringan saraf tiruan dengan tingkat keberhasilan klasifikasi 100% untuk data radar yang digunakan.
V.2. Saran
Selain data radar posisi ini dapat juga digunakan data radar yang lain, seperti radar cuaca, radar polusi dan lain-lain.
(33)
DAFTAR PUSTAKA
1. Anderson J.A., Silverstein J.W., Ritz S.A. and Jones R.S., “Distinctive features, categorical perception, and probability learning: Some applications of a neural model”, Psychological Review, 1977.
2. Demuth, Howard and Mark Beale, “Neural Network Toolbox User’s Guide”, The Math Works, 1994.
3. Edde, Byron, “Radar Principle, Technology, Application”, Prentice-Hall International, Inc, United State of America, 1993.
4. Jong, J.S, “Jaringan Saraf Tiruan dan Pemrogramannya Menggunakan
Matlab”, Penerbit Andi, Yogyakarta, 2005.
5. Kristanto, Andri, ”Jaringan Saraf Tiruan : Konsep Dasar, Algoritma dan Aplikasi”, Edisi Pertama, Penerbit Gava Media, Yogyakarta, 2004.
6. Kumar, Satish, “Neural Network: A Classroom Approach”, McGraw-Hill, Singapore, 2005.
7. Kusumadewi, Sri, “Membangun Jaringan Saraf Tiruan Menggunakan Matlab & Excel Link”, Penerbit Graha Ilmu, Yogyakarta, 2004.
(1)
x(k,m)=1; else x(k,m)=-1; end; end; end; x4=x; target=x4(1:180,1)'; clear x f;
%---% % % Inisialisasi % %---% alpha=0.1; bobot_bias=zeros(1,180); bobot_masukan_1=zeros(1,180); bobot_masukan_2=zeros(1,180); bobot_masukan_3=zeros(1,180); keluaran=zeros(1,180); iterasi=0; delta_bobot_masukan_1(1)=alpha.*(target(1)-keluaran(1)).*masukan_1(1); delta_bobot_masukan_2(1)=alpha.*(target(1)-keluaran(1)).*masukan_2(1); delta_bobot_masukan_3(1)=alpha.*(target(1)-keluaran(1)).*masukan_3(1); delta_bobot_bias(1)=alpha.*(target(1)-keluaran(1)); maks=[delta_bobot_masukan_1(1),delta_bobot_masukan_2(1),bobot_masukan_3(1),... delta_bobot_bias(1)]; maks=max(maks); disp(['Mulai iterasi']); % temp=zeros(2,40); % temp(1,1:40)=1:1:40; while maks~=0
disp(' '); iterasi=iterasi+1;
disp(['Ini adalah epoch ke-',num2str(iterasi)]);
net(1)=masukan_1(1).*bobot_masukan_1(1)+masukan_2(1).*bobot_masukan_2(1)+... masukan_3(1).*bobot_masukan_3(1)+bobot_bias(1); keluaran(1)=net(1); if keluaran(1)~=target(1) delta_bobot_masukan_1(1)=alpha.*(target(1)-keluaran(1)).*masukan_1(1); delta_bobot_masukan_2(1)=alpha.*(target(1)-keluaran(1)).*masukan_2(1); delta_bobot_masukan_3(1)=alpha.*(target(1)-keluaran(1)).*masukan_3(1); delta_bobot_bias(1)=alpha.*(target(1)-keluaran(1)); else delta_bobot_masukan_1(1)=0; delta_bobot_masukan_2(1)=0; delta_bobot_masukan_3(1)=0; delta_bobot_bias(1)=0; end; bobot_masukan_1(1)=bobot_masukan_1(1)+delta_bobot_masukan_1(1); bobot_masukan_2(1)=bobot_masukan_2(1)+delta_bobot_masukan_2(1); bobot_masukan_3(1)=bobot_masukan_3(1)+delta_bobot_masukan_3(1); bobot_bias(1)=bobot_bias(1)+delta_bobot_bias(1); for j=2:brs,j;
B-2
(2)
net(j)=masukan_1(j).*bobot_masukan_1(j-1)+masukan_2(j).*bobot_masukan_2(j-1)+... masukan_3(j).*bobot_masukan_3(j-1)+bobot_bias(j-1); keluaran(j)=net(j); if keluaran(j)~=target(j) delta_bobot_masukan_1(j)=alpha.*(target(j)-keluaran(j)).*masukan_1(j); delta_bobot_masukan_2(j)=alpha.*(target(j)-keluaran(j)).*masukan_2(j); delta_bobot_masukan_3(j)=alpha.*(target(j)-keluaran(j)).*masukan_3(j); delta_bobot_bias(j)=alpha.*(target(j)-keluaran(j)); else delta_bobot_masukan_1(j)=0; delta_bobot_masukan_2(j)=0; delta_bobot_masukan_3(j)=0; delta_bobot_bias(j)=0; end; bobot_masukan_1(j)=bobot_masukan_1(j-1)+delta_bobot_masukan_1(j); bobot_masukan_2(j)=bobot_masukan_2(j-1)+delta_bobot_masukan_2(j); bobot_masukan_3(j)=bobot_masukan_3(j-1)+delta_bobot_masukan_3(j); bobot_bias(j)=bobot_bias(j-1)+delta_bobot_bias(j); end; bobot_masukan_1(1)=bobot_masukan_1(brs); bobot_masukan_2(1)=bobot_masukan_2(brs); bobot_masukan_3(1)=bobot_masukan_3(brs); bobot_bias(1)=bobot_bias(brs); maks=[delta_bobot_masukan_1(brs),delta_bobot_masukan_2(brs),... delta_bobot_masukan_3(brs),delta_bobot_bias(brs)]; maks=max(maks); maks_skala=maks.*1e12 maks_plot(iterasi)=maks_skala; temp(1,iterasi)=iterasi; temp(2,iterasi)=maks_skala; disp(' ');
j; clear j; % pause;
end; end;
%---% %% Gambar kurva kesalahan terhadap epoch %---% figure;
plot(1:iterasi,maks_plot(1:iterasi));grid; title('Hasil simulasi pertama');
xlabel('Epoch ke-');ylabel('Kesalahan'); x_maks=iterasi+2;
y_maks=max(maks_plot)+5e-14; axis([0 x_maks -5e-13 y_maks])
(3)
Bab I
PENDAHULUAN
1.1. Latar Belakang
Aplikasi yang umum dari suatu sistem radar adalah mendeteksi jarak.
Untuk mendapatkan informasi jarak, maka suatu sistem radar biasanya
mengirimkan sebuah pulsa dengan daya yang cukup besar ke arah target atau
obyek. Informasi jarak dapat diperoleh jika pulsa yang dikirimkan ke target
dipantulkan sebagian ke penerima sistem radar dan menghitung waktu delay
hingga sampai di penerima.
Walaupun demikian, jika terdapat beberapa sistem radar yang beroperasi
secara bersamaan di wilayah yang sama, maka sebuah penerima yang sangat
sensitif akan mendeteksi berbagai sinyal sehingga harus dilakukan de-interleave
terhadap sinyal-sinyal tersebut untuk masing-masing sistem radar. Hal ini
dilakukan untuk memisahkan sinyal-sinyal tersebut untuk masing-masing sistem
radar.
1.2. Identifikasi Masalah
Bagaimana jaringan saraf tiruan (JST) dapat mengklasifikasikan sinyal
yang diterima untuk masing-masing sistem radar dan bagaimana kinerja
pengklasifikasian sinyal yang diterima untuk masing-masing sistem radar ?
1.3. Tujuan
Tugas Akhir ini bertujuan untuk menganalisa pengklasifikasian sinyal
radar menggunakan JST dan juga menghitung persentase kesalahan
pengklasifikasian sinyal yang diterima untuk masing-masing sistem radar.
(4)
2
1.4. Pembatasan Masalah
Dalam Tugas Akhir ini pengklasifikasian radar dengan menggunakan JST
akan dibatasi dengan pembatasan masalah antara lain :
1.
Sinyal input, target dan output berupa sinyal bipolar.
2.
Jumlah sistem radar yang beroperasi secara serentak ada 3 buah.
3.
Model jaringan saraf tiruan yang digunakan adalah
Brain-State-in-a-Box (BSB).
4.
Simulasi dengan menggunakan software matlab 6.5.
1.5. Sistematika Penulisan
Penulisan laporan Tugas Akhir terdiri dari lima bab, dengan susunan
sebagai berikut :
•
Bab I Pendahuluan
Bab ini menjelaskan tentang latar belakang, identifikasi masalah, tujuan,
pembatasan masalah dan sistematika penulisan.
•
Bab II Teori Penunjang
Bab ini berisi tentang landasan teori yang berkaitan dengan Tugas Akhir
ini, seperti dasar teori dari radar, JST, serta metode pelatihan yang
digunakan.
•
Bab III Perancangan dan Realisasi
Berisi tentang perancangan perangkat lunak yang dibuat dan diagram alir
yang meliputi pelatihan data dan prediksi data.
•
Bab IV Pengujian dan Analisa
Berisi tentang hasil data percobaan dan analisa terhadap hasil yang
diperoleh dari pengujian perangkat lunak yang sudah dibuat.
•
Bab V Kesimpulan dan Saran
Bab ini berisikan kesimpulan dari hasil pengamatan dan saran-saran untuk
pengembangan lebih lanjut.
(5)
BAB V
KESIMPULAN DAN SARAN
V.1. Kesimpulan
Kesimpulan yang dapat diambil dari Tugas Akhir ini adalah :
1.
Berdasarkan hasil percobaan dapat disimpulkan bahwa program dapat
menghasilkan keluaran sesuai dengan target.
2.
Hasil pelatihan menunjukkan sinyal radar dapat diklasifikasi dengan
menggunakan jaringan saraf tiruan dengan tingkat keberhasilan klasifikasi
100% untuk data radar yang digunakan.
V.2. Saran
Selain data radar posisi ini dapat juga digunakan data radar yang lain,
seperti radar cuaca, radar polusi dan lain-lain.
(6)