Anda di halaman 1dari 21

LAPORAN ANALISIS STUDI KASUS ARTIKEL PENERAPAN METODE

BLIND SEARCH

Disusun oleh Kelompok 3 :

I Komang Agus Ari Negara 1908561002

Bayu Prasetiyo 1908561005

Indra Permana Putra 1908561018

Dosen Pembimbing:

I Gusti Ngurah Anom Cahyadi Putra,S.T.,M.Cs

PROGRAM STUDI INFORMATIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS UDAYANA

2020
KATA PENGANTAR

Puji syukur kami panjatkan kehadapan Tuhan Yang Maha Esa karena atas
segala rahmat dan nikmat-Nya, sehingga penulis mampu untuk menyelesaikan
pembuatan laporan ini dengan judul “Laporan Analisis Studi Kasus Artikel
Penerapan Metode Blind Search” sebagai tugas dari mata kuliah Pengantar
Kecerdasan Buatan.

Penulis tentu menyadari bahwa makalah ini masih jauh dari kata sempurna
dan masih banyak terdapat kesalahan serta kekurangan di dalamnya. Untuk itu,
penulis mengharapkan kritik serta saran dari pembaca untuk laporan ini, supaya
laporan ini nantinya dapat menjadi laporan yang lebih baik lagi. Demikian, dan
apabila terdapat banyak kesalahan pada laporan ini penulis mohon maaf yang
sebesar-besarnya.

ii
DAFTAR ISI

KATA PENGANTAR ............................................................................................ ii


DAFTAR ISI .......................................................................................................... iii
BAB I PENDAHULUAN ...................................................................................... 1
1.1 Latar belakang .......................................................................................... 1
1.2 Tujuan dan Mafaat .................................................................................... 1
BAB II LANDASAN TEORI ................................................................................. 2
2.1. Metode Blind Search ................................................................................ 2
2.2. Breadth First Search (BFS) ...................................................................... 3
2.3. Depth First Search (DFS) ......................................................................... 5
BAB III ANALISIS STUDI KASUS .................................................................... 7
3.1. Analisis Studi Kasus 1 .............................................................................. 7
3.2. Analisis Studi Kasus 2 ............................................................................ 11
BAB IV PENUTUP .............................................................................................. 17
DAFTAR PUSTAKA ............................................................................................. 1

iii
4

BAB I
PENDAHULUAN

1.1 Latar belakang


Laporan ini dibuat untuk memenuhi kebutuhan nilai tugas kelompok pada
Pemerosesan Kecerdasan Buatan.

1.2 Tujuan dan Mafaat


❖ Agar mahasiswa mendapat pengertian lebih lanjut tentang metode Blind
Search dan juga penerapannya terhadap beberapa studi kasus yang tersedia.

1
BAB II
LANDASAN TEORI

2.1. Metode Blind Search


Blind Search ada suatu metode “blind” atau “buta” adalah metode
yang awalnya memang tidak ada informasi yang dapat digunakan dalam
proses pencari yang diperuntukan untuk mencari solusi tanpa adanya suatu
infromasi yang dapat merujuk atau mengarahkan pencarian agar dapat
mencapai suatu goal state (tujuan) dari current state (keadaan saat ini). Dan
suatu informasi hanyalah akan didefinisikan goal state itu tersendiri,
sehinggal memuat algoritma menjadi dapat mengenali goal state tersebut
jika dijumpainya.

Namun jika absennya atau ketiadaan informasi akan menyebabkan


blind search bekerja dalam ketidak pastian yang sehingga membuat blind
search memeriksa node terssebut secara tidak berarah dan tidak menentu.
Yang menyebabkan kurangnya suatu efisiensi dan memperberat
komputasi yang akhirnya menyebabkan banyak kasus studi kurang
merekomendasikan metode ini.

Blind Search meliputi:

• Breadth First Search (BFS)


• Uniform Cost Search (UCS)
• Depth First Search (DFS)
• Depth Limited Search (DLS)
• Iterative Deepening Search (IDS)
• Bi-Directional Search (BDS)

Dan dari semua itu sering sekali disinggung dan dibahasa adalah
”Breadth First Search (BFS)” dan “Depth First Search (DFS)”.

2
2.2. Breadth First Search (BFS)
Pengertian dari BFS disini adalah salah satu metode pencarian yang
memiliki tujuan untuk memperluas dan memeriksa semua simpul dari suatu
graph yang ada atau bisa juga urutan dari kombinasi dengan pencari yang
sistematis dengan melalui setiap solusi.

BFS disini berkerja untuk melakukan pencarian secara mendalan terhadap


keseluruhan graph atau suatu urutan dengan tidak memperhatikan tujuan
sehingga menemukan jika BFS ingin menemukan tujuan tersebut tidak
diperlukan algoritma heuristic.

Berikut merupakan karakteristik Breadth First Search iyalah:

• Jika terdapat solusi, BFS akan menemukannya.


• BFS akan menemukan solusi dengan jalur terpendek.
• BFS tidak akan terjebak dalam “looping”.
• BFS membutuhkan space untuk menyimpan node list antrian dan
space yang dibutuhkan dan mungkin space yang dibutuhkan itu
cukup besar (memories yang dibutuhkan cukup besar).
• Dengan suatu asumsi seperti:
o Ada solusi dalam pohon
o Pencarian tree adalah secara terurut.

BFS akan melakukan searching pada setiap node yang berada di


level yang sama terlebih dahulu, yang nanti baru akan dilanjutkan dengan
proses search pada node di level berikutnya. Ssetlah ini adalah gambar yang
memperjelas jalur pencarian dari BFS tersebut.

3
Contoh Implementasi Breadth First Search menggunakan Java:

Pencarian jalur terpendek dari pada game Maze

Game Maze adalah game yang membuat user untuk menemukan


jalan keluar dan melewati banyak rintangan dari banyak ruang yang ada.
Titik awal user dimulai dari huruf S dimana S merupakan (Start) dan G
adalah (Goal) atau tujuan akhir yang merupakan jalan keluarnya dari maze
tersebut. Dan Ketika program tersebut dijalankan maka system akan

4
mecari rute terpendek secara otomatis dengan menggunakan metode BFS.
Angka di setiak rute menunjukan panjang rute yang dituliskan dengan
angka pada setiap kotaknya.

2.3. Depth First Search (DFS)


Depth First Search yang disingkat menjadi DFS adalah suatu
proses blind searching atau pencarian yang buta untuk melakukan ekspansi
sebuah jalur atau path yang nanti akan menuju penyelesaian masalah atau
suatu tujuan sebelum melakukan eksplorasi di path yang lain. Jadi disini
path yang akan di search atau dilakukan penccarian adalah tunggal dan
sampai tuntas (menemukan goal atau dead end) untuk path tersebut maka
baru dapat berpindah ke path yang lain.
DFS akan melakukan pencarian secara path tunggal hingga tuntas
lalu jika bertemu dead-end barulah DFS balik ke node terakhir untuk
melihat node lain memliki percabangan juga yang belum diperiksa dan
dieksplorasi.
DFS juga memiliki kelebihan dan kekurangan tersendiri.
Kelebihannya adalah:
• Pemakaian memori hanya sedikit, berbeda jauh dengan BFS
yang harus menyimpan semua node yang pernah dibangkitkan.
• Jika solusi yang dicari berada pada level yang dalam dan
paling kiri, maka DFS akan menemukannya secara cepat.

Kelemahannya juga adalah:

• Jika pohon yang dibangkitkan mempunyai level yang dalam


(tak terhingga), maka tidak ada jaminan untuk menemukan
solusi (Tidak Complete).
• Jika terdapat lebih dari satu solusi yang sama tetapi berada
pada level yang berbeda maka DFS tidak menjadi solusi yang
ditemukan merupakan yang terbaik.

5
6
BAB III
ANALISIS STUDI KASUS

3.1. Analisis Studi Kasus 1


Penerapan Algoritma Backtracking Berbasis Blind Search untuk
Menentukan Penjadwalan Mengajar.

❖ Analisis Sistem Lama yang dibuat oleh waka kurikul yang terdiri dari
3 tugas tersendiri yaitu:
• Membuat pembagian tuga mengajar guru. Tugas dibuat dengan
menggunakan cara dalam menentukan mata pelajaran untuk
setiap guru yang ada dana akan mengajar pada lokasi yang telah
ditentukan oleh waka kurikulum. Maka data yang diperlukan
adalah data guru dan lokasi.
• Membuat jadwal kegiatan belajar dan mengajar guru. Tugasnya
hampir sama dengan tugas sebelumnya tetapi terdapat perbedaan
yaitu dalam tugas ini waka kurikulum menambah waktu yang
dalam menentukan guru yang mengajar pada hari apa dan jam
berapa. Maka data yang diperlukan adalah data guru, mata
pelajaran, kelas, hari dan jam mengajar.
• Pembuatan kontrol mengajar guru.Kontrol mengajar disini
adalah menentukan hari dari hari senin hingga jumat untuk guru
yang sedak piket sesuai ketentuan dari waka kurikulum. Data
yang diperlukan adalah data hari dan data guru.

Dari 3 sistem kerja guru ini yang ditugaskan dari pihak sekolah
untuk waka kurum dalam pembuatan penjadwalan mengajar di SD
Islam As-Shofa Pekanbaru.

❖ Analisis Sistem terbaru


Sistem yang akan dibangun ini adalah Sistem Penjadwalan
Mengajar (SPM) dimana sistem penjadwalan ini berisikan tiga tugas
waka kurum yaitu jadwal pembagian tugas mengajar guru, jadwal

7
kegiatan belajar mengajar guru dan jadwal kontrol mengajar guru.
Namun proses penelusuran algoritma backtracking ini diterapkan
pada jadwal kegiatan belajar mengajar. Hal ini disebabkan pada
jadwal kegiatan mengajar memiliki gabungan dari guru, mata
pelajaran, kelas, hari dan jam ajar. Dari adanya gabungan tersebut,
algoritma backtracking dapat menelusuri kejadian (event) ke dalam
ruang waktu (time slot) yang ada pada jadwal kegiatan belajar
mengajar.
o Analisa Kejadian (Event) dan Ruang Waktu (Time Slot) Analisa
kejadian (event) dan ruang waktu (time slot) terdiri dari guru,
mata pelajaran, kelas, hari dan jam. Gabungan dari semua ini
akan ditampilkan pada jadwal kegiatan belajar mengajar guru.
Untuk menerapkan mata pelajaran pada jadwal kegiatan
belajar mengajar guru, mata pelajaran akan diberikan batasan-
batasan agar jadwal yang akan diciptakan sesuai ketetapan waka
kurum.
o Analisa Penelusuran Algoritma Backtracking Penelusuran
algoritma backtracking memiliki beberapa tahap. Tahap
pertama adalah membuat solusi dalam bentuk pohon (tree).
Setelah tahap pertama dibuat, maka ditahap kedua adalah
penerapan mata pelajaran beserta guru pada kerangka jadwal
kegiatan belajar mengajar guru secara DFS.
Penelusuran algoritma backtracking dimulai mencari
kelas.Kelas di sini dimulai dari kelas IA hingga akhir kelas
VIG.Setelah kelas ditemukan, selanjutnya mencari hari, setelah
hari ditemukan, selanjutnya mencari jam. Setelah didapat kelas,
hari dan jam ditemukan, selanjutnya pemilihan mata pelajaran.
Dalam memilih mata pelajaran, mata pelajaran akan diacak
untuk mendapatkan salah satu dari 13 mata pelajaran. Setelah
mata pelajaran terpilih, mata pelajaran yang terpilih akan
diterapkan di jadwal kegiatan belajar mengajar guru. untuk
menerapkan mata pelajaran pada jadwal kegiatan belajar

8
mengajar guru juga memiliki batasan-batasan. Setelah semua
telah ditelusuri, maka terciptalah jadwal kegiatan mengajar
guru.
Dikarenakan penelusuran dimulai dari kelas IA.maka contoh
yang akan diterapkan pada analisa ini adalah kelas IA. Berikut
gambar penelusuran algoritma backtracking untuk kelas IA
yang menggunakan kerangka jadwal kegiatan belajar mengajar
guru kelas 1 ± 2.

Gambar A

Gambar terssebut menunjukan dengan “R” menandakan pencariaan


akan dimulai. Dari level 1 hingga 14 adalah tahapan penyusunan time slot
di hari senin kelas 1A.Penelusuran memiliki backtracking pada level 14.
Hal ini dikarenakan sisa ruang waktu 1 jam diisi mata pelajaran penjas yang
memiliki 2 jam dalam sehari sehingga melebihi ruang waktu yang ada di
hari Senin, maka dilakukanlah backtracking.

Level 14 pada Gambar 5 pada node nomor 2 berisikan mata


pelajaran PKN (Pendidikan Kewarganegaraan) yang memiliki 1 jam dalam
sehari. Pemilihan ini adalah akhir dari pencarian di hari senin sesuai time
slot yang dimiliki.

9
Kesimpulannya adalah

Setelah melalui tahap analisa dan pengujian pada Sistem


Penjadwalan Mengajar ini, maka dapat diambil suatu kesimpulan bahwa
dari 30 lokal dan 66 guru serta mata pelajaran yang berjumlah 13, algoritma
backtracking dapat menentukan penjadwalan mengajar hanya 3 lokal dari
30 lokal. Hal ini disebabkan:

o Keterbatasan jumlah guru dan mata pelajaran yang menjadi salah satu
masalah dalam proses penelusuran algoritma backtracking yaitu
khususnya mata pelajaran PKN kelas 1 dipegang oleh satu guru.
o Sesuai pengujian mata pelajaran PKN ini hanya memiliki kesempatan
muncul 3 kali dalam 3 lokal (A, B, C). Sedangkan jumlah kelas 1 adalah
4 kelas (A, B, C, D).
o Dari analisa ini membuktikan bahwa mata pelajaran PKN tidak
memiliki kesempatan muncul di kelas 1D. Sehingga mulai dari 1D
hingga kelas selanjutnya tidak dapat ditelusuri oleh algoritma
backtracking.

10
3.2. Analisis Studi Kasus 2
Penerapan Algoritma DFS pada Permainan Sudoku dengan
Backtraking.

Pertama-tama penulisakan memberikan indeks pada setiap


kotak pada sudoku agar mudah untuk menunjuk posisi kotak tertentu.
Posisi atau indeks kotak akan dinotasikan dengan (X,Y). Dengan X
menyatakan posisi suatu kotak secara horizontal dan Y menyatakan
posisi kotak secara vertikal. Pengindeksan kotak lengkap dapat dilihat
pada gambar di bawah ini:

Angka yang ada di dalam matriks merupakan indeks posisi


kotak, indeks dimulai dari ujung kiri-atas yaitu (1,1) sampai ujung
kanan-bawah yaitu (9,9). Hal ini akan bermanfaat untuk proses
implementasi selanjutnya. Penulis akan mendefinsikan isi simpul dan
kedalaman pohon terkait dengan proses pencarian solusi. Simpul akan
didefinisikan sebagai nilai yang pada suatu kotak di posisi tertentu.
Ketinggian pohon akan didefinisikan sebagai posisi kotak kosong
yang akan diisi. Jadi misalkan problemsheetsudoku terdiri dari 30
kotak kosong yang harus diisi dari 81 total kotak sudoku, maka pohon
pencarian harus mencapai kedalaman 30 untuk mencapai solusi. Urutan
posisi kotak yang akan dicari nilai simpulnya adalah dari paling kiri-
atas ke kanan-bawah. Misalkan terdapat 3 kotak kosong
yaitu(2,3),(8,2), dan (9,6), maka pada kedalaman 1 akan berisi simpul
kotak posisi (8,2) , kedalaman 2 akan berisi simpul kotak posisi (2,3) ,

11
dan yang terakhir kedalaman 3 akan berisi simpul kotak posisi (9,6).
Untuk mempermudah pemahaman mengenai definisi ini, pembaca dapat
melihat penjelasan pada gambar berikut terkait contoh sebelumnya :

Pada gambar diatas, kita dapat melihat contoh model


penelusuran yang dilakukan pada contoh sebelumnya. Selanjutnya kita
akan mendefinisikan fungsi kelayakan yaitu suatu nilai pada simpul
dinyatakan layak jika pada saat kondisi dimana tidak ada nilai yang sama
pada baris, kolom, dan daerahnya dengan nilai tersebut. Fungsi Solusi
didefinisikan jika semua kotak kosong telah terisi dengan nilai yang
sesuai (sesuai dengan fungsi kelayakan). Penulis akan memberikan
contoh kasus sudoku dan menyelesaikan dengan menggunakan pohon
status DFSdan backtracking. Misalkan diberikan kasus sudoku seperti
gambar di bawah ini :

12
Langkah pertama adalah kita akan melakukan pencarian solusi
pada kotak paling kiri-atas yang kosong, dalam hal ini adalah kotak (1,3).
Selanjutnya kotak (1,4) , (1,6), dan seterusnya.

Pada kotak (1,3) yang kosong pada gambar 6 kotak tersebut


dapat diisi dengan angka 1,2,4 (yang memenuhi fungsi kelayakan).
Sesuai urutan angka kita akan mengambil angka 1 dahulu. Karena
kita melakukannya dengan algoritma DFS, maka setelah kita memberi
nilai pada suatu simpul kita akan melahirkan simpulpada level atau
kedalaman selanjutnya yaitu level 2 untuk kotak (1,4). Kotak (1,4) dapat
diisi oleh angka 2,6, dan 9 sesuai urutan kita akan mengambil angka 2
dahulu. Pada level-3, Kita akan mengisikan Kotak (1,6) dengan kandidat
angka 4,6,8 (angka 2 tidak bisa diambil karna telah diambil oleh kotak
<1,4>),Kita ambil angka 4. Dan seterusnya kita lakukan pada level
/ kotak selanjutnya sampai menemukan solusi. Pohon yang
menggambarkan tentang proses yang kita lakukan sejauh ini dapat
dilihat pada gambar dibawah ini :

13
Penelusuran ini akan dilakukan sampai penelusuran mencapai
level N, dimana N adalah jumlah kotak kosong pada sudoku. Jika pada
suatu level simpul tidak bisa menghasilkan suatu simpul baru dengan
kata lain tidak ada angka yang memenuhi fungsi kelayakan, maka
kondisi tersebut dikatakan kondisi dead end atau simpul mati. Apabila
terjadi deadend, simpul akan melakukan backtrack atau runut balik ke
simpul parentnya dan akan membuat simpul lain, jika ada, dengan
kandidat angka yang ada untuk ditelusuri, jika tidak ada simpul yang
layak dihasilkan, maka parent-nya juga akan melakukan backtrack
sampai ketemu parent yang dapat menghasilkan anak atau simpul baru.
Untuk mengilustrasikannya, dapat dilihat pada gambar di bawah ini :

14
Misalkan terjadi dead end pada saat melakukan penelusuran anak-
anak simpul 3 yang menimbulkan backtrackatau runut balik kembali pada
parentdari simpul 3 yaitu simpul 2. Selanjutnya simpul 2 akan
melahirkan simpul baru yang merupakan kandidat angka dari Level 3
(Kotak <1,6>). Sebelumnya kita mengetahui bahwa kandidat untuk kotak
<1,6> dengan simpul parent S2 yaitu 4,6, dan 8. Nilai 4 pada S3
diasumsikan sudah mencapai deadendsehingga Simpul S2 akan
melahirkan simpul baru SXX dengan nilai yaitu 6. Kemudian
simpulSXXakan membangkitkan anak-anak barunya. Proses ini dilakukan
terus-menerus sampai pohon mencapai kedalamanN dimana fungsi
solusi terpenuhi.

❖ Analisis

Penerapan Algoritma DFS dengan backtracking untuk


memecahkan masalah sudoku telah dapat terimplementasikan.
Berdasarkan analisis penulis, Algoritma dengan bactracking
menghasilkan kompleksitas yang cukup mangkus. Bandingkan dengan
penyelesaian masalah sudoku jika menggunakan Algoritma
Brute Force atau greedy. Dengan algoritma brute force, kita akan

15
melakukan penelusuran semua kemungkinan yang mungkin pada
kotak kosong sudoku. Asumsikan kotak yang kosong pada permasalahan
sudoku berjumlah N, maka kemungkinan terburuk untuk mencapai
solusi dengan menggunakan algoritma bruteforce-nya adalah 9 ^
N. Tentu jumlah ini sangat besar dan tidak efektif. Sedangkan dengan
menggunakan Algoritma DFS/backtracking kompleksitas yang
dihasilkan dapat dipastikan akan lebih mangkus dari kompleksitas
yang dihasilkan dengan menggunakan algoritma bruteforce.Ada
beberapa sumber yang beranggapan bahwa penelusuran pohon
status dengan menggunakan algoritma sudah termasuk backtracking.
Dengan kata lain semua penelusuran solusi dengan pohon status DFS
telah mengimplementasikan bactracking. Tentu kompleksitas DFS
dengan backtracking jauh lebih mangkus ketimbang DFS tanpa
backtracking.Dengan backtracking hanya pencarian yang mengarah
solusi saja yang selalu dipertimbangkan.

16
BAB IV
PENUTUP

❖ Kesimpulan

Banyak sekali penerapan yang meyinggung tentang metode


menggunakan blind search paling gampang adalah penerapan pada maps
dimana maps akan memperkiraan setiap jara dari lokasi start atau awal hingga
akhir atau goal state. Dengan dijelaskan secara merinci tentang algortima
metode dan juga 2 studi kasus yang telah di analisis ini diharapkan untuk
mahasiswa mengetahui dan dapat menerapkannya dikehidupan biasa.

17
DAFTAR PUSTAKA
• https://docplayer.info/53760086-Penerapan-algoritma-dfs-pada-permainan-sudoku-
dengan-backtracking.html (STUDI KASUS 1)
• https://media.neliti.com/media/publications/174960-ID-penerapan-algoritma-
backtracking-berbasi.pdf (STUDI KASUS 2)
• file:///C:/Users/Dasir%20Buat%20Bisnis/Downloads/212036494-Contoh-Analisis-
STUDI-KASUS.pdf
• http://anasdharmawan.blogspot.com/2016/11/blind-
search_3.html#:~:text=Blind%20Search%20adalah%20pencarian%20solusi,mengenali%
20goal%20state%20bila%20menjumpainya.

Anda mungkin juga menyukai