models for inexact reasoning overview of rule based
play

Models for Inexact Reasoning Overview of Rule Based Systems y - PowerPoint PPT Presentation

Models for Inexact Reasoning Overview of Rule Based Systems y Miguel Garca Remesal Department of Artificial Intelligence mgremesal@fi.upm.es Rules and Productions Rules and Productions Production synonym for rule


  1. Models for Inexact Reasoning Overview of Rule ‐ Based Systems y Miguel García Remesal Department of Artificial Intelligence mgremesal@fi.upm.es

  2. Rules and ‘Productions’ Rules and Productions • ‘Production’ – synonym for rule • English regular verbs – regular_verb + (past) � verb + ‘ed’ ) � l b ( b ‘ d’ • Pig ‐ Latin productions – consonant string → string + consonant + ‘ay’ – vowel + string → string + ay

  3. Work through this production system to decode the result • z → l l u → p p → h lw → llo q → r v → w r → e • uqzv → ??

  4. Rules Rules • Form – IF antecedent THEN conclusion – IF condition THEN action – IF antecedent THEN goal • Interpreters – Backward chaining Backward chaining • Trigger on conclusion/goal – Forward chaining • Trigger on antecedent/condition

  5. Forward and Backward Chaining Forward and Backward Chaining • Rules – r1: IF may_rain THEN should_take_umbrella – r2: IF cloudy THEN may_rain • Questions – “Should I take an umbrella?” – “What should I do if it is cloudy?” • How did you answer the questions? H did h i ? – Which part of the rule did you look for? (‘match’)

  6. B Backward Chaining k d Ch i i • Rules – R1: IF may_rain THEN should_take_umbrella – R2: IF cloudy THEN may_rain • “Should I take an umbrella?” – “Do the rules indicate I should take an umbrella? • Is there a rule about “taking umbrellas”? – R1: goal: should_take_umbrella • How can I prove that goal? H I th t l? – What has to be true for r1 to hold? » may_rain is the antecedent of r1 • Can I prove that it may rain? • Can I prove that it may_rain? – R2: goal: may_rain • How can I prove that goal2 – What has to be true for r2 to hold What has to be true for r2 to hold » cloudy is the antecedent of r2 • How can I prove ‘cloudy’?

  7. Backward Chaining Goal 1 → Goal 2 _ _ soning Goal 2 → Goal 3 Goa _ → Goa _3 ion of reas rules Goal 3 → Goal 4 _ _ Direct Goal 4 → Goal 5 _ _ Question

  8. B Backward Chaining k d Ch i i • Rules – R1: IF may_rain THEN should_take_umbrella – R2: IF cloudy THEN may_rain – R3: IF may_be_intense_sun THEN should_take_umbrella – R4: IF summer AND in_tropics THEN may_be_intense_sun _ p y_ _ _ • “Should I take an umbrella?” – “Do the rules indicate I should take an umbrella? • Is there are rule about “taking umbrellas”? Is there are rule about taking umbrellas ? – R1: goal: should_take_umbrella • What is antecedent for r1? – R1:antecedent may rain R1:antecedent may_rain • Can I prove that it may_rain? – R2: goal: may_rain • How can I prove may rain How can I prove may_rain – R2:antecedent: cloudy • BUT NOT CLOUDY!

  9. B Backward Chaining: Backtracking k d Ch i i B kt ki • Rules – R1: IF may rain THEN should take umbrella y_ _ _ – R2: IF cloudy THEN may_rain – R3: IF may_be_intense_sun THEN should_take_umbrella – R4: IF summer AND in tropics THEN may be intense sun R4: IF summer AND in_tropics THEN may_be_intense_sun • “Should I take an umbrella?” “Sh ld I t k b ll ?” • Are there any other rules about umbrellas? – R3: goal: should_take_umbrella R3 l h ld t k b ll • What is antecedent of R3? – R3:antecedent: summer AND in tropics R3:antecedent: summer AND in tropics

  10. Backwards Chaining with Backtracking Goal_1 → Goal_2 Goal_8 → Goal 7 _ soning Goal_2 → Goal_3 Goal 7 → Goal 6 _ _ ion of reas rules fail Goal_3 → Goal_4 Goal_6 → Goal_4 Direct Goal_4 → Goal_5 Question Question

  11. Backwards Chaining Systems Backwards Chaining Systems • MYCIN MYCIN – ‘The original expert system’ • Diagnosis of acute infections (Meningitis, blood infections) g ( g , ) – Still a good example of how it works • Also used – uncertain reasoning uncertain reasoning – Explanation » ‘How’ did you prove that? » ‘Why’ are you asking me that? » Why are you asking me that? • Never used ‘for real’ • PROLOG – One of the two standard AI languages • A simple backwards chaining engine with backtracking A simple backwards chaining engine with backtracking

  12. Backwards Chaining Engines usually written ‘backwards’ • Goal ← Antecedent Goal ← Antecedent – Umbrella ← may_rain – may_rain ← cloudy • Prolog ‘Edinburgh’ notation – umbrella : ‐ may_rain. – may_rain : ‐ cloudy. NB upper and lower case very important in Prolog

  13. Forward Chaining Forward Chaining • Rules R l – R1: IF may_rain THEN should_take_umbrella – R2: IF cloudy THEN may_rain • “What should I do if it is cloudy?” – “What do the rules indicate I should do if it is cloudy?” What do the rules indicate I should do if it is cloudy? • Is there a rule that applies when it is cloudy? – R2: antecedent: cloudy • What do I conclude from that antecedent ‘cloudy’ • What do I conclude from that antecedent, cloudy – R2: conclusion: may_rain • Is there a rule that applies when it may_rain? – R1: antecedent: may_rain • What do I conclude from that antecedent: ‘may_rain’ – R1: conclusion: should_take_umbrella

  14. Forward chaining Forward chaining ‘Production Systems’ Production Systems – Vocabulary used differently on west and east coast of US for many years • On east coast, ‘production systems’ means forward , p y chaining • On west coast, ‘production systems’ just means rule based systems – Usually, and in this course, ‘Production System’ means ‘forward chaining’

  15. Forward Chaining Forward Chaining Fact_1 Fact 1 → Fact 2 _ _ Directi Fact 2 → Fact 3 act_ → act _3 ion of reas rules Fact 3 → Fact 4 _ _ soning Fact 4 → Fact 5 _ _ Action=Fact_5

  16. Production system interpreter Production system interpreter • Objectives: – Fire rules as the facts come in to the knowledge base – Never fire a rule unless its conditions are satisfied – Fire every rule whose conditions are satisfied • Are these objectives consistent • Are these objectives consistent. – Forward chaining rules sometimes called ‘demons’ • From a system called “Pandemonium” • From a system called Pandemonium – How can they be made consistent?

  17. Production System Strategy Production System Strategy • All rules tested at each cycle All rules tested at each cycle • Only one rule fires at a time

  18. Production System Cycle Production System Cycle 1 Test all rules 2 Put all rules satisfied into the ‘conflict set’ 3 Choose one rule from the conflict set 3 Choose one rule from the conflict set 4 Fire the rule 5 Update the dynamic database 6 Repeat until goal reached or no more rules 6 Repeat until goal reached or no more rules satisfied

  19. ConflictResolution R1: IF sky=cloudy THEN expect=rain k l d R2: IF expect=?X THEN weather=?X R3: IF sky=cloudy AND temperature=freezing R3: IF sky=cloudy AND temperature=freezing THEN expect=snow R4: IF weather=rain THEN termperature=above_freezing What happens if ‘sky=cloudy’? What happens if sky cloudy ? What happens if ‘sky=cloudy and ‘temperature=freezing’?

  20. Possible Conflict Resolution Strategies Possible Conflict Resolution Strategies • Specificity • Priority Priority • Lexical Ordering • Source file ordering • Explicit rules for conflict resolution Explicit rules for conflict resolution – a rule based system within a rule based system

  21. Basic Production System Architecture Basic Production System Architecture Dynamic Memory y y execute tickle Rule Execution Rule Store Select check satisfaction (resolve conflicts) Conflict Set

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend