Algoritma Hierarchical Clustering (complete linkage clustering) menggunakan PHP


#download app-ny di bagian (agak) bawah, stay-cun ya...
Langkah-langkah Algoritma: 
  1. Buat urutan angka sebanyak-banyaknya, asal nilainya dibawah 0. Misal: 0.82, 0.85, 0.86, 0.869, 0.862, 0.56, 0.87
  2. Bandingkan tiap angka terhadap angka yang lain, yaitu apabila a < b, maka dihitung b/a, atau sebaliknya a>b, maka dihitung a/b. Hasilnya jadi :
    1 0.965 0.953 0.944 0.951 0.683 0.943
    0.965 1 0.988 0.978 0.986 0.659 0.977
    0.953 0.988 1 0.99 0.998 0.651 0.989
    0.944 0.978 0.99 1 0.992 0.644 0.999
    0.951 0.986 0.998 0.992 1 0.65 0.991
    0.683 0.659 0.651 0.644 0.65 1 0.644
    0.943 0.977 0.989 0.999 0.991 0.644 1
  3. Mulailah dengan pengelompokan disjoint tingkat L (0) = 0 dan nomor urut m = 0. 
  4. Cari pasangan paling mirip cluster dalam pengelompokan, katakanlah pasangan (r), (s), menurut d [(r), (s)] = max d [(i), (j)] dimana maksimum adalah atas semua pasang cluster dalam pengelompokan tersebut. 
  5. Kenaikan nomor urutan: m = m + 1. Gabung cluster (r) dan (s) ke dalam cluster tunggal untuk membentuk pengelompokan berikutnya m. Atur tingkat pengelompokannya menggunakan L (m) = d [(r), (s)] 
  6. Perbarui matriks jarak, D, dengan menghapus baris dan kolom sesuai dengan cluster (r) dan (s) dan tambahkan baris dan kolom sesuai dengan cluster yang baru terbentuk. Kedekatan antara cluster baru, dinotasikan (r, s) dan klaster lama (k) didefinisikan sebagai d [(k), (r, s)] = max d [(k), (r)], d [(k), (s)]. 
  7. Jika semua objek berada dalam satu cluster, berhenti. Lain, lanjutkan ke langkah 3
  8. hasil perhitungan manualnya adalah sebagai berikut:
    Iterasi 1



    1 0.965 0.953 0.944 0.951 0.683
    0.965 1 0.988 0.978 0.986 0.659
    0.953 0.988 1 0.99 0.998 0.651
    0.944 0.978 0.99 1 0.992 0.644
    0.951 0.986 0.998 0.992 1 0.65
    0.683 0.659 0.651 0.644 0.65 1
    Iterasi 2
    1 0.965 0.953 0.944 0.683
    0.965 1 0.988 0.978 0.659
    0.953 0.988 1 0.992 0.651
    0.944 0.978 0.992 1 0.644
    0.683 0.659 0.651 0.644 1
    Iterasi 3
    1 0.965 0.953 0.683
    0.965 1 0.988 0.659
    0.953 0.988 1 0.651
    0.683 0.659 0.651 1
    Iterasi 4
    1 0.965 0.683
    0.965 1 0.659
    0.683 0.659 1
    Iterasi 5
    1 0.683
    0.683 1
Yang perlu dipersiapkan

  1. Xampp, lalu nyalakan apache dan mysql
  2. Browser, lalu buka localhost/phpmyadmin
  3. Buat DB bernama apapun. Di sini akan dicontohkan dengan nama hierarchical_clustering
  4. Di dalam DB tsb buat tabel 2 kolom bernama penampungan dengan spesifikasi sebagai berikut:

    id_penampungan besar_penampungan
    type Int(11) double
    Extra Auto Increment
    Primary key yes no
  5. Insert data ke tabel penampungan, yaitu pada kolom besar_penampungan saja. Misalkan kamu masukkan nilai yang sama dengan contoh di atas: 0.82, 0.85, 0.86, 0.869, 0.862, 0.56, 0.87 *(atau sebanyak-banyaknya angka yang kamu suka)
    id_penampungan besar_penampungan
    (opsional asal unik) 0.82
    (opsional asal unik) 0.85
    (opsional asal unik) 0.86
    (opsional asal unik) 0.869
    (opsional asal unik) 0.862
    (opsional asal unik) 0.56
    (opsional asal unik) 0.87
  6. Download hierarchical_clustering, kemudian extract project tersebut di dalam htdoc yang ada di xampp *(biasanya di C:/xampp)  #cara download, click link di atas. Setelah buka tab baru, tekan Ctrl + S pada keyboard
  7. Edit terlebih dahulu nama database, nama host, username, dan password mysql masing-masing yang ada pada koneksi.php, edit menggunakan notepad atau apapun...
  8. jalankan alamat http://localhost/hierarchical_clustering/ pada browser kesayangan masing-masing
  9. Lihat hasilnya...



Komentar

  1. kalau clusternya dengan single link, bagian coding mana yg hrs dirubah?

    BalasHapus
  2. Wah ini postingan 2 thn yg lalu ak masih lupa nis, cb km check2 dlu. Sebelumny bkanny single sma hierarchical clusterinh beda konsep ya? Harus disesuaikan dg algoritmany nis

    BalasHapus
  3. Komentar ini telah dihapus oleh pengarang.

    BalasHapus
  4. kodingannya gak bisa didownlod, upload ulang donk. Mohon bantuannya

    BalasHapus
  5. Tombol download request access kak

    BalasHapus

Posting Komentar

Postingan populer dari blog ini

PART 2: CRUD Dasar Hibernate aplikasi Desktop menggunakan NETBEANS dan XAMPP

Biar bisa ngetik sepuluh jari tanpa lihat keyboard