Lecturer 09: Introduction to Expert
System
ICE-407: Artificial Intelligence
By
Paresh Chandra Barman
Professor Dept. of ICE
Islamic University, Kushtia
What is Expert System?
An expert system, is an interactive computer based decision tools
that used both facts and heuristics to solve difficult decision
making problems, based on knowledge acquired from an expert.
An expert system is a model and associated procedure that
exhibits, within a specific domain, a degree of expertise in
problem solving that is comparable to that of a human expert.
An expert system compared with traditional computer:
Inference engine + Knowledge = expert system
(Algorithm + data structures = Program in traditional computer)
First expert system, called DENDRAL, was developed in early
70’s at Stanford University
2 PCB, ICE, IU-Kushtia
1. Introduction
Expert systems are computer applications which embody
some non-algorithmic expertise for solving certain types of
problems.
For example; the expert systems are used in:
diagnostic applications.
playing chess,
financial planning decisions making,
configuring computers,
monitoring real time systems,
underwriting insurance policies, and
performing many services which previously required human
expertise.
3 PCB, ICE, IU-Kushtia
1.1 Expert System Components and
Human Interfaces
Expert systems have a number of major system components and interface with
individuals who interact with the system in various roles.
4 PCB, ICE, IU-Kushtia
Components of an Expert system
Knowledge base:
A declarative representation of the expertise; often in IF THEN rules;
Working Storage:
The data which is specific to a problem being solved;
Inference Engine:
The code at the core of the system which derives recommendations
from the knowledge base and problem specific data in working
storage;
User Interface:
the code that controls the dialog between the user and the system;
5 PCB, ICE, IU-Kushtia
Roles of Individuals
Roles of Individuals who interact with the system
Domain expert:
the individuals who are experts in solving the problems; here the
system is intended to solve;
Knowledge engineer:
the individual who encodes the expert’s knowledge in a declarative
form that can be used by the expert system;
User:
the individual who will be consulting with the system to get advice
which would have been provided by the expert.
6 PCB, ICE, IU-Kushtia
Expert System Shells
Many expert systems are built with products called expert system
shells. A shell is a piece of software which contains the user
interface, a format for declarative knowledge in the knowledge
base, and an interface engine. The knowledge and system
engineers use these shells in making expert systems.
Knowledge Engineer: uses the shell to build a system for a
particular problem domain.
System Engineer: builds the user interface, designs the declarative
format of the knowledge base, and implements the interface
engine.
Depending on the size of the system, the knowledge engineer and
the system engineer might be the same person.
7 PCB, ICE, IU-Kushtia
1.2 Expert System Characteristics
Expert system operates as an interactive system that responds to questions, asks for
clarifications, make recommendations and generally aids the decision-making process.
Expert Systems have many characteristics:
Operates as an expert system
Responds to questions
Asks for clarifications
Makes recommendations
Aids the decision-making process.
Tools have ability to sift (filter) knowledge
Storage and retrieval of knowledge
Mechanisms to expand and update knowledge base on a continuing basis
Make logical interface based on knowledge stored
Simple reasoning mechanisms is used
Knowledge base must have means of exploiting the knowledge stored, else it is useless; e.
g. learning all the words in a language, without knowing how to combine those words to
form a meaningful sentence.
8 PCB, ICE, IU-Kushtia
1.2 Expert System Characteristics
Ability to Explain Reasoning
Remembers logical chain of reasoning; therefore user may ask
For explanation of a recommendation
Factors considered in recommendation
Enhances user confidence in recommendation and acceptance of expert
system
Domain-Specific
A particular system caters a narrow area of specialization; e. g. a medical
expert system cannot be used to find faults in an electrical circuit.
Quality of advice offered by an expert system is dependent on the amount of
knowledge stored.
Capability to assign Confidence Values
Can deliver quantitative information
Can interpret qualitative derived values
Can address imprecise and incomplete data through assignment of
confidence values.
9 PCB, ICE, IU-Kushtia
Applications
Best suited for those dealing with expert heuristics for
solving problems
Not a suitable choice for those problem that can be solved
using purely numerical techniques
Cost-effective alternative to human expert
Expert systems have become increasingly popular because of
their specialization, albeit in a narrow field
Encoding and storing the domain-specific knowledge is
economic process due to small size
Specialists in many areas are rare and the cost of consulting
them is high; an expert system of those areas can be useful and
cost-effective alternative in the long run.
10 PCB, ICE, IU-Kushtia
1.3 Expert System Features
The features which commonly exist in expert systems are:
Goal driven reasoning or Backward Chaining
An inference technique which uses IF-THEN rules to repetitively break a goal into smaller
sub-goal which are easier to prove;
Coping with Uncertainty
The ability of the system to reason with rules and data which are not precisely known;
Data Driven Reasoning or Forward Chaining
An inference technique which uses IF-THEN rules to deduce a problem solution from
initial data;
Data Representation
The way in which the problem specific data in the system is stored and accessed;
User Interface
That portion of the code which creates an easy to use system;
Explanations
The ability of a system to explain the reasoning process that it used to reach a
recommendation.
11 PCB, ICE, IU-Kushtia
Goal-Driven Reasoning
Goal-driven reasoning, or backward chaining, is an efficient
way to solve problems. The algorithm proceeds from the
desired goal, adding new assertions found.
a=1 if a=1 & b=2 then c=3, if c=3 then d=4, d=4
b=2
12 PCB, ICE, IU-Kushtia
Goal-Driven Reasoning
The knowledge is structured in rules which describe how each of the
possibilities might be selected.
The rule breaks the problem into sub-problems.
Example:
KB contains Rule set:
Rule 1: if A and C Then F
Rule 2: IF A and E Then G
Rule 3: IF B Then E
Rule 4: IF G Then D
Problem: prove
IF A and B true Then D is true
13 PCB, ICE, IU-Kushtia
Uncertainty
Often the Knowledge is imperfect which causes
uncertainty. To work in the real world, expert systems
must be able to deal with uncertainty.
One simple way to associate a numeric value with each piece of
information in the system.
The numeric value represents the certainty with which the
information is known.
There are different ways in which these numbers can be
defined, and how they are combined during the
inference process.
14 PCB, ICE, IU-Kushtia
Data Driven Reasoning
The data driven approach, or forward chaining, uses rules
similar to those used for backward chaining. However, the
inference process is different. The system keeps tract of the
current state of problem solution and looks for rules which
will move that state closer to final solution. The Algorithm
proceeds from a given situation to a desired goal, adding new
assertions found.
15 PCB, ICE, IU-Kushtia
Data Driven Reasoning
The knowledge is structured in rules which describe how each of
the possibilities might be selected.
The rule breaks the problem into sub-problems.
Example:
KB contains Rule set:
Rule 1: if A and C Then F
Rule 2: IF A and E Then G
Rule 3: IF B Then E
Rule 4: IF G Then D
Problem: prove
IF A and B true Then D is true
16 PCB, ICE, IU-Kushtia
Data Representation
Expert system is built around a knowledge base module.
Knowledge acquisition is transferring knowledge from human
expert to computer.
Knowledge representation is faithful representation of what the
expert knows.
No single knowledge representation system of optimal
for all applications. The success of expert system
depends on choosing knowledge encoding scheme best
for the kind of knowledge the system is based on.
The IF-THEN rules, Semantic networks, and Frames are
most commonly used representation schemes.
17 PCB, ICE, IU-Kushtia
User Interface
The acceptability of an expert system depends largely on
the quality of user interface.
Scrolling dialog interface: It is easiest to implement and
communicate with the user
Pop-up menus, windows, mice are more advanced interface and
powerful tools for communicating with user; they require
graphics support.
18 PCB, ICE, IU-Kushtia
Explanations
An important feature of expert systems is their ability to
explain themselves.
Given that the system knows which rules were used during the
inference process, the system can provide those rules to the
user as means for explaining the results.
By looking at explanations, the knowledge engineer can see how
the system is behaving, and how the rules and data are
interacting.
This is very valuable diagnostic tool during development.
19 PCB, ICE, IU-Kushtia
Knowledge Acquisition
Knowledge acquisition includes the elicitation, collection,
analysis, modeling and validation of knowledge
Issues in knowledge Acquisition
The important issues in knowledge acquisition are:
Knowledge is in the head of experts
Experts have vast amount of knowledge
Experts have a lot of tacit knowledge
They do not know all that they know and use
Tacit knowledge is hard (impossible) to describe
Experts are very busy and valuable people
One expert does not know everything
Knowledge has a “shelf life”
20 PCB, ICE, IU-Kushtia
Techniques for knowledge Acquisition
The techniques for acquiring, analyzing and modeling
knowledge are:
Protocol-generation techniques,
Protocol analysis techniques,
Hierarchy-generation techniques,
Matrix-based techniques,
Sorting techniques,
Limited-information and constrained-processing tasks,
Diagram-based techniques.
21 PCB, ICE, IU-Kushtia
knowledge Acquisition Techniques
Protocol-generation techniques
Include many types of interviews (unstructured, semi-structured and
structured), reporting and observational techniques.
Protocol-generation techniques
Used with transcripts of interviews or text-based information to
identify basic knowledge objects within a protocol, such as goals,
decisions, relationships and attributes. These act as a bridge between
the use of protocol-based techniques and knowledge modeling
techniques.
Hierarchy-generation techniques
Involve creation, reviewing and modification of hierarchical
knowledge. Hierarchy-generation techniques, such as laddering, are
used to build taxonomies or other hierarchical structures such as goal
trees and decision networks. The Ladders are of various forms like
concept ladder, attribute ladder, composition ladders.
22 PCB, ICE, IU-Kushtia
knowledge Acquisition Techniques
Matrix-based Techniques
Involve the construction and filling-in 2-D matrix (grid, Table), including such
things, as may be, for example, between concepts and properties (attributes and
values) or between problems and solutions, between tasks and resources, etc.
The elements within the matrix can contain: symbols (ticks, crosses, question
marks), colors, numbers, text.
Sorting techniques
Used for capturing the way people compare and order concepts; it may reveal
knowledge about class, properties and priorities.
Limited-Information and constrained-processing tasks
Techniques that either limit the time and/or information available to the expert
when performing tasks. For example, a twenty-questions technique provides an
efficient way of accessing the key information in domain in a prioritized order.
Diagram-Based techniques
Include generation and use concept maps, state transition networks, event
diagrams and process maps. These are particularly important in capturing the
“what, how, when, who and why” of tasks and events.
23 PCB, ICE, IU-Kushtia
Knowledge Base (Representing and
using Domain knowledge)
Expert system is built around a knowledge base module.
Expert system contains a formal representation of the
information provided by the domain expert. This information
may be in the form of problem-solving rules, procedures, or
data intrinsic to the domain.
To incorporate these information into the system, it is
necessary to make use of one or more knowledge
representation methods.
Three common methods of knowledge representation evolved
over the years are IF-THEN rules, Semantic networks
and Frames.
24 PCB, ICE, IU-Kushtia
IF-THEN rules
Human experts usually tend to think along:
condition ⇒ action or situation ⇒ conclusion
Rules “if-then” are predominant form of encoding knowledge
in expert systems, These are of the form:
If a1, a2, … … , an
Then b1, b2, … … , bn
where each ai is a condition or situation and
each bi is an action or a conclusion.
25 PCB, ICE, IU-Kushtia
Semantic Networks
In this scheme, knowledge is represented in terms of objects
and relationships between objects.
The objects are denoted as node of a graph. The relationship
between two objects are denoted as a link between the
corresponding two nodes.
The most common form of semantic networks uses the links
between nodes to represent IS-A and HAS relationships
between objects.
26 PCB, ICE, IU-Kushtia
Example of Semantic Network
The figure below shows a car IS-A vehicle; a vehicle HAS
wheels. This kind of relationship establishes an inheritance
hierarchy in the network, with the objects lower down in the
network inheriting properties from the objects higher up.
27 PCB, ICE, IU-Kushtia
Frames
In this technique, knowledge is decomposed into highly modular
pieces called frames, which are generalized record structures.
Knowledge consist of concepts, situations, attributes of concepts,
relationships between concepts and procedures to handle
relationships as well as attribute values.
Each concept may be represented as a separate frame.
The attributes, the relationships between concepts, and the
procedures are allotted to slots in a frame.
The concepts of a slot may be of any data type: numbers, strings,
function or procedures and so on
The frames may be linked to other frames, providing the same kind of
inheritance as that provided by a semantic network.
A Frame-based representation is ideally suited for objected-
oriented programming techniques.
28 PCB, ICE, IU-Kushtia