0% found this document useful (0 votes)
3 views54 pages

AI_UNIT-4

Expert systems are AI applications designed to solve complex problems by mimicking human expertise in specific domains. They consist of a knowledge base, inference engine, and user interface, and are capable of advising, diagnosing, and interpreting input, among other tasks. The development of expert systems involves phases such as identification, conceptualization, formalization, implementation, and testing, ensuring they perform reliably and efficiently.
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)
3 views54 pages

AI_UNIT-4

Expert systems are AI applications designed to solve complex problems by mimicking human expertise in specific domains. They consist of a knowledge base, inference engine, and user interface, and are capable of advising, diagnosing, and interpreting input, among other tasks. The development of expert systems involves phases such as identification, conceptualization, formalization, implementation, and testing, ensuring they perform reliably and efficiently.
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/ 54

Expert Systems

➢ An expert system is a computer program that is designed to


solve complex problems and to provide decision-making
ability like a human expert.
(Or)
➢ The expert systems are the computer applications
developed to solve complex problems in a particular
domain, at the level of extra-ordinary human intelligence
and expertise.
➢ It performs this by extracting knowledge from its
knowledge base using the reasoning and inference rules
according to the user queries.
➢ The expert system is a part of AI, and the first ES was
developed in the year 1970, which was the first successful
approach of artificial intelligence.
Areas of Artificial Intelligence
Expert Systems
➢ Expert Systems solves the most complex issue as an expert
by extracting the knowledge stored in its knowledge base.
The system helps in decision making for complex problems
using both facts and heuristics like a human expert.
➢ It is called so because it contains the expert knowledge of a
specific domain and can solve any complex problem of that
particular domain. These systems are designed for a
specific domain, such as medicine, science, etc.
➢ The performance of an expert system is based on the
expert's knowledge stored in its knowledge base. The more
knowledge stored in the KB, the more that system improves
its performance.
➢ One of the common examples of an ES is a suggestion of
spelling errors while typing in the Google search box.
Characteristics of Expert Systems
➢ High performance: The expert system provides high
performance for solving any type of complex problem
of a specific domain with high efficiency and accuracy.
➢ Understandable: It responds in a way that can be easily
understandable by the user. It can take input in human
language and provides the output in the same way.
➢ Reliable: It is much reliable for generating an efficient
and accurate output.
➢ Highly responsive: ES provides the result for any
complex query within a very short period of time.
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
In capabilities of Expert Systems
They are incapable of −
➢ Substituting human decision makers
➢ Possessing human capabilities
➢ Producing accurate output for inadequate knowledge base
➢ Refining their own knowledge
Components of Expert Systems
The components of ES include −
➢ Knowledge Base
➢ Inference Engine
➢ User Interface
Components of Expert Systems
Knowledge Base:
➢ It contains domain-specific and high-quality knowledge.
➢ Knowledge is required to exhibit intelligence. The success
of any ES majorly depends upon the collection of highly
accurate and precise knowledge.

What is Knowledge?
➢ The data is collection of facts. The information is organized
as data and facts about the task domain. Data,
information, and past experience combined together are
termed as knowledge.
Components of Expert Systems
Components of Knowledge Base:
The knowledge base of an ES is a store of both, factual and
heuristic knowledge.
➢ Factual Knowledge − It is the information widely accepted
by the Knowledge Engineers and scholars in the task
domain.
➢ Heuristic Knowledge − It is about practice, accurate
judgement, one’s ability of evaluation, and guessing.
Components of Expert Systems
Inference Engine(Rules of Engine)
➢ The inference engine is known as the brain of the expert
system as it is the main processing unit of the system. It
applies inference rules to the knowledge base to derive a
conclusion or deduce new information. It helps in deriving
an error-free solution of queries asked by the user.
➢ With the help of an inference engine, the system extracts
the knowledge from the knowledge base.

There are two types of inference engine:


➢ Deterministic Inference engine: The conclusions drawn
from this type of inference engine are assumed to be true. It
is based on facts and rules.
Components of Expert Systems
➢ Probabilistic Inference engine: This type of inference
engine contains uncertainty in conclusions, and based on
the probability.

Inference engine uses the below modes to derive the


solutions:
➢ Forward Chaining: It starts from the known facts and
rules, and applies the inference rules to add their conclusion
to the known facts.
➢ Backward Chaining: It is a backward reasoning method
that starts from the goal and works backward to prove the
known facts.
Components of Expert Systems
User Interface:
➢ With the help of a user interface, the expert system interacts
with the user, takes queries as an input in a readable format,
and passes it to the inference engine. After getting the
response from the inference engine, it displays the output to
the user.
➢ In other words, it is an interface that helps a non-expert
user to communicate with the expert system to find a
solution.
Popular Examples of Expert System
➢ DENDRAL: It was an artificial intelligence project that was
made as a chemical analysis expert system. It was used in organic
chemistry to detect unknown organic molecules with the help of
their mass spectra and knowledge base of chemistry.
➢ MYCIN: It was one of the earliest backward chaining expert
systems that was designed to find the bacteria causing infections
like bacteraemia and meningitis. It was also used for the
recommendation of antibiotics and the diagnosis of blood clotting
diseases.
➢ PXDES: It is an expert system that is used to determine the type
and level of lung cancer. To determine the disease, it takes a
picture from the upper body, which looks like the shadow. This
shadow identifies the type and degree of harm.
➢ CaDeT: The CaDet expert system is a diagnostic support system
that can detect cancer at early stages.
Architecture of Expert System
Architecture of Expert System
➢ Knowledge Base: It is warehouse of special heuristics or rules,
which are used directly by knowledge, facts (productions). It has
knowledge that is needed for understanding, formulating, &
problem solving.
➢ Working Memory: It helps to describe the current running
problem and record intermediate output.
Records Intermediate Hypothesis & Decisions: 1. Plan, 2. Agenda,
3. Solution
➢ Inference Engine: It is important part of expert system which
helps to manage entire structure of expert system, and it delivers
to different methodology for reasoning.
➢ Explanation System: It helps to trace responsibility and justify
the behavior of expert system by firing questions and answers,
such as Why, How, What, Where, When, Who.
Architecture of Expert System
➢ User Interface: It allows users to insert their queries with using
own Natural Language Processing otherwise menus & graphics.
➢ Knowledge Engineer: Main objective of this engineer is to
design system for specific problem domain with using of expert
system shell.
➢ Users: They are non expert person who want to seek direct
advice.
➢ Expert system shell: It contains the special software
development environment, and it has basic components of expert
system such as – Knowledge-based management system,
Workplace, Explanation facility, Reasoning capacity, Inference
engine, user interface.
➢ This shell is linked along with pre-defined method for designing
different applications through configuring of those components.
Phases in building Expert System
The following points highlight the five main phases to develop
an expert system.
The phases are:
1. Identification
2. Conceptualization
3. Formalization (Designing)
4. Implementation
5. Testing (Validation, Verification and Maintenance).
Phases in building Expert System
➢ A knowledge engineer is an AI specialist, perhaps a
computer scientist or programmer, who is skilled in the ‘Art’
of developing expert systems.
➢ You don’t need a degree in “knowledge engineering” to call
yourself a knowledge engineer; in fact, nearly everyone who
has ever contributed to the technical side of the expert
system development process could be considered a
knowledge engineer.
➢ A domain expert is an individual who has significant
expertise in the domain of the expert system being
developed.
➢ It is not critical that the domain expert understand AI or
expert systems; that is one of the functions of the knowledge
engineer.
Phases in building Expert System

The knowledge engineer and the domain expert usually work very
closely together for long periods of time throughout the several
stages of the development process.
1.Identification Phase
➢ To begin, the knowledge engineer, who may be unfamiliar with
this particular domain, consults manuals and training guides to
gain some familiarity with the subject. Then the domain expert
describes several typical problem states.
➢ The knowledge engineer attempts to extract fundamental concepts
from the similar cases in order to develop a more general idea of
the purpose of the expert system.
➢ After the domain expert describes several cases, the knowledge
engineer develops a ‘first-pass’ problem description.
➢ Typically, the domain expert may feel that the description does
not entirely represent the problem.
➢ The domain expert then suggests changes to the description and
provides the knowledge engineer with additional examples to
illustrate further the problem’s fine points.
1.Identification Phase

Next, the knowledge engineer revises the description, and the domain
expert suggests further changes. This process is repeated until the
domain expert is satisfied that the knowledge engineer understands
the problems and until both are satisfied that the description
adequately portrays the problem which the expert system is expected
to solve.
2.Conceptualisation Phase
 In the conceptualisation stage, the knowledge engineer
frequently creates a diagram of the problem to depict
graphically the relationships between the objects and processes
in the problem domain.
 It is often helpful at this stage to divide the problem into a series
of sub-problems and to diagram both the relationships among
the pieces of each sub-problem and the relationships among the
various sub-problems.
 As in the identification stage, the conceptualisation stage
involves a circular procedure of iteration and reiteration
between the knowledge engineer and the domain expert. When
both agree that the key concepts-and the relationships among
them-have been adequately conceptualised, this stage is
complete.
2.Conceptualisation Phase

Not only is each stage in the expert system development process


circular, the relationships among the stages may be circular as well.
Since each stage of the development process adds a level of detail
to the previous stage, any stage may expose a weakness in a
previous stage
3.Formalisation (Designing) Phase
➢ The formalisation process is often the most interactive stage of
expert system development, as well as the most time consuming.
➢ The knowledge engineer must develop a set of rules and ask the
domain expert if those rules adequately represent the expert’s
knowledge.
➢ The domain expert reviews the rules proposed by the knowledge
engineer and suggests changes, which are then incorporated into
the knowledge base by the knowledge engineer.
➢ As in the other development stages, this process also is iterative:
the rule review is repeated and the rules are refined continually
until the results are satisfactory. It is not unusual for the
formalisation process of a complex expert system to last for
several years.
4.Implementation Phase
➢ During the implementation stage the formalised concepts are
programmed into the computer which has been chosen for
system development, using the predetermined techniques and
tools to implement a ‘first-pass’ (prototype) of the expert system.
➢ If the prototype works at all, the knowledge engineer may be able
to determine if the techniques chosen to implement the expert
system were the appropriate ones.
➢ On the other hand, the knowledge engineer may discover that the
chosen techniques simply cannot be implemented. It may not be
possible, for example, to integrate the knowledge representation
techniques selected for different sub-problems.
➢ At that point, the concepts may have to be re-formalised, or it
even may be necessary to create new development tools to
implement the system efficiently.
4.Implementation Phase

Once the prototype system has been refined sufficiently to allow


it to be executed, the expert system is ready to be tested
thoroughly to ensure that it expertise’s correctly.
5.Testing (Validation, Verification
and Maintenance) Phase
➢ Testing provides an opportunity to identify the weaknesses
in the structure and implementation of the system and to
make the appropriate corrections.
➢ Depending on the types of problems encountered, the
testing procedure may indicate that the system was
implemented incorrectly, or perhaps that the rules were
implemented correctly but were poorly or incompletely
formulated.
➢ Results from the tests are used as ‘feedback’ to return to a
previous stage and adjust the performance of the system.
5.Testing (Validation, Verification
and Maintenance) Phase
➢ Once the system has proven to be capable of correctly
solving straight-forward problems, the domain expert
suggests complex problems which typically would require a
great deal of human expertise.
➢ These more demanding tests should uncover more serious
flaws and provide ample opportunity to ‘fine tune’ the
system even further.
➢ Ultimately, an expert system is judged to be entirely
successful only when it operates at the level of a human
expert.
➢ The testing process is not complete until it indicates that the
solutions suggested by the expert system are consistently as
valid as those provided by a human domain expert.
Applications of Expert System
➢ In designing and manufacturing domain :It can be broadly
used for designing and manufacturing physical devices such as
camera lenses and automobiles.
➢ 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.
➢ 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.
➢ 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.
➢ Planning and Scheduling: The expert systems can also be used
for planning and scheduling some particular tasks for achieving
the goal of that task.
Expert systems ES are one of the prominent research domains of AI. It is introduced by the
researchers at Stanford University, Computer Science Department.

What are Expert Systems?


The expert systems are the computer applications developed to solve complex problems in a
particular domain, at the level of extra-ordinary human intelligence and expertise.

Characteristics of Expert Systems


High performance
Understandable
Reliable
Highly responsive

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

They are incapable of −

Substituting human decision makers


Possessing human capabilities
Producing accurate output for inadequate knowledge base
Refining their own knowledge

Components of Expert Systems


The components of ES include −

Knowledge Base
Interface Engine
User Interface

Let us see them one by one briefly −


Knowledge Base
It contains domain-specific and high-quality knowledge. Knowledge is required to exhibit
intelligence. The success of any ES majorly depends upon the collection of highly accurate and
precise knowledge.

What is Knowledge?
The data is collection of facts. The information is organized as data and facts about the task
domain. Data, information, and past experience combined together are termed as knowledge.

Components of Knowledge Base


The knowledge base of an ES is a store of both, factual and heuristic knowledge.

Factual Knowledge − It is the information widely accepted by the Knowledge Engineers


and scholars in the task domain.

Heuristic Knowledge − It is about practice, accurate judgement, one’s ability of evaluation,


and guessing.

Knowledge representation
It is the method used to organize and formalize the knowledge in the knowledge base. It is in the
form of IT-THEN-ELSE rules.

Knowledge Acquisition
The success of any expert system majorly depends on the quality, completeness, and accuracy of
the information stored in the knowledge base.

The knowledge base is formed by readings from various experts, scholars, and the Knowledge
Engineers. The knowledge engineer is a person with the qualities of empathy, quick learning, and
case analyzing skills.

He acquires information from subject expert by recording, interviewing, and observing him at
work, etc. He then categorizes and organizes the information in a meaningful way, in the form of
IF-THEN-ELSE rules, to be used by interference machine. The knowledge engineer also monitors
the development of the ES.

Interface Engine
Use of efficient procedures and rules by the Interface Engine is essential in deducting a correct,
flawless solution.

In case of knowledge-based ES, the Interface 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 interface engine uses the following strategies −

Forward Chaining
Backward Chaining

Forward Chaining
It is a strategy of an expert system to answer the question, “What can happen next?”

Here, the interface 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.

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 interface 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.
User Interface
User interface provides interaction between user of the ES and the ES itself. It is generally Natural
Language Processing so as to be used by the user who is well-versed in the task domain. The user
of the ES need not be necessarily an expert in Artificial Intelligence.

It explains how the ES has arrived at a particular recommendation. The explanation may appear in
the following forms −

Natural language displayed on screen.


Verbal narrations in natural language.
Listing of rule numbers displayed on the screen.

The user interface makes it easy to trace the credibility of the deductions.

Requirements of Efficient ES User Interface


It should help users to accomplish their goals in shortest possible way.
It should be designed to work for user’s existing or desired work practices.
Its technology should be adaptable to user’s requirements; not the other way round.
It should make efficient use of user input.

Expert Systems Limitations


No technology can offer easy and complete solution. Large systems are costly, require significant
development time, and computer resources. ESs have their limitations which include −

Limitations of the technology


Difficult knowledge acquisition
ES are difficult to maintain
High development costs

Applications of Expert System


The following table shows where ES can be applied.

Application Description

Design Domain Camera lens design, automobile design.

Medical Domain Diagnosis Systems to deduce cause of disease from observed


data, conduction medical operations on humans.

Monitoring Systems Comparing data continuously with observed system or with


prescribed behavior such as leakage monitoring in long petroleum
pipeline.

Process Control Systems Controlling a physical process based on monitoring.

Knowledge Domain Finding out faults in vehicles, computers.

Finance/Commerce Detection of possible fraud, suspicious transactions, stock market


trading, Airline scheduling, cargo scheduling.

Expert System Technology


There are several levels of ES technologies available. Expert systems technologies include −
Expert System Development Environment − The ES development environment includes
hardware and tools. They are −

Workstations, minicomputers, mainframes.

High level Symbolic Programming Languages such as LISt Programming LISP and
PROgrammation en LOGique PROLOG.

Large databases.

Tools − They reduce the effort and cost involved in developing an expert system to large
extent.

Powerful editors and debugging tools with multi-windows.


They provide rapid prototyping
Have Inbuilt definitions of model, knowledge representation, and inference design.

Shells − A shell is nothing but an expert system without knowledge base. A shell provides
the developers with knowledge acquisition, inference engine, user interface, and explanation
facility. For example, few shells are given below −

Java Expert System Shell JESS that provides fully developed Java API for creating an
expert system.

Vidwan, a shell developed at the National Centre for Software Technology, Mumbai in
1993. It enables knowledge encoding in the form of IF-THEN rules.

Development of Expert Systems: General Steps


The process of ES development is iterative. Steps in developing the ES include −

Identify Problem Domain


The problem must be suitable for an expert system to solve it.
Find the experts in task domain for the ES project.
Establish cost-effectiveness of the system.

Design the System


Identify the ES Technology
Know and establish the degree of integration with the other systems and databases.
Realize how the concepts can represent the domain knowledge best.

Develop the Prototype


From Knowledge Base: The knowledge engineer works to −

Acquire domain knowledge from the expert.


Represent it in the form of If-THEN-ELSE rules.

Test and Refine the Prototype


The knowledge engineer uses sample cases to test the prototype for any deficiencies in
performance.
End users test the prototypes of the ES.

Develop and Complete the ES


Test and ensure the interaction of the ES with all elements of its environment, including end
users, databases, and other information systems.
i

You might also like