3.6. Termination Criteria¶
Sections
3.6.1. Convergence Criteria¶
GTOpt will stop optimization process when either one of the termination criteria described in this section are met. All termination criteria except the gradient convergence can be selectively disabled by setting corresponding option value to zero, as it follows from precise mathematical definitions below.
Gradient Convergence
Gradient (or its natural generalization for multi-objective and/or constrained problems, see below) becomes small enough, relevant configurable option is GTOpt/GradientTolerance. For single-objective unconstrained problems smallness means relative (with respect to magnitude of current objective function) \(L_\infty\) norm of objective function gradient \(g = \nabla f\):
For constrained and multi-objective problems this termination criteria is formally the same, the only difference is that local gradient \(g\) is now defined in terms of all participating objectives and active constraints and \(|f|_\infty\) is to be replaced with \(\max_i |f_i|_\infty\). Note that by default gradient smallness is measured relatively with respect to current objective function magnitude. If this is not desirable or inadequate and absolute gradient magnitude is to be used instead, then boolean option GTOpt/AbsoluteGradientTolerance may be used to convert (1) into
Coordinate Convergence
Coordinates change between two consecutive optimization steps is small enough, relevant configurable option is GTOpt/CoordinateTolerance:
Objective Convergence
Objectives change between two consecutive optimization steps is small enough, relevant configurable option is GTOpt/ObjectiveTolerance:
3.6.2. Feasibility¶
As far as constraints satisfaction is concerned (in case there are active constraints in the problem) there is single configurable option GTOpt/ConstraintsTolerance regulating GTOpt constraints sensitivity. Namely, solution is required either to satisfy particular constraint \(c(x)\) strictly (let \(c_U\) be a relevant upper bound) \(c ~\le~ c_U\) or to be within predefined margin away from corresponding limiting value \(c - c_U ~\le~ \mbox{ConstraintsTolerance} \times \max( 1,|c_U|)\). Therefore, feasibility with respect to generic constraint \(c^j\) means