To address computationally challenging problems, ingenious researchers often develop a broad variety of heuristics with which to reason and learn. The integration of such good ideas into a robust, flexible environment presents a variety of difficulties, however. This paper describes how metareasoning that relies upon expertise, bounded rationality, and self-awareness supports a self-adaptive architecture for learning and problem solving. The resultant programs develop considerable skill on problems in three very different domains. They also provide insight into the strengths and pitfalls of metareasoning.Anthropologists tell us that an expert is one who performs a task better and faster than the rest of us (D'Andrade, 1991). A programmed expert for challenging problems, however, is unlikely to be given every detail of its reasoning process in advance -rather, it is expected to learn its expertise on its own, to be self-adaptive. Ideally, expertise develops quickly. To accelerate its performance during both learning and testing, a self-adaptive system is likely to be subjected to bounded rationality, that is, to have limits placed on its space and time resources. As a result, computer scientists often construct self-aware programs that observe their own behavior and monitor their own reasoning to improve their performance, as in Figure 1 (Cox and Raja, 2007). The perils of such metareasoning become quickly evident in any ambitious application, however. 1 We believe that easy problems should be solved quickly, and that hard problems should take a bit longer. Rather than rely on thousands of learning experiences, the learners we describe develop considerable expertise after experience with relatively few problems. This paper recounts the challenges posed to one learning and problem-solving ar- chitecture by three different problem domains, and how metareasoning addresses those challenges successfully. The first section describes the architecture and the domains. The second section describes the premises that led to the architecture's structure. Subsequent sections explore the impact of bounded rationality, how to assess expertise, how to manage large bodies of heuristics to learn expertise, and how to think less but still maintain performance.
The Architecture and the ProblemsFORR (For the Right Reasons) is a learning and problem solving architecture that models the development of expertise with metareasoning (Epstein, 1994a). From its experience on a set of problems, FORR learns to solve other, similar problems. Together, the problems it solves and those expected to be similar to them constitute a problem class. On any given problem, FORR seeks a sequence of actions that solves the problem, and can explain the reasoning that underlies its decisions.FORR provides a flexible environment within which to design and execute experiments in metareasoning. The domain-dependent ground level in Figure 1 describes each world state as it appears during search for a solution. The object level re-represents and reason...