0% found this document useful (0 votes)
20 views67 pages

CH 7 Expert System

The document provides an overview of expert systems, defining them as computer programs that emulate human expertise to solve complex problems using inference methods. It covers the history, architecture, knowledge representation, and reasoning mechanisms of expert systems, including forward and backward chaining. Key components such as the knowledge base, inference engine, and user interface are discussed, along with notable examples and applications of expert systems in various fields.

Uploaded by

daemonncs
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views67 pages

CH 7 Expert System

The document provides an overview of expert systems, defining them as computer programs that emulate human expertise to solve complex problems using inference methods. It covers the history, architecture, knowledge representation, and reasoning mechanisms of expert systems, including forward and backward chaining. Key components such as the knowledge base, inference engine, and user interface are discussed, along with notable examples and applications of expert systems in various fields.

Uploaded by

daemonncs
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 67

7.

Expert System
Artificial Intelligence

Dr. Udaya Raj Dhungana


Assist. Professor
Pokhara University, Nepal
Guest Faculty
Hochschule Darmstadt University of Applied Sciences, Germany
E-mail: [email protected] and [email protected]

1
Overview
7.1. Definition and History of Expert System
7.2. Architecture of Expert Systems
7.3. Knowledge Representation in expert system
7.3.1. Logic based representation
7.3.2. Rule-based system
7.3.3. Semantic networks
7.3.4. Ontology-based Systems
7.3.5. Frame-based Systems
7.4. Inference Mechanisms
7.4.1. Forward Chaining
7.4.2. Backward Chaining
7.5. Knowledge Acquisition and Learning
7.6. Applications of Expert Systems

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 2


Expert System- Definition
Edward Feigenbaum

“An intelligent computer


program that uses
knowledge and inference
procedures to solve
Father of Expert systems problems that are
difficult enough to
Born in Weehawken, NJ in 1936
require significant human
BS and PhD from Carnegie Mellon University
(1956 and 1960) expertise for their
Founding member of Stanford CS department
TURING AWARD 1994
solutions.”
Parker Peelen CSCE-221H Spring 2014

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 3


Expert System- Definition
Keith Darlington “An expert system is a system that
employs human knowledge
captured in a computer to solve
problems that ordinarily require
human expertise.”

“An expert system is a program


that attempts to mimic human
expertise by applying inference
methods to a specific body of
knowledge.”
Efraim Turban

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 4


Expert System- Definition
• An expert system is a computer program/system that emulates the
decision-making ability of a human expert to solve complex problems
by applying inference methods to a body of human knowledge
captured in a computer.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 5


Expert System- Definition
• Expert systems mimics the human expertise in a specific domain.
• Historically Expert Systems grew with AI, and can be regarded as a
branch of AI.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 6


Expert System

• A Symbolics 3640 Lisp machine: an early


(1984) platform for expert systems

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 7


History of Expert Systems

Pioneer work
Herbert Simon, Carnegie Mellon
Logic Theorist: proved theorems using
1955 Allen Newell
propositional logic
Marvin Minsky MIT
1960 John McCarthy Dartmouth LISP
Claude Shannon Bell Labs
1960 DENDRAL Feigenbaum & Identify chemical constituents
Buchanan (Stanford)
1967 ELIZA at MIT by Joseph an early natural language processing
Weizenbaum. computer program

• The term expert system is used in a seminal paper by Alan Turing in


1937 related to a study in AI.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 8


History of Expert Systems

Pioneer work
1970 MYCIN Stanford diagnosis of infectious
diseases
1970 MACSYMA MIT Math expert system

1970 HEARSAY Carnegie Mellon Speach recognition

1972 PROLOG By Alain Colmerauer a declarative programming


language: the program is a set of
(at Aix-Marseille
facts and rules, which define
University) relations. It is used for theorem
proving, expert systems etc
1977 PROSPECTOR Stanford Research Inst Mineral diagnosis
Duda, Hart, Barnett

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 9


History of Expert Systems
Pioneer work
1981 XCON (eXpert John McDermott at Automated the configuration of computer
CONfigurer) Digital Equipment systems, significantly improving
Corporation (USA) operational efficiency.
1986 CLIPS Johnson Space Center, A tool for building rule-based expert
USA systems, widely used in various
industries.
1990s Hybrid Systems Integration of rule-based systems with
machine learning, neural networks, and
fuzzy logic.

2011 IBM Watson IBM Research A hybrid expert system combining rule-
based reasoning, NLP, and machine
learning for decision-making.

2015 AlphaGo DeepMind (Google) Combines rule-based reasoning with


deep learning to master the game of Go,
outperforming human champions.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 10


History of Expert Systems
Pioneer work
2017 SAP Leonardo SAP, Germany An expert system for businesses integrating IoT,
machine learning, and AI to optimize operations and
decision-making.
2018 Tesla Autopilot Tesla An advanced driver-assistance system (ADAS)
combining AI, sensors, and rule-based systems for
autonomous driving
2020 AlphaFold DeepMind Revolutionized biology by predicting 3D protein
(Google) structures using AI and expert knowledge, aiding
drug discovery.

2022 PathAI PathAI An AI-powered expert system for assisting


pathologists in analyzing medical images with high
precision.

2022 ChatGPT OpenAI A conversational AI system trained on a vast


dataset, capable of answering questions, drafting
content, and simulating expert reasoning.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 11


Architecture of Expert Systems
• Structure of Expert System: An ES will normally have two aspects:
• A development environment:
• is used by the system builder to modify the system
• A consultation environment:
• is used by the non-expert to obtain knowledge or advice
• Expert System has the following components:
• Knowledge acquisition subsystem
• Knowledge base
• Inference engine
• User interface
• Explanation subsystem

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 12


Architecture of Expert Systems

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 13


Architecture of Expert Systems
1. User interface
• The communication layer between the user and the expert system. It
provides interaction with end users
• development and maintenance of the knowledge base
2. Knowledge base
• The core repository of domain-specific knowledge, facts, and rules.
• It contains essential information about the problem domain: often represented as
facts and rules
• Contains:
• Factual Knowledge (Information about the domain: e.g., diseases, symptoms,
and treatments in a medical expert system).
• Heuristic Knowledge (Rules and strategies derived from expert insights): e.g.,
"If fever > 101°F and sore throat, then suspect flu").
• Provides the foundation for reasoning and decision-making.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 14


Architecture of Expert Systems
1. Inference engine
• mechanism to derive new knowledge from the knowledge base and the
information provided by the user
• The reasoning mechanism that applies logical techniques to the knowledge
base to solve problems or answer queries.
• often based on the use of rules
• Reasoning:
• Forward Chaining: Starts with known facts and applies rules to infer new
conclusions
• Backward Chaining: Starts with a goal or hypothesis and works backward to
find supporting facts
• Simulates the problem-solving process of a human expert.
• Generates conclusions or recommendations based on the input data and rules

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 15


Architecture of Expert Systems
1. knowledge acquisition
• A subsystem for acquiring, updating, and refining the knowledge base.
• transfer of knowledge from human experts to computers
• sometimes knowledge can be acquired directly from the environment
through machine learning, neural networks etc

2. Explanation
• A part of the expert system that allows a user or decision maker to
understand how the expert system arrived at certain conclusions or
results
• Explains the reasoning process or logic behind the system's conclusions
or recommendations.
• Builds trust by showing users how decisions were made.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 16


Participants in Expert Systems
Expert System

Domain expert Knowledge engineer Knowledge User


The individual or Someone trained or The individual or
group whose experienced in the group who uses
expertise and design, development, and benefits from
knowledge is implementation, and the expert system
captured for use in maintenance of an
an expert system expert system

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 17


Knowledge Representation in Expert Systems

7.3.1. Logic based representation


7.3.2. Rule-based system
7.3.3. Semantic networks
7.3.4. Ontology-based Systems
7.3.5. Frame-based Systems

(Studied in Chapter 4)

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 18


Reasoning
• Mathematical reasoning involves
• gathering evidence,
• building arguments, and
• drawing logical conclusions about these various ideas and
their relationships.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 19


Reasoning
• Reasoning is the capacity of consciously applying logic by drawing
conclusions from new or existing information, with the aim of
seeking the truth.
• Types of reasoning:
• deductive reasoning and
• inductive reasoning.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 20


Reasoning

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 21


Reasoning

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 22


Reasoning
• Inductive reasoning:
• Induction is a form of inference producing propositions about
unobserved objects or types, either specifically or generally,
based on previous observation.
• the truth of the premises does not guarantee the truth of the
conclusion.
• A classic example of inductive reasoning comes from the
empiricist David Hume:

Premise: The sun has risen in the east every morning up until now.
Conclusion: The sun will also rise in the east tomorrow.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 23


Reasoning
• To reason is to draw inferences.
• An inference is the process of reasoning from what we think is true
to what else is true.
• Reason is how we form inferences about the world

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 24


Inference
• Inference is a conclusion reached on
the basis of the facts and evidence.
• To reach to a conclusion is the
inference process.
• Application: Inference Engine

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 25


Inference Engine
• An inference engine is a component of the system that applies
logical rules to the knowledge base to deduce new information.
• The first inference engines were components of expert systems.
• The typical expert system consisted of a knowledge base and an
inference engine.
• The knowledge base stored facts about the world.
• The inference engine applies logical rules to the knowledge
base and deduced new knowledge.
• This process would iterate as each new fact in the knowledge
base could trigger additional rules in the inference engine.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 26


Inference Engine
• The logic that an inference engine uses is typically represented as
IF-THEN rules.

• The general format of such rules is:

IF <logical expression> THEN <logical expression>

(what logicians call modus ponens)

• A simple example of modus ponens "If you are human then you are
mortal”:

Human(x) → Mortal (x)

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 27


Inference Engine
• To recommend a solution, inference engines work primarily in one
of two modes:
• Forward chaining
• It starts with the known facts and asserts new facts.
• Backward chaining
• It starts with goals, and works backward to determine what
facts must be asserted so that the goals can be achieved
• Both backward and forward chaining reasoning progress according
to the modus ponens form of deductive reasoning.
• In other words, X implies Y is true. X is true, and therefore Y
must be true.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 28


Inference Mechanism
• The inference mechanism in an expert system is the reasoning engine that applies logic
to the knowledge base to deduce new facts, solve problems, or make decisions.
• It is one of the most critical components of an expert system, simulating how a human
expert reasons.
• Inference Process:
• Retrieves rules and facts stored in the knowledge base. Rules are often expressed
in "if-then" format, such as: IF Condition THEN Action
• Applies rules from the knowledge base to facts
• Use the control strategy to determines the order in which rules are evaluated and
applied.
• Draw a conclusion
• Types of inference mechanism:
• Forward Chaining and
• Backward Chaining

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 29


Forward Chaining
• Forward chaining (data-driven)
– reasoning from facts to the conclusion
– Start with known facts or data
– Apply rules from the knowledge base to derive new facts.
– Continue the process until a goal or conclusion is reached, or no more
rules can be applied.
– Suitable for problems where the initial data is well-defined, and the goal
is unknown.
– often used for real-time expert systems- Diagnosis systems, monitoring
systems.
– examples: CLIPS, OPS5,
– The XCON (R1) - Uses forward chaining to configure computer systems

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 30


Forward Chaining
• It is a strategy of an expert system to answer the
question, “What can happen next?”
• Here, the Inference 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.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 31


Forward Chaining

Forward chaining reasoning methods start with available data and


utilize rules to infer new data. In short, forward chaining starts with
known facts and uses them to create new facts.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 32


Backward Chaining
• Backward chaining (query-driven)
– Start with a goal or hypothesis (query)
– Work backward to find supporting facts or rules that prove or
disprove the hypothesis
– Repeat until the hypothesis is confirmed or refuted.
– Suitable for problems where the goal is defined, and the system
needs to verify it.
– often used in diagnostic and consultation systems: eg Medical
diagnosis, troubleshooting systems.
– examples: EMYCIN
– MYCIN- uses backward chaining to diagnose bacterial infections.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 33


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
Inference 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.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 34


Backward Chaining

Backward chaining/reasoning methods begin with a list of hypotheses


and work backwards to see if data, once plugged into rules support
these hypotheses. In short, backward chaining highlights what facts
must be true to support a hypothesis.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 35


Knowledge Acquisition
• Knowledge acquisition is the process of extracting and organizing knowledge from multiple
sources, typically human experts, with the purpose of modeling a decision maker's problem-
solving expertise
• Knowledge acquisition requires:
• Knowledge Source:
• represents the types and instances of sources that are used for acquiring knowledge
from the domain of discourse.
• These types may include domain experts, textbooks, technical articles, journals etc
• Knowledge Elicitation Techniques
• is the means how to elicit knowledge from these sources
• Its objective is to identify and capture the relevant knowledge.
• These may include text analysis, structured interviews or case studies
• Knowledge Representation
• represent the acquired knowledge in the knowledge base.
• The expert system uses the knowledge acquired to solve problems or make decisions.
• Knowledge acquisition = knowledge elicitation + Knowledge representation

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 36


Knowledge Acquisition
• Knowledge acquisition therefore refers to the process of extracting,
structuring, and organizing domain knowledge from domain experts into the
expert system's knowledge base.
• A knowledge engineer is an expert in AI language and knowledge representation
who investigates a particular problem domain, determines important concepts,
and creates correct and efficient representations of the objects and relations in
the domain.
• Capturing domain knowledge of a problem domain is the first step in building an
expert system.
• In general, the knowledge acquisition process through a knowledge engineer can
be divided into four phases:
• Planning
• Knowledge Extraction
• Knowledge Analysis
• Knowledge Verification

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 37


Knowledge Acquisition Process
• Planning
• The goal is to understand the problem domain, identify domain experts, analyze
various knowledge acquisition techniques, and design proper procedures.
• Knowledge Extraction
• The goal is to extract knowledge from experts by applying various knowledge
acquisition techniques.
• Knowledge Analysis
• The outputs from the knowledge extraction phase are analyzed and represented in
formal forms, including facts, heuristic rules, frames, semantic networks, neural
networks, and fuzzy logic sets etc.
• These representations are used in implementing a prototype expert
• Knowledge Verification
• The prototype expert system containing the formal representation of the heuristics
and concepts is verified by the experts.
• If the knowledge base is incomplete or insufficient to solve the problem, alternative
knowledge acquisition techniques may be applied, and additional knowledge
acquisition process may be conducted.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 38


Knowledge Acquisition Process

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 39


Knowledge Acquisition
• Acquiring an expert's knowledge typically involves interactions between the
domain expert and the knowledge engineer (KE) who is responsible for the
knowledge acquisition process.
• Knowledge Engineer
• The knowledge engineer is not an domain
expert.
• The engineer’s first task is therefore to
become familiar with the domain through
talking to domain expert and reading
relevant background material.
• Once the engineer has a basic level of
understanding of domain he or she can
begin knowledge extraction.
• It is the job of the knowledge engineer to
spot gaps in the knowledge which is being
offered and fill them.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 40


Knowledge Acquisition
• Knowledge acquisition and learning are crucial processes for building
and improving expert systems.
• Knowledge Acquisition Process:
• Knowledge elicitation
• where the knowledge is
extracted from the
expert
• Knowledge representation
• where the knowledge is
represented and put into
the expert system.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 41


Knowledge Elicitation
• Knowledge Elicitation (KE) methods are used to obtain the
information about a domain required to solve problems of that
domain.
• These methods can be classified in many ways.
• KR Method by Interaction Type
• KE Methods by Knowledge Type Obtained

http://web.cs.wpi.edu/~jburge/thesis/kematrix.html#_Toc417957386
Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 42
Knowledge Elicitation
• KE Methods by Interaction Type
1. Interviewing
2. Case Study
3. Protocols
4. Critiquing
5. Role Playing
6. Simulation
7. Prototyping
8. Teachback

http://web.cs.wpi.edu/~jburge/thesis/kematrix.html#_Toc417957386
Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 43
Knowledge Elicitation
• Interviewing:
• Interviewing consists of asking the domain expert questions about
the domain of interest and how they perform their tasks.
• Interviews can be
• unstructured (open and exploratory; no fixed questions)
• semi-structured
• structured (involve the use of questionnaires to ensure
focus)
• Case study:
• In Case Study methods different examples of problems/tasks
within a domain are discussed.

http://web.cs.wpi.edu/~jburge/thesis/kematrix.html#_Toc417957386
Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 44
Knowledge Elicitation
• Protocols:
• Protocol analysis involves asking the expert to perform a task while
"thinking aloud."
• The intent is to capture both the actions performed and the mental
process used to determine these actions.
• Critiquing:
• In Critiquing, an approach to the problem/task is evaluated by the expert.
• This is used to determine the validity of results of previous KE sessions.
• Role Playing:
• In Role Playing, the expert adapts a role and acts out a scenario where
their knowledge is used
• The intent is that by viewing a situation from a different perspective,
information will be revealed that was not discussed when the expert was
asked directly.
http://web.cs.wpi.edu/~jburge/thesis/kematrix.html#_Toc417957386
Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 45
Knowledge Elicitation
• Simulation:
• In Simulation methods, the task is simulated using a computer
system or other means.
• This is used when it is not possible to actually perform the task.
• Prototyping:
• The expert is asked to evaluate a prototype of the proposed
system being developed.
• This is usually done iteratively as the system is refined.
• Teachback:
• In Teachback, the knowledge engineer attempts to teach the
information back to the expert, who then provides corrections
and fills in gaps.
http://web.cs.wpi.edu/~jburge/thesis/kematrix.html#_Toc417957386
Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 46
Knowledge Elicitation
• Observations:
• The knowledge engineer observes the expert performing a task.
• This prevents the knowledge engineer from inadvertently
interfering in the process, but does not provide any insight into
why decisions are made.
• Goal related:
• In Goal Related methods, focused discussion techniques are used
to elicit information about goals and subgoals. .
• List related:
• The expert is asked to provide lists of information, usually
decisions.

http://web.cs.wpi.edu/~jburge/thesis/kematrix.html#_Toc417957386
Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 47
Knowledge Elicitation
• Construct Elicitation:
• This method is used to obtain information about how the expert
discriminates between entities in the problem domain.
• e.g. Repertory Grid Analysis: the domain expert is presented with
a list of entities and is asked to describe the similarities and
differences between them
• These similarities and differences are used to determine the
important attributes of the entities.
• Sorting:
• The domain entities are sorted to determine how the expert
classifies their knowledge. (Classification)

http://web.cs.wpi.edu/~jburge/thesis/kematrix.html#_Toc417957386
Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 48
Knowledge Elicitation
• Laddering:
• a hierarchical structure of the domain is formed by asking
questions designed to move up, down, and across the hierarchy.
• Document Analysis:
• The Document analysis involves gathering information from
existing documentation. May or may not involve interaction with
a human expert to confirm or add to this information.

http://web.cs.wpi.edu/~jburge/thesis/kematrix.html#_Toc417957386
Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 49
Knowledge Elicitation
• KE Methods by Knowledge Type Obtained
• Procedures
• Problem Solving Strategy
• Goals/Subgoals
• Classification
• Dependencies/Relationships
• Evaluation

http://web.cs.wpi.edu/~jburge/thesis/kematrix.html#_Toc417957386
Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 50
Knowledge Elicitation
• Procedures:
• These are methods that can be used to determine the steps
followed to complete a task.
• Problem Solving Strategy:
• These methods attempt to determine how the expert makes their
decisions
• Goals/Subgoals:
• These are methods that are concerned with extracting the goals
and subgoals for performing the task.
• These methods are listed separately from procedures since
ordering is not necessarily provided.

http://web.cs.wpi.edu/~jburge/thesis/kematrix.html#_Toc417957386
Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 51
Knowledge Elicitation
• Classification:
• These methods are used to classify entities within a domain.
• Dependencies/Relationships:
• relationships between domain entities are obtained.
• Evaluation:
• evaluation of prototypes or other types of KE session results are
done

http://web.cs.wpi.edu/~jburge/thesis/kematrix.html#_Toc417957386
Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 52
Knowledge Acquisition
• Knowledge acquisition is a difficult and time-consuming task that often
becomes the bottleneck in expert system development.
• You just studies various manual knowledge elicitation techniques such
as interviewing, case studies etc.
• Various techniques have been developed to automate the process by
using domain tailored environments containing well-defined domain
knowledge and specific problem-solving methods.
• Examples:
• OPAL is a program that expedites knowledge elicitation for the
expert system ONCOCIN that constructs treatment plans for
cancer patients.
• OPAL uses a model of the cancer domain to acquire knowledge
directly from an expert.
• Other Examples are PROTEGE, PROTEGE-II, SALT system etc.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 53


Knowledge Acquisition
• Knowledge acquisition is a difficult and time-consuming task that often
becomes the bottleneck in expert system development.
• You just studies various manual knowledge elicitation techniques such
as interviewing, case studies etc.
• Various techniques have been developed to automate the process by
using domain tailored environments containing well-defined domain
knowledge and specific problem-solving methods.
• Examples:
• OPAL is a program that expedites knowledge elicitation for the
expert system ONCOCIN that constructs treatment plans for
cancer patients.
• OPAL uses a model of the cancer domain to acquire knowledge
directly from an expert.
• Other Examples are PROTEGE, PROTEGE-II, SALT system etc.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 54


Learning in Expert Systems
• Learning in expert systems involves enhancing the knowledge base
over time, enabling the system to adapt and improve its decision-
making capabilities.
• Types of Learning in Expert Systems:
• Machine Learning
• Rule-based learning
• Case-based Learning
• Incremental Learning

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 55


Learning in Expert Systems
• Machine Learning
• Supervised Learning: Learning from labeled data.
• Unsupervised Learning: Discovering patterns in unlabeled data.
• Reinforcement Learning: Learning through trial and error.
• Rule-based learning
• The system learns new rules based on observed facts or expert input.
• Example: Generalizing from specific cases to create new rules.
• Case-based Learning
• The system stores and retrieves past cases to solve new problems.
• Example: Diagnosing diseases based on similarities to previous cases.
• Incremental Learning
• The system refines its knowledge base by adding new data or rules
without retraining from scratch.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 56


Learning in Expert Systems- Examples
• MYCIN:
• Knowledge acquisition was done manually through interviews with medical
experts.
• Knowledge was encoded into rule-based logic.
• IBM Watson:
• Acquires knowledge by analyzing massive datasets, medical literature, and expert
inputs.
• Uses natural language processing and machine learning to enhance its knowledge
base dynamically.
• AlphaGo:
• Learned to play Go by analyzing millions of game records (supervised learning) and
through self-play (reinforcement learning).
• PathAI:
• Acquires knowledge by analyzing labeled medical images provided by pathologists.
• Continuously improves its accuracy through feedback and additional training data.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 57


Early Expert Systems- ELIZA
• ELIZA
– http://psych.fullerton.edu/mbirnbaum/psych101/Eliza.htm

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 58


Early Expert Systems- ELIZA
– an early natural language processing computer program created
from 1964 to 1966 at the MIT Artificial Intelligence Laboratory by
Joseph Weizenbaum
– Created to demonstrate the superficiality of communication
between humans and machines
– Eliza simulated conversation by using a 'pattern matching' and
substitution methodology
– While ELIZA was capable of engaging in discourse, ELIZA could
not converse with true understanding
– However, many early users were convinced of ELIZA’s
intelligence and understanding

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 59


Early Expert Systems- ELIZA
– A Simple Expert System - Guessing Animal
/*classification rules*/ /*how to verify something */
start :- hypothesize(Animal),
write('I guess that the animal is: '), mammal :- verify(has_hair), !. verify(S) :-
write(Animal), mammal :- verify(gives_milk). (yes(S)
nl, carnivore :- verify(eats_meat), !.
undo. ->
carnivore :- verify(has_pointed_teeth), true ;
/*hypotheses to be tested */ verify(has_claws),
hypothesize(cheetah) :- cheetah, !. ( no(S)
hypothesize(tiger) :- tiger, !. verify(has_forward_eyes). ->
hypothesize(giraffe) :- giraffe, !. ungulate :- mammal, fail ;
hypothesize(zebra) :- zebra, !. verify(has_hooves), !.
hypothesize(unknown). /* no diagnosis */ ask(S) )).
ungulate :- mammal,
verify(chews_cud). /* verify(S) :-
/*animal identification */
cheetah :- mammal, ask(S). */
carnivore, /*how to ask question */
verify(has_tawny_color), ask(Question) :-
verify(has_dark_spots).
tiger :- mammal, write('Does the animal have the
carnivore, following attribute: '), /*undo all yes/no assertions*/
verify(has_tawny_color), write(Question),
verify(has_black_stripes). undo :- retract(yes(_)), fail.
giraffe :- ungulate, write('? '), undo :- retract(no(_)), fail.
verify(has_long_neck), read(Response), undo.
verify(has_long_legs). nl,
zebra :- ungulate,
verify(has_black_stripes). ((Response == yes ; Response ==
y)
->
asserta(yes(Question)) ;
asserta(no(Question)), fail).

:- dynamic(yes/1,no/1).

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 60


Early Expert Systems- ELIZA
– A Simple Expert System - Guessing Animal

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 61


Applications of Expert Systems
• Medical Diagnosis
• Assist doctors in diagnosing diseases, recommending treatments, and
predicting outcomes.
• MYCIN: Used for diagnosing bacterial infections and recommending
antibiotics.
• PathAI: Assists in pathology by analyzing medical images for cancer
detection.
• Engineering and Manufacturing
• Solve design, testing, and maintenance problems, and optimize
production processes.
• XCON (R1): Configures computer systems for manufacturing and
assembly.
• DENDRAL: Used for molecular structure analysis in chemical engineering.
• INTELLI: Expert systems for fault diagnosis in machinery and equipment.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 62


Applications of Expert Systems
• Business and Finance
• Aid in financial analysis, forecasting, portfolio management, and fraud
detection.
• Expert System for Portfolio Management: Evaluates and suggests
investment strategies.
• AMEX (American Express) Authorization System: Detects fraud and
processes transactions
• Customer Support and Help Desks
• Automate responses to customer inquiries and resolve technical issues.
• Intelligent Chatbots: Provide 24/7 customer service using knowledge
bases.
• Expert Diagnostic Tools: Help users troubleshoot software or hardware
problems.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 63


Applications of Expert Systems
• Agriculture
• Support crop management, pest control, and soil analysis.
• AgroAdvisor: Recommends fertilizers, irrigation schedules, and crop
rotation practices.
• Pest Management Systems: Diagnose pest infestations and suggest
treatments.
• Education and Training
• Provide personalized learning experiences and simulate expert
reasoning for students.
• Intelligent Tutoring Systems (ITS): Provide customized learning
paths based on student performance.
• AutoTutor: Simulates a human tutor to teach concepts in various
domains.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 64


Applications of Expert Systems
• Transportation
• Optimize logistics, improve traffic management, and support
autonomous vehicle systems.
• Traffic Management Systems: Monitor and control traffic flow in
real-time.
• Route Optimization Systems: Suggest efficient routes for logistics
and delivery.
• Aerospace and Defense
• Assist in mission planning, equipment diagnostics, and surveillance
• Pilot Decision Support Systems: Help pilots make informed
decisions during emergencies.
• Weapon System Diagnostics: Identify faults in military equipment.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 65


Applications of Expert Systems
• Gaming and Entertainment
• Create intelligent NPCs (Non-Player Characters) and provide
adaptive gameplay.
• Game AI Engines: Enhance player experiences by simulating human-
like decision-making.
• Virtual Reality Systems: Adapt environments based on user
interactions.
• Disaster Management
• Provide real-time decision support during emergencies and
disasters.
• Emergency Response Systems: Suggest evacuation routes and
resource allocation.
• Flood Prediction Systems: Forecast floods and minimize damage.

Dr. Udaya R. Dhungana, Pokhara University, Nepal. [email protected] 66


THANK YOU
End of Chapter

67

You might also like