Katana VentraIP

Knowledge-based systems

A knowledge-based system (KBS) is a computer program that reasons and uses a knowledge base to solve complex problems. Knowledge-based systems were the focus of early artificial intelligence researchers in the 1980s. The term can refer to a broad range of systems. However, all knowledge-based systems have two defining components: an attempt to represent knowledge explicitly, called a knowledge base, and a reasoning system that allows them to derive new knowledge, known as an inference engine.

For the academic journal, see Knowledge-Based Systems (journal).

Components[edit]

The knowledge base contains domain-specific facts and rules[1] about a problem domain (rather than knowledge implicitly embedded in procedural code, as in a conventional computer program). In addition, the knowledge may be structured by means of a subsumption ontology, frames, conceptual graph, or logical assertions.[2]


The inference engine uses general-purpose reasoning methods to infer new knowledge and to solve problems in the problem domain. Most commonly, it employs forward chaining or backward chaining. Other approaches include the use of automated theorem proving, logic programming, blackboard systems, and term rewriting systems such as Constraint Handling Rules (CHR). These more formal approaches are covered in detail in the Wikipedia article on knowledge representation and reasoning.

expert: describes only the task the system is designed for – its purpose is to aid replace a human expert in a task typically requiring specialised knowledge

knowledge-based: refers only to the system's architecture – it represents knowledge explicitly, rather than as procedural code

Knowledge representation and reasoning

Knowledge modeling

Knowledge engine

Information retrieval

Reasoning system

Case-based reasoning

Conceptual graph

Neural networks

Rajendra, Akerkar; Sajja, Priti (2009). Knowledge-Based Systems. Jones & Bartlett Learning.  9780763776473.

ISBN