Pada bab ini akan dibahas perencanaan dan pembuatan sistem dari alat segmentasi pemasaran produk dengan metode k-means meliputi langkah-langkah sebagai berikut perencanaan sistem yang akan digunakan, pembuatan user interface,penyimpanan dan pengambilan data yang akan diproses, pemrosesan segmentasi data dengan metode k- means, dan melakukan analisa dari hasil segmentasi untuk menentukan kebijaksanaan lebih lanjut dalam pemasaran produk pada studi kasus rumah sakit X. 3.1. PERENCANAAN SISTEM
Perencanaan pembuatan sistem untuk alat bantu segmentasi data ini digambarkan secara umum pada blok diagram berikut ini : DATAMENTAH PREPROSESING CLUSTERING METODE K-MEANS HASIL CLUSTERING ANALISADAN EVALUASI HASIL Gambar 3.1 Blok iagram !" 3.1.1 Data Mentah ata mentah yang dimaksudkan disini adalah suatu kumpulan data yang terhadapnya tidak dilakukan suatu tidakan, dan hanya sekumpulan data yang didaftar dan disimpan begitu saja. Pada studi kasus pasien ra#at inap pada rumah sakit X, data yang dimiliki oleh rumah sakit ini disimpan pada database pada aplikasi microsoft access. ata yang disimpan mengenai profil pasien yang dira#at yaitu meliputi jenis kelamin $responden se%&, umur pasien, penghasilan dan kelas ra#at inap. 'eperti yang telah dijelaskan pada batasan masalah pada proyek akhir ini data yang diolah adalah data numerik, oleh karena itu terhadap data real yang telah diperoleh jika bukan bertipe numerik terlebih dahulu dilakukan kon(ersi ke dalam tipe numerik. )ara mengkon(ersikannya adalah membuat asumsi dan kesepakatan terhadap data yang bersangkutan. *ntuk data kategorikal $nilai ordinal& yaitu pada atribut jenis kelamin dan kelas ra#at inap nilai yang digunakan hanya untuk me#akili keberadaan data tersebut dan tidak berpengaruh terhadap perhitungan nilai nominal. +enis kelamin laki-laki , perempuan -arena bukan bertipe numerik maka dilakukan asumsi : .aki-laki : /00 Perempuan : 10 *mur pasien sudah bertipe numerik. Penghasilan sudah bertipe numerik. -elas ra#at inap -elas 2, -elas B, -elas ) -arena bukan bertipe numerik maka dilakukan asumsi : -elas 2 $-elas ba#ah& /00 -elas B $-elas menengah& !00 -elas ) $-elas atas& 300 'ehingga diperoleh daftar data pada tabel rumah4sakit sebagai berikut : Tabel 3.1 'truktur data tabel rumah4sakit Nama Kolom Tipe Data 5omor 5umber $integer& 6esponden4se% 5umber $integer& *mur 5umber $integer& Penghasilan 5umber $integer& -elas4ra#at 5umber $integer& !1 *ntuk nama kolom nomor bukan merupakan atribut yang akan diolah tetapi hanya berupa auto number saja untuk menunjukan jumlah data dan urutan data tiap baris. +adi dapat disimpulkan bah#a tabel rumah sakit memiliki atribut " yaitu responden4se%, umur, penghasilan, dan kelas4ra#at. a& Pengaksessan data pada database 2gar data mentah yang telah disimpan dalam database aplikasi microsoft access dapat diakses oleh alat bantu segmentasi yang dibuat maka perlu dibangun sebuah koneksi. +a(a atabase )onnecti(ity $+B)& +B) adalah 2pplication Programming 7nterface $2P7& yang dirancang untuk mengakses database berdasarkan '8. $'tructured 8uery .2nguage&. *ntuk mengakses database dengan B9' yang berbeda maka +B) memerlukan ri(er. *ntuk mengakses database 9'-2ccess +B) memerlukan ri(er yang menjembatani 2plikasi dengan :B) $:pen atabase )onnecti(ity& yang ada dilingkungan 9icrosoft ;indo#s. <eknik ini disebut juga sebagai bridging. 7nisialisasi ri(er *ntuk mengaktifkan hubungan antar aplikasi dan database, maka sebuah connection harus dibentuk dengan menggunakan :B) ri(er. Connetion dibentuk melalui / class java.sql.DriverManager dan ! interface yaitu java.sql.Driver dan java.sql.Connection.)lass untuk +B) diakses melalui java.sql.*. Connection con; String url = "jdbc:odbc:clustering"; String myLogin = "dbadmin"; String my!ass"ord = "dbadmin"; try# Class.$or%ame& "sun.jdbc.odbc.'dbc(dbcDriver"); Connection con =DriverManager.getConnection&url* myLogin* my!ass"ord); ...+ != 2plikasi +a(a +B) :B) 9'-2ccess Cla!!."orName#nama$%ri&er' loading dri(er, artinya koneksi akan dibuat dengan menggunakan jalur dri(er tersebut. Dri&erMana(er.(etConnetion#)rl* m+,o(in* m+Pa!!-or%' menghubungkan aplikasi dengan nama database yang akan diakses, dilengkapi dengan otentifikasi berupa nama user dan pass#ord. 9enyiapkan instruksi '8. +a(a '8. menyiapkan class untuk melakukan '8. >uery yaitu dengan Statement dan Re!)ltSet. 'tatement digunakan untuk melaksanakan '8. >uery sedangkan hasilnya akan masuk ke class 6esult'et. Statement st; ,esultSet rs; try# st = con.createStatement&); rs = st.e-ecute.uery&select * $rom ruma/0sa1it); st.close&); + perhatikan bah#a 'tatement dibuka untuk membuat >uery, kemudian pada akhir blok statement terebut ditutup dengan st.close$&. 6esult'et merupakan pointer ke kumpulan dari hasil >uery tersebut. Bila nilai 6esult'et adalah null, maka hasil eksekusi '8. tersebut kosong. . 3.1.. Pro!e! Cl)!terin( Al(oritma K$Mean! Pada tahap ini akan dilakukan proses utama yaitu segmentasi data mentah yang telah diakses dari database yaitu dengan sebuah metode clustering algoritma --9eans. Berikut ini merupakan diagram flo#chart dari algoritma k-means dengan asumsi bah#a parameter input adalah jumlah data set sebanyak n data, jumlah inisialisasi centroid -?! dan jumlah maksimum batas iterasi adalah /00. !@ start data-n (x,y) - !"#a$ %&ntr'(d)* - !"#a$ "a+s("!" (t&ras(),-- rand'" %&ntr'(d a.a# (Adan /) $(t!n0 ara+ antara t(a1 data d&n0an %&ntr'(d 2 D,)3(x,y)4A5 D*)3(x,y)4/5 D,6D* data "as!+ 1ada +&#as / data "as!+ 1ada +&#as A !1dat& %&ntr'(d %#!st&r 7ar! '1t("a# ara+8 &nd y&s 9&s NO $(t!n0 ara+ antara t(a1 data d&n0an %&ntr'(d 7ar! D,)3(x,y)4A5 D*)3(x,y)4/5 N' (t&ras( ) ,-- 8 N' 9&s Gambar 3.. Alo#chart --9eans !B Berikut ini adalah algoritma dari --9eans dalam proses clustering : /& <entukan sebanyak - centroid untuk inisialisasi pusat cluster. !& Citung jarak euclidean tiap data terhadap centroid yang telah diinisialisasi sebagai pusat cluster. 3& -elompokkan setiap data ke dalam cluster yang mempunyai jarak euclidean terdekat dengan pusat cluster. "& .akukan update pusat cluster yang nilainya diperoleh dari perhitungan rata-rata data pada cluster yang terbentuk. 1& .akukan langkah !- " hingga mencapai nilai yang optimum yaitu nilai pusat cluster tidak berubah. Pada tugas akhir ini studi kasus yang digunakan adalah pasien ra#at inap pada rumah sakit X dimana memiliki " atribut utama yaitu : Atr1/ atrib)t 0eni! 1elamin Atr./ atrib)t )m)r Atr3/ atrib)t pen(ha!ilan Atr2/ atrib)t r)an( ra-at inap. 6ancangan dari centroid untuk pusat cluster digambarkan sebanyak n centroid : Pusat ke-0
Pusat ke-/ Pusatke-! . . . . . . Pusat ke-n maka rumus perhitungan jarak atau euclidean distance yang akan digunakan adalah sebagai berikut : imana: E 2 / e)li%ean %i!tane atr1 p = atribut jenis kelamin( titik pusat) atr1 d = atribut jenis kelamin (titik data ke-n) atr2 p = atribut umur (titik pusat) atr2 d = atribut umur (titik data ke-n) Atr1 3 Atr. 3 Atr3 3 Atr2 3 Atr1 1 Atr. 1 Atr3 1 Atr2 1 Atr1 . Atr. . Atr3 . Atr2 . Atr1 n Atr. n Atr3 n Atr2 n !D E 2 = (atr1 p atr1 d ) 2 +(atr2 p atr2 d ) 2 +(atr3 p atr3 d ) 2 +(atr4 p atr4 d ) 2 atr3 p = atribut penghasilan (titik pusat) atr3 d = atribut penghasilan (titik data ke-n) atr4 p = atribut umur ruang rawat inap (titik pusat) atr4 d = atribut ruang rawat inap (titik data ke-n) 3.1.3 4a!il Cl)!terin( Casil daripada proses segmentasi dengan metode clustering algoritma --9eans ini akan diperoleh keterangan-keterangan dari tiap kelas yang nantinya berguna untuk keperluan analisa data lebih lanjut untuk menentukan kebijaksanaan pemasaran produk. Beberapa keterangan yang mungkin akan diperoleh antara lain adalah : +ika diasumsikan telah dilakukan proses segmentasi pada data dalam tabel rumah4sakit dengan parameter input sebagai berikut: ata pada tabel : /00 data 7nisialisasi centroid : 3 9aksimum iterasi : /00 9engamati data pada proses tiap iterasi Gambar 3.3 <e%t 2rea Casil 30 7terasi ke-/ <otal jarak ? 33@1D"B"./=B@ +arak antar centroid ? @/3/B@D.003= +umlah kelas ke-/: !D +umlah kelas ke-!: ! +umlah kelas ke-3: B +umlah kelas ke-": !3 +umlah kelas ke-1: /! +umlah kelas ke-=: != ??????????????????????????????????? 7terasi ke-! <otal jarak ? !/@//"B!.//0D +arak antar centroid ? @!D/=@B.1"=D +umlah kelas ke-/: !1 +umlah kelas ke-!: ! +umlah kelas ke-3: B 9engamati hasil akhir clustering . . . Gambar 3.2 Casil 2khir ata )luster 9engamati secara (isualisasi grafik jika data atribut ! imensi Gambar 3.5 Eisualisasi )luster 3/ karena pada tabel rumah4sakit bukan data dua dimensi maka grafik tidak terdapat (isualisasi grafik. 3.1.2 Anali!a 4a!il 2nalisa akan dilakukan dengan dua cara yaitu analisa cluster dan analisa secara deskriptif. 2nalisa cluster 2dalah analisa yang dilakukan dengan melihat total jarak antar data dan total jarak antar cluster dimana akan menganut asas similarity dan disimilarity dapat dilihat pada Fambar 3.1. 2nalisa deskriptif 2dalah analisa yang dilakukan dengan mengamati perilaku tiap kelas yang telah tercipta, dimana tiap kelas tersebut pasti memiliki suatu perilaku tertentu yang membedakan dirinya dengan kelas yang lainnya. Berikut ini adalah gambaran analisa secara deskriptif. Gambar 3.6 <e%t 2rea 2nalisa 3! isi cluster ke: 0 adalah ------------------------------ <itik ke: Dkoordinat--GH33=.0, !=.0I <itik ke: /!koordinat--GH/!3.0, /00.0I jumlah data! ????????????????????????????????? isi cluster ke: / adalah ------------------------------ <itik ke: 0koordinat--GH/1.0, !1.0I <itik ke: /koordinat--GH/!.0, =.0I <itik ke: !koordinat--GH!0.0, =3.0I <itik ke: 3koordinat--GH!1.0, 1=.0I <itik ke: "koordinat--GH=0.0, !3.0I <itik ke: 1koordinat--GH!!.0, !/.0I <itik ke: =koordinat--GH!!.0, !1.0I <itik ke: @koordinat--GH!1.0, !=.0I <itik ke: /0koordinat--GH!=.0, /0.0I jumlah dataD ????????????????????????????????? isi cluster ke: ! adalah ------------------------------ <itik ke: Bkoordinat--GH//!.0, !1=.0I <itik ke: //koordinat--GH3!.0, "10.0I jumlah data! 3.. PEMBUATAN SISTEM 'istem yang digunakan dalam tugas akhir ini adalah mengkonfigurasikan database microsoft access dengan alat segmentasi data yang telah dibuat, pembuatan sistem ini berisi pembahasan mengenai sistem yang ada pada alat bantu segmentasi produk ini yaitu meliputi : atabase F*7 $Fralhic *ser 7nterface& 3...1 Databa!e ata yang akan diproses dibuat dan disimpan disimpan melalui media database yang dibuat pada microsoft access yaitu sebagai berikut: a)9asuk pada aplikasi microsoft access b)Pada menu pop-up pilih ne" , pilih blan1 database Gambar 3.7 Buat atabase pada 9s.2ccess 33 c) 'etelah itu beri nama database clustering setelah itu tekan tombol create. Gambar 3.8 )reate atabase d) 'etelah itu database clustering telah tercipta Gambar 3.9 Casil )reate atabase 2gar database dapat diakses dan dikenali oleh koneksi yang akan diciptakan pada alat segmentasi data, terlebih dahulu setting :B) 3" pada kontrol panel dilakukan dimana dri(er microsoft access yang memuat database clustering harus didaftarkan pada :B) data source administrator. Gambar 3.13 :B) 2dministrator pada ;indo#s idalam database clustering akan berisi tabel rumah4sakit dimana data yang bersangkutan akan diolah adalah : Gambar 3.11 <abel 6umah 'akit 31 3.... GUI #Graphi U!er Inter"ae' Aorm *tama Aorm ini merupakan tampilan a#al untuk melakukan proses --9eans )lustering yang didalamnya " menu pop-up yaitu 2ile untuk pengolahan data tabel, 3dit untuk pengolahan tabel, 4enerate Solusi untuk proses )lustering --9eans dan 5el6 . <ampilan secara sederhana seperti berikut: Gambar 3.1. Aorm *tama 3= Aile Jdit Fenerate 'olusi Celp 'JF9J5<2'7 PJ92'2625 P6:*- J5F25 9J<:J --9J25' :leh : 2tika 9a#ar 2prillia @"0! 030 0/1 Bagian dari pop-up menu dapat dijelaskan sebagai berikut : Aorm-Aorm pada 9enu Aile : 5e# <abel : untuk membuat tabel baru Gambar 3.13 Aorm Pembuatan <abel 7nput ata : untuk menginputkan data ke tabel Gambar 3.12 Aorm 9engisi nilai <abel 3@ Pembuatan <abel 5ama <abel : ------ +umlah 2tribut :------ 5ama 2tribut ke/ : --- 5ama 2tribut ke! : --- 5ama 2tribut ke3 : --- 5ama 2tribut ke-n : -- 9engisi 5ilai <abel 5o : 2tribut ke/ : ---- 2tribut ke/ : ---- 2tribut ke/ : ---- 2tribut ke-n : ---- 5o 2tribut/ 2tribut! 2tribut3 2tribut ke-n )lear <e%t 7nsert update e delete e%it )reate )ancel )lose : untuk menutup aplikasi 9enu Jdit elete <able : untuk menghapus tabel pada database
Gambar 3.15 Aorm Capus <abel 2lter <able : untuk operasi manipulasi tabel Gambar 3.16 Aorm 2lter <abel 3B Pilih <abel <e%t2rea 5ama <abel rop )ancel Pilih <abel <e%t2rea 5ama <abel 2dd rop )olu )ancel 9enu Fenerate 'olusi --9eans : <empat proses --9eans berlangsung. Gambar 3.17 Aorm Pembuatan <abel Pada form --9eans ini terdapat beberapa tab yaitu tab -eterangan yang merupakan tab utama seperti pada gambar 3./@ , tab Proses tiap 7terasi seperti pada gambar 3.3 , tab Casil )luster 2khir seperti pada gambar 3." , tab Eisualisasi seperti pada gambar 3.1 , dan tab 2nalisa 2tribut seperti pada gambar 3.=. 9enu Celp : 2bout : keterangan tentang alat bantu segmentasi data. 3D --9eans -eterangan Proses tiap 7terasi Casil )luster 2khir Eisualisasi 2nalisa 2tribut +umlah iterasi : ---- 9aksimum 7terasi : ---- Proses J%it