Anda di halaman 1dari 8

METODE PENCARIAN

Oleh: Citra N

I. Definisi dan Macamnya


Pencarian adalah suatu proses mencari solusi dari suatu permasalahan melalui sekumpulan
kemungkinan ruang keadaan (state space). Ada 2 teknik pencarian dan pelacakan yang
digunakan, yaitu pencarian buta (blind search) dan pencarian terbimbing (heuristic search).
A. Pencarian Buta (Blind Search)
Pencarian buta yakni metode pencarian dimana tidak ada informasi awal yang
digunakan dalam proses pencarian untuk menemukan solusi. Ada 2 macam pencarian
buta, yaitu pencarian melebar pertama (breadth first search) dan pencarian
mendalam pertama (depth first search).
1. Pencarian Melebar Pertama (Breadth First Search)
Pada metode ini semua node pada level n akan dikunjungi terlebih dahulu sebelum
mengunjungi node-node pada level n+1. Pencarian dimulai dari node akar terus ke
level 1 dari kiri ke kanan, kemudian berpindah ke level berikutnya dari kiri ke
kanan hingga solusi ditemukan. Alur breadth first search dapat dilihat pada
gambar 1.

Gambar 1. Alur Breadth First Search


Keuntungan :
a. Tidak akan menemui jalan buntu
b. Jika ada 1 solusi, maka breadth first search akan menemukannya. Jika ada
lebih dari 1 solusi, maka solusi minimum akan ditemukan.
Kelemahan :
a. Membutuhkan memori yang banyak, karena harus menyimpan semua node
dalam satu pohon.
b. Membutuhkan waktu yang cukup lama

2. Pencarian Mendalam Pertama (Depth First Search)


Pencarian ini dilakukan pada suatu simpul dalam setiap level dari yang paling kiri.
Jika pada level yang paling dalam tidak ditemukan solusi, maka pencarian
dilanjutkan pada simpul sebelah kanan dan simpul yang kiri dapat dihapus dari
memori. Jika pada level yang paling dalam tidak ditemukan solusi, maka
pencarian dilanjutkan pada level sebelumnya. Demikian seterusnya sampai
ditemukan solusi. Alur depth first search dapat dilihat pada gambar 2.

Gambar 2. Alur Depth First Search


Keuntungan :
a. Membutuhkan memori relatif kecil, karena hanya node-node pada lintasan
yang aktif saja yang disimpan
b. Secara kebetulan akan menemukan solusi tanpa harus menguji lebih banyak
lagi dalam ruang keadaan
Kelemahan :
a. Memungkinkan tidak ditemukannya tujuan yang diharapkan
b. Hanya mendapat 1 solusi pada setiap pencarian

B. Pencarian Terbimbing (Heuristic Search)


Pencarian terbimbing yakni metode pencarian dimana ada informasi awal yang
digunakan dalam proses pencarian. Pencarian terbimbing menggunakan fungsi
heuristic (fungsi yang menghitung biaya perkiraan/ estimasi dari suatu simpul tertentu
menuju ke simpul tujuan). Aplikasi yang menggunakan fungsi heuristic adalah
Google, Deep Blue Chess Machine. Ada 2 macam pencarian terbimbing, yaitu
pendakian bukit (hill climbing) dan pencarian terbaik pertama (best first search).

1. Pendakian Bukit (Hill Climbing)


Teknik Hill Climbing adalah pengembangan dari teknik Generate-and-Test
dengan penambahan adanya umpan balik dari prosedur test yang sudah digunakan
untuk membantu memilih arah mana yang harus ditelusuri pada setiap area
search. Ada 2 jenis Hill climbing, yakni simple hill climbing (hill climbing
sederhana) dan steepest-ascent hill climbing (hill climbing dengan memilih
kemiringan yang paling tajam / curam).
a. Simple Hill Climbing
Algoritma dari simple hill climbing adalah :
1. 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.
2. Kerjakan langkah berikut sampai solusi ditemukan atau sampai tidak ada
lagi operator baru yang dapat digunakan dalam state sekarang:
i. Cari sebuah operator yang belum pernah digunakan dalam state
sekarang dan gunakan operator tersebut untuk membentuk state baru.
ii. 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.
iii. Jika state baru tidak lebih baik daripada state sekarang, maka lanjutkan
ke langkah sebelumnya.
b. Steepest-Ascent Hill Climbing
Algoritma dari steepest-ascent hill climbing adalah :
1. Evaluasi keadaan awal (initial state). Jika keadaan awal sama dengan
tujuan (goal state) maka kembali pada initial state dan berhenti berproses.
Jika tidak maka initial state tersebut jadikan sebagai current state.
2. Mulai dengan current state = initial state.
3. Dapatkan semua pewaris (successor) yang dapat dijadikan next state pada
current statenya dan evaluasi successor tersebut dengan fungsi evaluasi
dan beri nilai pada setiap successor tersebut.
4. Jika salah satu dari successor tersebut mempunyai nilai yang lebih baik
dari current state maka jadikan successor dengan nilai yang paling baik
tersebut sebagai new current state.
5. Lakukan operasi ini terus menerus hingga tercapai current state = goal
state atau tidak ada perubahan pada current statenya.

2. Pencarian Terbaik Pertama (Best First Search)


Metode best first search merupakan kombinasi dari metode depth first search
dan breadth first search dengan mengambil kelebihan dari kedua metode
tersebut. Pada best first search, pencarian diperbolehkan mengunjungi node di
lebih rendah, jika ternyata node di level lebih tinggi memiliki nilai heuristik lebih
buruk. Untuk mengimplementasikan metode ini dibutuhkan 2 antrian yang berisi
node-node, yaitu :
a. OPEN, berisi node-node yang sudah dibangkitkan, sudah memiliki fungsi
heuristik namun belum diuji. Umumnya berupa antrian berprioritas yang
berisi elemen-elemen dengan nilai heuristik tertinggi.
b. CLOSED, berisi node-node yang sudah diuji.
Algoritma best-first-search meliputi :
1. Mulai dengan OPEN hanya berisi initial state
2. Sampai goal ditemukan atau tidak ada lagi simpul yang tersisa dalam
OPEN, lakukan :
a. Pilih simpul terbaik dalam OPEN
b. Telusuri successor-nya
c. Untuk tiap successor, lakukan :
i. Jika belum pernah ditelusuri sebelumnya, evaluasi simpul ini,
tambahkan kedalam OPEN dan catat parentnya.
ii. Jika sudah pernah ditelusuri, ganti parentnya jika jalur baru
lebih baik dari sebelumnya.
II. Penyelesaaian Traveling Salesman Problem (TSP) 5 Kota
Pencarian solusi untuk kasus Traveling Salesman Problem (TSP) dapat dilakukan
mengunakan metode simple hill climbing. TSP merupakan permasalahan dimana seorang
salesman ingin mengunjungi n kota. Jarak antara tiap-tiap kota sudah diketahui dan akan
dicari rute terpendek dimana setiap kota hanya boleh dikunjungi tepat 1 kali. Misal ada 5 kota
dengan jarak antara tiap-tiap kota seperti gambar 3.

A 8
B 1
9

7 3 4 5 E

2
10
C
D 6

Gambar 3. Lintasan TSP 5 Kota


Dalam pencarian solusi TSP 5 kota menggunakan metode simple hill climbing, ruang
keadaan berisi semua kemungkinan lintasan yang mungkin dan 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 :
! 5!
= = 10
2! ( 2)! 2! (5 2)!
Semua kombinasi akan digunakan sebagai operator, yaitu :
1. Tukar 1,2 = menukar urutan posisi kota ke 1 dengan kota ke 2
2. Tukar 2,3 = menukar urutan posisi kota ke 2 dengan kota ke 3
3. Tukar 3,4 = menukar urutan posisi kota ke 3 dengan kota ke 4
4. Tukar 4,5 = menukar urutan posisi kota ke 4 dengan kota ke 5
5. Tukar 5,1 = menukar urutan posisi kota ke 5 dengan kota ke 1
6. Tukar 1,3 = menukar urutan posisi kota ke 1 dengan kota ke 3
7. Tukar 3,5 = menukar urutan posisi kota ke 3 dengan kota ke 5
8. Tukar 5,2 = menukar urutan posisi kota ke 5 dengan kota ke 2
9. Tukar 2,4 = menukar urutan posisi kota ke 2 dengan kota ke 4
10. Tukar 4,1 = menukar urutan posisi kota ke 4 dengan kota ke 1
(29)

ABCDE

Tk 1,2 Tk 2,3 Tk 3,4 Tk 4,5 Tk 5,1 Tk 1,3 Tk 3,5 Tk 5,2 Tk 2,4 Tk 4,1

(27)

BACDE ACBDE ABDCE ABCED EBCDA CBADE ABEDC AECDB ADCBE DBCAE

Tk 1,2 Tk 2,3 Tk 3,4 Tk 4,5 Tk 5,1 Tk 1,3 Tk 3,5 Tk 5,2 Tk 2,4 Tk 4,1

(25)

ABCDE BCADE BADCE BACED EACDB CABDE BAEDC BECDA BDCAE DACBE

Tk 1,2 Tk 2,3 Tk 3,4 Tk 4,5 Tk 5,1 Tk 1,3 Tk 3,5 Tk 5,2 Tk 2,4 Tk 4,1

(27) (27) (16)

CBADE BACDE BCDAE BCAED ECADB ACBDE BCEDA BEADC BDACE DCABE

Tk 1,2 Tk 2,3 Tk 3,4 Tk 4,5 Tk 5,1 Tk 1,3 Tk 3,5 Tk 5,2 Tk 2,4 Tk 4,1

(22) (23) (20) (25) (19) (18) (22) (25) (19)

CEADB EACDB ECDAB ECABD BCADE ACEDB ECBDA EBADC EDACB DCAEB

Gambar 4. Representasi Ruang Keadaan TSP 5 Kota


Pada gambar 4 dapat dilihat bahwa pencarian simple hill climbing dimulai dari anak kiri.
Apabila nilai heuristik anak kiri lebih baik dari level atasnya, maka dibuka untuk pencarian
selanjutnya. Jika tidak maka akan dilihat tetangga dari anak kiri tersebut, dan seterusnya.
a. Keadaan awal, lintasan ABCDE=29.
b. Level 1 :
- lihat BACDE (BACDE =27 < ABCDE=29), buka node BACDE
c. Level 2 :
- lewati node ABCDE
- lihat BCADE (BCADE=25 < BACDE=27), buka node BCADE
d. Level 3 :
- lewati node CBADE
- lewati node BACDE
- lihat BCDAE (BCDAE=27 > BCADE=25), lihat node lain
- lihat BCAED (BCAED=27 > BCADE=25), lihat node lain
- lihat ECADB (ECADB=16 < BCADE=25), buka node ECADB
e. Level 4 :
- lihat CEADB (CEADB=22 > ECADB=16), lihat node lain
- lewati node EACDB
- lihat ECDAB (ECDAB=23 > ECADB=16), lihat node lain
- lihat ECABD (ECABD=20 > ECADB=16), lihat node lain
- lihat BCADE (BCADE=25 > ECADB=16), lihat node lain
- lihat ACEDB (ACEDB=19 > ECADB=16), lihat node lain
- lihat EBADC (EBADC=22 > ECADB=16), lihat node lain
- lihat EDACB (EDACB=25 > ECADB=16), lihat node lain
- lihat DCAEB (DCAEB=19 > ECADB=16), karena sudah tidak ada node yang
memiliki nilai heuristik yang lebih kecil dibanding nilai heuristik ECADB,
maka node ECADB (16) adalah lintasan terpendek (SOLUSI)
DAFTAR PUSTAKA

Kecerdasan Buatan.(2011).(http://bernard-very.com/2011/09/17/kecerdasan-buatan-ai/),
diakses 7 Oktober 2014
Pencarian Heuristic.(2012).(http://elearning.amikom.ac.id/index.php/download/materi/19030
2161-DT046-6/2012/12/20121213_Modul%203%20-%20Pencarian%20
Heuristik.ppt), diakses 7 Oktober 2014
Pertemuan 05.().(omar_pahlevi.staff.gunadarma.ac.id/.../pertemuan+05.ppt), diakses 7
Oktober 2014