RippleDown™ Rules
 
Summary
 
RippleDown™ Rules technology is a radically different way for information systems to learn professional and business expertise so that this can be used to improve the quality and cost-effectiveness of products and services.
 
The core strategy which differentiates RippleDown™ from other knowledge management/ business rule/ expert system technologies, is that acquisition of new knowledge is incorporated into the human trainer’s other activities.  It has almost no impact on workflow and workload – except that workload goes down as the RippleDown™ system gradually takes on more of its trainer’s duties.   Knowledge can be endlessly changed and evolved as business requirements change – with the cost of adding each new chunk of knowledge no greater than the first.
 
Background and Problem
 
The early value provided by computing technology was in high-speed calculation, taking over from the abacus and mental arithmetic.  This was gradually merged with the storage and retrieval of data records, taking over from the filing cabinet and clerk.  We are all well aware of the most recent change:  the anarchic global supply and availability of information over the World Wide Web – a global bulletin board, where you need special assistance to try and find notices of interest.
 
Another line of development has been the possibility of computers taking over, or at least assisting in human expert decision-making.   This was also expected to transform the value provided by computing.  However, the promise of knowledge-based or expert systems was greatly oversold, and led to the very sceptical “Artificial Intelligence winter” of the 80’s.
 
The key insight that lay behind expert systems was the realisation that experts such as lawyers or doctors, might be very intelligent people – but what made them valuable was not really their intelligence and reasoning ability, but the fact that they knew a whole lot about their specialist area.  This lead to the idea of developing computer programs where the inference engine or reasoner was separate from the knowledge the system had to reason about.  There were huge advantages in this.  For example in a system that expressed knowledge in rules, the user simply had to enter a rule; it was the inference engine that would work out when to use this rule, how to decide whether it was the new rule or a previous rule that should be used.   It was thought that to build one of these expert systems one would simply get the expert to give a whole list of rules of what to do in various circumstances.
 
The reality fell far short of the promise:  a separate class of programmer, the knowledge engineer, emerged to try to deal with the difficulty of getting sufficient and adequate rules from the experts.  The phrase the “knowledge engineering bottleneck” was coined to express the difficulty of building these systems[1] The essential problem is that the knowledge engineer needs the expert or business manager to tell them every detail about the domain.  Following Grosof; it is not sufficient for the business manage to provide a rule:
 
 If buyer returns the purchased good for any reason, within 30 days, then the purchase amount, minus a 10% restocking fee, will be refunded
 
 and then another
 
 If buyer returns the purchased good because it is defective, within 1 year, then the full purchase amount will be refunded
 
 The business manager must also supply a rule like:
 
 If both Rules A and B apply, then Rule B ‘wins’, i.e. the full purchase amount will be refunded.
 
 because the inference engine by itself will not be able to work out which rule to apply.   It is extremely difficult to get experts to provide all this knowledge[2] In medicine it is almost impossible to get a clinician to explain all the combinations of signs and symptoms that may occur in a disease – and to also indicate all the circumstances when these signs and symptoms are not symptomatic of the disease.
 
Other solutions
 
Early attempts to solve the knowledge-engineering bottleneck looked at whole range of better ways to get experts to really express how they were thinking.  This made little real difference: there were always some bits of knowledge left out and to go back and try to understand what had been done before, to find what to change remained a major challenge.  One hears comments that changing or adding 2-5 rules per day to a large knowledge base is the industry norm.
 
For the last decade the major research focus has been on knowledge-level modelling.  This is an attempt to provide a systematic and abstract framework firstly for understanding the different types of expert tasks that are possible e.g. diagnosis identifies the faults that cause the symptoms, with medicine as the most obvious example; resource allocation covers tasks like assigning offices in an organization.   This approach then provides an analysis of the types of methods and their interrelationships that can be used in solving such problems.  Finally the there are frameworks for how knowledge about various domains can be structured and organised.
 
Any student of problem-solving and reasoning should study this work; it has been a major scientific advance.  If a knowledge engineer is trained in this type of analysis, there is no doubt they will have a better chance of understanding some new problem type and succeeding in building and expert system.  However, the expert will still be expected to provide all relevant knowledge and there will still be the problems of incorporating other knowledge when the need for this is realised.
 
It is worth noting that developers who are unfamiliar with the history of expert systems and the consequent body of research on acquiring and organising knowledge, keep developing the same false expectations that since individual rules are so easy to add for small knowledge-bases; large rule-based systems are easy to build.  The database community has recently re-discovered the advantages that will accrue if business rules are written separately from the reasoning engine, rather than low level SQL code (e.g. Date, C. J. What, not how: the business rules approach to application development. Reading, Mass., Addison Wesley 2000).  However, probably because they see the value and role of business rules as quite different from the earlier push for expert systems, they are yet to realise the advantages they have discovered have their own further problems.
 
Finally, it should be noted that there is an on-going research program in how to learn what people do without them having to explain what they do. A wide range of machine-learning techniques including neural networks have been developed[3]. Although these are very powerful they still only apply to some limited types of problem and require large amounts of well-worked-up data and may require considerable tuning and adjustment of the learning software.   They are finding most use in data mining, i.e. in searching for patterns in large data bases.
 
The RippleDown™ approach
 
The central feature of RippleDown™ is that it steps aside from the goal of systematically understanding organising and assembling all the knowledge in a domain.  It sees this as an unachievable dream, the inheritor of the Platonic belief that somewhere in the universe there exists archetypal, canonical knowledge[4].
 
In the RippleDown™ approach there is no knowledge engineer who is expected to organise the domain knowledge.  Nor is the expert expected to provide some sort of integrated view of all the knowledge.  The expert does not need to know how each new piece of knowledge is incorporated into the knowledge base – in just the same way as we do not need to know how are minds store what we know in order to assimilate some new piece of information.  RippleDown™ achieves this by having a refinement structure which automatically locates rules in the knowledge base in such a way that they will only be used in the same context in which they were provided[5].
 
The complementary feature of RippleDown™is that the system also assess whether the new knowledge provided conflicts in anyway with previous knowledge.  It does this by retrieving past cases to which the new knowledge might apply and asking the expert whether this is the case.  This prompts the expert to identify extra discriminating features.  Again this is analogous to how human trainees interact with their teacher, particularly in on the on the job training.
 
The result of the RippleDown™ approach is that knowledge bases can be built gradually over time.   The original goal of being able to simply add a rule with no concern for the other rules already in the system is at last achieved.  The task of adding a new piece of knowledge always remains the same, regardless of the size of the knowledge base.  Since it generally takes about one minute, the development of the knowledge base can be incorporated into the expert’s normal duties, with the system gradually evolving and changing as required.
 
Of course nothing is ever quite as simple as it seems.  RippleDown™ still requires some initial knowledge/software engineering in order to link to the information system providing the data to be reasoned about and to identify particular concepts the expert wishes to use.   However, this is a comparatively small one-off problem.  Next, although RippleDown™ can be used to address a very wide range of expert system/ business rule/ knowledge management problems, it can’t yet address all of these problems.  Our partners at the University of New South Wales have a long-term research project in extending the technology.  They have also carried out research analysing the performance characteristics of the technology to explain its remarkable success.  (The results of their research can be found here.)
 
Clarification of Ripple Down Rule features

Superficially, Ripple Down Rules would appear to be similar to other Artificial Intelligence technologies, in particular, to Case Based Reasoning technololgies.

However, Ripple Down Rules are based on different assumptions and are used quite differently, despite these apparent similarities.

Contact PKS to receive further information on the following topics:

  • the unique features of Ripple Down Rules
  • how these features distinguish Ripple Down Rules from other technologies
  • the benefits of Ripple Down Rules over conventional technologies.


 

[1] In fact RippleDown™technology grew out of the experience of building and maintaining an early expert system, GARVAN-ES1, described in the US literature as one of the first four medical expert systems to go into clinical use (Buchanan, B. “Expert systems: working systems and the research literature.” Expert Systems 3: 32-51 1986.)

 

[2] It is not a matter of experts finding it difficult to explain how they think. Rather there are philosophical arguments that any explanation of how we think is a story constructed to suit the context of the question (Compton, P. J. and Jansen, R. “A philosophical basis for knowledge acquisition.” Knowledge Acquisition 2: 241-257 1990)

 

[3] It is worth noting the knowledge representation used in RippleDown™ has been incorporated into a number of machine learning algorithms because of the advantages of knowledge compression it gives.

 

[4] It is also worth nothing that this is not just a matter of esoteric philosophy; the goal of the Semantic Web initiative is based on the idea that all documents will adhere to some sort of ontological standards in naming and structure.

 

[5] At the University of New South Wales an area of research is to automatically derive other knowledge-base structures from RippleDown™ refinement rules.  The goal is to discover ontologies and structures that experts have implicitly used, rather than impose these structures a priori.