07/04/2016 3. HEURISTI METHO KEERASAN BUATAN Pertemuan : 05-06 INFORMATIKA FASILKOM UNIVERSITAS IGM Pencarian Heuristik Kelemahan blind search : Waktu akses lama Memori yang dibutuhkan besar Ruang masalah besar tidak cocok karena keterbasan kecepatan komputer dan memori Solusi - Pencarian heuristik Pencarian heuristik menggunakan suatu fungsi yang menghitung biaya perkiraan / estimasi dari suatu simpul tertentu menuju ke simpul tujuan (disebut fungsi heuristik) 1 Literatur Review ontoh Kasus 8-puzzle Ada 4 operator : Ubin kosong digeser ke kiri Ubin kosong digeser ke kanan Ubin kosong digeser ke bawah Ubin kosong digeser ke atas Keadaan Awal 1 2 3 7 8 4 6 5 Tujuan 1 2 3 8 4 7 6 5 ontoh iberikan informasi khusus : Untuk jumlah ubin yang menempati posisi yang benar, jumlah yang lebih tinggi adalah yang lebih diharapkan (lebih baik) ari 3 operator yang digunakan, diperoleh hasil pergeseran ubin kosong ke kiri bernilai h=6, pergeseran ubin kosong ke kanan bernilai h=4 dan pergeseran ubin kosong ke atas bernilai h=5. sehingga nilai berbilangnya adalah 6 (terbesar). Sehingga langkahnya selanjutnya yang harus dilakukan adalah menggeser ubin kosong ke kiri. 1
Posisi ubin benar ontoh ari 3 operator yang digunakan, diperoleh hasil pergeseran ubin kosong ke kiri bernilai h=6, pergeseran ubin kosong ke kanan bernilai h=4 dan pergeseran ubin kosong ke atas bernilai h=5. sehingga nilai berbilangnya adalah 6 (terbesar). Sehingga langkahnya selanjutnya yang harus dilakukan adalah menggeser ubin koosng ke kiri. iberikan informasi khusus : Untuk jumlah ubin yang menempati posisi yang salah, jumlah yang lebih kecil adalah yang lebih diharapkan (lebih baik) Nilai terbaik dengan menggeser ubin kosong Ke kiri bernilai h=2, karena Nilai terkecil diantara lainnya. Sehingga langkah selanjutnya menggeser ubin kosong ke kiri. ontoh Menghitung total gerakan yang diperlukan untuk mencapai tujuan Jumlah yang lebih kecil adalah yang diharapkan (lebih baik) Nilai terbaik adalah 2, diperoleh dengan menggeser ubin kosong ke kiri. karena Nilai terkecil diantara lainnya. Sehingga menggeser ubin kosong ke kiri adalah langkah yang harus dilakukan selanjutnya. Pencarian Heuristik Berikut ini, sekilas metode yang tergolong heuristic search : a. Generate and Test (Pembangkitan dan Pengujian) b. Hill limbing (Pendakian Bukit) 1. Simple H 2. Steepest-Ascent H c. Best First Search 2
Generate and Test (GT) ontoh Kasus Metode ini merupakan penggabungan antara depthfirst search dengan pelacakan mundur (backtracking), yaitu bergerak ke belakang menuju pada suatu keadaan awal. Algoritma : Bangkitkan suatu kemungkinan solusi (membangkitkan suatu titik tertentu atau lintasan tertentu dari keadaan awal). Uji untuk melihat apakah node tersebut benar-benar merupakan solusinya dengan cara membandingkan node tersebut atau node akhir dari suatu lintasan yang dipilih dengan kumpulan tujuan yang diharapkan. Jika solusi ditemukan, keluar. Jika tidak, ulangi kembali langkah pertama. Traveling Salesman Problem (TSP) o Seorang salesman ingin mengunjungi n kota. o Jarak antara tiap-tiap kota sudah diketahui. o Kita ingin mengetahui rute terpendek dimana setiap kota hanya boleh dikunjungi tepat 1 kali. o Misal ada 4 kota dengan jarak antara tiap-tiap kota seperti berikut ini : A 7 8 3 4 6 5 B ontoh Kasus Penyelesaian dengan metode Generate and Test ontoh Kasus Penyelesaian dengan metode Generate and Test A B B B B B B 3
Pencarian ke- ontoh Kasus Panjang Terpilih Panjang Terpilih 1 AB 19 AB 19 2 AB 18 AB 18 3 AB 12 AB 12 4 AB 13 AB 12 5 AB 16 AB 12 dst............ 24 BA 19 AB 12 Hill limbing Menyelesaikan masalah yang mempunyai beberapa solusi Ada solusi yang lebih baik daripada solusi lain Hill limbing Hill limbing ontoh : Traveling Salesman Problem (TSP) Seorang salesman ingin mengunjungi n kota. Jarak antara tiap-tiap kota sudah diketahui. Kita ingin mengetahui rute terpendek dimana setiap kota hanya boleh dikunjungi tepat 1 kali. Misal ada 4 kota dengan jarak antara tiap-tiap kota seperti berikut ini : A 7 8 3 4 6 5 B Solusi solusi yang mungkin dengan menyusun kota-kota dalam urutan abjad, misal : A B : dengan panjang lintasan (=19) A B : (=18) A B : (=12) A B : (=13) dst 4
Simple Hill limbing Simple Hill limbing Ruang keadaan berisi semua kemungkinan lintasan yang mungkin. Operator digunakan untuk menukar posisi kota-kota yang bersebelahan. Fungsi heuristik 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 : 6 kombinasi tsb digunakan sbg operator : Tukar 1,2 = menukar urutan posisi kota ke 1 dengan kota ke 2 Tukar 2,3 = menukar urutan posisi kota ke 2 dengan kota ke 3 Tukar 3,4 = menukar urutan posisi kota ke 3 dengan kota ke 4 Tukar 4,1 = menukar urutan posisi kota ke 4 dengan kota ke 1 Tukar 2,4 = menukar urutan posisi kota ke 2 dengan kota ke 4 Tukar 1,3 = menukar urutan posisi kota ke 1 dengan kota ke 3 Pada gambar berikut, terlihat bahwa lintasan terpilih (Level awal) adalah AB(=19). Pada Level pertama, Hill limbing akan mengunjungi BA (=17) dengan nilai heuristik lebih kecil dari 19, sehingga BA menjadi pilihan selanjutnya dengan operator Tukar 1,2. Artinya operator Tukar 1,2 sudah digunakan oleh BA. 5
Simple Hill limbing Keadaan awal, lintasan AB (=19). Level pertama, hill climbing mengunjungi BA (=17), BA (=17) < AB (=19), sehingga BA menjadi pilihan selanjutnya dengan operator Tukar 1,2 Level kedua, mengunjungi AB, karena operator Tukar 1,2 sudah dipakai BA, maka pilih node lain yaitu BA (=15), BA (=15) < BA (=17) Level ketiga, mengunjungi BA (=20), BA (=20) > BA (=15), maka pilih node lain yaitu BA (=18), pilih node lain yaitu AB (=17), pilih node lain yaitu BA (=14), BA (=14) < BA (=15) Level keempat, mengunjungi BA (=15), BA(=15) > BA (=14), maka pilih node lain yaitu BA (=21), pilih node lain yaitu BA (=13), BA (=13) < BA (=14) Level kelima, mengunjungi BA (=12), BA (=12) < BA (=13) Level keenam, mengunjungi BA, karena operator Tukar 1,2 sudah dipakai BA, maka pilih node lain yaitu BA, pilih BA, pilih AB, pilih AB, pilih BA Karena sudah tidak ada node yang memiliki nilai heuristik yang lebih kecil dibanding nilai heuristik BA, maka node BA (=12) adalah lintasan terpendek (SOLUSI) Simple Hill limbing Keadaan awal, lintasan AB (=19). Level pertama, hill climbing mengunjungi BA (=17), BA (=17) < AB (=19), sehingga BA menjadi pilihan selanjutnya dengan operator Tukar 1,2 Level kedua, mengunjungi AB, karena operator Tukar 1,2 sudah dipakai BA, maka pilih node lain yaitu BA (=15), BA (=15) < BA (=17) Level ketiga, mengunjungi BA (=20), BA (=20) > BA (=15), maka pilih node lain yaitu BA (=18), pilih node lain yaitu AB (=17), pilih node lain yaitu BA (=14), BA (=14) < BA (=15) Steepest Hill limbing Evaluasi state awal, jika state awal sama dengan tujuan, maka proses berhenti. Jika tidak sama dengan tujuan maka lanjutkan proses dengan membuat state awal sebagai state sekarang. Kerjakan langkah berikut sampai solusi ditemukan atau sampai tidak ada lagi operator baru yang dapat digunakan dalam state sekarang: ari sebuah operator yang belum pernah digunakan dalam state sekarang dan gunakan operator tersebut untuk membentuk state baru. Evaluasi state baru. Jika state baru adalah tujuan, maka proses berhenti Jika state baru tersebut bukan tujuan tetapi state baru lebih baik daripada state sekarang, maka buat state baru menjadi state sekarang. Jika state baru tidak lebih baik daripada state sekarang, maka lanjutkan kelangkah sebelumnya. 6
Steepest Hill limbing Mirip dengan simple hill climbing Perbedaannya dengan simple hill climbing : semua suksesor dibandingkan, dan yang paling dekat dengan solusi yang dipilih Pada simple hill climbing, node pertama yang jaraknya terdekat dengan solusi yang dipilih Keadaan awal, lintasan AB (=19). Pada Level pertama, hill climbing memilih nilai heuristik terbaik dari keenan Succesor yang ada : BA(17), AB(12), AB(18), BA(12), AB(18) atau BA(20), yaitu AB (=12) sehingga AB menjadi pilihan selanjutnya. Level kedua, hill climbing memilih nilai heuristik terbaik, karena nilai heuristik lebih besar dibanding AB, maka hasil yang diperoleh lintasannya tetap AB (=12) Manfaat - LR 07/04/2016 ج ز ا م كم مهللا خ ر ي ا ك ث ر ي ا السالم عليكم ورحمة هللا وبركاته 27 Literatur Review 7