Professional Documents
Culture Documents
3 4
7 B C D
5
C D B D C B
D C
6
D C D B B C
1 ABCD 19 ABCD 19
2 ABDC 18 ABDC 18
3 ACBD 12 ACBD 12
4 ACDB 13 ACBD 12
5 ADBC 16 ACBD 12
Dst…
Pencarian terbimbing (heuristic search)
Rute terpendek dengan menggunakan Generate and Test
adalah ACBD atau DBCA yaitu 12
Pencarian terbimbing (heuristic search)
PENDAKIAN BUKIT (Hill Climbing)
hampir sama dengan metode pembangkitan dan pengujian
Pembangkitan keadaan berikutnya tergantung pada feedback
dari prosedur pengetesan
Pencarian terbimbing (heuristic search)
Algoritma Simple Hill Climbing
1. Cari operator yang belum pernah digunakan; gunakan operator
ini untuk mendapatkan keadaan yang baru.
a. Kerjakan langkah-langkah berikut sampai solusinya ditemukan atau sampai
tidak ada operator baru yang akan diaplikasikan pada keadaan sekarang :
Cari operator yang belum digunakan; gunakan operator ini untuk
mendapatkan keadaan yang baru.
b. Evaluasi keadaan baru tersebut :
i. Jika keadaan baru merupakan tujuan, keluar
ii. Jika bukan tujuan, namun nilainya lebih baik daripada keadaan
sekarang, maka jadikan keadaan baru tersebut menjadi keadaan
sekarang.
iii. Jika keadaan baru tidak lebih baik daripada keadaan sekarang, maka
lanjutkan iterasi
Pencarian terbimbing (heuristic search)
Pada simple hill climbing, ada 3 masalah yang mungkin:
Algoritma akan berhenti kalau mencapai nilai optimum local
Urutan penggunaan operator akan sangat berpengaruh pada
penemuan solusi
Tidak diijinkan untuk melihat satupun langkah sebelumnya
Pencarian terbimbing (heuristic search)
Contoh : TSP dengan Simple Hill Climbing
Disini ruang keadaan berisi semua kemungkinan llintasan
yang mungkin. Operator digunakan untuk menukar posisi
kota-kota yang bersebelahan. Apabila ada n kota, dan kita
ingin mencari kombinasi lintasan dengan menukar posisi
urutan 2 kota, maka kita akan mendapatkan sebanyak : 2!(nn! 2)!
atau sebanyak 6 kombinasi (lihat gambar di bawah). Fungsi
heuristic yang digunakan adalah panjang lintasan yang terjadi
Operator yang akan digunakan adalah menukar urutan posisi 2 kota
dalam 1 lintasan. Bila ada n kota, dan ingin mencari kombinasi lintasan
dengan menukar posisi urutan 2 kota, maka akan didapat sebanyak
3 4
7 5
D C
6
Pencarian terbimbing (heuristic search)
PENCARIAN TERBAIK PERTAMA (Best-First Search)
kombinasi dari metode depth-first search dan breadth-first search
pencarian diperbolehkan mengunjungi node yang ada di level yang
lebih rendah, jika node pada level yang lebih tinggi ternyata memiliki
nilai heuristic yang lebih buruk
Fungsi Heuristik yang digunakan merupakan prakiraan (estimasi) cost
dari initial state ke goal state, yang dinyatakan dengan :
16
Best-First Search
17
Best-First Search
18
Best-First Search
19
Best-First Search
20
Best-First Search
21
A* Search
Merupakan perbaikan dari metode best first search
dengan memodifikasi fungsi heuristiknya
Fungsi evaluasi:
22
Algoritma A*
1. Set : OPEN = [S], dan CLOSED={}, dengan S adalah node yang
dipilih sebagai keadaan awal
2. Kerjakan jika OPEN belum kosong;
a. Cari node n dari OPEN dimana nilai f(n) minimal. Kemudian tempatkan n pada
CLOSED
b. Jika n adalah node tujuan, keluar. SUKSES
c. Ekspan node n ke anak-anaknya
d. Kerjakan untuk setiap anak n, yaitu n’ :
i. Jika n’ belum ada di OPEN atau CLOSED, maka :
1. Masukan n’ ke OPEN. Kemudian set backpointer dari n’ ke n
2. Hitung :
a. H(n’)
b. G(n’) = g(n) + c(n,n’); dengan c(n,n’) adalah biaya dari n ke n’, dan
c. F(n’) = g(n) + h(n’)
ii. Jika n’ telah ada di OPEN atau CLOSED dan jika g(n’) lebih kecil (untuk versi
n’ yang baru), maka :
1. Buang versi lama n’
2. Ambil n’ di OPEN, dan set backpointer dari n’ ke n
Contoh: A* Search
24
A* Search
25
A* Search
26
A* Search
27
A* Search
28
A* Search
29
Contoh : Berikut ini adalah peta Romania dengan jarak jalan-
jalan yang menghubungkan kota-kota dalam km
Adapun jarak kota-kota terhadap kota
Bucharest jika ditarik garis lurus adalah
sebagai berikut :
Arad 366 Mehadia 241
Bucharest 0 Neamt 234
Craiova 160 Oradea 380
Dobreta 242 Pitesti 98
Eforie 161 Rimnicu Vilcea
Fagaras 178 193
Giurgiu 77 Sibiu 253
Hirsova 151 Timisoara 329
Iasi 226 Urziceni 80
Lugoj 244 Vaslui 199
Zerind 374
Heuristik yang digunakan adalah jarak kota-kota terhadap kota
Bucharest jika ditarik garis lurus yang jaraknya seperti yang
tertera di atas dengan asumsi kota terhubung yang letaknya paling
dekat dengan kota Bucharest adalah jalan yang paling optimal.