Some optimizations require bounds on the design variables xxx. E.g. for the diameter of any mechanical support must be above a certain minimum value.
As not all optimization algorithms include bound handling, the module
BoundHandler was created.
|Algorithm||deterministic (as no gradient handling is implemented)|
|Design Variables||continuous variables, discrete or mixed variables are possible.|
|Boundaries||Design variables values outside the boundaries are corrected|
|Initial Search Region||not affected|
|Typical X||not affected|
|Starting at his module|| One connection of type |
|Ending at this module|| One connection of type |
The options are currently described as "pop-up help".
The optimization algorithm proposes one or several new solutions x. Some values of x might be outside the lower bounds xl and upper bounds xu, specified in the "Problem" module. These variables are corrected to values within the bounds by thress different methods:
0. no bound handling
This option turns off the bound handling.
1. set to bounds
If one of the variables x is below or above the bounds, it is set to the bound value, i.e.
if x < xl, then x = xl else if x > xu, then x = xu
If one of the variables x is below or above the bounds, it is reflected from the bound. The reflection is done such that if x goes to infinity, x is equal to the lower bound and if x goes to minus infinity, it is set to the upper bound.
if x < xl, then x = xu + (xl- xu)^2 / (x - xu)
else if x > xu, then x = xl + (xu- xl)^2 / (x - xl)
ToDo:Link to SVN