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

Lec3-Rule-based Expert Knowledge Basesystems

The document discusses a lecture on rule-based expert systems, including defining rules as a knowledge representation technique, the main players in an expert system development team, the structure of a rule-based expert system, and characteristics like forward and backward chaining.

Uploaded by

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

Lec3-Rule-based Expert Knowledge Basesystems

The document discusses a lecture on rule-based expert systems, including defining rules as a knowledge representation technique, the main players in an expert system development team, the structure of a rule-based expert system, and characteristics like forward and backward chaining.

Uploaded by

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

KBAI-Knowledge

Lecture 4
Rule-based expert systems

Dr. Rasha Abdelkawy

3/23/2024 1
Lecture Agenda

1. Recall: What is knowledge?


2. Rules as a knowledge representation technique
3. The main players in the development team
4. Structure of a rule-based expert system
5. Characteristics of an expert system
6. Forward chaining and backward chaining
7. Conflict resolution

3/23/2024 2
1. Knowledge

❑ Knowledge is a theoretical or practical understanding of a subject or a domain.


Knowledge is also the sum of what is currently known, and apparently, knowledge is
power.

❑ Those who possess knowledge are called experts.

❑ Anyone can be considered a domain expert if he or she has deep knowledge (of
both facts and rules) and strong practical experience in a particular domain. The
area of the domain may be limited. In general, an expert is a skilful person who
can do things other people cannot.
1. Knowledge

❑ The human mental process is internal, and it is too complex to be represented


as an algorithm. However, most experts are capable of expressing their
knowledge in the form of rules for problem-solving.

IF the ‘traffic light’ is green


THEN the action is go

IF the ‘traffic light’ is red


THEN the action is stop
2. Rules as a knowledge representation technique

❑ The term rule in AI, which is the most commonly used type of knowledge representation,
can be defined as an IF-THEN structure that relates given information or facts in the IF
part to some action in the THEN part.
❑ A rule provides some description of how to solve a problem.
❑ Rules are relatively easy to create and understand.
❑ Any rule consists of two parts: the IF part, called the antecedent (premise or condition)
and the THEN part called the consequent (conclusion or action).

IF antecedent
THEN consequent

3/23/2024 5
2. Rules as a knowledge representation technique

❑ A rule can have multiple antecedents joined by the keywords AND (conjunction), OR
(disjunction) or a combination of both.

IF antecedent 1 IF antecedent 1
AND antecedent
.. 2 OR antecedent 2 .
. ..
AND antecedent n OR antecedent n
THEN consequent THEN consequent

❑ The antecedent of a rule incorporates two parts: an object (linguistic object) and its value. The object
and its value are linked by an operator.
❑ The operator identifies the object and assigns the value. Operators such as is, are, is not, are not are
used to assign a symbolic value to a linguistic object.
2. Rules as a knowledge representation technique

❑ Expert systems can also use mathematical operators to define an object as numerical and
assign it to the numerical value.

IF ‘ age of the customer’ < 18


AND ‘ cash withdrawal’ > 1000
THEN ‘signature of the parent’ is required

❑ Rules can represent relations, recommendations, directives, strategies, and


heuristics:
1. Relation

IF the ‘fuel tank’ is empty


THEN the car is dead

3/23/2024 7
2. Rules as a knowledge representation technique
2. Recommendation

IF the season is autumn


AND the sky is cloudy
AND the forecast is drizzle
THEN the advice is ‘take an umbrella’

3. Directive

IF the car is dead


AND the ‘fuel tank’ is empty
THEN the action is ‘refuel the car’

3/23/2024 8
2. Rules as a knowledge representation technique

4. Strategy

IF the car is dead


THEN the action is ‘check the fuel tank’; step1 is complete

IF step_1 is complete AND the ‘fuel tank’ is full


THEN the action is ‘check the battery’; step2 is complete

5. Heuristic

IF the spill is liquid


AND the ‘spill pH’ < 6
AND the ‘spill smell’ is vinegar
THEN the ‘spill material’ is ‘acetic acid’
3/23/2024 9
3. The main players in the development team
Expert System
1. Domain Expert Development Team
❑ The domain expert is a knowledgeable and Project Manager
skilled person capable of solving problems in
a specific area or domain.
❑ This person has the greatest expertise in a Domain Expert Knowledge Engineer Programmer
given domain.
❑ This expertise is to be captured in the
expert system.
❑ Therefore, the expert must be able to Expert System
communicate his or her knowledge, be
willing to participate in the expert system
development and commit a substantial End-user
amount of time to the project.
The success of their expert system entirely
❑ The domain expert is the most important
depends on how well the members work
player in the expert system development
together
team.
3/23/2024 10
3. The main players in the development team

2. Knowledge Engineer
❑The knowledge engineer is capable of designing, building, and testing an expert system.
❑He or she interviews the domain expert to find out how a particular problem is solved.
❑The knowledge engineer establishes what reasoning methods the expert uses to handle facts
and rules and decides how to represent them in the expert system.
❑The knowledge engineer then chooses some development software or an expert system shell or
looks at programming languages for encoding the knowledge.
❑ The knowledge engineer is responsible for testing, revising, and integrating the expert system
into the workplace.
3. Project Manager
❑The project manager is the leader of the expert system development team, responsible for
keeping the project on track.
❑He or she makes sure that all deliverables and milestones are met and interacts with the
expert, knowledge engineer, programmer, and end-user.
3. The main players in the development team

❑ Programmer
❑ The programmer is the person responsible for the actual programming, describing the
domain knowledge in terms that a computer can understand.
❑ The programmer needs to have skills in symbolic programming in such AI and also some
experience in the application of different types of expert system shells.
❑ In addition, the programmer should know conventional programming languages.

❑ End User
❑ The end-user, often called just the user, is a person who uses the expert system when it is
developed.
❑ The user must not only be confident in the expert system performance but also feel
comfortable using it.
❑ Therefore, the design of the user interface of the expert system is also vital for the
project’s success; the end-user’s contribution here can be crucial.
3/23/2024 12
4. Structure of a rule-based expert system
❑ In the early seventies, Newell and
Simon from Carnegie-Mellon University Long-term Memory Short-term Memory
proposed a production system
model, the foundation of the modern
Production Rule Fact
rule-based expert systems.
❑ The production model is based on the
idea that humans solve problems by REASONING
applying their knowledge (expressed
as production rules) to a given
problem represented by problem-
specific information. Conclusion
❑ The production rules are stored in the
long-term memory and the problem-
specific information or facts in the Production system model
short-term memory.

3/23/2024 13
4. Structure of a rule-based expert system

❑ The knowledge base contains the domain Knowledge Base Database

knowledge useful for problem-solving. Rule: IF-THEN Fact


✓ In a rule-based expert system, the
knowledge is represented as a set of Inference Engine

rules.
✓ Each rule specifies a relation, Explanation Facilities
recommendation, directive, strategy, or
heuristic and has the IF (condition) THEN
User Interface
(action) structure. When the condition
part of a rule is satisfied, the rule is said
to fire and the action part is executed. User

❑ The database includes a set of facts used to


match against the IF (condition) parts of rules
stored in the knowledge base. The basic structure of a rule-based expert system

3/23/2024 14
4. Structure of a rule-based expert system
❑ The inference engine carries out the
reasoning whereby the expert system reaches External
Database External Program
a solution. It links the rules given in the
knowledge base with the facts provided in the Expert System
Knowledge Base Database
database.
Rule: IF-THEN Fact
❑ The explanation facilities enable the user to
ask the expert system how a particular Inference Engine

conclusion is reached and why a specific fact is


needed. An expert system must be able to Explanation Facilities

explain its reasoning and justify its advice,


analysis, or conclusion. User Interface Developer
Interface

❑ The user interface is the means of


User
communication between a user seeking a Knowledge Engineer

solution to the problem and an expert system. Expert

The complete structure of a rule-based expert system

3/23/2024 15
5. Characteristics of an expert system

❑ An expert system is built to perform at a human expert level in a narrow, specialized domain.
Thus, the most important characteristic of an expert system is its high-quality performance. No
matter how fast the system can solve a problem, the user will not be satisfied if the result is wrong.
❑ On the other hand, the speed of reaching a solution is very important. Even the most accurate
decision or diagnosis may not be useful if it is too late to apply, for instance, in an emergency, when
a patient dies or a nuclear power plant explodes.
❑ Expert systems apply heuristics to guide the reasoning and thus reduce the search area for a
solution.
❑ A unique feature of an expert system is its explanation capability. It enables the expert system to
review its own reasoning and explain its decisions.
❑ Expert systems employ symbolic reasoning when solving a problem. Symbols are used to
represent different types of knowledge such as facts, concepts, and rules.

3/23/2024 16
Can expert systems make mistakes?
❑ Can expert systems make mistakes Even a brilliant expert is only a human and thus can make
mistakes. This suggests that an expert system built to perform at a human expert level also
should be allowed to make mistakes. But we still trust experts, even though we recognize that
their judgments are sometimes wrong. Likewise, at least in most cases, we can rely on solutions
provided by expert systems, but mistakes are possible and we should be aware of this.
❑ In expert systems, knowledge is separated from its processing (the knowledge base and the
inference engine are split up).
❑ A conventional program is a mixture of knowledge and the control structure to process this
knowledge.
❑ This mixing leads to difficulties in understanding and reviewing the program code, as any change
to the code affects both the knowledge and its processing.
❑ When an expert system shell is used, a knowledge engineer or an expert simply enters rules
in the knowledge base. Each new rule adds some new knowledge and makes the expert system
smarter.
5. Comparison of expert systems with
conventional systems and human experts
Human Experts Expert Systems Conventional Programs
Use knowledge in the Process knowledge Process data and use
form of rules of thumb or expressed in the form of algorithms, a series of
heuristics to solve rules and use symbolic well-defined operations,
problems in a narrow reasoning to solve to solve general numerical
domain. problems in a narrow problems.
domain.
In a human brain, Provide a clear Do not separate
knowledge exists in a separation of knowledge knowledge from the
compiled form. from its processing. control structure to
process this knowledge.
Capable of explaining a Trace the rules fired Do not explain how a
line of reasoning and during a problem-solving particular result was
providing the details. session and explain how a obtained and why input
particular conclusion was data was needed.
reached and why specific
data was needed.

3/23/2024 18
5. Comparison of expert systems with
conventional systems and human experts
Human Experts Expert Systems Conventional Programs
Use inexact reasoning and Permit inexact reasoning Work only on problems
can deal with incomplete, and can deal with where data is complete
uncertain and fuzzy incomplete, uncertain and and exact.
information. fuzzy data.
Can make mistakes when Can make mistakes when Provide no solution at all,
information is incomplete data is incomplete or or a wrong one, when data
or fuzzy. fuzzy. is incomplete or fuzzy.
Enhance the quality of Enhance the quality of Enhance the quality of
problem solving via years problem solving by problem solving by
of learning and practical adding new rules or changing the program
training. This process is adjusting old ones in the code, which affects both
slow, inefficient and knowledge base. When the knowledge and its
expensive. new knowledge is processing, making
acquired, changes are changes difficult.
easy to accomplish.

3/23/2024 19
6. Forward chaining and backward chaining
❑ In a rule-based expert system, the domain
knowledge is represented by a set of IF-THEN Database
production rules, and data is represented by a Fact: A is x
set of facts about the current situation. Fact: B is y
❑ The inference engine compares each rule
stored in the knowledge base with facts
contained in the database. Match Fire
❑ When the IF (condition) part of the rule
matches a fact, the rule is fired and its THEN
Knowledge Base
(action) part is executed.
❑ The matching of the rule IF parts to the facts
Rule: IF A is x THEN is y
produces inference chains. The inference
chain indicates how an expert system
applies the rules to reach a conclusion.
Inference engine cycles via a match-fire procedure

3/23/2024 20
6. Forward chaining and backward chaining

Rule 1: IF Y is true
AND D is true
THEN Z is true
A X
Rule 2: IF X is true
AND B is true
B Y
AND E is true
Z
THEN Y is true E D
Rule 3: IF A is true
THEN X is true
An example of an inference chain
3/23/2024 21
6. Forward chaining and backward chaining
Forward chaining
I. Forward chaining is the data- Database Database Database Database
driven reasoning.
A B C D E A B C D E A B C D E A B C D E
II. The reasoning starts from the
known data and proceeds X X L X L Y X L Y Z
forward with that data.
III. Each time only the topmost rule
Match Fire Match Fire Match Fire Match Fire
is executed.
Knowledge Base Knowledge Base Knowledge Base Knowledge Base
IV. When fired, the rule adds a new Y&D Z Y&D Z Y&D Z Y&D Z
fact in the database. X&B&E Y X&B&E Y X&B&E Y X&B&E Y
V. Any rule can be executed only A X A X A X A X
once. C L C L C L C L
L&M N L&M N L&M N L&M N
VI. The match-fire cycle stops when
no further rules can be fired.
Cycle 1 Cycle 2 Cycle 3

3/23/2024 22
6. Forward chaining and backward chaining
❑ Forward chaining is a technique for gathering information and then inferring from it whatever
can be inferred.
❑ However, in forward chaining, many rules may be executed that have nothing to do with the
established goal. Therefore, if our goal is to infer only one particular fact, the forward chaining
inference technique would not be efficient.

❑ Backward chaining
➢ Backward chaining is the goal-driven reasoning. In backward chaining, an expert system has
the goal (a hypothetical solution), and the inference engine attempts to find the evidence
to prove it. First, the knowledge base is searched to find rules that might have the desired
solution.
➢ Such rules must have the goal in their THEN (action) parts. If such a rule is found and its IF
(condition) part matches data in the database, then the rule is fired and the goal is proved.
However, this is rarely the case.
6. Forward chaining and backward chaining
Pass 1 Pass 2 Pass 3
Database Database Database
❑ Backward chaining A B C D E A B C D E A B C D E

? ?

❑ Thus the inference engine puts Z Y X

aside the rule it is working with Knowledge Base


Y&D Z
Knowledge Base
Y&D Z
Knowledge
Y&D
Base
Z

(the rule is said to stack) and X&B&E


A
Y
X
X&B&E
A
Y
X
X&B&E
A
Y
X

sets up a new goal, a subgoal, to L&M


C L
N L&M
C L
N L&M
C L
N

prove the IF part of this rule. Goal: Z Sub-Goal: Y Sub-Goal: X

❑ Then the knowledge base is Pass 4


Database
Pass 5
Database
Pass 6
Database

searched again for rules that can A B C D E A B C D E A B C D E

prove the subgoal. The inference X X Y X Y Z

engine repeats the process of Match Fire Match Fire Match Fire
stacking the rules until no rules Knowledge Base
Y&D Z
Knowledge Base
Y&D Z
Knowledge Base
Y&D Z
are found in the knowledge base X&B&E
A
Y
X
X&B&E
A
Y
X
X&B&E
A
Y
X
to prove the current subgoal. L&M
C L
N L&M
C L
N L&M
C L
N
Sub-Goal: X Sub-Goal: Y Goal: Z

3/23/2024 24
6. How do we choose between forward and
backward chaining?
❑ If an expert first needs to gather some information and then tries to
infer from it whatever can be inferred, choose the forward chaining
inference engine.

❑ However, if your expert begins with a hypothetical solution and then


attempts to find facts to prove it, choose the backward chaining
inference engine.
7. Conflict resolution
➢ Earlier we considered two simple rules for crossing a road. Let us now add a third rule:
❑ Rule 1:
IF the ‘traffic light’ is green THEN the action is go
❑ Rule 2:
IF the ‘traffic light’ is red THEN the action is stop
❑ Rule 3:
IF the ‘traffic light’ is red THEN the action is go

➢ We have two rules, Rule 2 and Rule 3, with the same IF part.
➢ Thus both of them can be set to fire when the condition part is satisfied.
➢ These rules represent a conflict set.
➢ The inference engine must determine which rule to fire from such a set. A method for choosing a rule
to fire when more than one rule can be fired in a given cycle is called conflict resolution.
7. Conflict resolution
➢ In forward chaining, BOTH rules would be fired.

➢ Rule 2 is fired first as the topmost one, and as a result, its THEN part is
executed and linguistic object action obtains value stop.

➢ However, Rule 3 is also fired because the condition part of this rule matches the
fact ‘traffic light’ is red, which is still in the database.

➢ As a consequence, object action takes new value go


7. Conflict resolution
Methods used for conflict resolution
❑ Fire the rule with the highest priority.
✓ In simple applications, the priority can be established by placing the rules in an appropriate order
in the knowledge base.
✓ Usually this strategy works well for expert systems with around 100 rules.
❑ Fire the most specific rule.
✓ This method is also known as the longest-matching strategy.
✓ It is based on the assumption that a specific rule processes more information than a general one.
❑ Fire the rule that uses the data most recently entered in the database.
✓ This method relies on time tags attached to each fact in the database.
✓ In the conflict set, the expert system first fires the rule whose antecedent uses the data most
recently added to the database.
Metaknowledge
❑ Metaknowledge can be simply defined as knowledge about knowledge.
❑ Metaknowledge is knowledge about the use and control of domain knowledge in an expert system.
❑ In rule-based expert systems, metaknowledge is represented by metarules.
❑ A metarule determines a strategy for the use of task-specific rules in the expert system.

-For Example:
Metarule
Rules supplied by experts have higher priorities than rules supplied by juniors.

Metarule
Rules governing the rescue of human lives have higher priorities than rules concerned with clearing
overloads on power system equipment.
Advantages of rule-based expert systems
❑ Natural knowledge representation.
✓ An expert usually explains the problem-solving procedure with such expressions as this: “In
such-and-such situation, I do so-and-so”.
✓ These expressions can be represented quite naturally as IF-THEN production rules.
❑ Uniform structure.
✓ Production rules have the uniform IF-THEN structure.
✓ Each rule is an independent piece of knowledge.
✓ The very syntax of production rules enables them to be self-documented.
❑ Separation of knowledge from its processing.
✓ The structure of a rule-based expert system provides an effective separation of the
knowledge base from the inference engine.
✓ This makes it possible to develop different applications using the same expert system shell.
❑ Dealing with incomplete and uncertain knowledge. Most rule-based expert systems are
capable of representing and reasoning with incomplete and uncertain knowledge.
Disadvantages of rule-based expert systems

❑ Opaque relations between rules.


✓ Although the individual production rules are relatively simple and self-documented, their logical
interactions within the large set of rules may be opaque.
✓ Rule-based systems make it difficult to observe how individual rules serve the overall strategy.
❑ Ineffective search strategy.
✓ The inference engine applies an exhaustive search through all the production rules during each
cycle.
✓ Expert systems with a large set of rules (over 100 rules) can be slow, and thus large rule-based
systems can be unsuitable for real-time applications.
❑ Inability to learn.
✓ In general, rule-based expert systems cannot learn from the experience.
✓ Unlike a human expert, who knows when to “break the rules”, an expert system cannot
automatically modify its knowledge base, adjust existing rules or add new ones.
✓ The knowledge engineer is still responsible for revising and maintaining the system.
End of Lecture

End of Lecture

3/23/2024 32

You might also like