Up: DOE/Opt: A System for Design of Experiments, Response Surface Modeling, and Optimization using Process and Device Simulation
Next: Model Representation
Previous Page: Introduction
Next Page: Model Representation
The DOE/Opt system architecture is summarized in Fig. 1.
There are three key computational components to the system: (1) design of experiments (DOE); (2) response surface model generation (RSM); and (3) nonlinear constrained optimization (Opt). The DOE/Opt executable uses the Tcl  extension language for application and end-user programmability. On top of this sits a Motif compatible graphical user interface (GUI) implemented in Tk  to manipulate models. Through the GUI, the end-user directs the execution of model blocks, constructs response surface models, and defines and directs optimizations. Optimizations are performed by a second executable program which implements multiple objective nonlinear constrained optimization on top of the NPSOL  package. DOE/Opt consists of approximately 10,000 lines of Tcl/Tk code, and about 1,000 lines of C code (to interface to NPSOL).
A typical DOE/Opt work flow used to explore or optimize design tradeoffs is shown in Fig. 2.
The first task is to automate, via a block script, the simulation and data extraction flow. Second, one chooses an appropriate experimental design to systematically vary block inputs, and performs the corresponding simulations. Third, one constructs and evaluates response surface models for the outputs. Additional design points may need to be simulated and different modeling strategies employed to achieve an adequate model fit. Once achieved, target values and constraints on the outputs are defined, and optimization using the response surface models (or using the body directly) are performed. One or more candidate optima are verified using the full simulation, which may indicate the need for additional simulation and model building in the region of interest.
In the following sections, the key components in the DOE/Opt architecture will be described in more detail. In Section 6, variations on the usage flow of Fig. 2 will be discussed for a number of optimization scenarios.