Bab 3 Analisis Dan Perancangan Sistem
3.3 Permodelan
3.3.3 Use Case Backpropagation
Tabel 3.2 menunjukkan naratif use case Backpropagation
Nama Use case Proses Backpropagation
Aktor Pengguna
Deskripsi Use case ini mendeskripsikan proses Backpropagation
dan sudah siap menerima masukan dari Jaringan Syaraf
Tiruan.
Bidang Khas
Aksi Aktor Respon Sistem
Langkah 1 : Pengguna
memilih tombol Data
Training untuk mengisi
Nama File Pelatihan.
Langkah 2 : Sistem
memanggil Data Pegawai
dan menampilkan kedalam
List Box Pelatihan
Backpropagation.
Langkah 3 : Pengguna
memilih tombol Data Uji
untuk mengisi Nama File
Pengujian.
Langkah 4 : Sistem
memaggil Data Pegawai
Uji dan menampilkan
kedalam List Box Data
Pengujian.
Langkah 5 : Pengguna
memilih tombol Training
Langkah 6 : Sistem
mengolah data pelatihan
dan hasilnya akan
ditampilkan kedalam
grafik training dan grafik
pelatihan.
Langkah 7 : Pengguna
memilih tombol Pengujian
Langkah 8 : Sistem
mengolah pengujian data
dan hasilnya akan
ditampilkan dalam grafik
pengujian serta
pengujian.
Langkah 9 : Sistem akan
menampilkan hasil
prediksi layak atau tidak
pegawai mendapatkan
kenaikan golongan berupa
target dimana apabila
target 1 = layak, dan target
2 = tidak layak
Bidang Alternatif
Langkah 10 : Pengguna
akan memilih tombol
Bersih.
Langkah 11 : Sistem akan
berfungsi menghapus
memori dan tampilan Data
Pelatihan dan data
pengujian
Backpropagation
Langkah 12 : Pengguna
akan memilih Tombol
Keluar.
Langkah 13 : Sistem akan
berfungsi untuk
mengakhiri aplikasi
Backpropagation dan
kembali ke Menu Utama.
Post-Kondisi Sistem akan menampilkan hasil prediksi Layak atau
tidaknya Pegawai mendapatkan kenaikan golongan.
Activity diagram untuk use case Backpropagation diperlihatkan pada Gambar 3.4
PENGGUNA SISTEM
Memilih Tombol Data Training Memanggil Data Pegawai dan menampilkan kedalam List Box Data Pelatihan
Pilih Tidak
Memanggil Data Pegawai Uji dan menampilkan kedalam List Box Data Uji Validasi Kesesuaian parameter
Sesuai
Tidak Sesuai
Menampilkan hasil prediksi layak atau tidak layak mendapatkan kenaikan golongan Pilih
Tidak
Validasi Kesesuaian proses
Tidak Sesuai
Sesuai
Tidak Sesuai Sesuai
Tidak
Validasi Kesesuaian proses Tombol Data Uji
Tombol Training
Tombol Pengujian
Pilih
Mengolah Data Pengujian, menampilkan kedalam grafik dan menghasilkan waktu pengujian Mengolah Data Pelatihan, menampilakn kedalam grafik Training dan Pelatihan
3.3.4 Analisis Proses Sistem
Berikut ini dijelaskan proses Backpropagation yang terjadi pada sistem dengan
menggunakan sequence diagram.
3.3.4.1 Proses LVQ
Pada proses LVQ, input Data pelatihan dan target dimana data pelatihan ada 40 data
dan target yang diinginkan ada dua yaitu layak dan tidak layak. Kemudian target yang
diinput diubah kedalam vektor. Pada tahap selanjutnya tentukan jumlah ukuran kelas
dan jumlah neuron yang akan digunakan. Di dalam program jumlah kelas ada 2 yaitu,
k1= layak dan k2 = tidak layak, jumlah neuron ada empat neuron. Selanjutnya jaringan
yang akan dibangun dipakai newlvq dan cara untuk menentukan kelas yang diproses
digunakan net = newlvq(minmax(P),JumNeuron,(1/Jumkls)*ones(1,Jumkls)) setelah
kelas diperoleh berdasarkan nilai jarak maka di inputkan nilai parameter dan
trainingnya. Didalam program nilai-nilai parameternya sebagai berikut :
net.trainParam.epochs = 100
net.trainParam.goal = 0.01
Pada tahapan selanjutnya dilakukan training data dengan cara memanggil data
pelatihan utk dilakukan training dan memanggil data pengujian. Data pelatihan di
training pada saat diproses maka akan muncul grafik yang menggambarkan hubungan
epoh dan goalnya. Apabila epoh sudah mencapai 100 epoh atau apabila learning
goalnya sudah mencapai 0.01 maka grafik akan berhenti.
Tahapan selanjutnya data dari pengujian yang baru diuji untuk menentuka
kelas dan neuronnya.Waktu proses pengujian akan ditampilkan dan Kelas, neuronnya
akan ditampilkan dalam grafik prediksi dimana k1 = layak, k2 = tidak layak. Sequence
diagram untuk proses LVQ diperlihatkan pada Gambar 3.5.
Input Data Pelatihan
dan Target Ubah Target ke Vektor bangun Jaringan LVQ Kelas Input Parameter dan Training Training Pengujian Grafik
Proses Pengubahan
newlvq
Epoh, nilai goal yang diharapkan Proses training Proses Pengujian Tampilkan hasil prediksi Buat kelas berdasarkan Jarak Top Package::Program
Gambar 3.5 Sequence Diagram Proses LVQ
Berikut adalah algoritma dari Proses LVQ pada sistem memprediksi kenaikan
golongan pegawai :
1. Pelatihan
DataLatih textread(fullfile(nama_path, nama_file_Latih))
N1 Nilai Kinerja N2 Lama Kerja N3 Nilai Psikotes p DataLatih (N1,N2,N3,:K) t DataLatih (:,K) T ind2vec(t) Jumkls size(full(T),1) JumNeuron 4 net newlvq(minmax(P),JumNeuron,(1/Jumkls)*ones(1,Jumkls)); net.trainParam.epochs = 100; net.trainParam.goal=0.01; net = train(net,P,T); BobotAkhir_Input=net.IW{1,1} BobotAkhir_Lapisan=net.LW{2,1} Hc = sim(net,p); H = vec2ind(Hc) net net(save)
2. Pengujian
Data Uji textread(fullfile(nama_path, nama_file_Uji))
net net (save)
M1 Nilai Kinerja
M2 Lama Kerja
M3 Nilai Psikotes
A Data Uji (M1,M2,M3:KU)
Yc sim(net,A)
Y vec2ind(Yc)
%Tampilkan hasil pengujian dalam grafik
Layak 1
TidakLayak 2
3.3.4.2 Proses Backpropagation
Pada proses Backpropagation, input data pelatihan dan target. Dimana data pelatihan
ada 40 data, target yang diinginkan ada dua pola yaitu layak dan tidak layak.
Selanjutnya dilakukan proses data pelatihan dan target dengan melakukan penskalaan
data agar masuk range [-1 1]. Pada tahapan selanjutnya akan dibangun jaringan
dengan menggunakan newff dan set bobot awal, hidden dan bias. Bobot awal
dilakukan secara random, jaringan yang dibangun ada tiga lapisan dimana lapisan
pertama memiliki sepuluh neuron dan diproses dengan menggunakan tansig, lapisan
kedua memiliki lima neuron dan diproses dengan menggunakan logsig, dan lapisan
ketiga memiliki satu neuron di proses dengan purelin dan hasil dari ketiga lapisan
tersebut akan diproses dengan menggunakan traingdm.
Pada tahapan selanjutnya input nilai-nilai parameter yang akan digunakan.
Pada program ini nilai-nilai parameter sebagai berikut :
net.trainParam.epoch=100,
net.trainParam.goal=1e-2,
net.trainParam.mc=0.8.
Setelah di input nilai-nilai parameter maka akan dilakukan training data
dengan cara memanggil data pelatihan dan data pengujian. Kemudian data pelatihan di
training sehingga akan muncul grafik hasil pelatihan dimana data yang di training ada
sebanyak 40 data dan target yang diinginkan dengan dua pola yaitu pola 1 = layak,
dan pola 2 = tidak layak.
Pada tahapan selanjutnya maka akan dilakukan pengujian dengan 20 data.
Hasil pengujian data akan ditampilkan dalam bentuk grafik dimana pola 1 = layak dan
pola 2 = tidak layak. Sequence diagram untuk proses Backpropagation diperlihatkan
pada Gambar 3.6.
Input Data Pelatihan dan Target
Proses Data Pelatihan
dan Target Membangun Jaringan
Set Bobot awal,hidden,
dan bias Input Parameter Training Pengujian Grafik
Penskalaan data newff Proses Training Tampilkan hasil prediksi Bangun 3 lapisan, tansig, logsig,purelin Proses Pengujian Epoh maksimal, Learning Rate, nilai goal yang diharapkan
Programmer
Gambar 3.6 Sequence Diagram Proses Backpropagation
Berikut adalah algoritma dari Proses Backpropagation pada sistem memprediksi
kenaikan golongan pegawai :
1. Proses Pelatihan
DataLatih textread(fullfile(nama_path, nama_file_Latih))
N1 Nilai Kinerja N2 Lama Kerja N3 Nilai Psikotes p DataLatih (N1,N2,N3,:K) t DataLatih (:,K) prestd (p,t)[pn,meanp,stdp,tn,meant,stdt]
net newff(minmax(pn),[10 5 1],{‘tansig’ ‘logsig’ _
‘purelin’},’traingdm’) BobotAwal_Input net.IW{1,1} BobotAwal_Bias_Input net.b{1,1} BobotAwal_Lapisan1 net.LW{2,1} BobotAwal_Bias_Lapisan1 net.b{2,1} BobotAwal_Lapisan2 net.LW{3,2} BobotAwal_Bias_Lapisan2 net.b{3,1}
net.trainParam.epochs 100 net.trainParam.goal1e-2 net.trainParam.lr 0.5 net.trainParam.show 100 net.trainParam.mc 0.8 net train(net,pn,tn) an sim(net,pn) a poststd(an,meant,stdt)
meanp (save) meanp
meant (save) meant
stdp (save) stdp
stdt (save) stdt
net (save) net
2. Pengujian
net net (save)
stdt stdt (save)
stdp stdp (save)
meanp meanp (save)
meant meant (save)
Data Uji textread(fullfile(nama_path, nama_file_Uji))
M1 Nilai Kinerja
M2 Lama Kerja
M3 Nilai Psikotes
Q Data Uji (M1,M2,M3:KU)
TQ Data Uji (:,KU)
Qn trastd(Q,meanp,stdp)
Bnsim(net,Qn)
Layak 1
3.4 Flowchart System
Flowchart atau diagram alir merupakan bagan-bagan yang mempunyai arus yang
menggambarkan langkah-langkah penyelesaian suatu masalah. Flowchart juga
merupakan cara penyajian dari suatu algoritma [8].
3.4.1 Flowchart Algoritma Pelatihan LVQ
mulai Inisialisasi bobot awal epoh=epoh+1 J =Xi-Wj j=1,2,..k T = Cj Wj = Wj + α(Xi-Wj) Wj = Wj - α(Xi-Wj) α= α*Dec α W selesai T Y epoh ≤ MaxEpoh dan α≥ Minα Y epoh awal=0 T
Keterangan Flowchart
1. Mulai
:
2. Masukkan bobot awal, Maks_epoh, α, Dec α, Min α
3. Inisialisasi epoh awal = 0
4. Kerjakan jika (epoh ≤ MaxEpoh) dan ( α≥ Minα)
5. Jika tidak kembali ke bobot awal, Maks_epoh, α, Dec α, Min α
6. Jika ya maka kerjakan epoh = epoh + 1
7. Kerjakan J dimana J adalah jarak antara Vektor masukan ke vektor
bobot neuron j. J =Xi-Wj
8. Kerjakan jika T = Cj dimana T adalah kelas target untuk vektor
masukan X sedangkan Cj adalah kelas yang yang diwakili oleh neuron
ke j.
9. Jika ya kerjakan W
j= W
j+ α(X
i-W
j)
10. Jika tidak maka kerjakan W
j= W
j- α(X
i-W
j)
11. Kerjakan α = α * Dec α dimana α adalah parameter learning rate
12. Maka menghasilkan W dimana W adalah vector bobot
13. Selesai
3.4.2 Flowchart Algoritma Simulasi LVQ
Mulai
Masukkan pola data yang akan
diuji J ≥ 7 Pola 1 = Layak Pola 2 = Tidak Layak Selesai Tidak Ya
Gambar 3.8 Algoritma Proses simulasi pada Metode LVQ
Keterangan Flowchart
1. Mulai
:
2. Masukkan data yang akan diuji
3. Kerjakan J = |Xi – Wj | dimana neuron
j= 1,2,3,…,k.
4. Kerjakan jika J ≥ 7.0
5. Jika ya maka menghasilkan pola 1 = layak
6. Jika tidak maka menghasilkan pola 2 = tidak layak
7. selesai
3.4.3 Flowchart Algoritma Pelatihan Backpropagation
Mulai 1. Load Data pelatihan, 2. Load data pengujian Inisialisasi Bobot Epoh = 0 Epoh <= max epoh Epoh= Epoh + 1 Feedforward Hitung Error (Backpropagation) Hitung Perubahan Bobot Simpan Bobot Selesai Ya Tidak3.4.4 Flowchart Algoritma Pengujian Backpropagation
Mulai Load Data Pengujian Feed forward Tampilkan hasil prediksi Selesai3.5 Perancangan Antarmuka
Perancangan antarmuka menjelaskan bagaimana komunikasi antara sistem dengan
pengguna. Tujuan utama dari perancangan antarmuka pengguna adalah untuk
membangun suatu komunikasi yang efektif yang terjadi antara manusia dengan
komputer. Antarmuka yang menarik menjadi daya tarik bagi pengguna untuk
menggunakan perancangan sistem tersebut. Pada tahap ini akan dilakukan
perancangan antarmuka sistem yang akan digunakan pada sistem.
3.5.1 Antarmuka Awal
Antarmuka awal sistem merupakan tampilan utama ketika sistem dijalankan.
Rancangan antarmuka awal pada sistem ini dapat dilihat pada Gambar 3.8
File Keluar JUDUL Logo USU 1 2 3 4
Gambar 3.11 Tampilan Rancangan Antarmuka Awal
Keterangan :
1. Menu Editor File
Yang berfungsi untuk memilih metode LVQ dan Backpropagation.
2. Menu Editor Keluar
Yang berfungsi untuk memilih Keluar
3. Textfield Judul
4. Axes Logo
Yang berfungsi untuk menampilkan gambar logo pada skripsi
3.5.2 Antarmuka LVQ
Di dalam antarmuka metode LVQ terdapat dua bagian yang penting, yaitu : Bagian
Training dan bagian Pengujian. Rancangan antarmuka metode LVQ diperlihatkan pada
Gambar 3.9
1 3 2 4 5 6 7 8 9 10 11 12Data Pelatihan LVQ Data Pengujian LVQ Grafik
Nama File Pelatihan
Nama File Pengujian
Lama Keluar Bersih Pengujian Training Data Training Data Uji
Keterangan :
1. Listbox Data Pelatihan
yang berfungsi untuk menampilkan data pelatihan di matlab.
2. Listbox Data Pengujian
yang berfungsi untuk menampilkan data pengujian di matlab.
3. Axes Grafik
yang berfungsi untuk menampilkan gambar grafik di matlab.
4. Edit Nama File Pelatihan
yang berfungsi sebagai tempat nama file pelatihan di matlab.
5. Edit Nama File Pengujian
yang berfungsi sebagai tempat nama file Pengujian di matlab.
6. Edit Lama
yang berfungsi untuk melihat lama waktu yang diperlukan dalam proses
pengujian data.
7. PushBottom Data Training
yang berfungsi untuk memanggil data training di matlab.
8. PushBottom Data Uji
yang berfungsi untuk memanggil data uji di matlab.
9. PushBottom Training
yang berfungsi untuk melakukan training
10. PushBottom Bersih
yang berfungsi untuk mengkosongkan kembali Listbox Data pelatihan dan
Data Pengujian yang telah diisi oleh user di matlab.
11. PushBottom Keluar
yang berfungsi untuk menghubungkan antarmuka metode LVQ dengan
antarmuka keluar.
3.5.3 Antarmuka Backpropagation
Di dalam antarmuka metode Backpropagation terdapat dua bagian yang penting,
yaitu: Bagian Training dan bagian Pengujian. Rancangan antarmuka metode LVQ
diperlihatkan pada Gambar 3.10
1 3 2 4 5 6 7 8 9 10 11 12 Data Pelatihan Backpropagation Data Pengujian Backpropagation Grafik
Nama File Pelatihan
Nama File Pengujian
Lama Keluar Bersih Pengujian Training Data Training Data Uji