Anda di halaman 1dari 11

Metode Heuristic

Search
GENERATE AND TEST
KELOMPOK 1

Heuristic Search

Heuristik adalah sebuah teknik yang mengembangkan efisiensi


dalam proses pencarian, namum dengan kemungkinan
mengorbankan kelengkapan (completeness).

Fungsi heuristik digunakan untuk mengevaluasi keadaankeadaan problema individual dan menentukan seberapa jauh hal
tersebut dapat digunakan untuk mendapatkan solusi yang
diinginkan.

Jenis-jenis Heuristic Searching

Generate and Test

Simple Hill Climbing

Steepest-Ascent Hill Climbing

Simulated Annealing

Greedy Best-First Search

A*

Dll.

Generate and Test

Metode Generate-and-Test (GT) adalah metode yang paling


sederhana dalam teknik pencarian heuristik. Di dalam metode
ini, terdapat dua prosedur penting yaitu:
- Pembangkit (generate), yang membangkitkan semua solusi
yang mungkin.
- Test, yang menguji solusi yang dibangkitkan tersebut.

Metode ini merupakan penggabungan antara depth-first search


dengan pelacakan mundur (backtracking), yaitu bergerak ke
belakang menuju pada suatu keadaan awal.

Dengan penggunaan memori yang sedikit, DFS bisa digunakan


sebagai prosedur pembangkit yang menghasilkan suatu solusi.

Prosedur Test bisa menggunakan fungsi heuristik.

Algoritma Generate-and-Test
1.

Bangkitkan sebuah solusi yang mungkin. Solusi bisa berupa


suatu keadaan (state) tertentu. Solusi juga bisa berupa sebuah
jalur dari satu posisi asal ke posisi tujuan, seperti dalam kasus
pencarian rute dari satu kota asal ke kota tujuan.

2.

Tes apakah solusi yang dibangkitkan tersebut adalah sebuah


solusi yang bisa diterima sesuai dengan kriteria yang diberikan.

3.

Jika solusi telah ditemukan, keluar. Jika belum, kembali ke


langkah pertama.

Contoh
Traveling Salesman Problem (TSP)

Seorang salesman ingin mengunjungi sejumlah n kota. Akan


dicari rute terpendek di mana setiap kota hanya boleh dikunjungi
tepat 1 kali. Jarak antara tiap-tiap kota sudah diketahui. Misalkan
ada 4 kota dengan jarak antara tiap-tiap kota seperti terlihat
pada gambar berikut:

Penyelesaian

Penyelesaian dengan menggunakan Generate-and-Test dilakukan


dengan membangkitkan solusi-solusi yang mungkin dengan
menyusun kota-kota dalam urutan abjad, yaitu:
A-B-C-D
A-B-D-C
A-C-B-D
A-C-D-B
dan seterusnya

Kemudian kita petakan


Seperti gambar disamping

Alur Pencarian

Keterangan

Misalkan kita mulai dari node A. Kita pilih sebagai keadaan awal adalah
lintasan ABCD dengan panjang lintasan = 19.

Kemudian kita lakukan backtracking untuk mendapatkan lintasan ABDC


dengan panjang lintasan = 18.

Lintasan ini kita bandingkan dengan lintasan ABCD, ternyata ABDC <
ABCD, sehingga lintasan terpilih adalah ABDC.

Kita lakukan lagi backtracking untuk mendapatkan lintasan ACBD (=12),


ternyata ACBD < ABDC, maka lintasan terpilih sekarang adalah ACBD.

Demikian seterusnya hingga ditemukan solusi yang sebenarnya.

Salah satu kelemahan dari metode ini adalah perlunya dibangkitkan


semua kemungkinan solusi sehingga membutuhkan waktu yang cukup
besar dalam pencariannya.

SEKIAN
TERIMA KASIH

Anda mungkin juga menyukai