Rule-Based Expert Systems - PowerPoint PPT Presentation

About This Presentation
Title:

Rule-Based Expert Systems

Description:

Rule-Based Expert Systems Expert Systems Acknowledge that computers do not posses general knowledge (common sense) Attempt to train computer in a limited domain ... – PowerPoint PPT presentation

Number of Views:219
Avg rating:3.0/5.0
Slides: 29
Provided by: Khoa8
Category:
Tags: based | expert | rule | systems

less

Transcript and Presenter's Notes

Title: Rule-Based Expert Systems


1
Rule-Based Expert Systems
2
Expert Systems
  • Acknowledge that computers do not posses general
    knowledge (common sense)
  • Attempt to train computer in a limited domain
  • Experts have deep, often complex knowledge, but
    generally for a limited domain

3
Can A Computer Do What an Expert Does?
  • Limited domain
  • The system has a finite, and relatively small
    number of things it needs to know about.
  • The processing might be complex, but computers
    are good at that.
  • Can the expert knowledge be extracted?
  • Knowledge Engineers do the extracting
  • Experts provide their knowledge
  • Programmers encoded the knowledge into an expert
    system.

4
Some History
  • In the early to mid 1980s the desire to build
    expert systems was very high in the US and
    elsewhere.
  • Japanese 5th generation computing project
  • AI researchers aggressively recruited by industry
  • Expert systems were considered by many to be the
    next big thing.

5
Overstatement of Capabilities
  • The results of several expert systems were
    oversold.
  • Prospector didnt really discover millions of
    dollars worth of Molybdenum.
  • The originators of the system never made this
    claim, but despite their efforts to stop it, the
    story is repeated to this day.

6
Frequently Cited Examples of Expert Systems
  • MYCIN
  • Infectious blood disease diagnosis
  • Dendral
  • Analyzed mass-spectra (chemistry)
  • PROSPECTOR
  • Geological analysis
  • R1
  • Configure a VAX computer

7
Expert knowledge can be difficult to extract
  • Experts often do not really know how they do
    things themselves. Although the expert can
    perform the tasks, he/she does not necessarily
    have access to the mechanism used.
  • Experts have reasons to be uncooperative in the
    process of disseminating their expertise.
  • Experts often disagree on both processes and
    conclusions.
  • The process might require judgment that is not
    easily codified.

8
Rule-based Expert Systems
  • Sets of IF-THEN rules are established to codify
    expert knowledge.
  • If ltantecedentgt then ltconsequentgt
  • Antecedents can be combined using logical
    operators
  • If ltagt and ltbgt or ltcgt then ltconsequentgt
  • IF 3 enemy stones in a row AND
  • NOT 3 friendly stones in a row
  • Then place a stone in the row with 3 enemy
    stones.

9
Knowledge Engineers
  • Tasked with working with the expert to extract
    expertise and codify in a set of rules.
  • Has training in the development of expert
    systems, but not necessarily in the application
    domain.
  • Know the capabilities of the technology and knows
    how to apply it.

10
Expert System Shells
  • Separate the mechanisms for making inference from
    the rule base
  • Facilitate the entry of rules by non-programmers
  • Provide reuse for what would otherwise be
    redundant code across expert systems

11
Expert System Components
  • Inference Engine
  • Forward or Backward-chaining
  • Conflict resolution algorithms
  • Rule-base
  • IF-THEN rules
  • Database
  • Current state on which IF-THEN rules are applied.
  • Explanation Facilities
  • An important advantage rule-based expert systems
    hold over other types of AI

12
Inference Engines
  • Forward-chaining
  • Submit current data to all rules
  • Rules make conclusions, which in turn, generate
    new data
  • Inference Chains result from initial data and
    the data generated in conclusions.
  • Backward-chaining
  • Try to prove a conclusion by working backwards
    from ways to prove it.

13
Forward-chaining Example (A,B,E, and D are given)
  • If Y and D then Z
  • If X and B and E then Y
  • If A then X
  • If C then L
  • If L and M then N

A
X
B
Y
Z
L
C
D
E
Example from Negnevitsky
14
Backward Chaining
  • Prolog uses backward chaining
  • Work backward from the goal.
  • Check rules that can provided the desired goal.

15
Backward Chaining Example
  • If Y and D then Z
  • If X and B and E then Y
  • If A then X
  • If C then L
  • If L and M then N

A
X
B
Z
Y
B
C
E
D
D
E
16
Forward or Backward Chaining?
  • What do experts use?
  • Are we trying to prove a particular hypothesis?
  • Backward chaining
  • Are we trying to find all possible conclusions?
  • Forward chaining
  • What does the rule set look like?
  • Could be either one or a combination of both.

17
Conflict Resolution
  • What happens when two rules provide conflicting
    conclusions?
  • If it has feathers then it is a bird
  • If it cant fly then it is not a bird
  • What if has feathers, but cant fly?

18
Conflict Resolution Methods
  • Use rule-order as an implied priority
  • The first rule to provide an answer is used.
  • Assign a priority to each rule, the rule with the
    higher priority is sustained.
  • Longest Matching Strategy uses the rule with the
    most specific information.
  • If it cannot fly and has feathers then it is a
    bird.
  • Certainty-based conflict resolution
  • Measures of certainty are provided for data and
    rules. Most certain rule is sustained.

19
Frame-based Expert Systems
  • Frame
  • Marvin Minsky (1975)
  • Frame-based Expert Systems utilize frames to
    encapsulate data and methods about an entity.
  • Frames are similar to objects, but the data types
    and processing methods are quite different.

20
Frames
  • A frame is a data structure with typical
    knowledge about a particular object or concept
    Negnevitsky.
  • Frame is a collection of attributes called
    slots
  • Example slots for a truck
  • Engine size
  • Number of wheels
  • Slots consists of attribute/value pairs called
    facets
  • Value/18
  • Default Value/4
  • Range/3-18
  • User Query/Enter the number of wheels

21
Demons
  • Slots or facets can contain procedures that are
    executed with the data is accessed or changed
  • When_Changed demon is executed when new
    information is placed in a slot.
  • Might include forward chaining or backward
    chaining rules
  • When_Needed demon is executed when information is
    read from a slot
  • Might include code to read sensors or try to
    prove a goal

22
Inheritance
  • Frames can inherit from other frames.
  • Frame implicitly contains all the slots contained
    in the inherited frame unless the frame overrides
    the slot with its own definition.
  • Inheritance is established with the IS-A
    relationship
  • In frames, inheritance is principally used to
    provide default values, rather than structure and
    methods.

23
Other Frame Relationships
  • Aggregation (a-part-of)
  • An engine is a-part-of a car
  • A spark plug is a-part-of an engine
  • Association (Other semantic relationships)
  • Examples
  • Ownership (computer has-owner Joe)
  • Uses (dentist uses drill)
  • Location (Joe is-near theDesk)

24
No Limits on Relationships
  • Frame can employ multiple inheritance
  • Frame can have any number of relationships
  • Relationships can be of any type that is useful.

25
Interactions of Frames and Rules
  • Different frame-based systems use different
    mechanisms.
  • Rules are often invoked by demons. Some systems
    allow different rule sets to be applied to
    different frames

26
Why Use Frames?
  • In large systems, frames can provide the system
    the capability to find relevant information
    quickly.
  • Making inferences from the most relevant
    information can provide greater efficiency and
    allow searches to be constrained.
  • Relationships between frames can be provided at a
    relatively low cost.

27
Advantages of Expert Systems
  • Provide an explanation capability
  • What rules fired to provide the conclusion?
  • Why other conclusions were not made.
  • For simple domains, the rule-base might be simple
    and easy to verify and validate.
  • The system might use a method similar to what the
    expert uses.
  • Expert system shells provide a means to build
    simple systems without programming

28
Disadvantages of Expert Systems
  • When the number of rules is large, the effect of
    adding new rules can be difficult to assess.
  • Expert knowledge is not usually easily codified
    into rules.
  • Expert often lack access to their own analysis
    mechanisms.
  • Validation/Verification of large systems is very
    difficult.
  • Track record does not seem to contain many
    successes. Relatively high-risk to implement.
Write a Comment
User Comments (0)
About PowerShow.com