What is an expert system :
An expert system is a computer program or we can say an application that can solve complex of the complex problem in a particular domain. It is designed using the concept of Artificial Intelligence and was first introduced in the Department of Computer Science, Stanford University. The expert system can perform at the extraordinary level of human intelligence or human experts. In this article, we will discuss the various components of an expert system with the diagram.
Basically, the expert system represents the knowledge of the human expert in the form of heuristic. It can be also considered as an instance of a decision support system. The knowledge base and decision rule are the most unique and distinguishing features of an expert system.
The concept of the expert system is normally based on assumption that an expert’s knowledge can be stored in computer memory and then applied by other when needed. An expert system shares knowledge of a human expert in a specific area of study such as production engineering, genetic engineering and so on. It is found that the problem-solving capabilities of an expert system are as good as that of human experts or sometimes even better than the human experts.
Now, let’s discuss the various components of an expert system. The components of the expert system consist of 4 major parts. They are – User Interface, Inference Engine, Development Engine & Knowledge Base.
Components of an expert system :
User Interface :
It enables the users to enter instruction and information into the expert system and to receive information from it. The information is in the form of values assigned to certain variables. The user interface has two parts –
- Expert System Input: A user can use method for input command, natural language and customize the interface.
- Expert System Output: Expert systems are designed to provide output or solution for a specific domain.
Knowledge Base :
It contains the fact that describes the problem area and knowledge representation technique that describes manner. That means the knowledge base contains a really high-quality and extraordinary knowledge in that particular domain. The term problem domain is used to describe the problem. Or basically, we can say that the knowledge base is the set of rules. The rules in the knowledge base are usually coded in the form- if x, then y where x is a condition, y is an action to be taken if the condition is true.
These kinds of rules are got from experience of human experts. The knowledge of human experts is translated into the “if-then” statements. It is a kind of job i.e. taking the knowledge from the experts and converting them into such statements. A person who does this job is known as Knowledge Engineer.
An exceptionally remarkable knowledge is required to model the intelligence system. Since the whole success of an expert system depends upon the knowledge that is so accurate and also the bug-free, that is why it is considered as one of the important components of an expert system.
Inference Engine :
The inference engine is one of the most important components of an expert system. The inference engine of the expert system is the rule that defines how the expert process interprets the knowledge in an appropriate manner. The inference engine work in either forward chaining or backward chaining.
In simple, the inference engine takes the knowledge base and then it applies processing to it. The inference engine processes a massive amount of data in some kind of consistent way and it comes out with a conclusion. It works as a brain in an expert system.
Backward chaining process faster than the forward chaining because it doesn’t make multiple passes through the rule set. Backward chaining is especially appropriate when-
- There are multiple goal variables.
- There are many rules.
- All or most of the rules don’t have examined in the process of reaching the solution.
Forward chaining is performed when the goal is to draw some conclusion from a given set of fact.
Development Engine :
Development engine is used to create the expert system. This process usually involved building the rule set. There are two basic approaches-
- Programming Language
- Expert system shell
Programming Language: An expert system can be created using any programming language. However, two especially suited to the symbolical representation of knowledge is LISP and Prolog.
Expert System Shell: Expert system shell is a readymade processor that can be tailored to specific problem domain through the addition of the appropriate knowledge base. In most cases, the shell can be produced an expert system quicker and easier than by programming language. The first commercial shell was for knowledge engineering environment (K.E.E.). It was designed for the use of a computer design, especially for LISP language for a LISP machine.