Pencarian Mendalam Pertama Depth First Search Pencarian BFS dan DFS Tidak Mendapatkan Solusi Pencarian Terbimbing Heuristic Search

20 Namun demikian, ada tiga persoalan utama berkenaan dengan metode pencarian ini, yaitu: 1. Membutuhkan memori yang besar, karena menyimpan semua node dalam satu pohon. Jumlah node di setiap tingkat dari pohon bertambah secara eksponensial terhadap jumlah tingkat, dan semuanya ini harus disimpan sekaligus. 2. Membutuhkan sejumlah besar pekerjaan, khususnya jika lintasan solusi terpendek cukup panjang, karena jumlah node yang perlu diperiksa bertambah secara eksponensial terhadap panjang lintasan. 3. Tidak relevannya operator akan menambah jumlah node yang harus diperiksa sangat besar. 4. Relatif membutuhkan waktu yang cukup lama, karena akan menguji semua node pada level ke-n untuk mendapatkan solusi pada level ke- n+1.

2.2.2 Pencarian Mendalam Pertama Depth First Search

Pencarian dengan metode Depth First Search DFS dilakukan dari node awal secara mendalam hingga yang paling akhir dead-end atau sampai ditemukan. Dengan kata lain, simpul cabang atau anak yang terlebih dahulu dikunjungi. Sebagai ilustrasinya dapat dilihat pada gambar 2.2. 21 Gambar 2.2 Pencarian mendalam pertama Depth First Search Sumber: Konsep Kecerdasan Buatan, Anita Desiani Muhammad Arhami, 2006 Berdasarkan gambar 2.2, proses pencarian dilakukan dengan mengunjungi cabang terlebih dahulu hingga tiba di simpul terakhir. Jika tujuan yang diinginkan belum tercapai maka pencarian dilanjutkan ke cabang sebelumnya, turun ke bawah jika memang masih ada cabangnya. Begitu seterusnya hingga diperoleh tujuan goal. Operasi semacam ini dikenal dengan sebutan backtracking. Keuntungan dari metode DFS: 1. Membutuhkan memori yang relatif kecil, karena hanya node-node pada lintasan yang aktif saja yang disimpan. 2. Secara kebetulan, metode DFS akan menemukan solusi tanpa harus menguji lebih banyak lagi dalam ruang keadaan, sehingga tidak memboros waktu untuk melakukan sejumlah besar keadaan ‘dangkal’ dalam permasalahan grafpohon. Kelemahan dari metode DFS: 1. Memungkinkan tidak ditemukannya tujuan yang diharapkan. 2. Hanya akan mendapatkan satu solusi pada setiap pencarian. 22

2.2.3 Pencarian BFS dan DFS Tidak Mendapatkan Solusi

Apabila node keadaan pada pohon pelacakan BFS dan DFS tidak dapat dikembangkan lagi untuk mendapatkan node baru keadaan baru dan solusi belum didapatkan, maka pencarian BFS dan DFS tidak mendapatkan solusi. Atau dengan kata lain, permasalahan yang sedang diselesaikan tidak memiliki solusi.

2.2.4 Pencarian Terbimbing Heuristic Search

Heuristic search adalah suatu istilah yang berasal dari bahasa Yunani yang berarti menemukan menyingkap. Heuristic adalah suatu perbuatan yang membantu kita menemukan jalan dalam pohon pelacakan yang menuntut kita kepada suatu solusi masalah. Heuristic dapat diartikan juga sebagai suatu kaidah yang merupakan metoda prosedur yang didasarkan kepada pengalaman dan praktek, syarat, trik atau bantuan lainnya yang membantu mempersempit dan memfokuskan proses pelacakan kepada suatu tujuan tertentu. Pencarian terbimbing heuristic search dibutuhkan karena pencarian buta blind search tidak selalu dapat diterapkan dengan baik, hal ini disebabkan waktu aksesnya yang cukup lama serta besarnya memori yang diperlukan. George Poyla mendefinisikan heuristik sebagai studi metode dan kaidah penemuan. Dalam pencarian ruang keadaan, heuristik dinyatakan sebagai aturan untuk melakukan pemilihan cabang-cabang dalam ruang keadaan yang paling tepat untuk mencapai solusi permasalahan yang dapat diterima. Heuristic dapat digunakan pada beberapa kondisi berikut ini : 1. Mengatasi combinatorial explosion. 23 Ada masalah yang kemungkinan arah penyelesaiannya berkembang pesat bersifat faktorial sehingga menimbulkan combinatorial explosion. Heuristic merupakan cara untuk menentukan kemungkinan arah penyelesaian masalah secara efisien. 2. Solusi paling optimal mungkin tidak diperlukan. Dalam suatu keadaan, mungkin lebih baik mendapatkan solusi yang mendekati optimal dalam waktu yang singkat daripada solusi yang paling optimal dalam waktu yang lama. 3. Pada umumnya hasilnya cukup baik. Sekalipun tidak optimal, tetapi biasanya mendekati optimal. 4. Membantu pemahaman bagi orang yang menyelesaikan persoalan. Banyak alternatif heuristic yang dapat diterapkan dalam suatu percobaan. Orang yang menyelesaikan persoalan tersebut akan lebih mengerti persoalannya jika mencoba heuristic yang diterapkannya. Sayangnya, seperti semua kaidah penemuan lainnya, heuristik juga dapat salah. Heuristik hanyalah panduan informasi untuk menebak langkah berikutnya yang harus diambil dalam menyelesaikan suatu permasalahan, dan sering dilakukan berdasarkan eksperimenpercobaan atau secara intuisi. Oleh karena, menggunakan informasi yang terbatas, heuristik jarang dapat memprediksi tingkah laku yang eksak dari ruang keadaan saat dilakukan pencarian. Heuristik dapat membimbing algoritma pencarian untuk mendapatkan solusi suboptimal atau gagal menemukan solusi apapun, karena tidak ada solusi yang dapat menuju keadaan akhir. 24

2.3 Masalah Ruang Keadaan