[Back]Case-based Reasoning (CBR) Case-based Reasoning (CBR)
Case-based reasoning is a problem-solving paradigm that in many respects is fundamentally different from other major AI approaches. Instead of relying solely on general knowledge of a problem domain, or making associations along generalized relationships between problem descriptors and conclusions, CBR is able to utilize the specific knowledge of previously experienced, concrete problem situations (cases). Finding a similar past case, and reusing it in the new problem situation solve a new problem. A second important difference is that CBR also is an approach to incremental, sustained learning, since a new experience is retained each time a problem has been solved, making it immediately available for future problems.
What is case-based reasoning? Case based reasoning solves a new problem by referring to a previous similar situation and reusing information and knowledge of that situation. To illustrate this lets look at the following examples:
- A computer operator - after having discovering a system error causing the nightly database update to stop, examines the error and compares it against a database of previously experienced errors of this kind. After examining the error it is determine that a similar error has occurred and the solution is displayed to the operator and the operator corrects the error and processing continues
- A doctor, examining a patient will ask the patient a series of questions about what problem the patient is experiencing. After ascertaining the symptoms the patient is experiencing, the doctor would compare it to a host of ailments that exhibit similar symptoms to come up with a diagnosis and subsequent treatment.
- A auto mechanic before working on a customers vehicle would ask the customer a series of questions to get a basis of where to start in order to diagnosis the problem, and determine what has to be repaired. After obtaining this information the mechanic based on previous experience (previous case) would know where to look to determine the exact problem and solution for the repair.
Case-based problem solving.
As the above examples indicate, reasoning by re-using past cases is a powerful and frequently applied way to solve problems for humans. This claim is also supported by results from cognitive psychological research. Part of the foundation for the case-based approach, is its psychological plausibility. Several studies have given empirical evidence for the dominating role of specific, previously experienced situations (what we call cases) in human problem solving. “Schank developed a theory of learning and reminding based on retaining of experience in a dynamic, evolving memory structure. Anderson has shown that people use past cases as models when learning to solve problems, particularly in early learning. Other results (e.g. by W.B. Rouse) indicate that the use of past cases is a predominant problem solving method among experts as well. A study of problem solving by analogy (e.g. [Gentner, Carbonell]) also shows the frequent use of past experience in solving new and different problems. Case-based reasoning and analogy are sometimes used as synonyms (e.g. by Carbonell).”[1] Case-based reasoning can also be considered a form of intra-domain analogy. In CBR terminology, a case is associated with a problem situation. A previously experienced situation, which has been captured and learned in a way that it can be reused in the solving of future problems, is referred to as a past case, previous case, stored case, or retained case. Correspondingly, a new case or unsolved case is the description of a new problem to be solved. Case-based reasoning is basically a cyclic problem solving process. CBR will constantly add new cases in effect learning from new experiences adding these cases to the knowledge base.
Learning in Case-based Reasoning
A very important feature of case-based reasoning is its coupling to learning. The driving force behind case-based methods has to a large extent come from the machine learning community, and case-based reasoning is also regarded a sub field of machine learning. Thus, the notion of case-based reasoning does not only denote a particular reasoning method, irrespective of how the cases are acquired, it also denotes a machine learning paradigm that enables sustained learning by updating the case base after a problem has been solved. Learning in CBR occurs as a natural by-product of problem solving. When a problem is successfully solved, the experience is retained in order to solve similar problems in the future. When an attempt to solve a problem fails, the reason for the failure is identified and remembered in order to avoid the same mistake in the future.
Case-based reasoning favors learning from experience, since it is usually easier to learn by retaining a concrete problem solving experience than to generalize from it. Still, effective learning in CBR requires a well worked out set of methods in order to extract relevant knowledge from the experience, integrate a case into an existing knowledge structure, and index the case for later matching with similar cases.
Combining cases with other knowledge.
By examining theoretical and experimental results from cognitive psychology, it seems clear that human problem solving and learning in general are processes that involve the representation and utilization of several types of knowledge, and the combination of several reasoning methods. If cognitive plausibility is a guiding principle, an architecture for intelligence where the reuse of cases is at the center, should also incorporate other and more general types of knowledge in one form or another. This is an issue of current concern in CBR research.
[1] Published in A. Aamodt, E. Plaza (1994); AICom - Artificial Intelligence Communications, IOS Press, Vol. 7: 1, pp. 39-59.
[Back]