Teknik Dasar Pencarian Game Edukasi Mengenal Dan Membaca Bahasa Arab
Jika graf berbentuk pohon berakar, maka semua simpul pada arah d dikunjungi lebih dahulu sebelum simpul-simpul pada arah d+1. Algoritma ini memerlukan
sebuah antrian q untuk menyimpan simpul yang telah dikunjungi. Simpul-simpul ini diperlukan sebagai acuan untuk mengunjungi simpul-simpul yang bertetangga.
Tiap simpul yang telah dikunjungi masuk ke dalam antrian hanya satu kali. Algoritma ini juga membutuhkan tabel Boolean untuk menyimpan simpul yang
telah dikunjungi sehingga tidak ada simpul yang dikunjungi lebih dari satu. Metode penelusuran ini memeriksa semua node simpul pohon pencarian,
dimulai dari simpul akar. Simpul-simpul tingkat dalam diperiksa seluruhnya sebelum pindah ke simpul di tingkat selanjutnya. Proses ini bekerja dari kiri ke
kanan lalu bergerak ke bawah sampai ke titik tujuan goal. Berikut gambar yang mengilustrasikan urutan simpul yang dikunjungi pada algoritma BFS :
Gambar 2.13 Ilustrasi urutan kunjungan simpul pada algoritma BFS [5]
Dari gambar diatas menunjukkan bahwa dengan algoritma BFS, setiap simpul pada tingkat x dikunjungi lebih dahulu sebelum simpul pada tingkat
bawahnya x+1. Dalam algoritma BFS, simpul anak yang telah dikunjungi disimpan dalam suatu antrian. Antrian ini digunakan untuk mengacu simpul-
simpul yang bertetangga yang akan dikunjungi kemudian sesuai urutan pengantrian. Untuk memperjelas cara kerja algoritma BFS beserta antrian yang
digunakan, berikut langkah-langkah pada algoritma BFS yaitu : 1. Masukkan simpul ujung akar ke dalam antrian.
2. Ambil simpul dari awal antrian, lalu cek apakah simpul merupakan solusi atau tidak.
3. Jika simpul merupakan solusi, pencarian selesai dan hasil dikembalikan. 4. Jika simpul bukan solusi, masukkan seluruh simpul yang bertetangga
dengan simpul tersebut ke dalam antrian. 5. Jika antrian kosong dan setiap simpul telah dicek, pencarian selesai dan
mengembalikan hasil solusi tidak ditemukan. 6. Ulangi pecarian dari langkah kedua.
Berikut beberapa keuntungan dari algoritma BFS yaitu : 1. Breadth first search tidak akan terperangkap untuk mengeksplorasi sebuah
jalan yang salah. Hal ini berlawanan dengan algoritma depth first search yang mengkin mengikuti jalan tunggal yaitu jalan yang salah dan waktu
yang lama. 2. Jika ada sebuah solusi, algoritma BFS akan segera menemukannya.
Misalkan ada banyak solusi, maka solusi yang minimal akan cepat ditemukan.