The literature on Knowledge Engineering has identified a number of different problem types [Hayes-Roth et al., 1983,Clancey, 1985] (e.g. diagnosis, design, monitoring) and identified for each problem type a number of problem solving methods (PSMs), which are methods that can be employed to solve a problem of that particular type. For example, diagnosis problems can be solved by such diverse methods as consistency-based diagnosis, hierarchical diagnosis or abduction (see [Console et al., 1992] for a survey).
A central question is then ``Which problem solving method (PSM) is optimal for a given problem type?''. In general, the choice of an appropriate PSM will depend on the goal of problem solving, and on characteristics of the specific input (knowledge and data). As a result, PSMs must be selected or be constucted. In the former case, methods are selected from a predefined set, while in the latter case parts of existing methods or newly defined parts are combined to construct a new method. Such a selected or constructed method does not guarantee the satisfaction of all the intended goals, for example due to lack of sufficient knowledge about when to apply a PSM, or due to incompleteness of data or knowledge inherent to AI-problems. Because the intended goals are not guaranteed, we have to validate the constructed method. If this validation fails, we have to iterate the selection and construction process, using the results of the validation.
This paper proposes a novel solution for the automated construction of methods. The approach is based on the correspondence between the construction of methods and parametric design. A restriction of our proposal is that we consider a PSM as a logic program and study only the declarative properties of PSMs, and no efficiency or other algorithmic properties. Furthermore, our study of automated construction of PSMs is based on studying diagnostic methods, although we belief that it will apply in general to other classes of PSMs.
The structure of this paper is as follows. First we give a definition the problem of the automated construction of PSMs. Then we describe the generic configuration task based on existing literature. Subsequently, we interpret automated construction of PSMs as a configuration task and we discuss methods for this configuration task. Finally the body of this paper discusses a particular method for automated configuration of PSMs. This particular configuration method is illustrated through a detailed scenario in which we configure a diagnostic PSM. This scenario is detailed enough that it can be directly implemented in a suitable architecture, which we have described in [ten Teije & van Harmelen, 1996b].