UNIT - V
Expert Systems:
Representing and Using Domain Knowledge, Shell,
Explanation, Knowledge Acquisition.
What is Expert System?
• Expert System is an interactive and reliable computer-based decision-
making system which uses both facts and heuristics to solve complex
decision-making problems. It is considered at the highest level of
human intelligence and expertise. The purpose of an expert system is
to solve the most complex issues in a specific domain.
• The Expert System in AI can resolve many issues which generally
would require a human expert. It is based on knowledge acquired
from an expert. Artificial Intelligence and Expert Systems are capable
of expressing and reasoning about some domain of knowledge.
Expert systems were the predecessor of the current day artificial
intelligence, deep learning and machine learning systems.
What are Expert Systems?
The expert systems are the computer applications developed to solve complex
problems in a particular domain, at the level of extra-ordinary human intelligence
and expertise.
Characteristics of Expert Systems
• High Performance: The expert system provides high performance for solving any
type of complex problem of a specific domain with high efficiency and accuracy.
• Understandable: It responds in a way that can be easily understandable by the
user. It can take input in human language and provides the output in the same
way.
• Reliable: It is much reliable for generating an efficient and accurate output.
• Highly responsive: ES provides the result for any complex query within a very
short period of time.
• Right on Time Reaction: An Expert System in Artificial Intelligence
interacts in a very reasonable period of time with the user. The total
time must be less than the time taken by an expert to get the most
accurate solution for the same problem.
• Flexible: It is vital that it remains flexible as it the is possessed by an
Expert system.
• Effective Mechanism: Expert System in Artificial Intelligence must
have an efficient mechanism to administer the compilation of the
existing knowledge in it.
• Capable of handling challenging decision & problems: An expert
system is capable of handling challenging decision problems and
delivering solutions.
Three common methods of knowledge representation evolved over
the years are IF-THEN rules, Semantic networks and Frames. (already
discussed in previous classes)
Why Expert systems are required?
Capabilities of Expert Systems
The expert systems are capable of : • Interpreting input
• Advising • Predicting results
• Justifying the conclusion
• Instructing and assisting human in
decision making • Suggesting alternative options to a
problem
• Demonstrating They are incapable of −
• Deriving a solution • Substituting human decision makers
• Diagnosing • Possessing human capabilities
• Explaining • Producing accurate output for
inadequate knowledge base
• Refining their own knowledge
Examples of the Expert System:
Below are some popular examples of the Expert System:
• DENDRAL: It was an artificial intelligence project that was made as a chemical
analysis expert system. It was used in organic chemistry to detect unknown
organic molecules with the help of their mass spectra and knowledge base of
chemistry.
• MYCIN: It was one of the earliest backward chaining expert systems that was
designed to find the bacteria causing infections like bacteraemia and meningitis.
It was also used for the recommendation of antibiotics and the diagnosis of
blood clotting diseases.
• PXDES: It is an expert system that is used to determine the type and level of lung
cancer. To determine the disease, it takes a picture from the upper body, which
looks like the shadow. This shadow identifies the type and degree of harm.
• CaDeT: The CaDet expert system is a diagnostic support system that can detect
cancer at early stages.
The process of Building An Expert Systems
• Determining the characteristics of the problem
• Knowledge engineer and domain expert work in coherence to define
the problem
• The knowledge engineer translates the knowledge into a computer-
understandable language. He designs an inference engine, a
reasoning structure, which can use knowledge when needed.
• Knowledge Expert also determines how to integrate the use of
uncertain knowledge in the reasoning process and what type of
explanation would be useful.
Components of Expert System
An expert system mainly consists of three components:
• User Interface
• Inference Engine
• Knowledge Base
1. User Interface
• With the help of a user interface, the expert system interacts with the user, takes
queries as an input in a readable format, and passes it to the inference engine.
After getting the response from the inference engine, it displays the output to the
user. In other words, it is an interface that helps a non-expert user to
communicate with the expert system to find a solution.
2. Inference Engine(Rules of Engine)
• The inference engine is known as the brain of the expert system as it is the main
processing unit of the system. It applies inference rules to the knowledge base to
derive a conclusion or deduce new information. It helps in deriving an error-free
solution of queries asked by the user.
• With the help of an inference engine, the system extracts the knowledge from the
knowledge base.
There are two types of inference engine:
• Deterministic Inference engine: The conclusions drawn from this type of inference
engine are assumed to be true. It is based on facts and rules.
• Probabilistic Inference engine: This type of inference engine contains uncertainty
in conclusions, and based on the probability.
Inference engine uses the below modes to derive the solutions:
• Forward Chaining: It starts from the known facts and rules, and applies the
inference rules to add their conclusion to the known facts.
• Backward Chaining: It is a backward reasoning method that starts from the
goal and works backward to prove the known facts.
3. Knowledge Base
• The knowledgebase is a type of storage that stores knowledge acquired
from the different experts of the particular domain. It is considered as big
storage of knowledge. The more the knowledge base, the more precise will
be the Expert System.
• It is similar to a database that contains information and rules of a particular
domain or subject.
• One can also view the knowledge base as collections of objects and their
attributes. Such as a Lion is an object and its attributes are it is a
mammal, it is not a domestic animal, etc.
Components of Knowledge Base
• Factual Knowledge: The knowledge which is based on facts and accepted by knowledge
engineers comes under factual knowledge.
• Heuristic Knowledge: This knowledge is based on practice, the ability to guess, evaluation, and
experiences.
• Knowledge Representation: It is used to formalize the knowledge stored in the knowledge base
using the If-else rules.
• Knowledge Acquisitions: It is the process of extracting, organizing, and structuring the domain
knowledge, specifying the rules to acquire the knowledge from various experts, and store that
knowledge into the knowledge base.
Participant in Expert Systems Development
• No memory Limitations: It can store as much data as required and can memorize it at
the time of its application. But for human experts, there are some limitations to
memorize all things at every time.
• High Efficiency: If the knowledge base is updated with the correct knowledge, then it
provides a highly efficient output, which may not be possible for a human.
• Expertise in a domain: There are lots of human experts in each domain, and they all
have different skills, different experiences, and different skills, so it is not easy to get a
final output for the query. But if we put the knowledge gained from human experts into
the expert system, then it provides an efficient output by mixing all the facts and
knowledge
• Not affected by emotions: These systems are not affected by human emotions such as
fatigue, anger, depression, anxiety, etc.. Hence the performance remains constant.
• High security: These systems provide high security to resolve any query.
• Considers all the facts: To respond to any query, it checks and considers all the available
facts and provides the result accordingly. But it is possible that a human expert may not
consider some facts due to any reason.
• Regular updates improve the performance: If there is an issue in the result provided by
the expert systems, we can improve the performance of the system by updating the
knowledge base.
Applications of Expert System:
• The following table shows where ES can be applied.
Advantages of Expert System
• These systems are highly reproducible.
• They can be used for risky places where the human presence is not safe.
• Error possibilities are less if the KB contains correct knowledge.
• The performance of these systems remains steady as it is not affected by
emotions, tension, or fatigue.
• They provide a very high speed to respond to a particular query.
Limitations of Expert System
• The response of the expert system may get wrong if the knowledge base contains
the wrong information.
• Like a human being, it cannot produce a creative output for different scenarios.
• Its maintenance and development costs are very high.
• Knowledge acquisition for designing is much difficult.
• For each domain, we require a specific ES, which is one of the big limitations.
• It cannot learn from itself and hence requires manual updates.
Expert System Shells
• An Expert system shell is a software development environment. It contains
the basic components of expert systems. A shell is associated with a
prescribed method for building applications by configuring and instantiating
these components.
Shell components and description:
• The generic components of a shell : the knowledge acquisition, the
knowledge Base, the reasoning, the explanation and the user interface are
shown below. The knowledge base and reasoning engine are the core
components.
All these components are described in the next slide.
• Knowledge Base:
A store of factual and heuristic knowledge. Expert system tool provides
one or more knowledge representation schemes for expressing
knowledge about the application domain. Some tools use both Frames
(objects) and IF-THEN rules. In PROLOG the knowledge is represented
as logical statements.
■ Reasoning Engine
Inference mechanisms for manipulating the symbolic information and knowledge in the
knowledge base form a line of reasoning in solving a problem.
The inference mechanism can range from simple modus ponens backward chaining of IF-
THEN rules to Case-Based reasoning.
Knowledge Acquisition subsystem
A subsystem to help experts in build knowledge bases. However, collecting knowledge,
needed to solve problems and build the knowledge base, is the biggest bottleneck in
building expert systems.
Explanation subsystem
A subsystem that explains the system's actions. The explanation can range from how the
final or intermediate solutions were arrived at justifying the need for additional data.
User Interface
A means of communication with the user. The user interface is generally not a part of the
expert system technology. It was not given much attention in the past. However, the
user interface can make a critical difference in the pe eived utility of an Expert system.
Explanation - Expert System
• Most expert systems have explanation facilities that allow the user to ask questions -
why and how it reached some conclusion.
Explanation
• Most expert systems have explanation facilities that allow the user to ask questions -
why and how it reached some conclusion.
• The questions are answered by referring to the system goals, the rules being used,
and existing problem solving. The rules typically reflect empirical, or "compiled"
knowledge. They are codes of an expert's rules of thumb, not the expert's deeper
understanding.
Example :
Dialog with an expert system designed to give advice on car problems.
System Does the car start ?
User No.
System Does the engine turn over ?
User Yes.
System Do you smell gas ?
User Yes
System Recommendation - Wait 5 minutes and try again.
User Why ?
System I used the rule:
If not start, and engine_turn_over, and smell_gas
Then recommendation is 'Wait 5 minutes and try again‘
User
Note : The rule gives the correct advice for a flooded car, and knows the questions to be ask to
determine if the car is flooded, but it does not contain the knowledge of what a flooded car is and
why waiting will help.
Types of Explanation
There are four types of explanations commonly used in expert systems.
Rule trace reports on the progress of a consultation;
‡ Explanation of how the system reached to the given conclusion;
‡ Explanation of why the system did not give any conclusion.
Explanation of why the system is asking a question;
knowledge acquisition
Introduction
• Knowledge acquisition is the process of extracting, structuring and organizing knowledge
from one source, usually human experts, so it can be used in software such as an ES. This
is often the major obstacle in building an ES. There are three main topic areas central to
knowledge acquisition that require consideration in all ES projects. First, the domain
must be evaluated to determine if the type of knowledge in the domain is suitable for an
ES. Second, the source of expertise must be identified and evaluated to ensure that the
specific level of knowledge required by the project is provided. Third, if the major source
of expertise is a person, the specific knowledge acquisition techniques and participants
need to be identified.
Theoretical Considerations
• An ES attempts to replicate in software the reasoning/pattern-recognition abilities of
human experts who are distinctive because of their particular knowledge and specialized
intelligence. ES should be heuristic and readily distinguishable from algorithmic
programs and databases. Further, ES should be based on expert knowledge, not just
competent or skillful behavior.
• Domains
Several domain features are frequently listed for consideration in determining whether an ES is
appropriate for a particular problem domain. Several of these caveats relate directly to
knowledge acquisition. First, bona fide experts, people with generally acknowledge expertise in
the domain, must exist. Second, there must be general consensus among experts about the
accuracy of solutions in a domain. Third, experts in the domain must be able to communicate
the details of their problem solving methods. Fourth, the domain should be narrow and well
defined and solutions within the domain must not require common sense.
• Experts
Although an ES knowledge base can be developed from a range of sources such as textbooks,
manuals and simulation models, the knowledge at the core of a well developed ES comes from
human experts. Although multiple experts can be used, the ideal ES should be based on the
knowledge of a single expert. In light of the pivotal role of the expert, caveats for choosing a
domain expert are not surprising. First, the expert should agree with the goals of the project.
Second, the expert should be cooperative and easy to work with. Third, good verbal
communication skills are needed. Fourth, the expert must be willing and able to make the
required time commitment (there must also be adequate administrative/managerial support for
this too).
• Knowledge Acquisition Technique
At the heart of the process is the interview. The heuristic model of the domain is usually extracted
through a series of intense, systematic interviews, usually extending over a period of many months.
Note that this assumes the expert and the knowledge engineer are not the same person. It is
generally best that the expert and the knowledge engineer not be the same person since the
deeper the experts' knowledge, the less able they are in describing their logic. Furthermore, in their
efforts to describe their procedures, experts tend to rationalize their knowledge and this can be
misleading.
General suggestions about the knowledge acquisition process are summarized in rough
chronological order below:
• Observe the person solving real problems.
• Through discussions, identify the kinds of data, knowledge and procedures required to solve
different types of problems.
• Build scenarios with the expert that can be associated with different problem types.
• Have the expert solve a series of problems verbally and ask the rationale behind each step.
• Develop rules based on the interviews and solve the problems with them.
• Have the expert review the rules and the general problem solving procedure.
• Compare the responses of outside experts to a set of scenarios obtained from the project's expert
and the ES.
Note that most of these procedures require a close working relationship between the knowledge
Practical Considerations
The preceding section provided an idealized version of how ES projects
might be conducted. In most instances, the above suggestions are
considered and modified to suit the particular project. The remainder
of this section will describe a range of knowledge acquisition
techniques that have been successfully used in the development of ES.
• Operational Goals
• Pre-training
• Knowledge Document
• Scenarios
• Interviews