0% found this document useful (0 votes)
17 views

Module 12

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views

Module 12

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

Module 12: Expert Systems

5.1 Expert Systems (ES):

● Expert systems are knowledge based programs which provide expert


quality solutions to the problems in specific domain of applications.

● The core components of expert system are

– knowledge base and

– navigational capability (inference engine)

● Generally its knowledge is extracted from human experts in the domain


of application by knowledge Engineer.

– Often based on useful thumb rules and experience rather than


absolute certainties.

● A process of gathering knowledge from domain expert and codifying it


according to the formalism is called knowledge engineering.

5.2 Phases in building Expert System

● There are different interdependent and overlapping phases in building an


expert system as follows:

● Identification Phase:

– Knowledge engineer finds out important features of the problem


with the help of domain expert (human).

– He tries to determine the type and scope of the problem, the kind
of resources required, goal and objective of the ES.

● Conceptualization Phase:

– In this phase, knowledge engineer and domain expert decide the


concepts, relations and control mechanism needed to describe a
problem solving.
● Formalization Phase:

– It involves expressing the key concepts and relations in some


framework supported by ES building tools.

– Formalized knowledge consists of data structures, inference rules,


control strategies and languages for implementation.

● Implementation Phase:

– During this phase, formalized knowledge is converted to working


computer program initially called prototype of the whole system.

● Testing Phase:

– It involves evaluating the performance and utility of prototype systems


and revising it if need be. Domain expert evaluates the prototype
system and his feedback help knowledge engineer to revise it.

5.3. Expert System Architecture

Expert System

Inference Engine
Special Interfaces
Inference & Control

Human Case History


Expert Knowledge Acquisition
& Learning Module
Knowledge Base

Static database
User User Interface

Dynamic database
(working memory)

Explanation Module

Fig: Architecture of Expert System


Knowledge Base (KB)

• KB consists of knowledge about problem domain in the form of static and


dynamic databases.

• Static knowledge consists of

– rules and facts which is complied as a part of the system and does
not change during execution of the system.

• Dynamic knowledge consists of facts related to a particular consultation


of the system.

– At the beginning of the consultation, the dynamic knowledge base


often called working memory is empty.

– As a consultation progresses, dynamic knowledge base grows and


is used along with static knowledge in decision making.

Working memory is deleted at the end of consultation of the system

Inference Engine

• It consists of inference mechanism and control strategy.

• Inference means search through knowledge base and derive new knowledge.

• It involve formal reasoning involving matching and unification similar to


the one performed by human expert to solve problems in a specific area
of knowledge.

• Inference operates by using modus ponen rule.

• Control strategy determines the order in which rules are applied.

• There are mainly two types of control mechanism viz., forward chaining
and backward chaining.

Knowledge Acquisition

● Knowledge acquisition module allows system to acquire knowledge about the


problem domain.

● Sources of Knowledge for ES


– text books, reports, case studies,

– empirical data and

– domain expert experience.

● Updation of Knowledge can be done using knowledge acquisition module


of the system.

– insertion,

– deletion and

– updation of existing knowledge

Case History

● Case History stores the file created by inference engine using the
dynamic database created at the time of consultation.

● Useful for learning module to enrich its knowledge base.

● Different cases with solutions are stored in Case Base system.

● These cases are used for solving problem using Case Base Reasoning
(CBR).

Explanation module

● Most expert systems have explanation facilities that allow the user to ask
the system why it asked some question, and how it reached to conclusion.

● It contains 'How' and 'Why' modules attached to it.

– The sub-module ‘How’ tells the user about the process through w

– hich system has reached to a particular solution

– ‘Why' sub-module tells that why is that particular solution offered.

● It explains user about the reasoning behind any particular problem


solution.

● Questions are answered by referring to the system goals, the rules being used,
and any existing problem data.
Explanation Modules Responses

User Why module


System Do you have running nose?
User Yes.
System I am trying to prove that you have cold. Do you have headache?
User Yes
System Do you have sore throat?
User No
System Then you do not have cold. Do you have fever?
User Yes
System Now I am looking at the possibility of measles. Do you have cough?
User Yes
System I can infer measles using rule “If symptoms are fever, cough,
running_nose, then patient has measles” measles is concluded.
User How Module
System Since you have fever, running_nose and cough and there is a rule “If
symptoms are fever, cough, running_nose, then patient has measles”.
So measles is concluded for you.

User Interfaces

● Allows user to communicate with system in interactive mode and helps


system to create working knowledge for the problem to be solved.

Dialogue Module (User Interface)

System Do you have fever?


User Yes
System Do you have bad throat?
User No
System Do you have cough?
User Yes
System Are you suffering from running nose?
User Yes
System Are you suffering from headache?
User No
Special interfaces

● It may be used for specialized activities such as handling uncertainty in


knowledge.

● This is a major area of expert systems research that involves methods for
reasoning with uncertain data and uncertain knowledge.
● Knowledge is generally incomplete and uncertain.

● To deal with uncertain knowledge, a rule may have associated with it a


confidence factor or a weight.

● The set of methods for using uncertain knowledge in combination with


uncertain data in the reasoning process is called reasoning with
uncertainty.

5.4 Rule Based Expert Systems

● A rule based expert system is one in which knowledge base is in the form
of rules and facts.

– Knowledge in the form of rules and facts is most popular way in


designing expert systems.

● It is also called production system.

● Example: Suppose doctor gives a rule for measles as follows:

"If symptoms are fever, cough, running_nose, rash and conjunctivitis


then patient probably has measles".

● Prolog is most suitable for implementing such systems.

hypothesis(measles) :- symptom(fever), symptom(cough),

symptom(running_nose),symptom(conjunctivitis),
symptom(rash).

Simple Medical diagnostic system with dynamic databases:

● The system starts with consultation predicate, that initiates dialog with
user to get information about various symptoms.

● Positive and negative symptoms are recorded in dynamic database and


'hypothesis(Disease)' is satisfied based on stored facts about symptoms.

● If the hypothesis goal is satisfied then the disease is displayed otherwise


display 'sorry not able to diagnose'.

● Finally in both the situations, symptom database for a particular user is


cleared.

Query:?-consultation.
Medical Consultation System

consultation :- writeln(‘Welcome to MC System’),


writeln(‘Input your name),
readln(Name),

hypothesis(Dis), !,

writeln(Name, ‘probably has’, Dis),


clear_consult_facts.

consultation :- writeln(‘Sorry, not able to diagnose’),


clear_consult_facts

hypothesis(flu) :- symptom(fever),
symptom(headache),

symptom(body_ache),
symptom(sore_throat),
symptom(cough),
symptom(chills),

symptom(running_nose),
symptom(conjunctivitis).

symptom(fever) :- positive_ symp(‘Do you have


fever(y/n) ?’, fever).

symptom(cough) :- positive_ symp(‘Do you have


cough (y/n) ?’, cough).

symptom(chills) :- positive_ symp(‘Do you have


chills (y/n) ?’, chills).

positive_ symp(_, X) :- positive(X), !.

positive_ symp(Q, X) :- not(negative(X)),


query(Q, X, R), R = ‘y’.

query(Q, X, R) :- writeln(Q), readln(R),


store(X, R).

store(X, ‘y’) :- asserta(positive(X)).

store(X, ‘n’) :- asserta(negative(X)).


clear_consult_facts :- retractall(positive(_)).

clear_consult_facts :- retractall(negative(_)).

Applications of Expert System


o In designing and manufacturing domain
It can be broadly used for designing and manufacturing physical devices such as camera
lenses and automobiles.
o In the knowledge domain
These systems are primarily used for publishing the relevant knowledge to the users. The
two popular ES used for this domain is an advisor and a tax advisor.
o In the finance domain
In the finance industries, it is used to detect any type of possible fraud, suspicious activity,
and advise bankers that if they should provide loans for business or not.
o In the diagnosis and troubleshooting of devices
In medical diagnosis, the ES system is used, and it was the first area where these systems
were used.
o Planning and Scheduling
The expert systems can also be used for planning and scheduling some particular tasks for
achieving the goal of that task.

Traditional System Vs Expert System


The traditional system solves common numerical problems. while
expert system is fixed the problem in a relatively limited area.
Traditional system :

• The traditional system solves common numerical problems.

• It is a sequential program that combines information and processing.

• A well-tested program will never make a mistake.

• There is no explanation given for the output.

Expert system :

• It fixes the problem in a relatively limited area.

• The knowledge base may or may not be separated from the processing.

• It is possible that the well-tested expert system will make blunders.

• In most cases, an explanation is given.

You might also like