Introduction to Case-Based Reasoning

Case-Based Reasoning is one of most successful applied AI technologies of recent years. Commercial and industrial applications can be developed rapidly and existing corporate databases can be used as knowledge sources. Helpdesks and diagnostic systems are the most common applications.

Case-Based Reasoning (CBR) is based on the intuition that new problems are often similar to previously encountered problems, and therefore, that past solutions may be of use in the current situation. Case-Based Reasoners typically apply retrieval algorithms and matching algorithms to a case base of past problem-solution pairs. Cases are often derived from legacy databases and need not be well structured: case-based reasoning is robust and requires little knowledge acquisition. In complex applications such as planning and design it is insufficient to recall the best matching cases---cases must be adapted to form a new solution.

CBR has been applied to classification tasks, e.g. to determine the type of an organism from observed attributes and to determine whether or not cancer treatment is necessary given past cases. CBR has also been applied to design tasks, e.g. the optimal layout of items in furnace. The major application of CBR is helpdesks. The helpdesk operator can enter the client's description of their problem into the CBR system, for example, the client may describe a malfunction of their PC, and will receive the most appropriate past solutions from the corporate database as a result.

CBR techniques can be applied to large and complex datasets. Data points are considered to be cases, and may be described by tens, or even hundreds, of attributes. One attribute will be used as the diagnostic goal, e.g. faulty or operational, and the CBR will attempt to partition a training set of data with maximum accuracy. Critical factors in the success of this type of CBR are the amount of data available for the system to learn from, and the existence of particular properties in the data itself.

Matching algorithms calculate the degree of match between the attributes of two cases. The closest matching cases to a given case are retained for further analysis. The match score may be biased by weighting attributes.
Diagnostic algorithms determine the classification of a case, given a set of retrieved cases.
Learning algorithms optimise the weights of attributes to increase classification accuracy.

AIAI has carried out projects using CBR techniques, and has tools available for download.

Stuart Aitken
Artificial Intelligence Applications Institute
University of Edinburgh
Informatics Forum
Crichton Street
Edinburgh EH8 9AB, UK