Hill Climbing

12
HILL CLIMBING

description

Hill Climbing. Pengertian. Sama halnya dengan teknik generate dan test, Hill Climbing juga melakukan suatu pembangkitan keadaan dan pengujian. Bedanya pengujian pada Hill Climbing menggunakan fungsi heuristik (fx) yang akan memberikan suatu perkiraan ukuran jarak tujuan dari node x. - PowerPoint PPT Presentation

Transcript of Hill Climbing

Page 1: Hill Climbing

HILL CLIMBING

Page 2: Hill Climbing

Sama halnya dengan teknik generate dan test, Hill Climbing juga melakukan suatu pembangkitan keadaan dan pengujian. Bedanya pengujian pada Hill Climbing menggunakan fungsi heuristik (fx) yang akan memberikan suatu perkiraan ukuran jarak tujuan dari node x.

Metode Hill Climbing sering digunakan jika terdapat fungsi heuristic yang baik untuk mengevaluasi state (Rich, 1991). Sebagai contoh, seandainya kita berada di sebuah kota yang tidak dikenal, tanpa peta dan kita ingin menuju ke pusat kota. Cara sederhana adalah menuju gedung yang tinggi. Fungsi heuristics-nya adalah jarak antara lokasi sekarang dengan gedung yang tinggi dan state yang diinginkan adalah state yang mana jarak tersebut merupakan yang terpendek.

PENGERTIAN

Page 3: Hill Climbing

Teknik Hill Climbing dapat digunakan untuk memecahkan persoalan yang memiliki banyak alternatif solusi untuk kemudian memilih solusi yang terbaik.

Hill climbing planner adalah salah satu algoritma yang digunakan dalam forward state planning. Ide dari hill climbing planner ini diambil dari hill climbing search, dimana dalam tiap state algoritma ini akan mengambil satu anak yang paling bagus untuk diekspansi hingga tercapainya goal. Jika terdapat nilai heuristic yang sama, maka akan dipilih secara acak dan jika heuristic yang dihasilkan oleh suatu state tidak membaik, maka pencarian akan dihentikan dan akan diulang.

Page 4: Hill Climbing

Hill climbing planner adalah salah satu algoritma yang digunakan dalam forward state planning. Ide dari hill climbing planner ini diambil dari hill climbing search, dimana dalam tiap state algoritma ini akan mengambil satu anak yang paling bagus untuk diekspansi hingga tercapainya goal. Jika terdapat nilai heuristic yang sama, maka akan dipilih secara acak dan jika heuristic yang dihasilkan oleh suatu state tidak membaik, maka pencarian akan dihentikan dan akan diulang.

IMPLEMENTASI

Page 5: Hill Climbing

Buatlah solusi usulan pertama dengan cara yang sama seperti yang dilakukan dalam prosedur buat dan uji (generate and test). Periksalah apakah solusi usulan itu merupakan sebuah solusi. J ika ya, berhentilah. Jika tidak, kita lanjutkan ke langkah berikutnya.

Dari solusi ini, terapkan sejumlah aturan yang dapat diterapkan untuk membuat sekumpulan solusi usulan yang baru. Saat perubahan yang dilakukan tidak lagi mendapatkan solusi yang lebih baik, algoritma Hill Climbing akan berhenti mencari dan menentukan solusi terakhir sebagai solusi yang optimal.

Untuk setiap elemen kumpulan solusi tersebut, lakukanlah hal-hal berikut ini :a. Kirimkanlah elemen ini ke fungsi uji. J ika elemen ini merupakan sebuah solusi, berhentilah. b. J ika tidak, periksalah apakah elemen ini merupakan yang terdekat dengan solusi yang telah diuji sejauh ini. J ika tidak, buanglah.

Ambilah elemen terbaik yang ditemukan di atas dan pakailah sebagai solusi usulan berikutnya. Langkah ini bersesuaian dengan langkah dalam ruang problema dengan arah yang muncul sebagai yang tercepat dalam mencapai tujuan.

Kembalilah ke langkah 2.

PROSEDUR HILL CLIMBING :

Page 6: Hill Climbing

Contoh : Traveling Salesman Problem (TSP)

Seorang salesman ingin mengunjungi n kota. Jarak antara ti ap-ti ap kota sudah diketahui. Kita ingin mengetahui rute terpendek dimana seti ap kota hanya boleh dikunjungi tepat 1 kali. Misal ada 4 kota dengan jarak antara ti ap-ti ap kota seperti berikut ini :

CONTOH

A B

D C

8

7

6

53

4

Page 7: Hill Climbing

dengan menyusun kota-kota dalam urutan abjad, misal : A – B – C – D : dengan panjang lintasan (=19)

A – B – D – C : (=18) A – C – B – D : (=12) A – C – D – B : (=13) dst

SOLUSI – SOLUSI YANG MUNGKIN

A B

D C

8

7

6

53

4

Page 8: Hill Climbing

Ruang keadaan berisi semua kemungkinan lintasan yang mungkin. Operator digunakan untuk menukar posisi kota-kota yang bersebelahan. Fungsi heuristi k 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 :

METODE SIMPLE HILL CLIMBING

Page 9: Hill Climbing

Keenam kombinasi ini akan dipakai semuanya sebagai operator, yaitu :

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

Page 10: Hill Climbing
Page 11: Hill Climbing

Keadaan awal, l intasan ABCD (=19). Level pertama, hil l climbing mengunjungi BACD (=17), BACD

(=17) < ABCD (=19), sehingga BACD menjadi pilihan selanjutnya dengan operator Tukar 1,2

Level kedua, mengunjungi ABCD, karena operator Tukar 1,2 sudah dipakai BACD, maka pil ih node lain yaitu BCAD (=15), BCAD (=15) < BACD (=17)

Level ketiga, mengunjungi CBAD (=20), CBAD (=20) > BCAD (=15), maka pilih node lain yaitu

BCDA (=18), pilih node lain yaitu DCAB (=17), pilih node lain yaitu BDAC (=14), BDAC (=14) < BCAD (=15)

Level keempat, mengunjungi DBAC (=15), DBAC(=15) > BDAC (=14), maka pilih node lain yaitu BADC (=21), pilih node lain yaitu BDCA (=13), BDCA (=13) < BDAC

(=14) Level kelima, mengunjungi DBCA (=12), DBCA (=12) < BDCA

(=13) Level keenam, mengunjungi BDCA, karena operator Tukar 1,2

sudah dipakai DBCA, maka pil ih node lain yaitu DCBA, pilih DBAC, pilih ABCD, pilih DACB, pilih CBDA

Karena sudah tidak ada node yang memiliki nilai heuristik yang lebih kecil dibanding nilai heuristik DBCA, maka node DBCA (=12) adalah lintasan terpendek (SOLUSI)

Page 12: Hill Climbing

Keadaan awal, lintasan ABCD (=19). Level pertama, hill climbing memilih nilai heuristik terbaik yaitu ACBD (=12) sehingga ACBD menjadi pilihan selanjutnya. Level kedua, hill climbing memilih nilai heuristik terbaik, karena nilai heuristik lebih besar dibanding ACBD, maka hasil yang diperoleh lintasannya tetap ACBD (=12)