• Tidak ada hasil yang ditemukan

BAB IV IMPLEMENTASI DAN PENGUJIAN

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB IV IMPLEMENTASI DAN PENGUJIAN"

Copied!
16
0
0

Teks penuh

(1)

BAB IV

IMPLEMENTASI DAN PENGUJIAN

Bab ini berisi penjelasan mengenai proses implementasi dan pengujian yang dilakukan dalam penelitian mengenai aplikasi algoritma spasial clustering pada data mahasiswa Universitas Mercu Buana. Pembahasan terdiri dari dua bagian, bagian pertama merupakan penjelasan tahapan-tahapan implementasi yang terdiri dari penjelasan terhadap proses implementasi tahap pengumpulan data, penjelasan terhadap implementasi tahap analisis spasial clustering, penjelasan terhadap implementasi tahap validasi. Pembahasan diawali dengan penjelasan implementasi tahap pengumpulan data. Pembahasan dilanjutkan dengan penjelasan implementasi algoritma spasial clustering. Selanjutnya dijelaskan mengenai implementasi validasi hasil analisis spasial clustering. Lalu pada bagian selanjutnya, dijelaskan mengenai pengujian kode implementasi yang telah dijelaskan sebelumnya. Dimulai dari pengujian kode algoritma DBSCAN, pengujian waktu jalannya algoritma DBSCAN dengan parameter yang berbeda, pengujian validasi hasil dari clustering DBSCAN dengan Silhouette index, pengujian nilai validasi Silhouette index.

4.1 Implementasi Algoritma DBSCAN

Pada bagian ini berisi penjelasan tahapan-tahapan implementasi yang terdiri dari penjelasan terhadap proses implementasi tahap pengumpulan data, penjelasan terhadap implementasi tahap analisis spasial clustering, penjelasan terhadap implementasi tahap validasi. Pembahasan diawali dengan penjelasan implementasi tahap pengumpulan data. Pembahasan dilanjutkan dengan penjelasan implementasi algoritma spasial clustering. Selanjutnya dijelaskan mengenai implementasi validasi hasil analisis spasial clustering

4.1.1 Tahap I: Pengumpulan Data

Proses implementasi tahap pengumpulan data dilakukan dengan memasukan data kordinat alamat yang terdapat dalam data mahasiswa Universitas Mercu Buana.

(2)

Pertama, data alamat dimasukkan kedalam aplikasi google maps. Maka, akan didapatkan data koordinat (longitude dan latitude).

4.1.2 Tahap II: Analisis Spasial Clustering

Setelah diperoleh data yang diperlukan, langkah selanjutnya dalam penelitian ini adalah proses spasial clustering. Analisis spasial clustering merupakan bagian inti dalam penelitian ini. Algoritma yang digunakan dalam implementasi analisis spasial clustering adalah algoritma Density-base Spatial Clustering of Application with Noise (DBSCAN). Implementasi algoritma DBSCAN yang dilakukan dalam penelitian ini merujuk kepada pseudocode yang ada di dalam jurnal ilmiah yang menjadi rujukan implementasi DBSCAN (Ester, Kriegel, Sander, & Xu, August 1996). Di bagian penjelasan ini hanya akan menjelaskan bagian penting dari fungsi yang dibuat untuk analisis spasial clustering saja. Di bawah ini akan dijelaskan bagian-bagian penting yang ada dalam fungsi DBSCAN clustering.

Terlebih dahulu, peneliti menggunakan fungsi Scatter Plot untuk melihat bentukan awal data yang akan dibentuk clusternya. Data yang telah ada dijadikan sebagai inputan dalam fungsi Scatter Plot agar peneliti dapat melihat secara jelas bagaimana bentuk penyebaran data yang telah disiapkan. Fungsi Scatter Plot yang digunakan adalah sebagai berikut :

figure

Scatter(X,IDX);

title('Sactter Plot');

Kode Sumber 4.1 Fungsi scatterplot

Potongan kode sumber untuk menunjukkan masukkan fungsi scatterplot

Bagian ini menunjukkan masukkan dari fungsi scatterplot. Penjelasan masing-masing komponen sebagai berikut:

a. X

merupakan masukkan fungsi scatterplot yang berisi data yang dikumpulkan.

(3)

merupakan masukkan fungsi scatterplot yang berisi vektor hasil analisis clustering yang menunjukkan keanggotaan cluster dari setiap profil dalam data.

Selanjutnya penelitian dilanjutkan dengan melakukan implementasi algoritma DBSCAN pada data yang telah disiapkan. Fungsi DBSCAN clustering yang digunakan adalah sebagai berikut :

tic

function [IDX, isnoise]=DBSCAN(X,epsilon,MinPts) toc

Kode Sumber 4.2 Fungsi dbscancluster

Potongan kode sumber untuk menunjukkan masukkan, parameter fungsi dbscancluster

Bagian ini menunjukkan masukkan, parameter dan keluaran dari fungsi dbscancluster. Fungsi ini mengimplementasikan algoritma DBSCAN yang ada di dalam jurnal ilmiah tersebut. Penjelasan masing-masing komponen sebagai berikut:

a. X

merupakan masukkan data yang telah dikumpulkan dan akan dilakukan analisi spasial clustering dengan DBSCAN.

b. epsilon

merupakan parameter fungsi dbscancluster berisi nilai yang dipakai sebagai nilai epsilon (jarak minimal data yang bertetanggaan)

c. MinPts

merupakan parameter fungsi dbscancluster yang berisi jumlah minimal profil agar dapat dijadikan sebagai satu cluster.

d. IDX

merupakan keluaran fungsi dbscancluster yang berisi hasil cluster yang terbentuk dari analisis spasial clustering.

(4)

merupakan keluaran fungsi dbscancluster yang berisi noise yang terbentuk dari analisis spasial clustering.

f. tic & toc

merupakan tools yang digunakan dalam MATLAB untuk mengetahui berapa lama waktu yang dibutuhkan ketika program dijalankan.

4.1.3 Tahap III: Validasi Hasil Analisis Spasial Clustering

Tahap ketiga dalam penelitian mengenai penggunaan algoritma spasial clustering adalah tahap validasi hasil spasial clustering. Validasi dilakukan terhadap setiap hasil analisis clustering. Metode validasi clustering yang digunakan dalam penelitian ini adalah metode Silhouette index. Implementasi metode Silhouette index menggunakan toolbox yang sudah ada di Matlab yaitu fungsi silhouette. Bagian ini hanya akan ditunjukkan bagian penting dari implementasi proses validasi hasil clustering dengan Silhouette index. Di bawah ini akan dijelaskan fungsi yang ada dalam implementasi tersebut.

figure

silhouette(X, IDX);

Kode Sumber 4.3 Tahap III: validasi dengan Silhouette index

Bagian ini menujukkan masukkan, parameter dan keluaran dari fungsi silhouettevalidation. Berikut penjelasan dari komponen-komponen tersebut:

a. X

merupakan masukkan fungsi silhouettevalidation yang berisi data yang dikumpulkan.

b. IDX

merupakan masukkan fungsi silhouettevalidation yang berisi vektor hasil analisis clustering yang menunjukkan keanggotaan cluster dari setiap profil dalam data.

Setelah itu, dilakukan pengambilan nilai dari hasil validasi dalam Silhouette index, dimana menggunakan sebuah variabel didalam sebuah fungsi untuk pengambilan

(5)

nilai dari Silhouette index. Lalu dari kumpulan nilai tersebut dicari nilai rata-ratanya. Di bawah ini akan dijelaskan fungsi yang ada dalam implementasi tersebut.

nilaiSilh = silhouette(X, IDX); nilai = nilaiSilh > 0; nilaiSilh(nilai); [a,b] = size(nilaiSilh(nilai)); nilaiTotal= sum(sum(nilaiSilh(nilai))); mean = nilaiTotal/(a*b); disp(mean);

Kode Sumber 4.4 mengambil nilai dan rata-rata validasi Silhouette index

Berikut penjelasan dari komponen-komponen tersebut:

a. nilaiSilh

merupakan variabel yang digunakan untuk mengambil nilai Silhouette index. b. a & b

merupakan variabel yang digunakan untuk mengetahui jumlah data dalam nilai Silhouette index.

c. nilai

Merupakan variabel yang digunakan untuk mengambil nilai Silhouette index yang termasuk dalam cluster. Dan dimasukkan dalam perhitungan nilai rata-rata.

d. size

merupakan syntax dalam MATLAB untuk mengetahui jumlah banyaknya data dalam nilai Silhouette index.

e. nilaiTotal

merupakan variabel yang digunakan untuk nilai total dari nilaiSilh f. sum

merupakan syntax dalam MATLAB untuk mengetahui nilai total dalam data nilai Silhouette index.

g. mean

(6)

4.2 Pengujian Algoritma DBSCAN

Pada bagian ini berisi penjelasan tahapan-tahapan pengujian yang terdiri dari penjelasan terhadap proses pengujian kode algoritma DBSCAN, pengujian waktu jalannya algoritma DBSCAN dengan parameter yang berbeda, pengujian validasi hasil dari clustering DBSCAN dengan Silhouette index, pengujian nilai validasi Silhouette index.

4.2.1 Tahap I: Pengujian Kode Algoritma DBSCAN

Proses pengujian dilakukan dengan menggunakan aplikasi MATLAB. Pertama penguji melakukan hasil Scatter Plot pada data Clustering untuk melihat bentukan awal yang telah ada. Selanjutnya dilakukan pengujian algoritma DBSCAN pada data yang telah ada. Pengujian dilakukan dengan proses berulang dengan menggunakan nilai parameter yang berbeda (epsilon & minPts). Berikut ini hasil pengujian yang telah dilakukan oleh peneliti.

Pertama, peneliti melakukan implementasi kode Scatterplot untuk melihat penyebaran data yang telah disiapkan. Berikut hasil uji implementasi fungsi Scatterplot.

Gambar 4.1 Hasil Scatterplot

Dengan menggunakan Scatterplot, data yang telah disiapkan peneliti menghasilkan sebaran data seperti gambar 4.1. Pada gambar diatas, garis absis atau x merupakan nilai dari garis bujur. Dan garis ordinat atau y merupakan nilai dari garis lintang. Rentang nilai dari garis yang digunakan berasal dari nilai minimum dan maksimum dari data yang telah disiapkan sebelumnya. Berdasarkan

(7)

gambar diatas, secara kasat mata peneliti bisa menentukan bahwa ada 2 cluster yang terbentuk. Selanjutnya, peneliti melakukan pengujian DBSCAN pada data yang telah disiapkan peneliti. Pengujian ini dilakukan dalam beberapa kali percobaan, dimana tiap percobaan peneliti menggunakan nilai parameter yang berbeda (epsilon & minPts). Berikut hasil uji implementasi DBSCAN.

Pengujian 1: epsilon = 0.5 & minPts = 5

Gambar 4.2 Hasil Uji Implentasi Algoritma DBSCAN (epsilon = 0.5, MinPts = 5)

Berdasarkan gambar 4.2, terlihat hasil uji penggunaan algoritma DBSCAN dengan nilai parameter epsilon = 0.5, dan MinPts = 5, menghasilkan enam buah cluster disertai noise. Dimana cluster 1 mendominasi dibandingkan dengan cluster lainnya.

Pengujian 2: epsilon = 0.5 & minPts = 15

Gambar 4.3 Hasil Uji Implentasi Algoritma DBSCAN (epsilon = 0.5, MinPts = 15)

(8)

Berdasarkan gambar 4.3, terlihat hasil uji penggunaan algoritma DBSCAN dengan nilai parameter epsilon = 0.5, dan MinPts = 15, menghasilkan dua buah cluster disertai noise. Dimana hasil pengujian ini lebih mendekati dengan yang peneliti amati pada Scatterplot yaitu menghasilkan 2 cluster.

Pengujian 3: epsilon = 0.5 & minPts = 30

Gambar 4.4 Hasil Uji Implentasi Algoritma DBSCAN (epsilon = 0.5, MinPts = 30)

Berdasarkan gambar 4.4, terlihat hasil uji penggunaan algoritma DBSCAN dengan nilai parameter epsilon = 0.5, dan MinPts = 30, menghasilkan tiga buah cluster disertai noise.

Pengujian 4: epsilon = 0.25 & minPts = 15

Gambar 4.5 Hasil Uji Implentasi Algoritma DBSCAN (epsilon = 0.25, MinPts = 15)

(9)

Berdasarkan gambar 4.5, terlihat hasil uji penggunaan algoritma DBSCAN dengan nilai parameter epsilon = 0.25, dan MinPts = 15, menghasilkan delapan buah cluster disertai noise. Dimana tiap cluster terbentuk dalam kelompok yang lebih kecil.

Pengujian 5: epsilon = 0.75 & minPts = 15

Gambar 4.6 Hasil Uji Implentasi Algoritma DBSCAN (epsilon = 0.75, MinPts = 15)

Berdasarkan gambar 4.6, terlihat hasil uji penggunaan algoritma DBSCAN dengan nilai parameter epsilon = 0.75, dan MinPts = 15, menghasilkan hanya satu buah cluster disertai noise.

Berdasarkan pengujian diatas, dapat dilihat bahwa dengan berubahnya nilai parameter yang telah ditentukan, dapat mengubah bentuk dan banyaknya cluster yang terbentuk. Hasil pengujian ini dapat dilihat pada tabel dibawah.

No. Epsilon MinPts Cluster Yang

Terbentuk

1 0.5 5 6

2 0.5 15 2

3 0.5 30 3

Tabel 4.1 Tabel Jumlah Cluster Yang Terbentuk (nilai MinPts berbeda)

(10)

Dijelaskan pada tabel 4.1. Dengan nilai MinPts yang semakin naik, jumlah cluster yang terbentuk mengalami penurunan. Hal ini dikarenakan ketika nilai MinPts kecil, maka akan terbentuk banyak cluster. Sedangkan ketika nilai MinPts mengalami kenaikan, maka cluster yang terbentuk akan semakin berkurang, dikarenakan nilai MinPts yang dijadikan sebagai parameter cluster semakin besar.

No. Epsilon MinPts Cluster Yang

Terbentuk

1 0.25 15 8

2 0.5 15 2

3 0.75 15 1

Tabel 4.2 Tabel Jumlah Cluster Yang Terbentuk (nilai epsilon berbeda)

Dijelaskan pada tabel 4.2. Semakin besar nilai epsilon, jumlah cluster yang terbentuk mengalami penurunan. Karena epsilon merupakan parameter jarak antar satu data dengan data yang lain. Jika, epsilon kecil maka jarak satu titik ke titik yang lain semakin pendek. Sehingga akan terbentuk banyak cluster. Tetapi, jika epsilon semakin besar, maka cakupan data untuk mengambil jarak antar data lainnya semakin besar. Sehingga, akan terbentuk cluster yang lebih sedikit dengan bentukan yang besar.

(11)

4.2.2 Tahap II: Pengujian Waktu Jalannya Algoritma

Tahap selanjutnya, peneliti melakukan uji waktu yang digunakan untuk mengukur waktu program berjalan pada algoritma DBSCAN dengan nilai parameter yang berbeda. Pengujian ini menggunakan tools tic dan toc. Hasil pengujian ini dapat dilihat pada tabel dibawah.

No. Epsilon MinPts Waktu (detik)

1 0.5 5 0.194570

2 0.5 15 0.175188

3 0.5 30 0.129221

Tabel 4.3 Tabel Hasil Uji Waktu Jalannya Program (nilai MinPts berbeda)

Pada tabel 4.3 merupakan hasil uji waktu jalannya program algoritma DBSCAN pada MATLAB dengan nilai MinPts yang berbeda. Dapat dilihat dengan nilai MinPts yang semakin naik, maka waktu yang dibutuhkan untuk jalannya program akan lebih sedikit. Hal ini dikarenakan, karena pemprosesan data oleh computer yang terbilang lebih cepat ketika menggunakan nilai MinPts yang lebih besar. Jika nilai MinPts kecil, maka program akan memproses secara perlahan dengan menggunakan lima data. Berbeda dengan nilai MinPts yang lebih besar, maka program akan langsung melakukan proses dengan menggunakan puluhan data.

No. Epsilon MinPts Waktu (detik)

1 0.25 15 0.055377

2 0.5 15 0.175188

3 0.75 15 0.198502

Tabel 4.4 Tabel Hasil Uji Waktu Jalannya Program (nilai epsilon berbeda)

(12)

Pada tabel 4.4 merupakan hasil uji waktu jalannya program algoritma DBSCAN pada MATLAB dengan nilai epsilon yang berbeda. Dapat dilihat dengan nilai epsilon yang semakin naik, maka waktu yang dibutuhkan untuk jalannya program akan lebih banyak. Hal ini dikarenakan, jika nilai epsilon kecil, maka proses akan lebih cepat karena jarak yang digunakan sebagai parameter lebih pendek. Dibandingkan dengan nilai epsilon yang lebih besar, dengan cakupan jangkauan yang lebih bear, maka dibutuhkan waktu yang lebih banyak.

4.2.3 Tahap III: Pengujian Validasi Hasil Analisis Spasial Clustering

Tahap ketiga dalam pengujian ini adalah melakukan validasi hasil spasial clustering. Validasi dilakukan terhadap setiap hasil analisis clustering. Dengan menggunakan Silhouette index, maka akan tampak nilai kerapatan tiap cluster. Nilai pada Silhouette index memiliki rentang nilai dari minus satu (-1) hingga satu (1). Dimana semakin mendekati angka satu maka cluster merupakan cluster yang baik. Berikut hasil uji implementasi fungsi Silhouette index.

Pengujian 1: epsilon = 0.5 & minPts = 5

Gambar 4.7 Hasil Uji Validasi Silhouette index Algoritma DBSCAN (epsilon = 0.5, MinPts = 5)

Berdasarkan gambar 4.7, terlihat hasil validasi Silhouette index algoritma DBSCAN dengan nilai parameter epsilon = 0.5, dan MinPts = 5. Terlihat pada gambar 4.7 nilai validasi dari tiap cluster, dimana cluster satu yang dominan memiliki grafik yang lebih besar dengan nilai kerapatan yang rendah. Sedangkan, cluster lainnya memiliki kerapatan yang tinggi dengan grafik yang kecil

(13)

dikarenakan cluster tersebut memiliki anggota yang sedikit dibandingkan cluster satu.

Pengujian 2: epsilon = 0.5 & minPts = 15

Gambar 4.8 Hasil Uji Validasi Silhouette index Algoritma DBSCAN (epsilon = 0.5, MinPts =15)

Berdasarkan gambar 4.8, terlihat hasil validasi Silhouette index algoritma DBSCAN dengan nilai parameter epsilon = 0.5, dan MinPts = 15. Terlihat pada gambar 4.8 nilai validasi dari tiap cluster, dimana cluster satu dan cluster dua memiliki anggota yang cukup banyak sehingga grafiknya terllihat besar. Dengan nilai cluster satu memiliki nilai kerapatan yang baik cluster dua memiliki nilai kerapatan yang lebih sedikit dari cluster dua.

Pengujian 3: epsilon = 0.5 & minPts = 30

Gambar 4.9 Hasil Uji Validasi Silhouette index Algoritma DBSCAN (epsilon = 0.5, MinPts =30)

(14)

Berdasarkan gambar 4.9, terlihat hasil validasi Silhouette index algoritma DBSCAN dengan nilai parameter epsilon = 0.5, dan MinPts = 30. Terlihat pada gambar 4.7 nilai validasi dari tiap cluster, dimana terdapat tiga cluster yang memiliki besar grafik yang seimbang dengan nilai kepadatan cluster yang cukup baik.

Pengujian 4: epsilon = 0.25 & minPts = 15

Gambar 4.10 Hasil Uji Validasi Silhouette index Algoritma DBSCAN (epsilon = 0.25, MinPts =15)

Berdasarkan gambar 4.10, terlihat hasil validasi Silhouette index algoritma DBSCAN dengan nilai parameter epsilon = 0.25, dan MinPts = 15. Terlihat pada gambar 4.10 nilai validasi dari tiap cluster, dimana terdapat 8 cluster yang hampir keseluruhan terbilang cluster kecil karena bentukan grafik yang kecil, tetapi memiliki nilai kerapatan yang baik. Sebagian besar data masuk dalam kategori noise.

(15)

Pengujian 5: epsilon = 0.75 & minPts = 15

Gambar 4.11 Hasil Uji Validasi Silhouette index Algoritma DBSCAN (epsilon = 0.75, MinPts =15)

Berdasarkan gambar 4.11, terlihat hasil validasi Silhouette index algoritma DBSCAN dengan nilai parameter epsilon = 0.75, dan MinPts = 15. Terlihat pada gambar 4.11 nilai validasi dari cluster yang ada. Pada gambar 4.11 hanya memiliki satu cluster, dengan kepadatan yang baik.

Selanjutnya, peneliti melakukan perhitungan rata-rata nilai dari tiap Silhouette index. Dengan mengambil total nilai dari seluruh nilai Silhouette index dan dibagi jumlah data nilai yang digunakan. Hasil perhitungan ini dapat dilihat pada tabel dibawah.

No. Epsilon MinPts Nilai Silhouette Index

1 0.5 5 0.2818

2 0.5 15 0.5629

3 0.5 30 0.6883

Tabel 4.5 Tabel Nilai Rata-Rata Silhouette Index (nilai MinPts berbeda)

(16)

Pada tabel 4.5 merupakan hasil perhitungan nilai rata-rata Silhouette Index dengan nilai MinPts yang berbeda. Dapat dilihat dengan nilai MinPts yang semakin naik, maka nilai rata-rata Silhouette Index mengalami kenaikan pula. Maka cluster yang terbentuk semakin baik. Karena, nilai MinPts yang akan terbentuk banyak cluster. Dan cluster terbesar didalamnya memiliki kerapatan yang kurang baik. Sedangkan dengan nilai MinPts yang besar, maka kerapatan dalam satu cluster yang terbentuk lebih baik dan lebih compact.

No. Epsilon MinPts Nilai Silhouette Index

1 0.25 15 0.7439

2 0.5 15 0.5629

3 0.75 15 0.5806

Tabel 4.6 Tabel Nilai Rata-Rata Silhouette Index (nilai epsilon berbeda)

Pada tabel 4.6 merupakan hasil perhitungan nilai rata-rata Silhouette Index dengan nilai epsilon yang berbeda. Dapat dilihat dengan nilai epsilon yang semakin naik, nilai rata-rata Silhouette Index mengalami kenaikan dan penurunan sehingga tidak menentu perubahan nilainya. Hal ini dikarenakan dengan nilai epsilon yang kecil maka jarak antar data akan lebih dekat dengan begitu hasil cluster yang dibentuk akan lebih rapat. Sedangkan dengan angka epsilon yang lebih besar maka akan ada penurunan nilai yang signifikan, dikarenakan jarak antar data yang lebih besar. Dari hal itu, maka cluster yang terbentuk akan lebih renggang.

Gambar

Gambar 4.1 Hasil Scatterplot
gambar  diatas,  secara  kasat  mata  peneliti  bisa  menentukan  bahwa  ada  2  cluster  yang  terbentuk
Gambar 4.4 Hasil Uji Implentasi Algoritma DBSCAN   (epsilon = 0.5, MinPts = 30)
Tabel 4.1 Tabel Jumlah Cluster Yang Terbentuk  (nilai MinPts berbeda)
+7

Referensi

Dokumen terkait

Berdasarkan dari data tersebut memberikan gambaran bahwa responden yang menyatakan koleksi yang dimiliki UPT Perpustakaan banyak yang relevan dengan kebutuhan

Proses mewarnai dengan teknik pointilis telah cukup dipahami oleh siswa di kelas X MIA 3 SMA NEG 9 GOWA baik dari sisi penempatan gambar stilasi yang tepat atau pun

Pada akses layanan tertutup, koleksi tertutup bagi pemakai, dalam arti pemakai tidak boleh langsung mengambil bahan pustaka di rak, tetapi petugas perpustakaan yang akan

riset internasional 19, disebutkan bahwa dari 100 perusahaan yang ada, maka 45 di antaranya masuk dalam kategori rugi sekali, 53 perusahaan kondisinya rugi dan hanya 2 perusahaan

Dari hasil penelitian yang dilakukan dapat ditarik kesimpulan bahwa terdapat interaksi antara perlakuan pupuk kandang ayam+pupuk organik cair dengan pupuk NPK

Sedangkan nilai buku ( book value per lembar saham) menunjukkan aktiva bersih ( net asset ) yang dimiliki oleh pemegang saham dengan memiliki satu lembar

PERU BAHAN PERATURAN GUBERNUR KALIMANTAN TIMUR NOMOR 68 TAHUN 2011 TENTANG PELAKSANAAN KEGIATAN KONTRAK TAHUN JAMAK PEMBANGUNAN BAN DAR UDARA LONG APUNG KABUPATEN

bahwa berdasarkan ketentuan Pasal 12 ayat (1) Peraturan Pemerintah Nomor 60 Tahun 2014 tentang Dana Desa Yang Bersumber dari Anggaran Pendapatan dan Belanja Negara