BIGDOT Algorithm
Version
BIGDOT 2.3
Description
BIGDOT solves unconstrained or constrained optimization problems. BIGDOT uses a Sequential Unconstrained Minimization Technique (SUMT) to solve the constrained optimization problem as a sequence of unconstrained optimization sub-problems. BIGDOT is intended to solve optimization problems with many design variables and constraints. Currently version of the Optimization Tool does not support analytic gradients and gradients are computed by finite differencing for BIGDOT.
References
BIGDOT Manual
Control Parameters
Name | Default Value | Description |
---|---|---|
Optimization Parameters | ||
ConstraintViolationThreshold (CTMIN) | 0.003 | A constraint is violated if its numerical value is more positive than CTMIN. The option must have a value greater than 0. |
DiscreteOptimizationCount (NDSCRT) | 1 | Number of applications of discrete variable optimization after continuous variable optimization is complete. NDSCRT = 0 means do continuous variable optimization only. NDSCRT > 0 means do discrete variable optimization NDSCRT times. Normally NDSCRT should not exceed 1. However, NDSCRT > 1 may allow the design to move more than one discrete location from the continuous solution. Option must have an integer value greater than or equal to 0. |
InitialPenaltyMuliplier (PENALT) | 1.0 | Initial penalty multiplier. Updated by multiplying by PMULT after each optimization cycle. Option must have a value greater than 0. |
InitialPenaltyMultiplierDiscr (PENLTD) | 0.01 | Initial penalty multiplier for discrete variable constraints. Updated by multiplying by PMULTD after each optimization cycle. Option must have a value greater than 0. |
PenaltyMultiplier (PMULT) | 2.0 | Penalty multiplier for PENALT. This option must have a value greater than 1, as that would ensure that actual penalty does not decrease as optimization progresses. |
PenaltyMultiplierDiscr (PMULTD) | 2.0 | Penalty parameter multiplier for discrete variable constraints. This option must have a value greater than 1, as that would ensure that actual penalty does not decrease as optimization progresses. |
Scaling (ISCAL) | 0 | Design variables are rescaled every ISCAL iterations. Set ISCAL = 0 to let algorithm determine the value. Set ISCAL = -1 to turn off scaling. Thus the option must have integer values greater than -1. |
SUMMaxIterations (JTMAX) | 15 | Maximum number of unconstrained minimizations (cycles) allowed. Option must have a positive integer value. |
Optimization Parameters for Gradients | ||
Gradients (IGRAD) | Forward | Gradient calculation scheme. Forward difference or central difference. |
MaxGradientConstraints (NGMAX) | 0 | Number of constraint gradients that can be stored at one time. If less than NCON gradients can be stored, NGMAX will be adjusted to use the greatest available storage. Leave 0 to let the algorithm calculate this parameter. The option accepts 0 as a value or positive integer values. |
MinFiniteDifferenceStep (FDCHM) | 0.0001 | Minimum absolute value of the finite difference step when calculating gradients. This prevents too small a step when X(i) is near zero. Option must have a value greater than 0. |
RelativeFiniteDifferenceStep (FDCH) | 0.001 | Relative finite difference step when calculating gradients. Option must have a value greater than 0. |
Stopping Criteria | ||
AbsoluteConvergenceTolerance (DABOBJ) | 0 | Maximum absolute change in the objective between ITRMOP consecutive iterations to indicate convergence in optimization. Set 0 to let the algorithm calculate this parameter. Thus value should be greater than or equal to 0. |
ConvergenceIterations (ITRMOP) | 2 | The number of consecutive iterations for which the absolute or relative convergence criteria must be met to indicate convergence at the optimizer level (the sub-problem of inner loop). This option should always have a positive integer value. |
MaxEvaluations | 1000 | The maximum number of evaluations. This value is expected to be a positive integer. |
MaxIterations (ITMAX) | 100 | Maximum number of iterations allowed at the optimization level. This option should always have a positive integer value. |
RelativeConvergenceTolerance (DELOBJ) | 0.001 | Maximum relative change in the objective between ITRMOP consecutive iterations to indicate convergence in optimization. The option must have a value greater than 0. |
SUMAbsoluteConvergenceTolerance (DABSTR) | 0 | Maximum absolute change in the objective between ITRMST consecutive iterations of SUMT to indicate convergence to the optimum. Set to 0 to let algorithm determine the value. Option must have a value greater than or equal to 0. |
SUMConvergenceIterations (ITRMST) | 5 | The number of consecutive iterations for which the absolute or relative convergence criteria must be met to indicate convergence in the SUMT (outer loop). Option should be a positive integer value. |
SUMRelatvieConvergenceTolerance (DELSTR) | 0.001 | Maximum relative change in the objective between ITRMST consecutive iterations of SUMT to indicate convergence to the optimum. Option must have a value greater than 0. |