What's so Special About Case-Based Reasoning? Case-based reasoning is not the first artificial intelligence method to combine reasoning and learning, but it makes learning little more than a by-product of reasoning. That feature makes it unique among artificial intelligence methods. In other words, a case-based reasoner that remembers its experiences also learns as it reasons; feedback from early experiences gives it insight into solving problems at a later date. What the Heck is a Case? A case is a contextualized piece of knowledge representing an experience that teaches a lesson fundamental to achieving the goals of the reasoner. The basis for case-based reasoning is that situations recur with regularity; what was done in one situation is likely to be applicable in another situation of similar context. In essence, we begin the case-based reasoning effort by starting with what worked in a previous situation that is similar to the present. Artificial Intelligence and Case-Based Reasoning Some scientists, who have been trying to explain how the human mind thinks, are putting their efforts into something called artificial intelligence. In some areas of artificial intelligence, a great effort first goes into developing a model of how a thought or decision-making processes works. Then, that model is generally applied to all problem situations involving that particular process. General knowledge has some important advantages, one being the economy of storage that comes through minimizing the amount of knowledge needed to solve the problem. General knowledge also allows people to deal with uncertainty. General knowledge, however, has certain disadvantages. One being something called operationalization, which is the difficulty we encounter when we try to operate something specific given general rules. Sometimes, we need to have specific knowledge when performing specific problem-solving tasks. Another disadvantage of general knowledge is that, although it covers the normal, it doesn't tell us how to reason about situations that are different from normal. So, What do Cases Represent? Cases represent specific knowledge that is associated with specific situations. They represent knowledge that is at the operational level. They make that knowledge explicit for performing a task or using a piece of knowledge or using a strategy when trying to accomplish a goal. Cases also represent an experienced situation. That situation, when remembered later, forms a context in which the knowledge embedded in the case is presumed applicable. What does a Case Contain? Cases come in many shapes and sizes. They may cover a situation that evolves over time or they may represent a situation that must be solved at one point in time. In addition, they may represent problem-solving episodes or they may associate the description of a situation with a particular outcome, or they may do both at the same time. Which Cases are Worth Remembering? Normally, tasks that are routinely performed are not considered as cases worth remembering. These are the normal, daily, routinely- performed tasks (i.e., they represent the "norm"). We shall call these schemata. Those that are not routinely performed, however, are usually worth remembering. These are experiences that are different from the "norm", and we shall call these "cases". Stated in another way, cases that are worth remembering are experiences that are different in some way from what was expected. They record major variations from the norm. What constitutes a "major variation from the norm"? Well, researchers have formulated a general rule which states, "If the difference is instructive such that it teaches a lesson for the future that could not have been inferred easily from the cases already recorded, then record it as a case." A lesson is learning the normal way of doing something if it is currently unknown how to do it. Therefore, cases represent current differences from the current norm. A Summary of the Discussion thus far: 1) a case represents specific knowledge tied to a context. It records knowledge at an operational level. 2) cases can come in many different shapes and sizes, covering large or small time slices, associating solutions with problems, outcomes with situations, or both. 3) a case records experiences that are different from what is expected. Not all differences are important to record, however. Cases worthy of recording as cases teach a useful lesson. 4) useful lessons are those that have the potential to help a reasoner achieve a goal or set of goals more easily in the future or that warn about the possibility of a failure or point out an unforeseen problem. 5) Each case serves two purposes when it is recalled: a) it provides a suggestion on how to solve a problem, and b) it provides a context for understanding or assessing a situation.
Case retrieval is the first primary process of case-based reasoning. This is not done blindly, as only those cases that partially to completely match the context of the problem are retrieved. Retrieving cases involves two intensive efforts: 1) searching the cases and 2) matching cases with the current problem. This is done by a computer program that rapidly scans the library of cases on hand, selects those that at least partially match the context of the present problem, and places them into non-permanent memory. A ballpark solution is then proposed. This is done by extracting the solution from some of the retrieved cases and proposing it as the solution to the new case. Note that, at this stage of case- based reasoning, only a general solution is proposed; hence use of the term "ballpark" (i.e., within the general area). Ballpark solutions are sometimes selected by the case-based reasoner when it determines that certain portions of the ballpark solution are appropriate for the current problem. Alternatively, the case-based reasoner can select ballpark solutions by determining if one portion of the ballpark solution is more appropriate for solving the problem than others. A third way that a case-based reasoner can select a ballpark solution is to "check" with the goals of the decision-maker to determine which portion or portions of a potential ballpark solution are consistent with those goals. Next, adaptation or justification of the proposed solution is done. When using case-based reasoning to solve problems, adaptation is normally used. This is accomplished by suggesting small changes in the ballpark solution to propose a different solution that is better-adapted to solving the specific problem. Two steps are taken in adaptation: 1) identifying what needs to be changed, and 2) making the changes. When using case-based reasoning to interpret a ballpark solution, justification is employed. In case-based reasoning, justification is the process of creating an argument for the proposed solution by comparing and contrasting the new situation with prior cases. The reasoner then looks both for similarities between the new situation and the selected cases that justify the desired result and differences between the new situation and the selected cases that imply that other factors must be taken into account. Criticism of the proposed solution is then done as a critique before the solution is applied to the new problem. When all the knowledge necessary to evaluate the proposed solution is known, this step is called validation. When all such knowledge is not available to conduct a validation, alternate cases are called from memory and their proposed solutions are compared and contrasted with one another as well as with the currently-considered solution. This provides the decision-maker potential scenarios through which the proposed adapted solution may succeed - or fail. Evaluation of the solution is then conducted after it has been selected, applied, and carried through to completion. This step includes feedback about how the solution was implemented, what went right, as well as what went wrong. It also includes brief explanations about what could have been done to prevent some of the complications when implementing the solution. Of all the steps of the case-based reasoner, this is the most important because it provides the information necessary for the case-based reasoner to learn. It allows the case-based reasoner to "notice" the consequences of its reasoning. In essence, evaluation is the process of judging the goodness of a proposed solution. Storage of the new case is then accomplished by the computer program. Remember, if this new case meets the criteria of representing an appreciable departure from the current norm, and in its solution it teaches a lesson, and also satisfies one or more goals of the reasoner, then it should be saved and indexed for future use. Perhaps the most important part of the memory storage process is the indexing. Decisions on how to index this case has a direct bearing on how efficient the searching and matching algorithms will be. Decision-makers use case-based reasoning when they remember previous situations that are similar to the present for helping them solve a problem. Case-based reasoning is commonly used for: 1) adapting an old solution to a new problem, 2) identifying possible failures when adapting old solutions to new problems, and 3) interpreting the present situation by comparing it to many past situations.
Case-based reasoning is really a model of one kind of reasoning that makes use of problem solving, understanding, and learning. Further, it connects or integrates these three processes within something called memory. Five Premises of the Case-Based Reasoning Model A premise is something that has been proposed - and proved - as a basis for argument. 1) Referencing or recalling the circumstances of old situations or cases is advantageous when dealing with new situations. In addition, such referencing is usually necessary to understand, interpret, and/or solve problems that are involved with novel (new) situations. Therefore, remembering a case to use in a later problem-solving endeavor, and integrating that case with what is already known, is a necessary learning process. 2) Interpreting - (understanding) - the details of a problem is necessary for its solution because descriptions of problems, past and present, are rarely complete. Such interpretation needs to be done by the decision-maker before case-based reasoning can begin. As the decision-maker begins to understand the various aspects of the problem at hand, then similar cases can be recalled to help her or him solve it; as more details are understood, more cases can be recalled, evaluated, and either kept or discarded. 3) Adapting the solution of an old case to a new situation is almost always necessary because old cases are almost never identical to new situations. In essence, adaptation compensates for the differences between old cases and new situations. 4) Learning occurs as a natural consequence of reasoning and experience. When a novel solution is derived when solving a complex problem, and if that solution is correct, a connection is made between that new solution, the set of circumstances involved, and the set of cases used to come up with that solution. These circumstances and connections and the new solution are stored in memory and indexed so they can be retrieved when they are needed. On the other hand, if that particular solution is not a correct solution, that set of connections to the circumstances and past cases is indexed so the decision-maker can be warned that potential troubles can arise if these solutions are used. Such learning (i.e., the processes of making connections, remembering past cases, understanding details of the present case, indexing the solutions and such and storing and recalling those solutions) occurs in increments. 5) Evaluating the reasoning process is useful to the learning process. This is usually done through something called "feedback" and "analysis". Feedback is the objective evaluation of the case-based reasoning process, determining what went "right" and what went "wrong". The analysis of that feedback is accomplished by conducting alternate procedures/recalls, running them through the mental process, and determining potential outcomes. Such evaluation is a useful part of the reasoning/learning cycle. These premises strongly suggest that the quality of reasoning when a reasoner uses case-based reasoning depends on the following: 1) its breadth and depth of experience, 2) its ability to understand new situations and correctly interpret them in relation to those old experiences, 3) its ability to adapt old solutions to new problems, 4) its ability to conduct the feedback and evaluation processes and make "repairs" when the solution is not working out well, and 5) its ability to make the correct connections between the new situation, old experiences, old solutions, and new solutions (learning). Recall Starts the Case-Based Reasoning Process After the decision-maker understands the details of the new problem, she or he must begin the reasoning process by selecting a set of representative cases. This set of cases must involve the goals and sub-goals of the decision-maker. Using these selected cases, past successful attempts to solve the problem are proposed as solutions to the new problem. Also when using these selected cases, past failed attempts serve to warn the decision-maker of a potential failure to meet those goals. Interpretation: Understanding a New Problem in Terms of Old Experiences Interpretation is the process of comparing the new situation to the recalled experiences. This is done by the case-based reasoner when it compares and contrasts the old experiences with the situation of the new problem; this is an interpretation of the new problem. Interpretation includes inferred knowledge about the new problem and, sometimes, a classification of the new problem. (To infer something is to come to some state of judgment or conclusion based on facts or information that are known or gathered about the subject.) When solutions to the new problems are compared to solutions of past but similar problems, the case-based reasoner gains an understanding of the positive and negative consequences of choosing some solutions over others. Interpretation is generally used when the problem is not well understood and there is a need to criticize the solution. In contrast, when a problem is well understood (i.e., there is little to no missing information), there is little need for the interpretive process. Adaptation: Fixing Old Solutions to Solve New Problems Fixing solutions that were used to solve previous but similar problems is called adaptation. Adaptation is necessary because no old situation is exactly the same as a new one. Adaptation can happen during the formulation of a solution or after feedback that is derived from evaluating the results of an old solution to a similar problem. Generally, adaptation can be accomplished by substitution or transformation. Substitution is accomplished by substituting, for some part of an old solution, a replacement action or substance. Often this is deemed necessary because of ethical, environmental, logistic, economic, or other constraints. Currently, there are six different recognized methods of substitution (see Kolodner 1993 for more information on these). Transformation methods are useful for changing an old solution into one that will work for the new problem. There are two forms of transformation methods, one called commonsense heuristics and the other called model- or principle-guided repair. The former method involves a small set of general heuristics, or rules, that use knowledge about the relative importance of different parts of a solution to determine whether deletions or substitutions should be made. The latter method is used when the decision-maker has knowledge of the cause and effect "connections" that exist in the system. Improving the Performance of the Case-Based Reasoning Process Artificial intelligence programs that use case-based reasoning to solve problems must have the ability to learn from their experiences. This is done through feedback, evaluation, and repair. Without these, the program would get faster at generating solutions but not better. In other words, they or they would repeat their mistakes. There are two ways that performance is improved through the use of case-based reasoning: 1) becoming more efficient, and 2) becoming more competent. The former occurs when, in the reasoning process, old solutions are simply remembered and then adapted to solve new problems rather than going through the entire case-based reasoning process when solving each new problem. The latter occurs when the reasoner indexes each problem situation, indicating whether or not the solution was effective. Over time, the depth and breadth of problem situations grows and the accompanying indexing system is quite useful in sorting through acceptable and unacceptable solutions for similar problems. In light of these performance-enhancing characteristics, it should be no surprise that performances of case-based reasoners improve when they accumulate new cases and indexes. Accumulating new cases will provide additional familiar contexts for solving problems or providing evaluations. Accumulating new indices will allow the "reasoner" to fine-tune their or its recall of relevant cases.
Advantages: 1) Case-based reasoning allows the reasoner to propose solutions to problems quickly, avoiding the time necessary to derive those answers from scratch. 2) Case-based reasoning allows a reasoner to propose solutions in knowledge areas that are not completely understood by the reasoner. Problem situations in some knowledge areas are impossible to fully understand because the solution often depends on as yet unpredictable facets, such as the price of winter wheat in the middle of the next winter. In addition, some knowledge areas are not yet understood but the decision-maker must make a decision anyway. 3) Remembering previous experiences is particularly useful when warning the decision-maker about potential problems that have occurred in the past, alerting a reasoner to take actions to avoid repeating those past mistakes. Remember, cases can also be helpful in pointing out incorrect solutions. How do they do this? Through the evaluative process. Remember that feedback and analysis of what went "wrong" with a solution to a problem situation is also recorded and stored in memory. In future situations, when the case- based reasoner calls up that case, it reviews the solution as well as the feedback and analysis parts of the case. All of these are taken into account when proposing a new solution to the present problem situation. 4) Cases help a reasoner focus its reasoning on important parts of a problem by simply pointing out what features of a problem are important. This advantage rests on the premise that what was important in similar, past cases, will be important in current problem situations. Be aware that important parts of cases include those that contributed to successes as well as failures. Disadvantages: 1) A case-based reasoner might be tempted to use old cases blindly, relying on previous experience without criticizing or validating it context of the new situation. 2) A case-based reasoner (or decision-maker) might allow cases to bias them when solving a new problem. 3) A case-based reasoner may not be able to identify and thus consider the most appropriate cases when solving the present problem with case-based reasoning. These all are potential weaknesses of case-based reasoners. They should serve as a warning to decision-makers everywhere that they should not shirk their duty of using their own minds and experiences to criticize and evaluate potential solutions of case-based reasoners. Remember, case-based reasoners are tools that produce information to be considered when we are trying to make decisions about difficult problems. They are not in themselves, decision-makers.