perancangan clustering data menggunakan algortima k...

Download Perancangan Clustering Data Menggunakan Algortima K …ftiuksw.org/ejournal/assets/pdf/01dbaa9e96ee3dcc85594b3474627a60.… · Perancangan Clustering Data Menggunakan ... (Studi Kasus

If you can't read please download the document

Upload: nguyenthu

Post on 06-Feb-2018

221 views

Category:

Documents


0 download

TRANSCRIPT

  • 101

    Perancangan Clustering Data MenggunakanAlgortima K-Means Berbasis Heatmap(Studi Kasus : Provinsi Papua Barat)

    1 )Sylvia Pretty Tulus, 2) Hendry

    Program Studi Teknik InfromatikaFakultas Teknologi Informasi

    Universitas Kristen Satya WacanaJl. Diponegoro 52-60 Salatiga

    Email : 1) [email protected], 2) [email protected]

    AbstractClustering is one of the methods that can be used to manage data

    by grouping the data into a particular cluster. K-Means algorithm is usedto classify objects based on attribute into K cluster, where K is a positiveinteger. The type of data used to cluster in this research is spatial data.Spatial data will be normalized to Cartesian form and then processed byclustering. Once the data processed, they will be displayed in a visualform using Heatmap. Heatmap uses red to display objects with a maxi-mum level of intensity and blue for the minimum. As a case study, thisresearch is applied to mineral potential in the Province of West Papua.

    Keywords : Clustering, K-Means Algorithm, Heatmap

    1. PendahuluanData merupakan sekumpulan informasi atau nilai yang diperoleh melalui

    observasi terhadap suatu obyek. Data dapat berupa angka, lambang atau sifat [1].Pertumbuhan data yang makin pesat setiap harinya jika tidak dimanfaatkan denganbaik akan tertimbun sia-sia. Oleh karena itu, data perlu dikelola dengan baik melaluiberbagai cara agar dapat menjadi informasi yang berguna.

    Terdapat beberapa metode yang dapat digunakan untuk mengelola data, salahsatunya adalah clustering. Clustering merupakan kegiatan mengelompokkan objekke dalam suatu cluster, sehingga objek pada suatu cluster memiliki kemiripan yangbesar dengan objek lain pada cluster yang sama dan berbeda dengan objek padacluster lainnya. Beberapa metode yang dapat digunakan dalam mengembangkanmetode clustering antara lain metode parsial dan metode hirarki. Metode parsialmengorganisir sejumlah data tertentu ke dalam kelompok yang lebih spesifik ataucluster, sedangkan metode hirarki clustering mengelompokkan objek data ke dalamsebuah hirarki atau pohon cluster [2].

    Papua Barat sebagai salah satu Provinsi di Indonesia yang berpotensimenghasilkan bahan tambang menjadi wilayah yang diminati oleh para investor untukmenanam sahamnya. Setiap bahan tambang mempunyai karakteristik yang berbeda.Seringkali hal ini menjadi kendala bagi investor untuk mengambil keputusan dalammenentukan daerah yang akan digunakan sebagai wilayah usahanya di Provinsitersebut. Oleh karena itu, perlu adanya clustering mengenai data tersebut agar

  • Jurnal Teknologi Informasi-Aiti, Vol. 11. No.2, Agustus 2014 : 101 - 202

    102

    dapat digunakan sebagai acuan dalam melakukan analisis untuk membantu dalammenentukan pengambilan keputusan kedepannya.

    Dalam penelitian ini, akan dilakukan clustering data menggunakan metodeparsial. Algoritma yang digunakan untuk melakukan proses clustering adalahAlgoritma K-Means. Data yang akan dikelompokkan dalam penelitian ini adalahdata potensi hasil tambang di Provinsi Papua Barat. Data yang digunakan dalamproses clustering berupa data spasial dan kemudian akan dinormalisasi dalam bentukKartesius. Setelah dinormalisasi, data tersebut dikelompokkan melalui clusteringkemudian dikembalikan dalam bentuk spasial dan disajikan secara visual berbasisHeatmap. Provinsi Papua Barat sebagai daerah berkembang memerlukan mediayang dapat digunakan untuk mengenalkan kekayaan alam yang dimiliki. Salah satumedia yang dapat digunakan serta dapat diakses oleh banyak pihak adalah web.Oleh rena itu, clustering yang dilakukan akan ditampilkan dalam sebuah aplikasiweb. Daerah yang berpotensi untuk menghasilkan hasil tambang yang banyak akanditampilkan Heatmap dengan warna merah dan yang kurang akan dengan warnabiru.

    2. Kajian Pustaka

    Adapun penelitian terdahulu yang berkaitan dalam penelitian ini berjudulPenentuan Wilayah Usaha Pertambangan Menggunakan Metode Fuzzy K-MeanClustering Berbasis Sistem Informasi Geografi. Pada penelitian ini, metode FuzzyK-Mean Clustering diterapkan pada penentuan wilayah usaha pertambangan diKabuapten Trenggalek, Jawa Timur. Hasil dari penerapan metode tersebut adalahsegmentasi wilayah usaha pertambangan yang dapat menggambarkan karakteristikbahan galian pada setiap kelompoknya, sehingga selain dapat mempermudahpenetapan rencana umum tata ruang daerah dalam pengalokasian wilayah usahapertambangan bahan galian, hasil segmentasi ini juga dapat mempermudah peminatdan pelaku usaha tambang dalam memilih wilayah kegiatan usaha tambang yangprospek di Kabupaten Trenggalek, Jawa Timur [3].

    Penelitian yang berjudul Sistem Market Basket Untuk Menentukan Tata LetakProduk Pada Suatu Swalayan Menggunakan Algoritma K-Means Clustering jugamerupakan salah satu penilitian yang berkaitan dengan penilitian ini. Market basketanalysis adalah salah satu teknik data mining yang dapat menemukan pola yangberupa produk-produk yang sering dibeli bersamaan dalam sebuah transaksi. Dalampenelitian tersebut, dijelaskan bagaimana market basket analysis denganmenggunakan Algoritma K-Means clustering berdasarkan kebiasaan konsumenberbelanja untuk menghasilkan suatu model tata letak produk. Algoritma K-Meansclustering digunakan untuk membagi data ke dalam cluster sehingga data yangmemiliki karakteristik yang sama dikelompokkan ke dalam satu cluster yang samadan data yang mempunyai karakteristik berbeda dikelompokkan ke dalam clusterlain. Hasil dari penelitian tersebut adalah sebuah model tata letak produk yang dapatdigunakan oleh pihak manajemen swalayan [4].

    Penelitian lain yang berkaitan dalam penelitian ini berjudul ImplementasiMetode Heatmap 2-D Untuk Visualisasi Data Terdistribusi. Penelitian ini membuat

  • 103

    Perancangan Clustering Data (Tulus dan Hendry)

    aplikasi sebagai alat bantu untuk menampilkan data terdistribusi dalam bentuk visualsehingga lebih menarik dan mudah dibaca. Adapun aplikasi ini dibuat dengan tujuanmempermudah pengguna dalam mencari data dalam basis data XML serta mudahdalam mengambil kesimpulan dan atau keputusan manajerial [5].

    Mengacu pada penelitian terdahulu, maka akan dilakukan penelitian yangberjudul Perancangan dan Implementasi Clustering Data Menggunakan AlgoritmaK-Means Berbasis Heatmap. Dalam penelitian ini, data yang akan dikelompokkanadalah data spasial dari peta sebaran potensi bahan tambang di Provinsi PapuaBarat kemudian disajikan dalam sebuah aplikasi web menggunakan Heatmap.

    Clustering merupakan salah satu teknik dalam data mining. Clusteringmembagi objek ke dalam kelompok atau cluster tertentu, sehingga objek dalamsuatu cluster memiliki kemiripan dengan objek lain dalam cluster yang sama danberbeda dengan objek pada cluster yang lain. Kemiripan objek umumnyadidefinisikan berdasarkan jarak kedekatan antar objek yang ditentukan melalui fungsijarak [2].

    Gambar 1 Clustering dalam ruang dua dimensi. (a) Insialisasi Data;(b) Data dalam tiga cluster; (c) Data dalam empat cluster [6]

    Pada Gambar 1 terdapat sembilan objek yang akan dikelompokkan. Gambar1(b) menggambarkan kesembilan objek tersebut dikelompokkan menjadi tiga clus-ter, objek yang saling berdekatan dikelompokkan dalam satu cluster yang sama.Sedangkan pada Gambar 1(c), terlihat kesembilan objek yang ada dikelompokkanmenjadi empat cluster.

    Secara umum metode clustering dapat dibagi menjadi beberapa kategori,antara lain metode parsial dan metode hirarki [2].

    1. Metode Parsial adalah metode clustering yang sederhana dan merupakankonsep dasar dari analisis cluster. Metode parsial mengorganisir sejumlah datatertentu ke dalam kelompok yang lebih spesifik atau cluster. Jumlah cluster yangdiberikan merupakan parameter untuk memulai metode parsial.

    Secara formal, pemberian sejumlah data (D) dari n objek dan jumlah cluster(K) untuk melakukan proses clustering. Sebuah algortima partisi mengorganisirobjek ke dalam partisi K dengan K d n, sehingga setiap partisi mewakili sebuahcluster. Cluster dibentuk untuk mengoptimalkan sebuah tujuan pembagian kriteria,seperti fungsi perbedaan berdasarkan jarak, sehingga objek dalam satu cluster miripdengan objek lain dalam cluster tersebut, dan berbeda dengan objek di clusterlain. Algoritma yang sering digunakan dalam metode parsial ini adalah Algoritma K-Medoids dan K-Means.

  • Jurnal Teknologi Informasi-Aiti, Vol. 11. No.2, Agustus 2014 : 101 - 202

    104

    2. Metode Hirarki dalam clustering mengelompokkan objek data ke dalamsebuah hirarki atau pohon cluster. Objek data yang ditampilkan dalam bentuk sebuahhirarki berguna untuk penyimpulan atau peringkasan serta penyajian data. Sebagaicontoh, seorang manajer sumber daya manusia di perusahaan X dapat mengorganisirkaryawannya ke dalam kelompok besar seperti eksekutif, manajer dan staf. Selainitu, pengelompokan tersebut dapat dilanjutkan menjadi sub kelompok yang lebihkecil. Misalnya kelompok umum untuk semua staf dapat dibagi menjadi subkelompok pegawai senior, pegawai dan pegawai yang masih dalam masa percobaan.Setelah melakukan pengelompokan, maka sebuah hirarki dapat terbentuk.Berdasarkan hirarki tersebut, proses penarikan kesimpulan atau klasifikasi data dapatdilakukan dengan mudah.

    Euclidean distance adalah metrika yang sering digunakan untuk menghitungkesamaan dua vektor. Euclidean distance menghitung akar dari kuadarat perbedaandua vektor [7]. Semakin besar jarak antara dua vektor, maka tingkat kesamaanatau kemiripannya kecil. Sebaliknya, semakin kecil jarak antara dua vektor, makatingkat kesamaan atau kemiripannya besar. Rumus Euclidean distance adalahsebagai berikut :

    Gambar 2 Rumus Euclidean Distance [7]

    Pustaka lain yang mendukung penelitian ini adalah mengenai algoritma K-Means. Algoritma K-Means merupakan salah satu teknik pengelompokan data yangsering digunakan. K-Means mengelompokkan objek yang mirip dalam cluster yangsama. Gambaran umum dari algoritma tersebut adalah sebagai berikut [8] :

    1. Menentukan nilai K atau jumlah cluster yang diinginkan serta menentukancentroid atau pusat cluster. Centroid ditentukan secara acak dari objek data yangada sesuai dengan nilai K, jika nilai K adalah dua maka centroid yang ditentukanjuga dua.

    2. Membagi setiap objek ke dalam cluster yang paling mirip. Cluster yangpaling mirip adalah cluster dengan centroid terdekat. Perhitungan kedekatan antaraobjek dengan centroid dapat dilakukan menggunakan fungsi jarak, seperti Euclid-ean Distance.

    3. Menghitung ulang K cluster dengan rata-rata dari semua objek yangdiberikan untuk tiap cluster.

    4. Ulangi langkah kedua dan ketiga sampai tidak ada lagi objek yangberpindah cluster.

    Heatmap digunakan untuk menggambarkan distribusi dan kepadatan titikpada peta. Heatmap memudahkan viewer untuk memahami distribusi dan intensitasrelatif titik data pada peta. Distribusi data pada Heatmap diwakilkan menggunakanwarna [9].

  • 105

    3. Metode dan Perancangan

    Pada penelitian ini, dilakukan beberapa tahapan yang saling berkaitan antarasatu tahap dengan tahap lainnya. Flowchart tahapan penelitian yang dilakukan dapatdilihat pada Gambar 3 [10].

    Gambar 3 Flowchart Tahapan Penelitian [10]

    Berdasarkan Gambar 3 dapat dilihat bahwa tahap pertama yang dilakukandalam penelitian ini adalah identifikasi masalah. Identifikasi masalah dilakukan untukmelihat dengan jelas tujuan dan sasaran dari penelitian yang akan dilakukan. Masalahpenelitian dipilih berdasarkan beberapa pertimbangan, antara lain sisi waktu, biayamaupun kontribusi diberikan bagi pengembangan ilmu pengetahuan dan teknologi.

    Tahap selanjutnya adalah perumusan masalah. Perumusan masalah perludilakukan agar proses penelitian lebih terarah sesuai dengan rumusan masalah yangditetapkan. Pada penelitian ini, masalah dirumuskan dalam suatu bentuk pertanyaanyang singkat sehingga dapat memberikan petunjuk untuk pengumpulan data sertapencarian metode yang tepat untuk pemecahan masalah tersebut.

    Setelah merumuskan masalah, tahap berikutnya yang dilakukan adalahpenelusuran pustaka. Pada tahap ini dilakukan pencarian pustaka dan pengumpulaninformasi yang berhubungan dengan penelitian. Penelusuran pustaka berguna untukmenghindari duplikasi dari pelaksanaan penelitian.

    Tahap berikutnya yaitu rancangan penelitian. Rancangan penelitian merupakanrencana menyuluruh dari penelitian mencakup hal-hal yang akan dilakukan dalampenelitian ini. Adapun rancangan penelitian dari penelitian ini adalah rentang waktupenelitian dilakukan, teknik pengumpulan data dan pengolahan data.

    Data yang dikumpulkam dalam tahap pengumpulan data ini meruapakan datasekunder yang diperoleh melalui wawancara di Dinas Pertambangan dan EnergiProvinsi Papua Barat untuk mendapatkan data yang diperlukan dalam penelitian ini.

    Perancangan Clustering Data (Tulus dan Hendry)

  • Jurnal Teknologi Informasi-Aiti, Vol. 11. No.2, Agustus 2014 : 101 - 202

    106

    Data yang dihasilkan dari pengumpulan data tersebut berupa peta sebaran potensitambang di Provinsi Papua Barat. Data tersebut kemudian diolah melalui tahappengujian pada sistem yang akan dibangun.

    Adapun metode perancangan sistem yang digunakan dalam penelitian ini adalahmodel Waterfall. Pendekatan model ini sistematis dan dan urut mulai dari levelkebutuhan sistem lalu menuju ke tahap analisis, desain, coding, testing / verification,dan maintenance. Secara umum tahapan pada model Waterfall ditunjukkan padaGambar 4 [11].

    Gambar 4 Model Waterfall [11]

    Seperti yang terlihat pada Gambar 4, tahapan pertama yang dilakukan dalammodel Waterfall adalah analisis kebutuhan sistem. Pada tahap ini dilakukan identifikasikebutuhan data yang akan dibutuhkan sistetm yaitu data spasial. Data tersebutdiperoleh melalui tahap pengumpulan data dari tahapan penelitian yang dilakukan.

    Tahapan kedua dari model Waterfall adalah desain sistem. Pada tahap inidilakukan perancangan sistem serta perancangan user interface dari aplikasi yangakan dibangun. Perancangan dibuat menggunakan Unified Modeling Language(UML). Adapun diagram yang dibuat adalah Use Case Diagram dan ActivityDiagram. Use Case Diagram menggambarkan interaksi yang terjadi antara aktordengan sistem. Use Case Diagram dari sistem yang akan dibangun dapat dilihatpada Gambar 5.

    Gambar 5 Use Case Diagram Sistem

    Pada Gambar 5 terlihat bahwa terdapat satu aktor yaitu user dan beberapainteraksi yang dapat dilakukan oleh aktor tersebut. Interaksi yang dapat dilakukanoleh aktor adalah mengunduh file yang disediakan sistem sebagai contoh file yang

  • 107

    dapat digunakan untuk melakukan proses clustering, melakukan clustering, melihatpeta setelah melakukan clustering, menambah data latitude dan longitude padapeta. Dalam interaksi menambah data latitude dan longitude, user dapat menambahdata baru pada peta yang sudah ada sebelumnya dan kemudian akan dilakukanclustering ulang pada data yang baru.

    Selain Use Case Diagram, terdapat juga Activity Diagram. ActivityDiagram menggambarkan alur aktivitas yang dapat dilakukan oleh aktor mulai dariawal hingga berakhirnya suatu use case. Pada bagian ini, Activity Diagram yangakan dibahas yaitu aktivitas dari use case melakukan clustering berdasarkan UseCase Diagram pada Gambar 5. Activity Diagram dari use case tersebut dapatdilihat pada Gambar 6.

    Gambar 6 Activity Diagram Melakukan Clustering

    Activity Diagram pada Gambar 6 menggambarkan bahwa user dapatmelakukan clustering dengan mengisi data pada form proses clustering yangditampilkan oleh sistem terlebih dahulu. Adapun data yang harus diisi berupa jumlahcluster yang diingikan user serta file yang berisi data mengenai objek yang akandikelompokkan yaitu nama objek, latitude dan longitude. Setelah user mengisidata pada form proses clustering, sistem akan melakukan validasi terhadap datatersebut. Jika data yang dimasukkan benar, sistem akan mengunggah file yangdimasukkan terlebih dahulu kemudian melakukan proses clustering. Namun jikadata yang dimasukkan salah, sistem akan meminta user untuk mengisi data kembali.

    Selain perancangan sistem, perancangan user interface juga dilakukan agarpembuatan aplikasi lebih mudah dan terarah. Terdapat empat user interface yangdirancang, yaitu user interface untuk beranda, user interface untuk clustering,user interface untuk menampilkan hasil clustering dan user interface untukmenampilkan peta. Perancangan user interface beranda dari aplikasi yang akandibangun dapat dilihat pada Gambar 7.

    Perancangan Clustering Data (Tulus dan Hendry)

  • Jurnal Teknologi Informasi-Aiti, Vol. 11. No.2, Agustus 2014 : 101 - 202

    108

    Gambar 7 User Interface Beranda

    Pada Gambar 7, terlihat bahwa terdapat beberapa sub menu dari menuutama Beranda yaitu Clustering, Algoritma K-Means dan Heatmap. Masing-masingsub menu tersebut berisi definisi dari tiap sub menu itu sendiri. Selain Beranda,terdapat juga menu utama Clustering dengan tampilan seperti pada Gambar 8.

    Gambar 8 User Interface Clustering

    Gambar 8 merupakan rancangan user interface dari menu utama Clustering.Terdapat dua sub menu yaitu download file dan Proses clustering pada menuclustering. Sub menu download file berisi file yang dapat diunduh oleh user untukmengisi data latitude dan longitude dari peta daerah yang akan dikelompokkan.Proses clustering dilakukan melalui sub menu Proses Clustering. Rancangan userinterface untuk proses clustering dapat dilihat pada Gambar 9.

    Gambar 9 User Interface Proses Clustering

  • 109

    Ketika user memilih sub menu Proses clustering melalui menu utamaClustering, user akan diarahkan ke halaman dengan user interface seperti padaGambar 9. Pada Gambar 8 terdapat sebuah form yang harus dilengkapi oleh useruntuk melakukan proses clustering. User harus memasukkan jumlah cluster yangdiinginkan dalam proses clustering dengan jumlah cluster tersebut harus lebih darinol dan bernilai positif. Kemudian user juga harus mengunggah file yang datanyaakan diambil untuk proses clustering dengan menekan tombol UNGGAH. Setelahfile berhasil diunggah, user dapat menekan tombol PROSES untuk melakukanclustering. Selanjutnya, ketika proses clustering berhasil dilakukan user akandiarahkan pada halaman dengan user interface seperti pada Gambar 10.

    Gambar 10 User Interface Hasil Clustering

    Gambar 10 menunjukkan perancangan user interface untuk hasil dari prosesclustering yang dilakukan. Selain itu, juga terdapat sebuah link yang dapat digunakanuntuk melihat peta setelah clustering. User interface untuk menampilkan petatersebut dapat dilihat pada Gambar 11.

    Gambar 11 User Interface Lihat Peta

    Perancangan Clustering Data (Tulus dan Hendry)

  • Jurnal Teknologi Informasi-Aiti, Vol. 11. No.2, Agustus 2014 : 101 - 202

    110

    Gambar 11 merupakan rancangan user interface untuk melihat peta hasilclustering dari data yang dimasukkan. Selain itu, terdapat juga form yang dapatdigunakan jika user ingin menambah data baru untuk clustering. User hanya perlumengarahkan kursor pada titik yang diinginkan kemudian klik kiri pada mouse makalatitude dan longitude dari titik yang diingikan akan muncul pada kolom yang tersedia.Kolom nama objek dapat digunakan untuk mengisi nama dari objek baru yangdiingikan. Setelah mengisi data pada form yang tersedia, user dapat menekan tombolTAMBAH untuk menambah data baru.

    Sebelum lanjut ke tahap berikutnya dari model Waterfall, pada tahap inijuga dilakukan perancangan untuk alur proses clustering data. Perancangan inidilakukan dengan membuat flowchart program mulai dari normalisasi data spasialsampai ditampilkan kembali menggunakan Heatmap. Hal ini dilakukan agar penulisankode program pada tahap selanjutnya dapat dilakukan dengan lebih terstruktur.Flowchart untuk perancangan tersebut dapat dilihat pada Gambar 12.

    Gambar 12 Flowchart Program

    Gambar 12 merupakan flowchart dari program yang akan dibuat. Sebelummelakukan clustering, user harus memberikan inputan terlebih dahulu yaitu datayang akan dikelompokkan. Data yang diberikan berupa data spasial. Kemudian,program akan melakukan normalisasi terhadap data spasial tersebut. Setelah itu,data yang telah dinormalisasi akan dikelompokkan melalui proses clusteringmenggunakan Algoritma K-Means. Selanjutnya, data tersebut akan dikembalikanke dalam bentuk spasial dan kemudian ditampilkan dalam bentuk peta menggunakanHeatmap.

    Setelah selesai melakukan desain sistem dan perancangan user interfaceserta perancangan alur program, tahap ketiga dalam model Waterfall adalahpenulisan kode program. Pada tahap ini dilakukan implementasi pada perancanganyang telah dibuat. Implementasi dilakukan dengan menulis kode programmenggunakan PHP, CSS dan Javascript.

    Tahapan berikutnya dari tahapan penelitian adalah pengolahan data. Dalampenelitian ini, pengolahan data dilakukan melalui tahap pengujian program pada modelWaterfall. Pengujian yang dilakukan yaitu pengujian dengan Black Box Testing.Black Box Testing bisa juga disebut dengan functional testing, sebab pengujiandilakukan pada tiap fungsi yang ada pada program [12]. Hasil dari pengolahan data

  • 111

    yang dilakukan melalui proses pengujian akan digunakan dalam tahap penyimpulanhasil sebagai kesimpulan dari penelitian.

    Tahap terakhir dari model Waterfall adalah perawatan program. Pada tahapini dilakukan pemeliharaan terhadap aplikasi yang dibuat. Bentuk pemeliharaan yangdapat dilakukan adalah dengan memperbaharui aplikasi atau membuat versi yangbaru untuk aplikasi ini.

    4. Hasil dan Pembahasan

    Pada bagian hasil dan pembahasan akan dibahas penerapan dari tiapperancangan yang sudah dibangun. Adapun hasil penerapan yang akan dibahas antaralain proses melakukan clustering dan bagaimana menampilkan hasil clusteringtersebut menggunakan Heatmap dengan PHP dan Javascript.

    Seperti yang telah dijelaskan sebelumnya mengenai clustering dan AlgoritmaK-Means, maka yang dibutuhkan untuk melakukan clustering adalah nilai K sebagaijumlah cluster serta data yang akan dikelompokkan. Data yang digunakan dalampenelitian ini adalah data potensi hasil tambang di Provinsi Papua Barat berupa dataspasial dari peta sebaran potensi hasil tambang tersebut. Sebelum melakukanclustering, data tersebut harus dinormalisasi terlebih dulu. Proses normalisasi dataspasial tersebut dapat dilihat pada Kode Program 1.

    Kode Program 1 Proses Normalisasi Data

    1. $setData = normalisasi($namadb, $kolom1, $kolom2);2. $A = $setData[0];3. $minA = $setData[1];4. $maxA = $setData[2];5. $C = $setData[3];6. $D = $setData[4];7. for($i=0; $i

  • Jurnal Teknologi Informasi-Aiti, Vol. 11. No.2, Agustus 2014 : 101 - 202

    112

    namun pada bagian ini hanya akan dibahas dua fungsi yaitu fungsi untuk menghitungjarak berdasarkan rumus Euclidean Distance yang dapat dilihat dalam KodeProgram 2 dan fungsi untuk mengelompokkan data ke dalam cluster pada KodeProgram 3.

    Kode Program 2 Perhitungan Jarak

    1. function jarak($obj, $cent) {2. $x = pow(($obj[0]-$cent[0]),2);3. $y = pow(($obj[1]-$cent[1]),2);4. return round(sqrt($x + $y), 2);5. }

    Pada Kode Program 2 terdapat fungsi jarak dengan parameter obj yaitu dataobjek yang akan dikelompokkan serta cent sebagai centroid yang akan digunakanuntuk menghitung jarak. Fungsi jarak melakukan perhitungan jarak antara masing-masing objek data ke centroid yang sudah ditentukan. Sesuai dengan penjelasanmengenai Algoritma K-Means, maka langkah selanjutnya adalah mengelompokkantiap data ke dalam cluster.

    Kode Program 3 Pengelompokan Data

    1. function clustering($data, $centroids, $k) {2. foreach($data as $indexDataObj => $dataObj) {3. foreach($centroids as $centroid) {4. $arrJarak[$indexDataObj][] = jarak($dataObj,$centroid);5. }6. }7. foreach($arrJarak as $indexJarak => $jarak) {8. $cluster = minCent($jarak);9. $arrTempCluster[$cluster][] = $indexJarak;10. $arrJarak_dari_clusters = array($indexJarak =>$jarak);11. }12. if(count($arrTempCluster) < $k) {13. $latLngCluster = maxCent($arrJarak_dari_clusters);14. foreach($arrTempCluster as $tempIndex =>$tempCluster) {15. foreach($tempCluster as $tempObj) {16. if($tempObj == $latLngCluster) {17. $clusters[$k+1][] = $tempObj;18. } else {19. $clusters[$tempIndex][] = $tempObj;20. }21. }22. }23. } else {24. $clusters = $arrTempCluster;25. }26. return $clusters;27. }

  • 113

    Pada Kode Program 3 terdapat fungsi clustering yang berfungsi untukmelakukan pengelompokan data. Secara garis besar, fungsi ini akan memanggil fungsijarak untuk menghitung jarak dan hasilnya ditampung dalam variabel arrJarak. Setelahitu, akan diambil nilai minimum dari hasil perhitungan tersebut. Nilai minimum darimasing-masing objek kemudian dikelompokkan satu cluster yang sama. Prosesclustering dilakukan secara berulang-ulang sampai tidak ada lagi objek yangberpindah dari satu cluster ke cluster yang lain. Hasil dari proses clustering akanditampilkan oleh program seperti pada Gambar 13.

    Gambar 13 Hasil Clustering

    Data yang dimasukkan oleh user adalah data mengenai potensi bahantambang di Provinsi Papua Barat dengan jumlah titik sebanyak 79 titik. Berdasarkanhasil clustering pada Gambar 13, dapat dilihat bahwa nilai K yang dimasukkanoleh user adalah dua sehingga jumlah cluster yang dibuat juga sebanyak dua cluster.Selain itu, juga terdapat link Lihat Peta yang dapat digunakan untuk melihat petadari hasil clustering yang sudah dilakukan. Namun sebelum menampilkan peta,data yang sudah dinormalisasi sebelumnya harus dikembalikan terlebih dahulu kedalam bentuk spasial. Data spasial tersebut kemudian ditampilkan dengan Heatmap.Pengkodean untuk mengembalikan data dalam bentuk spasial dapat dilihat padaKode Program 4 dan untuk menampilkan data dengan Heatmap dapat dilihat padaKode Program 5.

    Kode Program 4 Mengembalikan Data Spasial

    1. $setData = normal($namadb, $kolom1, $kolom2);2. $B = $setData[0];3. $minA = $setData[1];4. $maxA = $setData[2];5. $C = $setData[3];6. $D = $setData[4];7. .8. for($i=0; $i

  • Jurnal Teknologi Informasi-Aiti, Vol. 11. No.2, Agustus 2014 : 101 - 202

    114

    Kode Program 4 merupakan pengkodean untuk mengembalikan data yangsudah dinormalisasi menjadi data spasial. Pada kode program tersebut dapat dilihatbahwa program memanggil fungsi normal yang berfungsi untuk mengambil data yangakan dikembalikan. Proses pengembalian data menjadi bentuk spasial terdapat padabaris tujuh sampai baris sembilan dari Kode Program 4. Setelah berhasilmengembalikan data dalam bentuk spasial, data akan ditampilkan menggunakanHeatmap.

    Kode Program 5 Menampilkan Data Dengan Heatmap

    1. downloadUrl(../Skripsi/fungsi/map_xml.php?namadb=+namadb, function(data) {2. var xml = data.responseXML;3. var markers = xml.documentElement.getElementsByTagName(marker);4. for (var i = 0; i < markers.length; i++) {5. var nama = markers[i].getAttribute(nama);6. var cluster = markers[i].getAttribute(cluster);7. var point = new google.maps.LatLng(

    parseFloat(markers[i].getAttribute(lat)),parseFloat(markers[i].getAttribute(lng)));

    8. disk_points.push(point);9. var html = + nama + Anggota cluster + cluster;10. var marker = new google.maps.Marker({position:point});

    bindInfoWindow(marker, map, infoWindow, html);marker_array.push(marker);

    11. }12. });13. pointArray = new google.maps.MVCArray(disk_points);14. heatmap = newgoogle.maps.visualization.HeatmapLayer({15. data: pointArray16. });17. heatmap.set(radius, 25);18. heatmap.set(gradient, gradient);19. heatmap.setMap(map);

    Kode Program 5 merupakan potongan dari fungsi initialize dengan parameternama database yang digunakan. Fungsi tersebut dijalankan program untukmenampilkan data yang sudah dikelompokkan melalui clustering menggunakanHeatmap. Baris 1 dari Kode Program 5 memanggil data yang sudah dikembalikanke dalam bentuk spasial sebelumnya. Data tersebut kemudian digunakan oleh fungsiinitialize untuk ditampilkan dalam peta seperti yang terlihat pada baris lima sampaibaris tujuh dari Kode Program 5 dan kemudian disimpan dalam variabel pointArraypada baris 13. Pengkodean untuk menampilkan data dalam variabel pointArraydengan Heatmap terdapat pada baris 17 sampai baris 19 dari Kode Program 5.Data yang ditampilkan oleh Heatmap dapat dilihat pada Gambar 14.

  • 115

    Gambar 14 Peta Hasil Clustering

    Gambar 14 menunjukkan hasil clustering dari data yang dimasukkan olehuser. Dari gambar tersebut dapat dilihat bahwa daerah yang berpotensi menghasilkanbahan tambang berwarna merah. Pada gambar tersebut juga terdapat form TambahObjek Baru yang dapat digunakan jika user ingin menambah objek baru. Jika gambartersebut diperbesar, maka akan ditampilkan detail dari masing-masing titik berupainformasi mengenai objek yang terdapat pada titik tersebut seperti yang ditunjukkanpada Gambar 15

    Gambar 15 Informasi Objek Tiap Titik

    Perancangan Clustering Data (Tulus dan Hendry)

  • Jurnal Teknologi Informasi-Aiti, Vol. 11. No.2, Agustus 2014 : 101 - 202

    116

    Black Box TestingDalam perancangan program ini, pengujian dilakukan dengan Black Box

    Testing. Pada pengujian dengan Black Box Testing, akan diuji validitas dari fungsi-fungsi yang ada. Fungsi yang berhasil ditandai dengan (), sedangkan fungsi yanggagal ditandai dengan (). Hasil dari pengujian tersebut dapat dilihat pada Tabel 1.

    Tabel 1 Hasil Black Box Testing

    Black Box Testing dilakukan oleh programmer yang membuat programtersebut, dalam hal ini peneliti. Fungsi-fungsi yang digunakan untuk melakukanclustering diuji melalui Black Box Testing tersebut. Berdasarkan hasil pengujianpada Tabel 1, setiap fungsi sudah berjalan dengan baik atau valid.

    Selain Black Box Testing, juga dilakukan pengujian penelitian. Pengujian inidilakukan untuk melihat kembali tujuan dari penelitian, yaitu clustering pada dataspasial. Pengujian dilakukan melalui nilai K yang dimasukkan. Hasil dari pengujiantersebut dapat dilihat pada Tabel 2.

  • 117

    Tabel 2 Hasil Pengujian Cluster

    Pada Tabel 2 dapat dilihat bahwa semakin besar nilai K yang diberikan tidakmempengaruhi durasi clustering. Hal ini terlihat dari durasi clustering yang terusberubah-ubah untuk tiap nilai K. Jika dilakukan proses clustering dengan nilai Ksatu sampai sepuluh, maka durasi yang dihasilkan akan berbeda dengan hasil yangterdapat pada Tabel 2. Berdasarkan hasil tersebut, dapat dikatakan bahwa durasiclustering tidak bergantung pada nilai K yang diberikan dari pengujian penelitianyaitu mendapatkan daerah yang paling berpotensi menghasilkan bahan tambang.Hasil tersebut dapat dilihat pada Gambar 16.

    Perancangan Clustering Data (Tulus dan Hendry)

  • Jurnal Teknologi Informasi-Aiti, Vol. 11. No.2, Agustus 2014 : 101 - 202

    118

    Gambar 16 Hasil Pengujian Penelitian

    Gambar 16 menunjukkan hasil clustering dengan nilai K empat, sehinggaada empat cluster yang dibuat dari proses clustering tersebut. Pada Tabel 2 dapatdilihat bahwa cluster terbaik untuk menghasilkan potensi tambang dengan nilai Kempat adalah cluster tiga, sedangkan pada Gambar 16 dapat dilihat bahwa clusterterbaik yang berpotensi untuk menghasilkan tambang adalah cluster dua. Perbedaanini disebabkan karena centroid yang digunakan dalam Algoritma K-Means ditentukansecara acak.

    5. Simpulan

    Berdasarkan hasil dan pembahasan dari penelitian yang dilakukan, maka dapatdiambil kesimpulan bahwa aplikasi clustering data dapat digunakan untukmengelompokkan data spasial melalui proses normalisasi terlebih dahulu dankemudian dikelompokkan menggunakan Algoritma K-Means. Data dikelompokkanberdasarkan jarak terdekat objek bukan berdasarkan karakteristik objek. Dari hasilpengujian yang dilakukan juga dapat diambil kesimpulan bahwa daerah yangberpotensi menghasilkan bahan tambang untuk nilai K atau jumlah cluster empatadalah daerah cluster tiga. Hal ini dapat menjadi informasi bagi investor ataupengusaha di bidang pertambangan untuk menemukan wilayah yang berpotensimenghasilkan tambang. Selain itu, aplikasi juga dapat menampilkan data yang sudahdikelompokkan secara visual dengan menggunakan Heatmap.

    6. Daftar Pustaka

    [1] Situmorang, S. H., Muda. I., Dalimunthe, D. M. J., Fadli, Syarief, F., 2010,Analisis Data : Untuk Riset Manajemen dan Bisnis, Medan : USU Press.

    [2] Han, J., Kamber M., Pei, J., 2011, Data Mining : Technique and Concepts3rd ed., San Fransisco, CA, USA : Morgan Kaufmann.

    [3] Suryana, Nana, 2010, Penentuan Wilayah Usaha Pertambangan MenggunakanMetode Fuzzy K-Mean Clustering Berbasis Sistem Informasi Geografi, JurnalTeknologi Mineral dan Batubara, 6 (4):204-215, http://www.tekmira.esdm.go.id/newtek2/e-jurnal/Jurnal%20tekMIRA%20-

  • 119

    %20Oktober%202010.html. Diakses tanggal 5 April 2014.[4] Sebayang, Steffi Andina, 2012, Sistem Market Basket Untuk Menentukan

    Tata Letak Produk Pada Suatu Swalayan Menggunakan Algoritma K-MeansClustering.

    [5] Lisana, & Pramana, Edwin, 2013, Implementasi Metode Heatmap 2-D UntukVisualisasi Data Terdistribusi, Seminar Nasional Teknologi Informasi danMulitmedia 2013, Universitas Surabaya.

    [6] Kantardzic, Mehmed, 2011, Data Mining : Concepts, Models, Methodsand Algorithms 2nd ed., USA : Wiley-IEEE Press.

    [7] Putra, Darma, 2010, Pengolahan Citra Digital, Yogyakarta : Penerbit Andi.[8] Aggarwal, Charu C., & Reddy, Chandan K., (Ed.), 2013, Data Clustering

    : Algorithms and Applications, Boca Raton : CRC Press.[9] Google, 2014, Google Maps Andorid Heatmap Utility, https://

    developers.google.com/maps/documentation/android/utility/heatmap#introduction. Diakses tanggal 12 April 2014.

    [10] Hasibuan, Zainal A, 2007, Metode Penelitian Pada Bidang Ilmu KomputerDan Teknologi Informasi : Konsep, Teknik Dan Aplikasi, Jakarta : FakultasIlmu Komputer Universitas Indonesia.

    [11] Pressman, Roger S., 2001, Software Engineering a PractitionersApproach, New York : McGraw-Hill Higher Education.

    [12] Saleh, Kassem A., 2009, Software Engineering, USA : J. Ross Publishing.

    Perancangan Clustering Data (Tulus dan Hendry)