BAB 2 LANDASAN TEORI

Ukuran: px
Mulai penontonan dengan halaman:

Download "BAB 2 LANDASAN TEORI"

Transkripsi

1 BAB 2 LANDASAN TEORI 2.1. Definisi Algoritma Algoritma Istilah algoritma (algorithm) berasal dari kata algoris dan ritmis, yang pertama kali diungkapkan oleh Abu Ja far Mohammed Ibn Musa al Khowarizmi (825 M) dalam buku Al-Jabr Wa-al Muqabla. Dalam bidang pemrograman algoritma didefenisikan sebagai suatu metode khusus yang tepat dan terdiri dari serangkaian langkah yang terstruktur dan dituliskan secara matematis yang akan dikerjakan untuk menyelesaikan suatu masalah dengan bantuan komputer.(jogiyanto, 2005). Terdapat beberapa defenisi yang diberikan untuk kata algoritma antara lain: a) Algoritma adalah sekelompok aturan untuk menyelesaikan perhitungan yang dilakukan oleh tangan atau mesin. b) Algoritma adalah langkah demi langkah sebuah prosedur berhinggga yang dibutuhkan untuk menghasilkan sebuah penyelesaian. c) Algoritma adalah urutan langkah-langkah perhitungan yang mentrasformasikan dari nilai masukan menjadi keluaran.

2 17 d) Algoritma adalah urutan operasi yang dilakukan terhadap data yang terorganisasi dalam struktur data. e) Algoritma adalah sebuah program abstrak yang dapat dieksekusi secara fisik oleh mesin. f) Algoritma adalah sebuah model perhitungan yang akan dilakukan oleh komputer String String dalam ilmu komputer dapat diartikan dengan sekuens dari karakter. Walaupun sering juga dianggap sebagai data abstrak yang menyimpan sekuens nilai data, atau biasanya berupa bytes yang mana merupakan elemen yang digunakan sebagai pembentuk karakter sesuai dengan encoding karakter yang disepakati seperti ASCII, ataupun EBCDIC. Hubungan string dengan tulisan ini adalah bahwa karakteristik dari musik yang akan disimpan dalam database dapat dianggap serupa dengan string. Hal ini akan memudahkan desainer dalam membangun sistem pencocokan audio dari sampel audio yang akan dikonversi terlebih dahulu menjadi serupa dengan string ataupun deretan bytes. Konversi inilah yang nantinya akan dibandingkan langsung dengan informasi karakteristik yang disimpan dalam database String Matching String matching adalah pencarian sebuah pattern pada sebuah teks (Rasool, Akhtar.dkk,2012). Prinsip kerja algoritma string matching adalah sebagai berikut: 1. Memindahkan teks dengan bantuan sebuah window yang ukurannya sama dengan panjang pattern. 2. Menempatkan window pada awal teks. 3. Membandingkan karakter pada window dengan karakter dari pattern. Setelah pencocokan (baik hasilnya cocok atau tidak cocok), dilakukan shift ke kanan pada

3 18 window. Prosedur ini dilakukan berulang-ulang sampai window berada pada akhir teks. Mekanisme ini disebut mekanisme sliding-window. (Febriyan, Rama,2013). Algoritma string matching mempunyai tiga komponen utama, yaitu: 1. Pattern, yaitu deretan karakter yang akan dicocokkan dengan teks, dinyatakan dengan x[0..m-1], panjang pattern dinyatakan dengan m. 2. Teks, yaitu tempat pencocokan pattern dilakukan, dinyatakan dengan y[0..n-1], panjang teks dinyatakan dengan n. 3. Alfabet, yang berisi semua simbol yang digunakan oleh bahasa pada teks dan pattern, dinyatakan dengan Σ dengan ukuran dinyatakan dengan Asize Levenshtein Distance Algoritma Levenshtein merupakan algoritma yang digunakan untuk mencari jumlah operasi string yang paling sedikit untuk mentransformasikan suatu string menjadi string. (Primadani, Yuli. 2014). yang Algoritma ini digunakan dalam pencarian string dengan pendekatan perkiraan (Approximate String Matching). Levehenstein Distance dibuat oleh Vladimir Levehenstein pada tahun Perhitungan edit distance dihitung oleh matriks yang digunakan unuk menghitung jumlah perbedaan string antara dua string. Levenshtein Distance jarak antara dua string didefinisikan sebagai jumlah minimum suntingan yang diperlukan untuk mengubah satu string ke yang lain, dengan diijinkan mengedit operasi yang penyisipan, penghapusan, atau penggantian karakter tunggal. (Singla,Nimisha et al 2012). Perhitungan jarak antara dua string ditentukan dari dua jumlah minimum operasi perubahan untuk membuat string A mejadi string B. Algoritma ini berjalan mulai dari pojok kiri atas sebuah array dua dimensi yang telah diisi sejumlah string awal dan string target dan diberikan nilai cost. Nilai cost pada ujung bawah kanan menjadi nilai edit distance yang mengambarkan jumlah perbedaan dua string. Tabel 2.1 Matriks Perhitungan Edit distance

4 19 s a y a s y a Contoh dari perhitungan Levenshtein mengunakan 2 string yang berbeda kemudian dihitung edit distance nya pada tabel 1. Dapat dilihat dari perhitungan edit distance antara 2 string sya dan saya adalah 1. Pengecekan dimuai dari iterasi awal dari kedua string keudian dilakukan operasi penambahan, penyisipan dan penghapusan. Nilai edit distance nya yaitu pada ujung kanan matriks. Hanya ada satu proses penyisipan yaitu penyisipan karakter a pada string sya sehingga menjadi saya. Pada kasus pengecekan ejaan proses perhitungan ini dilakukan sejumlah kata yang ada pada basis data. Tentu saja untuk saran yang terbaik dibutuhkan daftar kata berbahasa Indonesia yang lengkap. Sehingga kata yang disarankan bisa mendekati yang diharapkan oleh pengguna (Primadani, Yuli 2014). Perhitungan jarak antara dua string ditentukan dari dua jumlah minimum operasi perubahan untuk membuat string A mejadi string B. ada 3 macam operasi utama yang dapat dilakukan algoritma ini yaitu: Operasi Penghapusan Operasi penghapusan dilakukan dengan menghapus karakter pada indeks tertentu untuk menyamakan string sumber (S) dengan string target (T), misalnya S=networking dan T= network. Penghapusan dilakukan untuk karakter i pada indeks ke-7, penghapusan karakter n pada indeks ke-8, penghapusan karakter g pada indeks ke-9. Operasi penghapusan tersebut menunjukkan tranformasi S ke T, ilustrasinya adalah sebagai berikut :

5 20 String S N E T W O R K I N G String T N E T W O R K Operasi Penghapusan Pada Algoritma Levenstein Distance N E T W O R K I N G Operasi Penyisipan Operasi penyisipan dilakukan dengan menyisipkan karakter pada indeks tertentu untuk menyamakan string sumber (S) dengan string target (T), misalnya S= program dan T= pemrograman. Operasi penyisipan dapat dilakukan dengan menyisipkan e pada indeks 1, menyisipkan m pada indeks 2, menyisipkan a pada indeks 9 dan menyisipkan n pada indeks 10. Yang dapat diilustrasikan sebagai berikut: String S

6 P R O G R A M String T P E M R O G R A M A N Operasi Penyisipan Pada Algoritma Levenstein Distance P E M R O G R A M A N Operasi Penukaran Operasi penukaran dilakukan dengan menukar karakter pada indeks tertentu untuk menyamakan string sumber (S) dengan string target (T), misalnya S= computer dan T= komputer. String S ditranformasikan menjadi T dengan melakukan penggantian (substitusi) pada posisi ke-1. Huruf C ditukar menjadi K. Prosesnya dapat diilustrasikan sebagai berikut: String S

7 K O M P U T E R String T C O M P U T E R Algoritma Knuth-Morris-Pratt (KMP) Algoritma Knuth Morris Pratt (KMP) dikembangkan oleh D. E. Knuth, bersama dengan J. H. Morris dan V. R.Pratt. Untuk pencarian string dengan menggunakan algoritma Brute Force, setiap kali ditemukan ketidakcocokan pattern dengan teks, maka pattern akan digeser satu karakter ke kanan.algoritma ini membandingkan pola dengan teks dari kiri ke kanan. (J.C, Prasad et al, 2010). pada algoritma Knuth Morris-Pratt, kita memelihara informasi yang digunakan untuk melakukan jumlah pergeseran. Algoritma KMP digunakan untuk bekerja pada arsitektur yang mendukung string paralel ukuran yang lebih besar. (Rasool, Akhtar et al, 2012). Algoritma menggunakan informasi tersebut untuk membuat pergeseran yang lebih jauh dan melakukan evaluasi waktu (Kourie, Justin et al, 2011) Secara sistematis, langkahlangkah yang dilakukan algoritma Knuth-Morris-Pratt pada saat mencocokkan string : 1. Algoritma Knuth-Morris-Pratt mulai mencocokkan pattern pada awal teks. 2. Dari kiri ke kanan, algoritma ini akan mencocokkan karakter per karakter pattern dengan karakter di teks yang bersesuaian, sampai salah satu kondisi berikut dipenuhi: 1. Karakter di pattern dan di teks yang dibandingkan tidak cocok (mismatch). 2. Semua karakter di pattern cocok. Kemudian algoritma akan memberitahukan penemuan di posisi ini. 3. Algoritma kemudian menggeser pattern berdasarkan tabel, lalu mengulangi langkah 2 sampai pattern berada di ujung teks.

8 23 Pencocokan karakter dari kiri ke kanan mencari prefix terpanjang dari P[0..j-1] yang juga merupakan suffix dari P [1..j-1], untuk menghindari pergeseran yang tidak perlu. Hasil dari pencarian prefix terpanjang disimpan dalam tabel yang disebut juga sebagai failure function. Misalkan panjang string yang telah diperiksa dan cocok = n dan nilai dari failure function adalah M, maka dilakukan pergeseran sebanyak (n-m). Sebagai contoh, diberikan sejumlah karakter sebagai text = ryandhikapriy dan yang akan dicocokkan adalah pattern = dhikapr. Pada karakter pertama d dan kedua h pada pattern terjadi kecocokan (match) pada teks, akan tetapi pada karakter ketiga k terjadi ketidakcocokan (mismatch) pada teks maka proses shift dilakukan dengan berpindah tiga posisi ke arah kanan teks dikarenakan huruf dh dijadikan prefix terpanjang yang akan disimpan kedalam tabel failure function. Selanjutnya berpindah empat posisi ke arah kanan teks menghasil kan prefix dhik, berpindah lagi empat posisi ke arah kanan menghasilkan prefix pattern dhika sehingga terjadi kecocokan pada teks. Contoh penggunaan algoritma string matching KMP, yaitu : Teks : RYAN DHIKAPRIY Pattern : DHIKAPR Cara kerja : String S R Y A N I Y Pattern P Langkah 1 : Bandingkan Pattern [1] dengan String [1] R Y A N I Y Pattern [1] tidak cocok dengan String [1], maka Pattern akan bergeser satu karakter ke kanan.

9 24 Langkah 2 : Bandingkan Pattern [1] dengan String [2] R Y A N I Y Pattern [1] tidak cocok dengan String [2], maka Pattern akan bergeser satu karakter ke kanan. Langkah 3 : Bandingkan Pattern [1] dengan String [3] R Y A N I Y Pattern [1] tidak cocok dengan String [3], maka Pattern akan bergeser satu karakter ke kanan. Langkah 4 : Bandingkan Pattern [1] dengan String [4] R Y A N I Y Pattern [1] tidak cocok dengan String [4], maka Pattern akan bergeser satu karakter ke kanan. Langkah 5 : Bandingkan Pattern [1] dengan String [5] R Y A N I Y Pattern [1] cocok dengan string [5], karena ada kecocokan maka Patternt tidak melakukan pergeseran, akan tetapi membandingkan Pattern [2] dengan String [6]. Langkah 6 : Bandingkan Pattern [2] dengan String [6]

10 25 R Y A N I Y Jika Pattern [2] cocok dengan String [6], maka selanjutnya membandingkan Pattern [3] dan mencocokkan dengan String [7]. Langkah 7 : Bandingkan Pattern [3] dengan String [7] R Y N N I Y Jika Pattern [3] cocok dengan String [7], maka selanjutnya membandingkan Pattern [4] dan mencocokkan dengan String [8]. Langkah 8 : Bandingkan Pattern [4] dengan String [8] R Y A N I Y Pattern [4] cocok dengan String [8], karena ada kecocokan untuk Pattern tidak dilakukan pergeseran dan mencocokkan Pattern [5] dengan String [9]. Langkah 9 : Bandingkan Pattern [5] dengan String [9] R Y A N I Y Pattern [5] cocok dengan String [9], karena ada kecocokan untuk Pattern tidak dilakukan pergeseran dan mencocokkan Pattern [6] dengan String [10]. Langkah 10 : Bandingkan Pattern [6] dengan String [10] R Y A N I Y

11 26 Pattern [6] cocok dengan String [10], karena ada kecocokan untuk Pattern tidak dilakukan pergeseran dan mencocokkan Pattern [7] dengan String [11]. Langkah 11 : Bandingkan Pattern [7] dengan String [11] R Y A N I Y Pattern [7] cocok dengan String [11], pencarian berhenti karena semua karakter di Pattern telah cocok dengan karakter di String meskipun karakter di string belum habis. Jika semua huruf pada Pattern sudah dicocokkan dengan String maka akan ditemukan sebuah pola kosa kata di dalam String. Dalam menemukan sebuah pola Pattern di dalam String akan dilakukan pergeseran beberapa kali untuk mencocokkan setiap huruf pada Pattern yang dimulai dari sebelah kiri untuk mencocokkan setiap huruf pada String. Berikut merupakan pseudocode pada algoritma Knuth-Morris-Pratt : public static int kmpmatch (string text, string pattern) { Int n = text.length(); Int m = pattern.length(); Int fail[] = computefail (pattern); Int i = 0 ; Int j = 0 ; While (i < n) { If (pattern.charat(j) == text.charat(i)) { Return i - m + 1; //match i++; j++; }else if (j > 0) J = fail[j-i];

12 27 else i++; } Return -1; // no match } // end of kmpmatch() Pada fungi KMP panjang teks di masukkan ke dalam variabel n, panjang pattern dimasukkan ke variabel m, i=0 dan j=0, jika i lebih kecil dari pada n jika pattern pada karakter j sama dengan teks pada posisi i maka i m + 1 (match), jika cocok.. i + 1, j+1 (j > 0 ). Jika tidak sama maka j menyimpan (j-i) sebagai failure Function dan i+1. jika j tidak sama dengan i dan j tidak lebih besar daripada 0 maka dikembalikan -1 (no macth) Algoritma Knuth Morris Pratt String Matching Algoritma Knuth Morris Pratt merupakan salah satu algoritma yang sering digunakan untuk menyelesaikan masalah pencocokan string. Algoritma ini adalah penyempurnaan dari algoritma pencocokan string dengan menggunakan algoritma brute force. Pada algoritma brute force, setiap kali ditemukan ketidak cocokan pattern dengan teks, maka pattern akan digeser satu ke kanan. Sedangkan pada algoritma Knuth-Morris-Pratt, kita memelihara informasi yang digunakan untuk melakukan jumlah pergeseran. Algoritma menggunakan informasi tersebut untuk membuat pergeseran angka lebih jauh, tidak hanya satu karakter seperti pada algoritma brute force. Dengan algoritma Knuth Morris Pratt ini, waktu pencarian dapat dikurangi secara signifikan. Algoritma Knuth Morris Pratt ini dikembangakan oleh D. E. Knuth, bersama-sama dengan J. H. Morris dan V. R. Pratt. Algoritma Knuth-Morris-Prath memelihara informasi yang digunakan saat melakukan pergeseran. Informasi ini digunakan untuk melakukan pergeseran yang lebih jauh, tidak seperti brute force yang melakukan pergeseran perkarakter. Pergeseran dilakukan berdasarkan suffix kesamaan suffix dan prefix dalam pattern dan yang

13 28 ditemukan di dalam teks. Dalam algoritma Knuth Morris Pratt ini kita akan menemui beberapa definisi yang nantinya akan digunakan dalam algoritma ini Fungsi Pinggiran Algoritma Knuth Morris Pratt melakukan proses awal atau preproccesing terhadap pattern P dengan menghitung fungsi pinggiran (dalam literatur lain menyebut fungsi overlap, fungsi failure, dsb) yang mengindikasikan pergeseran s terbesar yang mungkin dengan menggunakan perbandingan yang dibentuk sebelum pencarian string. Fungsi pinggiran hanya bergantung pada karakter-karakter di dalam pattern, dan bukan pada kerakter-karekter di dalam teks yang dicari. Oleh karena itu, kita dapat melakukan perhitungan fungsi awalah sebelum pencarian string dilakukan. Fungsi pinggiran b(j) didefinisikan sebagai ukuran awalan terpanjang dari P yang merupakan akhiran dari P[1..j]. Sebagai contoh, tinjau pattern P = abcabd. Nilai F untuk setiap karakter di dalam P adalah sebagai berikut. Tabel 2.1 Fungsi Pinggiran Untuk Pattern abcabd j P(j) a b c a b d B(j) Di bawah ini adalah algoritma untuk menghitung fungsi pinggiran. procedure HitungPinggiran (input m : integer, P : array[1..m] of char,output b : array[1..m] of integer)

14 29 { Menghitung nilai b[1..m] untuk pattern P[1..m] } Deklarasi k,q : integer Algoritma: b[1] 0 q 2 k 0 for q 2 to m do while ((k > 0) and (P[q] P[k+1])) do k b[k] endwhile if P[q]=P[k+1] then k k+1 endif b[q]=k endfor Keterangan :

15 30 Fungsi tersebut akan menghasilkan output berupa array integer yang merupakan angkaangka pinggiran untuk setiap posisi iterasi pada pattern. Barulah kemudian dapat diproses pencocokkan antara pattern dan teks yang diberikan Fungsi Pembandingan String Kemudian cara untuk melakukan pencocokan string dengan menggunakan algoritma Knuth Morris Pratt adalah sebagai berikut. Misal kita akan mencocokan teks T = abcabcabd dan kita mempunyai pattern P = abcabd Teks = abcabcabd Pattern = abcabd Mula-mula kita hitung fungsi pinggiran dari pattern P tersebut. Fungsi pinggiran P = abacabd tertera seperti table 1 di atas. Kemudian lakukan langkah-langkah berikut. Samakan ujung kiri pattern dengan ujung kiri teks. Karakter-karakter pada karakter 1-5 sama, tetapi pada posisi ke 6 tidak sama. Hal itu karena karakter ke 6 pada teks yaitu c tidak sama dengan karakter ke 6 pada pattern yaitu d. Untuk mencocokan kembali, kita harus menggeser pattern. Jika dalam brute force kita akan menggeser pattern 1 karakter ke kanan. Namun jika menggunakan algoritma Knuth Morris Pratt jumlah pergeseran pattern ditentukan oleh pinggiran dari awalan P yang bersesuaian. Pada contoh di atas, awalan yang bersesuaian adalah abcab, dengan panjang l = 5. Pinggiran terpanjang untuk string P[1..5] adalah ab yang panjangnya adalah b(5) = 2. Jarak pergeseran adalah l b = 5 2 = 3. Jadi, pattern P digeser sejauh 3 karakter dan perbandingan dilakukan mulai pada posisi j = 3 dihitung dari awal pattern. j P[j] a b c a b d b(j)

16 31 Teks: Pattern: abcabcabd abcabd j = 3 Telah itu kita kembali membandingkan karakter per karekter seperti di proses sebelumnya sampai kita menemukan teks yang sama dengan pattern hingga karakter terakhir. Algoritma Knuth Morris Pratt selengkapnya adalah sebagai berikut: procedure KMPsearch(input m,n:integer, input P : array[1..m] of char,input T : array[1..n] of char, output idx : integer) { Mencari kecocokan pattern P di dalam teks T dengan algoritma Knuth-Morris- Pratt. Jika ditemukan P di dalam T, lokasi awal kecocokan disimpan di dalam peubah idx. Masukan: pattern P yang panjangnya m dan teks T yang panjangnya n. Teks T direpresentasika

17 32 sebagai string (array of character) Keluaran: posisi awal kecocokan (idx). Jika P tidak ditemukan, idx = - 1. } Deklarasi i, j : integer ketemu : boolean b : array[1..m] of integer procedure HitungPinggiran(input m : integer, P : array[1..m] of char, output b : array[1..m] of integer) { Menghitung nilai b[1..m] untuk pattern P[1..m] } Algoritma: HitungPinggiran(m, P, b) j 0 i 1 ketemu false while (i n and not ketemu) do while((j > 0) and (P[j+1] T[i])) do j b[j]

18 33 endwhile if P[j+1]=T[i] then j j+1 endif if j = m then ketemu true else i i+1 endif endwhile if ketemu then idx i-m+1 { catatan: jika indeks array dimulai dari 0, maka idx i-m } else idx -1 endif Klasifikasi Pencocokan String Pencocokan string (string matching) secara garis besar dapat dibedakan menjadi dua yaitu : 1. Exact string matching, merupakan pencocokan string secara tepat dengan susunan karakter dalam string yang dicocokkan memiliki jumlah maupun urutan karakter

19 34 dalam string yang sama. Contoh : kata step akan menunjukkan kecocokan hanya dengan kata step. 2. Inexact string matching atau Fuzzy string matching, merupakan pencocokan string secara samar, maksudnya pencocokan string dimana string yang dicocokkan memiliki kemiripan dimana keduanya memiliki susunan karakter yang berbeda (mungkin jumlah atau urutannya) tetapi string-string tersebut memiliki kemiripan baik kemiripan tekstual/penulisan (approximate string matching) atau kemiripan ucapan (phonetic string matching). Inexact string matching masih dapat dibagi lagi menjadi dua yaitu : a. Pencocokan string berdasarkan kemiripan penulisan (approximate string matching) merupakan pencocokan string dengan dasar kemiripan dari segi penulisannya (jumlahah karakter, susunan karakter dalam dokumen).tingkat kemiripan ditentukan dengan jauh tidaknya beda penulisan dua buah string yang dibandingkan tersebut dan nilai tingkat kemiripan ini ditentukan oleh pemrogram (programmer). Contoh : compuler dengan compiler, memiliki jumlahah karakter yang sama tetapi ada dua karakter yang berbeda. Jika perbedaan dua karakter ini dapat ditoleransi sebagai sebuah kesalahan penulisan maka dua string tersebut dikatakan cocok. b. Pencocokan string berdasarkan kemiripan ucapan (phonetic string matching) merupakan pencocokan string dengan dasar kemiripan dari segi pengucapannya meskipun ada perbedaan penulisan dua string yang dibandingkan tersebut. Contoh step dengan step dari tulisan berbeda tetapi dalam pengucapannya mirip sehingga dua string tersebut dianggap cocok. Contoh yang lain adalah step, dengan steppe, sttep, stepp, stepe. Exact string matching bermanfaat jika pengguna ingin mencari string dalam dokumen yang sama persis dengan string masukan. Tetapi jika pengguna menginginkan pencarian string yang mendekati dengan string masukan atau terjadi kesalahan penulisan string masukan maupun dokumen objek pencarian, maka inexact string matching yang bermanfaat.

20 Penelitian Yang Relevan. Algoritma Levenshtein Distance terbukti dapat menyelesaikan beberapa permasalahan dalam penelitian ilmiah, penelitian yang pernah dilakukan yang berkaitan dengan algoritma Levenshtein Distance, diantaranya yaitu (Primadani, Yuli. 2014). Algoritma Levenshtein Distance pada fitur Autocomplete pada Aplikasi Katalog Perpustakaan. Layanan autocomplete (Word completion) telah banyak digunakan pada penelitian terdahulu. layanan autocomplete juga pernah diterapkan pada Smart Phones (Pradhana, 2012), dengan menggunakan kombinasi algoritma Brute Force, Boyer- Moore dan Knuth-Morris Pratt. Penelitian yang pernah dilakukan yang berkaitan dengan algoritma Knuth- Morris Pratt yaitu (Handari Ekaputri,Gahayu. 2007). Aplikasi Algoritma Pencarian String Knuth-Morris-Pratt dalam Permainan Word Search kesimpulan nya adalah algoritma KMP dapat menyimpan sebuah informasi yang digunakan untuk melakukan jumlah pergeseran, sehingga algoritma ini melakukan pergeseran lebih jauh tidak hanya bergeser satu karakter. Penelitian tentang string matching juga pernah dilakukan oleh (Singla, Nimisha,2012) dengan judul String Matching Algorithms and their Applicability in various Applications. kesimpulan nya adalah jarak antara dua string didefinisikan sebagai jumlah minimum yang diperlukan untuk mengubah satu string ke yang lain, dengan diijinkan mengedit operasi penyisipan, penghapusan, atau penggantian karakter tunggal.

Penerapan Algoritma Pencocokan String Knuth-Morris-Pratt Sebagai Algoritma Pencocokan DNA

Penerapan Algoritma Pencocokan String Knuth-Morris-Pratt Sebagai Algoritma Pencocokan DNA Penerapan Algoritma Pencocokan String Knuth-Morris-Pratt Sebagai Algoritma Pencocokan DNA Kukuh Nasrul Wicaksono Departemen Teknik Informatika Institut Teknologi Bandung Jalan Ganesha No 10 Bandung Indonesia

Lebih terperinci

Analisis Algoritma Knuth Morris Pratt dan Algoritma Boyer Moore dalam Proses Pencarian String

Analisis Algoritma Knuth Morris Pratt dan Algoritma Boyer Moore dalam Proses Pencarian String Analisis Algoritma Knuth Morris Pratt dan Algoritma Boyer Moore dalam Proses Pencarian String Rama Aulia Program Studi Teknik Informatika, Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung

Lebih terperinci

Penggunaan Algoritma Knuth-Morris-Pratt untuk Pengecekan Ejaan

Penggunaan Algoritma Knuth-Morris-Pratt untuk Pengecekan Ejaan Penggunaan Algoritma Knuth-Morris-Pratt untuk Pengecekan Ejaan Andreas Dwi Nugroho - 13511051 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha

Lebih terperinci

APLIKASI ALGORITMA PENCOCOKAN STRING KNUTH-MORRIS-PRATT (KPM) DALAM PENGENALAN SIDIK JARI

APLIKASI ALGORITMA PENCOCOKAN STRING KNUTH-MORRIS-PRATT (KPM) DALAM PENGENALAN SIDIK JARI APLIKASI ALGORITMA PENCOCOKAN STRING KNUTH-MORRIS-PRATT (KPM) DALAM PENGENALAN SIDIK JARI Winda Winanti Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika, Institut Teknologi Bandung

Lebih terperinci

Pengaplikasian Algoritma Knuth-Morris-Pratt dalam Teknik Kompresi Data

Pengaplikasian Algoritma Knuth-Morris-Pratt dalam Teknik Kompresi Data Pengaplikasian Algoritma Knuth-Morris-Pratt dalam Teknik Kompresi Data I Nyoman Prama Pradnyana - 13509032 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung,

Lebih terperinci

BAB 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA 7 BAB 2 TINJAUAN PUSTAKA 2.1. Definisi Algoritma 2.1.1 Algoritma Istilah algoritma (algorithm) berasal dari kata algoris dan ritmis, yang pertama kali diungkapkan oleh Abu Ja far Mohammed Ibn Musa al Khowarizmi

Lebih terperinci

APLIKASI ALGORITMA KNUTH-MORRIS-PRATT DALAM CONTENT-BASED MUSIC INFORMATION RETRIEVAL

APLIKASI ALGORITMA KNUTH-MORRIS-PRATT DALAM CONTENT-BASED MUSIC INFORMATION RETRIEVAL APLIKASI ALGORITMA KNUTH-MORRIS-PRATT DALAM CONTENT-BASED MUSIC INFORMATION RETRIEVAL Mohammad Rizky Adrian 13507108 Jurusan Teknik Informatika, Institut Teknologi Bandung, Indonesia Bandung, Jawa Barat,

Lebih terperinci

Algoritma Pencarian String Knuth-Morris-Pratt Dalam Pengenalan Tulisan Tangan

Algoritma Pencarian String Knuth-Morris-Pratt Dalam Pengenalan Tulisan Tangan Algoritma Pencarian String Knuth-Morris-Pratt Dalam Pengenalan Tulisan Tangan Andri Rizki Aminulloh Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika, Institut Teknologi Bandung Jalan

Lebih terperinci

Penerapan Pencocokan String pada Aplikasi Kamusku Indonesia

Penerapan Pencocokan String pada Aplikasi Kamusku Indonesia Penerapan Pencocokan String pada Aplikasi Kamusku Indonesia Reno Rasyad - 13511045 1 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10 Bandung

Lebih terperinci

Penerapan String Matching pada Fitur Auto Correct dan Fitur Auto Text di Smart Phones

Penerapan String Matching pada Fitur Auto Correct dan Fitur Auto Text di Smart Phones Penerapan String Matching pada Fitur Auto Correct dan Fitur Auto Text di Smart Phones Fandi Pradhana/13510049 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi

Lebih terperinci

Aplikasi Algoritma Pencocokan String pada Mesin Pencari Berita

Aplikasi Algoritma Pencocokan String pada Mesin Pencari Berita Aplikasi Pencocokan String pada Mesin Pencari Berita Patrick Nugroho Hadiwinoto / 13515040 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1 Definisi Kamus Kamus adalah sejenis buku rujukan yang menerangkan makna kata-kata. Kamus berfungsi untuk membantu seseorang mengenal perkataan baru. Selain menerangkan maksud kata

Lebih terperinci

Penerapan Algoritma Knuth-Morris-Pratt dalam Music Identification (Musipedia)

Penerapan Algoritma Knuth-Morris-Pratt dalam Music Identification (Musipedia) Penerapan Algoritma Knuth-Morris-Pratt dalam Music Identification Musipedia Adi Nugraha Setiadi 13508062 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung,

Lebih terperinci

Penilaian Ujian Tertulis Menggunakan Algoritma Pattern Matching IF3051 Strategi Algoritma

Penilaian Ujian Tertulis Menggunakan Algoritma Pattern Matching IF3051 Strategi Algoritma Penilaian Ujian Tertulis Menggunakan Algoritma Pattern Matching IF3051 Strategi Algoritma Muhammad Maulana ABdullah 13508053 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut

Lebih terperinci

Penerapan Pencocokan String dalam Aplikasi Duolingo

Penerapan Pencocokan String dalam Aplikasi Duolingo Penerapan Pencocokan String dalam Aplikasi Duolingo Reno Rasyad 13511045 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10 Bandung 40132,

Lebih terperinci

Implementasi Algoritma Knuth-Morris-Pratt Pada Fungsi Pencarian Judul Tugas Akhir Repository

Implementasi Algoritma Knuth-Morris-Pratt Pada Fungsi Pencarian Judul Tugas Akhir Repository 115 Implementasi Algoritma Knuth-Morris-Pratt Pada Fungsi Pencarian Judul Tugas Akhir Repository Halimah Tus Sa diah Manajemen Informatika, Universitas Pakuan Jl. Ciheuleut Pakuan PO Box 452 Bogor 16143

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1. Algoritma Istilah algoritma (algorithm) berasal dari kata algoris dan ritmis, yang pertama kali diungkapkan oleh Abu Ja far Mohammed Ibn Musa al Khowarizmi (825 M) dalam buku

Lebih terperinci

Aplikasi String Matching Pada Fitur Auto-Correct dan Word-Suggestion

Aplikasi String Matching Pada Fitur Auto-Correct dan Word-Suggestion Aplikasi String Matching Pada Fitur Auto-Correct dan Word-Suggestion Johan - 13514206 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10

Lebih terperinci

Algoritma String Matching pada Mesin Pencarian

Algoritma String Matching pada Mesin Pencarian Algoritma String Matching pada Mesin Pencarian Harry Octavianus Purba 13514050 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Bandung, Indonesia 13514050@stei.itb.ac.id Proses

Lebih terperinci

Penerapan Algoritma String Matching dalam Intelligent Personal Assistant Siri

Penerapan Algoritma String Matching dalam Intelligent Personal Assistant Siri Penerapan lgoritma String Matching dalam Intelligent Personal ssistant Siri dya Naufal Fikri - 13515130 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi andung,

Lebih terperinci

Penggunaan Algoritma Pencocokkan Pola pada Sistem Barcode

Penggunaan Algoritma Pencocokkan Pola pada Sistem Barcode Penggunaan Algoritma Pencocokkan Pola pada Sistem Barcode Hishshah Ghassani - 13514056 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, JL. Ganesha 10

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1. Pengertian Aplikasi Berbasis Web Aplikasi merupakan program yang berisikan perintah-perintah untuk melakukan pengolahan data. Secara umum, aplikasi adalah suatu proses dari cara

Lebih terperinci

Aplikasi String Matching pada Plugin SMS Blocker untuk Validasi Pesan

Aplikasi String Matching pada Plugin SMS Blocker untuk Validasi Pesan Aplikasi String Matching pada Plugin SMS Blocker untuk Validasi Pesan Mario Tressa Juzar 13512016 1 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl.

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1. Information Retrieval System 2.1.1. Pengertian Information Retrieval System Information retrieval system merupakan bagian dari bidang ilmu komputer yang bertujuan untuk pengambilan

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI 7 BAB II LANDASAN TEORI 1.8. Quer Quer adalah satu atau beberapa kata atau frase / kalimat ang di masukan / di ketikan oleh pengguna saat melakukan pencarian pada search engine (google atau search engine

Lebih terperinci

Penerapan Algoritma Pattern Matching untuk Mengidentifikasi Musik Monophonic

Penerapan Algoritma Pattern Matching untuk Mengidentifikasi Musik Monophonic Penerapan Algoritma Pattern Matching untuk Mengidentifikasi Musik Monophonic Fahziar Riesad Wutono (13512012) 1 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi

Lebih terperinci

Perbandingan Penggunaan Algoritma BM dan Algoritma Horspool pada Pencarian String dalam Bahasa Medis

Perbandingan Penggunaan Algoritma BM dan Algoritma Horspool pada Pencarian String dalam Bahasa Medis Perbandingan Penggunaan BM dan Horspool pada Pencarian String dalam Bahasa Medis Evlyn Dwi Tambun / 13509084 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung,

Lebih terperinci

Penerapan String Matching Pada Auto-Correct Berbasis Algoritma Levenshtein Distance

Penerapan String Matching Pada Auto-Correct Berbasis Algoritma Levenshtein Distance Penerapan String Matching Pada Auto-Correct Berbasis Algoritma Levenshtein Distance Adam Rotal Yuliandaru 13514091 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi

Lebih terperinci

Perbandingan Algoritma Knuth-Morris-Pratt dan Algoritma Boyer-Moore dalam Pencarian Teks di Bahasa Indonesia dan Inggris

Perbandingan Algoritma Knuth-Morris-Pratt dan Algoritma Boyer-Moore dalam Pencarian Teks di Bahasa Indonesia dan Inggris Perbandingan Algoritma Knuth-Morris-Pratt dan Algoritma Boyer-Moore dalam Pencarian Teks di Bahasa Indonesia dan Inggris Kevin Wibowo-13509065 Program Studi Teknik Informatika Sekolah Teknik Elektro dan

Lebih terperinci

Algoritma Pencarian String dalam Pemilihan Anggota Sebuah Organisasi

Algoritma Pencarian String dalam Pemilihan Anggota Sebuah Organisasi Algoritma Pencarian String dalam Pemilihan Anggota Sebuah Organisasi Kevin Alfianto Jangtjik / 13510043 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung,

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang Berkomunikasi satu sama lain merupakan salah satu sifat dasar manusia. Komunikasi berfungsi sebagai sarana untuk saling berinteraksi satu sama lain. Manusia terkadang

Lebih terperinci

Analisis Plagiarisme dalam Dua Buah Lagu Yang Berbeda dengan Algoritma Pattern Matching

Analisis Plagiarisme dalam Dua Buah Lagu Yang Berbeda dengan Algoritma Pattern Matching Analisis Plagiarisme dalam Dua Buah Lagu Yang Berbeda dengan Algoritma Pattern Matching Ega Rifqi Saputra (13515015) Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1 Kamus Kamus merupakan buku rujukan yang berisi penjelasan terkait dengan makna katakata. Kamus berfungsi untuk membantu seseorang mengenal perkataan baru. Selain menerangkan makna

Lebih terperinci

Perbandingan Algoritma String Matching yang Digunakan dalam Pencarian pada Search Engine

Perbandingan Algoritma String Matching yang Digunakan dalam Pencarian pada Search Engine Perbandingan Algoritma String Matching yang Digunakan dalam Pencarian pada Search Engine Eldwin Christian / 13512002 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI 6 BAB 2 LANDASAN TEORI 2. Information Retrieval Information Retrieval atau sering disebut temu kembali infromasi adalah suatu sistem yang mampu melakukan penyimpanan, pencarian, dan pemeliharaan informasi.

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI Pada bab ini akan dibahas tentang teori-teori dan konsep dasar yang mendukung pembahasan dari sistem yang akan dibuat. 2.1. Katalog Perpustakaan Katalog perpustakaan merupakan suatu

Lebih terperinci

Aplikasi Algoritma Pencarian String Dalam Sistem Pembayaran Parkir

Aplikasi Algoritma Pencarian String Dalam Sistem Pembayaran Parkir Aplikasi Algoritma Pencarian String Dalam Sistem Pembayaran Parkir Andi Kurniawan Dwi P - 13508028 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl.

Lebih terperinci

BAB 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA BAB 2 TINJAUAN PUSTAKA 2.1 Karakter ASCII ASCII (American Standard Code for Information Interchange) merupakan suatu standar internasional dalam kode huruf dan simbol seperti Hex dan Unicode. Kode ASCII

Lebih terperinci

String Matching Dalam Permainan The Hunt for Gollum

String Matching Dalam Permainan The Hunt for Gollum String Matching Dalam Permainan The Hunt for Gollum Ligar Mugi Syahid (10111053) Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10 Bandung

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1. Algoritma Algoritma adalah urutan langkah-langkah penyelesaian masalah yang disusun secara matematis dan logis. Tanpa kita sadari, kebanyakan dari kegiatan yang kita lakukan setiap

Lebih terperinci

ANALISIS STRING MATCHING PADA JUDUL SKRIPSI DENGAN ALGORITMA KNUTH-MORRIS PRATT (KMP)

ANALISIS STRING MATCHING PADA JUDUL SKRIPSI DENGAN ALGORITMA KNUTH-MORRIS PRATT (KMP) ANALISIS STRING MATCHING PADA JUDUL SKRIPSI DENGAN ALGORITMA KNUTH-MORRIS PRATT (KMP) Wistiani Astuti whistieruslank@gmail.com Teknik Informatika, Universitas Muslim Indonesia Abstrak Skripsi adalah suatu

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1 Kamus Menurut Lauder (2005:223), Kamus adalah sebuah karya yang berfungsi sebagai referensi. Kamus pada umumnya berupa senarai kata yang disusun secara alfabetis. Selain itu, disertakan

Lebih terperinci

Pattern Matching dalam Aplikasi Pencarian Jodoh

Pattern Matching dalam Aplikasi Pencarian Jodoh Pattern Matching dalam Aplikasi Pencarian Jodoh Dini Lestari Tresnani - 13508096 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10 Bandung

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1. Algoritma Istilah algoritma (algorithm) berasal dari kata algoris dan ritmis, yang pertama kali diungkapkan oleh Abu Ja far Mohammed Ibn Musa al Khowarizmi (825 M) dalam buku

Lebih terperinci

Implementasi Algoritma Knuth Morris Pratt pada Alat Penerjemah Suara

Implementasi Algoritma Knuth Morris Pratt pada Alat Penerjemah Suara Implementasi Algoritma Knuth Morris Pratt pada Alat Penerjemah Suara Bima Laksmana Pramudita (13511042) Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung,

Lebih terperinci

Penggunaan String Matching Dalam Mencari Kata Dalam Permainan Mencari Kata Dari Sebuah Matriks Huruf

Penggunaan String Matching Dalam Mencari Kata Dalam Permainan Mencari Kata Dari Sebuah Matriks Huruf Penggunaan String Matching Dalam Mencari Kata Dalam Permainan Mencari Kata Dari Sebuah Matriks Huruf Luthfi Kurniawan 13514102 1 Program Studi Informatika Sekolah Teknik Elektro dan Informatika Institut

Lebih terperinci

A. Pencocokan String Pencocokan string adalah cara untuk mencari sebuah teks

A. Pencocokan String Pencocokan string adalah cara untuk mencari sebuah teks Penerapan Pencocokan String pada Pencarian Akun di Media Sosial Instagram Radiyya Dwisaputra/13515023 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung,

Lebih terperinci

Algoritma Brute Force (lanjutan)

Algoritma Brute Force (lanjutan) Algoritma Brute Force (lanjutan) Contoh-contoh lain 1. Pencocokan String (String Matching) Persoalan: Diberikan a. teks (text), yaitu (long) string yang panjangnya n karakter b. pattern, yaitu string dengan

Lebih terperinci

Mencari Pola dalam Gambar dengan Algoritma Pattern Matching

Mencari Pola dalam Gambar dengan Algoritma Pattern Matching Mencari Pola dalam Gambar dengan Algoritma Pattern Matching Muhammad Farhan Majid (13514029) Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha

Lebih terperinci

Penerapan Algoritma String Matching untuk Mendeteksi Musik Plagiat

Penerapan Algoritma String Matching untuk Mendeteksi Musik Plagiat Penerapan Algoritma String Matching untuk Mendeteksi Musik Plagiat Muhammad Zen - 13511060 1 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha

Lebih terperinci

PENERAPAN ALGORITMA BFS DFS DAN KNUTH-MORRIS-PRATT PADA PENCARIAN BERKAS DALAM KOMPUTER

PENERAPAN ALGORITMA BFS DFS DAN KNUTH-MORRIS-PRATT PADA PENCARIAN BERKAS DALAM KOMPUTER PENERAPAN ALGORITMA BFS DFS DAN KNUTH-MORRIS-PRATT PADA PENCARIAN BERKAS DALAM KOMPUTER Bobby H. Suryanaga / 13508022 1 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut

Lebih terperinci

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

BAB 3 ANALISIS DAN PERANCANGAN SISTEM BAB 3 ANALISIS DAN PERANCANGAN SISTEM 3.1. Analisis Sistem Analisis sistem dapat didefinisikan sebagai penguraian dari suatu sistem informasi yang utuh ke dalam bagian-bagian komponennya dengan maksud

Lebih terperinci

BAB I PENDAHULUAN 1.1. Latar Belakang

BAB I PENDAHULUAN 1.1. Latar Belakang BAB I PENDAHULUAN 1.1. Latar Belakang Perkembangan teknologi sudah dirasakan penting oleh manusia dalam era globalisasi saat ini. Hal itu terjadi karena kemajuan teknologi yang ada tidak dapat dipisahkan

Lebih terperinci

Algoritma Cepat Pencocokkan String

Algoritma Cepat Pencocokkan String Algoritma Cepat Pencocokkan String Daniar Heri Kurniawan / 352064 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 0 Bandung 4032, Indonesia

Lebih terperinci

Penggunaan Algoritma Boyer Moore Untuk Pencarian Arsip Multimedia Pada Perangkat Lunak Pemutar Media

Penggunaan Algoritma Boyer Moore Untuk Pencarian Arsip Multimedia Pada Perangkat Lunak Pemutar Media Penggunaan Algitma Boyer Moe Untuk Pencarian Arsip Multimedia Pada Perangkat Lunak Pemutar Media Archie Anugrah - 13508001 Program Studi Teknik Infmatika Sekolah Teknik Elektro dan Infmatika Institut Teknologi

Lebih terperinci

Algoritma Brute Force(lanjutan) Lecture 6 CS3024

Algoritma Brute Force(lanjutan) Lecture 6 CS3024 Algoritma Brute Force(lanjutan) Lecture 6 CS3024 String Matching Persoalan: Diberikan a. teks (text), yaitu (long) stringyang panjangnya n karakter b. pattern, yaitu string dengan panjang m karakter (m

Lebih terperinci

IMPLEMENTASI ALGORITMA KNUTH MORRIS PRATT PADA APLIKASI PENERJEMAHAN BAHASA MANDAILING-INDONESIA

IMPLEMENTASI ALGORITMA KNUTH MORRIS PRATT PADA APLIKASI PENERJEMAHAN BAHASA MANDAILING-INDONESIA IMPLEMENTASI ALGORITMA KNUTH MORRIS PRATT PADA APLIKASI PENERJEMAHAN BAHASA MANDAILING-INDONESIA Rivalri Kristianto Hondro 1, Zumrotul Aqobah Hsb 2, Suginam 3, Ronda Deli Sianturi 4 1, 3, 4 Dosen Tetap

Lebih terperinci

Aplikasi Algoritma BFS dan String Matching pada Tag Suggestions di Facebook

Aplikasi Algoritma BFS dan String Matching pada Tag Suggestions di Facebook Aplikasi Algoritma BFS dan String Matching pada Tag Suggestions di Facebook Catherine Pricilla 13514004 1 Program Studi Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl.

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1 String Matching 2.1.1 Pengertian String Matching String matching adalah pencarian sebuah pattern pada sebuah teks (Cormen, T.H. et al. 1994). String matching digunakan untuk menemukan

Lebih terperinci

ANALISA PERBANDINGAN ALGORITMA BRUTE FORCE DAN BOYER MOORE DALAM PENCARIAN WORD SUGGESTION MENGGUNAKAN METODE PERBANDINGAN EKSPONENSIAL

ANALISA PERBANDINGAN ALGORITMA BRUTE FORCE DAN BOYER MOORE DALAM PENCARIAN WORD SUGGESTION MENGGUNAKAN METODE PERBANDINGAN EKSPONENSIAL ANALISA PERBANDINGAN ALGORITMA BRUTE FORCE DAN BOYER MOORE DALAM PENCARIAN WORD SUGGESTION MENGGUNAKAN METODE PERBANDINGAN EKSPONENSIAL Andri Januardi (09115) Mahasiswa Program Studi Teknik Informatika

Lebih terperinci

PENGGUNAAN ALGORITMA APOSTOLICO-CROCHEMORE PADA PROSES PENCARIAN STRING DI DALAM TEKS

PENGGUNAAN ALGORITMA APOSTOLICO-CROCHEMORE PADA PROSES PENCARIAN STRING DI DALAM TEKS PENGGUNAAN ALGORITMA APOSTOLICO-CROCHEMORE PADA PROSES PENCARIAN STRING DI DALAM TEKS Sindy Gita Ratri Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung

Lebih terperinci

BAB I PENDAHULUAN Latar Belakang

BAB I PENDAHULUAN Latar Belakang 1 BAB I PENDAHULUAN 1.1. Latar Belakang Perkembangan dunia IT (Information Technology) dengan hadirnya mesin pencarian (Search Engine) di dalam sistem komputer yang merupakan salah satu fasilitas internet

Lebih terperinci

Algoritma Brute Force (Bagian 1) Oleh: Rinaldi Munir

Algoritma Brute Force (Bagian 1) Oleh: Rinaldi Munir Algoritma Brute Force (Bagian 1) Oleh: Rinaldi Munir Bahan Kuliah IF2251 Strategi Algoritmik 1 Definisi Brute Force Brute force : pendekatan yang lempang (straightforward) untuk memecahkan suatu masalah

Lebih terperinci

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA BAB II TINJAUAN PUSTAKA 2.1 Arsip Dalam Undang-Undang No.43 Tahun 2009 menjelaskan bahwa arsip adalah rekaman kegiatan atau peristiwa dalam bentuk dan media sesuai dengan perkembangan teknologi informasi

Lebih terperinci

II. DASAR TEORI I. PENDAHULUAN

II. DASAR TEORI I. PENDAHULUAN Pencocokan Poligon Menggunakan Algoritma Pencocokan String Wiwit Rifa i 13513073 1 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10 Bandung

Lebih terperinci

Penerapan Algoritma Pencocokan String dan Runut Balik untuk Pendeteksian Kesalahan dan Sugesti Kata

Penerapan Algoritma Pencocokan String dan Runut Balik untuk Pendeteksian Kesalahan dan Sugesti Kata Penerapan Algoritma Pencocokan String dan Runut Balik untuk Pendeteksian Kesalahan dan Sugesti Kata Erick Chandra/13513021 1 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut

Lebih terperinci

Penerapan Algoritma Knuth Morris Pratt dalam Aplikasi Penerjemah Teks

Penerapan Algoritma Knuth Morris Pratt dalam Aplikasi Penerjemah Teks Penerapan Algoritma Knuth Morris Pratt dalam Aplikasi Penerjemah Teks Okharyadi Saputra (13510072) Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl.

Lebih terperinci

Team project 2017 Dony Pratidana S. Hum Bima Agus Setyawan S. IIP

Team project 2017 Dony Pratidana S. Hum Bima Agus Setyawan S. IIP Hak cipta dan penggunaan kembali: Lisensi ini mengizinkan setiap orang untuk menggubah, memperbaiki, dan membuat ciptaan turunan bukan untuk kepentingan komersial, selama anda mencantumkan nama penulis

Lebih terperinci

Algoritma Brute Force (Bagian 2) Oleh: Rinaldi Munir Bahan Kuliah IF2251 Strategi Algoritmik

Algoritma Brute Force (Bagian 2) Oleh: Rinaldi Munir Bahan Kuliah IF2251 Strategi Algoritmik Algoritma Brute Force (Bagian 2) Oleh: Rinaldi Munir Bahan Kuliah IF2251 Strategi Algoritmik 1 Contoh-contoh lain 1. Pencocokan String (String Matching) Persoalan: Diberikan a. teks (text), yaitu (long)

Lebih terperinci

PENCARIAN BERUNTUN (SEQUENTIAL SEARCHING)

PENCARIAN BERUNTUN (SEQUENTIAL SEARCHING) PENCARIAN BERUNTUN (SEQUENTIAL SEARCHING) a. Introduction b. Tanpa Boolean c. Dengan Boolean d. Penggunaan dalam Fungsi INTRODUCTION Merupakan algoritma pencarian yang paling sederhana. Proses Membandingkan

Lebih terperinci

Volume VI No 1, Juni 2017 pissn : eissn : X. Tersedia online di

Volume VI No 1, Juni 2017 pissn : eissn : X. Tersedia online di Volume VI No 1, Juni 2017 pissn : 2337 3601 eissn : 2549 015X Tersedia online di http://ejournal.stmik-time.ac.id Analisa Perbandingan Boyer Moore Dan Knuth Morris Pratt Dalam Pencarian Judul Buku Menerapkan

Lebih terperinci

PERANCANGAN APLIKASI TEXT EDITOR DENGAN MENERAPKAN ALGORITMA KNUTH-MORRIS-PRATT

PERANCANGAN APLIKASI TEXT EDITOR DENGAN MENERAPKAN ALGORITMA KNUTH-MORRIS-PRATT Jurnal Riset Komputer (JURIKOM), Vol. No., Agustus ISSN -X (Media Cetak) Hal : - PERANCANGAN APLIKASI TEXT EDITOR DENGAN MENERAPKAN ALGORITMA KNUTH-MORRIS-PRATT Firman Matondang, Nelly Astuti Hasibuan,

Lebih terperinci

Penerapan Algoritma Pencocokan String Boyer-Moore untuk Keamanan Komputer

Penerapan Algoritma Pencocokan String Boyer-Moore untuk Keamanan Komputer Penerapan Algoritma Pencocokan String Boyer-Moore untuk Keamanan Komputer Eric Cahya Lesmana 13508097 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung,

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1. Pengertian Hadits Menurut pendapat muhaddihin muta akhirin, di antaranya dikemukakan oleh ibn Salah (w. 643 H/1245 M) dalam muqaddimah-nya. Hadits shahih adalah hadits yang bersambung

Lebih terperinci

PERBANDINGAN ALGORITMA STRING SEARCHING BRUTE FORCE, KNUTH MORRIS PRATT, BOYER MOORE, DAN KARP RABIN PADA TEKS ALKITAB BAHASA INDONESIA

PERBANDINGAN ALGORITMA STRING SEARCHING BRUTE FORCE, KNUTH MORRIS PRATT, BOYER MOORE, DAN KARP RABIN PADA TEKS ALKITAB BAHASA INDONESIA PERBANDINGAN ALGORITMA STRING SEARCHING BRUTE FORCE, KNUTH MORRIS PRATT, BOYER MOORE, DAN KARP RABIN PADA TEKS ALKITAB BAHASA INDONESIA Darmawan Utomo Eric Wijaya Harjo Handoko Fakultas Teknik Program

Lebih terperinci

ijns.org Indonesian Journal on Networking and Security - Volume 6 No

ijns.org Indonesian Journal on Networking and Security - Volume 6 No Implementasi Algoritma String Matching Dalam Pencarian Surah Dan Ayat Dalam Al-Quran Berbasis Web Muhamad Syarif Program Studi Manajemen Informatika, AMIK BSI Pontianak muhamad.syarif.1491@gmail.com Abstract

Lebih terperinci

Algoritma Brute Force

Algoritma Brute Force Algoritma Brute Force Definisi Brute Force Brute force adalah sebuah pendekatan yang lempang (straightforward( straightforward) ) untuk memecahkan suatu masalah, biasanya didasarkan pada pernyataan masalah

Lebih terperinci

PENERAPAN STRING MATCHING DENGAN ALGORITMA BOYER MOORE PADA APLIKASI FONT ITALIC UNTUK DETEKSI KATA ASING

PENERAPAN STRING MATCHING DENGAN ALGORITMA BOYER MOORE PADA APLIKASI FONT ITALIC UNTUK DETEKSI KATA ASING PENERAPAN STRING MATCHING DENGAN ALGORITMA BOYER MOORE PADA APLIKASI FONT ITALIC UNTUK DETEKSI KATA ASING Rohmat Indra Borman 1), Agus Pratama 2) 1) Komputerisasi Akuntansi, STMIK Teknokrat 2) Teknik Informatika,

Lebih terperinci

Penerapan Algoritma Pencocokan String dalam Perangkat Lunak Pemblokir Akses Situs Negatif

Penerapan Algoritma Pencocokan String dalam Perangkat Lunak Pemblokir Akses Situs Negatif Penerapan Algoritma Pencocokan String dalam Perangkat Lunak Pemblokir Akses Situs Negatif Ahmad Aidin - 13513020 Program Studi Informatika, Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung

Lebih terperinci

Algoritma Brute Force

Algoritma Brute Force Algoritma Brute Force Deskripsi Materi ini membahas tentang algoritma brute force dengan berbagai studi kasus Definisi Brute Force Straighforward (lempeng) Sederhana dan jelas Lebih mempertimbangkan solusi

Lebih terperinci

Aplikasi Algoritma Pencocokan String dan Algoritma Runut Balik dalam Konversi Romaji ke Hangul

Aplikasi Algoritma Pencocokan String dan Algoritma Runut Balik dalam Konversi Romaji ke Hangul Aplikasi Algoritma Pencocokan String dan Algoritma Runut Balik dalam Konversi Romaji ke Hangul Denita Hanna Widiastuti - 13514008 Program Studi Informatika Sekolah Teknik Elektro dan Informatika Institut

Lebih terperinci

BAB 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA BAB 2 TINJAUAN PUSTAKA 2.1. Algoritma Algoritma ditemukan oleh seorang ahli matematika dari Uzbekistan, yang bernama Abu Ja far Muhammad Ibnu Al-Kwarizmi (770-840). Dalam bukunya yang berjudul Al-Jabr

Lebih terperinci

PENERAPAN ALGORITMA BOYER MOORE PADA POSTING TWITTER TMC POLDA METRO JAYA UNTUK MELAPORKAN KONDISI LALULINTAS DAN RUTE JALAN KOTA JAKARTA

PENERAPAN ALGORITMA BOYER MOORE PADA POSTING TWITTER TMC POLDA METRO JAYA UNTUK MELAPORKAN KONDISI LALULINTAS DAN RUTE JALAN KOTA JAKARTA PENERAPAN ALGORITMA BOYER MOORE PADA POSTING TWITTER TMC POLDA METRO JAYA UNTUK MELAPORKAN KONDISI LALULINTAS DAN RUTE JALAN KOTA JAKARTA Rudi Setiawan Program Studi Sistem Informasi, Fakultas Telematika,

Lebih terperinci

Pattern Matching dalam Aplikasi SimSimi

Pattern Matching dalam Aplikasi SimSimi Pattern Matching dalam Aplikasi SimSimi Diah Fauziah - 13512049 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10 Bandung 40132, Indonesia

Lebih terperinci

Implementasi Pencocokan String Tidak Eksak dengan Algoritma Program Dinamis

Implementasi Pencocokan String Tidak Eksak dengan Algoritma Program Dinamis Implementasi Pencocokan String Tidak Eksak dengan Algoritma Program Dinamis Samudra Harapan Bekti 13508075 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung,

Lebih terperinci

IMPLEMENTASI ALGORITMA BOYER-MOORE PADA PERMAINAN WORD SEARCH PUZZLE

IMPLEMENTASI ALGORITMA BOYER-MOORE PADA PERMAINAN WORD SEARCH PUZZLE IMPLEMENTASI ALGORITMA BOYER-MOORE PADA PERMAINAN WORD SEARCH PUZZLE Steven Kristanto G 1 Antonius Rachmat C 2 R. Gunawan Santosa 3 stev_en12@yahoo.co.id anton@ti.ukdw.ac.id gunawan@ukdw.ac.id Abstract

Lebih terperinci

BAB IV IMPLEMENTASI DAN PENGUJIAN

BAB IV IMPLEMENTASI DAN PENGUJIAN BAB IV IMPLEMENTASI DAN PENGUJIAN 4.1 Proses Aplikasi Pada bab ini akan dibahas implementasi sistem rancang bangun Aplikasi pencarian pasal-pasal undang-undang hukum dengan metode String Matching hingga

Lebih terperinci

PERANCANGAN APLIKASI KAMUS BAHASA GAYO DENGAN MENGGUNAKAN METODE BOYER-MOORE

PERANCANGAN APLIKASI KAMUS BAHASA GAYO DENGAN MENGGUNAKAN METODE BOYER-MOORE PERANCANGAN APLIKASI KAMUS BAHASA GAYO DENGAN MENGGUNAKAN METODE BOYER-MOORE Ramadhansyah (12110817) Mahasiswa Program Studi Teknik Informatika, STMIK Budidarma Medan Jl. Sisimangaraja No.338 Simpang Limun

Lebih terperinci

Aplikasi Algoritma String Matching dan Regex untuk Validasi Formulir

Aplikasi Algoritma String Matching dan Regex untuk Validasi Formulir Aplikasi Algoritma String Matching dan Regex untuk Validasi Formulir Edmund Ophie - 13512095 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1 Algoritma Algoritma berasal dari nama ilmuwan muslim dari Uzbekistan, Abu Ja far Muhammad bin Musa Al-Khuwarizmi (780-846M). Pada awalnya kata algoritma adalah istilah yang merujuk

Lebih terperinci

Pencarian. 1. Memahami konsep pencarian 2. Mengenal beberapa algoritma pencarian 3. Menerapkan algoritma pencarian dalam program

Pencarian. 1. Memahami konsep pencarian 2. Mengenal beberapa algoritma pencarian 3. Menerapkan algoritma pencarian dalam program Pencarian Overview Pencarian merupakan sebuah algoritma dasar yang sering diperlukan dalam pembuatan program. Berbagai algoritma pencarian telah diciptakan dan dapat digunakan. Pemahaman tentang beberapa

Lebih terperinci

BAB I PENDAHULUAN 1.1 Latar Belakang Perpustakaan merupakan faktor penting di dalam penunjang transformasi antara sumber ilmu (koleksi) dengan pencari ilmu (pengunjung). Perpustakaan juga sering disebut

Lebih terperinci

ANALISIS PENERAPAN STRING MATCHING DALAM KOMPARASI DATA KEPESERTAAN JAMINAN KESEHATAN MASYARAKAT (JAMKESMAS)

ANALISIS PENERAPAN STRING MATCHING DALAM KOMPARASI DATA KEPESERTAAN JAMINAN KESEHATAN MASYARAKAT (JAMKESMAS) ANALISIS PENERAPAN STRING MATCHING DALAM KOMPARASI DATA KEPESERTAAN JAMINAN KESEHATAN MASYARAKAT (JAMKESMAS) Skripsi Diajukan untuk Memenuhi Persyaratan Memperoleh Gelar Sarjana Komputer (S.Kom) Oleh:

Lebih terperinci

Menentukan Tingkat Kecocokan Teks Menggunakan Algoritma KMP

Menentukan Tingkat Kecocokan Teks Menggunakan Algoritma KMP Menentukan Tingkat Kecocokan Teks Menggunakan Algoritma KMP Cut Meurah Rudi - 13514057 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung Jalan Ganesha No.

Lebih terperinci

BAB 1 PENDAHULUAN Latar Belakang

BAB 1 PENDAHULUAN Latar Belakang BAB 1 PENDAHULUAN 1.1. Latar Belakang Pesan SMS dapat dijadikan sebagai barang bukti digital dalam kasus tindak kejahatan. Di Indonesia sendiri barang bukti digital dalam pengungkapan tindak kejahatan

Lebih terperinci

BAB 1 PENDAHULUAN. Universitas Sumatera Utara

BAB 1 PENDAHULUAN. Universitas Sumatera Utara BAB 1 PENDAHULUAN 1.1 Latar Belakang Dunia pendidikan dan ilmu pengetahuan pada saat ini semakin berkembang dengan pesat yang disertai dengan semakin banyaknya arus informasi dan ilmu pengetahuan ilmiah

Lebih terperinci

Penerapan Algoritma Boyer Moore-Dynamic Programming untuk Layanan Auto-Complete dan Auto-Correct

Penerapan Algoritma Boyer Moore-Dynamic Programming untuk Layanan Auto-Complete dan Auto-Correct Penerapan Algoritma Boyer Moore-Dynamic Programming untuk Layanan Auto-Complete dan Auto-Correct Christabella Chiquita B. - 13509050 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1 Kecerdasan Buatan (Artifical Intellegence) 2.1.1 Pengertian Kecerdasan Buatan Kecerdasan buatan (Artifical Intellegence) merupakan inovasi baru didalam bidang ilmu pengetahuan.

Lebih terperinci

Searching [pencarian] Algoritma Pemrograman

Searching [pencarian] Algoritma Pemrograman Searching [pencarian] Algoritma Pemrograman mas.anto72@gmail.com 1 Jenis Pencarian Pencarian Internal proses pencarian dilakukan pada memori utama (RAM). Pencarian Eksternal proses pencarian dilakukan

Lebih terperinci

PENERAPAN ALGORITMA DISTANCE UNTUK FITUR AUTOCOMPLETE PADA APLIKASI KATALOG PERPUSTAKAAN DI UNIVERSITAS ALMUSLIM

PENERAPAN ALGORITMA DISTANCE UNTUK FITUR AUTOCOMPLETE PADA APLIKASI KATALOG PERPUSTAKAAN DI UNIVERSITAS ALMUSLIM PENERAPAN ALGORITMA DISTANCE UNTUK FITUR AUTOCOMPLETE PADA APLIKASI KATALOG PERPUSTAKAAN DI UNIVERSITAS ALMUSLIM FARHAN a a Jurusan Teknik Informatika Fakultas Ilmu Komputer Universitas Almuslim Jln. Almuslim

Lebih terperinci