Detailed information on software components is available from the Developers Manual. The following discussion provides a high level overview of these components.
Overview of DAKOTA: In the DAKOTA system, the strategy creates and manages iterators and models. A model contains a set of variables, an interface, and a set of responses, and an iterator operates on the model to map the variables into responses using the interface. In a DAKOTA input file, the user specifies these components through strategy, method, model, variables, interface, and responses keyword specifications.
The Iterator class hierarchy of iteration methods provides a broad spectrum of capabilities, including optimization, parameter estimation, uncertainty quantification, design of computer experiments, and parametric analysis.
The Model abstraction contains the Variables, Interface, and Response abstractions, each of which provide a variety of capabilities in support of different iterative analyses. The Model class hierarchy provides specializations for managing a single interface, managing multiple interfaces through surrogates and model hierarchies, and managing nested iteration.
The Strategy abstraction allows for the creation and coordination of multiple iterators and models. These approaches use the Iterator and Model capabilities as building blocks to develop more advanced solution approaches.
The Strategy class hierarchy contains a variety of optimization strategies. Extension of these concepts to uncertainty quantification and nonlinear least squares is ongoing.