430 likes | 773 Views
Backward-Chaining Rule-Based Systems. Provided: Sharif Students Modified: Vali Derhami. Chapter 7 overview:. Introduction Medical consultation systems Example 1:Meningitis Diagnosis Expert System Example 2:Meningitis Prescription Expert System
E N D
Backward-Chaining Rule-Based Systems Provided: Sharif Students Modified: Vali Derhami
Chapter 7 overview: • Introduction • Medical consultation systems • Example 1:Meningitis Diagnosis Expert System • Example 2:Meningitis Prescription Expert System • Example 3:Alternative Prescription Expert System • Automobile Diagnostic System • Example 4:Automobile Diagnostic via a Blackboard • Summary
Introduction • The principle objective of backward chaining is to prove some goal or hypothesis • The process begins by collecting GOAL RULES • Goal Rules contain the goal proven in their THEN part • The premise of the goal rules may be supported by other rules, so they are set as Sub-Goals • The inference engine searches through the system’s rules in a recursive fashion.
Backward Chaining inference engine will reach some premise that is not supported by any of the system’s rules (a Primitive) Ask User • The answer is placed in the current memory • The process continue until all goals and sub-goals are searched memory contains all information provided by user and inferred by rules.
Medical Consultation Systems • Like MYCIN , performs diagnosis for infectious blood diseases • Unlike MYCIN , doesn’t identify organ but rather the nature of the infection • 3 different expert systems: Diagnosis(تشخیص), Prescription (تجویز), Prescription Changes
Design Suggestion • Divide Complex problems into smaller tasks and design system for each task.
Example 1: Megningitis Diagnosis Expert System • The system has only one goal : Prove or disprove “Infection (عفونت یا مرض)is meningitis” • One Goal rule : RULE 1 This can be proven if the user already knows that the patient has meningitis or the system can infer it. • RULE 2,3,4 : search the test results • RULE 5 : searches the area of patient symptoms
Medical Diagnosis Example Session • Begins with empty working memory • STEP 1: Find rules with hypothesis in “THEN” part • RULE 1 • STEP 2: see if first premise in RULE 1 is listed in working memory • NO • STEP 3: see if this premise exists in “THEN” part of any rule • NO
STEP 4: This premise is a primitive • Question : “Do you know if patient has Meningitis ?” • Answer : NO • Working Memory: Patient known to have Meningitis - FALSE • STEP 5: look at second premise in RULE 1 and see if it’s in working memory • NO • STEP 6: see if this premise exists in “THEN” part of any rule • RULE 2 • نحوه تولید سوال: خود سیستم سوال را تولید کند • هر مقدمی که میخواهد سوال شود قبلا سوالش اضافه شده باشد
STEP 7:see if first premise in RULE 2 is listed in working memory • NO • STEP 8:see if this premise exists in “THEN” part of any rule • RULE 3 • STEP 9: Q: Were test run? USER: YES • STEP 10: Q: Were cultures seen? USER:YES • STEP 11: Q: The appearance of the culture is coccus? USER: WHY • System: This will aid in determining if cultures look like Meningitis
STEP 11: Q: The appearance of the culture is coccus (نوعی باکتری )? USER: WHY • System: This will aid in determining if cultures look like meningitis RULE 4 • STEP 12:USER : WHY 4.0 • System: This will determining if “we suspect meningitis from test results” RULE 3 • STEP 13: • System: The appearance of the culture is coccus? • USER: NO
Working Memory • Patient known to have meningitis-FALSE • Tests Run-TRUE • Cultures Seen-TRUE • Appearance of cultures is coccus-FALSE • The system was unsuccessful in establishing meningitis from test results
STEP 14: look at second premise in RULE 2 and see if it’s in working memory • NO • STEP 15:see if this premise exists in “THEN” part of any rule • RULE 5 • STEP 16: All premises of RULE 5 are unknown and primitives Questions • SYSTEM: Has the patient been suffering persistent headaches (سردرد)? • USER: YES
SYSTEM: Has the patient been suffering dizziness(سرگیجه)? • USER: YES • SYSTEM: Has the patient been lethargic(بی حس و حال)? • USER: YES • STEP 17: RULE 5 fires RULE 2 fires RULE 1(Goal Rule) fires SYSTEM: “After considering your info, I believe the infection is Menningitis.”
Example Review • Simple Goal • Simple Questions • Depth First Search • Intelligent User • Safety Net: Using “Display” command نمایش نتایج میانی • Ease of Expansion • Documenting of Rules • Inference Network
Inference network • Graphical representation of the systems’ rules with the premises and conclusions of the rules drawn as nodes and their supporting relationships drawn as links
Example 2: Meningitis Prescription Expert System • Prescription task: formulate action needed to correct the fault • Problem Solving Approach : - The rules are shown in next slide. - We have one goal to prove : “Prescription is ? Prescription” • 2 goal rules : RULES 1 ( higher priority ) and 2 • RULE 3 : patient’s age
Medical Prescription Example Session • The fact that patient has meningitis is known GOAL : )Prescription is ? )Determine proper series of drugs • STEP 1: Find rules with hypothesis in “THEN” part • RULE 1 and RULE 2 • STEP 2: chose RULE 1 because of higher priority and see if first premise in RULE 1 is listed in working memory • YES • STEP 3: see if the second premise of RULE 1 exists in working memory • NO
STEP 4: see if this premise exists in “THEN” part of any rule • RULE 3 • STEP 5: see if this premise of RULE 3 is listed in working memory • NO • STEP 6: see if this premise exists in “THEN” part of any rule • NO
STEP 7: This premise is a primitive • Question : “What is the patient’s age?” • Answer : 8 • STEP 8: Rule 3 fires (patient is a child) Rule 1 also fires SYSTEM : “My first recommendation is this : Ampicillin --- Dose : 3.8 g Gentamicin --- Dose : 131 mg ”
STEP 9: USER: HOW SYSTEM : To drive goal ”Prescription is ? Prescription” I considered: -RULE1(1.1 is known to be true) -To drive 1.2 I considered RULE3 -To drive 3.1 I asked you. your answer was 8. -RULE 3 was concluded. -RULE 1 was concluded.
Example Review • Variable goal • Rule priorities • Accommodating user • Numeric Relationships
Example 3: Alternative Prescription Expert System • Non-Monotonic Reasoning : facts that are logically dependent on other facts that have been retracted can be retracted. • Retract () • Logical () • Database Access: - Using existing knowledge - Using general knowledge
Prescription change functions • Display current drugs • Determine deleted drugs • Determine substituted drugs • Determine if drug is effective • Determine if drug is safe • Compare ages • Try another drug: Using “CYCLE” command • Remember facts • Recycle
Alternative Prescription Example Session • Drug recommendation AMPICILIN-TRUE • Drug recommendation GENTAMICIN-TRUE • GOAL: allow user choose alternative drug • SYSTEM: do you want to consider another prescription? USER: YES • SYSTEM: which one do you want to delete? USER: ampicilin • SYSTEM: what drug do you want to add? USER: stremptomycin
SYSTEM: The requested drug comes from class AMINOGLYCOSIDES and would not be effective. you could try another drug. USER: PENICILIN • SYSTEM: The requested drug comes from class PENNICILLINS and would be an effective replacement for AMPICILLIN which also comes from PENNICILLINS.
Example Review • Ease of modification • General knowledge • Monotonic Reasoning • Non-Monotonic Reasoning
Automobile Diagnosis System • Design Suggestion: For problems that require expertise from more than one individual, develop separate expert systems that capture the expertise of each individual. • Blackboard: The mean for information exchange when the ES is designed to incorporate separate expert modules.
Example 4: Automobile Diagnostics Expert System • Blackboard:
Example 4: Automobile Diagnostics Expert System • Object Attribute Value: allows you to display to user a menu of possible values.
Automobile Diagnostics Example Session • SYSTEM: please tell me whether the engine WILL START,WON’T START? USER: won’t start • SYSTEM: please tell me whether the starter DOES TURN,DOESN’T TURN? USER: does turn • SYSTEM: the engine turns VERY SLOWLY, NORMALLY BUT WON’T START? USER: normally but won’t start
SYSTEM: I believe the problem might be with the FUEL SYSTEM. I will check with my expert in this area. • SYSTEM: The fuel gage DOESN’T MOVE,DOES MOVE? USER: does move • SYSTEM: The car will START OCCASIONALLY, NEVER STARTS? USER: star occasionally
SYSTEM: After working on your problem it is my belief that your car has problem with the FUEL SYSTEM. The specific problem is DIRTY CARBURETOR. My recommendation is REBUILD THE CARBURETOR. The cost for such repair is 100 dollars.
Example Review • Separate Systems • Meta Rules • Display of intermediate findings • Blackboard • O-A-V facts • Initializing knowledge: INIT , REINIT • Intelligent Safety Net
Summary on Backward Chaining Expert Systems • BC attempts to prove a goal by recursively moving back through the rules in search of supporting evidence • To ease the development and maintenance of these systems, design them in modular form • Care should be given to provide clear final displays and keeping user informed
The user should allow user to provide known information and avoid unnecessary search by the system • Some intelligent findings should be provided even if the system is not totally successful • Database information should be used • Cooperating expert systems modules communicate over a structure known as Blackboard