Unit 3 Expert Systems and Applications
Unit 3 Expert Systems and Applications
1
Expert Systems
• Expert Systems solves problems that are normally solved by
human experts.
• An 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.
• To solve expert-level problems, expert systems will need
efficient access to a substantial domain knowledge base
which must be built as efficiently as possible
• They also need to exploit one or more reasoning mechanisms
to apply their knowledge to the problems they are given.
• They will also need to be able to explain, to the users who
rely on them, how they have reached their decisions.
2
Expert Systems
6
Knowledge Engineering
Domain rules /
Strategies
Queries Queries
Answers Answers
7
Knowledge Engineering
Knowledge Engineer :
― Close collaboration with Domain experts & end Users.
― Literature survey to acquire domain knowledge.
― Extract general rules from discussions with experts to ensure correctness.
― Translate the knowledge for easy use by inference engine
Domain Knowledge :
― Includes formal and experimental knowledge obtained by experts
experience.
Expert System :
― Close collaboration with Domain experts & end Users.
― Includes development of prototype, iterative testing and modifications of
prototype by both experts and users.
― The prototype is designed partially, if it works fine then the complete
solution is built.
8
Knowledge Representation
• The power of ES systems resides in the specific, high-
quality knowledge regarding the problem domain.
• Knowledge accumulation and confidence on knowledge is
most important criteria.
• Collection of domain knowledge is knowledge base and
general problem solving knowledge is called inference
engine, user interface.
• Knowledge is represented as production rules and are
called as rule based systems.
• Another form of knowledge representation is based on
concept of frames or semantic nets and are called as unit.
9
Architecture
Inference Engine
Special Interfaces
Inference & Control
Knowledge Base
User User interface
Static database
Dynamic database
Explanation Module (working memory)
10
Architecture
• User Interface
• Special Interface
• Explanation Module
• Knowledge Acquisition
• Inference Engine
• Case History
• Knowledge Base
11
Architecture – User Interface
• The user interface is the most crucial part of the Expert System
Software.
• Allows user to communicate with the system in an interactive
manner and helps the system to create the working knowledge.
• Specialized designed interface for capturing the knowledge
through the queries and displays the responses.
• UI checks and validates the correctness of the user’s response.
It can be in any form.
– Boolean (Yes /N0)
– Natural Language
– Fuzzy form
12
Architecture – Special Interface
• Knowledge is generally incomplete and uncertain.
• Special Interface may be used to perform specialized
activities that can handle uncertainty in knowledge.
• Involves methods for reasoning with uncertain data
and uncertain knowledge using confidence factor or
weight.
• Such methods are called reasoning with uncertainty.
• Fuzzy systems use fuzzy logic for reasoning with
uncertainty.
13
Architecture – Explanation Module
• Explanation module enables the user to query the
system about why a question is asked and how it
reached to some conclusion.
• How and Why Module.
• How tells user regarding the process through which
the system has reached to a particular solution.
• Why provides an insight into the underlying
knowledge structure.
• It is difficult to implement but these explanations are
quite useful at times.
14
Architecture – Knowledge Base
• Knowledge is in the form of static or dynamic database.
• Static consists of rules and facts that is compiled as a part of
the system and remains unchanged during execution.
• Dynamic consists of facts related to a particular consultation
of the system collected by asking various questions.
• It is empty at beginning and grows dynamically as the
consultation progress.
• This can be used in decision making along with static
knowledge.
15
Architecture – Inference Engine
• Use of efficient procedures and rules by the Inference Engine is
essential in deducting a correct, flawless solution.
• In case of knowledge-based ES, the Inference 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.
To recommend a solution, the Inference Engine uses the following strategies
― Forward Chaining ―Backward Chaining
16
Architecture – Case History
• Case history stores files created by inference
engine using dynamic database.
• It is used by learning module to enrich its
knowledge base.
• Different cases with solutions are stored in
Case Base system and these cases are used for
solving the problem using Case based
reasoning.
17
Architecture – Knowledge Base
• Knowledge in ES systems is obtained from many
sources
• Knowledge acquisition module allows the system to
acquire more knowledge regarding the problem
domain from experts.
• It is acquired through interaction Knowledge
engineer, domain experts and users.
• Knowledge acquisition module may have learning
module attached to it to employ various ML
techniques.
18
Expert Systems Versus Traditional Systems
Traditional System Expert System
20
Characteristics of Expert Systems
Key Characteristics:
Expertise : An ES system should exhibit expert performance, have high level of
skill and possess adequate robustness.
Symbolic reasoning : Knowledge in an ES is represented symbolically which can
be easily reformulated and reasoned.
Self knowledge: A system should be able to explain and examine its own
reasoning.
Learning capability : A system should learn from its mistakes and mature as it
grows incrementally.
Ability to provide training: capable of providing training by explaining the
reasoning process behind solving a particular problem using relevant knowledge.
Predictive modelling power: it can explain how new situations led to the change,
which helps users to evaluate the effect of new facts and understand their
relationship to the solution.
21
Evaluation of Expert Systems
ES consists of performance and utility evaluation.
22
Advantages and Disadvantages
of Expert Systems
Guidelines for evaluation of problem
Specialized knowledge problem: ES systems are required for
specialized domains that require highly specialized expertise which
is lost due to retirement of experts.
High payoff: High demand of similar expertise in large number at
different geographical locations.
Existence of cooperative experts: Experts are willing to help and
provide their expertise for successful development of system.
Justification of cost involved in developing ES: There must be a
realistic assessment of the costs benefits involved.
Type of Problem: The problems must be structured.
23
Advantages of Expert Systems
• It improves the decision quality
• Cuts the expense of consulting experts for problem-solving
• It provides fast and efficient solutions to problems in a narrow
area of specialization.
• It can gather scarce expertise and used it efficiently.
• Offers consistent answer for the repetitive problem
• Maintains a significant level of information
• Helps you to get fast and accurate answers
• A proper explanation of decision making
• Ability to solve complex and challenging issues
• Artificial Intelligence Expert Systems can steadily work without
getting emotional, tensed or fatigued.
24
Disadvantages of Expert Systems
25
Languages for ES Development
26
Application of Expert Systems
• Diagnosis
• Planning and scheduling
• Design and manufacturing
• Prediction
• Interpretation
• Financial decision making
• Process monitoring and control
• Instruction
• Debugging
• Knowledge publishing
• Other miscellaneous applications
27
List of Shells and Tools
• ACQUIRE – SDK which provides callable libraries
• Arity – Expert development package by Arity corporation
• ART – Automated reasoning tool.
• CLIPS- C lang integrated production system
• FLEX – Hybrid ES implemented in Prolog
• Gensym’s G2 – Graphical Oop for intelligent applications.
• GURU – Special too for inherent uncertainity.
• HUGIN SYSTEM – Expert system development kit
• Knowledge craft
• K-Vision
• MailBot
• TMYCIN
28