Mark F. Orelup, John R. Dixon, Paul R. Cohen, Melvin K. Simmons
This paper describes the meta-level control system of a program (Dominic) for parametric design of mechanical components by iterative redesign. We view parametric design as search, and thus Dominic is a hill climbing algorithm. However, from experience with Dominic we concluded that modeling engineering design as hill climbing has several limitations. Therefore, a need for meta-level control knowledge exists. To implement meta-level control, we have taken the approach of dynamically modifying the way hill climbing is performed for this task, rather than requiring the addition of domain-specific control knowledge. We have identified the limitations of hill climbing, constructed various generic hill climbing strategies, and developed a meta-strategy to guide the application of the strategies. The program monitors its own performance for unproductive efforts and selects among different strategies to improve its performance as it designs. This meta-level control significantly improves the performance of the program over the performance of an earlier version.