![]() |
Dakota Reference Manual
Version 6.2
Large-Scale Engineering Optimization and Uncertainty Analysis
|
DIviding RECTangles method
This keyword is related to the topics:
Alias: none
Argument(s): none
Required/Optional | Description of Group | Dakota Keyword | Dakota Keyword Description | |
---|---|---|---|---|
Optional | division | Determine how rectangles are subdivided | ||
Optional | global_balance_parameter | Tolerance for whether a subregion is worth dividing | ||
Optional | local_balance_parameter | Tolerance for whether a subregion is worth dividing | ||
Optional | max_boxsize_limit | Stopping Criterion based on longest edge of hyperrectangle | ||
Optional | min_boxsize_limit | Stopping Criterion based on shortest edge of hyperrectangle | ||
Optional | constraint_penalty | Multiplier for the penalty function | ||
Optional | solution_target | Stopping criteria based on objective function value | ||
Optional | seed | Seed of the random number generator | ||
Optional | show_misc_options | Show algorithm parameters not exposed in Dakota input | ||
Optional | misc_options | Set method options not available through Dakota spec | ||
Optional | model_pointer | Identifier for model block to be used by a method |
The DIviding RECTangles (DIRECT) optimization algorithm is a derivative free global optimization method that balances local search in promising regions of the design space with global search in unexplored regions. As shown in Figure 5.1, DIRECT adaptively subdivides the space of feasible design points so as to guarantee that iterates are generated in the neighborhood of a global minimum in finitely many iterations.
DIRECT" \image latex direct1.eps "Design space partitioning with DIRECT" width=10cm
In practice, DIRECT has proven an effective heuristic for engineering design applications, for which it is able to quickly identify candidate solutions that can be further refined with fast local optimizers.
See the page package_scolib for important information regarding all SCOLIB methods
The DIRECT algorithm supports concurrency up to twice the number of variables being optimized.
DIRECT uses the solution_target
, constraint_penalty
and show_misc_options
specifications that are described in package_scolib. Note, however, that DIRECT uses a fixed penalty value for constraint violations (i.e. it is not dynamically adapted as is done in coliny_pattern_search
).
Search Parameters
The global_balance_parameter
controls how much global search is performed by only allowing a subregion to be subdivided if the size of the subregion divided by the size of the largest subregion is at least global_balance_parameter
. Intuitively, this forces large subregions to be subdivided before the smallest subregions are refined. The local_balance_parameter
provides a tolerance for estimating whether the smallest subregion can provide a sufficient decrease to be worth subdividing; the default value is a small value that is suitable for most applications.
Stopping Critieria
DIRECT can be terminated with:
solution_target
max_boxsize_limit
min_boxsize_limit
- most effective in practiceThese keywords may also be of interest: