As last week, use the skiing knowledge base. A simple set of rules to infer which resort a skier should go to, given his purpose (to have fun or to practise serious skiing), the number of lessons he's had so far, and the number of press-ups he can do without collapsing.
1 Resort = st sartre if Rating = beginner and Purpose = fun. 2 Resort = schloss heidegger if Rating = beginner and Purpose = serious. 3 Resort = chateau derrida if Rating = advanced and Purpose = serious. 4 Resort = wittgenstein gladbach if Rating = advanced and Purpose = fun. 5 Rating = beginner if Lessons < 30. 6 Rating = beginner if Lessons >= 30 and Fitness = poor. 7 Rating = advanced if Lessons >= 30 and Fitness = good. 8 Fitness = poor if Pressups < 10. 9 Fitness = good if Pressups >= 10.
Start by assuming that STM contains these facts:
Pressups = 15. Lessons = 178. Purpose = fun.
We now repeat the recognise-resolve-act cycle as follows:
Recognise 1. Only rule 9 matches, so the conflict set is 9.
Resolve 1. Rather trivial, this! Pick rule 9.
Act 1. Add Fitness = good
to STM.
Recognise 2. Rule 7 matches. Note that rule 9 also does - the new data doesn't contradict its conditions. So the conflict set consists of rules 7 and 9.
Resolve 2. Do we pick 7 or 9? There are various heuristics for conflict resolution. In this example, I'll use refractoriness, saying that if possible, we pick a rule that hasn't fired before. The justification behind this to to keep attention focussed on new things, and prevent the system getting into a loop. So pick 7.
Act 2. Add Rating = advanced
to STM.
Recognise 3. Rules 4,7 and 9 match, so put all three into the conflict set.
Resolve 3. Do we pick 4, 7, or 9? Use refractoriness again, so pick 4.
Act 3. Add Resort = wittgenstein gladbach
to STM.
Recognise 4. Rules 4,7 and 9 match, so put all three into the conflict set.
Resolve 4. Do we pick 4, 7, or 9? Well, none of the rules would tell us anything new, so we might as well stop.