Course MMS 2901 Departement of Computer Science Gadjah Mada University © Aina Musdholifah & Sri Mulyana
• Menentukan apa yang akan dikerjakan dengan cara menemukan urutan aksi yang membawa ke suatu kondisi yang dinginkan. • Bagaimana membuat formulasi suatu permasalahan yang dihadapi. • Bagimana menentukan suatu proses pencarian (search process) untuk menemukan solusi.
• Search Proses untuk mencari suatu urutan. • Suatu algoritma pencarian akan menjadikan suatu masalah (problem) sebagai input dan mengembalikan suatu output berupa solusi (solution) berdasarkan suatu urutan aksi (action sequence). • Sekali satu solusi dihasilkan dari urutan aksi tertentu Fase eksekusi
State ◦ “tempat” atau “kondisi” dimana dapat dikunjungi suatu pencarian. Search space (ruang pencarian) / State space ◦ Kumpulan dari beberapa state yang mungkin. Search path (jalur pencarian) / Path ◦ State-state yang telah dikunjungi agent pencarian Solution (solusi) ◦ Suatu state dengan properti tertentu, yang mana berarti masalah telah dipecahkan. ◦ Bisa lebih dari satu solusi untuk satu masalah
• Strategy (strategi) – Bagaimana untuk memilih langkah selanjutnya dalam path (jalur) pada suatu level tertentu. • Initial state State awal, dimana agent berada dan mulai melakukan kunjungan ke state lainnya. • Operator – Fungsi yang diberikan untuk menghubungkan satu state ke state yang lain. – Menentukan bagaimana agent bergerak didalam search space
• Goal test – Bagaimana agent mengetahui jika pencariannya berhasil. • Path cost function – Fungsi yang menyatakan cost (biaya) untuk suatu path. – Cost suatu path, merupakan total keseluruhan cost dari aksi yang dilakukan untuk suatu path.
• Keefektifan suatu pencarian dapat diukur minimal dengan 3 hal: 1.Apakah dapat menemukan suatu solusi 2.Apakah solusi yang dihasilkan adalah “good solution” solusi dengan path cost yang kecil 3.Bagaimana search costnya berkorelasi dengan waktu dan biaya yang dibutuhkan
State : ◦ Deskripsi state menyatakan lokasi setiap balok angka dalam suatu lokasi dari 9 lokasi balok yang ada (termasuk yang kosong) Operator : ◦ Pergerakan lokasi yang kosong ke kiri, kanan, atas atau bawah. Goal test : ◦ State sesuai dengan urutan angka sebagai bilangan positif 1 s/d 8 Path cost : ◦ Setiap langkah mempunyai cost 1, sehingga path costnya adalah panjang dari path-nya
• Si X memperoleh hadiah berupa wisata ke Bali, hadiah diberikan dalam bentuk uang 5 juta. Karena si X menggunakan transportasi udara, maka dia membutuhkan tiket penerbangan Jogja-Bali PP. Tetapi karena pada hari ketiga diketahui sudah tidak ada ada tiket Bali-Jogja sampai 2 minggu mendatang. Bagaimana rute perjalanan si X, agar dia bisa memaksimalkan perjalanan wisatanya (dapat mengunjungi banyak temapat wisata yang sudah ada dalam daftar perjalanannya), misalkan lokasi awalnya adalah bandara dan lokasi akhirnya bandara? Anda cukup identifikasi permasalahan tersebut untuk dilakukan proses pencarian tempat-tempat wisata. • State : ? • Operator : ? • Goal test : ? • Path cost : ?
Oradea Pitesti Zerind Arad Lugoj Timisiora Craivo Sibiu Rimnicu Bucharest Giurgiu Dobreta Fagaras
• Merupakan penjabaran dari state space yang menggunakan bentuk tree. • Root : search node yang merupakan initial state • Leaf node : state yang tidak mempunyai succesor didalam tree. • Setiap langkah, algoritma pencarian akan memilih satu leaf node untuk diexpand.
Craivo Pitesta Zerind Arad Lugoj Timisiora Rimnicu Sibiu Rimnicu Dobreta Fagaras PitestaBucarest
Setiap node adalah suatu data dengan: 1) State dalam state space yang bersesuaian dengan node tertentu. 2) Node dalam search tree yang menghasilkan node tersebut (parent node). 3) Operator : mekanisme yang digunakan untuk menghasilkan node. 4) Jumlah node suatu path dari root ke node (depth node). 5) Path cost : suatu path dari initial state ke node.
• Kriteria evaluasi strategi: Completeness Apakah strateginya pasti akan menemukan suatu solusi Time complexity Berapa lama untuk menemukan suatu solusi Space complexity Berapa banyak memori yang dibutuhkan untuk melakukan pencarian Optimiality Apakah strateginya menemukan solusi yang paling bagus
• Tidak terdapat informasi berapa banyaknya langkah atau path cost dari state tertentu ke suatu gol. • Hanya dapat membedakan state sebagai gol dan state sebagai nongol. • Antara lain: Breadth-First search Depth-First search
1. Expand root node 2. Expand semua node yang dihasilkan dari no.1 3. Expand successornya. 4. Dst Intinya: semua node pada kedalaman d dalam search tree diexpand sebelum node-node di kedalaman d+1
Jika hanya terdapat satu solusi dalam suatu permasalahan strategi ini akan dijamin dapat menemukannya. Jika terdapat beberapa solusi dalam suatu permasalahan strategi ini akan selalu menemukan state gol yang dangkal terlebih dahulu.
• Bagaimana rute perjalanan dari Arad ke Rimniciu. • Path-nya: Arad-Trimisora-Sibiu-Zerind-Lugoj-Rimnicui
1. Expand satu node sampai ke level yang paling dalam dari suatu tree 2. Jika pencariannya menemukan akhir node yang bukan golnya, maka kembali ke node satu level di atasnya, kemudian expand node tersebut 3. Dst Intinya : mengexpand satu node sampai node paling dalam.
Bagaimana rute perjalanan dari Arad ke Rimniciu. Pathnya: Arad – Timisiora – Lugoj – Dobreta – Craivo – Pitesta – Craivo - Rimniciu
Bagimana rute perjalanan dari Arad ke Fagaras, dengan menggunakan pencarian: a)Breadth first search b)Depth first search