SISTEM PADA AI
Input yg diberikan pada sistem adalah berupa masalah. Sistem harus dilengkapi dengan sekumpulan pengetahuan yang ada pada basis pengetahuan. Sistem harus memiliki motor inferensi agar mampu mengambil kesimpulan berdasarkan fakta atau pengetahuan. Output yang diberikan berupa solusi masalah sebagai hasil dari inferensi.
MASALAH DAN RUANG MASALAH
4 hal yang harus dilakukan agar sistem menyelesaikan masalah terpisah :
- Mendefinisikan masalah dengan tepat
- Spesifikasi yang tepat mengenai keadaan awal
- Solusi yang diharapkan
- Menganalisa masalah serta mencari beberapa teknik penyelesaian masalah yang sesuai
- Membatasi dan menghadirkan pengetahuan yang diperlukan untuk menyelesaikan masalah
- Pilih teknik penyelesaian terbaik dan aplikasikan pada masalah
Beberapa hal yang harus dilakukan :
- Definisikan ruang stata yang memuat semua konfigurasi yg mungkin dari objek yang terkait (dan mungkin beberapa yg tidak mungkin). Hal ini, tentu saja mungkin untuk mendefiniskan ruang stata dengan jumlah stata yang tidak terbatas.
- Tentukan satu atau beberapa stata yang menyatakan keadaan awal dari masalah, disebut initial states.
- Tentukan satu atau beberapa stata yang dapat diterima sebagai keadaan akhir (solusi), disebut goal states.
- Tentukan sejumlah aturan yang menentukan aksi yang diperkenankan, hal ini mencakup beberapa hal sbb :
- Apa asumsi non stata yang ditampilkan dalam deskripsi masalah non formal ? Akan menentukan yg termasuk dan tidak termasuk stata.
- Seberapa luas aturan harus dibuat ? Dapat menentukan aturan diberlakukan untuk stata mana saja.
- Berapa banyak pekerjaan yang diperlukan untuk menyelesaikan masalah harus disusun dan dimasukkan ke dalam aturan ? Akan menentukan jumlah baris aturan.
- Graph Keadaan
- Pohon Pelacakan
- Pohon AND/OR
Untuk mengukur perfomansi 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?
- Generate-and-Test
- Hill Climbing
- Evaluasi initial state. Jika ini goal state maka return dan keluar. Jika bukan maka lanjutkan dengan initial state sebagai current state.
- Ulangi langkah berikut sampai menemukan solusi atau sampai tidak ada lagi operator yang dapat digunakan pada current state
- Pilih operator yang belum digunakan pada current state dan gunakan untuk menghasilkan/menuju stata baru
- Evaluasi stata baru.
- Jika ini goal state maka return dan keluar
- Jika bukan goal state tetapi lebih baik dari current state maka jadikan stata baru sebagai current state
- Jika tidak lebih baik dari current state lanjutkan perulangan
- Best-First-Search
- OPEN
- berisi simpul yang dihasilkan dari fungsi heuristic tapi belum dievaluasi, memilki antrian prioritas dimana elemen dengan prioritas tertinggi adalah yang memiliki nilai paling baik yang dihasilkan fungsi heuristic.
- CLOSED
- berisi simpul yang sudah dievaluasi. Kita perlu tetap menyimpan simpul-simpul ini dalam memori jika kita ingin melakukan search pada Graph, sehingga jika kita menemui suatu simpul kita bisa memeriksa apakah simpul ini sudah pernah dieavaluasi atau belum.
- Mulai dengan OPEN hanya berisi initial state
- Sampai goal ditemukan atau tidak ada lagi simpul yang tersisa dalam OPEN, lakukan :
- Pilih simpul terbaik dalam OPEN
- Telusuri successor-nya
- Untuk tiap successor, lakukan :
- Jika belum pernah ditelusuri sebelumnya, evaluasi simpul ini, tambahkan kedalam OPEN dan catat parentnya.
- Jika sudah pernah ditelusuri, ganti parent nya jika jalur baru lebih baik dari sebelumnya.