Anda di halaman 1dari 4

Bab II Pembahasan Pengertian Best-first Search Best-First Search merupakan sebuah metode yang membangkitkan simpul dari simpul

sebelumnya. Best-first search memilih simpul baru yang memiliki biaya terkecil diantara semua leaf nodes (simpul-simpul pada level terdalam) yang pernah dibangkitkan. Penentuan simpul terbaik dilakukan dengan menggunakan sebuah fungsi yang disebut fungsi evaluasi f(n). fungsi evaluasi best-first search dapat berupa biaya perkiraan dari suatu simpul menuju ke goal atau gabungan antara biaya sebenarnya dan biaya perkiraan tersebut. Pada setiap langkah proses pencarian terbaik pertama, kita memilih node-node dengan menerapkan fungsi heuristik yang memadai pada setiap node/simpul yang kita pilih dengan menggunakan aturan-aturan tertentu untuk menghasilkan penggantinya. ungsi heuristic merupakan suatu strategi untuk melakukan proses pencarian ruang keadaan suatu problema secara selektif, yang memandu proses pencarian yang kita lakukan sepanjang jalur yang memiliki kemungkinan sukses paling besar. !da beberapa istilah yang sering digunakan pada metode best-first search, yaitu" #. $tart node adalah sebuah terminology untuk posisi a%al sebuah pencarian &. 'urret node adalah simpul yang sedang dijalankan dalam algoritma pencarian jalan terpendek (. $uksesor adalah simpul-simpul yang yang akan diperiksa setelah current node ). $impul (node) merupakan representasi dari area pencarian *. +pen list adalah tempat menyimpan data simpul yang mungkin diakses dari starting node maupun simpul yang sedang dijalankan ,. 'losed list adalah tempat menyimpan data simpul yang juga merupakan bagian dari jalur terpendek yang telah berhasil didapatkan -. .oal node yaitu simpul tujuan /. Parent adalah curret node dari suksesor.

Algoritma best-first search Pertama kali, dibangkitkan node !. 0emudian semua suksesor ! dibangkitan, dan dicari harga paling minimal. Pada langkah &, node 1 terpilih karena harganya paling rendah, yakni #. 2angkah (, semua suksesor 1 dibangkitkan, kemudian harganya akan dibandingkan dengan harga node B dan '. 3ernyata harga node B paling kecil dibandingkan harga node ', 4, dan . $ehingga B terpilih dan selanjutnya akan dibangkitkan semua suksesor B. 1emikian seterusnya sampai ditemukan node tujuan. 5lustrasi algoritma best-first search dapat dilihat pada gambar (.) diba%ah ini.

6ntuk mengimplementasikan algoritma pencarian ini, diperlukan dua buah senarai, yaitu" +P47 untuk mengelola node-node yang pernah dibangkitkan tetapi belum dievaluasi dan '2+$4 untuk mengelola node-node yang pernah dibangkitkan dan sudah dievaluasi. !lgoritma selengkapnya adalah sebagai berikut. #. +P47 berisi initial state dan '2+$41 masih kosong.

&.

6langi a. b. c. d. e.

sampai 8ika 8ika

goal

ditemukan simpul

atau

sampai sama

tidak yang dengan

ada ada

di

dalam di maka

+P47. +P47. sukses '2+$41 tersebut

!mbil simpul tidak, Bangkitkan

terbaik simpul

tersebut masukkan semua

goal, ke

tersebut dari

dalam simpul

aksesor

6ntuk setiap suksesor kerjakan"

i. 8ika suksesor tersebut belum pernah dibangkitkan, evaluasi suksesor tersebut, tambahkan ke +P47, dan catat parent. ii. 8ika suksesor tersebut sudah pernah dibangkitkan, ubah parent-nyajika jalur melalui parent ini lebih baik daripada jalur melalui parent yang sebelumnya. $elanjutnya perbarui biaya untuk suksesor tersebut dn nodes lain yang berada di level ba%ahnya. !lgoritma yang menggunakan metode best-first search, yaitu" a. Greedy Best-First .reedy Best- irst adalah algoritma best-first yang paling sederhana dengan hanya memperhitungkan biaya perkiraan (estimated cost) saja, yakni f(n) = h(n). Biaya yang sebenarnya (actual cost) tidak diperhitungkan. 1engan hanya memperhitungkan biaya perkiraan yang belum tentu kebenarannya, maka algoritma ini menjadi tidak optimal. b. A* !9 adalah algoritma best-first search yang menggabungkan 6niform 'ost $earch dan .reedy Best- irst $earch. Biaya yang diperhitungkan didapat dari biaya sebenarnya ditambah dengan biaya perkiraan. 1alam notasi matematika dituliskan sebagai f(n)= g(n) + h(n). 1engan perhitungan biaya seperti ini, algoritma !9 adalah complete dan optimal.

Kelebihan BFS - 3idak akan menemui jalan buntu. - :enjamin ditemukannya solusi (jika solusinya memang ada) dan solusi yang ditemukan pasti yang paling baik. - 8ika ada satu solusi maka bread-first search akan menemukannya Kekurangan BFS 1an kekurangan dari metode B $ ini yaitu"

- :embutuhkan memori yang cukup banyak. - :embutuhkan %aktu yang cukup lama.

Anda mungkin juga menyukai