Metode Pencarian/Pelacakan Edy Mulyanto
4 Metode Penyelesaian Masalah Searching (Pencarian) teknik penyelesaian masalah dg cara merepresentasikan masalah ke dalam ruang masalah serta menggunakan strategi pencarian untuk menemukan solusi. Reasoning (Penalaran) teknik penyelesaian masalah dg cara merepresentasikan masalah ke dalam basis pengetahuan (knowledge base) menggunakan penalaran/logika atau bahasa yang dipahami komputer.
4 Metode Penyelesaian Masalah Planning (Perencanaan) Metode penyelesaian masalah dengan cara memecah masalah ke dalam sub-sub masalah yg lebih kecil, menyelesaikan sub-sub masalah satu demi satu, lalu menggabungkan solusi-solusi dari sub-sub masalah tersebut Learning (Pembelajaran) metode pembelajaran dari data-data yang sudah ada dan bisa secara otomatis menemukan aturan yang diharapkan dapat berlaku umum untuk data-data yang belum pernah diketahui.
Metode Pencarian/Pelacakan Hal penting dalam menentukan keberhasilan sistem AI adalah kesuksesan dalam pencarian solusi. Pencarian = suatu proses mencari solusi dari suatu permasalahan melalui sekumpulan kemungkinan ruang keadaan/masalah (state space). Ruang keadaan/masalah = merupakan suatu ruang yang berisi semua keadaan yang mungkin.
Metode Pencarian/Pelacakan Untuk mengukur kinerja metode pencarian, terdapat empat kriteria yang dapat digunakan : Completeness : apakah metode tersebut menjamin penemuan solusi jika solusinya memang ada? Time complexity : berapa lama waktu yang diperlukan? Space complexity : berapa banyak memori yang diperlukan Optimality : apakah metode tersebut menjamin menemukan solusi yang terbaik jika terdapat beberapa solusi berbeda?
Metode Pencarian Langkah-langkah dalam teknik searching : Mendefinisikan RUANG MASALAH/RUANG KEADAAN untuk suatu masalah yg dihadapi. Mendefinisikan aturan produksi yang digunakan untuk mengubah suatu “state” ke “state” lainnya. Memilih metode pencarian yg tepat sehingga dapat menemukan solusi terbaik dengan usaha yang minimal.
Merepresentasikan Ruang Masalah Graph Keadaan terdiri dari node-node yg menunjukkan keadaan yaitu keadaan awal dan keadaan baru yg akan dicapai dengan menggunakan operator. Node-node graph saling dihubungkan dg menggunakan “arc” (busur) yg diberi panah utk menunjukkan arah dari suatu keadaan ke keadaan berikutnya.
Merepresentasikan Ruang Masalah Pohon Pelacakan Pohon pelacakan berguna untuk menghindari adanya proses pelacakan suatu node secara berulang. Keadaan digambarkan secara Hierarkis.
Metode Pencarian : A. Pencarian buta (blind search) : tidak ada informasi awal yang digunakan dalam proses pencarian 1. Pencarian melebar pertama (Breadth – First Search) 2. Pencarian mendalam pertama (Depth – First Search) B. Pencarian terbimbing (heuristic search) : adanya informasi awal yang digunakan dalam proses pencarian 1. Pendakian Bukit (Hill Climbing) 2. Pencarian Terbaik Pertama (Best First Search)
A. Pencarian Buta (blind search) 1. Breadth – First Search 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.
BFS Karakteristik BFS : Jika ada solusi, BFS akan menemukannya. BFS akan menemukan solusi dengan jalur terpendek. BFS tidak akan terjebak dalam “looping”. BFS membutuhkan space untuk menyimpan node list antrian dan space yang dibutuhkan dan mungkin space yang dibutuhkan itu cukup besar. Asumsi : Ada solusi dalam pohon Pencarian tree adalah secara terurut.
Keuntungan/Kelemahan tidak akan menemui jalan buntu, menjamin ditemukannya solusi (jika solusinya memang ada) dan solusi yang ditemukan pasti yang paling baik jika ada 1 solusi, maka breadth – first search akan menemukannya,jika ada lebih dari 1 solusi, maka solusi minimum akan ditemukan. Kesimpulan : complete dan optimal Kelemahan : membutuhkan memori yang banyak, karena harus menyimpan semua simpul yang pernah dibangkitkan. Hal ini harus dilakukan agar BFS dapat melakukan penelusuran simpul-simpul sampai di level bawah membutuhkan waktu yang cukup lama
A. Pencarian Buta (blind search) 2. Depth – First Search Pencarian 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.
Keuntungan/kelemahan membutuhkan memori relatif kecil, karena hanya node-node pada lintasan yang aktif saja yang disimpan Secara kebetulan, akan menemukan solusi tanpa harus menguji lebih banyak lagi dalam ruang keadaan, jadi jika solusi yang dicari berada pada level yang dalam dan paling kiri, maka DFS akan menemukannya dengan cepat -> waktu cepat Kelemahan : Memungkinkan tidak ditemukannya tujuan yang diharapkan, karena jika pohon yang dibangkitkan mempunyai level yang sangat dalam (tak terhingga) -> tidak complete karena tidak ada jaminan menemukan solusi Hanya mendapat 1 solusi pada setiap pencarian, karena jika terdapat lebih dari satu solusi yang sama tetapi berada pada level yang berbeda, maka DFS tidak menjamin untuk menemukan solusi yang paling baik -> tidak optimal.
B. Heuristic Search Metode heuristic search diharapkan bisa menyelesaikan permasalahan yang lebih besar. Metode heuristic search menggunakan suatu fungsi yang menghitung perkiraan (estimasi) dari suatu simpul tertentu menuju ke simpul tujuan -> disebut fungsi heuristic Aplikasi yang menggunakan fungsi heuristic : Google, Deep Blue Chess Machine
B. Heuristic Search Ada 4 metode Heuristic Searching: Generate and Test. Hill Climbing. Best First Search.
Generate and Test Algoritma : Bangkitkan suatu kemungkinan solusi (membangkitkan suatu tititk tertentu atau lintasan tertentu dari keadaan awal). Uji untuk melihat apakah node tersebut benar-benar merupakan solusinya dengan cara membandingkan node terebut atau node akhir dari suatu lintasan yang dipilih dengan kumpulan tujuan yang diharapkan. Jika solusi ditemukan, keluar. Jika tidak, ulangi kembali langkah pertama.
Generate and Test Traveling Salesman Problem (TSP) Seorang salesman ingin mengunjungi n kota. Jarak antara tiap-tiap kota sudah diketahui. Kita ingin mengetahui rute terpendek dimana setiap kota hanya boleh dikunjungi tepat 1 kali. Misal ada 4 kota dengan jarak antara tiap-tiap kota seperti berikut ini : Solusi – solusi yang mungkin 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
Generate and Test
Hill Climbing Metode ini hampir sama dengan metode pembangkitan dan pengujian, hanya saja proses pengujian dilakukan dengan menggunakan fungsi heuristic. Pembangkitan keadaan berikutnya tergantung pada feedback dari prosedur pengetesan. Tes yang berupa fungsi heuristic ini akan menunjukkan seberapa baiknya nilai terkaan yang diambil terhadap keadaan-keadaan lainnya yang mungkin.
Hill Climbing Algoritma Simple Hill Climbing Cari operator yang belum pernah digunakan; gunakan operator ini untuk mendapatkan keadaan yang baru. Kerjakan langkah-langkah berikut sampai solusinya ditemukan atau sampai tidak ada operator baru yang akan diaplikasikan pada keadaan sekarang : Cari operator yang belum digunakan; gunakan operator ini untuk mendapatkan keadaan yang baru. Evaluasi keadaan baru tersebut : Jika keadaan baru merupakan tujuan, keluar Jika bukan tujuan, namun nilainya lebih baik daripada keadaan sekarang, maka jadikan keadaan baru tersebut menjadi keadaan sekarang. Jika keadaan baru tidak lebih baik daripada keadaan sekarang, maka lanjutkan iterasi.
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. Hill climbing tidak diperbolehkan untuk kembali ke node pada lebih rendah meskipun node tersebut memiliki nilai heuristik lebih baik. Pada best first search, pencarian diperbolehkan mengunjungi node di lebih rendah, jika ternyata node di level lebih tinggi memiliki nilai heuristik lebih buruk.
Best First Search
Tugas Review Skripsi atau Artikel yang berhubungan dengan metode searching. Selesaikan permasalahan puzzle 8 kotak dibawah ini :
SEKIAN