home bbs files messages ]

Forums before death by AOL, social media and spammers... "We can't have nice things"

   comp.ai      Awaiting the gospel from Sarah Connor      1,954 messages   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]

   Message 1,199 of 1,954   
   Ted Dunning to Jeff Barnett   
   Re: RETE rules design......   
   04 Oct 06 08:40:51   
   
   From: ted.dunning@gmail.com   
      
   Jeff Barnett wrote:   
     ...   
   > If I understand your message correctly, it seems that you believe that   
   > RETE has something to do with the problem-solving that is apparent to   
   > the developer of the application system. It doesn't.   
      
   The original poster was indeed a bit confused on this point.   
      
   But their real question was to do with advice to a rule builder.   
      
   My advice is "don't".   
      
   Seriously, the single most important criterion that determines whether   
   you can effectively maintain your system is how large the largest set   
   of interacting rules is.  If it gets above 20-30 rules (other than   
   simple fact rules), most people will have serious problems maintaining   
   the system.  In some special cases, even 10 rules can be hard to   
   maintain.   
      
   If you are able to simplify the graph of rule interaction, you may be   
   able to increase this number significantly.  The simplest ways to   
   simplify the rule set are stratification in which each class of rules   
   only refers to "lower" classes and separation in which multiple clumps   
   of rules operate relatively independently.   
      
   One of the major problems with rule systems is that there are few tools   
   that perform the analogical information hiding functions that   
   object-orientation provides for imperative programming.  Without a   
   strong structuring paradigm like this and with the much more subtle   
   interactions that you get between rules, you can put yourself into a   
   world of hurt very, very quickly.   
      
   My own experience has to do with supporting large machine translation   
   systems written in Prolog and various business logic components for   
   fraud detection systems.  In general, I would equate the complexity and   
   maintenance difficulty of a thousand line Prolog program with a 100,000   
   line moderately structured program in an imperative language (and this   
   is not a good comparison).   
      
   [ comp.ai is moderated ... your article may take a while to appear. ]   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca