• Tidak ada hasil yang ditemukan

Program Matlab Support Vector Machine Dengan Algoritma Genetik Untuk Linear Kernel (HAKI)

N/A
N/A
Protected

Academic year: 2023

Membagikan "Program Matlab Support Vector Machine Dengan Algoritma Genetik Untuk Linear Kernel (HAKI)"

Copied!
8
0
0

Teks penuh

(1)

SUPPORT VECTOR MACHINE (SVM) BERBASIS ALGORITMA GENETIK UNTUK LINEAR KERNEL

TIM PENGUSUL :

1. Nendra Mursetya Somasih Dwipa 2. Bintang Wicaksono

YOGYAKARTA

DESEMBER 2019

(2)

Program Matlab SVM GA Linear

function SVM_GA_Linier=SVM_lin(data,l)

% data = data perilaku belanja online

% l = banyak iterasi yang dilakukan untuk menghasilkan generasi baru

% q = banyak individu untuk inisialisasi

% t = banyak gen dalam 1 kromosom (bilangan asli genap)

%=================================================

l=2;

data=xlsread('data_perilaku_belanja_online','Sheet1','B2:X303');

TABEL_JAWAB=zeros(l,4);

[banyak_data,banyak_atribut]=size(data);

t=10;

% INISIALISASI KROMOSOM POPULASI sejumlah n=10) fprintf('INISIALISASI:\n')

M=rand(2,t);

for p=1:2 for h=1:t if M(p,h)<0.5 M(p,h)=0;

else M(p,h)=1;

end end end

KROMOSOM_POPULASI=M;

% MENGHITUNG NILAI C DARI KODE KROMOSOM rb=2^(-t); %batas bawah

ra=1; %batas atas T=zeros(2,1);

for p=1:2 for h=1:t

Ta(p)=rb+((ra-rb)*(M(p,h)*(2^(-h))));

T(p)=T(p)+Ta(p);

end end

%=================================================

Nilai_Parameter_C=T;

% MENGHITUNG NILAI C DARI KODE KROMOSOM rb=2^(-t); %batas bawah

ra=1; %batas atas T=zeros(2,1);

for p=1:2 for h=1:t

Ta(p)=rb+((ra-rb)*(M(p,h)*(2^(-h))));

T(p)=T(p)+Ta(p);

end end

Nilai_Parameter_C=T;

(3)

%=================================================

% MENGHITUNG AKURASI TERBAIK DARI POPULASI SEBANYAK n INDIVIDU akurasi=101;

for v=1:2;

svmstruct=svmtrain(data(1:100,1:22),data(1:100,23),'Kernel_Function', 'linear');

group=svmclassify(svmstruct,data(101:banyak_data,1:22));

hasil_prediksi=confusionmat(data(101:banyak_data,23),group);

akurasi_prediksi=50*((hasil_prediksi(1,1)/sum(hasil_prediksi(:,1)))+(hasil_

prediksi(2,2)/sum(hasil_prediksi(:,2))));

% MENGHITUNG AKURASI matriks pos pos=zeros(banyak_data,1);

for z=1:banyak_data-100

if data(101:banyak_data,23)==group(z) pos(z)=1;

else pos(z)=0;

end end

akurasi_m=100*(sum(pos)/banyak_data);

% hasil_prediksi=confusionmat(A(:,15),group);

% hasil_prediksi

% T(v,1);

% akurasi_m=100-((hasil_prediksi(1,2)/hasil_prediksi(1,1)))*100 if akurasi_m<akurasi

akurasi=akurasi_m;

Parameter=T(v,1);

end

Akurasi_awal_sblm_GA_1=akurasi;

end

Akurasi_awal_sblm_GA_2=akurasi TABEL_JAWAB(1,1)=1;

TABEL_JAWAB(1,2)=akurasi_prediksi;

TABEL_JAWAB(1,4)=Parameter;

%=================================================

fprintf('IMPROVISASI ALGORITMA GENETIKA:\n')

% Menghitung akurasi SVM setiap Kromosom K P=M(1:2,:);

for L=2:l

Kromosom_INDUK=P;

% Lalu dipilih 2 Kromosom dengan akurasi terbaik sebagai PARENT

%=================================================

% CROSSOVER Kode Kromosom PARENT S=P;

r1=rand;

if r1<0.5

S(1,1:0.5*t)=P(2,1:0.5*t);

S(2,1:0.5*t)=P(1,1:0.5*t);

else

S(1,(0.5*t)+1:t)=P(2,(0.5*t)+1:t);

S(2,(0.5*t)+1:t)=P(1,(0.5*t)+1:t);

end

Kromosom_INDUK_diCROSSOVER=S;

% MUTASI Kode Kromosom PARENT R=S;

for h=1:t-1 r2=rand;

if r2<0.5

R(:,h)=S(:,h+1);

R(:,h+1)=S(:,h);

(4)

end end

%R(:,4)=1;

Kromosom_INDUK_diMUTASI=R;

%=================================================

% MENGHITUNG NILAI C DARI KODE KROMOSOM PARENT SETELAH GA rb=2^(-t); %batas bawah

ra=1; %batas atas T=zeros(2,1);

for p=1:2 for h=1:t

Ta(p)=rb+((ra-rb)*(R(p,h)*(2^(-h))));

T(p)=T(p)+Ta(p);

end end

Nilai_Parameter_C_setelah_GA=T;

%=================================================

akurasi_GA=akurasi;

Parameter_GA=TABEL_JAWAB(L-1,4);

for v=1:2

svmstruct=svmtrain(data(1:100,1:22),data(1:100,23),'Kernel_Function', 'linear');

group=svmclassify(svmstruct,data(101:banyak_data,1:22));

hasil_prediksi=confusionmat(data(101:banyak_data,23),group);

akurasi_prediksi=50*((hasil_prediksi(1,1)/sum(hasil_prediksi(:,1)))+(hasil_

prediksi(2,2)/sum(hasil_prediksi(:,2))));

% MENGHITUNG AKURASI matriks pos pos=zeros(banyak_data,1);

for z=1:banyak_data-100

if data(101:banyak_data,15)==group(z) pos(z)=1;

else pos(z)=0;

end end

akurasi_m=(sum(pos)/banyak_data)*100;

% hasil_prediksi=confusionmat(A(:,15),group)

% T(v,1);

% akurasi_m=100-((hasil_prediksi(1,2)/hasil_prediksi(1,1)))*100;

if akurasi_prediksi>=akurasi_GA akurasi_GA=akurasi_prediksi;

Parameter_GA=T(v,1);

%else

% akurasi_GA end

Parameter_GA akurasi_GA end

Akurasi_awal_stlh_GA_2=akurasi_m;

TABEL_JAWAB(L,1)=L;

TABEL_JAWAB(L,2)=akurasi_GA;

TABEL_JAWAB(L,3)=TABEL_JAWAB(L,2)-TABEL_JAWAB(L-1,2);

TABEL_JAWAB(L,4)=Parameter_GA;

end

fprintf(' No Akurasi Selisih C \n') TABEL_JAWAB

Akurasi_Sebelum_GA=min(TABEL_JAWAB(1:l,2)) Akurasi_Setelah_GA=max(TABEL_JAWAB(:,2))

%==================================================

(5)

Manual Penggunaan Program

MATLAB (Matrix Laboratory) adalah bahasa tingkat tinggi dan interaktif yang memungkinkan untuk melakukan komputasi secara intensif. MATLAB telah berkembang menjadi sebuah environment pemrograman yang canggih yang berisi fungsi-fungsi built-in untuk melakukan pengelolahan sinyal, aljabar linear, estimasi parameter, dan klasifikasi parameter.

Pemrograman komputer dengan matlab yang diajukan ini tidak membutuhkan langkah yang kompleks. Pengguna dapat menjalankan program dengan urutan langkah sebagai berikut.

1. Siapkan komputer yang telah diinstalasi software Matlab.

2. Bukalah program Matlab pada komputer anda.

3. Setelah program matlab dijalankan maka akan muncul 4 tampilan yaitu jendela utama, jendela perintah (command window), jendela ruang kerja (workspace), jendela history (command history).

4. Pada jendela utama pilihlah open new m file

5. Setelah jendela m.file terbuka, copy lah syntax matlab yang ada di atas pada jendela m.file

6. Jalankan program dengan klik tombol run.

7. Output matlab dapat dilihat pada command window.

8. Apabila anda ingin bekerja dengan data yang lain, maka gantilah nama file data dengan nama file baru tersebut (mengganti nama file pada syntax yang diberi kotak merah di atas).

9. Output hasil klasifikasi pada data perilaku belanja

online mahasiswa dapat dilihat pada halaman setelah ini.

(6)

Hasil Output Matlab INISIALISASI:

Akurasi_awal_sblm_GA_2 = 0

IMPROVISASI ALGORITMA GENETIKA:

Parameter_GA = 0.4342

akurasi_GA = 66.0436

Parameter_GA = 0.8664

akurasi_GA = 66.0436

No Akurasi Selisih C TABEL_JAWAB =

1.0000 66.0436 0 0.6781 2.0000 66.0436 0 0.8664

Akurasi_Sebelum_GA = 66.0436

Akurasi_Setelah_GA = 66.0436

INISIALISASI:

(7)

Akurasi_awal_sblm_GA_2 = 0

IMPROVISASI ALGORITMA GENETIKA:

Parameter_GA = 0.0156

akurasi_GA = 66.0436

Parameter_GA = 0.7190

akurasi_GA = 66.0436

No Akurasi Selisih C TABEL_JAWAB =

1.0000 66.0436 0 0.6117 2.0000 66.0436 0 0.7190

Akurasi_Sebelum_GA = 66.0436

Akurasi_Setelah_GA =

66.0436

(8)

a.n. MENTERI HUKUM DAN HAK ASASI MANUSIA DIREKTUR JENDERAL KEKAYAAN INTELEKTUAL

Dr. Freddy Harris, S.H., LL.M., ACCS.

NIP. 196611181994031001 REPUBLIK INDONESIA

KEMENTERIAN HUKUM DAN HAK ASASI MANUSIA

SURAT PENCATATAN

CIPTAAN

Dalam rangka pelindungan ciptaan di bidang ilmu pengetahuan, seni dan sastra berdasarkan Undang-Undang Nomor 28 Tahun 2014 tentang Hak Cipta, dengan ini menerangkan:

Nomor dan tanggal permohonan : EC00201985934, 4 Desember 2019 Pencipta

Nama : Nendra Mursetya Somasih Dwipa dan Bintang Wicaksono Alamat : Perum Denggung Asri No. 5 RT 001/ RW 035 Tridadi, Sleman, DI

YOGYAKARTA, 55511

Kewarganegaraan : Indonesia

Pemegang Hak Cipta

Nama : Nendra Mursetya Somasih Dwipa dan Bintang Wicaksono Alamat : Perum Denggung Asri No. 5 RT 001/ RW 035 Tridadi , Sleman, DI

YOGYAKARTA, 55511

Kewarganegaraan : Indonesia

Jenis Ciptaan : Program Komputer

Judul Ciptaan : Program Matlab Support Vector Machine Dengan Algoritma Genetik Untuk Linear Kernel

Tanggal dan tempat diumumkan untuk pertama kali di wilayah Indonesia atau di luar wilayah Indonesia

: 4 Desember 2019, di Yogyakarta

Jangka waktu pelindungan : Berlaku selama 50 (lima puluh) tahun sejak Ciptaan tersebut pertama kali dilakukan Pengumuman.

Nomor pencatatan : 000168138

adalah benar berdasarkan keterangan yang diberikan oleh Pemohon.

Surat Pencatatan Hak Cipta atau produk Hak terkait ini sesuai dengan Pasal 72 Undang-Undang Nomor 28 Tahun 2014 tentang Hak Cipta.

Powered by TCPDF (www.tcpdf.org)

Referensi

Dokumen terkait

■ Pada konjungtivitis giant papillary , iritasi kronis akan menyebabkan keratitis yaitu inflamasi pada kornea dan dapat menyebabkan kebutaan permanen karena terjadi

Berdasarkan hasil digitasi sungai dari peta Kota Banda Aceh dan analisis buffer dari sungai tersebut, dapat dilihat bahwa wilayah yang berwarna biru menunjukkan

perguruan tinggi untuk masa depannya, kemudian indikator tindakan yang memiliki pernyataan pendidikan itu penting untuk menunjang kesuksesan kedepannya, dengan

Gambar 9 menunjukkan bahwa mulur arah lusi pada kain dengan benang pakan Slub merupakan nilai tertinggi dibandingkan dengan dua jenis kain lainnya yaitu sebesar 29,18%. Mulur arah

, (b) item kuesioner yang valid dan dapat dipercaya, dan (c) instrumen standar untuk mengukur disiplin siswa di SMA Negeri 2 Bantul, dan (3) mendeskripsikan nilai disiplin

Hasil Penelitian menunjukkan bahwa interaksi sumber dan lama penyimpanan batang atas tidak mempengaruhi jumlah tunas, panjang tunas, diameter tunas dan luas daun

Pada periode 2006-2007, kelompok sektor utilitas mendominasi PDRB Kabupaten Kepulauan Meranti, ini ditunjukkan oleh sumbangnnya yang menunjukkan angka paling besar terhadap

Hasil dari penelitian tugas akhir ini adalah DPK Mudhārabah , Equivalent Rate Basil Mudhārabah dan NPF Mudhārabah secara bersama-sama mampu menjelaskan