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.