Académique Documents
Professionnel Documents
Culture Documents
Matching
Algoritma
Levenshtein
1
Algoritma Levenshtein
Algoritma Levenshtein / Levenshtein Distance / Edit
Distance merupakan algoritma pencarian jumlah
perbedaan string.
Ditemukan oleh Vladimir Levenshtein, seorang
ilmuwan Rusia, pada tahun 1965.
Algoritma Levenshtein merupakan algoritma yang
digunakan untuk mencari jumlah operasi
string yang paling sedikit untuk
mentransformasikan suatu string menjadi string
yang lain.
Pencarian string target menjadi tidak harus sama
persis dengan yang ada di dalam string sumber.
3
Contoh Algoritma
Levenshtein
1. Mesin pencari
2. Pengecek ejaan (spell checking)
3. Pendeteksian suatu rantai dalam DNA
4. Pendeteksi pemalsuan
5. Pengenal pembicaraan
6. Pengucapan dialek
7. Dan lain-lain
Contoh Algoritma
Levenshtein
Seringkali kata kunci yang dicari bukan
merupakan ejaan yang baku, memiliki suatu
imbuhan yang komponen katanya berbeda,
ataupun salah ketik.
Contoh salah pengetikan:
hirarki padahal hierarki
rtae padahal rate
Contoh perubahan komponen karena
penambahan imbuhan:
Dalam bahasa Inggris rate dan rating
Operasi String
Ada tiga operasi string yang digunakan untuk
mentransformasikan suatu string menjadi string yang
lain:
1. Operasi penghapusan
2. Operasi penyisipan/penambahan
3. Operasi penggantian/pengubahan
. Operasi-operasi ini digunakan untuk menghitung
jumlah perbedaan yang diperlukan untuk
pertimbangan kecocokan suatu string dengan string
sumber.
. Perhitungan jarak antara dua string ditentukan dari
jumlah minimum operasi perubahan untuk membuat
string A menjadi string B
. Jumlah operasi minimal dari ketiga operasi tersebut
terhadap dua buah string disebut dengan
Levenshtein distance atau edit distance.
Operasi String
Operasi Penggantian Karakter
Operasi pengubahan karakter
merupakan operasi menukar sebuah
karakter dengan karakter lain
Contoh:
String yamg menjadi yang
karakter m diganti dengan huruf
n
7
Operasi String
Operasi Penyisipan Karakter
Operasi penyisipan/penambahan
karakter berarti menambahkan
karakter ke dalam suatu string.
Contoh:
String kepad menjadi kepada
Penambahan karakter a di akhir
string
8
Operasi String
Operasi Penghapusan Karakter
Operasi penghapusan karakter
dilakukan untuk menghilangkan
karakter dari suatu string
Contoh:
String barur menjadi baru
Dilakukan penghapusan karakter
r
9
Langkah-langkah
Algoritma
1. m = panjang kata1 (kata kunci yang diinputkan oleh pengguna).
2. n = panjang kata2 (kata dari tabel kata yang digunakan untuk
pembanding).
3. d[0,0] = 0.
4. Untuk i = 1 sampai m, kerjakan d[i,0]= d[i-1,0] + c(kata1i, ).
5. Untuk j = 1 sampai n, kerjakan d[0,j]= d[0,j-1] + c(, kata2j).
6. Menghitung nilai array dalam matrik
Untuk i = 1 sampai m, kerjakan
Untuk j = 1 sampai n, kerjakan
Langkah-langkah
Algoritma
1.
2.
3.
4.
5.
6.
7.
8.
9.
Langkahlangkah
Algoritma
12
Levenshtein Distance
Algoritma ini berjalan mulai dari pojok
kiri atas sebuah array dua dimensi
yang telah diisi sejumlah karakter string
awal dan string target dan diberikan
nilai cost.
Nilai cost pada ujung kanan bawah
menjadi nilai edit distance yang
menggambarkan jumlah perbedaan 2
string.
13
15
16