• Tidak ada hasil yang ditemukan

LAMPIRAN A KLUSTER SOM DAN VALIDASI RMSSTD. Berikut ini merupakan source code algoritma SOM kluster 3 kluster 6:

N/A
N/A
Protected

Academic year: 2021

Membagikan "LAMPIRAN A KLUSTER SOM DAN VALIDASI RMSSTD. Berikut ini merupakan source code algoritma SOM kluster 3 kluster 6:"

Copied!
21
0
0

Teks penuh

(1)

LAMPIRAN A

KLUSTER SOM DAN VALIDASI RMSSTD

A. Algoritma SOM

Berikut ini merupakan source code algoritma SOM kluster 3 – kluster 6:

B. Perhitungan Kluster

Berikut ini merupakan source code untuk kluster B, yang hasilnya memiliki 3 kluster

Source Code Kluster 3 SOM % inisialisasi

data ht=0.6;

% melakukan random weight

weight1=[0.1875 0.7690 0.3960 0.4600]; weight2=[0.2729 0.4517 0.6099 0.7421]; weight3=[0.0594 0.1253 0.1302 0.4574]; for i=1:4000; a=(weight1(1,1)-data(i,1))^2+(weight1(1,2)-data(i,2))^2+(weight1(1,3)-data(i,3))^2; b=(weight2(1,1)-data(i,1))^2+(weight2(1,2)-data(i,2))^2+(weight2(1,3)-data(i,3))^2; c=(weight3(1,1)-data(i,1))^2+(weight3(1,2)-data(i,2))^2+(weight3(1,3)-data(i,3))^2; if a<b && a<c

z=data(i,:)-weight1(1,:); weight1=weight1(1,:)+(ht*z); weight2=weight2(1,:); weight3=weight3(1,:); i

(2)

C. Kluster C else if b<c && b<a

z=data(i,:)-weight2(1,:); weight2=weight2(1,:)+(ht*z); weight1=weight1(1,:); weight3=weight3(1,:); i else z=data(i,:)-weight3(1,:); weight3=weight3(1,:)+(ht*z); weight1=weight1(1,:); weight2=weight2(1,:); i end; end; end;

disp('update weight berhasil') weight1 weight2 weight3 for j=1:4000; a=(weight1(1,1)-data(j,1))^2+(weight1(1,2)-data(j,2))^2+(weight1(1,3)-data(j,3))^2; b=(weight2(1,1)-data(j,1))^2+(weight2(1,2)-data(j,2))^2+(weight2(1,3)-data(j,3))^2; c=(weight3(1,1)-data(j,1))^2+(weight3(1,2)-data(j,2))^2+(weight3(1,3)-data(j,3))^2;

if a<b && a<c disp ('1')

else if b<c && b<a disp ('2') else disp ('3') end; end;

(3)

Berikut ini merupakan source code kluster c, yang memiliki hasil 4 kluster

Source Code Kluster 4 % inisialisasi

Data ht=0.6;

%melakukan random weight

weight1=[0.1875 0.7690 0.3960 0.4600]; weight2=[0.2729 0.4517 0.6099 0.7421]; weight3=[0.0594 0.1253 0.1302 0.4574]; weight4=[0.0924 0.7229 0.5312 0.4327]; for i=1:4000; a=(weight1(1,1)-Data(i,1))^2+(weight1(1,2)- Data(i,2))^2+(weight1(1,3)-Data(i,3))^2+(weight1(1,4)-Data(i,4))^2; b=(weight2(1,1)-Data(i,1))^2+(weight2(1,2)- Data(i,2))^2+(weight2(1,3)-Data(i,3))^2+(weight1(1,4)-Data(i,4))^2; c=(weight3(1,1)-Data(i,1))^2+(weight3(1,2)- Data(i,2))^2+(weight3(1,3)-Data(i,3))^2+(weight1(1,4)-Data(i,4))^2; d=(weight4(1,1)-Data(i,1))^2+(weight4(1,2)- Data(i,2))^2+(weight4(1,3)-Data(i,3))^2+(weight1(1,4)-Data(i,4))^2;

(4)

else if b<c && b<d && b<a z=Data(i,:)-weight2(1,:); weight2=weight2(1,:)+(ht*z); weight1=weight1(1,:); weight3=weight3(1,:); weight4=weight4(1,:); i

else if c<d && c<a && c<b z=Data(i,:)-weight3(1,:); weight3=weight3(1,:)+(ht*z); weight1=weight1(1,:); weight2=weight2(1,:); weight4=weight4(1,:); i else z=Data(i,:)-weight4(1,:); weight4=weight4(1,:)+(ht*z); weight1=weight1(1,:); weight2=weight2(1,:); weight3=weight3(1,:); i end; end; end; end;

(5)

weight1 weight2 weight3 weight4 for j=1:4000; a=(weight1(1,1)-Data(j,1))^2+(weight1(1,2)- Data(j,2))^2+(weight1(1,3)-Data(j,3))^2+(weight1(1,4)-Data(j,4))^2; b=(weight2(1,1)-Data(j,1))^2+(weight2(1,2)- Data(j,2))^2+(weight2(1,3)-Data(j,3))^2+(weight1(1,4)-Data(j,4))^2; c=(weight3(1,1)-Data(j,1))^2+(weight3(1,2)- Data(j,2))^2+(weight3(1,3)-Data(j,3))^2+(weight1(1,4)-Data(j,4))^2; d=(weight4(1,1)-Data(j,1))^2+(weight4(1,2)- Data(j,2))^2+(weight4(1,3)-Data(j,3))^2+(weight1(1,4)-Data(j,4))^2;

if a<b && a<c && a<d disp ('1')

else if b<c && b<d && b<a disp ('2')

else if c<d && c<a && c<b disp ('3') else disp ('4') end; end; end;

(6)

D. Kluster D

Berikut ini merupakan source code kluster d, yang meimliki hasil 5 kluster

Source Code Kluster d data

ht=0.6;

%melakukan random weight

weight1=[0.1875 0.7690 0.3960 0.4600]; weight2=[0.2729 0.4517 0.6099 0.7421]; weight3=[0.0594 0.1253 0.1302 0.4574]; weight4=[0.0924 0.7229 0.5312 0.8327]; weight5=[0.1088 0.0986 0.1420 0.7521]; for i=1:4000; a=(weight1(1,1)-data(i,1))^2+(weight1(1,2)- data(i,2))^2+(weight1(1,2)-data(i,2))^2+(weight1(1,2)-data(i,2))^2; b=(weight2(1,1)-data(i,1))^2+(weight2(1,2)- data(i,2))^2+(weight1(1,2)-data(i,2))^2+(weight1(1,2)-data(i,2))^2; c=(weight3(1,1)-data(i,1))^2+(weight3(1,2)- data(i,2))^2+(weight1(1,2)-data(i,2))^2+(weight1(1,2)-data(i,2))^2; d=(weight4(1,1)-data(i,1))^2+(weight4(1,2)- data(i,2))^2+(weight1(1,2)-data(i,2))^2+(weight1(1,2)-data(i,2))^2; e=(weight5(1,1)-data(i,1))^2+(weight5(1,2)- data(i,2))^2+(weight1(1,2)-data(i,2))^2+(weight1(1,2)-data(i,2))^2; data_temp = [a b c d e];

(7)

if min(data_temp)==a; z=data(i,:)-weight1(1,:); weight1=weight1(1,:)+(ht*z); weight2=weight2(1,:); weight3=weight3(1,:); weight4=weight4(1,:); weight5=weight5(1,:); i else if min(data_temp)==b; z=data(i,:)-weight2(1,:); weight2=weight2(1,:)+(ht*z); weight1=weight1(1,:); weight3=weight3(1,:); weight4=weight4(1,:); weight5=weight5(1,:); i else if min(data_temp)==c; z=data(i,:)-weight3(1,:); weight3=weight3(1,:)+(ht*z); weight1=weight1(1,:); weight2=weight2(1,:); weight4=weight4(1,:); weight5=weight5(1,:); i else if min(data_temp)==d; z=data(i,:)-weight4(1,:); weight4=weight4(1,:)+(ht*z); weight5=weight5(1,:); weight1=weight1(1,:); weight2=weight2(1,:); weight3=weight3(1,:); i else if min(data_temp)==e; z=data(i,:)-weight5(1,:); weight5=weight5(1,:)+(ht*z); weight4=weight4(1,:); weight1=weight1(1,:); weight2=weight2(1,:); weight3=weight3(1,:); i

(8)

end end end end end end

disp('update weight berhasil') weight1 weight2 weight3 weight4 weight5 for j=1:4000; a=(weight1(1,1)-data(j,1))^2+(weight1(1,2)- data(j,2))^2+(weight1(1,3)-data(j,3))^2+(weight1(1,4)-data(j,4))^2; b=(weight2(1,1)-data(j,1))^2+(weight2(1,2)- data(j,2))^2+(weight1(1,3)-data(j,3))^2+(weight1(1,4)-data(j,4))^2; c=(weight3(1,1)-data(j,1))^2+(weight3(1,2)- data(j,2))^2+(weight1(1,3)-data(j,3))^2+(weight1(1,4)-data(j,4))^2; d=(weight4(1,1)-data(j,1))^2+(weight4(1,2)- data(j,2))^2+(weight1(1,3)-data(j,3))^2+(weight1(1,4)-data(j,4))^2; e=(weight5(1,1)-data(j,1))^2+(weight5(1,2)- data(j,2))^2+(weight1(1,3)-data(j,3))^2+(weight1(1,4)-data(j,4))^2;

(9)

if (a<b && a<c && a<d && a<e) disp ('1')

else if (b<c && b<d && b<e && b<a) disp ('2')

else if (c<d && c<e && c<a && c<b) disp ('3')

else if (d<e && d<a && d<b && d<c) disp ('4') else disp ('5') end; end; end; end; end;

(10)

E. Kluster E Source Code Kluster 6

% inisialisasi data

ht=0.6;

% melakukan random weight

weight1=[0.1875 0.7690 0.3960 0.4600]; weight2=[0.2729 0.4517 0.6099 0.7421]; weight3=[0.0594 0.1253 0.1302 0.4574]; weight4=[0.0924 0.7229 0.5312 0.8327]; weight5=[0.1088 0.0986 0.1420 0.7521]; weight6=[0.1683 0.2176 0.2510 0.8472]; for i=1:4000; a=(weight1(1,1)-data(i,1))^2+(weight1(1,2)- data(i,2))^2+(weight1(1,3)-data(i,3))^2+(weight1(1,4)-data(i,4))^2; b=(weight2(1,1)-data(i,1))^2+(weight2(1,2)- data(i,2))^2+(weight2(1,3)-data(i,3))^2+(weight1(1,4)-data(i,4))^2; c=(weight3(1,1)-data(i,1))^2+(weight3(1,2)- data(i,2))^2+(weight3(1,3)-data(i,3))^2+(weight1(1,4)-data(i,4))^2; d=(weight4(1,1)-data(i,1))^2+(weight4(1,2)- data(i,2))^2+(weight4(1,3)-data(i,3))^2+(weight1(1,4)-data(i,4))^2; e=(weight5(1,1)-data(i,1))^2+(weight5(1,2)- data(i,2))^2+(weight5(1,3)-data(i,3))^2+(weight1(1,4)-data(i,4))^2; f=(weight6(1,1)-data(i,1))^2+(weight6(1,2)- data(i,2))^2+(weight6(1,3)-data(i,3))^2+(weight1(1,4)-data(i,4))^2; data_temp = [a b c d e f];

(11)

if min(data_temp)==a; z=data(i,:)-weight1(1,:); weight1=weight1(1,:)+(ht*z); weight2=weight2(1,:); weight3=weight3(1,:); weight4=weight4(1,:); weight5=weight5(1,:); weight6=weight6(1,:); i else if min(data_temp)==b; z=data(i,:)-weight2(1,:); weight2=weight2(1,:)+(ht*z); weight1=weight1(1,:); weight3=weight3(1,:); weight4=weight4(1,:); weight5=weight5(1,:); weight6=weight6(1,:); i else if min(data_temp)==c; z=data(i,:)-weight3(1,:); weight3=weight3(1,:)+(ht*z); weight1=weight1(1,:); weight2=weight2(1,:); weight4=weight4(1,:); weight5=weight5(1,:); weight6=weight6(1,:); i else if min(data_temp)==d; z=data(i,:)-weight4(1,:); weight4=weight4(1,:)+(ht*z); weight5=weight5(1,:); weight6=weight6(1,:); weight1=weight1(1,:); weight2=weight2(1,:); weight3=weight3(1,:); i

(12)

else if min(data_temp)==e; z=data(i,:)-weight5(1,:); weight5=weight5(1,:)+(ht*z); weight6=weight6(1,:); weight4=weight4(1,:); weight1=weight1(1,:); weight2=weight2(1,:); weight3=weight3(1,:); i else if min(data_temp)==f; z=data(i,:)-weight6(1,:); weight6=weight6(1,:)+(ht*z); weight5=weight5(1,:); weight4=weight4(1,:); weight1=weight1(1,:); weight2=weight2(1,:); weight3=weight3(1,:); i end; end; end; end; end; end; end;

(13)

weight1 weight2 weight3 weight4 weight5 weight6 for j=1:4000; a=(weight1(1,1)-data(j,1))^2+(weight1(1,2)-data(j,2))^2+(weight1(1,3)-data(j,3))^2+(weight1(1,4)-data(j,4))^2; b=(weight2(1,1)-data(j,1))^2+(weight2(1,2)-data(j,2))^2+(weight2(1,3)-data(j,3))^2+(weight2(1,4)-data(j,4))^2; c=(weight3(1,1)-data(j,1))^2+(weight3(1,2)-data(j,2))^2+(weight3(1,3)-data(j,3))^2+(weight3(1,4)-data(j,4))^2; d=(weight4(1,1)-data(j,1))^2+(weight4(1,2)-data(j,2))^2+(weight4(1,3)-data(j,3))^2+(weight4(1,4)-data(j,4))^2; e=(weight5(1,1)-data(j,1))^2+(weight5(1,2)-data(j,2))^2+(weight5(1,3)-data(j,3))^2+(weight5(1,4)-data(j,4))^2; f=(weight6(1,1)-data(j,1))^2+(weight6(1,2)-data(j,2))^2+(weight6(1,3)-data(j,3))^2+(weight6(1,4)-data(j,4))^2; if a<b && a<c && a<d && a<e && a<f

disp ('1')

else if b<c && b<d && b<e && b<f && b<a disp ('2')

else if c<d && c<e && c<f && c<a && c<b disp ('3')

else if d<e && d<f && d<a && d<b && d<c disp ('4')

else if e<f && e<a && e<b && e<c && e<d disp ('5') else disp ('6') end; end; end; end; end;

(14)

Hasil Algoritma SOM : Kluster

2 Kluster 3 Kluster 4 Kluster 5 Kluster 6 Jumlah Kluster 2 1823 1801 1801 0 0 Jumlah Kluster 3 2177 1699 1699 1699 1699 Jumlah Kluster 4 500 500 1801 1801 Jumlah Kluster 5 0 0 0 Jumlah Kluster 6 500 500 F. Validasi RMSSTD Perhitungan validasi RMSSTD:

Tabel Perhitungan RMSSTD Kluster A Rata2 (Kluster 1) 1.0272254 0.377964 1.026148 0.812861 Rata2 (kluster 2) -0.860188 -0.3165 -0.85929 -0.68068 jumlah(xi-x) pd kluster 1 2662.426 jumlah(xi-x) pd kluster 2 3584.401

(15)

Tabel Perhitungan RMSSTD Kluster B Rata2 (kluster 1) -0.82968 0.377964 -0.85929 -0.59349 Rata2 (kluster 2) 1.16275 0.377964 1.163755 0.881045 Rata2 (kluster 3) -0.96251 -2.64575 -0.85929 -0.85606 jumlah(xi-x) pd kluster 1 65.90982833 jumlah(xi-x) pd kluster 2 1614.10295 jumlah(xi-x) pd kluster 3 0.379604129 nij pada kluster 1

dimensi ... 1801 1801 1801 1801 7204

nij pada kluster 2

dimensi ... 1699 1699 1699 1699 6796

nij pada kluster 3

dimensi ... 500 500 500 500 2000 RMSSTD 0.3241053 nij pada kluster 1 dimensi ... 1823 1823 1823 1823 7292 nij pada kluster 2 dimensi ... 2177 2177 2177 2177 8708 RMSSTD 0.6248804

(16)

Tabel Perhitungan RMSSTD Kluster C Rata2 (kluster1 ) -0.82968 0.377964 -0.85929 -0.59349 Rata2 (kluster 2) 1.16275 0.377964 1.163755 0.881045 Rata2 (kluster 3) -0.96251 -2.64575 -0.85929 -0.85606 Rata2 (kluster 4) 0 0 0 0 jumlah(xi-x) pd kluster 1 65.90982833 jumlah(xi-x) pd kluster 2 1614.10295 jumlah(xi-x) pd kluster 3 0.379604129 jumlah(xi-x) pd kluster 4 nij pada kluster 1 dimensi ...

1801 1801 1801 1801 7204

nij pada kluster 2 dimensi ...

1699 1699 1699 1699 6796

nij pada kluster 3 dimensi ...

500 500 500 500 2000

nij pada kluster 4 dimensi ...

0 0 0 0 0

(17)

Tabel Perhitungan RMSSTD Kluster D Rata2 (kluster 1) 0 0 0 0 Rata2 (kluster 2) 1.16275 0.377964 1.163755 0.88104541 Rata2 (kluster 3) -0.82968 0.377964 -0.85929 -0.5934863 Rata2 (kluster 4) 0 0 0 Rata2 (kluster 5) -0.96251 -2.64575 -0.85929 -0.8560592 jumlah(xi-x) pd kluster 1 0 jumlah(xi-x) pd kluster 2 1614.10295 jumlah(xi-x) pd kluster 3 65.90982833 jumlah(xi-x) pd kluster 4 0 jumlah(xi-x) pd kluster 5 0.379604129

nij pada kluster 1 dimensi ... 0 0 0 0

nij pada kluster 2 dimensi ... 1699 1699 1699 1699 6796 nij pada kluster 3 dimensi ... 1801 1801 1801 1801 7204

nij pada kluster 4 dimensi ... 0 0 0 0 0

nij pada kluster 5 dimensi ... 500 500 500 500 2000

(18)

Tabel Perhitungan RMSSTD Kluster E Rata2 (kluster 1) 0 0 0 0 Rata2 (kluster 2) 1.16275 0.377964 1.163755 0.881045 Rata2 (kluster 3) -0.82968 0.377964 -0.85929 -0.59349 Rata2 (kluster 4) 0 0 0 Rata2 (kluster 5) -0.96251 -2.64575 -0.85929 -0.85606 Rata2 (kluster 6) 0 0 0 0 jumlah(xi-x) pd kluster 1 0 jumlah(xi-x) pd kluster 2 1614.035 jumlah(xi-x) pd kluster 3 65.89382 jumlah(xi-x) pd kluster 4 0 jumlah(xi-x) pd kluster 5 0.378869 jumlah(xi-x) pd kluster 6 0

nij pada kluster 1 dimensi ... 0 0 0 0

nij pada kluster 2 dimensi ... 1699 1699 1699 1699 6796 nij pada kluster 3 dimensi ... 1801 1801 1801 1801 7204

nij pada kluster 4 dimensi ... 0 0 0 0 0

nij pada kluster 5 dimensi ... 499 499 499 499 1996

nij pada kluster 6 dimensi ... 0 0 0 0 0

(19)

Hasil Validasi RMSSTD A- 1 Tabel Hasil RMSSTD RMSSTD Nilai Kluster a 0.6248804 Kluster b 0.3241053 Kluster c 0.3241154 Kluster d 0.3241255 Kluster e 0.324168 Grafik Hasil RMSSTD A- 2 Grafik Hasil RMSSTD

(20)

LAMPIRAN B

Kluster Kmeans beserta Validasi DBI A. Source Code Algoritma Kombinasi SOM dan Kmeans Ketik pada Matlab

Hasil Dari Algoritma Kmeans

Hasil dari Algoritma K-means [klaster, ctrs]=kmeans(data,3)

(21)

Hasil Algoritma Kmeans

Tabel Perhitungan algoritma K-means

Kluster 1 Kluster 2 Kluster 3 Hasil Kluster 1 500 Hasil Kluster 2 1801 Hasil Kluster 3 1699

B. Hasil Validasi Davies Bouldin Index Tabel Hasil Validasi DBI

Klaster Nilai DBI

SOM 0.26902

Gambar

Tabel Perhitungan RMSSTD Kluster A  Rata2  (Kluster 1)  1.0272254  0.377964  1.026148  0.812861    Rata2  (kluster 2)  -0.860188  -0.3165  -0.85929  -0.68068    jumlah(xi-x)  pd kluster 1  2662.426    jumlah(xi-x)  pd kluster 2  3584.401
Tabel Perhitungan RMSSTD Kluster B  Rata2 (kluster 1)  -0.82968  0.377964  -0.85929  -0.59349    Rata2 (kluster 2)  1.16275  0.377964  1.163755  0.881045    Rata2 (kluster 3)  -0.96251  -2.64575  -0.85929  -0.85606    jumlah(xi-x)  pd  kluster 1  65.909828
Tabel Perhitungan RMSSTD Kluster C  Rata2 (kluster1 )  -0.82968  0.377964  -0.85929  -0.59349    Rata2 (kluster 2)  1.16275  0.377964  1.163755  0.881045    Rata2 (kluster 3)  -0.96251  -2.64575  -0.85929  -0.85606    Rata2 (kluster 4)  0  0  0  0    jumla
Tabel Perhitungan RMSSTD Kluster D  Rata2 (kluster 1)  0  0  0  0    Rata2 (kluster 2)  1.16275  0.377964  1.163755  0.88104541    Rata2 (kluster 3)  -0.82968  0.377964  -0.85929  -0.5934863    Rata2 (kluster 4)  0  0  0    Rata2 (kluster 5)  -0.96251  -2.
+2

Referensi

Dokumen terkait

Penelitian ini bertujuan untuk mengetahui pengaruh dan efektivitas implementasi Pendidikan Matematika Realistik dalam setting kooperatif tipe Think Pair Share (TPS) terhadap

kehidupan manusia. Enforcing conformity to social norms, 8). Validation of social institutions and religious rituals, 9). Contribution to the continuity and stability of

Menetapkan : PERATURAN WALIKOTA TENTANG ALOKASI DANA HIBAH UNTUK REPLIKASI PENATAAN LINGKUNGAN PERMUKIMAN BERBASIS KOMUNITAS (REPLIKASI PLPBK) KOTA BANJARMASIN TAHUN

analisis situasi yang ada di mitra, ada beberapa masalah yang bisa diselesaikan yaitu mesin disk mill sebagai solusi permasalahan pada proses produksi pada saat

Dalam Ballenjer JJ Penyakit Telinga, Hidung, Tenggorok, Kepala dan Leher, edisi 13, Jilid Dua, Binarupa Aksara, Jakarta.. Embriologi Anatomi

35 tahun 2014 tentang perlindungan anak dan larangan penggunaan kekerasan pada anak (RI, 2014), namun pada realitanya, data menunjukkan masih banyak anak

Tujuan Program Pemberdayaan Masyarakat ini adalah untuk meningkatkan kapasitas dan kualitas produksi mitra. Permasalahan yang dihadapi mitra, antara lain; 1). Motif monoton

Desa dalam pengertian desa adat, mengacu kepada kelompok tradisional dengan dasar ikatan adat istiadat, dan terikat oleh adanya tiga pura utama yang disebut Kahyangan Tiga