Knowledge Based System
KBSs are computer systems that contains stored knowledge and solve problems like humans.
Their core components are -
• knowledge-base (rules, facts, meta-knowledge)
• inference engine (reasoning and search strategy for solution, other services)
characteristics of KBSs:
• intelligent information processing systems
• representation of domain of interest - > symbolic representation
• problem solving-> by symbol - manipulation
=> symbolic programs
STRUCTURE
Explanation Case specific
subsystem database
User
User
interface
Inference
engine
Knowledge
base
Knowledge
Knowledge Developer's
acquisition
engineer interface
subsystem
knowledge-base (KB) : It contains knowledge about the field of interest (in natural language-
like formalism). It is a symbolically described system-specification. KNOWLEDGE-
REPRESENTATION METHOD!
inference engine: Its is an engine of problem solving (general problem solving knowledge)
and supports the operation of the other components. PROBLEM SOLVING METHOD!
case-specific database : It is an auxiliary component. It comprises of specific information
(information from outside, initial data of the concrete problem) and information obtained during
reasoning.
Explanation subsystem: It contains the explanation of system’s actions in case of user’s
request. Typical explanation facilities:
1. Explanation during problem solving:
• WHY... (explanative reasoning, intelligent help, tracing information about the
actual reasoning steps)
• WHAT IF... (hypothetical reasoning, conditional assignment and its
consequences, can be withdrawn)
• WHAT IS ... (gleaning in knowledge-base and case-specific database)
1. Explanation after problem solving:
• HOW ... (explanative reasoning, information about the way the result has been
found)
• WHY NOT ... (explanative reasoning, finding counter-examples)
• WHAT IS ... (gleaning in knowledge-base and case-specific database)
Knowledge acquisition subsystem: Its main tasks are:
• checking the syntax of knowledge elements
• checking the consistency of KB (verification, validation)
• knowledge extraction, building KB
• automatic logging and book-keeping of the changes of KB
• tracing facilities (handling breakpoints, automatic monitoring and reporting the values
of knowledge elements)
user interface (→ user) : dialogue on natural language (consultation/ suggestion)
Specially intefaces: comprises of database and other connections
Developer interface (→ knowledge engineer, human expert)
Knowledge engineer selects the knowledge representation method and reasoning strategy. He is
also responsible for the implementation of knowledge-based system.
Other tasks are -
• knowledge acquisition and design of KBS: determination, classification, refinement
and formalization of methods, thumb-rules and procedures
• verification and validation of KB
• KB maintenance