BAB 3
ANALISIS DAN PERANCANGAN SISTEM
3.1. Analisis Sistem
Analisis sistem merupakan suatu tahapan untuk membantu memahami sesuatu yang di butuhkan system dan mempelajari permasalahan-permasalah yang ada untuk
kemudian dilakukannya solusi penyelesaian yang didasarkan pada kebutuhan pengguna sistem agar tercipta sebuah sistem yang berguna bagi pengguna. Sehingga
nantinya dapat membantu didalam proses perancangan model suatu system yang akan
diimplementasikan.
3.1.1. Analisis Permasalahan
Gigi merupakan organ terpenting makhluk hidup terutama manusia. Fungsi utama gigi adalah untuk merobek dan mengunyah makanan. Gigi memiliki struktur pelindung
yang disebut email gigi, yang membantu mencegah lubang di gigi. Kesehatan gigi merupakan suatu hal yang penting bagi kesahatan tubuh manusia karena gigi
membantu proses pengunyahan makanan yang apabila gigi tidak sehat akan membuat nafsu makan tidak baik
Permasalahan yang dihadapin dalam perancangan system ini yaitu masalah pengenalan pola gigi yang terkena penyakit. Sehingga dengan adanya sistem ini
diharapkan dapat membantu masyarakat untuk mendeteksi penyakit gigi sementara waktu sebelum dilakukan pendeteksian gigi oleh dokter gigi.
Penyebab dan dampak dari permasalahan tersebut digambarkan dengan diagram ishikawa dan dapat dilihat pada Gambar 3.1
Universitas Sumatera Utara
.
Pemanfaatan Jaringa Syaraf Tiruan
Untuk Memberikan Solusi Pengobatan dari Beragam
Jenis Penyakit Gigi
Material
Lingkungan Metode
Teknologi
Mengetahui Solusi dari Berbagai Jenis
Penyakit Gigi Sebelum Melakukan Tindakan
Pengobatan Ke Dokter Gigi
Pemanfaatan teknologi untuk mendeteksi
Penyakit Gigi Sementara Untuk Selanjutnya
dilakukan Observasi Oleh Dokter Gigi
Pemanfaatan JST backpropagation dan
hopfield untuk Mendeteksi Penyakit Gigi
Berbagai jenis Penyakit Gigi yang
Sering dialami Oleh Manusia
Gambar 3.1 Diagram Ishikawa
3.1.2. Analisis Kebutuhan Sistem
Analisis kebutuhan sistem ini meliputi analisis kebutuhan fungsional sistem dan analisis non-fungsional sistem.
3.1.2.1. Kebutuhan Fungsional Sistem
Kemampuan fungsional dari sistem ini yaitu: 1. Masukan gambar gigi yang memiliki ekstensi file.jpg atau .jpeg.
2. Sistem melakukan pelatihan terhadap pola gambar agar kemudian dapat menghasilkan Output.
3. Sistem melakukan pengujian terhadap pola gambar dimana hasil dari pengujian tersebut berupa nama penyakit gigi, salusi pengobatan terhadap
penyakit tersebut dan waktu pungujian.
Universitas Sumatera Utara
3.1.2.2. Kebutuhan Non-Fungsional Sistem
Kebutuhan non-fungsional dari sistem ini yaitu : 1. Tampilan antarmuka sistem dapat dimengerti oleh user atau pengguna sistem.
2. Data yang digunakan oleh sistem haruslah data real atau nyata dan sesuai sehingga dapat menghasilkan pengenalan pola yang tepat dan memberikan
informasi yang tepat dan sesuai dengan tidak mengurangi kualitas informasi. 3. Efektifitas dan efisiensi dapat terlihat dari waktu respon antara pengguna
dengan sistem. 4. Sistem yang nantinya telah dibuat dapat dikembangkan dengan mudah
sehingga sistem dapat tetap digunakan di masa yang akan datang. 5. Sistem yang dibuat dapat dikembangkan untuk kepentingan lebih lanjut.
3.1.3. Analisis Proses
Dalam sistem ini ada dua metode yaitu metode backpropagation dan metode hopfield yang digunakan untuk melakukan pendeteksian terhadap penyakit gigi. Di dalam
proses pelatihan ini dilakukan pelatihan terhadap suatu pola masukan dari image gigi dengan menggunakan kedua metode tersebut. Kemudian dilakukan proses threshold
untuk mendapatkan citra gigi, dan dilakukan proses reduksi data citra tersebut dan pada akhirnya dilakukan pelatihan jaringan saraf tiruan untuk mendeteksi penyakit
gigi.
Berikut ini akan diberikan contoh sederhana bagaimana masing-masing metode melakukan proses pelatihan. Dengan yang pertama sebagai contoh yaitu penerapan
metode algoritma backpropagation untuk mengenali fungsi XOR yang memilki 2 masukan x1 dan x2, dimana akan dilakukan iterasi terhadap pola pertama yaitu x1 = 1,
x2 = 1 dan t = 0 dengan laju pembelajaranlearning rate α = 0.2. berikut ini
penyelesaian yang akan dilakukan dengan backpropagation menggunakan 1 lapisan tersembunyi yang terdiri dari 3 unit.
1. Inisialisasi semua bobot langkah 0 – langkah 3 Inisialisasi bobot ini akan dilakukan pemberian bobot secara acak seperti
contoh pada tabel 3.1 dan tabel 3.2.
Universitas Sumatera Utara
Tabel 3.1 Nilai Bobot Lapisan Masukan ke Lapisan Tersembunyi v
ji
Tabel 3.2 Bobot Lapisan Masukan ke Lapisan Tersembunyi w
kj
Y z1
0.5 z2
-0.3 z3
-0.4 1
-0.1
2. Hitung keluaran unit tersembunyi zj langkah 4 z_net
j
= v
jo
+
∑ �� ���
� �=1
z_net
1
= -0.3+10.2+10.3 = 0.2 z_net
2
= 0.3+10.3+10.1 = 0.7 z_net
3
= 0.3+1-0.1+1-0.1 = 0.1 z
j
= fz_net
j
=
1 1+�
−�_����
z1 =
1 1+�
−0.2
= 0.55 ; z2 =
1 1+�
−0.7
= 0.67 ; z3 =
1 1+�
−0.1
= 0.52. 3. Hitung keluaran unit y
k
langkah 5 y_net
k
= w
ko
+
∑
� �=1
z
j
w
kj
y_net
k
= y_net = -0.1+0.550.5+0.67-0.3+0.52-0.4 = -0.24
y = fy_net =
1 1+�
−�_���
=
1 1+�
0.24
= 0.44 4.
Hitung faktor δ di unit keluaran y
k
langkah 6 �
k
= t
k
– y
k
f’y_net
k
= t
k
– y
k
y
k
1-y
k
�
k
= δ = t – y y1 – y = 0 – 0.44 0.44 1 – 0.44 = -0.11 Suku perubahan bobot w
kj
dengan α = 0.2: Δw
kj
= α �
k
z
j
= α � z ; j = 0,1, ..., 3
Δw
10
= 0.2 -0.111 = -0.02 Δw
11
= 0.2 -0.110.55 = -0.01 Δw
10
= 0.2 -0.110.67 = -0.01 Δw
10
= 0.2 -0.110.52 = -0.01 z1
z2 z3
x1 0.2
0.3 -0.1
x2 0.3
0.1 -0.1
1 -0.3
0.3 0.3
Universitas Sumatera Utara
5. Hitung penjumlahan kesalahan dari unit tersembunyi =δ langkah 7
�
_
net
j
= �
k
w
1j
�
_
net
1
= 0.110.5 = -0.05 �
_
net
2
= 0.11-0.3 = 0.03 �
_
net
3
= 0.11-0.4 = 0.04 faktor kesalahan δ di unit tersembunyi:
�
j =
�_net
j
f’z_net
j
= �_net
j
z
j
1-z
j
�
1
= -0.050.05 1 – 0.05 = - 0.01 �
2
= 0.030.67 1 – 0.67 = 0.01 �
3
= 0.040.52 1 – 0.52 = 0.01 Suku perubahaan bobot ke unit tersembunyi
Δv
ji =
α �
j
x
i
dapat dilihat pada tabel 3.3. j = 1,2,3; i = 0,1,2
Tabel 3.3 Nilai Suku Perubahan Bobot
z1 z2
z3 x1
Δv
11
= 0.2 -0.011 = 0
Δv
21
= 0.2 0.011 = 0
Δv
31
= 0.2 0.011 = 0
x2 Δv
12
= 0.2 -0.011 = 0
Δv
22
= 0.2 0.011 = 0
Δv
32
= 0.2 0.011 = 0
1 Δv
13
= 0.2 -0.011 = 0
Δv
23
= 0.2 0.011 = 0
Δv
32
= 0.2 0.011 = 0
6. Hitung semua perubahan bobot langkah 8 w
kj
baru = w
kj
lama + Δw
kj
k = 1 ; j = 0,1, ..., 3 w
11
baru = 0.5 – 0.01 = 0.49 w
12
baru = -0.3 – 0.01 = -0.31 w
13
baru = -0.4 – 0.01 = -0.41 w
10
baru = -0.1 – 0.02 = -0.12 perubahan bobot unit tersembunyi:
v
ji
baru = v
ji
lama + Δv
ji
j = 1,2,3 ; i = 0,1,2
Universitas Sumatera Utara
Tabel 3.4 Perubahan Bobot Unit Tersembunyi
z1 z2
z3 x1
v
11
baru = 0.2+0 = 0.2
v
21
baru = 0.3+0 = 0.3
v
31
baru = - 0.1+0
= -0.1 x2
v
12
baru = 0.3+0 = 0.3
v
22
baru = 0.1+0 = 0.1
v
32
baru = - 0.1+0
= -0.1 1
v
13
baru = - 0.3+0
= -0.3 v
23
baru = 0.3+0 = 0.3
v
33
baru = 0.3+0 = 0.3
Hasil pada tabel 3.4 merupakan iterasi untuk pola pertama, untuk mengetahui nilai dari 1 iterasi penuh semua pola maka dapat dilakukan iterasi pada pola kedua
yaitu x1 = 1, x2 = 0, dan t = 1, pola ketiga yaitu x1 = 0, x2 = 1, dan t = 1, dan pola keempat yaitu x1 = 0, x2 = 0, dan t = 0.
Selanjutnya merupakan contoh penerapan metode algoritma Hopfield. Misalkan terdapat 2 buah pola yang ingin dikenali yaitu pola A0,1,0,1,0,1 dan
B1,0,1,0,1,0. Bobot-bobot jaringan saraf tiruan ditentukan sebagai berikut:
� = ⎣
⎢ ⎢
⎢ ⎢
⎡ −1 1 −1 1 −1
−1 0 −1 1 −1 1 1
−1 0 −1 1 −1 −1 1 −1 0 −1 1
1 −1 1 −1 0 −1
−1 1 −1 1 −1 0⎦ ⎥
⎥ ⎥
⎥ ⎤
Bobot-bobot tersebut simetris w
ij
= w
ji
; dimana i=baris dan j=kolom dan diagonal utamanya adalah 0. Pola A dan pola B dilakukan sebagai vector. Dot product
antara A dengan B diperoleh dengan cara mengalikan komponen kedua vector tersebut dengan vector bobot.
Aktivasi node pertama untuk pola A:
0 1 0 1 0 1 ⦁
⎣ ⎢
⎢ ⎢
⎢ ⎡
−1 1
−1 1
−1 ⎦
⎥ ⎥
⎥ ⎥
⎤ = 0 +
−1 + 0 + −1 + 0 + −1 = −3
Universitas Sumatera Utara
Aktivasi node kedua:
0 1 0 1 0 1 ⦁
⎣ ⎢
⎢ ⎢
⎢ ⎡
−1 −1
1 −1
1 ⎦
⎥ ⎥
⎥ ⎥
⎤ = 0 + 0 + 0 + 1 + 0 + 1 = 2
Dan seterusnya untuk node ketiga, keempat, kelima, dan keenam diperoleh masing-masing -3, 2, -3, 2. Masih dengan cara yang sama untuk pola B diperoleh
masing-masing 2, -3, 2, -3, 2, -3. Kemudian fungsi ambang ditentukan agar jaringan saraf bisa menghasilkan pola A dan pola B.
�� = � 1
���� � ≥ � ���� � �
Untuk contoh ini diambil � = 0
Maka akan diperoleh f2=1 dan f-3=0 kemudian pola output untuk pola A dan pola B dapat ditentukan. Untuk pola A output yang dihasilkan 0,1,0,1,0,1, ini
sama dengan pola inputnya dapat dikatakan bahwa jaringan syaraf sukses dalam mengenali pola A. sedangkan pola B output yang dihasilkan 1,0,1,0,1,0 yang berarti
pola B juga berhasil dikenali karena sama dengan pola inputannya.
3.1.3.1 Perancangan Arsitektur Jaringan
Arsitektur jaringan syaraf tiruan yang digunakan pada penelitian ini ditunjukkan pada Gambar 3.2. dan Gambar 3.3
Universitas Sumatera Utara
X
1
X
2
X
3
X
4
X
12
Z
1
Z
2
Z
3
Z
4
Z
12
b=1 b=1
Y
1
Y
2
Y
3
Y
4
V
11
V
12
V
13
V
14
V
15
V
21
V
22
V
23
V
24
V
25
V
31
V
32
V
34
V
33
V
35
V
41
V
42
V
43
V
44
V
121
V
122
V
123
V
124
V
125
V
45
W
11
W
12
W
13
W
14
W
21
W
22
W
23
W
24
W
31
W
32
W
33
W
34
W
41
W
42
W
43
W
44
W
121
W
122
W
123
W
124
V
01
V
02
V
03
V
04
V
012
W
01
W
02
W
03
W
04
Gambar 3.2 Arsitektur Jaringan Backpropagation sistem
Gambar 3.2 memperlihatkan sistem terdiri dari 12 inputan �
1
- �
12
sesuai dengan jumlah image gigi yang digunakan sebagai data masukan. Pada lapisan tersembunyi
terdiri dari Z
1
– Z
12
. Dan data keluaran �
1
- �
4
akan menghasilkan nilai 1 dan 0 yang merupakan subkelas untuk target, target dalam sistem ini adalah 4, dimana :
vektor keluaran target 1 adalah 1 0 0 0 vektor keluaran target 2 adalah 0 1 0 0
vektor keluaran target 3 adalah 0 0 1 0 vektor keluaran target 4 adalah 0 0 0 1
Universitas Sumatera Utara
X
1
X
2
X
3
X
12
V
12
V
3
V
2
V
1
Y
1
Y
2
Y
3
Y
4
Input Vektor Output Vektor
Umpan Balik Fungsi
Ktivasi
Gambar 3.3 Arsitektur Jaringan Hopfield sistem
Gambar 3.3 terlihat bahwa semua unit input dihubungkan dengan semua unit output, meskipun dengan bobot yang berbeda-beda. Tidak ada unit yang dihubungkan
dengan unit input lainnya. Model diskrit jaringan Hopfield dalam bobot sinaptik menggunakan vektor biner dimensi n atau dapat dituliskan a{0,1}
n
. Model ini barisi n neural dan jaringan terdiri dari nn-1 interkoneksi dua jalur.
Model jaringan Hopfield secara metematis dapat disajikan dalam bentuk matriks simetris NxN dengan diagonal utamanya bernilai 0. Pemberian nilai 0 pada
diagonal utama dimaksudkan agar setiap neuron tidak memberi input pada dirinya sendiri. Dengan demikian jaringan Hopfield merupakan suatu jaringan dengan bobot
simetrik , bahwa: W
ij
= W
ji
Dan W
ii
=0 Keterangan :
W
ij
: matrik bobot koneksi dari unit i ke unit j W
ii
= 0 : nilainya sama dengan 0
.
Universitas Sumatera Utara
3.2. Pemodelan