140 likes | 339 Views
TEKNIK PELACAKAN. Jika suatu persoalan dapat diREPRESENTASIKAN oleh ruang keadaan, maka teknik pelacakan dapat dgn mudah dilakukan dlm ruang keadaan. Teknik pelacakan harus dipilih sesuai dgn persoalan yg dihadapi. TEKNIK PELACAKAN TRIAL & ERROR.
E N D
TEKNIK PELACAKAN Jika suatu persoalan dapat diREPRESENTASIKAN oleh ruang keadaan, maka teknik pelacakan dapat dgn mudah dilakukan dlm ruang keadaan. Teknik pelacakan harus dipilih sesuai dgn persoalan yg dihadapi.
TEKNIK PELACAKAN TRIAL & ERROR • Metoda trial & error merupakan metoda pelacakan paling sederhana. Prinsipnya adalah memilih dan menerapkan operator-operator sampai keadaan sasaran (goal state) diperoleh. • Prosedur Pelacakan 1. Ambil State sebagai keadaan awal 2. While State≠ keadaan sasaran do 3. Begin 4. Pilih operator yg dapat diterapkan pd state 5. State:= operator (state) 6. End
Penjelasan prosedur : • Pada langkah ke-4, operator dipilih secara acak dr beberapa operator yg dpt diterapkan. • Pada langkah ke-5, operator yg dipilih dterapkan pd state membentuk state baru. • Prosedur bersifat stokastik artinya tdk menjamin dicapainya keadaan sasaran.
TEKNIK PELACAKAN SISTEMATIS • Memiliki dua metoda : Pelacakan Vertikal dan Pelacaan Horizontal. PELACAKAN VERTIKAL Pada metoda ini ruang keadaan dpt direpresentasikan dgn Diagram POHON maupun GRAFIK. Simpul-simpul yg paling dalam hrs diperiksa terlebih dahulu, shg metoda ini srng disebut ‘Depth-first search’.
Prosedur Pelacakan HILL CLIMBING (HC) • n := simpul awal • LOOP : if goal (n) then exit(success) • Ekspansikan n, hitung h’ (ni) utk semua simpul anak ni dan ambil next n = simpul anakdgn h’ (ni) terkecil. • if h’ (n)<h’ (next n) then exit (fail) • N:=(next n) • Go to LOOP
lanjutan Diasumsikan fungsi harga merupakaan perbedaan koordinat antara suatu simpul dgn simpul sasaran sbb : h’ (n) = koordinat x sasaran – koordinat x simpul n koordinat y sasaran – koordinat y simpul n Urutan pelacakan simpul utk memperoleh solusi optimal adalah : S ------ A ------- B ------- E -------- G
lanjutan Penerapan metoda ‘Hill Climbing’ tdk selalu menghasilkan solusi. Metode Hill Climbing tdk dapat diterapkan pada persoalan-persoalan dimana selain puncak sasaran terdapat puncak-puncak lainnya.
TEKNIK PELACAKAN ‘BEST FIRST SEARCH (BSF)’ Metoda Best First Search dipakai utk mengatasi persoalan di HC, yaitu jk terdapat beberapa puncak lain selain puncak sasaran. Prosedur BSF : 1. Berikan simpul awal s pd open. 2. LOOP : if open : kosong then exit(fail) 3. n:=first(open) 4. if goal (n) then exit (success) 5. Remove(n,open) Add(n, closed) 6. Ekspansikan simpul n, bangkitkan semua simpul anak. Berikan pd open simpul-simpul yg belum muncul pd open maupun closed dan bubuhkan pointer ke n. urutkan simpul-simpul pd daftar open mulai dr h’ (n) terendahnya. 7. Go to LOOP
Lanjutan Penerapan metoda ‘best first search’ utk persoalan pd gmb. Diatas. menghsilkan daftar open yg berubah sbb. : (s(6)) ---- (A(4)) ---- (B(2)C(3)) ---- (C(3)E(3)) ---- (E(3) D(4)) ---- (H(2) D(4)) ---- (G(O) D(4) F(4))
Solusi Optimal dgn Informasi HEURISTIK • Teknik pelacakan ini disebut jg Algoritma-A. (A – algorithm) • Defenisikan : - g(n) : fungsi harga optimal dr simpul awal ke simpul n. - h(n) : fungsi harga optimal dr simpul n ke simpul sasaran. - f(n) : g(n) + h(n) : fungsi harga total dr simpul awal ke simpul sasaran melalui simpul n.
Lanjutan Persoalannya adalah mencari jalur optimal dr simpul awal ke simpul sasaran. Pd kenyataannya, baik g(n) maupun h(n) tdk dpt diketahui dgn pasti. Oleh karna itu ditentukan nilai taksirannya berturut-turut g(n) dan h(n) .
Prosedur Algoritma - A • Berikan simpul awal pd open, f(s):=h(s) • LOOP := if open = kosong then exit(fail) • N := first (open) • If goal (n) then exit (success) • Remove(n, open) Add(n, closed) • Ekspansikan simpul n, bangkitkan simpul anak. Utk semua simpul anak, hitung f’(n,ni)=g’(n,ni)+h’(ni).
lanjutan Berikan pd open semua simpul yg terdapat pd open maupun closed dan bubuhkan pointer ke n. Sebelum n diekspansi, bandingkan f’(n,ni) dgn f’(n,ni) utk semua simpul pd open. Jika f’(n,ni) lebih kecil drpada f’(ni) ambil f’(ni) = f’(n,ni), dan bubuhkan pointer dari ni ke n. Jika simpul anak ni terdpt pd closed dan f’(n,ni) lbh kecil drpd f’(ni) , ambil f’(ni) = f’(n,ni) , bubuhkan pointer dr ni ke n dan berikan simpul ni ke open. Urutkan simpul-simpul pd open mulai dr f’ terendahnya. 7. Go to LOOP
Lanjutan Teknik pelacakan dgn algoritma A blm dpt dipastikan akan memberikan solusi optimal.