250 likes | 600 Views
TEKNIK PENCARIAN (SEARCHING). KECERDASAN BUATAN. Masalah , Ruang Keadaan dan Pencarian. Untuk membangun sebuah sistem yang digunakan untuk menyelesaikan suatu problem, dibutuhkan 3 hal sbb :
E N D
TEKNIK PENCARIAN (SEARCHING) KECERDASAN BUATAN
Masalah, RuangKeadaandanPencarian Untukmembangunsebuahsistem yang digunakanuntukmenyelesaikansuatu problem, dibutuhkan 3 halsbb : • Mendefinisikanruangmasalahuntukmasalah yang dihadapi : spesifikasikondisiawaldansolusi yang diharapkan. • Mendefinisikanaturanproduksi yang digunakanuntukmengubah state ke state lainnya • Memilihmetodepencarian yang tepatsehinggamenemukansolusiterbaikdenganusaha yang minimal
Metode Pencarian • Pencarian buta atau tidak berbekal informasi (blind or un-informed search) • Pencarian dengan panduan ( heuristic or informed search)
Ruang Masalah • Masalah utama dalam membangun sistem berbasis AI adalah bagaimana mengkonversikan situasi yang diberikan kedalam situasi lain yang diinginkan menggunakan sekumpulan informasi tertentu.
Contoh Permasalahan Diberikan 2 ember air yang berkapasitas 8 liter dan 6 liter.Kita dapatmengisisatu ember dari ember lainnyadanprosespenakaranhanyadenganmemakai 2 ember tersebut. Bagaimanakitabisamengisikantepat 4 liter dalam ember 8 liter? Asumsikantidakbolehada air yang hilangdalamprosespenakaran".
Langkah Penyelesaian Masalah • Menentukanaksi-aksi (problem space) yang bisamengubahkondisipadakedua ember dalambentukrule atautree-diagram sepertidalamGambar 1.1 Contohkemungkinanaksi-aksi: a) Isi ember 8 liter b) Isi ember 6 liter c) Kosongkan ember 8 liter d) Kosongkan ember 6 liter
Langkah Penyelesaian Masalah (2) e) Isikanseluruh air dalam ember 8 liter ke 6 liter. f) Isikanseluruh air dalam ember 6 liter ke 8 liter. g) Penuhi ember 8 liter dari 6 liter. h) Penuhi ember 6 liter dari 8 liter.
Langkah Penyelesaian Masalah (3) • Menentukanurutanaksiuntukmenghasilkansolusi, seperti:
Permasalahan Jirigen Air Anda diberikan dua buah jirigen air tanpa skala ukuran, yang satu berkapasitas maksimum 4 galon dan yang lain berkapasitas maksimum 3 galon. Terdapat sebuah kran yang dapat mengalirkan air dengan jumlah tidak terbatas yang dapat digunakan untuk mengisi jirigen tersebut. Bagaimana langkah anda untuk mendapatkan tepat 2 galon air didalam jirigen berkapasitas 3 galon?
Solusi • Definisikan ruang masalah, initial state, goal state x : jumlah air dalam jirigen 4 galon y : jumlah air dalam jirigen 3 galon initial state : (0,0) goal state : (n, 2)
Solusi (2) • Definisikan aturan produksi Aturan produksi adalah : operasi yang mengubah suatu state ke state lainnya. • Contoh aturan produksi untuk permasalahan diatas
Solusi • Pilih metode pencarian yang tepat • Salah satu solusi untuk masalah diatas
Metode Pencarian • Untuk mengukur performasi metode pencarian, terdapat empat kriteria yang dapat digunakan : • Completeness • Time complexity • Space complexity • Optimality
Blind/Un-informed Search • Breadth First Search • Uniform Cost Search • Depth First Search • Depth Limited Search • Iterative-Deeping Search • Bi-directional Search
Breadth-First Search • Breadth-first search (BFS) melakukanproses searching padasemua node yang beradapada level atauhirarki yang samaterlebihdahulusebelummelanjutkanproses searching pada node di level berikutnya. • Urutanproses searching BFS ditunjukkandalamGambarberikut adalah: A,B,C,D,E,F,
Algoritma BFS • Create a variable called NODE-LIST (queue) and set it to the initial state. • Until a goal state is found or NODE-LIST is empty do: • Remove the first element from NODE-LIST and call it E. If NODE-LIST was empty, quit. • For each way that each rule can match the state described in E do: • Apply the rule to generate a new state. • If the new state is a gold state, quit and return this state. • Otherwise, add the new state to the end of NODE-LIST.
Karakteristik BFS • Jika ada solusi, maka BFS pasti akan menemukannya • BFS akan menemukan solusi dengan panjang jalur yang minimal (terpendek) • No cycle • Memori yang besar
Depth-First Search • Pencarian dilakukan pada suatu simpul dalam setiap level. Jika pada level yang terdalam solusi belum ditemukan, maka pencarian dilanjutkan pada simpul sebelah kanan dan simpul yang kiri dapar dihapus dari memori. Jika pada level yang paling dalam tidak ditemukan solusi, maka pencarian dilanjutkan pada level sebelumnya. Demikian seterusnya sampai ditemukan solusi
Algoritma DFS • If the initial state is a goal state, quit and return success. • Otherwise, do the following until success or failure is signaled: • Generate a successor, E, of the initial state. If there are no more successors, signal failure. • Call Depth-First Search with E as the initial state. • If success is returned, signal success. Otherwise continue in this loop.
Keuntungan DFS • Pemakain memori hanya sedikit, berbeda jauh dengan BFS yang harus menyimpan semua node yang pernah dibangkitkan. • Jika solusi yang dicari berada pada level yang dalam dan paling kiri, maka DFS akan menemukannya secara cepat.
Kelemahan DFS • Jika pohon yang dibangkitkan mempunyai level yang dalam (tak terhingga), maka tidak ada jaminan untuk menemukan solusi (Tidak Complete). • Jika terdapat lebih dari satu solusi yang sama tetapi berada pada level yang berbeda, maka pada DFS tidak ada jaminan untuk menemukan solusi yang paling baik (Tidak Optimal).