PostHeaderIcon Expert Systems

What is Expert System?

Expert system is an artificial intelligence program that has expert-level knowledge about a particular domain and knows how to use its knowledge to respond properly. Domain refers to the area within which the task is being performed. Ideally the expert systems should substitute a human expert. Edward Feigenbaum of Stanford University has defined expert system as “an intelligent computer program that uses knowledge and inference procedures to solve problems that are difficult enough to require significant human expertise for their solutions.” It is a branch of artificial intelligence introduced by researchers in the Stanford Heuristic Programming Project.

The expert systems is a branch of AI designed to work within a particular domain. As an expert is a person who can solve a problem with the domain knowledge in hands it should be able to solve problems at the level of a human expert. The source of knowledge may come come from a human expert and/or from books, magazines and internet. As knowledge play a key role in the functioning of expert systems they are also known as knowledge-based systems and knowledge-based expert systems. The expert’s knowledge about solving the given specific problems is called knowledge domain of the expert.

Components of Expert Systems

Figure: Expert System

Figure: Expert System

Basic Concept of an Expert System Function

The expert system consists of two major components: knowledge base and inference engine.

Knowledge base contains the domain knowledge which is used by the inference engine to draw conclusions. The inference engine is the generic control mechanism that applies the axiomatic knowledge to the task-specific data to arrive at some conclusion. When a user supplies facts or relevant information of query to the expert system he receives advice or expertise in response. That is given the facts it uses the inference engine which in turn uses the knowledge base to infer the solution.

Characteristics of Expert Systems

High performance: They should perform at the level of a human expert.

Adequate response time: They should have the ability to respond in a reasonable amount of time. Time is crucial especially for real time systems.

Reliability: They must be reliable and should not crash.

Understandable: They should not be a black box instead it should be able explain the steps of the reasoning process. It should justify its conclusions in the same way a human expert explains why he arrived at particular conclusion.


A shell is a special purpose tool designed based on the requirements of particular applications. User should supply the knowledge base to the shell. Example for the shell is EMYCIN (Empty MYCIN) shell. Shell manages the input and output. It processes the information given by the user, relates it to the concepts contained in the knowledge base, and provides solution for a particular problem.

Advantages of Expert Systems

Availability: Expert systems are available easily due to mass production software.

Cheaper: The cost of providing expertise is not expensive.

Reduced danger: They can be used in any risky environments where humans cannot work with.

Permanence: The knowledge will last long indefinitely.

Multiple expertise: It can be designed to have knowledge of many experts.

Explanation: They are capable of explaining in detail the reasoning that led to a conclusion.

Fast response: They can respond at great speed due to the inherent advantages of computers over humans.

Unemotional and response at all times: Unlike humans, they do not get tense, fatigue or panic and work steadily during emergency situations.

Related Articles

Steps to Create an Expert System

Rule based Expert Systems

Artificial Intelligence

Machine Learning