Pendeteksian Penjiplakan Kode Program C dengan Menggunakan Algoritme K-Medoids
Abstrak
Pada era globalisasi ini, aksi penjiplakan lebih sering dan lebih mudah dilakukan, termasuk penjiplakan terhadap kode program. Pendeteksian manual terhadap aksi penjiplakan memakan banyak waktu maupun tenaga. Oleh karena itu, dibutuhkan sistem yang dapat membantu proses pendeteksian. Pendeteksian dapat dilakukan dengan mengelompokkan kode-kode program yang mirip berdasarkan struktur kode program. Penelitian ini bertujuan untuk menerapkan algoritme K-Medoids pada 4 buah dataset kode program C dan menganalisis hasil pengelompokan yang diperoleh. Hasil percobaan menunjukkan bahwa clustering terbaik pada dataset 1 (Kondisi If-Else dan Pengulangan While) diperoleh pada k (jumlah cluster) 10 dengan rataan dissimilarity 2.655, dimana 18.9% tugas mahasiswa memiliki kelompok yang sama. Pada dataset 2 (Pengulangan While), clustering terbaik diperoleh pada k = 9 dengan rataan dissimilarity 2.227, dimana 32.6% tugas mahasiswa memiliki kelompok yang sama. Untuk dataset 3 (Pengulangan For Bersarang dan Kondisi If), tugas mahasiswa terbagi menjadi dua buah cluster dengan rataan dissimilarity 0.719, dimana 87% tugas mahasiswa berada pada cluster yang sama. Hasil clustering terbaik pada dataset 4 (Kondisi If-Else dan Pengulangan For) diperoleh pada k = 6 dengan rataan dissimilarity 3.199, dimana 61% tugas mahasiswa berada pada kelompok yang sama.
Kata Kunci: clustering, K-medoids, N-gram, pendeteksian penjiplakan, program C.