Re: JESS: Refraction
I think Emmanuel Bonnet wrote: Hi, It seems that the refraction principle is not implemented yet in Jess. I have seen it as a Proposed Feature in the archives ( JESS: Proposed feature , 6 Jan 2003). Don't think there's such a thing as The Refraction Principle; Jess has a particular behavior w.r.t. refraction, and other such behaviors have been proposed. Does anybody knows : . if it will be implemented in the near future ? Take the Jess Development Roadmap survey (see link on home page at http://herzberg.ca.sandia.gov/jess). The feature you're interested in is called per-slot activations in that survey. . how I can simulate that behavior in the current Jess Version ? You can't, really. Regards, Emmanuel - Ernest Friedman-Hill Distributed Systems ResearchPhone: (925) 294-2154 Sandia National LabsFAX: (925) 294-2234 PO Box 969, MS 9012 [EMAIL PROTECTED] Livermore, CA 94550 http://herzberg.ca.sandia.gov To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]' in the BODY of a message to [EMAIL PROTECTED], NOT to the list (use your own address!) List problems? Notify [EMAIL PROTECTED]
RE: JESS: Refraction
w.r.t. the statement below, [Don't think there's such a thing as The Refraction Principle; Jess has a particular behavior w.r.t. refraction, and other such behaviors have been proposed.] Hmmm... This is something that I had not realized until now. However, section 2.8.1.3 of the Jess manual explains that there are two available conflict resolution strategies, basically LIFO and FIFO. Refraction, MEA and/or LEX are not discussed. Only breadth and depth strategies, along with salience (sometimes called priority in other systems) are discussed. However, most of the AI books at my disposal (and most commercial inference engines) implement either LEX (Lexical) or MEA (Means Ends Analysis) conflict resolution strategies. Most of them, with one notable exception, use MEA. If anyone want a listing of those books I would be happy to provide them. Both MEA and LEX have as their first item on the conflict resolution table the refraction principle, in that a rule (where a rule = logic+data) that has fired is removed from the agenda table and never returned. This seems to be a basic principle even in such older systems as Expert (a backward-chaining system from Neuron Data) as well as the newer incarnations such as OPSJ, JRules and Blaze Advisor. I know it was the first principle for all of the OPS systems from which our present-day engines seem to have been derived. So. My question is this: Considering that most inference engines do have refraction as the first item on the conflict resolution, is there a reason that the conflict resolution in Jess does NOT include refraction as the first principle? Or at all? I would say all other inference engines but I'm not intimately familiar with all of them - but all of the ones with which I do have experience use refraction as the first item on the conflict resolution system. One last thing: I took the survey indicated without reading the line below that says (or seems to indicate) that per slot activation is the same thing as refraction - Maybe I'm dense (Shut up Richard! You too Joe!) but I can't see the relationship between per slot activation and refraction as a means of conflict resolution. SDG jco James C. Owen Senior Knowledgebase Consultant 6314 Kelly Circle Garland, TX 75044 972.530.2895 214.684.5272 (cell) -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of [EMAIL PROTECTED] Sent: Monday, June 16, 2003 11:08 AM To: [EMAIL PROTECTED] Subject: Re: JESS: Refraction I think Emmanuel Bonnet wrote: Hi, It seems that the refraction principle is not implemented yet in Jess. I have seen it as a Proposed Feature in the archives ( JESS: Proposed feature , 6 Jan 2003). Don't think there's such a thing as The Refraction Principle; Jess has a particular behavior w.r.t. refraction, and other such behaviors have been proposed. Does anybody knows : . if it will be implemented in the near future ? Take the Jess Development Roadmap survey (see link on home page at http://herzberg.ca.sandia.gov/jess). The feature you're interested in is called per-slot activations in that survey. . how I can simulate that behavior in the current Jess Version ? You can't, really. Regards, Emmanuel - Ernest Friedman-Hill Distributed Systems ResearchPhone: (925) 294-2154 Sandia National LabsFAX: (925) 294-2234 PO Box 969, MS 9012 [EMAIL PROTECTED] Livermore, CA 94550 http://herzberg.ca.sandia.gov To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]' in the BODY of a message to [EMAIL PROTECTED], NOT to the list (use your own address!) List problems? Notify [EMAIL PROTECTED] To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]' in the BODY of a message to [EMAIL PROTECTED], NOT to the list (use your own address!) List problems? Notify [EMAIL PROTECTED]
Re: JESS: Refraction
I think James Owen wrote: Hmmm... This is something that I had not realized until now. However, section 2.8.1.3 of the Jess manual explains that there are two available conflict resolution strategies, basically LIFO and FIFO. Refraction, MEA and/or LEX are not discussed. Only breadth and depth strategies, along with salience (sometimes called priority in other systems) are discussed. Hmmm. Thinking of refraction as being part of conflict resolution is rather different than my viewpoint. In any event, yes, there are other ways of dealing with refraction that are different than what Jess does. We've discussed all this before, though. Note that Jess's default behavior is the same as CLIPS', and also the same as the default for OPS5 and other similar Rete-based systems. Whether the default is different for other products, I can't personally say. One last thing: I took the survey indicated without reading the line below that says (or seems to indicate) that per slot activation is the same thing as refraction - Maybe I'm dense (Shut up Richard! You too Joe!) but I can't see the relationship between per slot activation and refraction as a means of conflict resolution. The bahavior that people want, that Jess doesn't offer currently, is this: Let's say deftemplate A has slots X, Y, and Z. Now, let's say that there's a rule that matches some value in slot X. There's a fact, fact-1, which matches the rule nd the rule fires. Now, something modifies slot Y of fact-1. In Jess, the rule can now be matched and fired again (CLIPS behaves precisely the same way using the default conflict resolution strategy -- If changing the strategy changes this behavior, I was not aware of this.) If fact-1 were never modified, then the rule would not fire again. The behavior people have asked for, as I understand it, is that only changes in the slot being matched may allow the rule to re-fire; changes in oither slots would have no effect. What you're describing is slightly different, really. There, changes in any slot would not cause the rule to re-fire until the match that was fired has been removed entirely -- i.e., X were modified such that it would not match -- and then reinstated -- i.e., modified so that it matched again. I can see where this would probably be even more useful. I can also see where the record-keeping required to do this would increase the memory usage and decrease the performance of the engine -- and I can easily think of pathological cases where the memory usage would tend to infinity. So this would make a bad default behavior -- but could be available as an option. Anyway, that's why this is called single-slot activations, because changes in unmatched slots are immaterial. - Ernest Friedman-Hill Distributed Systems ResearchPhone: (925) 294-2154 Sandia National LabsFAX: (925) 294-2234 PO Box 969, MS 9012 [EMAIL PROTECTED] Livermore, CA 94550 http://herzberg.ca.sandia.gov To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]' in the BODY of a message to [EMAIL PROTECTED], NOT to the list (use your own address!) List problems? Notify [EMAIL PROTECTED]