You are on page 1of 104

UNIT-IV

Understanding, NLP and


Expert System
Archana R. Shinde, ME Computer
Department of Computer Engineering
SSBT’s College of Engineering & Technology
Bambhori, Jalgaon
Syllabus Points
A. Understanding as a Constraint satisfaction: Waltz’s algorithm,
Constraint determination, Trihedral and Non trihedral figures labelling.
B. Natural Language Processing steps.
C. Learning techniques.
D. Introduction to Expert system, Architecture of Expert System, Expert
System Shell
Knowledge Acquisition in Expert System

Archana R. Shinde
Question ask in University Exam
Questions:

1.Write and Explain the waltz's algorithm.


2.Explain ATN (Augmented Transition Network).
3.Define Natural language processing. Explain it in detail.
4.Discuss Biological model of Neuron.

Archana R. Shinde
What is Understanding


To understand something is to transform it from one representation to
another to correspond to a set of available actions that could be
performed and where the mapping has been designed so that for each
event, an appropriate action will be performed.

For example if you say to airline database system “i need to go to New
York as soon as possible”, the system will have “understood” if it find
first availble palne to New York.if you say same thing to your
friend,who knows that your family lives in New York, she will have
“understood” if she realizes that there may be problem in your family
and you may need emotional support.

About understanding , the success or failure of an “understanding”
program can rarely be measured in an absolute sense but must be
measured with respect to a particular task to be performed.
Constraint
Determination/Satisfaction

Archana R. Shinde
Constraint Determination/
Satisfaction
Many of the real world problem demands the solution to
satisfy a set of algebraic or logical conditions, called
constraints.

The class of problem, whose search space is constrained by


a set of conditions, is generally referred to as constraint
satisfaction or Deterministic problem.

A constraint satisfaction problem (CSP) consists of “a set of


variables, a domain for each variable, and a set of
constraints”.

Archana R. Shinde
Constraint Determination/
Satisfaction
There are two important steps to use the constraint in problem
solving,
1.Analyze the problem domain to determine what the
constrains are,
2.Solve the problem by applying a constraint satisfaction
algorithm that effectively uses the constraint from step 1 to
control the search.

The aim is to choose a value for each variable so that the


resulting possible world satisfies the constraints; we want a
model of the constraints.

Archana R. Shinde
Constraint Determination/
Satisfaction
The multidimensional aspect of these problems, where each
variable can be seen as a separate dimension, makes them
difficult to solve but also provides structure that can be
exploited.

Given a CSP, there are a number of tasks that can be performed:


• Determine whether or not there is a model.
• Find a model.
• Find all of the models or explanation of the models.
• Count the number of models.
• Find the best model, given a measure of how good models are,
• Determine whether some statement holds in all models.`
Archana R. Shinde

Consider the drawing shown in Fig. 14.9 which is given as a input

Next step in the analysis process is to determine the objects described
the lines.

To do this, we need to identify types of lines and vertices present in the
object.for this we use figure labelling
Trihedral and Non trihedral
figures labelling

Archana R. Shinde
Figures Labelling
Figure labeling is the process of identification of edges and vertices of the
given objects.
There are Two types of the figures,
1.Trihedral and
2.Non-Trihedral.
1. Trihedral figure consist of Trihedral vertices. Trihedral vertex is the
vertex at which exactly three surface are meets.

2. Non-Trihedral figure consist at least one Non–Trihedral vertex.

Archana R. Shinde
Figures Labelling

Types of Edges:

1. An Obscuring Edge: A boundary between objects or between objects


and the background. It is denoted by Arrow.

2. A Concave Edge: An Edge between two faces that form an acute angle
(<90) when viewed from Outside the object. It is Denoted by the “–”
Sign.

3. A Convex Edge: An Edge between two faces that form an obtuse angle
(>90) when viewed from Outside the object. It is Denoted by the “+”
Sign.
Archana R. Shinde
Determining the Constraint

The problem we are trying to solve is how to recognize individual
objects in a figure

To do that, we intend to first label all the lines in the figures so that we
know which one correspond to boundries between objects.

For boundary lines, we also need to indicate a direction,telling which
side of line corresponds to the object and which to the background.

This produces a set of four labels that can be attached to a given line as:

Example of Line Labelling

For the trihedral figures we are considering, there are only four
configurations that describe all the possible vertices.these
configurations are shown in the following fig.
The eighteen physically possible Trihedral vertices
Waltz algorithm
Example

Consider simple drwaing shown in Fig. 14.18(a).we can begin by
labeling all the boundary edges, as shown in Fig 14.18(b).

Suppose we then begin labeling vertices at vertex 1.the only vertex
label that is consistent with known line labels is 13.

At vertex 2 , the only consistent label is 6.

At each of the remaining boundary vertices, there is also only one
labeling choice.these labelings are shown in parentheses in Fig.
14.18(c).

Now consider vertex 7. just looking at vertex 7 itselt, it would appear
that any of the five FORK labelings is possible.but from the only
labeling we found for vertex 2, we know that line between vertices 2
and 7 must be labeled +.using this fact, we can eliminate four of the
FORK labels.only label 8 is now possible

The complete labeling computed in shown in Fig. 14.18(d).

Thus by exploiting constraints on vertex labelings, we have correctly
identified vertex 7 as being formed by three convex edges.
Example
Natural Language Processing

Definition:
A system is called a natural language processing (NLP) system
when a subset of the input or output of the system is coded / written
in a natural language
And
the processing of the data is performed by algorithms for the
morpho-syntactic, semantic, and pragmatic analysis or generation of
natural language

Archana R. Shinde
Natural Language Processing


Natural Language Processing, usually shortened as NLP, is a branch of
artificial intelligence that deals with the interaction between computers
and humans using the natural language.


The ultimate objective of NLP is to read, decipher, understand, and
make sense of the human languages in a manner that is valuable.


Most NLP techniques rely on machine learning to derive meaning from
human languages.
Natural language Processing
Why then natural language ?
Computers speak their own language. This language is efficient,
economical, and exact. Why then would we want to “teach“ the
computer a natural language with all its ambiguities and difficulties?
 When you need to make a phonecall with someone in Japan, but
you don‘t speak Japanese (voice recognition, machine translation).
 When you want to evaluate millions of lines of text (text/data
mining)
 When you don‘t want to learn a database query language to get
data (textanalysis, textgeneration, machine translation).

Archana R. Shinde
Natural language Processing
When you don‘t want to learn a programming language to
program your computer (machine translation).
 When you busy with your hands and you still want to type
(voice type).
when travelling, when you are a slow typer (voice type)

Archana R. Shinde
Natural Language Processing steps.

Prosody: It deals with the rhythm of a language. In religious


ceremony and poetic competition, the importance of rhythm is
felt.
Unfortunately this type of analysis is difficult and is thus
ignored in most natural language understanding programs.

Phonology: It examines the sounds of the words that are


combined to form sentences in a language.

Archana R. Shinde
Natural Language Processing steps.

Morphology: A ‘morphene’ is the smallest component of words.


Morphology deals with the rules that allow adding prefix and
suffix to already known words.

Morphological analysis is useful for identifying the role of a


word in a sentence including tenses, number and part of speech.

Pragmatics: It describes the study of the ways by which the


language is expressed. It also considers the effect of words on the
listener.
Example: If someone asks “What is your date of birth?”, one
should answer a date and this is expected.

Archana R. Shinde
Natural Language Processing steps.
World Knowledge: The world knowledge stands for the
domain knowledge of the environment, without which the
semantic understanding of the sentences is difficult.

The first step to understand natural languages is parsing,


which analyses the syntactic structure of sentences.
It serves two basic purposes. First it determines the
linguistic relations such as subject-verb, etc. and finally
checks the syntactical correctness of the sentences.

Archana R. Shinde
Natural Language Processing steps.
• Step-1: Morphological Analysis:

• Step-2: Syntactic Analysis:

• Step-3: Semantic Analysis:

• Step-4: Discourse and Pragmatic Analysis:

Archana R. Shinde
Natural Language Processing steps.
Step-1: Morphological Analysis: Individual words are analyzed
into their components and non word to kens such as punctuation
is separated from the words.

Morphological analysis must do the following pull apart the


word “bills” in to the proper noun “bill” and the possessive suffix
“s”

In addition this process will usually as sign syntactic categories


to all the words in the sentence this is usually done now because
interpretations for affixes [prefixes and suffixes] may depend on
the syntactic category of the complete word .
Ex: consider the word ‘prints’ this word is either a plural noun.
Archana R. Shinde
Natural Language Processing steps.
Step-2: Syntactic Analysis: Syntactic analysis must exploit
the results of morphological analysis to build a structural
description of the sentence.
The goal of this process, called parsing is to convert the flat
list of words that forms the sentence into a structure that
defines the units that are represented by that flat list.

In this section we shall discuss following distinct methods for


syntactic analysis of sentences.
These are:
1) By using context free grammar
2) By employing transition network
Archana R. Shinde
Natural Language Processing steps.
1) By using context free grammar:

• A context free grammar G is generally defined by a 4 tuple,


given by G = {Vn,Vt,S,P }
• Where Vn is a set of non-terminal symbols,
Vt denotes a set of terminal symbols,
S denotes the starting symbol and
P represents a set of production rules that cause a change.

It may further be noted that Vn --> Vt denotes the entire set


of symbols. The above definition of context free grammar is
prevalent in automata theory and compilers.
Archana R. Shinde
Natural Language Processing steps.
Example: Let us consider the following sentence and illustrate the
parameters involved in the definition of G in connection with the problem
of natural language understanding.

Sentence: The man killed a deer.


Here, Vt = {the, man, killed, a, deer}
Vn = {noun-phrase, verb-phrase, article, noun, ---}.
S = initial symbol

Article --> the,


Noun --> man,
Verb --> killed,
Article --> a,
Noun --> deer,
Archana R. Shinde
Natural Language Processing steps.
Transition Networks:

Transition Network is a transition graph is used to check the


syntax of a given statement. It consist nodes and labeled arcs,
node is used to check the word of statement and arc is used to
represent the relationship between these words.

Transition networks are used in ‘automata theory’ to represent


grammar. The process of parsing can be done analogously by using
transition nets. A transition net, used for parsing, comprises of nodes
and labeled arcs where the nodes denote states and arcs
correspond to a symbol, based on which a transition is made from
a given state (node) to the next state. The re-write rules and the
corresponding transition networks are presented below.
Archana R. Shinde
NP VP
Starting State Intermediate State Terminal State

Fig: Transition network for ‘sentence’ constructed using S --> NP VP.

ART N
Starting State Intermediate State Terminal State

NP

Fig: Transition network for noun phrase, constructed from re-write rules:
NP--> ART N and NP --> N.
Archana R. Shinde
V NP
Starting State Intermediate State Terminal State

Fig: Transition network for verb phrase using the re-write rules:
VP --> V. NP, VP --> V.

Archana R. Shinde
ATN (Augmented Transition Network)
Augmented transition networks (ATN) Extend transition networks
by attaching procedures to the arcs of the networks. When an arc is
traversed, the ATN parser executes the procedure, attached to that arc.
These procedures
1)Assign values to grammatical features, and
2)Check whether the number or person (1st, 2nd, 3rd) conditions are
satisfied and accordingly allow or fail a transition.


For instance, the ATN that may be employed for parsing part of the
sentence ‘the boy’ is presented below.


Suppose the grammatical characteristics or features of the words ‘the’
and ‘boy’ are available in a data dictionary, as shown in fig. Also
assume that the procedures are attached to the arcs of the article and
noun, as described below, Archana R. Shinde
ATN (Augmented Transition Network)
The:
Part of Speech Root Number
ART The Singular/ Plural

Boy:
Part of Speech Root Number
N Boy Singular

Fig: The grammatical characteristics of the word (a) the and (b) boy,
represented by structures.

Archana R. Shinde
ATN (Augmented Transition Network)
The:
Part of Speech Root Number
N Crocodile Singular

Boy:
Part of Speech Root Number
V Smile Singular/Plural

Fig: The grammatical characteristics of the word (a) Crocodile and (b) Smile,
represented by structures.
Archana R. Shinde
Semantic Analysis

Semantic analysis must do two important things.

It must map individual words into appropriate objects in


the knowledge base or database.

It must create the correct structures to correspond to the


way the meanings of the individual words combine with each other

Archana R. Shinde
Semantic Analysis

Semantic Interpretation by Case Grammar and Type


Hierarchy: The parse tree we constructed by ATN can be
semantically interpreted by using case grammars and type
hierarchy. A type hierarchy describes a relationship between
the child and its parent in the hierarchy. In other words, the
parent nodes are more generic than the children. It has similarity
with lattice diagrams, where there exists a lower bound and upper
bound to such hierarchy and a strict relation to construct the
hierarchy. The ‘type hierarchy’ is useful for constructing
knowledge about verbs and their object space, if any, or to
determine the meaning of a noun or verb, from the generalized and
specialized events / items in the hierarchy. For demonstrating the
concept of hierarchy, we consider the animal kingdom.

Archana R. Shinde
Fig: The type hierarchy for the animal kingdom.
Archana R. Shinde
Discourse and Pragmatic Analysis

Syntactic and semantic analysis is essential but not


sufficient to understand natural languages.
The discourse and pragmatic concept in which a sentence is
uttered are equally useful for understanding the sentence. For
Instance, consider the following dialogs.
Dialog 1: Did you read the AI book by Konar? The last chapter on
robotics is interesting.
Dialog 2: Mr. Sen’s house was robbed last week. They have taken
all the ornaments Mrs. Sen possessed.
Dialog 3: John has a red car. Jim wanted it for a picnic.

Archana R. Shinde
Discourse and Pragmatic Analysis

In the last three examples, the first sentence asserts a fact or a


query and the second sentence refers to it directly or indirectly. In
example 1, ‘the last chapter’ refers to the last chapter of Konar’s book.
The subject ‘they’ in the second example corresponds to the robbers.
The word ‘it’ in example 3 refers to John’s car. It is thus evident that
to represent part or whole of entities and actions, we often refer to it by a
word or phrase.
Programs that can accomplish multiple sentence understanding rely
on large knowledge bases, which is difficult to construct for individual
problems. Alternatively, a set of strong constraints on the domain of
discourse may be incorporated in the program, so that a more limited
knowledge base is sufficient to solve the problems. To realize the
pragmatic context in the programs, the following issues may be
considered.
Archana R. Shinde
Discourse and Pragmatic Analysis
Focussing the relevant part in the dialog: While understanding natural
language, the program should be able to focus on the relevant parts of the
knowledge base available to it.

Modeling individual beliefs: In order to participate in a dialog the


program should be efficient to model the beliefs of the individuals. The
modal logic should be used to represent such beliefs.

Identifying goals and plans for understanding: The third pragmatic


context to understand natural language is to identify the other
participants’ goals and the plans to realize the goals. The understanding
system should keep track of the other’s goal throughout the dialog.
Ex: Suppose the participant says ‘I am planning to visit Delhi by flight
for an interview. Tickets, however, have not been booked yet.’ From these
sentences opponents should realize that the speaker’s goal is to visit some
place and he is talking of air tickets.
Archana R. Shinde
Discourse and Pragmatic Analysis

Speech acts: This refers to the communicative acts that the


speaker wants to realize.
Ex: Suppose the speaker wants to get his pen from the drawer to
sign his banker’s cheque. He requests his spouse to bring the pen
for him. This speech act presumes that his spouse knows where
the pen is kept.
Let A be the person, S be the spouse and P be the pen. Then by
modal logic we represent it
Request (A, S, P)
Precondition: Believe (A, knows-whereabout (S, P))
Believe (A, willing-to-do (S, P)

Thus the elements of communicative plans can be formalized and


used for executing a task.
Archana R. Shinde
Learning Techniques

Archana R. Shinde
Learning Techniques
What is Learning ?
- Learning is the process of updating the knowledgebase for
solving the modified problems.

 Learning plays a major role in AI so solve modified problems.


 Machine can not be called intelligent until they are able to
learn to do new things and to adapt new situations, rather than
simply doing as they are told to do.
 Researchers have proposed many mechanisms for doing the
kinds of learning.
 Many AI programs are able to improve their performance
substantially through rote – learning technique and any other.

Archana R. Shinde
Learning Techniques

Expert Knowledge Modified AI


Source of Learning Process Base Problem
Knowledge

Request For
New
Knowledge

Archana R. Shinde
Learning Techniques
Various type of learning methodologies:- (Types of Learning)

1. Rote learning
2. Learning by taking advise
3. Learning in problem solving
4. Learning from example
5. Learning by parameter adjustment
6. Learning by analogy

Archana R. Shinde
Rote learning
l
When a computer is storing a piece of data it is performing
rudimentory form of learning.

This act odf storage presumbly allows the program to perform
better in future

In the case of data caching, we store computed values so that we
do not have to recompute them later.When computation is more
expensive, this strategy can save significant amount of time.

Caching has been used in AI programs to produce some
surprising performance improvements.

Archana R. Shinde
Learning by taking advise
• Another way to learn is through taking advice from others.
• Advice taking is similar to rote learning but high level may not
be in simple from for a program to use directly in problem
solving.
• When a programmer writes a series of instructions into a
computer rudimentary type learning take place the programmer
is a sort of teacher and computer is a now able as student after
being programmed the computer is now able to do some thing it
previously could not.
• Executing the program may not be simple suppose the program is
written in high level language like lisp, some interpreter is
required to change the teachers instruction into the code that the
machine can execute directly
Archana R. Shinde
Learning in problem solving
• People also learn through their own problem solving
experience after solving a complex problem we remember the
structure of the problem and the method we can use to solve
it.
• The next turn we see the problem, we can solve more
efficiently. moreover we can generalize from our experience
to solve related problem more easily. In contrast to advice
taking learning, from problem solving experience does not
usually involve gathering new knowledge that was
previously unavailable to the learning program.that is the
program remember its experiences and generalizes them,but
dose not add to the transitive closure of its knowledge.
Archana R. Shinde
Learning from example
• We learn to classify things in the world without being taught
explicit rules,

E.g.
Adults can differentiate between cats and dogs but small
children cannot.
It involves a teacher who helps us to classify things by
correcting us when we are wrong.

Two methods of solving analogical problem are


1. Transformational analogy.
2. Derivational analogy.
Archana R. Shinde
Learning from example
Transformational analogy
Suppose user asked to solve a theorem in a plane geometry.
When necessary the idea is to transform a solution to a previous
problem in to a solution for the current problem.

The program has been proofs about points line segments.

Previously
NEW Problem
Solved

Solution of New Solution of Old


Problem Problem
Archana R. Shinde
Learning from example
Derivational analogy
• Transformational analogy does not look at how the old problem was solved, it
only looks at the final solution.
• The detailed history of problem solving is called it’s derivation.
E.g. Suppose you have coded an efficient sorting routine in Pascal, and then
you are asked to recode the routine in USP. A line by line translation is not
appropriate but you will reuse the major structural and control decisions you
made when you constructed the Pascal program.

Previously
NEW Problem
Solved

Solution of New Solution of Old


Problem Problem
Archana R. Shinde
Learning by parameter adjustments
• Many program on an evaluation procedure that cumulate
information from several sources into single summary.
• Static game playing programs do this in their static evaluation in
which variety of factors are combined into a single score
pattern.
• In designing such a program it is difficult to know a “prior” how
much weigh should be attached to each feature being used. One
way to find correct weighs is to begin with some estimate of
correct setting and then let the program modify the setting on the
basis of it’s experience features that appear to be good predictors
of our all.
• Success will have their weights increased while those do not have
their weight decreased perhaps even to the point of being dropped
entirely. Archana R. Shinde
Expert System

Archana R. Shinde
Expert System
• Expert System is a set of program that manipulate encoded
knowledge to solve problem in a specialized domain that
normally requires human experts

• It is a Program that behaviours like a human.

• Expert system can ask you questions until it can identify an


object that understand your answer.

• A system that uses human expertise to make complicated


decisions.

• Solve the problem by applying knowledge and interfaces.


Archana R. Shinde
Expert System
• An expert system knowledge is obtained from expert source and
coded in suitable form.

• Expert system is an Intelligent computer program that uses


knowledge and inference procedure to solve problem those are
difficult enough to require significant human expertise for their
solution.

• Expert system is the interactive computer program incorporating


judgments rules of thumb to provide knowledge advice about a
variety of tasks.

• Expert’s system have ability of problem solving like human


expert.
Archana R. Shinde
Expert System Structure

Knowledge
Based Rules Expert
Interpreter Natural
Inference Language
Engine Interface
Data base
Context Set
of facts
User
Interface
4 Components of an Expert System

1.Knowledge Base.

2.Reasoning or Inference Engine

3.User Interface

4.Explanation Facility

Archana R. Shinde
Knowledge Base

• Knowledge is the collection of Information.

• Represents all the data and information imputed by


experts in the field.

• Stores the data as a set of rules that the system must


follow to make decisions.

Archana R. Shinde
Knowledge Acquisition

Expert Knowledge Human


System Engineer Expert
Inference Engine

• Asks the user questions about what they are looking


for.

• Applies the knowledge and the rules held in the


knowledge base.

• Appropriately uses this information to arrive at a


decision.

• Expert System designed to help users complete tax


returns
Archana R. Shinde
User Interface:

• Allows the expert system and the user to communicate.


• Finds out what it is that the system needs to answer.
• Sends the user questions or answers and receives their
response.

Explanation Facility:

• Explains the systems reasoning and justifies its


conclusions.

• User or the crater need to justify (Explain) the reason.

Archana R. Shinde
Does anyone know any examples of expert
systems used in everyday life?
Expert System
To understand what an expert system can do consider the following
dialog between a fruit expert and someone seeking advice.

Expert: It is Green
User: No
Expert: It is Red
User: Yes
Expert: Does it grow on the tree
User: No
Expert: Does it grow on the Cane
User: Yes
Expert: Does it cane have thorns
User: Yes
Expert: It is Raspberry

The Goal of Computerized fruit expert system is to reduce this dialog.


Archana R. Shinde
Illustration of Expert System

Archana R. Shinde
Utilization and functionality

Archana R. Shinde
Utilization & functionality
Expert System is utilized where human expertise is needed. On the basis
of knowledgebase expert system is utilized.

There are many reasons to use the expert system some of the are,

1. If expertise is expansive, or unavailable at that place.


2. For preserving the knowledgebase.
3. If time pressure and accuracy constraints are there
4. If repetitive, boarding job is there (Eg. Welding)
5. To work in hazards environment like in nuclear plants.
6. Improve the quality of decision making.
7. For cost saving.
8. For quality improvement.
9. For Atomization
10. For increasing machine dependency.
Archana R. Shinde
Utilization & functionality
Functionality of Expert System: How Expert System Works:

Expert system can solve number of problems by using knowledge, working of


the expert system is as follow.

Step1: Using user interface expert system receives problem domain (whot, how,
where)

Step 2: Supply the given problem domain to interface engine (IE).

Step 3: IE search knowledgebase on the basis of MATCH, SELECT and


EXECUTE principal (Particular knowledge is selected here)

Step 4: IF Particular knowledge is not there, then send request to the learning
module for updating the knowledgebase.

Step 5: Apply inference mechanism and solve the given expert problem

Archana R. Shinde
Utilization & functionality

Inference Engine

User
User
Interface

Knowledgebase Learning
Module

Archana R. Shinde
Architecture of Expert System

Archana R. Shinde
Architecture of Expert System
• Architecture of expert system is dependent upon the
architecture of knowledge base.

• In expert system knowledge plays very important role.

• Quality of knowledge decides the quality of the expert


system.

There are two architecture of Expert system.

1. Rule Base Architecture of expert system.


2. Non Rule Base Architecture of expert system.
Archana R. Shinde
Architecture of Expert System
1. Rule Base Architecture of expert system: In Rule Base
Architecture of expert system the knowledge of expert system
is encoded in the form of production rules.

(IF -------- Then --------- Form)

Example: MYCIN Medical Expert System.

Archana R. Shinde
Architecture of Expert System

Archana R. Shinde
Architecture of Expert System

2. Non Rule Base Architecture of expert system: In Non


Rule Base Architecture of expert system knowledge is
encoded in specialized form as given below,

Different Architecture used in Non rule based Expert System:


1.Associative or semantic net Architecture
2.Frame Architecture
3.Decision Tree Architecture
4.Blackboard system Architecture
5.Analogical Reasoning Architecture
6.Neural Network Architecture
Archana R. Shinde
Non Rule Base Architecture
1. Associative or semantic net Architecture: Binding the
data in a net. In this expert system knowledge is encoded in
specialized form of semantic net

2. Frame Architecture: Frame is the knowledge


representation technology. In these expert system
knowledge is encoded in specialized form of frame.

3. Decision Tree Architecture: It Takes the complicated


decision and go for the conclusion. In this expert system
knowledge is encoded in specialized form of Decision Tree.

Archana R. Shinde
Non Rule Base Architecture

4. Blackboard system Architecture: Start with the problem


specification and end with the solution. In this expert
system knowledge is encoded in specialized form of
Blackboard.

5. Analogical Reasoning Architecture: In this expert


system knowledge is encoded I like as human reasoning, that
is use of old solution to solve the new problem.

6. Neural Network Architecture: By using the human


expertise the neural network will be form. In this expert
system knowledge is encoded in specialized form of neural
Network. Archana R. Shinde
Knowlwdge Base
The knowledge base is a database that holds specific information
and rules about a certain subject.

Object:- The conclusion that is defined by its associated rules.

Attributes:- A specific quality that, with its rule, helps determine


the object.

1. Association of rule
2. The rule that is applied to an attribute states that the object
either “HAS” or “HAS NOT attribute.

Ex: An expert system that identifies various types of fruit might


have a knowledge base like this:
Archana R. Shinde
Knowlwdge Base
Object Attribute Attribute
Has Been Grown on tree
Has Round Shape
Apple Has Not Been grown in the Deep South
Has Red or Yellow colour.
----------------------------------------------------------------------------------------------------------------------
-
Has Been grown on vine
Has Small in Size
Grape Has Purple colour
Has Not A vine with thorns
Has Ability to make wine
-----------------------------------------------------------------------------------

Has Been grown on tree


Has Round Shape
Has Not Been Grown in the North
Orange Has Orange colour
Archana R. Shinde
Infernce Engine
The inference engine is the part of the expert system that attempts
to use the information that you supply to find an object that
matches.

There are two categories of the Inference Engines,


1.Probabilistic: It comes under Sociology.
2.Deterministic: It comes under Chemistry

The different methods related to the way that the engine attempts
to reach the goal,

1. Forward Chaining Method.


2. Backward Chaining Method.
3. The Rule Value Method.
Archana R. Shinde
Forward Chaining Method.

Forward Chaining is sometime called as Data Driven because


the inference engine use information that the user provide to more
through a network of logical Gates.

Archana R. Shinde
Forward Chaining Method.

Example:
• Imagine that your car having some problems and you take it to
mechanic.
• He will ask you to describe the problems in the car.
• You tell him the problem that the car ignition is not working
properly.
• After that he will provide some conclusion to you that the car
need the service.

Here all the process goes in Forward direction so it is called as


Forward Chaining Method.

Archana R. Shinde
Backward Chaining Method.

Backward chaining is totally reverse of the forward
chaining.


A backward chaining interference engine stats with a
hypothesis a request information conform or deny it.

Archana R. Shinde
Backward Chaining Method.
Example:

To understand how the backward chaining works, Imagine that your
computer suddenly stop working. Your First hypothesis is that it has lost
power supply.

To check this your check first the fan of computer that it is running or
not.

If it is running you reject the hypothesis and process another one.

You second hypothesis is that your computer has crashed because of
the faulty software to conform or reject this possibility you restart your
system.

On restarting the computer starts working properly, hence your second
hypothesis gets true.

We are checking the possibilities one by one as Try and Error.
Here we are doing the reverse engineering. So this is the Backward
Chaining.
Archana R. Shinde
The Rule Value Method:

• The ruled value is superior because it need the output only.


• It don’t have the censer that we are getting the output from which
method.
• But most of the time the rule value method works on backward
chaining because it removes all the uncertainty steps.

Example:

In your home one child is sick and you called your Doctor.

The doctor first asked if the child has a fever because the answer
for this question having greatest number of possibilities.

After that the doctor also ask the child having the cough or body
pain.

This process is going on till the diagnosis is not done.
So this procedure goes by one rule so it is called as Rule Value
Method
Archana R. Shinde
The Rule Value Method:

The problem with ruled value system is that they are difficult to
implement there are some reasons for this,

1. Real life situation.

2. It requires the knowledge basis which takes the reference of all


of the attribute.

Archana R. Shinde
Knowledge Representation and
Utilization in Expert System

Archana R. Shinde
Knowledge Representation and Utilization in
Expert System

In expert System the knowledge is represent or encoded in


the form of,

1) Production Rules
2) Semantic Net
3) Frame
4) Decision Tree
5) Blackboard
6) Neural Network.

Archana R. Shinde
Knowledge Representation and Utilization in
Expert System

Knowledge
Knowledge System Knowledge
Sources (Domain Engineer Editor Base
Expert)

Archana R. Shinde
Knowledge Representation and Utilization in
Expert System
Procedure to search the knowledge.
Step 1: When expert system requires knowledge it sends request
to the knowledge engineer.
Step 2: Knowledge engineer search a particular knowledge from
the expert knowledge source (i.e. Internet, Book, Human etc)
Step 3: After that it encode that knowledge in knowledgebase.

Knowledge has many meanings – data, facts, information.

How do we use knowledge to reach conclusions or solve


problems?

Heuristics refers to using experience to solve problems.


Expert systems may have hundreds/thousands of micro-
precedents to refer.
Archana R. Shinde
Advantages of Expert Systems
1. Can be simple to use.
2. Efficient results.
3. Accurate results.
4. Adaptation and adjustments to changing conditions.
5. Cost effective.

Archana R. Shinde
Problems with Expert Systems
1. There is no expert in the field
2. The expert is unable to communicate his/her ideas
3. The expert is unwilling to communicate his/her ideas
4. The expert is not available
5. Must have all information on a subject
6. Can all the testing be accomplished?
7. User acceptance

Archana R. Shinde
Expert System Shell

Archana R. Shinde
Expert System Shells

Expert System Shell is a tool which is used to develop


the expert system. It provides environment for the
development of expert system.

Archana R. Shinde
Expert System Shells
MYCIN took approximately 20 years to complete. The system was
written in INTERLISP, a dialect of the LISP programming language.

During the work on MYCIN, a large amount of LISP code was written for
different modules:
Knowledge base
Inference engine
Working memory
Explanation facility
End-user interface

Toward the end of the project, the MYCIN developers realized that
because the knowledge on infectious diseases was separate from its
control, then the code written for the other modules should be portable to
other applications.

Archana R. Shinde
Expert System Shells
By removing the knowledge about infectious blood diseases, a
system known as EMYCIN (van Melle, 1979) was formed. EMYCIN
is a domain-independent version of MYCIN that contains all of
MYCIN except its knowledge about infectious blood disease.

EMYCIN facilitated the development of other expert systems, such


as PUFF (Aikens et al., 1983), an application for the diagnosis of
pulmonary problems.

PUFF was produced in about 5 years.

Archana R. Shinde
EMYCIN MYCIN
E. S. Shell Medical E.S.
User

Specification of
E.S.

Archana R. Shinde
EXPERT SYSTEM SHELL ARCHITECTURE

System interface 
External

Programs

Working memory


Knowle

Explanation Facility l
Inference Engine dge
Base

l
User Interface

Developer’s interface


Knowledge

User 
Engineer

Archana R. Shinde
Shells and Environments

Expert systems components


1. Knowledge acquisition subsystems
2. Inference engine
3. Explanation facility
4. Interface subsystem
5. Knowledge base management facility
6. Knowledge base

Archana R. Shinde
Applications of Expert System

Archana R. Shinde
Expert System Shells

Characteristics of Expert Systems

• High performance
• Understandable
• Reliable
• Highly responsive

Archana R. Shinde
Expert System Shells

Capabilities of Expert Systems

The expert systems are capable of −

• Advising
• Instructing and assisting human in decision making
• Demonstrating
• Deriving a solution
• Diagnosing
• Explaining
• Interpreting input
• Predicting results
• Justifying the conclusion
• Suggesting alternative options to a problem
Archana R. Shinde
Archana R. Shinde

You might also like