Case-based reasoning: Difference between revisions
Mr. MacKenty (talk | contribs) No edit summary |
Mr. MacKenty (talk | contribs) No edit summary |
||
Line 34: | Line 34: | ||
When we solve a new problem, we are remembering a problem and slightly modifying (adapting it) to solve our new problem. | When we solve a new problem, we are remembering a problem and slightly modifying (adapting it) to solve our new problem. | ||
== Using models for case-based reasoning == | === Using models for case-based reasoning === | ||
We can use models (or previous patterns) of a problem to solve a new problem. | We can use models (or previous patterns) of a problem to solve a new problem. | ||
== Using recursive reasoning == | === Using recursive reasoning === | ||
In this approach, I break my problem in to parts. I first find a solution to MOST of my problem. I then go back into memory and look for a solution which most closely matches the other part of my problem. I might do this again and again. | In this approach, I break my problem in to parts. I first find a solution to MOST of my problem. I then go back into memory and look for a solution which most closely matches the other part of my problem. I might do this again and again. | ||
== Use case-based reasoning by rules == | === Use case-based reasoning by rules === | ||
The key point here is use heuristics. A heuristic is a rule of thumb that works often but not always. | The key point here is use heuristics. A heuristic is a rule of thumb that works often but not always. | ||
== Evaluation == | == Evaluation == | ||
We imagine a candidate solution has emerged from our efforts to solve a new problem. We now must test if this candidate solution works. How do we do this? Simulation can be an effective way of testing (evaluating a solution). The key point here is we must test if a candidate solution solves a problem. | |||
== Case Storage == | |||
foo. | |||
== References == | == References == | ||
<references /> | <references /> |
Revision as of 07:58, 17 February 2018
![](/images/0/0c/AI.png)
In case-based reasoning, the cognitive agent addresses new problems by tweaking solutions to existing problems.
Case-based reasoning (CBR), broadly construed, is the process of solving new problems based on the solutions of similar past problems. An auto mechanic who fixes an engine by recalling another car that exhibited similar symptoms is using case-based reasoning.[2]
The problem we are trying to solve here is what happens when you are confronted with a new situation and you don't have a good past-case to solve the new problem.
The basic process[edit]
Process | Description |
---|---|
Retrieval | Retrieve a case from memory similar to the current problem |
Adaptation | Adapt the solution to that case to fit the current problem |
Evaluation | Evaluating how well the adapted solution addresses the current problem |
Storage | Storing the problem and solution as a case |
Assumptions[edit]
Assumptions of case-based reasoning are:
- there are patterns to problems in the world (the same type of problem repeats again and again)
- similar problems have similar solutions (not always but mostly)
Adaptation[edit]
When we solve a new problem, we are remembering a problem and slightly modifying (adapting it) to solve our new problem.
Using models for case-based reasoning[edit]
We can use models (or previous patterns) of a problem to solve a new problem.
Using recursive reasoning[edit]
In this approach, I break my problem in to parts. I first find a solution to MOST of my problem. I then go back into memory and look for a solution which most closely matches the other part of my problem. I might do this again and again.
Use case-based reasoning by rules[edit]
The key point here is use heuristics. A heuristic is a rule of thumb that works often but not always.
Evaluation[edit]
We imagine a candidate solution has emerged from our efforts to solve a new problem. We now must test if this candidate solution works. How do we do this? Simulation can be an effective way of testing (evaluating a solution). The key point here is we must test if a candidate solution solves a problem.
Case Storage[edit]
foo.