Example CBR (page 3)
CBR can mean adapting old situations to meet new demands, using old cases to explain new situations, using old cases to critique new solutions, or reasoning from precedents to interpret a new situation (law) or create equitable solutions to a new problem (mediators).
Tough one-what would it not be useful for?(workshop contents)
Basically anything that uses memories of past experiences can use CBR
Premises:
The ability to understand a new problem in terms of old experiences has two parts:
recalling old experiences and
interpreting the new situation in terms of the recalled experience
Recalling an old experience is called the indexing problem.
Adaptation is the process of fixing up an old situation to meet the demands of the new one.
See (page 244 (217) Maintaining Organization in a Dynamic Long-Term Memory")
Case-based reasoning achieves most of its learning in two ways:
In general
A case is a contextualized piece of knowledge representing an experience that teaches a lesson fundamental to achieving the goals of the reasoner.
Thus there are two parts to a case:
The Cognitive Model
Models of human memory
History
Though cases provide a starting point for solving a problem, general knowledge in case-based systems provide guidance in adapting old solutions to fit new situations, choosing indexes, matching cases to each other, and evaluating the goodness of derived solutions.
MOPs
Memory Organization Packets (pg 110)
Like MOPs, E-MOPs have two functions, the organization is through individual episodes using a web of indexes. Specifically, E-MOPs organize similar episodes according to their differences and keeps track of their similarities.
E-MOPs further developed the theory of MOPs by proposing that E-MOPs and cases are arranged together in specialization/generalization hierarchies. Thus, traversal of an index in an E-MOP can lead to encountering an event or specialized E-MOP.(page 249 of paper)
Two important aspects:
memory organization
TOPs
Thematic Organization Packets
Provide a means of categorizing situations by the intentions of participants rather than by the details of the activities of situations.
More knowledge of goals and plans...
(goal description, condition) pair
They capture the similarities between situations across different domains.
(page 112)
Representing Case
* What component parts does a case have? (pg. 146)
Problem/situation description: the state of the world at the time the case was happening and, if appropriate, what problem needed solving at that time
Solution: the stated or derived solution to the problem specified in the problem description, or the reaction to its situation
Outcome: the resulting state of the world when the solution was carried out
* What kinds of knowledge does a case need to encode
Three major components of the problem representation:
* What formalisms and methodologies are appropriate for representing a case?
"The important thing has been to get the knowledge in some format in a way that works rather than designating one or another format as the appropriate one for representing cases." (page 160) neat or scruffy?
Also, user-interface issues...
* How can we recognize the boundaries of cases, and how can they be devided into chunks of the right size? (page 182, 188)
Indexing
How do TOPs, MOPs, E-MOPs, scenes, and scripts organize events so that those that can provide the best expectations can easily be made available to reasoning processes? ... indexing
Cases are indexed by combinations of features that predict their applicability in an anomalous situation
Important points:
Guidelines: (paper page 254) (book page 197)
blame assignment, credit assignment computationally complex (if not intractable)
Need heuristics...
Technique 1) choose as indexes features that tend to predict solutions or outcomes
System builder tells the system which kinds of features it should use for indexing. Each case is indexed by the features found on the checklist.
The best checklists are lists of features known to be predictive
Technique 2) concentrate on extracting differences between the new case and other cases in the case library
Usually these two are combined...
Third kind: select indexes using explanations of why a solution worked or didn't work
Choosing Indexes By Hand (pg. 249)
Organizational Structures and Retrieval Algorithms
Remembering is the process of retrieving a case or set of cases from memory. In general, it consists of two substeps: (pg 18)
*Recall previous cases
The goal of this step is to retrieve "good" cases that can support reasoning that comes in the next steps. Good cases are those that have the potential to make relevant predictions about the new case. Retrieval is done by using features of the new case as indexes into the case library. Cases labeled by subsets of those features that can be derived from those features are recalled.
*Select the best subset
This step selects the most promising case or cases to reason with from those generated in step 1. The purpose of this step is to reduce the set of relevant cases to a few most-on-point candidates worthy of intensive consideration. Sometimes it is appropriate to choose one best case; sometimes a small set is needed
Case retrieval, no matter the method, requires a combination of search and matching... then, perhaps situation assessment.
Organizational structures are searched to find potentially matching cases, and each is judged for its potential usefulness. This judgement is done by matching functions. In some schemes, search and matching are sequential, in others, they are interleaved.
Some schemas: (page 291)
Advantages of Case-Based Reasoning (page 25)
Case-based reasoning allows the reasoner to propose solutions to problems quickly, avoiding the time necessary to derive those answers from scratch
Case-based reasoning allows a reasoner to propose solutions in domains that are not completely understood by the reasoner
Case-based reasoning gives a reasoner a means of evaluating solutions when no algorithmic method is available for evaluation
Cases are useful in interpreting open-ended and ill-formed concepts
Remembering previous experiences is particularly useful in warning of the potential for problems that have occurred in the past, alerting a reasoner to take actions to avoid repeating past mistakes
Cases help a reasoner to focus its reasoning on important parts of a problem by pointing out what features of a problem are the important ones
and disadvantages
A case-based reasoner might be tempted to use old cases blindly, relying on previous experience without validating it in the new situation
A case-based reasoner might allow cases to bias it too much in solving a new problem
Often people, especially novices, are not reminded of the most appropriate sets of cases when they are reasoning