MASALAH, RUANG KEADAAN DAN PENCARIAN Pertemuan 2 MASALAH, RUANG KEADAAN DAN PENCARIAN
Masalah Masalah, ruang keadaan dan pencarian
Definisi Masalah dalam Kecerdasan Buatan Masalah dalam kecerdasan buatan adalah masalah yang dpt dikonversi ke dalam ruang keadaan (mempunyai keadaan awal dan keadaan tujuan) menggunakan sekumpulan aturan tertentu. Masalah, ruang keadaan dan pencarian
Masalah Seorang petani akan menyebrangkan seekor kambing, seekor serigala dan sayur mayur dengan sebuah perahu melalui sungai. Perahu hanya bisa memuat petani dan satu penumpang lain. Jika Petani menyebrangkan serigala, sayur akan dimakan kambing Jika Petani menyebrangkan sayur maka kambing akan dimakan serigala Masalah, ruang keadaan dan pencarian
Identifikasi ruang keadaan Permasalahan dilambangkan dengan (P: petani, Sy : sayuran, K: kambing, Sg: serigala). Keadaan awal : Daerah asal= (P,Sy,K,Sg), dan Daerah seberang=(0,0,0,0). Keadaan Tujuan : Daerah asal= (0,0,0,0), dan Daerah seberang=(P,Sy,K,Sg). Masalah, ruang keadaan dan pencarian
Aturan-aturan (Rules) Aturan ke- Aturan 1. Kambing dan petani menyeberang 2. Sayuran dan petani menyeberang 3. Serigala dan petani menyeberang 4. Kambing dan petani kembali 5. Sayuran dan petani kembali 6. Serigala dan petani kembali 7. Petani kembali Masalah, ruang keadaan dan pencarian
Solusi Daerah Asal Daerah Seberang Aturan yg digunakan 1 7 2 4 3 (P,Sy,K,Sg) (0,0,0,0) 1 (0,Sy,0,Sg) (P,0,K,0) 7 (P,Sy,0,Sg) (0,0,K,0) 2 (0,0,0,Sg) (P,Sy,K,0) 4 (P,0,K,Sg) (0,Sy,0,0) 3 Solusi Masalah, ruang keadaan dan pencarian
Pertimbangan sistem yg mampu menyelesaikan masalah Mendefinisikan masalah dg tepat. Spesifikasi mengenai keadaan awal dan solusi yg diharapkan. Analisis permasalahan. Menggunakan teknik yg sesuai. Merepresentasikan pengetahuan utk permasalahan. Memilih teknik penyelesaian yg terbaik. Masalah, ruang keadaan dan pencarian
Teknik-teknik penyelesaian masalah Searching (pencarian) Reasoning (Penalaran) Planning memecah masalah kedalam sub masalah yg lebih kecil, menyelesaikan masalah satu demi satu, dan menggabungkan solusi dari sub masalah tersebut. Learning Program komputer secara otomatis sanggup belajar dan meningkatkan kinerjanya melalui pengalaman. Masalah, ruang keadaan dan pencarian
Searching (Pencarian) Kriteria untuk mengukur performance metode pencarian (Russel, Stuart dan Norvig,1995) : Completeness : Apakah metode tersebut menjamin adanya solusi jika solusinya ada? Time complexity : Berapa lama waktu yang diperlukan? Space Complexity :Berapa banyak memori yang dibutuhkan? Optimality : apakah metode tersebut menjamin menemukan solusi terbaik jika terdapat solusi yang berbeda? Masalah, ruang keadaan dan pencarian
Searching (Pencarian) Breadth Fist Search /BFS (pencarian melebar pertama) Depth First Search /DFS (pencarian kedalam pertama) Depth-Limited Search (DLS) Uniform Cost Search (UCS) Iterative-Deepening Search (IDS) Bi-Directional Search (BDS) Blind Search /Un-informed Search (Pencarian Buta/tdk berbekal informasi) Generate And Test Hill Climbing Simulated Annealing Best First Search Greedy Best First Search A* Heuristic search (Pencarian terbimbing) Masalah, ruang keadaan dan pencarian
1. Breadth-first Search (pencarian melebar pertama) Breadth-first search (BFS) melakukan proses searching pada semua node yang berada pada level atau hirarki yang sama terlebih dahulu sebelum melanjutkan proses searching pada node di level berikutnya. Urutan proses searching BFS ditunjukkan dalam gambar adalah: A,B,C,D,E,F,G,H,I,J,K,L,M
Tidak akan menemui jalan buntu Keuntungan Tidak akan menemui jalan buntu Jika ada satu solusi, maka breadth-first search akan menemukannya. Dan, jika ada lebih dari satu solusi, maka solusi minimum akan ditemukan BFS ini memiliki sifat complete dan optimal Masalah, ruang keadaan dan pencarian
Membutuhkan waktu yang cukup lama Kerugian Membutuhkan memori yang cukup banyak, karena menyimpan semua node dalam satu pohon Membutuhkan waktu yang cukup lama Masalah, ruang keadaan dan pencarian
Misalkan b=10 dan d = 3 maka BFS hrs menyimpan 100 +101 +102 +103 Jika b = jumlah simpul anak yg dimiliki oleh sebuah simpul dan d adalah kedalaman solusi, maka jml simpul yg hrs disimpan adl O(bd) Misalkan b=10 dan d = 3 maka BFS hrs menyimpan 100 +101 +102 +103 Atau 1+10+100+1000 = 1.111 simpul. Masalah, ruang keadaan dan pencarian
2. Depth-first Search Depth-first search (DFS) adalah proses searching yang melakukan ekpansi sebuah path (jalur) menuju penyelesaian masalah sebelum melakukan ekplorasi terhadap path yang lain. Proses searching mengikuti sebuah path tunggal sampai menemukan goal atau dead end.
Apabila cabang ditemukan, DFS akan melakukan cabang tersebut. Apabila sudah tidak ada lagi cabang yang dapat dieksplorasi, DFS akan kembali ke node parent dan melakukan proses searching terhadap cabang yang belum dieksplorasi dari node parent sampai menemukan penyelesaian masalah. Urutan proses searching DFS ditunjukkan dalam Gambar adalah: A, B, E, F, G, C, ...
DFS Masalah, ruang keadaan dan pencarian
Kelebihan DFS adalah: Pemakaian memori hanya sedikit, berbeda jauh dengan BFS yang harus menyimpan semua node yang pernah dibangkitkan. Jika b = jumlah simpul anak yg dimiliki oleh sebuah simpul dan d adalah kedalaman solusi, maka jml simpul yg hrs disimpan adl bd Misalkan b=10 dan d = 3 maka DFS hrs menyimpan 10 x3 = 30 Jika solusi yang dicari berada pada level yang dalam dan paling kiri, maka DFS akan menemukannya secara cepat.
Kelemahan DFS adalah: 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).
3. Depth-Limited Search (DLS) Metode ini berusaha mengatasi kelemahan DFS (tidak complete) dengan membatasi kelemahan maksimum dari suatu jalur solusi. Tetapi, sebelum menggunakan DLS, kita harus tahu berapa level maksimum dari suatu solusi.
4. Uniform Cost Search (UCS) Konsepnya hampir sama dengan BFS, bedanya adalah bahwa BFS menggunakan urutan level yang paling rendah sampai yang paling tinggi, sedangkan UCS menggunakan urutan biaya dari yang paling kecil sampai yang terbesar. UCS berusaha menemukan solusi dengan total biaya terendah yang dihitung berdasarkan biaya dari simpul asal menuju ke simpul tujuan.
5. Iterative-Deepening Search (IDS) IDS melakukan pencarian secara iteratif menggunakan penelusuran Depth-Limited Search (DLS) dimulai dengan batasan level 0. Jika belum ditemukan solusi, maka dilakukan iterasi ke-2 dengan batasan level 1. Demikian seterusnya sampai ditemukan solusi.
IDS
IDS
IDS
IDS
IDS
6. Bi-Directional Search (BDS) Pencarian dilakukan dari dua arah : pencarian maju (dari start ke goal) dan pencarian mundur (dari goal ke start). Ketika dua arah pencarian telah membangkitkan simpul yang sama, maka solusi telah ditemukan, yaitu dengan cara menggabungkan kedua jalur yang bertemu.
BDS
Referensi Sutojo, T., Mulyanto, E., Suhartono, V. (2011), “Kecerdasan Buatan”, Andi Yogyakarta. Suyanto (2011), Artificial Intelligence, Informatika, Bandung Masalah, ruang keadaan dan pencarian