Kesalahan pada pengembangan sistem pakar

Beberapa kesalahan yang mungkin terjadi pada pengembangan sistem pakar adalah :
  •   Kesalahan knowledge pakar (Expert’s knowledge error). Pakar merupakan sumber knowledge. Jika knowledge yang berasal dari pakar mengandung kesalahan maka kesalahan berlanjut pada keseluruhan proses pengembangan sistem. Untuk proyek yang melibatkan resiko hidup manusia dan properti, perlu dibuat suatu prosedur formal untuk menilai knowledge dari pakar. Misalkan dengan membentuk sebuah panel yang beranggotakan user, pakar independen dari bidang yang sama, pengembang sistem, dan manajer yang akan melakukan review serta analisis terhadap pemecahan solusi dan tehnik yang digunakan untuk membangun sistem.
    Keuntungan dari panel ini adalah knowledge dari pakar akan dievaluasi validitas dan akurasinya sejak awal pengembangan. Semakin banyak kesalahan yang ditemukan akan semakin besar biaya yang dibutuhkan untuk memperbaiki. Jika knowledge tidak diverifikasi di tahap awal, maka pengujian utama dilakukan pada tahap validasi final sistem yang memeriksa apakah sistem memenuhi semua kebutuhan terutama dari segi ketepatan dan kelengkapan solusi. Kerugian dari pembentukan panel ini adalah dalam hal munculnya biaya tambahan.
  • Kesalahan semantik (Semantic error). Kesalahan semantik terjadi jika arti dari knowledge tidak dikomunikasikan secara tepat. Hal ini dapat disebabkan karena knowledge engineer salah mengintepretasikan jawaban / knowledge yang diberikan oleh pakar atau si pakar salah menangkap pertanyaan yang diberikan oleh knowledge engineer ataupun keduanya. Misalkan, si pakar memberikan knowledge : “You can extinguish a fire with water” dan knowledge engineer menganggapnya sebagai “ All fires can be extinguished by water”.
  •  Kesalahan sintaks (Syntax error). Kesalahan ini terjadi jika bentuk aturan atau fakta yang tidak tepat dimasukkan ke dalam sistem. Tool sistem pakar harus memberi tanda (flag) pada kesalahan ini dan memberikan pesan yang sesuai. Kesalahan lain yang terjadi pada tahap pengembangan knowledge-base disebabkan pada kesalahan sumber knowledge yang tidak dideteksi pada tahap awal.
  • Kesalahan mesin inferensi (Inference engine error). Sama seperti software lainnya, mesin inferensi juga dapat mengandung bug/error. Pada saat sistem pakar akan diimplementasikan, semua bugs harus sudah diperbaiki. Namun, kadang terdapat bugs yang muncul pada kondisi yang khusus/langka. Secara umum, bugs mesin inferensi dapat muncul pada saat operasi pencocokan pola (pattern matching), konflik, dan eksekusi, dan akan sulit dideteksi jika bugs ini tidak konsisten. Metode sederhana yang dapat digunakan untuk memeriksa error adalah dengan bertanya pada user lain atau vendor. Vendor harus menyediakan daftar pelanggan, bugs report, dan cara perbaikan bugs. Kelompok user juga merupakan sumber informasi yang baik untuk menangani bugs ini.
Kesalahan rantai proses inferensi (inference chain error).  Kesalahan ini dapat disebabkan oleh kesalahan knowledge, kesalahan semantik, bugs inferensi engine, spesifikasi prioritas aturan (rule) yang tidak tepat, dan interaksi antar rule yang tidak diperhitungkan. Kesalahan rantai proses inferensi yang lebih kompleks disebabkan karena ketidakpastian rule dan fakta, dan akibat lanjutan dari ketidakpastian tersebut dalam rantai proses inferensi dan nonmonoticity.
Batas toleransi terhadap kekurangan (Limits of ignorance error). Salah satu masalah yang umum dihadapi semua tahap pengembangan adalah menentukan batas toleransi terhadap kekurangan oleh sistem. Pakar mengetahui batas pengetahuan yang mereka miliki dan kemampuannya berkurang pada batas tersebut. Pakar harus jujur mengakui bahwa solusi mereka tidak optimal dan mengandung ketidakpastian. Pada sistem pakar, kecuali sistem dirancang khusus untuk mengakui ketidakpastian, sistem akan tetap memberikan solusi walaupun proses inferensi yang dilakukan dan fakta yang dimiliki sangat sedikit dan lemah.