2. Introduction
Early 80s of 20th century was the years of AI specialization
and success where the knowledge based systems were
created and some expert systems were developed such as
MYCIN that address medical diagnosis problems and
DENDRAL that analyses mass spectrographic nuclear
magnetic resonance.
Expert systems are firmly at the application end of the AI.
The other branches of AI are concerned with common
intelligent tasks such as interpreting scenes and
understanding languages.
Expert systems can also undertake tasks such as process
control.
3. Introduction (cont.)
To find out what is the expert system lets first find out who is
the expert?
He is a person who has some of the following characteristics
Special knowledge in a given area, which exceeds our own
in the area.
Specialized training in that area.
Work experience in the area.
Ability to give reliable advice.
May has more knowledge than any one else.
May has good knowledge out side his area of expertise.
4. Expert System Definition
Expert system is a program that simulates the
performance of a human expert in a specific narrow field.
The word expert may mislead, as we expect the
performance of the expert to be perfect. Is there a doctor
who has never misdiagnosed?
Hence Expert System may be better called a Knowledge
Based System
The expert system may be seen as an intelligent computer
programme that uses knowledge and inference
procedures to solve problems that would normally require
human expertise to arrive to a solution.
5. Expert System Definition
Expert system is a program that simulates the
performance of a human expert in a specific narrow field.
The word expert may mislead, as we expect the
performance of the expert to be perfect. Is there a doctor
who has never misdiagnosed?
Hence Expert System may be better called a Knowledge
Based System
The expert system may be seen as an intelligent computer
programme that uses knowledge and inference
procedures to solve problems that would normally require
human expertise to arrive to a solution.
6. Expert System Definition (cont.)
• An expert system is a computer program that simulates
the judgment and behavior of a human or organization that
has expert knowledge and experience in a particular field.
• Typically, such a system contains a knowledge base
containing accumulated experience and a set of rules for
applying the knowledge base to each particular situation
that is described to the program.
7. Process of Building Expert System
1- Project selection:
Selecting the project and carrying out a feasibility study to find out if the problem
can be solved by the expert system technique. The following questions are
answered to find out wither it is preferable to build expert system or not
Is the knowledge acquired by experience over long time?
Are the experts the only people who can really understand the decision
factors involved?
Is more consistence decision making process needed?
Does the task require expertise for the solution? Does non expert perform
poorly?
Is there a shortage of expertise?
Is the problem solution depends on common sense
Is the domain well defined?
Is the domain stable?
Does the domain rely more on heuristics than algorithms?
Does the expert deals more with symbols than numbers?
8. Process of Building Expert System
2- User identification
Who will use the programme and what is his knowledge.
3- Knowledge election:
Extracting the knowledge needed to solve the problem.
4- Knowledge Analysis:
Choosing the most suitable way of representing the knowledge
from those available (production rules, frames, semantic nets,
etc.). More details are given in later section.
5- Choice of tools:
Choosing the suitable tool for implementing the expert system
and also choosing the hardware.
6- Coding the knowledge:
Converting the knowledge from normal English to the selected
programming language.
9. Process of Building Expert System
7- Validation of the system:
Testing the developed system and comparing the results with
other results obtained by other means.
8- Maintenance procedure design:
A policy of how future changes to the system are to be dealt with.
9- Evaluation of the system:
Testing the system by the users and see what improvements may
be needed.
10- Maintenance:
While the system is in use many small but important deficiencies
are discovered which need to be dealt with in according with pre-
set procedures.
10. Characteristics of Expert Systems
An expert system stores expert knowledge in certain subject
areas, and solves problems by drawing logical conclusions.
Expert systems are used in those cases where specialized
knowledge and experience are available and where
conventional programming techniques cannot be used or if
used may be uneconomic.
From the point of view of the user, the expert system is a
computer programme to be used in the same way as any
other programme, but from the point of view of the designers
and implementers an expert system is quite different from
conventional computer programme.
11. Differences Between Expert systems
and Conventional Programs
Some of the important differences are listed below:
Expert systems incorporate a symbolically structured knowledge base, which
contains the knowledge it needs, while the conventional programmes work
with numerically addressed data bases.
Searching for a solution, in expert systems, is "heuristic". A heuristic solution
is a method or set of rules for solving a problem without showing exactly how
the computer is to perform its task. In contrast the conventional programmes
solution is algorithmic, i.e. step by step procedures that guarantee that the
right conclusion will be reached when the correct data have been entered.
In the conventional programmes the data and the control are mixed and
cannot be separated. This fact makes the conventional programmes hard to
amend or modify. In the expert systems the modification is much easier
because the knowledge in the programme is coded using special language
and kept separate from the control (knowledge which guides the search).
Expert systems can handle uncertain knowledge and solve problems using
approximate methods, which are not guaranteed to succeed with algorithmic
programmes.
12. Differences Between Expert systems
and Conventional Programs
According to the British computer committee of the
specialist group on expert systems (BCS) expert
systems require the following :
An expert system contains knowledge.
The programme offers intelligent advice.
The system should be able to explain its line of
reasoning.
Expert systems are typically rule based.
13. Advantages of Expert Systems
Expert systems can offer a very good assistance for all its users, so user
can avoid complex tasks.
The knowledge stored in the expert system is permanent and will not be
lost.
The cost of the expert system is much cheaper than the human expert.
Once the expert system is developed new experts can be acquired by
simply copying the programme.
The development of the expert system extracts the expert knowledge and
formalises the knowledge. It also helps in exploring the reasoning
process.
The expert system is available for use at all times, unlike the human
expert who needs to eat, relax and sleep.
Planning using expert system can be more complete and consistent.
The information is contained in the knowledge base in the form of rules,
hence it is very convenient to add, remove or modify the knowledge base.
14. Disadvantages of Expert Systems
As expert systems have some advantages, they also have
disadvantages. Some of them are listed below:
The expert system cannot adopt to changes unless it is
told to do so.
Human experts, sometimes apply some global or
commonsense knowledge, whilst the expert system can
only apply the specific domain knowledge.
Human experts can formulate new, more efficient,
algorithms to apply to existing problems.
For the expert system to remain useful it needs to be
constantly maintained by an expert.
15. Areas of Expert Systems
Problem area Problem domain Example
Interpretation Infers situation description from observation Speech understanding and signal interpretation
Prediction Infers likely consequences from given information Weather forecasting and traffic prediction
Diagnosis Infer system characteristics from systems Medical diagnosis
Design Purpose configuration under some constraint Electric circuit design and building structural
design
Control Governing the overall behaviour of a system Production process control, air traffic control and
mission control
16. Each area of application has to be studied and the main
characteristic of that area should be known.
As example lets take the design problem, it is generally to
develop configurations of objects satisfying groups of
constraints.
The main goal of the design can be broken down into three sub
goals, to propose a design, criticise it and modify it.
Each sub goal may be broken farther, if required, into smaller
sub goals depending on the type of the design problem under
consideration.
Selection and connection of the components is an important
step in the design process.
When a design is developed it is usually analysed to ensure
that the proposed design satisfies the constraints.
From the results of the analysis only components which do not
meet the specifications are reconsidered.
Areas of Expert Systems (cont.)
17. The problem of design can be defined by identifying the goal, known and
constrains.
Design problem can be solved by taking number of actions such
propose, criticise, modify and present.
Each can be divided farther as shown below.
Problem Definition
Goal
– To produce a design that meets a set of constraints and
specifications.
Known
– Set of specifications regarding the system required.
– Standard component specifications.
– Possible relations between the components.
Constraints
– For each design problem, there are some constraints that must be
satisfied.
Areas of Expert Systems (cont.)
18. Design Process (Actions)
Propose
• Suggest overall design.
• Suggest relation between the components.
• Select components properties and details.
Criticise
• Prepare data for analysis.
• Analyse and test the primary design.
Modify
• Check the analytical results.
• Update the design if necessary.
Present
• Present the design details.
The above design processes may vary according to the design problem.
However, they can be used as a general guide for several design problems
such as electrical distribution system design.
Areas of Expert Systems (cont.)
19. Components of Expert Systems
Fundamental components of an expert system are:
• Knowledge base
• Inference Engine
• User interface
20. Components of Expert Systems
Knowledge base
The knowledge base of an expert system contains
high quality knowledge about a specific problem
domain organised as facts or rules or any other
representation.
Facts represent one single instance of either a
property of an object or a relation between
objects. Rules are properties or relations known
to be true when some set of other relations is
known. Facts and rules and other knowledge
representation
21. Components of Expert Systems
Inference Engine
The inference engine is that part of the expert system
that simulate the problem solving strategy of the
human expert. It represents the logical unit by means
which conclusions are drawn. The function of the
inference engine includes the following:
To determine which action is to be executed between
the individual parts of the expert system.
To determine how and when rules will be processed.
To control the dialog with the user.
There are two inference strategies.
22. Components of Expert Systems
User interface
This is the means by which the user communicates with the
expert system, and it is responsible for how the expert
system interacts with the user. The user interface, which is a
set of programmes that asks questions and accepts replies,
plays a very important rule in the success of the expert
system. It presents the questions and provides explanations
and conclusions to the user.
The questions and explanation must be understandable and
the results must be in a form appropriate for the user.
Sometimes the user may not be an expert in the system's
domain and this fact must be noted at the time of setting up
this part of the expert system.
23. Building Components of Expert
Systems
Knowledge base
This starts from knowledge extracting, analysis and then the
most appropriate method of representation is sleeted.
Inference Engine
Depending on the type knowledge and available information
about the problem domain a suitable inference strategy is
selected and then designed and implemented.
User interface
The most effective user interface is selected based on the
how and what details need to be communicated with the
users. Various expert systems building tools are available
and which offer of user inference methods.
Next lectures will discuss the above topics in more
details