Penerapan Abstract Syntax Tree dan Algoritma Damerau-Levenshtein Distance untuk Mendeteksi Plagiarisme pada Berkas Source Code - Rusdianto, Stephanie; Chaniago, Ria (Yayasan Petra Harapan Bangsa, 2018)
Plagiarism source code is a program that is made up of other programs that have same syntax structure. In this research, the approach used to detect plagiarism is tree-based by building abstract syntax tree base on grammar on two predefined plagiarism files source code. Damerau-Levenshtein Distance Algorithm will calculate the tree structure formed minimum distance value to get the percentage of similarity. Previously, the application calculated the value of threshold obtained from the average value of plagiarism plot paired pairs, and then were reduced to its standard deviation to be able to declare that both files are plagiarism or not. This research analyzes the best use of grammar between jexer rule or a combination of lexer and parser rule, the best use of preprocessing combination and the best use of distance value of Damerau-Levenshtein Distance Algorithm. Based on the tests performed, the use of grammar lexer and parser rule resulted the highest accuracy of 97.435 % by taking 118,115 seconds and threshold used is 88.2314 %.The combination of preprocessing resulted highest accuracy of 97.435% by using whole preprocessing existing or by using preprocessing comment only. For the best distance value is 4 with highest accuracy 97.435 %.Plagiarisme source code adalah jika sebagai sebuah program yang terbentuk dari program lainnya dan memiliki struktur syntax yang sama. Dalam penelitian ini, pendekatan yang digunakan untuk mendeteksi plagiarisme adalah tree-based dengan membangun abstract syntax tree atas dua berkas source code terduga plagiat berdasarkan grammar yang telah dirancang. Struktur tree yang terbentuk akan dihitung nilai jarak minimumnya dengan Damerau-Levenshtein Distance Algorithm untuk mendapatkan persentase kemiripan. Sebelumnya, aplikasi menghitung nilai threshold yang didapatkan dari nilai rata-rata kemiripan pasangan berkas plagiat yang dikurangi dengan simpangan bakunya untuk dapat menyatakan kedua berkas masukan plagiat atau tidak. Penelitian ini menganalisis penggunaan grammar terbaik antara lexer rule atau kombinasi lexer dan parser rule, penggunaan kombinasi preprocessing terbaik serta penggunaan nilai jarak terbaik pada Damerau-Levenshtein Distance Algorithm. Berdasarkan pengujian yang dilakukan, penggunaan grammar lexer dan parser rule menghasilkan akurasi tertinggi yaitu 97.435 % dengan memakan waktu 118,115 detik dengan nilai threshold 88.2314 %. Kombinasi preprocessing yang menghasilkan akurasi tertinggi 97.435 % menggunakan seluruh preprocessing yang ada atau dengan menggunakan prerpocessing comment saja. Untuk nilai jarak terbaik adalah nilai jarak sebesar 4 dengan akurasi tertinggi, yaitu 97.435 %.