You are on page 1of 4

ALGORITMA HILL CLIMBING

1. PENDAHULUAN B. Perumusan Masalah


Rumusan masalah yang akan dibahas
dalam makalah ini adalah
A. Latar Belakang 1. Apakah pengertian Hill Climbing ?
Heuristic seringkali disebut sebagai lawan 2. Bagaimanakah algoritma Simple Hill
dari kata algoritmik dalam dunia Climbing?
pemrograman. Heuristic adalah suatu 3. Bagaimanakah contoh penerapan
proses yang mungkin dapat algoritma Simple Hill Climbing?
menyelesaikan suatu masalah tetapi tidak
ada jaminan bahwa solusi yang dicari C. Tujuan
selalu dapat ditemukan. Dengan kata lain, Tujuan dari makalah ini adalah sebagai
heuristic adalah sebuah teknik yang berikut;
mengembangkan efisiensi dalam proses 1. Mengetahui pengertian Hill Climbing.
pencarian, namun dengan kemungkinan 2. Mengetahui algoritma Simple Hill
mengorbankan kelengkapan Climbing.
(completeness). Sedangkan fungsi 3. Mengetahui contoh dan penerapan
heuristik adalah fungsi yang melakukan algoritma Simple Hill Climbing.
pemetaan (mapping) dari diskripsi
keadaan masalah (problema) ke pengukur
kebutuhan, umumnya dipresentasikan 2. PEMBAHASAN
berupa angka. Fungsi heuristic digunakan
untuk mengevaluasi keadaan-keadaan 1. Pengertian Hill Climbing
problema individual dan menentukan
Metode Hill Climbing hampir sama dengan
seberapa jauh hal tersebut dapat
metode pembangkitan & pengujian
digunakan untuk mendapatkan solusi
(Generate and Test), hanya saja proses
yang diinginkan.
pengujian dilakukan dengan
Dalam mempelajari metode-metode
menggunakan fungsi heuristik.
pencarian heuristik, kata heuristic
Pembangkitan keadaan berikutnya sangat
diartikan sebagai suatu fungsi yang
tergantung pada feedback dari prosedur
memberikan suatu nilai berupa biaya
pengetesan. Tes yang berupa fungsi
perkiraan (estimasi) dari suatu solusi. Ada
heuristik ini akan menunjukkan seberapa
beberapa macam metode pencarian
baiknya nilai terkaan yang diambil
heuristik, yaitu pembangkitan dan
terhadap keadaan-keadaan lainnya yang
pengujian (Generate and Test), Hill
mungkin. Hill Climbing adalah proses
Climbing, Best First Search, Alpha Beta
pengujian yang dilakukan dengan
Prunning, Means-End-Anlysis, Constraint
menggunakan fungsi heuristik.
Satisfaction, dan Simulated Annealing.
Pembangkitan keadaan berikutnya sangat
Dalam metode pencarian heuristik Hill
tergantung pada feedback dari prosedur
Climbing, ada dua macam
pengetesan. Tes yang berupa fungsi
metode heuristik yakni Simple Hill
heuristik ini akan menunjukkan seberapa
Climbing dan Steepest (Ascent
baiknya nilai terkaan yang diambil
HillClimbing). Dalam makalah ini, penulis
terhadap keadaan-keadaan lainnya yang
akan membahas mengenai metode
mungkin. Metode Hill climbing merupakan
heuristik Simple Hill Climbing yang disertai
variasi dari depth-first search. Dengan
dengan contoh algoritma pada metode
metode ini, eksplorasi terhadap keputusan
tersebut pada saat diterapkan pada suatu
dilakukan dengan cara depth-first search
permasalahan.
dengan mencari path yang bertujuan
menurunkan cost untuk menuju kepada
goal/keputusan. Yaitu dengan selalu
memilih nilai heuristik terkecil.
Dalam metode heuristik Hill Climbing, yang bersebelahan. Fungsi heuristik yang
terdapat dua jenis Hill Climbing yang digunakan adalah panjang lintasan yang
sedikit berbeda, yakni Simple Hill Climbing terjadi
(Hill Climbing sederhana) dan Steepest-
Ascent Hill Climbing (Hill Climbing dengan
memilih kemiringan
yang paling tajam / curam).

2. Algoritma Hill Climbing


Berikut adalah algoritma dari Simple Hill
Climbing;
1. Mulai dari keadaan awal, lakukan
pengujian: jika merupakan tujuan, maka
berhenti; dan jika tidak, lanjutkan dengan
keadaan sekarang sebagai
keadaan awal.
2. Kerjakan langkah-langkah berikut Operator yang akan kita gunakan, adalah
sampai solusinya ditemukan, atau menukar urutan posisi 2 kota dalam suatu
sampai tidak ada operator baru yang akan lintasan. Apabila ada n kota, dan kita ingin
diaplikasikan pada keadaan mencari kombinasi
sekarang: lintasan dengan menukar posisi urutan 2
a) Cari operator yang belum pernah kota, maka kita akan mendapatkan
digunakan; gunakan operator ini sebanyak :
untuk mendapatkan keadaan yang Sehingga kalau ada 4 kota, kita bisa
baru. memperoleh : kombinasi.
b) Evaluasi keadaan baru tersebut. Keenam kombinasi ini akan kita pakai
1) Jika keadaan baru merupakan semuanya sebagai operator, yaitu:
tujuan, keluar. * Tukar 1, 2 (menukar urutan posisi kota
2) Jika bukan tujuan, namun nilainya ke-1 dengan kota ke-2).
lebih baik daripada keadaan * Tukar 2, 3 (menukar urutan posisi kota
sekarang, maka jadikan keadaan ke-2 dengan kota ke-3).
baru tersebut menjadi keadaan * Tukar 3, 4 (menukar urutan posisi kota
sekarang. ke-3 dengan kota ke-4).
3) Jika keadaan baru tidak lebih baik * Tukar 4, 1 (menukar urutan posisi kota
daripada keadaan sekarang, ke-4 dengan kota ke-1).
maka lanjutkan iterasi. * Tukar 2, 4 (menukar urutan posisi kota
Pada simple hill climbing ini, ada 3 ke-2 dengan kota ke-4).
masalah yang mungkin, yaitu: * Tukar 1, 3 (menukar urutan posisi kota
1) Algoritma akan berhenti kalau ke-1 dengan kota ke-3).
mencapai nilai optimum lokal. Pada Gambar 2.22 terlihat bahwa, pada
2) Urutan penggunaan operator akan keadaan awal, lintasan terpilih
sangat berpengaruh pada penemuan adalah ABCD (=19). Pada level pertama,
solusi. hill climbing akan mengunjungi
3) Tidak diijinkan untuk melihat satupun BACD (=17) yang ternyata memiliki nilai
langkah sebelumnya. heuristik lebih kecil dibandingkan
dengan ABCD (17<19), sehingga BACD
3. Contoh Penerapan Algoritma Hill menjadi pilihan selanjutnya dengan
Climbing operator terpakai Tukar1,2. Pada level
Salah satu contoh dari penerapan kedua, hill climbing akan mengunjung
Algoritma Simple Hill Climbing adalah ABCD. Karena operator Tukar 1, 2 sudah
Traveling Salesman Problem. Di sini digunakan oleh BACD, maka dipilih node
ruang keadaan berisi semua kemungkinan yang lain yaitu BCAD (=15). Karena nilai
lintasan yang mungkin. Operator heuristik BCAD lebih
digunakan untuk menukar posisi kota-kota
kecil dibanding dengan BACD (15<17), Gambar 2.23. Lintasan terpendek yang
maka node BCAD akan menjadi diperoleh adalah B-C-A-D yaitu
pilihan selanjutnya dengan operator sebesar 15. Disini kita akan terjebak pada
Tukar2,3. Kemudian hill climbing akan nilai minimum local yang
mengunjungi CBAD (=20). Karena nilai disebabkan oleh kurangnya operator yang
heuristik CBAD lebih besar jika kita gunakan. Kita tidak dapat
dibanding dengan BCAD (20>17), maka memperoleh nilai minimum globalnya
dipilih node lain. Pencarian menuju yaitu sebesar 12.
ke node BACD, karena operator Tukar2,3
sudah pernah digunakan oleh
BCAD, maka dipilih node lain. Kunjungan
berikutnya ke node BCDA (=18).
Nilai inipun masih lebih besar dari nilai
heuristik BCAD, sehingga dipilih
node lain. Node vang dikunjungi
berikutnya adalah DCAB (=19). Nilai
heuristic DCAB ternyata juga lebih besar
dibanding dengan BCAD, sehingga
pencarian dilanjutkan di node lainnya lagi,
yaitu BDAC (=14). Nilai heuristik
ini sudah lebih kecil daripada nilai
heuristik node BCAD (14<15), maka Contoh TSP di atas adalah contoh
sekarang node ini yang akan diekplorasi. pertama yang dibahas dalam makalah ini.
Pencarian pertama ditemukan node Untuk contoh kedua adalah game Number
DBAC (=21), yang lebih besar daripada Puzzle Slider dengan langkah langkah
nilai BDAC. Nilai heuristik yang menggunakan Simple Hill Climbing.
lebih kecil diperoleh pada node BDCA Berikut adalah contoh menyelesaikan
(=13). Sehingga node BDCA ini akan Number Puzzle Slider dengan kondisi
diekplorasi. Pencarian pertama sudah tertentu menggunakan Simple Hill
mendapatkan node dengan nilai Climbing;
heuristik yang lebih kecil, yaitu DBCA
(=12). Sehingga node ini diekplorasi Current State Goal State
juga. Dari hasil ekplorasi dengan
pemakaian semua operator, ternyata
sudah
tidak ada node yang memiliki nilai
heuristik yang lebih kecil dibanding
dengan nilai heuristik DBCA, sehingga
sebenarnya node DBCA (=12) inilah
lintasan terpendek yang kita cari
(SOLUSI). Misalkan kita tidak h(n) adalah nilai total heuristik dari kondisi
menggunakan puzzle. Bernilai 0 untuk posisi yang benar
semua operator, melainkan kita hanya dan untuk posisi yang salah nilainya
menggunakan 4 operator pertama saja, adalah jarak terpendek menuju posisi
yaitu : benar. Proses evaluasi yang dilakukan
* Tukar 1,2 (menukar urutan posisi kota selalu mengambil nilai heuristik terkecil.
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'l).
Maka pencarian dengan simple hill
climbing ini dapat dilihat pada
lanjutkan dengan keadaan
sekarang sebagai keadaan awal.\
b. Kerjakan langkah-langkah berikut
sampai solusinya ditemukan, atau
sampai tidak ada operator baru
yang akan diaplikasikan pada
keadaan sekarang:
a. Cari operator yang belum
pernah digunakan; gunakan
operator ini untuk mendapatkan
keadaan yang baru.
b. Evaluasi keadaan baru tersebut.
1. Jika keadaan baru
merupakan tujuan, keluar.
2. Jika bukan tujuan, namun
nilainya lebih baik daripada
keadaan sekarang, maka
jadikan keadaan baru
tersebut menjadi keadaan
sekarang.
3. Jika keadaan baru tidak lebih
baik daripada keadaan
sekarang, maka lanjutkan
iterasi.

[3] Algoritma Simple Hill Climbing pada


umumnya diterapkan dalam masalah
Travelling Salesman Problem (TSP)
dan bisa diterapkan untuk
menyelesaikan game Number Puzzle
Slider.

4. DAFTAR PUSTAKA

[1] Kusumadewi, Sri. Pengantar


3. PENUTUP
Kecerdasan Buatan
Simpulan (AK045218): Teknik Pencarian
Simpulan dari pembahasan yang telah
Heuristik.
diuraikan di atas yaitu:
1. Hill Climbing adalah proses pengujian [2] Taufiq, Andik. 2010. 8-Puzzle
yang dilakukan dengan menggunakan Problem Bagian 2
fungsi heuristik. Hill Climbing terdiri dari http://andiktaufiq.wordpress.co
dua macam metode yakni Simple Hill m/2010/05/02/8-puzzle-
Climbing dan Steepest-Ascent Hill problem-bagian-2/.
Climbing.

2. Terdapat beberapa langkah dalam


algoritma Simple Hill Climbing yaitu:
a. Mulai dari keadaan awal, lakukan
pengujian: jika merupakan tujuan,
maka berhenti; dan jika tidak,

You might also like