What is an expert system?
“An expert system is a computer system that
emulates, or acts in all respects, with the
decision-making capabilities of a human expert.”
1
Fig 1.1 Areas of Artificial
Intelligence
2
Expert system technology
may include:
Special expert system languages – CLIPS
Programs
Hardware designed to facilitate the
implementation of those systems
3
Expert System Main Components
Knowledge base – obtainable from books,
magazines, knowledgeable persons, etc.
Inference engine – draws conclusions from the
knowledge base
4
The Architecture of Expert
Systems
5
Figure 1.2 Basic Functions
of Expert Systems
6
Problem Domain vs. Knowledge
Domain
An expert’s knowledge is specific to one problem
domain – medicine, finance, science,
engineering, etc.
The expert’s knowledge about solving specific
problems is called the knowledge domain.
The problem domain is always a superset of the
knowledge domain.
7
Figure 1.3 Problem and Knowledge Domain
Relationship
8
Advantages of Expert Systems
Increased availability
Reduced cost
Reduced danger
Performance
Multiple expertise
Increased reliability
9
Advantages Continued
Explanation
Fast response
Steady, unemotional, and complete responses at all times
Intelligent database
10
Representing the Knowledge
The knowledge of an expert system can be
represented in a number of ways, including IF-
THEN rules:
IF you are hungry THEN eat
11
Knowledge Acquisition
The success of any expert system majorly depends
on the quality, completeness, and accuracy of the
information stored in the knowledge base.
The knowledge base is formed by readings from
various experts, scholars, and the Knowledge
Engineers. The knowledge engineer is a person
with the qualities of empathy, quick learning, and
case analyzing skills.
He acquires information from subject expert by
recording, interviewing, and observing him at
work, etc. He then categorizes and organizes the
information in a meaningful way, in the form of IF-
THEN-ELSE rules, to be used by interference
machine. The knowledge engineer also monitors
the development of the ES.
12
Interface Engine
Use of efficient procedures and rules by the
Interface Engine is essential in deducting a
correct, flawless solution.
In case of knowledge-based ES, the Interface
Engine acquires and manipulates the knowledge
from the knowledge base to arrive at a particular
solution.
In case of rule based ES, it −
Applies rules repeatedly to the facts, which are
obtained from earlier rule application.
Adds new knowledge into the knowledge base if
required.
Resolves rules conflict when multiple rules are
applicable to a particular case. 13
To recommend a solution, the
interface engine uses the
following strategies −
Forward Chaining
Backward Chaining
14
Forward Chaining
It is a strategy of an expert system to answer the
question, “What can happen next?”
Here, the interface engine follows the chain of
conditions and derivations and finally deduces the
outcome. It considers all the facts and rules, and
sorts them before concluding to a solution.
This strategy is followed for working on
conclusion, result, or effect. For example,
prediction of share market status as an effect of
changes in interest rates.
15
16
Backward Chaining
With this strategy, an expert system finds out the
answer to the question, “Why this happened?”
On the basis of what has already happened, the
interface engine tries to find out which conditions could
have happened in the past for this result. This strategy
is followed for finding out cause or reason. For
example, diagnosis of blood cancer in humans.
17
18
User Interface
User interface provides interaction
between user of the ES and the ES
itself. It is generally Natural
Language Processing so as to be
used by the user who is well-versed
in the task domain. The user of the
ES need not be necessarily an
expert in Artificial Intelligence.
19
Knowledge Engineering
The process of building an expert system:
1. The knowledge engineer establishes a dialog
with the human expert to elicit (obtain)
knowledge.
2. The knowledge engineer codes the knowledge
explicitly in the knowledge base.
3. The expert evaluates the expert system and
gives a critique to the knowledge engineer.
20
Applications of Expert System
Application Description
Design Domain : Camera lens design, automobile design.
Medical Domain : Diagnosis Systems to deduce cause of
disease from observed
data, conduction medical operations on humans.
Monitoring Systems : Comparing data continuously with
observed system or with prescribed behavior such as
leakage monitoring in long petroleum pipeline.
Process Control Systems : Controlling a physical process
based on monitoring.
Knowledge Domain : Finding out faults in vehicles,
computers.
Finance/Commerce : Detection of possible fraud,
suspicious transactions, stock market trading, Airline
scheduling, cargo scheduling.
21
Development of an Expert System
22
The Role of AI
An algorithm is an ideal solution guaranteed to
yield a solution in a finite amount of time.
When an algorithm is not available or is
insufficient, we rely on artificial intelligence
(AI).
Expert system relies on inference (conclusion) –
we accept a “reasonable solution.”
23
Uncertainty
Both human experts and expert systems must be
able to deal with uncertainty.
It is easier to program expert systems with
shallow knowledge than with deep knowledge.
Shallow knowledge – based on empirical
(experimental and heuristic knowledge.
Deep knowledge – based on basic structure,
function, and behavior of objects.
24
Limitations of Expert Systems
Typical expert systems cannot generalize through
analogy to reason about new situations in the way
people can.
A knowledge acquisition bottleneck results from
the time-consuming and labor intensive task of
building an expert system.
25
Early Expert Systems
DENDRAL – used in chemical mass
spectroscopy to identify chemical constituents
MYCIN – medical diagnosis of illness
DIPMETER – geological data analysis for oil
PROSPECTOR – geological data analysis for
minerals
XCON/R1 – configuring computer systems
26
Problems with Algorithmic Solutions
Conventional computer programs generally solve
problems having algorithmic solutions.
Algorithmic languages include C, Java, and C#.
Classic AI languages include LISP and
PROLOG.
27
Elements of an Expert System
User interface – mechanism by which user and
system communicate.
Exploration facility – explains reasoning of
expert system to user.
Working memory – global database of facts used
by rules.
Inference engine – makes inferences deciding
which rules are satisfied and prioritizing.
28
Elements Continued
Agenda – a prioritized list of rules created by the
inference engine, whose patterns are satisfied by
facts or objects in working memory.
Knowledge acquisition facility – automatic way
for the user to enter knowledge in the system
bypassing the explicit coding by knowledge
engineer.
29
Production Rules
Knowledge base is also called production
memory.
Production rules can be expressed in IF-THEN
pseudocode format.
In rule-based systems, the inference engine
determines which rule antecedents are satisfied
by the facts.
30
Figure 1.6 Structure of a
Rule-Based Expert System
31
General Methods of Inferencing
Forward chaining – reasoning from facts to the
conclusions resulting from those facts – best for
forecast, monitoring, and control.
Backward chaining – reasoning in reverse from a
hypothesis (theory), a potential conclusion to be
proved to the facts that support the hypothesis –
best for diagnosis problems.
32
Production Systems
Rule-based expert systems – most popular type
today.
Knowledge is represented as multiple rules that
specify what should/not be concluded from
different situations.
Forward chaining – start w/facts and use rules do
draw conclusions/take actions.
Backward chaining – start w/hypothesis and look
for rules that allow hypothesis to be proven true.
33
There are 5 main types of
knowledge representation in
Artificial Intelligence
Meta Knowledge – It’s a knowledge about knowledge and
how to gain them
Heuristic – Knowledge – Representing knowledge of some
expert in a field or subject.
Procedural Knowledge – Gives information/ knowledge
about how to achieve something.
Declarative Knowledge – Its about statements that
describe a particular object and its attributes ,
including some behaviour in relation with it.
Structural Knowledge – Describes what relationship
exists between concepts/ objects.
34
Meta-knowledge
is knowledge about knowledge. The
term is used to describe things such
as tags, models and taxonomies
that describe knowledge. Several
academic areas including
bibliography, the study of books,
and epistemology, the philosophy of
knowledge, are also considered
meta-knowledge.
35