Anda di halaman 1dari 6

Seminar Nasional Teknologi Informatika, "The Future of Computer Vision", 2017, ISBN : 978-602-50006-0-7

Analisa Suku Kata Yang Sama Menggunakan


Metode Brute Force
Dicky Apdilah
AMIK INTeL Com GLOBAL INDO
dicky@nusa.net.id

Abstrak

Search Engine, Search File, search data bahkan pada sistem keamanan informasi pada prinsip pencarian
mauapun pendeteksiannya dilakukan menggunkan proses kesamaan huruf maupun kata yang sering dalam
kemunculannya. Brute force digunakan dalam penilaian ini dikarenakan cukup sederhana dalam penerapan
metodenya dan menterjemahkannya dalam algoritma pemrograman yang tidak begitu sulit di pahami dan di
kerjakan. Dengan menerapkan algoritma ini diharapkan suatu permasalahan yang ada dapat diselesaikan dengan
cara sistematis dengan memanfaatkan teknologi komputer, untuk memecahkan masalah yang berkaitan dengan
pencarian berbasis string atau teks. Dengan algoritma ini diharapkan pada search engine, searchfile , search data
maupun deskripsi dan enkripsi proses dapat sebaik mungkin melakukan prosesnya contohnya penyusunan jadwal
yang biasanya dilakukan dengan cara manual dapat dimudahkan dan lebih efisien sehingga penggunaan teknologi
komputer dapat dimaksimalkan. Dari Proses kemunculan dan berdasarkan kemunculan bersama dalam bentuk
huruf maupun kata sangat tidak di perbolehkan terlihat untuk penggunaan brute force sedangkan untuk jenisnya
search engine manfaat kemunculan bersama baik huru dan angka membukatikan adanya kesamaan ata sehinga
harus dilainkaan untuk menghindari betrok data yangada pada sistem tersebut. Dengan menerapkan algoritma ini
diharapkan suatu permasalahan yang ada dapat diselesaikan dengan cara sistematis dengan memanfaatkan
teknologi komputer, untuk memecahkan masalah yang berkaitan dengan pencarian berbasis string atau teks.

Kata Kunci : Algoritma, Brute Force, Huruf, Kata, Kesamaan, Kemunculan

I. LATAR BELAKANG tersebut memiliki kriteria yang cukup untuk


Menyusun penjadwalan kuliah mungkin mengadakan sebuah kelas, jumlah kursi, dan
terlihat mudah, akan tetapi ketika sumber daya kebutuhan penunjang lainnya. Lalu pengajar,
yang ada semakin terbatas, tentunya membuat apakah mampu mengajar pada semua jam.
sebuah jadwal mata kuliah menjadi pekerjaan apakah pada waktu tersebut pengajar tertentu
yang cukup memakan waktu yang lama. Pada juga mengajar di kelas lainnya sehingga terjadi
beberapa sumber daya yang biasanya dibutuhkan benturan waktu mengajar. Salah satu cara yang
seperti ketersediaan ruangan, apakah ruangan dapat dilakukan untuk mengatasi berbagai
permasalahan dalam penyusunan jadwal adalah

204
Seminar Nasional Teknologi Informatika, "The Future of Computer Vision", 2017, ISBN : 978-602-50006-0-7

dengan menggunakan logika komputer. mingguan dan menempati ruangan tertentu pula,
Pemecahan masalah dengan menggunakan logika setiap minggi dibagi menjadi hari dan setiap hari
komputer ini disebut dengan algoritma. dibagi menjadi slot waktu. Kombinasi hari dan
Algoritma Brute Force ini merupakan suatu waktu dinyatakan sebagai periode (Niels-
algoritma yang sederhana namun dapat Christian Fink Bagger, 2015:827)
digunakan untuk memecahkan masalah yang A. Algoritma
berkaitan dengan pencarian berbasis string atau Algoritma merupakan fondasi yang sangat
teks. Dengan menerapkan algoritma ini penting dalam penyelesaiaian suatu masalah.
diharapkan proses penyusunan jadwal yang Meurut (Suarga, 2012) Algoritma memiliki
biasanya dilakukan dengan cara manual dapat definisi sebagai berikut :
dimudahkan dan lebih efisien sehingga 1. Teknik penyusunan lagkah-langkah
penggunaan teknologi komputer dapat penyelesaian masalah dalam bentuk kalimat
dimaksimalkan. dengan jumlah kata terbatas tetapi tersusun
secara logis dan sistematis.
II. TINJAUAN PUSTAKA 2. Suatu prosedur yang jelas untuk
Algoritma Brute Force ini merupakan suatu menyelesaikan suatu persoalan dengan
algoritma yang sederhana namun dapat menggunakan langkah-langkah tertentu dan
digunakan untuk memecahkan masalah yang terbatas jumlah-nya.
berkaitan dengan pencarian berbasis string atau 3. Susunan langkah-langkah yang pasti, yang
teks. Dengan menerapkan algoritma ini bila diikuti maka akan mentransformasikan
diharapkan proses penyusunan jadwal yang data input menjadi output yang berupa
biasanya dilakukan dengan cara manual dapat informasi.
dimudahkan dan lebih efisien sehingga Masalah Algoritma Solusi
penggunaan teknologi komputer dapat
dimaksimalkan.
Gambar 1. Urutan Proses Penerapan Algoritma
Salah satu pengaplikasian dalam kasus
penyusunan jadwal kuliah adalah bagaimana Menentukan urutan permasalahan dan jalan
menghindari jadwal yang sama pada waktu yang pilihan menggunakan bantuan algoritma. Ketiga
bersamaan. Biasanya penysunan jadwal dan rangkaian itu merupakan Problem Solving Phase.
pengecekan benturan jadwal dilakukan dengan Setelah masalah terdefinisi, dianalisis, dan
cara manual saja, walaupun sudah dibantu didesain dengan urutan yang logis langkah
dengan aplikasi komputer. Untuk itu penulis penyelesaian masalah selanjutnya adalah
mencoba menerapkan ilmu komputer ke dalam rangkaian Implementation Phase, meliputi
sebuah aplikasi dengan menggunakan algoritma computer programing (coding), testing
Brute Force. (debuging), dan Documentation. Algoritma
Aktifitas penjadwalan pada dasarnya dapat adalah urutan logis untuk menyelesaikan suatu
dibedakan menjadi lima tingkatan, yaitu : masalah. Menyusun algoritma sebaiknya
a. Long-range planning (waktu 2 sampai 5 dilakukan sebelum membuat program. Suatu
tahun). algoritma dikatakan algoritma yang baik jika :
b. Middle-range planning (waktu 1 sampai 2 a. Urutannya logis dan mudah dipahami.
tahun). b. Dapat diuji keabsahannya.
c. Short-range planning (waktu 3 sampai 6 c. Tidak ambigu.
bulan). d. Mudah dipindahkan ke dalam program
d. Penjadwalan (waktu 2 sampai 6 minggu). komputer.
e. Penjadwalan reaktif atau control (waktu 1 e. Independen untuk banyak bahasa
sampai 3 hari). pemrograman.
Kegiatan dalam menyusun jadwal seperti Sedangkan ciri-ciri algoritma adalah :
jadwal kuliah bukanlah hal yang mudah,dimana a. Terstruktur
setiap kegiatan kuliah dilakukan dalam waktu b. Efektif dan efisien

205
Seminar Nasional Teknologi Informatika, "The Future of Computer Vision", 2017, ISBN : 978-602-50006-0-7

c. Ada input dan output Gambar 2 . Algoritma dan flochat Brute Force Algoritma
Penentuan Kemunculan Huruf Sebagai Indikasi Kesamaan
Dalam pemrosesannya algoritma menggunakan
struktur berikut : Penerapan lainya dari algoritma brute force
a. Sequence, dimana instruksi dikerjakan adalah melakukan pencocokan strings (String
baris per baris tanpa pengulangan atau Matching). Untuk melakukan pencocokan
loncat. strings, algoritma ini melakukan dalam beberapa
b. Selection yaitu instruksi yang dipakai user tahapan, yaitu :
untuk memilih aksi dari beberapa
kemungkinan dengan syarat. 1. Mula-mula pattern dicocokkan pada awal
c. Repetition, yaitu instruksi yang mengulang teks.
sederetan instruksi dengan syarat. 2. Dengan bergerak dari kiri ke kanan,
bandingkan setiap karakter di dalam
III.METODOLOG PENELITIAN pattern dengan karakter yang bersesuaian di
Dalam pelaksanaan penelitian ini dalam teks sampai:
diperlukan data dan informasi terkait yang a. Jika semua karakter yang dibandingkan
akan digunakan sebagai bahan rujukan untuk cocok atau sama (pencarian berhasil),
pengembangan sistem, sehingga dibutuhkan atau
suatu metode yang tepat agar penelitian ini dapat b. Jika dijumpai sebuah ketidakcocokan
berjalan dengan baik. karakter (pencarian belum berhasil)
A. Metode Brute Force 3. Bila pattern belum ditemukan
Algoritma brute force memecahkan masalah kecocokannya dan teks belum habis, geser
dengan sangat sederhana, langsung dan dengan pattern satu karakter ke kanan dan ulangi
cara yang jelas (obvious way). Algoritma brute langkah 2.
force seringkali lebih mudah diimplementasikan
daripada algoritma yang lebih canggih, dan Contoh :
karena kesederhanaannya, kadang-kadang Pattern : NOT
algoritma brute force dapat lebih baik jika Teks yang diuji : NOBODY NOTICED HIM
ditinjau dari segi implementasi. Maka brute force akan melakukan proses
untuk mencari kecocokan teks yang diuji
B. Algoritma Brute Force seperti pada gambar berikut :

Start NOBODY NOTICED HIM

1 NOT

2 NOT
Is it
Return N
possible
to o 3 NOT
to fill
next 4 NOT
Prev
cell? Y
ious
Is it e 5 NOT
Y cell
possible
e to find Are alls 6 NOT
s anoth cells N
er o 7 NOT
N Fille
valid 8 NOT
o d ?Y
N cell?
Is this
cell 1
e
o Riddlesis
?
solved

Y
Register
Stop e
solution 206
s
Continu
e
searchin
g
Seminar Nasional Teknologi Informatika, "The Future of Computer Vision", 2017, ISBN : 978-602-50006-0-7

Gambar 4. Contoh String Matching dengan Algoritma Brute Dengan metode ini diharapkan tidak ada lagi
Force
jadwal yang berbenturan karena proses yang
biasa dikerjakan manual ini telah digantikan oleh
algoritma Brute Force.
c. Metode Analisi
Tahap analisis dilakukan dengan menentukan Start
beberapa data dan entitas yang berkaitan dengan
aplikasi yang dirancang. Pada sistem
penjadwalan ini terdapat beberapa entitas yang Input Data
saling terkait yaitu :
a. Mata Kuliah
b. Dosen
c. Waktu Proses Matching
d. Pengampu Brute Force
e. Jadwal

IV. Hasil
Tahap inplementasi merupakan tahap akhir N If
dari fase perancangan ini dimana hasil dari Match
penelitian ini akan dapat dilihat. Pada bagian ini
dilakukan tahapan berikut :
a. Pengujian penginputan data Y
b. Pengujian proses
Out : Jadwal
c. Analisa hasil
Pengujian penginputan data dilakukan untuk
memasukkan data-data yang akan digunakan
pada sistem penjadwalan matakuliah ini. Dari Stop
tahap ini akan dilihat apakah data yang
diinputkan kedalam aplikasi berhasil di inputkan Gambar 5. Diagram Analisa Data
atau tidak. Tahap pengujian proses dilakukan Setelah tahap observasi dan pengumpulan
untuk mengetahui apakah proses yang data dilakukan, maka didapatkan data-data awal
berlangsung pada aplikasi ini dapat berjalan yang akan dijadikan dasar dalam perancangan
sesuai dengan algoritma yang digunakan. Setelah aplikasi ini.
prngujian proses dilakukan maka tahap
selanjutnya adalah analisa hasil dari aplikasi b. Analisa Masukan (Input)
sistem penjadwalan matakuliah, dimana hasil Data-data ini akan diolah oleh sistem
yang diharapkan adalah dapat terciptanya suatu sehingga menghasilkan hasil pada output. Data-
jadwal kuliah yang dapat digunakan oleh setiap data tersebut adalah sebagai berikut :
fakultas. 1. Data Program Studi
2. Data Dosen
a. Analisa Metode Brute Force 3. Data Mata Kuliah
Misalnya pada data yang diberikan seorang 4. Data Kelas / Ruangan
dosen A memungkinkan untuk mengajar pada 5. Hari
hari, jam, mata kuliah serta kelas tertentu . Maka 6. Jam Perkuliahan
data ini akan dimasukkan kedalam sistem
sebagai kriteria. Ketika proses dijalankan maka c. Analisa Keluaran (Output)
algoritma Brute Force akan melakukan proses Analisa keluaran data pada aplikasi ini akan
pencocokan diatas dan akan menampilkan hasil membentuk sebuah tabel jadwal yang terdiri dari
pada output. beberapa field, yaitu :

207
Seminar Nasional Teknologi Informatika, "The Future of Computer Vision", 2017, ISBN : 978-602-50006-0-7

1. Waktu terdiri dari Program Studi, Tahun baik pencarian atau pencocokan pattern,
Akademik, Semester, Hari, dan Jam sehingga besar kemungkinan untuk dapat
2. Nama Dosen Pengasuh diterapkan pada sistem penjadwalan dimana
3. Mata Kuliah dapat mendeteksi benturan jadwal yang selama
4. Ruang ini menjadi problem pada sistem penjadwalan.
5. Jumlah SKS
VI. KESIMPULAN
V. DISKUSI Dari pembahasan yang telah dilakukan, dapat
Pada penelitian sebelumnya telah dilakukan dilihat bahwa proses penyusunan jadwal kuliah
beberapa penelitian tentang sistem penjadwalan lebih efektif dan efisien dibandingkan dengan
dengan menerapkan beberapa algoritma cara penyusunan secara manual, sehingga dapat
diantaranya Setia Astuti (2011), peda disimpulkan beberapa point kesimpulan sebagai
penelitiannya beliau menerapkan algoritma graf berikut :
welch power untuk penyusunan jadwal mata 1. Kesalahan pada saat penyusunan jadwal
kuliah. Penelitian lainnya tentang jadwal adalah yang menyebabkan terjadi benturan jadwal
Fajar Kurniawan (2011) yang melakukan pada saat yang sama dapat diatasi dengan
penelitian tentang penyusunan jadwal mata menerapkan algoritma Brute Force.
pelajaran dengan algoritma Blind Search. Dari 2. Algoritma Brite Force menganalisa setiap
beberapa literatur tersebut menperlihatkan bahwa huruf yang muncuk untuk di cocokkan
algoritma pencarian seperti Blind Search ternyata dengan inputan sebelumnya sehingga tidak
dapat diterapkan untuk aplikasi penyusunan terjadi bentrokan data pada jadwal yang di
jadwal, sehingga penulis mencoba menerapkan disain.
algoritma lainnya seperti Brute Force pada 3. Penerapan algoritma Brute Force pada
penelitian ini. Dari beberapa literatur yang sudah aplikasi penyusunan jadwal perkuliahan ini
ada banyak mengungkapkan beberapa faktor telah berhasil memperbaiki kesalahan-
yang memungkinkan untuk penerapan algoritma kesalahan yang ditimbulkan akibat kelalaian
Brute Force ini. dan kesalahan manusia
Menurut Ananta Pandu Wicaksana (2012)
algoritma Brute Force memiliki kelebihan DAFTAR PUSTAKA
dibandingkan dengan algoritma lain. Algoritma [1] Ananta Pandu Wicaksana 2012, “ Algoritma Brute Force
Brute Force dapat digunakan untuk dalam Pattern Matching pada Aplikasi Pendeteksian
memecahkan hampir sebagian besar masalah Potongan Citra ”, Program Studi Teknik Informatika
(wide applicability). Algoritma Brute Force Sekolah Teknik Elektro dan Informatika Institut
Teknologi Bandung .
sederhana dan mudah dimengerti. Algoritma [2] Dr. Eng, R.H.Sianipar, S.T.,M.Eng”, Pemrograman
Brute Force menghasilkan algoritma yang Database menggunakan MySQL”,Penerbit Andi.
layak untuk beberapa masalah penting seperti [3] Dr.Suarga, M.Sc, M. Math., Ph. D, 2015 “ Algoritma dan
pencarian, pengurutan, pencocokan string, Pemrograman” .
[4] Fajar Kurniawan, 2011 “ am Sistem Penyusunan Jadwal
perkalian matriks. Algoritma Brute Force Pelajaran Berbasis WEB”, Program Studi Pendidikan
menghasilkan algoritma baku (standard) untuk Teknik Informatika, Universitas Negeri Yogyakarta.
tugas-tugas komputasi seperti [5] Fenty E.M.A, Anif Hanifa, Novi Riyanto, 2014 “
penjumlahan/perkalian n buah bilangan, Implementasi Algoritma Brute Force dan fitur Location
Based Service (LBS) Pada Aplikasi Kumpulan Doa
menentukan elemen minimum atau maksimum Harian Berbasis Android”, Program Studi Teknik
di dalam tabel (list). Penerapan algoritma Brute Informatika, Fakultas S.ins dan Teknologi UIN Syarif
Force yang lain adalah penelitian Fenti E.M.A Hidayatullah Jakarta, Indonesia.
(2014) yang menerapkan algoritma Brute Force [6] HTTP:// www.php.net 2016.
[7] Joseph M Mom and Jonathan A. Enolela. 2012, “
pada pencarian Location Base Service (LBS). Implementation Of A Time Table Generator Using
Dari beberapa literatur diatas, dapat dijadikan Visual Basic. Net”, Departement of electrical
dasar bahwa algoritma Brute Force engineering, university of Agriculture, Makrudi,
memugkinkan untuk diterapkan pada aplikasi Nigeria..

208
Seminar Nasional Teknologi Informatika, "The Future of Computer Vision", 2017, ISBN : 978-602-50006-0-7

[8] Muhammad Sadeli, 2014 “ Aplikasi Bisnis dengan PHP


dan MySQL menggunakan Adobe Dreamweaver CS 6”,
Maxikom.
[9] Setia Astuti, 2011 “ Penyusunan Jadwal Ujian Mata
Kuliah Dengan Algoritma Pewarnaan Graf Wlch
Powell”, Fakultas Ilmu Komputer Universitas Dian
Nuswantoro Semarang.
[10] Tim EMS ,2016 “ PHP 5 dari Nol ”, Filex Media
Komputindo.
[11] Wikipedia, 2016 ” MySQL”.

209