AI Unit-5
AI Unit-5
UNIT – VI
Expert System:
Representing and using Domain
Knowledge,
Reasoning with knowledge,
Expert System Shells-examples,
Knowledge acquisition skills-examples.
What is an Expert System?
Note: It is important to remember that an expert system is not used to replace the human
experts; instead, it is used to assist the human in making a complex decision
Below are some popular examples of the 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.
Characteristics of Expert System
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.
Components of Expert System
An expert system mainly consists of three components:
User Interface
Inference Engine
Knowledge Base
1. 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.
2. Inference Engine(Rules of Engine)
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.
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.
For example, prediction of share market status as an effect of changes in interest rates.
Backward Chaining:
It is a backward reasoning method that starts from the goal and works backward to
prove the known facts.
For example, diagnosis of blood cancer in humans.
3. Knowledge Base
The knowledgebase is a type of storage that stores knowledge acquired
from the different experts of the particular domain.
It is considered as big storage of knowledge. The more the
knowledge base, the more precise will be the Expert System.
Components of Knowledge Base
Factual Knowledge: The knowledge which is based on facts and accepted by
knowledge engineers comes under factual knowledge.
Heuristic Knowledge: This knowledge is based on practice, the ability to guess,
evaluation, and experiences.
Knowledge Representation: It is used to formalize the knowledge stored in the
knowledge base using the If-else rules.
Knowledge Acquisitions: It is the process of extracting, organizing, and structuring the
domain knowledge, specifying the rules to acquire the knowledge from various experts,
and store that knowledge into the knowledge base.
Participants in the development of Expert System
There are three primary participants in the building of Expert System:
Expert: The success of an ES much depends on the knowledge provided by human
experts. These experts are those persons who are specialized in that specific domain.
Knowledge Engineer: Knowledge engineer is the person who gathers the knowledge
from the domain experts and then codifies that knowledge to the system according to
the formalism.
End-User: This is a particular person or a group of people who may not be experts, and
working on the expert system needs the solution or advice for his queries, which are
complex.
Advantages of Expert System
These systems are highly reproducible.
They can be used for risky places where the human presence is not safe.
Error possibilities are less if the KB contains correct knowledge.
The performance of these systems remains steady as it is not affected by emotions,
tension, or fatigue.
They provide a very high speed to respond to a particular query.
Limitations of Expert System
The response of the expert system may get wrong if the knowledge base contains the
wrong information.
Like a human being, it cannot produce a creative output for different scenarios.
Its maintenance and development costs are very high.
Knowledge acquisition for designing is much difficult.
For each domain, we require a specific ES, which is one of the big limitations.
It cannot learn from itself and hence requires manual updates.
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
Representing and using Domain Knowledge
Reasoning with Knowledge
To help machines perform human-level functions, artificial intelligence and its various subfields
like machine learning, deep learning, natural language processing, and more rely on reasoning and
knowledge representation.
Reasoning in artificial intelligence helps machines think rationally and perform functions like humans.
EXAMPLE OF REASONING IN ARTIFICIAL INTELLIGENCE
To better understand how reasoning works in artificial intelligence applications and
systems, let us consider two such examples:
Siri: The cognitive virtual assistant uses reasoning to offer suggestions and
recommendations based on commands. For example, the nearest location, the date for
tomorrow, AM and PM, among other things.
WolframAlpha: This computational knowledge engine relies on reasoning to perform
mathematical computations based on portions of food.
In short, like humans, machines use reasoning, along with knowledge representation,
logic, and learning for analysis, problem-solving, making conclusions, and more
TYPES OF REASONING IN ARTIFICIAL INTELLIGENCE:
In artificial intelligence, there are different types of reasoning, each of which is focused on
inferring facts from the existing data. These are:
1. Deductive Reasoning: A type of propositional logic in artificial intelligence, deductive
reasoning is a formal method of top-down logic that requires various rules and facts,
called premises, to deduce the conclusion is right. This concept of deductive reasoning is
expressed visually in the form of a funnel that narrows a general idea into the final
conclusion. In short, deductive reasoning uses formal logic to produce logically certain
results, using a set process, which involves the following steps.
Theory
Hypothesis
Patterns
Confirmation
2. Inductive Reasoning: An opposite of deductive reasoning, inductive reasoning is a
bottom-up logic that uses specific observations to reach a conclusion. Used in cases
where there is a limited set of facts and data to arrive at a conclusion, Inductive
reasoning uses historical data to produce a generic rule whose conclusion is supported
by the premises. Also known as cause-effect reasoning, this second type of reasoning is
exploratory in nature and allows for uncertain but likely results.
Like Deductive reasoning, inductive reasoning also follows a set of steps to perform
reasoning, these are:
Observation
Pattern
Hypothesis
Theory
3. Abductive Reasoning: An extension of deductive reasoning, abductive reasoning, is a
form of logical inference that seeks theories to define observations using the simplest
and likely explanation. Compared to inductive reasoning, abductive reasoning, which is
also known as abductive inference or retroduction, is less rigorous and allows for most
accurate suggestions and guesses. However, unlike deductive reasoning, it does not
rectify the plausible conclusion and is mostly used in data certainties. It is associated
with troubleshooting and decision making.
4. Commonsense Reasoning: A type of informal reasoning, commonsense reasoning in
artificial intelligence helps machines simulate human ability to make decisions and
perceptions about real-world events. Operating on heuristic knowledge and rules,
common sense in AI relies on accurate judgment rather than logic and is gained
through experience. It is mainly used in computer vision and robotic manipulation.
5. Monotonic Reasoning: Another important reasoning type, monotonic reasoning uses available
information and facts to reach a conclusion, which remains the same even after new information is
added to the existing one in the knowledge base. Since it does not modify the conclusion based on the
new data, it cannot be used in systems that require real-time inputs and outputs. Monotonic reasoning
is used in conventional reasoning systems and logic-based systems.
6.Non-monotonic Reasoning: Unlike Monotonic Reasoning, in non-monotonic reasoning, the conclusion is
termed as invalid if new or more information is added to the knowledge base. It is mostly used to
capture and represent defeasible or invalidated inferences and defaults. Moreover, this type of reasoning
deals with uncertain and incomplete models.
7. Forward & Backward Reasoning: Apart from these reasoning types, Forward and Backward Reasoning
in artificial intelligence are two more commonly used inference and reasoning techniques that help
machines perform reasoning like humans and reach the conclusion or solutions, with great accuracy and
speed. These are mostly used in expert systems, game theory, general-purpose inference engines, and
more.
Expert System Shells
Initially Expert system was created from scratch, usually in LISP
The systems were constructed as set of rules combined with an interpreter for
all those representations.
After several systems developed, It was clear these systems often had a lot in
common. So it was possible to separate interpreter and domain specific
knowledge.
The resulting interpreter is shells .we can create new expert system by adding
new knowledge.
These shells provide flexibility in representing knowledge and in reasoning.
Each shell provided mechanism for knowledge representation, reasoning and
explanation
Expert System Shells
An expert system shell can be considered as a expert system with the flexibility
to change the knowledge. Therefore, all the user has to do is to add the
knowledge in the form of rules and provide relevant data to solve a problem.
An Expert system shell is a software development environment. It contains the
basic components of expert systems. A shell is associated with a prescribed
method for building applications by configuring and instantiating these
components.
Shell components and description
The generic components of a shell : the knowledge acquisition, the knowledge
Base, the reasoning, the explanation and the user interface are shown below. The
knowledge base and reasoning engine are the core components.
All these components are described as.
Knowledge Base
A store of factual and heuristic knowledge. Expert system tool provides one or
more knowledge representation schemes for expressing knowledge about the
application domain. Some tools use both Frames (objects) and IF-THEN rules. In
PROLOG the knowledge is represented as logical statements.
Reasoning Engine
Inference mechanisms for manipulating the symbolic information and
knowledge in the knowledge base form a line of reasoning in solving a
problem. The inference mechanism can range from simple modus ponens
backward chaining of IF-THEN rules to Case-Based reasoning.
Knowledge Acquisition subsystem
A subsystem to help experts in build knowledge bases. However, collecting
knowledge, needed to solve problems and build the knowledge base, is
the biggest bottleneck in building expert systems.
Explanation subsystem
A subsystem that explains the system's actions. The explanation can range
from how the final or intermediate solutions were arrived at justifying the
need for additional data.
User Interface
A means of communication with the user. The user interface is generally
not a part of the expert system technology. It was not given much
attention in the past. However, the user interface can make a critical
difference in the perceived utility of an Expert system.
Knowledge acquisition