Knowledge System Sistem berbasis pengetahuan adalah program komputer yang beralasan dan menggunakan basis pengetahuan untuk memecahkan masalah yang kompleks. Istilah ini luas dan mengacu pada berbagai jenis sistem. Satu tema umum yang menyatukan semua sistem berbasis pengetahuan adalah upaya untuk mewakili pengetahuan secara eksplisit dan sistem penalaran yang memungkinkannya untuk memperoleh pengetahuan baru. Dengan demikian, sistem berbasis pengetahuan memiliki dua fitur yang membedakan: basis pengetahuan dan mesin inferensi. Bagian kedua, mesin inferensi, memungkinkan pengetahuan baru untuk disimpulkan. Paling umum, itu dapat mengambil bentuk aturan IF-THEN [2] ditambah dengan forward or backward chaining approaches. Pendekatan lain termasuk penggunaan prover teorema otomatis, pemrograman logika, sistem papan tulis, dan sistem penulisan ulang istilah seperti CHR (Constraint Handling Rules). Pendekatan yang lebih formal ini dibahas secara rinci dalam artikel Wikipedia tentang representasi pengetahuan dan penalaran. Metode Inferensi Merupakan cara yang digunakan untuk menarik suatu kesimpulan atau dengan kala lain metode pemecahan masalah. Suatu perkalian inferensi yang menghubungkan suatu permasalahan dengan solusinya di sebut dengan rantai (chain). Suatu rantai yang dicari atau dilewati atau di lintasi dari suatu permsalahan untuk memperoleh solusinya di sebut forward chaining. Cara lainnya dengan penalaran dari fakta menuju konklusi yang terdatpat dari fakta. Suatu rantai dilintasi oleh hipotesa tersebut adalah backward chaining. Arah Penelusuran: 1. Forward chaining (Pelacakan ke depan) Dimulai dari inputan beberapa fakta, kemudian menurunkan beberapa fakta dari aturan-aturan yang cocok pada knowledge base dan melanjutkan prosesnya sampai jawaban sesuai. Forward chaining dapat dikatakan sebagai penelusuran deduktif 2. Backward chaining (Pelacakan ke belakang) Penarikan keputusan yang di dasarkan dari hipotesa atau dugaan yang didapat dari informasi yang ada. Sistem berbasis pengetahuan pertama kali dikembangkan oleh peneliti kecerdasan buatan. Sistem berbasis pengetahuan awal ini terutama adalah sistem pakar - pada kenyataannya, istilah ini sering digunakan secara bergantian dengan sistem pakar, meskipun ada perbedaan. Perbedaannya adalah dalam pandangan yang diambil untuk menggambarkan sistem: "sistem pakar" mengacu pada jenis tugas yang coba dibantu oleh sistem - untuk menggantikan atau membantu pakar manusia dalam tugas kompleks yang biasanya dipandang membutuhkan pengetahuan pakar. "sistem berbasis pengetahuan" mengacu pada arsitektur sistem - yang mewakili pengetahuan secara eksplisit, bukan sebagai kode prosedural. Sementara sistem berbasis pengetahuan yang paling awal hampir semuanya adalah sistem pakar, alat dan arsitektur yang sama dapat dan sejak itu telah digunakan untuk seluruh jenis sistem lainnya. Sebenarnya semua sistem pakar adalah sistem berbasis pengetahuan, tetapi banyak sistem berbasis pengetahuan bukan sistem pakar. Sistem berbasis pengetahuan pertama adalah sistem pakar berbasis aturan. Salah satu yang paling terkenal adalah Mycin, sebuah program untuk diagnosa medis. Sistem pakar awal ini merepresentasikan fakta tentang dunia sebagai pernyataan sederhana dalam database datar, dan menggunakan aturan sebagai alasan tentang (dan sebagai hasilnya menambah) pernyataan ini. Mewakili pengetahuan secara eksplisit melalui aturan memiliki beberapa keunggulan: 1. Akuisisi dan pemeliharaan. Menggunakan aturan berarti bahwa para ahli domain sering dapat mendefinisikan dan memelihara aturan itu sendiri daripada melalui seorang programmer. 2. Penjelasan. Mewakili pengetahuan secara eksplisit memungkinkan sistem untuk berpikir tentang bagaimana mereka sampai pada kesimpulan dan menggunakan informasi ini untuk menjelaskan hasil kepada pengguna. Misalnya, untuk mengikuti rantai kesimpulan yang mengarah pada diagnosis dan menggunakan fakta-fakta ini untuk menjelaskan diagnosis. 3. Pemikiran. Memisahkan pengetahuan dari pemrosesan pengetahuan itu memungkinkan mesin inferensi tujuan umum dikembangkan. Sistem ini dapat mengembangkan kesimpulan yang berasal dari kumpulan data yang bahkan mungkin tidak disadari oleh pengembang awal.