• Tidak ada hasil yang ditemukan

Implementasi Algoritma Winnowing Dan Porter Stemmer Mendeteksi Kemiripan Dua Dokumen Berbasis Web

N/A
N/A
Protected

Academic year: 2016

Membagikan "Implementasi Algoritma Winnowing Dan Porter Stemmer Mendeteksi Kemiripan Dua Dokumen Berbasis Web"

Copied!
95
0
0

Teks penuh

(1)

IMPLEMENTASI ALGORITMA WINNOWING DAN PORTER

STEMMER MENDETEKSI KEMIRIPAN DUA DOKUMEN

BERBASIS WEB

SKRIPSI

LIDIA ARTA FERARI

081401077

PROGRAM STUDI S1 ILMU KOMPUTER

DEPARTEMEN ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

(2)

IMPLEMENTASI ALGORITMA WINNOWING DAN PORTER

STEMMER MENDETEKSI KEMIRIPAN DUA DOKUMEN

BERBASIS WEB

SKRIPSI

Diajukan untuk melengkapi tugas akhir dan memenuhi syarat mencapai gelar Sarjana Komputer

LIDIA ARTA FERARI 081401077

PROGRAM STUDI SARJANA ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMATIKA UNIVERSITAS SUMATERA UTARA

(3)

PERSETUJUAN

Judul : IMPLEMENTASI ALGORITMA WINNOWING

DAN PORTER STEMMER MENDETEKSI KEMIRIPAN DUA DOKUMEN BERBASIS WEB

Kategori : SKRIPSI

Nama : LIDIA ARTA FERARI

NomorIndukMahasiswa : 081401077

Program Studi : SARJANA (S1) ILMU KOMPUTER

Departemen : ILMU KOMPUTER

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI

INFORMASI Diluluskan di

Medan, Agustus 2014 Komisi Pembimbing :

Pembimbing 2 Pembimbing 1

Drs. Marihat Situmorang, M.Kom Syahriol Sitorus, S.Si, MIT

NIP. 196312141986031001 NIP. 197103101997031004

Diketahui/Disetujui oleh

Program Studi S1 IlmuKomputer Ketua,

Dr. Poltak Sihombing, M.Kom

(4)

PERNYATAAN

IMPLEMENTASI ALGORITMA WINNOWING DAN PORTER STEMMER MENDETEKSI KEMIRIPAN DUA DOKUMEN

BERBASIS WEB

SKRIPSI

Saya menyatakan bahwa skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.

Medan, Agustus 2014

(5)

PENGHARGAAN

Puji dan syukur penulis ucapkan kepada Tuhan Yang Maha Kuasa atas segala berkat dan kasih karuniaNya sehingga penulis dapat menyelesaikan penyusunan skripsi ini, sebagai syarat untuk memperoleh gelar Sarjana Komputer, pada Program Studi S1 Ilmu Komputer Departemen Ilmu Komputer Universitas Sumatera Utara.

Ucapan terima kasih penulis sampaikan kepada :

1. Bapak Dr. Poltak Sihombing, M.Kom, selaku Ketua Departemen Ilmu Komputer Universitas Sumatera Utara.

2. Ibu Maya Silvi Lydia, B.Sc, M.Sc, selaku Sekretaris Departemen Ilmu Komputer Universitas Sumatera Utara

3. Dekan dan Pembantu Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara, semua dosen pada Departemen Ilmu Komputer Fasilkom-TI USU, dan pegawai di Ilmu Komputer Fasilkom-TI USU.

4. Bapak Syahriol Sitorus, S.Si, MIT dan bapak Drs. Marihat Situmorang, M.Kom selaku pembimbing skripsi yang telah banyak memberikan bantuan, arahan, petunjuk, serta kesabaran dalam pengerjaan skripsi ini. 5. Bapak Prof. Dr. Muhammad Zarlis dan bapak Dr. Poltak Sihombing,

M.Kom selaku pembanding skripsi yang telah banyak memberikan kritik dan saran serta arahan dalam pengerjaan skripsi ini.

6. Papa dan mama kami tercinta, Nukman Siahaan dan Erline Madeline Listerine Hutagaol untuk semua keringat dan jerih payah yang begitu tulus. 7. Zonny Mega Siahaan beserta keluarga, Yannuke Patricia Siahaan beserta

keluarga, Sephilda Kristi Siahaan beserta keluarga, Decerwin Charsten Benediksta Siahaan, untuk semua dukungan hebatnya.

8. Hawe Numerouno yang telah memberi semangat di setiap kondisi.

9. Seluruh teman-teman Program Studi S1 Ilmu Komputer Departemen Ilmu Komputer Universitas Sumatera Utara yang telah memberikan bantuan dan dukungan selama penulisan skripsi ini.

Semoga Tuhan Yang Maha Kuasa memberikan berkat yang berlimpah kepada semua pihak yang telah memberikan bantuan, perhatian, serta dukungan kepada penulis dalam menyelesaikan skripsi ini.

Medan, Agustus 2014 Penulis

(6)

IMPLEMENTASI ALGORITMA WINNOWING DAN PORTER STEMMER MENDETEKSI KEMIRIPAN DUA DOKUMEN

BERBASIS WEB

ABSTRAK

Skripsi ini membahas tentang perancangan aplikasi penerapan algoritma Stemmer Porter dan Winnowing. Penelitian yang dilakukan bertujuan untuk mengetahui tingkat kemiripan antara satu file dengan file yang lain. Stemmer Porter merupakan suatu algoritma yang pertama kali ditemukan oleh Martin Porter pada tahun 1980 untuk stemming bahasa inggris, kemudian karena proses stemming bahasa inggris berbeda dengan bahasa indonesia maka, dikembangkan algoritma porter khusus untuk bahasa indonesia (Porter Stemmer for Bahasa Indonesia) oleh W.B. Frakes pada tahun 1992. Stemming adalah salah satu cara yang digunakan untuk meningkatkan performa IR dengan cara mentransformasi kata-kata dalam sebuah dokumen teks ke kata dasarnya. Sedangkan winnowing sendiri merupakan Algoritma Winnowing merupakan algoritma yang digunakan untuk deteksi tingkat kemiripan file. Dengan menggunakan kedua algoritma ini diharapkan mampu mengetahui tingkat kemiripan satu file dengan yang lain.

(7)

IMPLEMENTATION WINNOWING ALGORITHM AND PORTER STEMMER DETECT TWO DOCUMENT SIMILARITY

WEB-BASED ABSTRACT

This thesis discusses the application design and implementation Winnowing Porter Stemmer algorithm. Research conducted aimed to determine the degree of similarity between a file with another file. Porter Stemmer is an algorithm that was first discovered by Martin Porter in 1980 for stemming English, and because the process is different from English Stemming Indonesian then, algorithms developed specifically for Indonesian porter (Porter Stemmer for Indonesian) by WB Frakes in 1992. Stemming is one of the means used to improve the performance of the IR by transforming the way the words in a text document to word basically. While Winnowing Winnowing algorithm itself is an algorithm used for file similarity detection. By using the two algorithms is expected to determine the level of similarity of one file to another.

(8)

DAFTAR ISI

1.4 Tujuan Penelitian 3

1.5 Manfaat Penelitian 4

1.6 Metodologi Penelitian 4

1.7 Sistematika Penulisan 5

Bab 2 LandasanTeori 7

2.1 Pengertian Stemming 7

2.2 Stemming Porter 8

2.3 Winnowing 16

2.3.1 Hashing 17

2.3.2 K-gram 18

2.4 Jaccard’s Similarity Coefficient 19

Bab 3 Analisis dan Perancangan Sistem 20

3.1 Analisis Sistem 20

(9)

3.3.1 Analisis persyaratan fungsional 22

Bab 4 Implementasi dan Pengujian Sistem 47 4.1 Implementasi Sistem 47 4.1.1 Tampilan halaman form home (awal) 4.1.2 Tampilan halaman form journal 49 4.1.3 Tampilan halaman form similarity 50 4.1.4 Tampilan halaman form about 51 4.2 Pengujian Sistem 52 4.2.1 Pengujian Sistem Pilih File 52 4.2.2 Pengujian Hasil Proses Pilih File 59 Bab 5 Kesimpulan dan Saran 65 5.1 Kesimpulan 65 5.2 Saran 66

(10)

DAFTAR TABEL

Nomor Tabel

Nama Tabel Halaman

2.1 Kelompok rule pertama : inflectional particles 9 2.2 Kelompok rule kedua :inflectional possesive pronouns 9 2.3 Kelompok rule ketiga: first order of derivational prefixes 10 2.4 Kelompok rule keempat: second order of derivational

prefixes

10

2.5 Kelompok rule kelima: derivational suffixes 11

3.1 Usecase Penghitungan Kemiripan File 24

3.2 Kombinasi Awalan Akhiran Yang Tidak Diijinkan 31

3.3 Cara Menentukan Tipe Awalan Untuk awalan “te-” 31

(11)

DAFTAR GAMBAR

Nomor

Gambar Nama Gambar Halaman

(12)

3.6

Tampilan hasil open file jurnal Tampilan hasil pilih file

Tampilan Show Content Tampilan hasil proses

(13)

IMPLEMENTASI ALGORITMA WINNOWING DAN PORTER STEMMER MENDETEKSI KEMIRIPAN DUA DOKUMEN

BERBASIS WEB

ABSTRAK

Skripsi ini membahas tentang perancangan aplikasi penerapan algoritma Stemmer Porter dan Winnowing. Penelitian yang dilakukan bertujuan untuk mengetahui tingkat kemiripan antara satu file dengan file yang lain. Stemmer Porter merupakan suatu algoritma yang pertama kali ditemukan oleh Martin Porter pada tahun 1980 untuk stemming bahasa inggris, kemudian karena proses stemming bahasa inggris berbeda dengan bahasa indonesia maka, dikembangkan algoritma porter khusus untuk bahasa indonesia (Porter Stemmer for Bahasa Indonesia) oleh W.B. Frakes pada tahun 1992. Stemming adalah salah satu cara yang digunakan untuk meningkatkan performa IR dengan cara mentransformasi kata-kata dalam sebuah dokumen teks ke kata dasarnya. Sedangkan winnowing sendiri merupakan Algoritma Winnowing merupakan algoritma yang digunakan untuk deteksi tingkat kemiripan file. Dengan menggunakan kedua algoritma ini diharapkan mampu mengetahui tingkat kemiripan satu file dengan yang lain.

(14)

IMPLEMENTATION WINNOWING ALGORITHM AND PORTER STEMMER DETECT TWO DOCUMENT SIMILARITY

WEB-BASED ABSTRACT

This thesis discusses the application design and implementation Winnowing Porter Stemmer algorithm. Research conducted aimed to determine the degree of similarity between a file with another file. Porter Stemmer is an algorithm that was first discovered by Martin Porter in 1980 for stemming English, and because the process is different from English Stemming Indonesian then, algorithms developed specifically for Indonesian porter (Porter Stemmer for Indonesian) by WB Frakes in 1992. Stemming is one of the means used to improve the performance of the IR by transforming the way the words in a text document to word basically. While Winnowing Winnowing algorithm itself is an algorithm used for file similarity detection. By using the two algorithms is expected to determine the level of similarity of one file to another.

(15)

BAB 1

PENDAHULUAN

1.1Latar Belakang

Pemanfaatan kecanggihan di jaman globalisasi menjadi salah satu hal yang sangat penting dalam penggunaan di kehidupan sehari-hari. Pemanfaatan-pemanfaatan teknologi dalam kehidupan sehari-hari adalah untuk mencari, mengolah, atau dapat juga menyimpan informasi dengan menggunakan kecanggihan komputer. Informasi yang diperoleh biasanya berupa dokumen teks. Kemudahan mengakses informasi dalam berupa dokumen teks bisa menimbulkan sifat manusia yang negatif, yaitu dengan meniru atau mencontoh hasil karya orang lain melebihi batas normal tolerir. Jika hanya mencontoh sedikit bagian atau mengutip untuk dijadikan referensi mungkin tidak begitu masalah. Namun banyak juga kasus tingkat kemiripan dua dokumen tersebut bisa sama hampir sepenuhnya. Kita dapat mengetahui berapa tingkat kemiripan antara dua dokumen yang di sinyalir memiliki kesamaan dengan bantuan suatu sistem.

(16)

digunakan untuk meningkatkan performa IR dengan cara mentransformasi kata-kata dalam sebuah dokumen teks ke kata dasarnya. Algoritma Stemming untuk bahasa yang satu berbeda dengan algoritma stemming untuk bahasa lainnya.

Contoh salah satu Stemming adalah Stemming Porter. Algoritma Porter ditemukan oleh Martin Porter 1980. Algoritma tersebut digunakan untuk stemming bahasa inggris, kemudian karena proses stemming bahasa inggris berbeda dengan bahasa indonesia maka, dikembangkan algoritma porter khusus untuk bahasa indonesia (Porter Stemmer for Bahasa Indonesia) oleh W.B. Frakes pada tahun 1992. untuk pendeteksian kesamaan dokumen itu sendiri menggunakan algoritma Winnowing. Winnowing adalah suatu algoritma yang dipakai untuk melakukan proses pengecekkan kesamaan suatu kata (document fingerprinting).

(17)

1.2Rumusan Masalah

Jurnal mahasiswa pada program studi S1 Ilmu Komputer Fasilkom TI USU yang memiliki ekstensi (.pdf), akan dicek tingkat kemiripan dari judul antar jurnal, sehingga didapatkan nilai kemiripan pada setiap jurnal. Setelah itu, dihitung kemiripan dari isi jurnal yang di indikasikan sama. Sebelum dihitung tingkat kemiripan, maka teks pada jurnal, akan dilakukan proses stemming, yaitu penghapusan imbuhan. Teks yang digunakan untuk proses penghitungan tingkat kemiripan adalah teks yang sudah dilakukan proses stemming. Bahasa pemrograman yang digunakan adalah PHP dengan menggunakan database MySql .

1.3Batasan Masalah

Yang menjadi batasan masalah dalam penelitian ini ialah;

1. Data digunakan adalah jurnal mahasiswa S1 Ilmu Komputer Fasilkom TI USU yang berbahasa Indonesia

2. File yang akan di input adalah berekstensi (.pdf) yang tidak di kunci dan bukan hasil scann.

3. Pengindikasian kemiripan dilihat dari judul jurnal tersebut.

4. Algoritma yang digunakan adalah algoritma Winnowing dan Porter Stemmer. 5. Aplikasi yang dibuat menggunakan Bahasa Pemrograman PHP.

(18)

1.4Tujuan Penelitian

Tujuan penelitian ini adalah sebagai berikut:

1. Untuk merancang suatu aplikasi yang dapat memisahkan kalimat dalam bahasa Indonesia menjadi beberapa suku kata yang sesuai dengan kata dasarnya. 2. Untuk mengimplementasikan algoritma Winnowing dan Stemming Potter dalam

pendeteksian kemiripan dua dokumen.

1.5 Manfaat Penelitian

Manfaat penelitian ini adalah untuk mengetahui sejauh mana kemiripan satu dokumen dengan dokumen yang lain, dengan cara memisahkan sesuai kata dasarnya. Algoritma Stemming Potter sendiri untuk memisahkan sesuai suku kata nya. Sehingga dapat diketahui kata asli nya. Dan Winnowing melakukan proses pengecekkan kesamaan suatu kata (document fingerprinting). Dengan adanya penelitian seperti ini, diharapkan dapat mengetahui kecurangan-kecurangan yang terjadi, sehingga para oknum jera dan tidak ada lagi yang berani atau tega menjiplak hasil karya orang tanpa seijin dari orang tersebut .

1.6 Metodologi Penelitian

Tahapan yang dilakukan dalam penelitian ini adalah: 1. Studi Literatur

(19)

2. Perancangan Sistem

Pada tahap ini akan di susun perancangan sistem dengan menerapkan algoritma Stemming Potter sebagai algoritma stemmer untuk pendeteksian kemiripan dokumen.

3. Implementasi Sistem

Tahap ini merupakan tahap pengimplementasian sistem yang telah dibangun ke dalam bahasa pemrograman.

4. Pengujian dan Penganalisaan Sistem

Dalam tahap ini dilakukan pengujian aplikasi yang sudah dibangun.

5. Pembuatan laporan skripsi bertujuan untuk dijadikan sebagai dokumentasi hasil penelitian.

6. Penyusunan Laporan

7. Menyusun laporan hasil analisis dan perancangan kedalam bentuk format skripsi.

1.7 Sistematika Penulisan

Sistematika penulisan dalam penyusunan tulisan ini adalah sebagai berikut :

Bab 1 : Pendahuluan

Membahas tentang Latar Belakang, Identifikasi Masalah, Rumusan Masalah, Batasan Masalah, Tujuan Penelitian, Manfaat Penelitian, Metodologi Penelitian dan Sistematika Penulisan.

(20)

Membahas tentang teori-teori yang berkaitan dengan information retrieval, natural language processing, dan sistem penghitung kemiripan file.

Bab 3 : Analisa dan Perancangan

Bab ini mendeskripsikan fase-fase awal dalam pengembangan suatu sistem, sehingga terdapat gambaran yang jelas terhadap sistem yang akan dibangun.

Bab 4 : Implementasi dan Pengujian

Bab ini akan membahas tentang hasil dari pengimplementasian analisa yang sudah dirancang sebelumnya, sehingga pada bab ini akan ditampilkan perancangan antar muka serta pengujiannya.

Bab 5 : Kesimpulan dan Saran

Bab terakhir akan memuat kesimpulan isi dari keseluruhan uraian bab-bab sebelumnya dan saran-saran dari hasil yang diperoleh dan diharapkan dapat bermanfaat dalam pengembangan selanjutnya.

(21)

BAB 2

LANDASAN TEORI

2.1 Pengertian Stemming

Stemming merupakan suatu proses atau cara dalam menemukan kata dasar dari suatu kata. Stemming sendiri berfungsi untuk menghilangkan variasi-variasi morfologi yang melekat pada sebuah kata dengan cara menghilangkan imbuhan-imbuhan pada kata tersebut, sehingga nantinya di dapat suatu kata yang benar sesuai struktur morfologi bahasa Indonesia yang benar.

(22)

2.2 Stemming Porter

Algoritma yang diimplementasikan dalam aplikasi ini menggunakan algoritma Porter. Algoritma Porter ditemukan oleh Martin Porter 1980. Algoritma tersebut digunakan untuk stemming bahasa inggris, kemudian karena proses stemming bahasa inggris berbeda dengan bahasa indonesia maka, dikembangkan algoritma porter khusus untuk bahasa indonesia (Porter Stemmer for Bahasa Indonesia) oleh W.B. Frakes pada tahun 1992. Algoritma ini terkenal digunakan sebagai stemmer untuk bahasa Inggris. Porter Stemmer dalam bahasa Indonesia akan menghasilkan keambiguan karena aturan morfologi bahasa Indonesia. Bila dibandingkan, untuk teks berbahasa Indonesia, Porter stemmer lebih cepat prosesnya daripada algoritma stemming yang lain. Tidak banyak algoritma yang dikhususkan untuk stemming bahasa Indonesia dengan berbagai keterbatasan didalamnya. Algoritma Porter salah satunya, algoritma ini membutuhkan waktu yang lebih singkat dibandingkan dengan stemming menggunakan algoritma lainnya [7].

Langkah-langkah algoritma Stemming Porter adalah sebagai berikut:

1. Periksa pada kata yang akan di Stemm jika terdapat partikel (kah”, lah”, “-pun”), maka hapus partikel yang melekat.

2. Hapus kata ganti kepemilikan seperti “-ku”, “-mu”, “-nya”, jika ada.

3. Hapus first order prefiks (awalan pertama) seperti “-meng”, “-meny”, “-men”, “-mem”, “-me”, “-peng”, “-peny”, “-pen”, “-pem”, “-di”, “-ter”, “-ke”.

(23)

Tabel 2.1 Kelompok rule pertama : inflectional particles

Tabel 2.2 Kelompok rule kedua :inflectional possesive pronouns

Suffix Replacement Measure Condition

Additional

Condition examples

Ku NULL 2 NULL Bukuku buku

Mu NULL 2 NULL bukumu buku

nya NULL 2 NULL Bukunyabuku

Suffix Replacement Measure Condition

Additional

Condition examples

Kah NULL 2 NULL Bukukah

buku

Lah NULL 2 NULL Adalah ada

(24)

Tabel 2.3 Kelompok rule ketiga: first order of derivational prefixes

Prefiks Replacement Measure condition

Additional

Tabel 2.4 Kelompok rule keempat: second order of derivational prefixes prefiks replacement Measure

(25)

Tabel 2.5 Kelompok rule kelima: derivational suffixes suffix replacement Measure

condition

Stemming adalah proses untuk menggabungkan atau memecahkan setiap varian-varian suatu kata menjadi kata dasar [7]. Stem (akar kata) adalah bagian dari kata yang tersisa setelah dihilangkan imbuhannya (awalan dan akhiran). Contoh : connect adalah stem dari connected, connecting, connection, dan connections. Metode stemming memerlukan input berupa term yang terdapat dalam dokumen. Sedangkan outputnya berupa stem.

Ada tiga jenis metode stemming, antara lain :

1. Successor Variety (SV) : lebih mengutamakan penyusunan huruf dalam kata dibandingkan dengan pertimbangan atas fonem. Contoh untuk kata-kata : corpus, able, axle, accident, ape, about menghasilkan SV untuk kata apple :

1. Karena huruf pertama dari kata “apple” adalah “a”, maka kumpulan kata yang ada substring “a” diikuti “b”, “x”, “c”, “p” disebut SV dari “a” sehingga “a” memiliki 4 SV.

(26)

2. N-Gram Conflation : ide dasarnya adalah pengelompokan kata-kata secara bersama berdasarkan karakter-karakter (substring) yang teridentifikasi sepanjang N karakter.

3. Affix Removal : membuang suffix dan prefix dari term menjadi suatu stem. Yang paling sering digunakan adalah algoritma Porter Stemmer karena modelnya sederhana dan effisien.

1. Jika suatu kata diakhiri dengan “ies” tetapi bukan “eies” atau “aies”, maka “ies” direplace dengan “y”

2. Jika suatu kata diakhiri dengan “es” tetapi bukan “aes” atau “ees” atau “oes”, maka “es” direplace dengan “e”

3. Jika suatu kata diakhiri dengan “s” tetapi bukan “us” atau “ss”, maka “s” direplace dengan “NULL”

Gambar 2.1 Diagram Stemming Algoritma Stemming

Successor Variety Affix Removal N-Grams Conflation

(27)

Stemming adalah proses pemetaan dari penguraian berbagai bentuk kata baik itu prefik sufik, maupun gabungan antara prefik dan sufik,menjadi bentuk kata dasarnya atau stem.Algoritma Stemming yang digunakan adalah Potter Stemmer untuk bahasa Indonesia. Algoritma stemming dapat mengatasi akhiran yang berupa partikel, akhiran yang menunjukkan kata ganti kepemilikan, prefiks (imbuhan), sufiks (akhiran), dan gabungan antara prefiks dan sufiks. Sebelum melakukan proses penghilangan imbuhan pada Potter Stemmer, dilakukan perhitungan measure. Stemming itu proses pemotongan (pemangkasan) kata untuk mendapatkan bentuk dasar (kata dasar) dari kata tersebut. Misal terdapat kata mempermainkan, maka dari kata tersebut bisa dipilah-pilah menjadi mem + per + main + kan.

(28)

Prefiks 1 + Prefiks 2 + Kata dasar + Sufiks 3 + Sufiks 2 + Sufiks 1

(29)
(30)

Gambar 2.2 Flowchart Stemmer Porter

Pada proses stemmer porter, pertama-tama masukkan kata yang akan di stem, lalu memeriksa apakah terdapat partikel, jika ada maka hapus partikel, jika tidak maka lanjutkan memeriksa apakah terdapat kata kepemilikan, jika ada maka hapus, jika tidak maka lanjutkan. Periksa apakah terdapat prefix, jika ada maka hapus, jika tidak maka lanjutkan memeriksa apakah terdapat sufiks.Jika terdapat sufiks maka hapus. Jika pemeriksaan berhasil maka proses dinyatakan selesai dan tidak perlu melanjutkan proses pemotongan imbuhan selanjutnya. Dokumen dalam bahasa indonesia mempunyai keunikan tersendiri, karena kata - kata dalam bahasa indonesia dapat berubah bentuk saat mendapatkan imbuhan. Akibat dari hal proses Stemmer dari dokumen berbahasa Indonesia, yaitu proses mengembalikan kata ke bentuk dasar, memerlukan teknik tersendiri yang berbeda dengan teknik Stemmer pada bahasa - bahasa lain.

Fungsi Stemmer yang didesain berdasarkan algoritma Porter Stemmer for Bahasa Indonesia adalah inti dari tahap pre-processing yang dibuat. Guna dari fungsi ini adalah sebagai berikut:

1. Dengan mengembalikan kata menjadi kata dasarnya, akan sangat mengurangi macam kata yang perlu diperiksa dan dibandingkan dengan tabel Stopword maupun tabel Keyword. Hal ini akan mempercepat proses perbandingan kata serta mengurangi isi tabel Stopword dan tabel Keyword.

(31)

dapat meningkatkan kemungkinan terbentuknya sebuah Rule Assosiasi, atau dapat meningkatkan kualitas Rule Assosiasi yang dihasilkan.

2.3 Winnowing

(32)

fingerprint tiap dokumen. Nilai-nilai fingerprint inilah yang digunakan untuk menemukan tingkat presentase kesamaan sebuah dokumen dengan dokumen lain. Input dari algoritma ini sendiri adalah string dari dokumen tersebut, dan output nya berupa nilai-nilai hash yang dinamakan fingerprints dari dokumen tersebut.

Syarat dari algoritma deteksi penjiplakan seperti whitespace insensitivity, yaitu

pencocokan teks file seharusnya tidak terpengaruh oleh spasi, jenis huruf kapital,

tanda baca dan sebagainya,noise surpression yaitu menghindari pencocokan teks file

dengan panjang kata yang terlalu kecil atau kurang relevan dan bukan merupakan

kata yang umum digunakan, dan position independence yaitu pencocokan teks file

seharusnya tidak bergantung pada posisi kata-kata sehingga kata dengan urutan posisi

berbeda masih dapat dikenali jika terjadi kesamaan. Winnowing telah memenuhi

syarat-syarat tersebut dengan cara membuang seluruh karakter-karakter yang tidak

relevan misal: tanda baca, spasi dan juga karakter lain, sehingga nantinya hanya

(33)

Algoritma winnowing lebih cepat waktu komputasinya daripada algoritma rabin-karp karena fingerprint dari algoritma rabin-karp lebih banyak sedangkan winnowing dipilih nilai minimum dari window nya. keunggulan algoritma winnowing bisa memberikan informasi posisi fingerprint. Penggunaan nilai window yang semakin besar dapat mempengaruhi dalam waktu proses, karena semakin besar nilai dari suatu window mempengaruhi proses pembentukan nilai-nilai hashing yang semakin kecil. Selain itu, nilai k-gram dan basis juga mempengaruhi dalam memberikan persentasi kemiripan yang diperoleh sistem itu sendiri [3].

2.3.1 Hashing

Hashing adalah mengubah serangkaian karakter menjadi suatu kode atau nilai yang

menjadi penanda dari rangkaian karakter tersebut. Dengan adanya pengubahan

inilah, maka tercipta penanda sebagai indeks untuk digunakan dalam mencari

informasi kembali atau information retrieval. Fungsi untuk menghasilkan nilai ini

disebut fungsi hash, sedangkan nilai yang dihasilkan disebut nilai hash [11].

Nilai hash pada umumnya digambarkan sebagai fingerprint yaitu suatu string

pendek yang terdiri atas huruf dan angka yang terlihat acak. Fungsi Hash adalah

suatu cara menciptakan “fingerprint” dari berbagai data masukan. Fungsi Hash akan

mengganti atau mentranspose-kan data tersebut untuk menciptakan fingerprint, yang

biasa disebut hash value. Hash value biasanya digambarkan sebagai suatu string

pendek yang terdiri atas huruf dan angka yang terlihat random (data biner yang

ditulis dalam notasi hexadecimal). Algoritma fungsi hash yang baik adalah yang

menghasilkan sedikit hash collision. Hash collision merupakan kejadian dua atau

(34)

2.3.2 K-gram

K-gram adalah rangkaian substring yang bersebelahan dengan panjang. Metode ini

menghasilkan rangkaian substring sejumlah k-grams, dimana k adalah parameter

yang dipilih oleh user. K-gram mengambil substring karakter huruf sejumlah k dari

sebuah kata yang secara kontinuitas dibaca dari teks sumber hingga akhir dari

dokumen [9]. Dibawah ini salah satu contoh k-gram dengan k=5:

Text: pohon anggur, dan melon

Kemudian dilakukan penghilangan spasi :

pohonanggurdanmelon

Sehingga dihasilkan rangkaian 5-grams yang diturunkan

dari text :

Pohon|| ohona || honan ||onang|| nanggu ||anggu ||nggur

ggurd ||gurda|| urdan|| rdanm|| danme|| anmel|| nmelo

(35)

2.4 Jaccard’s Similarity Coefficient

Jaccard’s Similarity Coefficient (Jaccard 1912) merupakan indeks umum untuk variabel biner. Hal ini didefinisikan sebagai hasil bagi antara persimpangan dan serikat variabel dibandingkan berpasangan antara dua benda.

Untuk menghitung kemiripan dari dua dokumen , diperlukan Jaccard’s Similarity Coefficient, dengan rumus :

│ Aᴖ B│

D(A,B) = ________________ X 100% │ AᴗB│- │ Aᴖ B│

Keterangan:

D(A,B) merupakan nilai similarity ,

│ Aᴖ B│ jumlah dari fingerprints dokumen 1 dan 2 yang sama,

(36)

BAB 3

ANALISIS DAN PERANCANGAN

3.1 Analisis Sistem

Di dalam merancang suatu sistem diperlukan sebuah analisis sistem untuk membangun sistem tersebut. Analisis sistem ini bertujuan membantu pemodelan rancang bangun sistem yang akan di implementasikan secara konkret nantinya. Tahap ini mendeskripsikan fase-fase awal dalam pengembangan suatu sistem, sehingga terdapat gambaran yang jelas terhadap sistem yang akan dibangun.

3.2 Analisis Masalah

(37)

Pemodelan diagram Ishikawa dapat dilihat pada Gambar 3.1 dibawah ini.

keingintahuan stemmer porter untuk

tingkat persentase mendapat kata dasar

kemiripan file winnowing untuk nilai fingerprint

file berekstensi .pdf kata dilakukan proses stemm menggunakan

sebagai file inputan algortima stemmer porter

penghitungan nilai fingerprint dengan bantuan winnowing

Gambar 3.1 Diagram Ishikawa

Pada diagram Ishikawa diatas, segi empat paling kanan (kepala ikan) menunjukkan masalah utama yaitu user atau admin ingin mengetahui tingkat kesamaan dari suatu file yang akan di cek, sedangkan aspek ditunjukkan oleh segi empat yang dihubungkan oleh sebuah garis ke tulang utama (garis horizontal yang terhubung ke kepala ikan). Selanjutnya, tulang-tulang kecil yang diwakili oleh garis

(38)

panah yang mengarah ke tulang-tulang kategori masalah menunjukkan sebab akibat yang muncul pada permasalahan tersebut.

3.3 Analisis Persyaratan (Requirement Analysis)

Analisis persyaratan pada fase ini mempunyai kegunaan untuk menentukan syarat-syarat yang dibutuhkan dalam membangun sistem bentuk fungsional dan non-fungsional yang akan dijelaskan pada tahap selanjutnya. Berikut penjabarannya :

3.3.1 Analisis persyaratan fungsional

Pada fase ini dapat diketahui hal-hal apa saja yang dapat dikerjakan oleh sistem. Hal-hal tersebut antara lain :

1. Sistem ini dilakukan pada file yang berekstensi (.pdf). 2. Sistem akan membaca judul file sesuai dengan nama file.

3. Sistem akan melakukan proses stemming dan mencari nilai fingerprint dari judul file yang di input.

4. Sistem akan memeriksa tingkat kemiripan dengan judul-judul file yang ada dalam database.

5. Sistem akan kembali melakukan proses stemming dan mencari nilai fingerprint isi teks.

(39)

7. Sistem akan memberitahu tingkat kemiripan file tersebut dengan file yang lain.

3.3.2Analisis persyaratan non-fungsional

Analisis persyaratan fungsional meliputi ; 1. Perfoma

Sistem yang akan dibangun dapat menghitung tingkat kemiripan antara satu file dengan file yang lain setelah sebelumnya dilakukan dulu proses stemming dan mencari nilai fingerprintnya.

2. Mudah digunakan (user friendly)

Sistem yang akan dibangun memiliki cara penggunaan yang mudah dan tampilan menarik, sehingga lebih memudahkan pengguna untuk

mengoperasikannya. 3. Hemat biaya

Sistem yang akan dibangun tidak memerlukan lagi perangkat tambahan atau perangkat pendukung lain, sehingga tidak perlu lagi mengeluarkan biaya tambahan.

4. Dokumentasi

Sistem yang akan dibangun dapat menyimpan file yang sudah diproses.

3.4 Pemodelan Sistem dengan Usecase dan Activity Diagram

(40)

Gambar 3.2 Usecase Diagram

Pada diagram di atas, admin dapat berperan juga sebagai user. Admin menginput file yang akan diproses. File-file tersebut hanya berekstensi (.pdf). Setelah itu, file tersebut diproses dengan menggunakan algoritma-algoritma yang berperan.

Usecase penghitungan kemiripan file dapat dilihat pada table 3.1.

Table 3.1 Usecase Penghitungan Kemiripan File Na me Algortima stemmer porter dan winowing Actors Admin /user

Trigger Admin menginput file yang akan diproses Preconditions File yang akan diproses dibandingkan dengan

file-file yang sebelumnya sudah disimpan di database

Post Conditions Admin dapat melihat hasil penghitungan kemiripan file

(41)

2. User mengakses tombol tampilkan isi 3. Sistem akan mengecek berdasar judul yang

memiliki kemiripan

4. Sistem akan membandingkan hanya dengan file-file yang memiliki kemiripan judul

5. Sistem akan kembali melalukan proses pada isi file menggunakan algortima-algoritma yang terkait

6. Sistem akan menampilkan hasil persentase kemiripan

Alternative Flows -

Berikut ini penjelasan untuk table 3.1 :

1. Nama algoritma yang digunakan adalah Stemmer Porter dan Winowing 2. User/admin sebagai actor

3. Tidak tersedia preconditions

4. Pada post conditions, user dapat melihat hasil penghitungan kemiripan file

5. Pada success scenario terdapat proses:

a. User telah menginputkan file yang akan diproses b. User mengakses tombol tampilkan isi

(42)

d. Sistem akan membandingkan hanya dengan file-file yang memiliki kemiripan judul

e. Sistem akan kembali melalukan proses pada isi file menggunakan algortima-algoritma yang terkait

f. Sistem akan menampilkan hasil persentase kemiripan

(43)

User Sistem

Selesai Input file

Tampilkan hasil kemiripan judul(persentase≥5%)

Tampilkan hasil kemiripan isi file

Memroses judul dengan judul dalam database

Cek isi file tidak

(44)

Gambar 3.3 Activity Diagram

Dari activity diagram tersebut, dapat dijelaskan pertama-tama user menginput file yang akan diproses. Setelah itu, sistem akan melakukan pengecekan melalui judul. Judul yang memiliki kemiripan di ambang batas ( ≥5% ), maka sistem akan meneruskan pemrosesan, jika tidak maka user langsung menghentikan pemrosesan. File akan dibandingkan dengan file-file yang memiliki judul hampir sama yang sudah tersimpan di database. Selanjutnya, sistem akan melakukan proses pada isi file tersebut. Stemming porter dilakukan untuk mendapat kata dasar. Lalu dilakukan pembentukan gram dan mencari nilai-nilai hash nya menggunakan winnowing. Setelah itu, didapat nilai fingerprint. Nilai-nilai fingerprint inilah yang nantinya yang akan dibandingkan dengan nilai fingerprint pada file lain. Lalu akan dihitung persentase kemiripan nya. Untuk menghitung kemiripan dari dua dokumen tersebut, diperlukan Jaccard’s Similarity Coefficient.

Sequence diagram untuk proses ini dapat dilihat pada gambar 3.4 dibawah ini.

(45)

Gambar 3.4 Sequence Diagram

Dari sequence diagram dapat dilihat bahwa file diproses dengan algoritma Porter dan Winowing dengan menginput file terlebih dahulu . Setelah proses stemming dan fingerprint dilakukan, maka di dapat hasil akhir persentase kemiripan file yang satu dengan yang lain.

3.5 Perancangan algoritma

Flow chart merupakan langkah awal pembuatan program. Dengan adanya flowchart urutan poses kegiatan menjadi lebih jelas. Jika ada penambahan proses maka dapat dilakukan lebih mudah. Setelah flowchart selesai disusun, selanjutnya

menerjemahkannya ke bentuk program dengan bahasa pemrograman.

3.5.1 Flow chart Porter

(46)

Gambar 3.5 Flow Chart Stemmer Porter

(47)

Pada flowchart winnowing pertama tentukan gram yang akan di bentuk, lalu bentuk gram dan hash. Setelah hash terbentuk, maka langkah selanjutnya window pun di bentuk. Nilai-nilai dari minimal dari masing-masing window inilah yang akan menjadi nilai fingerprint untuk menghitung nilai kesamaan dokumen tersebut.

Gambar 3.6 Flow chart Winnowing mulai

Tentukan gram

Bentuk gram

Bentuk window Buat hash

Bentuk fingerprint

(48)

3.5.3 Algoritma Porter Stemmer

Awalan-awalan pada stemmer ditentukan dengan langkah-langkah berikut.

1. Jika awalannya adalah: “di-”, “ke-”, atau “se-” maka tipe awalannya secara berturut-turut adalah “di-”, “ke-”, atau “se-”.

2. Jika awalannya adalah “te-”, “me-”, “be-”, atau “pe-” maka dibutuhkan sebuah proses tambahan untuk menentukan tipe awalannya.

3. Jika dua karakter pertama bukan “di-”, “ke-”, “se-”, “te-”, “be-”, “me-”, atau “pe-” maka berhenti.

4. Jika tipe awalan adalah “none” maka berhenti. Jika tipe awalan adalah bukan “none” maka awalan dapat dilihat pada Tabel 2. Hapus awalan jika ditemukan.

Tabel 3.2 Kombinasi Awalan Akhiran Yang Tidak Diijinkan

Awalan Akhiran yang tidak diizinkan

be- -i

di- -an

ke- -i, -kan

me- -an

se- -i, -kan

Tabel 3.3 Cara Menentukan Tipe Awalan Untuk awalan “te-”

Following Characters Tipe

Awalan

(49)

“-r-“ “-r-“ - - None

Tabel 3.4 Jenis Awalan Berdasarkan Tipe Awalannya

Tipe Awalan Awalan yang harus dihapus

di- di-

(50)

1. Aturan untuk reduplikasi.

1. Jika kedua kata yang dihubungkan oleh tanda penghubung adalah kata yang sama maka root word adalah bentuk tunggalnya, contoh : “buku-buku” root word-nya adalah “buku”.

2. Kata lain, misalnya “bolak-balik”, “berbalas-balasan, dan ”seolah-olah”. Untuk mendapatkan root word-nya, kedua kata diartikan secara terpisah. Jika keduanya memiliki root word yang sama maka diubah menjadi bentuk tunggal, contoh: kata “berbalas-balasan”, “berbalas” dan “balasan” memiliki root word yang sama yaitu “balas”, maka root word “berbalas-balasan” adalah “balas”. Sebaliknya, pada kata “bolak-balik”, “bolak” dan “balik” memiliki root word yang berbeda, maka root word-nya adalah “bolak-balik”.

2. Tambahan bentuk awalan dan akhiran serta aturannya.

1. Untuk tipe awalan “mem-“, kata yang diawali dengan awalan “memp-” memiliki tipe awalan “mem-”.

2. Tipe awalan “meng-“, kata yang diawali dengan awalan “mengk-” memiliki tipe awalan “meng-”.

Berikut contoh-contoh aturan yang terdapat pada awalan sebagai pembentuk kata dasar.

1. Awalan SE-

(51)

1. Se + bungkus = sebungkus

2. Se + nasib = senasib

3. Se + arah = searah

4. Se + ekor = seekor

2. Awalan ME-

Me + vokal (a,i,u,e,o) menjadi sengau “meng”

Contoh :

Me + konsonan b menjadi “mem”

Contoh :

1. Me + beri = member

2. Me + besuk = membesuk

Me + konsonan c menjadi “men”

Contoh :

1. Me + cinta = mencinta

(52)

Me + konsonan d menjadi “men”

Contoh :

1. Me + didik = mendidik

2. Me + dengkur = mendengkur

Me + konsonan g dan h menjadi “meng”

Contoh :

1. Me + gosok = menggosok

2. Me + hukum = menghukum

Me + konsonan j menjadi “men”

Contoh :

1. Me + jepit = menjepit

2. Me + jemput = menjemput

Me + konsonan k menjadi “meng” (luluh)

Contoh :

1. Me + kukus = mengukus 2. Me + kupas = mengupas

(53)

Contoh :

1. Me + pesona = mempesona

2. Me + pukul = memukul

Me + konsonan s menjadi “meny” (luluh)

Contoh :

1. Me + sapu = menyapu

2. Me + satu = menyatu

Me + konsonan t menjadi “men” (luluh)

Contoh :

1. Me + tanama = menanam

2. Me + tukar = menukar

Me + konsonan (l,m,n,r,w) menjadi tetap “me”

Contoh :

(54)

Contoh :

1. Ke + bawa = kebawa

2. Ke + atas = keatas

4. Awalan PE-

Pe + konsonan (h,g,k) dan vokal menjadi “per”

Contoh :

1. Pe + hitung + an = perhitungan

2. Pe + gelar + an = pergelaran

3. Pe + kantor + = perkantoran

Pe + konsonan “t” menjadi “pen” (luluh)

Contoh :

1. Pe + tukar = penukar

2. Pe + tikam = penikam

Pe + konsonan (j,d,c,z) menjadi “pen”

Contoh :

1. Pe + jahit = penjahit

2. Pe + didik = pendidik

(55)

Pe + konsonan (b,f,v) menjadi “pem”

Contoh :

1. Pe + beri = pemberi

2. Pe + bunuh = pembunuh

Pe + konsonan “p” menjadi “pem” (luluh)

Contoh :

1. Pe + pikir = pemikir

2. Pe + potong = pemotong

Pe + konsonan “s” menjadi “peny” (luluh)

Contoh :

1. Pe + siram = penyiram 2. Pe + sabar = penyabar

(56)

Contoh :

1. Pe + lamar = pelamar

2. Pe + makan = pemakan

3. Pe + nanti = penanti

4. Pe + wangi = pewangi

3.5.4 Algoritma Winowing

Langkah-langkah algoritma Winnowing :

1. Penghapusan karakter-karakter yang tidak relevan (whitespace insensitivity), antara lain spasi atau tanda baca.

2. Pembentukan rangkaian gram dengan ukuran k.

3. Penghitungan nilai hash dari setiap gram.

4. Membagi ke dalam window tertentu.

5. Pemilihan beberapa nilai hash menjadi document fingerprinting.

(57)

Winnowing memiliki rumus sebagai berikut:

Berikut salah satu contoh untuk menghitung nilai fingerprints dari suatu kata;

1. Saya belajar

Hapus spasi = sayabelajar

Ditentukan Gram : 3 , Window : 3

Bentuk Gram  Say | aya | yab | abe | bel | ela | laj | aja | jar Nilai Hash:

H(say | b=2 | k=3)  ascii(s) * 2(3−1) + ascii(a) * 2(2−1) + ascii(y) * 2(1−1)  115 * 22 + 97 * 21 + 121 * 20 = 460 + 194 + 121 = 775 H(aya | b=2 | k=3)  ascii(a) * 2(3−1) + ascii(y) * 2(2−1) + ascii(a) * 2(1−1)

(58)
(59)
(60)

97 * 22 + 105 * 21 + 110 * 20 = 388 + 210 + 110 = 708

Dari kalimat pertama dan kedua didapat nilai fingerprint nya sebagai berikut: Fingerprint1 : [727, 1] [685,2][702,5] [697,6]

Fingerprint2 : [727,1] [685,2] [708,5][735,6]

3.5.5 Perhitungan kemiripan

Untuk menghitung kemiripan dari dua dokumen tersebut, diperlukan Jaccard’s Similarity Coefficient, dengan rumus :

│ Aᴖ B│

(61)

│ Aᴖ B│ jumlah dari fingerprints dokumen 1 dan 2 yang sama,

│ AᴗB│ ialah jumlah fingerprints dokumen 1 dan 2 dikurangi jumlah yang sama.

Sehingga dari rumus bisa dihitung tingkat kemiripan dari kalimat pertama dan kedua ;

Kesamaan : (2 / 6 ) * 100% = 33,3 %

Penggunaan nilai window yang semakin besar dapat mempengaruhi dalam waktu proses, karena semakin besar nilai dari suatu window mempengaruhi proses pembentukan nilai-nilai hashing yang semakin kecil. Selain itu, nilai k-gram dan basis juga mempengaruhi dalam memberikan persentasi kemiripan yang diperoleh sistem itu sendiri.

3.6 Perancangan Sistem

(62)

3.6.1 Perancangan Antar Muka Form Home

Pada tampilan perancangan home terdapat “choose file” untuk memilih file yang kan diproses, “show content” untuk menampilkan isi dari file tersebut, “title” untuk menampilkan judul dari file tersebut, “content” memuat isi dari file jurnal tersebut, serta “process” untuk memroses jurnal tersebut ke dalam sistem.

Similarity Of Journal

Home Journal Similarity About

Gambar 3.7 Tampilan Form Home Choose file

Show content

title

content

(63)

3.6.2 Perancangan Antar Muka Form Journal

Pada perancangan form journal, menampilkan jurnal-jurnal yang telah masuk ke dalam database.

Similarity Of Journal

(64)

No Journal … ….

Gambar 3.8 Tampilan Form Journal

(65)

Pada perancangan form similarity, menampilkan tingkat kemiripan judul dan kemiripan isi dari jurnal-jurnal yang telah diproses.

Similarity Of Journal

Home Journal Similarity About

No Title Similarity of title Similarity of

content

… … .. ..

… … .. ..

(66)

3.6.4 Perancangan Antar Muka Form About

Pada perancangan form about, berisikan informasi dasar dari pembuat aplikasi.

Similarity Of Journal

Home Journal Similarity About

About

(67)

BAB 4

IMPLEMENTASI DAN PENGUJIAN

4.1 Implementasi Sistem

Implementasi sistem merupakan tahap lanjutan dari perancangan sistem. Dalam tahap ini, mengimplementasikan hasil analisis dan perancangan sistem ke dalam suatu bahasa pemrograman. Dengan adanya implementasi sistem, akan lebih terlihat nyata hasil akhir dari perancangan sistem yang sudah di analisis sebelumnya.

Pada bab ini akan di tunjukkan implementasi dari penggabungan algoritma Stemmer Porter dan Winnowing serta penghitungan rumus Jaccard’s Similarity Coefficient. Bab sebelumnya sudah di bahas tenteng cara kerja algortima Stemmer dan Winnowing. Sistem ini akan dibangun menggunakan bahasa pemrograman PHP. Pada aplikasi ini akan terdapat 4(empat) halaman utama, yaitu:

(68)

4.1.1 Tampilan halaman form home (awal)

(69)

Gambar 4.1 Form home

Pada tampilan form home terdapat tombol choose fil, show content, kotak title yang berisi judul jurnal, dan kotak content yang memuat isi jurnal yang akan di proses.

4.1.2 Tampilan halaman form journal

(70)

Gambar 4.2 Form journal

(71)

4.1.3 Tampilan halaman form similarity

Halaman form similarity atau dengan kata lain menampilkan hasil kemiripan dari jurnal-jurnal yang sudah diproses oleh sistem. Form similarity dapat di lihat pada Gambar 4.3 .

(72)

Pada tampilan halaman ini, terdapat tabel yang berisi title, similarity of title, dan similarity of content. Dari tampilan ini dapat diketahui tingkat kesamaan judul antar jurnal yang paling mirip dan ditampilkan juga beserta tingkat kemiripan dari isi-isi jurnal tersebut.

4.1.4 Tampilan halaman form about

(73)

Gambar 4.4 Form about

(74)

4.2 Pengujian Sistem

Tahapan pengujian sistem merupakan tahapan lanjutan dari implementasi sistem. Tahapan ini memiliki kegunaan untuk membuktikan bahwa hasil dari pengimplementasian analisis dan perancangan sistem telah berhasil.

4.2.1 Pengujian sistem pilih file

(75)

Gambar 4.5 Tampilan hasil open file jurnal

(76)

Gambar 4.6 Tampilan hasil pilih file

Judul jurnal yang sudah dipilih akan ditampilkan seperti pada gambar di atas.

(77)

Gambar 4.7 Tampilan show content

(78)

Gambar 4.8 Tampilan hasil proses

(79)

Gambar 4.9 Tampilan hasil fingerprint judul

(80)

Gambar 4.10 Tampilan hasil fingerprint isi

Setelah judul dari jurnal tersebut di dapat nilai fingerprintnya, maka selanjutnya di cari nilai fingerprint dari isi jurnal. Semua proses judul maupun isi, mengalami algoritma yang sama sehingga di dapat nilai fingerprint masing-masing.

(81)

Gambar 4.11 Tampilan hasil kemiripan jurnal

Pada form similarity di atas, diketahui bahwa jurnal yang berjudul “Analisis Perbandingan Metode Simple Additive Weighting dan Metode Fuzzy Multi Criteria Decision Making Untuk Menentukan Lokasi Pengabdian” memiliki kesamaan dengan beberapa jurnal yang lain. Dapat dilihat jurnal tersebut di bandingkan dengan jurnal yang berjudul “ Analisis Perbandingan Algoritma Ant Colony dengan Algoritma A dalam Menentukan Rute Terpendek” memiliki tingkat kesamaan judul sebesar 8.77 %, sedangkan untuk kesamaan isi memiliki tingkat kesamaan sebesar 11.89 %.

(82)

Untuk Menentukan Lokasi Pengabdian” memiliki tingkat kemiripan judul paling besar dengan jurnal yang berjudul “Analisis Perbandingan Metode Low Bit Coding dan Least Significant Bit untuk Digital Watermarking pada File WMA” sebesar 11.94 %, sedangkan untuk isi jurnal nya memiliki tingkat kemiripan paling besar 11.89 % terhadap jurnal yang berjudul “Analisis Perbandingan Algoritma Ant Colony dengan Algoritma A dalam Menentukan Rute Terpendek”

4.2.2 Pengujian hasil proses judul file

Aplikasi ini mempunyai langkah-langkah sebagai berikut: 1. Ambil teks dan titik yang terdapat pada file

2. Ubah semua huruf menjadi huruf kecil (lowerchase) 3. Hapus stopword dan yang kurang dari 3 karakter 4. Teks mulai diproses dengan stemming porter 5. Pisahkan kalimat berdasarkan titik

6. Pembentukan grams 7. Pembentukan hash 8. Pembentukan window 9. Pembentukan fingerprint 10.Penghitungan kesamaan

Berikut merupakan contoh penghitungan pada kedua file jurnal yang terdapat dalam database.

Jurnal I:

(83)

Jurnal II :

Algoritma Ant Colony System dalam Penjadwalan Kegiatan Belajar Mengajar di Sekolah Dasar.

Kedua judul jurnal tersebut akan diproses sesuai algoritma diatas.

Jurnal I :

1. Analisis Perbandingan Algoritma Ant Colony dengan Algoritma A dalam Menentukan Rute Terpendek.

2. analisis perbandingan algoritma ant colony dengan algoritma a dalam menentukan rute terpendek.

3. Analisis perbandingan algoritma ant colony algoritma rute terpendek.

4. Teks di stemming sesuai kamus kata dasar : Analisis  analisis

menentukan tentu rute-rute

5. analisis algoritma ant colony algoritma tentu rute. 6. Pembentukan grams = 5

(84)

Ditentukan Gram : 5 , Window : 3

Bentuk Gram  anali | nalis | alisi | lisis | isisa | sisal | isalg | salgo | algor | lgori | gorit | oritm | ritma| itmaa| tmaan | maant | aantc | antco | ntcol | tcolo | colon | olony | lonya | onyal | nyalg | yalgo | algor | lgori | gorit | oritm | ritma | itmat | tmate | maten | atent | tentu | entur | nturu | turut | urute |

7. Pembentukan hash Nilai Hash:

H(anali | b=10 | k=5)  ascii(a) * 10(5−1) + ascii(n) * 10(4−1) + ascii(a) * 10(3−1) + ascii(l) * 10(2−1) + ascii(i) * 10(1−1)

 97 * 104 + 110* 103 + 97 * 102 + 108 * 101 + 105 * 100  1090885

H(nalis | b=10 | k=5 )  ascii(n) * 10(5−1) + ascii(a) * 10(4−1) + ascii(l) * 10(3−1) + ascii(i) * 10(2−1) + ascii(s) * 10(1−1)

(85)
(86)
(87)

Jurnal II :

Algoritma Ant Colony System dalam Penjadwalan Kegiatan Belajar Mengajar di Sekolah Dasar.

1. Algoritma Ant Colony System Penjadwalan Belajar Mengajar Sekolah Dasar. 2. algortima ant Colony system penjadwalan belajar mengajar sekolah dasar, 3. algoritmaantcolonysystempenjadwalanbelajarmengajarsekolahdasar,

4. algor| lgori| gorit| oritm | ritma| itmaa | tmaan | maant| aantc| antco| ntcol | tcolo | colon | olony | lonys | onysy | nysys| ysyst | syste| ystem| stemp| tempe | empen | mpenj | penja | enjad | njadw | jadwa | adwal | dwala | walan | alanb | nbela | belaj|elaja | lajar | ajarm | jarme| armen | rmeng | menga | engaj | ngaja | gajar | ajars| jarse | arsek | rseko | sekol | ekola | kolah | olahd |lahda |ahdas | hdasa | dasar|

Nilai fingerprint jurnal II :

1089524 1153566 1177967 1079259 1092701 1113020 1203325 1233371 1233825 1283761 1277296 1273057 1130670 1082978 1089447 1145957 1096857 1086937 1094857 1086955 1096617 1129277 1188497 1085085

Nilai fingerprint jurnal I :

(88)

Kesamaan dari kedua fingerprint nya :

1089524 1153566 1177967 1079259 1092701 1113020

Maka tingkat kemiripan :

│ Aᴖ B│

D(A,B) = ________________ X 100% │ AᴗB│- │ Aᴖ B│

= 6

───── X 100 38

(89)

BAB 5

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Berdasarkan pembahasan dan evaluasi dari bab terdahulu, maka dapat ditarik kesimpulan sebagai berikut:

1. Algoritma stemmer porter dan winnowing dapat digunakan dalam menghitung tingkat kemiripan suatu file dengan yang lain.

2. Aplikasi ini dapat digunakan dalam aktivitas yang terjadi pada lingkungan akademik.

3. Algoritma stemmer porter membantu mempercepat algoritma winnowing dalam menentukan nilai fingeprint dari suatu teks. Namun, algoritma winnowing dibantu oleh persamaan jaccard hanya menghitung tingkat kemiripan saja, bukan menentukan file tersebut termasuk plagiat atau tidak.

5.2 Saran

(90)

1. Dapat ditambahkan indikator lain yang lebih kompleks dalam setiap perspektif yang terdapat pada algoritma stemmer porter dan winnowing, sehingga dapat dilakukan penghitungan kemiripan file yang lebih detail dan akurat.

2. Sistem ini dapat dikembangkan lebih lanjut dengan menfokuskan pada mengembangkan fitur-fitur yang ada dikarenakan sistem yang dibuat lebih menfokuskan pada penghitungan kemiripan satu file dengan yang lain menggunakan dua algoritma.

(91)

DAFTAR PUSTAKA

[1] Djuandi, F., 2008, Jurus Baru Pemrograman SQL Server 2005, ElexMedia Komputindo, Jakarta.

[2]. Han , Jiawei, dan Micheline Kamber, “Data Mining : Concepts andTechniques Second Editions”, San Franscisco, Publish by Morgan Kaufmann Publisher, Copyright © 2006.

[3]. Kusmawan, P. Y., Yuhana, U. L., & Purwitasari, D. (2010). Aplikasi Pendeteksi Penjiplakan pada File Teks dengan Algoritma Winnowing. ITS-Undergraduate-3100010038856 , 1-11.

[4]. Kadir, Abdul. 2003. Dasar Pemrograman Web Dinamis Menggunakan PHP. Andi. Yogyakarta.

[5]. Ledy Agusta, Fakultas Teknologi Informasi; Universitas Kristen SatyaWacana; “Perbandingan Algoritma Stemming Porter Dengan Algoritma Nazief & Adriani Untuk Stemming Dokumen Teks Bahasa Indonesia ”,

http://yudiagusta.files.wordpress.com/2009/11/196-201-knsi09-036- perbandingan-algoritma-stemming-porter-dengan-algoritma-nazief-adriani-untuk-stemming-dokumen-teks-bahasa-indonesia.pdf , Tanggal Akses : 10 Maret 2013

[6]. Prasetyo, Didik. 2005. Solusi Menjadi Web Master Melalui Manajemen Web dengan PHP. PT Elex Media Komputindo. Jakarta.

[7]. Rachmansyah, 2009, Stemmer Kata Bahasa Indonesia 2009, Elex Media Komputindo, Jakarta.

[8]. Steven. (2009, September 14). PERANCANGAN PROGRAM APLIKASI PENDETEKSIAN PLAGIARISME DOKUMEN BERBASIS TEKS

(92)

Teknik-Informatika - Matematika Skripsi Sarjana Program Ganda Semester Ganjil 2008/2009, Universitas Bina Nusantara, Jakarta , 8-25.

[9]. Scheimer, Saul, Daniel S. Wilkerson, dan Alex Aiken. Winnowing: Local Algorithms for Document Fingerprinting. San Diego: In Proceedings of the ACM SIGMOD International Conference On Management Of Data. 2003

[10]. S.Pressman , Roger, Ph.D. , “ Rekayasa Perangkat Lunak : Pendekatan Praktisi” (Buku Satu).Penerbit ANDI Bekerja Sama McGraw-Hill Book Companies, Inc. Judul Asli : “Software Engineering: A Practitioner’s Approach ” , Copyright © 1997.

(93)

CURRICULUM VITAE

Nama : Lidia Arta Ferari Siahaan Alamat Sekarang : Komplek Pemda Tk.I , Medan Alamat Orang Tua : Puri Masurai II , Jambi

Telp/Hp : 081396632021

Email : ladye_ferari@yahoo.com Riwayat Pendidikan

SD Negeri 196, Jambi dari Tahun 1995 s/d Tahun 2001 SMP Negeri 8, Jambi dari Tahun 2001 s/d Tahun 2004 SMA Negeri 5, Jambi dari Tahun 2004 s/d Tahun 2007 Universitas Sumatera Utara dari Tahun 2008 s/d Tahun 2014 Keterampilan

(94)

DAFTAR LAMPIRAN

Nomor

Lampiran Nama Lampiran Halaman

A Tabel ASCII A-1

(95)

Gambar

Tabel 2.1 Kelompok rule pertama : inflectional particles
Tabel 2.3 Kelompok rule ketiga: first order of derivational prefixes
Tabel 2.5  Kelompok rule kelima: derivational suffixes
Gambar 2.3 Persamaan Winnowing
+7

Referensi

Dokumen terkait

Statistics of elevation differences over stable terrain at Lindblad Cove Upper glacier study site between FIDASE 1957 and WorldView-2 2014 before and after surface matching... On

Setelah melakukan pengaturan waktu siklus serta penentuan fase dari setiap lengan dengan menggunakan dua alternatif, maka didapat bahwa alternatif pertama dapat

Hasil penelitian menunjukkan bahwa kadar glukosa darah 2 jam post prandial manusia yang mengkonsumsi nasi siger sebesar 89 mg/dL lebih rendah dibandingkan dengan nasi putih 95

Dimensi sosial pada individu dengan halusinasi menunjukkan adanya kecenderungan untuk menyendiri. Individu asyik dengan halusinasinya, seolah-olah ia merupakan tempat untuk

Penelitian ini dilakukan dengan mesin pengering menggunakan rak yang berputar (rotari), dimana rak yang berputar ini akan memutar lada yang ada didalamnya selama

Ini merupakan satu persoalan utama bagi mereka yang tidak memahami bagaimana model 4MAT dapat membantu dalam menghasilkan pengajaran mata pelajaran Sejarah yang lebih efektif

Analisis prosedur merupakan langkah awal yang dilakukan dari perancangan sistem informasi Akuntansi Pembayaran Gaji Pegawai Pada Dinas Tenaga Kerja Dan Transmigrasi

Pada proses editing dokumentasi, tidak cukup hanya dengan menggabungkan beberapa stock video begitu saja, namun banyak unsur yang harus diperhatikan di dalam prosesnya, seperti