Anda di halaman 1dari 6

BAB I

PENDAHULUAN
1.1 Latar Belakang
Dalam ilmu komputer, sebuah algoritma pencarian dijelaskan secara luas adalah sebuah
algoritma yang menerima masukan berupa sebuah masalah dan menghasilkan sebuah solusi
untuk masalah tersebut, yang biasanya didapat dari evaluasi beberapa kemungkinan solusi.
Sebagian besar algoritma yang dipelajari oleh ilmuwan komputer adalah algoritma pencarian.
Himpunan semua kemungkinan solusi dari sebuah masalah disebut ruang pencarian. Algortima
pencarian brute-force atau pencarian naif/uninformed menggunakan metode yang sederhana
dan sangat intuitif pada ruang pencarian, sedangkan algoritma pencarian informed
menggunakan heuristik untuk menerapkan pengetahuan tentang struktur dari ruang pencarian
untuk berusaha mengurangi banyaknya waktu yang dipakai dalam pencarian. Adapun dalam
metode pencarian blind atau buta digunakan karena memang tidak ada informasi awal yang
digunakan dalam proses pencarian. Algoritma Pencarian ini salah satunya menggunakan
metode DFS (Depth First Search).

1.2 Tujuan
Mampu memahami tentang metode Depth First Search

1
BAB II
PEMBAHASAN
2.1 Depth First Search
Pencarian dengan metode ini dilakukan dari node awal secara mendalam hingga yang
paling akhir (dead-end) atau sampai ditemukan. Dengan kata lain, simpul cabang atau anak
yang terlebih dahulu dikunjungi.

Proses pencarian dilakukan dengan mengunjungi cabang (node awal paling kiri)
terlebih dahulu hingga tiba di simpul terakhir. Jika tujuan yang diinginkan belum tercapai maka
pencarian dilanjutkan ke cabang sebelumnya, turun ke bawah jika memang masih ada
cabangnya. Begitu seterusnya hingga diperoleh tujuan akhir (goal). Depth First Search,
memiliki kelebihan diantaranya adalah cepat mencapai kedalaman ruang pencarian. Jika
diketahui bahwa lintasan solusi permasalahan akan panjang maka Depth First Search tidak
akan memboroskan waktu untuk melakukan sejumlah besar keadaan dangkal dalam
permasalahan graf. Depth First Search jauh lebih efisien untuk ruang pencarian dengan banyak
cabang karena tidak perlu mengeksekusi semua simpul pada suatu level tertentu pada daftar
open. Selain itu, Depth First Search memerlukan memori yang relatif kecil karena banyak
node pada lintasan yang aktif saja yang Selain kelebihan, Depth First Search juga memiliki
kelemahan di antaranya adalah memungkinkan tidak ditemukannya tujuan yang diharapkan
dan hanya akan mendapatkan satu solusi pada setiap pencarian.

2
2.2 Kelebihan dan Kelemahan Depth First Search
Kelebihan DFS adalah:
Pemakain 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.
Kelemahan DFS 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 pada DFS tidak ada jaminan untuk menemukan solusi yang paling baik (Tidak
Optimal).

2.3 Algoritma Depth First Search

o Bentuk satu elemen Queue yang terdiri dari root node.


o Until Queue empty, atau goal sudah dicapai, maka tentukan apakah elemen
pertama dalam Queue adalah goal node.
a. Jika elemen pertama adalah goal node, maka keluar.
b. Jika elemen pertama tidak goal, maka remove elemen pertama dari Queue dan
add anak elemen pertama.
o Jika goal node sudah ditemukan maka sukses maka yang lain gagal.

2.4 Cara Kerja Depth First Search


Pencarian rute terpendek dilakukan dengan cara membuat simpul-simpul yang menjadi
titik awal, titik-titik yang akan dilalui dan juga titik akhir sebagai akhir dari tujuan atau sebagai
simpul yang dicari.
Dalam algoritma DFS, simpul yang telah dikunjungi disimpan dalam suatu tumpukan
(stack). Antrian ini digunakan untuk mengacu simpul-simpul yang akan dikunjungi sesuai
urutan tumpukan (masuk terakhir, keluar pertama) dan mempermudah proses runut-balik jika
simpul sudah tidak mempunyai anak (simpul pada kedalaman maksimal).
Untuk memperjelas cara kerja algoritma DFS beserta tumpukan yang digunakannya,
berikut langkah-langkah algoritma DFS:
Masukkan simpul ujung (akar) ke dalam tumpukan
Ambil simpul dari tumpukan teratas, lalu cek apakah simpul merupakan solusi
Jika simpul merupakan solusi, pencarian selesai dan hasil dikembalikan.

3
Jika simpul bukan solusi, masukkan seluruh simpul yang bertetangga dengan simpul
tersebut (simpul anak) ke dalam tumpukan
Jika tumpukan kosong dan setiap simpul sudah dicek, pencarian selesai dan
mengembalikan hasil solusi tidak ditemukan
Ulangi pencarian dari langkah kedua

4
BAB III
PENUTUP

3.1 Kesimpulan

Algoritma Depth-First Search bisa digunakan untuk melakukan pencarian rute


terpendek. Dengan memperhatikan keuntungan dan kelemahan dari algoritma tersebut, bisa
diambil kesimpulan bahwa algoritma ini bisa membantu pencarian rute terpendek, sehingga
bisa mendapatkan penyelesaian yang efektif.
Algoritma Depth-First Search akan berhenti melakukan pencarian jika sudah ditemukan
tujuan akhir.

5
Daftar Pustaka

Anda mungkin juga menyukai