Expert Systems defined.............
Expert System is a computer program that represents and reasons
with knowledge of some specialist subject with a view to solving
problems or giving advice
As per Edward Feigenbaum
“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.”
Expert Systems are a subfield of
Artificial Intelligence.
Synonym Term:
Knowledge Based System
1
Characteristics of Expert Systems:
Expert systems Alias Knowledge Based
Systems
Separation of facts, knowledge, and inference.
knowledge is explicit, not hidden in algorithm
Simulates Human reasoning
Built from approach of Human Expert
Uses approximate or heuristic search
Has multiple uses: Legal, medical,
scientific,
tech support......
2 Expert Systems 1
Why use Expert Systems?...Need...
Experts are not always available. An
expert system can be used anywhere, any
time. ES holds Scare and rare expertise.
ES has direct and instantaneous access to
the necessary databases and is not bound
to the limited, biased and imperfect
recollections of the human.
Human experts are not 100% reliable or
consistent
It is logical, objective and consistent.
It doesn’t forget or make mathematical
errors.
Experts may not be good at explaining
decisions, ES are.
Human experts, may not be cost effective
When (Not) to Use an ES?
Expert systems are not suitable for all types of
domains and tasks
They are not useful or preferable, when …
efficient conventional algorithms are known
the main challenge is computation, not knowledge
knowledge cannot be captured efficiently or used effectively
users are reluctant to apply an expert system, e.g. due to
criticality of task, high risk or high security demands
Summarizing………When to use an expert
system
Provide a high potential payoff or significantly
reduced downside risk
Capture and preserve irreplaceable human expertise
Provide expertise needed at a number of locations at
the same time or in a hostile environment that is
dangerous to human health.
Provide expertise that is expensive or rare
Develop a solution faster than human experts can
Provide expertise needed for training and
development to share the wisdom of human experts
with a large number of people
Roles within ES development
Human Expert
Has domain knowledge; routinely solves problems; his
knowledge is solicited and the ES is developed.
Knowledge Engineer
Communicates with Human Expert to obtain and
model the knowledge that we need in the system
Programmer
Builds and maintains all the necessary computer
programs
User
Wants to use expertise to solve problems
(better, cheaper)
6 Expert Systems 1
ES Benefits
7
Operation in Hazardous Environments
Accessibility to Knowledge and Help Desks
Increased Capabilities of Other Computerized Systems
Integration of Several Experts' Opinions
Ability to Work with Incomplete or Uncertain
Information
Provide Training
Enhancement of Problem Solving and Decision Making
Improved Decision Quality
Ability to Solve Complex Problems
Knowledge Transfer to Remote Locations
Applications & Areas of Expert Systems
Planning actions
Interpretation of sensory data
Diagnosing faults or diseases and suggesting
remedies
Configuring industrial components
Teaching
Control of industrial plant
Analysis of experimental results
Explain their reasoning or suggested decisions
Display intelligent behavior
Draw conclusions from complex relationships
Provide portable knowledge
Applications …
Credit granting
Information management and retrieval
AI and expert systems embedded in products
Plant layout
Hospitals and medical facilities
Help desks and assistance
Employee performance evaluation
Loan analysis
Virus detection
Repair and maintenance
Shipping
Marketing
Some well known…Expert Systems
PUFF:
Medical system
for diagnosis of respiratory
conditions
PROSPECTOR:
Used by geologists to
identify sites for drilling or
mining
Contd…
MYCIN:
Medical system for diagnosing blood
disorders. First used in 1979
DESIGN ADVISOR:
Gives advice to designers of
processor chips
Contd…
DENDRAL: Used to identify the
structure of chemical compounds.
First used in 1965
LITHIAN: Gives advice to
archaeologists examining
stone tools
Expert System development tool
Expert system shell
• Collection of software packages & tools to design,
develop, implement, and maintain expert systems
• Some Examples….EMYCIN, EXPERT, META-
DENDRAL, OPS5, ROSIE, CRYSTAL, GOLDWORKS
II.
Main Components & Functions
knowledge base
contains essential information about the problem
domain.
Stores all relevant information, data, rules, cases, and
relationships used by the expert system
Is often represented as facts and rules
inference engine
mechanism to derive new knowledge from the
knowledge base and the information provided by the
user
often based on the use of rules
Seeks information and relationships from the
knowledge base and provides answers, predictions, and
suggestions in the way a human expert would
user interface
interaction with end users
development and maintenance of the knowledge base
[In some systems there is a separate Expert Interface
Component]
For fact and query insertion
For Solution display.
Additional components with
Inference Engine
Explanation Facility
provides justification of solution to user
(reasoning chain)
Knowledge Acquisition Facility
helps to integrate new knowledge;
Working Memory [also called black board]
stores initial facts and generated facts derived by
inference engine;
Rule-based reasoning
One can often represent the expertise that someone
uses to do an expert task, as rules.
A rule means a structure which has an if component
and a then component.
This is called a rule-based system (production
system)
Rule-based systems
A rule-based system represents knowledge using a set of
rules that can be used to deduce new facts from known facts.
The rules express what is true if specific conditions are met.
A rule-based database is a set of if… then… statements in the
form
in which A is called the antecedent and B is called the
consequent. Note that in a rule-based system, each rule is
handled independently without any connection to other rules.
18.18
Inferences in Rule-based Systems
In rule-based Expert System Domain knowledge is
represented as IF THEN rules.
Data are facts about the current situation.
Terminology
A rule as described above is often referred to as a
production rule.
A set of production rules, together with software that
can reason with them, is known as a production
system.
In a production system, the rules are stored together,
in an area called the rulebase.
If a production system chooses a particular rule,
because the conditions match the current state of
affairs, and puts the conclusions into effect, this is
known as firing the rule.
Terminology
There are several different terms for the statements
that come after the word if, and those that come after
the word then.
The statements after if may be called the conditions, those after
then may be called the conclusions.
The statements after if may be called the premises, those after
then may be called the actions.
The statements after if may be called the antecedents, those after
then may be called the consequents.
More examples...Rule-based reasoning: rules
if - the leaves are dry, brittle and discoloured
then - the plant has been attacked by red spider mite
if - the customer closes the account
then - delete the customer from the database
Facts, Rules, Pattern Matching
Inference Cycle begins with an initial set of facts and
in an inference process generate new facts until a goal
state is reached.
Facts are entered into the Working Memory (WM).
The conditions of each rule are matched (Recognize
and act cycle) to these facts Pattern Matching (e.g.
Rete Algorithm)
Rules whose conditions are satisfied are activated and
entered on the agenda.
The pattern matching algorithm determines, in which
sequence rules are being activated, i.e. placed on the
agenda.
Conflict Resolution
The set of activated rules on the agenda is called the
Conflict Set.
Choosing which of the activated rules to fire next is
known as Conflict Resolution.
A simple strategy is to select rules according to the
order, in which they are put on the agenda. CLIPS,
for example, uses a stack (last-in first-out).
[Implicit Control]
There are different types of Conflict Resolution
Strategies.
Conflict Resolution Strategies
Refractoriness
Once a rule is fired, it isn't used again on the same data
Specificity:
Choose a rule with the most conditions or the most
specific conditions ahead of a more general rule
(prefer most specific knowledge instead of general
knowledge)
Recency:
Fire a rule first that is activated by a fact just added
to Working Memory, i.e. fire most recently activated
rule first ( focus on one line of reasoning, with all
related facts and rules)