1 / 28

Rule-Based Expert Systems

Rule-Based Expert Systems. 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. Can A Computer Do What an Expert Does?.

jace
Télécharger la présentation

Rule-Based Expert Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  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 1980’s 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 didn’t 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 <antecedent> then <consequent> • Antecedents can be combined using logical operators • If <a> and <b> or <c> then <consequent> • 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 Y Z 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 can’t fly then it is not a bird • What if has feathers, but can’t 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.

More Related