Lim Cynthia Dewi Salim Universitas Ciputra UC Town, Citraland Surabaya 60219 lcynthia@student.ciputra.ac.id Nehemia Sugianto Universitas Ciputra UC Town, Citraland Surabaya 60219 nsugianto@ciputra.ac.id
Rancang Bangun Aplikasi Berbasis Web Pencari Pasangan Bagi
Anjing Menggunakan Algoritma Simple Matching
ABSTRAK
Anjing, sebagai hewan peliharaan yang digemari, disarankan untuk dipacakkan (dikawinkan) minimal sekali seumur hidupnya, agar tidak terkena penyakit seperti tumor dan kanker. Anjing yang dipacakkan harus mempunyai umur yang cukup, dan harus dari trah (jenis) yang sama agar bisa mendapatkan surat silsilah. Selain faktor kesehatan, keuntungan lain juga menjadi alasan pemilik memacakkan anjingnya. Saat ini untuk menemukan anjing yang trahnya sama tidaklah mudah, karena jumlah trah sendiri ada 329 trah anjing, apalagi di Indonesia tidak banyak yang memiliki anjing, karena mayoritas masyarakat Indonesia beragama Islam. Selain itu tidak sedikit biaya yang dikeluarkan untuk menggunakan jasa orang untuk mencarikan pasangan trah yang sama, terutama bila faktor kesehatan dan penghargaan juga diperhatikan. Saat ini sudah ada situs-situs jejaring sosial untuk komunitas anjing, tetapi belum dapat membantu menemukan pasangan anjing yang cocok dan sesuai dengan kriteria pemilik. Penelitian ini mengusulkan, bahwa dengan menggunakan algoritma Simple Matching, akan dapat dibuat sebuah aplikasi web yang mampu menemukan kesamaan antar anjing berdasarkan kriteria pilihan pemilik, termasuk kesehatan dan penghargaan.
Kata kunci: pemacakan anjing, sistem rekomendasi, algoritma Simple Matching
1. PENDAHULUAN
Anjing, sebagai peliharaan yang digemari, disarankan dipacakkan (dikawinkan) minimal sekali seumur hidupnya agar anjing tidak terkena kanker maupun tumor (Drh. Liang Kaspe). Bagi pemilik, penjualan anak hasil pemacakan juga dapat menjadi untung, dengan syarat harus berjenis (trah) asli atau asal (dibuktikan dengan surat silsilah), serta catatan penghargaan dan kesehatan bila ada.
Menurut riset awal terhadap beberapa pemilik anjing, pemacakan anjing
mereka biasanya dilakukan melalui relasi mereka sendiri atau menggunakan jasa dengan biaya yang tidak sedikit, karena kesulitan menemukan trah yang sama, terutama trah yang langka. Situs jejaring sosial untuk komunitas pencinta anjing juga ada, namun masih kurang efektif dalam mencari jodoh anjing dengan kriteria spesifik, karena memang belum ada fitur khusus untuk itu.
Penulis mengusulkan pemanfaatan algoritma Simple Matching, suatu teknik pencarian kesamaan dari dua data set, untuk
menemukan pasangan anjing sesuai kriteria yang diinginkan pemilik melalui sebuah situs web.
Solusi yang ditawarkan penulis berupa pembuatan aplikasi web, Dogneto, yang dapat merekomendasikan pasangan anjing dengan memanfaatkan algoritma Simple Matching berdasarkan spesifikasi kriteria yang diinginkan pengguna, dengan cakupan:
1) Sasaran utama adalah menampilkan anjing yang direkomendasi dan contact pasangan owner akan dibuka atau visible, tidak sampai menangani transaksi pemacakan dan proses selanjutnya.
2) Aplikasi akan selalu memberikan rekomendasi selama nilai rekomendasi yang tertinggi di atas nol.
3) Pengujian algoritma akan
menggunakan data dummy, langsung dari database.
Metodologi penelitian yang dilakukan penulis adalah sebagai berikut:
1) Mewawancarai pemilik anjing dan dokter hewan.
2) Merancang dan membangun aplikasi web pencarian pasangan bagi anjing. 3) Mengujicoba fitur penyusunan
rekomendasi pencari pasangan anjing. 4) Menyusun kesimpulan dan laporan
penelitian.
2. LANDASAN TEORI 2.1. Jenis Anjing
Menurut Yusuf (2008),
pengelompokan trah anjing yang dilakukan PERKIN (lembaga kinologi Indonesia) dengan mengacu pada pengelompokan yang telah dilakukan FCI (lembaga kinologi internasional). Menurut FCI (2010) dan juga Dog Breed (2012), jumlah jenis anjing yang sudah terdaftar di FCI (Fédération Cynologique Internationale) ada 329. Jumlah itu oleh FCI digolongkan menjadi 10 grup berdasarkan kegunaan dan ciri dari anjing sebagai berikut: grup 1 adalah anjing penggembala (sheepdogs) dan anjing peternakan (cattle dogs), kecuali anjing
Swiss Cattle; grup 2 adalah Pinscher dan
Schnauzer, trah Molossoid, anjing Swiss
Mountain dan Swiss Cattleg; grup 3 adalah
Terrier; grup 4 adalah Dachshund; grup 5
adalah Spitz dan tipe primitif; grup 6 adalah anjing pelacak (Scenthounds) dan trah yang berkaitan; grup 7 adalah anjing penunjuk lokasi buruan (Pointing Dogs); grup 8 adalah Retriever, Flushing Dogs, dan Water
Dogs; grup 9 anjing pendamping
(Companion) dan anjing kecil (Toy Dogs); dan grup 10 adalah anjing pemburu (sighthounds).
2.2. Algoritma Simple Matching
Menurut Kantardzic (2011), algoritma Simple Matching atau biasa disebut Simple Matching Coefficient berfungsi mencari kemiripan antar dua
dataset. Simple Matching memiliki nilai output antara nol sampai satu, yang berarti nol mempresentasikan nilai ketidakmiripan dari dua dataset, dan satu mempresentasikan nilai kemiripan. Gambar 2.1 menjelaskan representasi perhitungan nilai positif dan negatif dari algoritma Simple Matching.
Gambar 1. Ilustrasi Simple Matching
Xi dan Xj adalah dataset pertama dan kedua. Angka 1 menunjukkan bahwa Xi atau Xj memiliki nilai positif.
Angka 0 menunjukan bahwa Xi atau Xj memiliki nilai negatif.
Atribut A menggambarkan bahwa Xi = Xj = 1 Atribut B menggambarkan bahwa Xi = 1 dan Xj = 0
Atribut C menggambarkan bahwa Xi = 0 dan Xj = 1
Atribut D menggambarkan bahwa Xi = Xj = 0
Sebagai contoh apabila Xi dan Xj memiliki 8 kategori yang memiliki nilai sebagai berikut:
Xi = {0,0,1,1,0,1,0,1} Xj = {0,1,1,0,0,1,0,0}
Maka nilai dari parameter adalah: A = 2, B = 2, C = 1, dan D = 3
Sehingga jika dihitung menggunakan algoritma Simple Matching seperti pada Gambar 2.2 maka akan ditemukan nilai
kecocokan antara dua dataset tersebut adalah 0,625 atau 62.5%.
Ssmc (Xi.Xj) = = = 0,625 atau 62.5% Ssmc = Similarity (Simple Matching Coefficient)
Xi = Data set pertama yang akan dibandingkan
Xj = Data set kedua yang akan dibandingkan
A = jumlah dari kedua atribut yang memiliki nilai positif
B = jumlah dari atribut Xi yang memiliki nilai positif
dan Xj yang memiliki nilai negatif
C = jumlah dari atribut Xi yang memiliki nilai negatif
dan Xj yang memiliki nilai positif
D = jumlah dari kedua atribut yang memiliki nilai negatif
Gambar 2. Formula Simple Matching
3. PERANCANGAN SISTEM 3.1. Pengumpulan Data
Pengumpulan data yang dilakukan melalui wawancara dengan Ibu Drh. Liang Kaspe selaku kepala rumah sakit hewan “SETAIL” dan pengurus lembaga “PERKIN”, seorang breeder anjing, dan juga Ibu Drh. Liliana Y.K selaku dokter hewan di “CATDOG Veterinary Clinic”.
3.1.1. Aspek Wawancara
Aspek-aspek yang ingin digali pada wawancara, antara lain:
1) Aspek tujuan pemacakan anjing untuk mengetahui perlu atau tidaknya memacakkan anjing.
2) Aspek umur untuk mengetahui umur minimal dan maksimal anjing boleh dipacakkan.
3) Aspek surat silsilah untuk mengetahui kegunaan dan tujuan dari surat silsilah. 4) Aspek kesehatan untuk mengetahui
langkah-langkah sehat yang diperlukan anjing ketika dipacakkan.
jumlah dan trah anjing apa saja yang sudah diakui.
6) Aspek penghargaan untuk mengetahui pentingnya sebuah penghargaan dalam memacakan anjing.
7) Aspek sifat-sifat dan fisik anjing untuk mengetahui jenis dan pengaruh terhadap pemacakan anjing.
3.1.2 Analisis Hasil Wawancara
Berdasarkan hasil wawancara dengan narasumber, pemacakan anjing harus dilakukan minimal sekali seumur hidup. Apabila anjing tidak pernah dipacakkan maka akan mengalami kanker prostat, tumbuh tumor pada testis, dan infeksi pada penis bagi anjing jantan, sedangkan pada anjing betina jika tidak dipacakkan maka akan mengalami tumor payudara dan peradangan pada vagina. Bagi sebagian orang anjing juga dipacakkan untuk meraup keuntungan.
Trah anjing yang terdaftar di FCI ada 300 lebih, jumlah itu akan selalu bertambah dan di-update di website FCI. Tidak ada ketentuan yang harus dilakukan utuk trah-trah khusus.
Surat silsilah adalah bukti bahwa anjing tersebut adalah anjing trah asli (pedigree). Di Indonesia, lembaga yang mengeluarkan surat silsilah ini hanyalah PERKIN. PERKIN adalah lembaga yang sudah diakui oleh FCI. Untuk pembuatan surat silsilah, anjing diharuskan berjenis asli dan orang tuanya harus berjenis asli
juga.
Anjing yang akan dipacakkan juga mempunyai batas minimal dan maksimal umur yaitu minimal umur 2 tahun dan maksimal umur 7 tahun, agar tidak terjadi keguguran bahkan menyebabkan kematian pada anjing. Dari hasil wawancara dan juga setelah dibandingkan dengan menurut Tim Penulis Anjingkita.com (2008), anjing perempuan atau induk, harus menstruasi minimal dua kali baru boleh dipacakkan, itu adalah sebagai tanda anjing itu sudah siap untuk dipacakkan.
Selain itu ada 3 faktor pilihan yang dapat digunakan untuk memilih pasangan anjing:
1) Vaksinasi. Ada enam macam vaksin yang perlu dilakukan anjing, yaitu:
vaksin Distemper, Rabies,
Leptospirosis, Hepatitis, Parvovirosis,
dan Parainfluenza. Bagi anjing yang
belum atau tidak pernah
mendapatkannya, tetap dapat dipacakkan, namun hal di atas dilakukan untuk membuktikan anjingnya sehat. Menurut Untung (2007), jika anjing sudah mendapatkan vaksin akan ada bukti berupa buku yang mencatat vaksin-vaksin yang sudah dilakukan anjing tersebut.
2) Tes Kesehatan. Ada tiga macam tes kesehatan, tes pinggul (hip test), tes darah (blood test), dan tes Imunology. Sama seperti vaksinasi, bagi anjing
yang belum atau tidak pernah melakukan itu, tetap dapat dipacakkan, namun hal di atas dilakukan untuk membuktikan anjingnya sehat.
3) Penghargaan. Penghargaan yang didapatkan baik induk atau pejantan, belum tentu anaknya juga mendapatkan keahlian yang sama. Banyaknya jumlah penghargaan hanyalah sebagai gengsi dari pemilik anjing itu sendiri, jadi tidak berpengaruh.
Ada beberapa faktor lain yang tidak digunakan dalam pemacakan anjing, antara lain:
1) Cacat. Anjing yang cacat dapat dipacakkan, tetapi bagi anjing yang cacat tidak akan mendapatkan surat silsilah.
2) Golongan darah. Anjing mempunyai tujuh golongan darah. Walaupun berbeda golongan darah, anjing masih dapat dipacakkan, tidak ada pengaruh baik kesehatan maupun pembuatan sisilah.
3) Sifat. Sifat yang dimiliki anjing sama dengan sifat yang dimiliki manusia, tidak semua anjing dapat menurunkan sifatnya karena lingkungan juga berpengaruh. Jumlah sifat anjing tidak dapat dikategorikan dan dihitung. 4) Bentuk fisik. Bentuk fisik tidak akan
berpengaruh terhadap hasil pemacakan, kecuali pinggul, karena pinggul adalah tempat untuk mengeluarkan anaknya,
oleh karena itu ada tes pinggul untuk mengecek apakah ukuran pinggulnya cukup atau tidak.
5) Warna bulu dan warna mata. Dari hasil
wawancara dan juga telah
dibandingkan dengan menurut Sanusi (2004) dan Budiana (2008), warna dasar bulu anjing ada lima, merah, hitam, abu-abu, cokelat, putih. Anjing juga dapat memiliki lebih dari satu warna bulu. Sedangkan warna mata berbeda-beda setiap anjing, jadi tidak ada warna dasar. Anjing dapat memiliki lebih dari satu warna mata, maksimal tiga warna. Anjing tetap dapat dipacakkan walaupun berbeda warna bulu ataupun warna mata. Tidak ada pengaruh baik dari segi kesehatan maupun dalam hal mendapatkan surat silsilah.
Selain faktor-faktor di atas, menurut narasumber, pemilik cenderung memiliki prioritas dalam menentukan pemilihan pasangan anjingnya. Para pemilik mengharapkan anjingnya dapat dipacakkan dengan yang terbaik. Tetapi terbaik ini bisa
bermacam-macam ada yang ingin
penghargaannya banyak, atau anjing yang sudah tes pinggul, dan sebagainya. Maka, dalam pembuatan sistem penyusunan rekomendasi ini, ada penambahan parameter prioritas (bobot) dalam penghitungannya.
3.2. Sistem penyusunan rekomendasi
Proses penyusunan daftar
rekomendasi oleh aplikasi Dogneto ini terdiri dari empat tahap, yaitu:
1) Mengambil Data Anjing Yang Dimiliki. Sebagai langkah pertama, Dogneto mengambil data anjing yang dimiliki (oleh pemilik yang sedang login).
2) Mencari Kandidat Anjing Calon Pasangan. Pada langkah ini, Dogneto meng-query data anjing dari database yang sesuai dengan atribut kriteria yang diinginkan pemilik.
3) Mengkalkulasi Nilai Kecocokan. Pada langkah ini, Dogneto menghitung nilai kecocokan dari kedua dataset dengan algoritma Simple Matching.
4) Menampilkan hasil temuan
rekomendasi. Hasil kalkulasi yang diperoleh dari langkah sebelumnya diurutkan secara descending, dan diambil urutan teratas sebagai usulan/rekomendasi.
3.3. Entity Relationship Diagram
Struktur table yang digunakan Dogneto ditunjukkan oleh Entity Relationship Diagram (ERD) pada Gambar 3.
Gambar 3. ERD
3.4. Sitemap
Gambar 4 menunjukkan sitemap dari Dogneto, yang terdiri dari: halaman
register, login, logout, buy item, item list,
sell item, new selling, selling list, message,
compose, inbox, outbox, dan wishlist.
Gambar 4. Sitemap Dogneto
3.5. Diagram Arsitektur
Gambar 5 menunjukkan diagram arsitektur Dogneto, yang terdiri dari tiga bagian: sisi server, network/internet, dan sisi klien. Dogneto dibangun dengan bahasa PHP, dipasang pada Apache web server,
dan menggunakan database engine MySQL.
Gambar 5. Diagram Arsitektur
4. PENERAPAN DAN PENGUJIAN 4.1. Pengujian Sistem Rekomendasi
Pengujian yang dilakukan untuk mengetahui bahwa sebarapa jauh kecocokan hasil rancangan terealisasi pada hasil implementasi sistem.
4.1.1. Tujuan pengujian
Tujuan dari pengujian adalah untuk membuktikan bahwa kandidat pasangan anjing yang memiliki nilai kemiripan berdasarkan kriteria award, vaksinasi, dan tes kesehatan yang telah ditentukan prioritasnya oleh pengguna dapat ditemukan menggunakan algoritma Simple Matching.
4.1.2. Data Pengujian
Data yang dipakai dalam pengujian adalah data rekayasa yang representatif untuk tujuan pembuktian.
Tabel 1. Data pengujian
Pada Tabel 1, data pengujian dibuat dengan sebaran acak yang menunjukan bahwa C1 adalah kriteria award, C2-C7 adalah kriteria vaksinasi, dan C8-C10 adalah kriteria tes kesehatan. Dog1-dog10 adalah data dari 10 anjing yang ada di dalam database. Angka 1 menunjukan nilai positif, dan angka 0 menunjukan nilai negatif dari baris dog dan kolom kriteria. Sedangkan nilai yang berada di dalam kurung „( )‟ adalah besarnya nilai prioritas pengguna untuk anjing terhadap kriteria tersebut.
4.1.3 Skenario Pengujian
Skenario pengujian yang dilakukan adalah membandingkan hasil rekomendasi yang didapatkan dengan algoritma Simple Matching sesuai dengan pembuktian
penghitungan manual dengan memfokuskan pada target kriteria yang ditentukan.
4.1.4. Hasil Pengujian
Pengujian dilakukan beberapa kali dengan pasangan yang berbeda.
Tabel 2. Hasil pengujian pertama Dog A Dog B Similarity
Dog 1 Dog 2 0.8 Dog 1 Dog 3 0.6 Dog 1 Dog 4 0.4 Dog 1 Dog 5 0.3 Dog 1 Dog 6 0.5 Dog 1 Dog 7 0.7 Dog 1 Dog 8 0.7 Dog 1 Dog 9 0.3 Dog 1 Dog 10 0
Dari Tabel 2 diketahui bahwa anjing yang memiliki nilai kemiripan tertinggi dengan anjing satu berdasarkan kepada prioritas dari pengguna adalah anjing dua dengan nilai 0.8 atau 80%, sedangkan anjing sepuluh merupakan anjing yang memiliki nilai kemiripan paling kecil yaitu 0 atau 0%.
Tabel 3. Hasil pengujian kedua Dog A Dog B Similarity
Dog 2 Dog 1 1 Dog 2 Dog 3 1 Dog 2 Dog 4 1 Dog 2 Dog 5 0 Dog 2 Dog 6 0 Dog 2 Dog 7 0 Dog 2 Dog 8 1 Dog 2 Dog 9 1 Dog 2 Dog 10 0
Dari Tabel 3 diketahui bahwa nilai kemiripan hanya ada nol atau satu saja, hal ini dikarenakan pengguna memberikan nilai prioritasnya terhadap satu kriteria saja yaitu kriteria award. Sehingga parameter lain
seperti vaksinasi dan kesehatan diabaikan walaupun kedua anjing tersebut memiliki kesamaan ataupun perbedaan terhadap kriteria-kriteria tersebut.
Tabel 4. Hasil pengujian ketiga Dog A Dog B Similarity Dog 3 Dog 1 0.8 Dog 3 Dog 2 0.6 Dog 3 Dog 4 0.7 Dog 3 Dog 5 0.2 Dog 3 Dog 6 0.1 Dog 3 Dog 7 0.3 Dog 3 Dog 8 0.8 Dog 3 Dog 9 0.8 Dog 3 Dog 10 0.2
Dari Tabel 4 diketahui bahwa ada tiga anjing yang memiliki nilai kesamaan yang tertinggi yaitu anjing satu, anjing dua, dan anjing tiga dengan nilai kesamaan 0.8 atau 80%, sehingga apabila terdapat lebih dari satu anjing dengan nilai tertinggi, maka aplikasi Dogneto akan mengambil secara acak anjing yang akan direkomendasikan pertama dan seterusnya.
4.1.5 Analisis Hasil Pengujian
Dari hasil pengujian tiga sampel user dan tiga anjing, dapat diketahui bahwa besar nilai kemiripan dari Simple Matching berbanding lurus dengan besar kemiripan kriteria yang diprioritaskan oleh pengguna. Dengan demikian dapat ditarik kesimpulan bahwa nilai penghitungan Simple Matching dapat mempresentasikan kemiripan anjing untuk dipacakkan berdasarkan pada keinginan pengguna. Namun seperti pada kasus pengujian kedua, besar nilai kemiripan anjing sangat bergantung pada
kriteria mana yang menjadi prioritas. Pada contoh pengujian ketiga apabila terdapat lebih dari satu anjing dengan nilai yang tertinggi maka anjing yang akan direkomendasikan akan diambil secara acak.
5. KESIMPULAN DAN SARAN 5.1 Kesimpulan
Berdasarkan hasil penelitian ini, dapat disimpulkan bahwa:
1) Aplikasi Dogneto ini dapat memberikan rekomendasi pasangan anjing dengan menggunakan algoritma Simple Matching, berdasarkan kriteria dan prioritas yang ditentukan pengguna.
2) Nilai kemiripan dari anjing sangat bergantung kepada prioritas kriteria
yang diberikan oleh pengguna. Sehingga jumlah kemiripan sedikit tetap dapat terpilih ketika diprioritaskan tinggi, demikian pula sebaliknya.
5.2 Saran
Beberapa saran untuk
pengembangan hasil dan penelitian antara lain:
1) Menggunakan teknik kalkulasi lain agar dapat memperhitungkan jumlah kriteria award.
2) Menggunakan teknik tambahan agar mampu memperhatikan preferensi warna bulu dan mata.
3) Menambahkan kriteria jarak domisili pemilik (dan anjingnya) terhadap kandidat pasangan anjing.
6. DAFTAR PUSTAKA
Budiana, N. S. 2008. Anjing. Jakarta: Penebar Swadaya.
Dog Breed. Federation Cynologique Internationale Recognized Breeds (FCI). [Online] Tersedia di: http://www.dogbreedinfo.com/fcibreeds.htm [Diakses 2012].
Fédération Cynologique Internationale. 2010. Standards and Nomenclature. [Online] Tersedia di: http://www.fci.be/nomenclature.aspx [Diakses 2012].
Kantardzic, M. 2011. Data mining: concept, model, methods, and algorithms. United States: John Wiley & Sons, Inc.
Skiena, S.S. 2008. The Algorithm Design Manual. New York, USA: Springer.
Tim Penulis Anjingkita.com. 2008. Cara Praktis Merawat Anjing. Jakarta: Penebar Swadaya. Untung, Onny. 2007. Merawat & Melatih Anjing. Jakarta: Penebar Swadaya.
Yusuf, Subaedy, and Fika Yuliza Purba. 2008. Semua Tentang Anjing. Yogyakarta: Media Pressindo.