Configuring the Sequential Quadratic Programming (NLPQL) Technique

The Sequential Quadratic Programming (NLPQL) technique assumes that the objective function and constraints are continuously differentiable.

See Also
Sequential Quadratic Programming (NLPQL) Technique
Configuring the Technique and the Execution Options
  1. From the Flow section of the action bar, click Optimization and drop it on the process diagram.
  2. Double-click Optimization .
    The Optimization Editor appears.
  3. From the General tab's Optimization Technique list, select NLPQL.
  4. In the Optimization Technique Options area, enter or select the following:
    OptionDescription
    Maximum Iterations The maximum number of design iterations you want the optimizer to run. The value type is integer. The default value is 40. Other possible values are 1 .
    Termination Accuracy The termination criterion for NLPQL. The NLPQL stopping algorithm uses several alternative convergence checks, with the main convergence parameter based on the Karush-Kuhn-Tucker necessary optimality condition and the complementary slackness. Termination accuracy is applied in such a way that the scale of the objective and constraint parameters has little or no effect on the convergence check.

    The accuracy of the gradients calculation must be considered when selecting the Termination Accuracy value. If the subflow outputs are accurate up to 8–10 digits and the calculated gradients have at least 7 accurate digits, the recommended Termination Accuracy value is 1 × 10 7 . If the gradient’s accuracy is lower, the Termination Accuracy value must be increased to 1.0 × 10 5 ...1.0 × 10 4 . The value type is real. The default value is 1 × 10 6 . Other possible values are 0 T e r m i n a t i o n A c c u r a c y 1.0 .

    Relative Step Size The relative finite difference step size for the creation of the linear process. The value type is real. The default value is 0.0010 (0.1%). Other possible values are > 0.0 .
    Minimum Absolute Step Size The minimum absolute finite difference step for the creation of the linear process. The value type is real. The default value is 1 × 10 4 . Other possible values are > 0.0 .
    Gradient Points NLPQL supports higher-order gradient approximation formulas, increasing the number of points which are evaluated in parallel and the accuracy of the approximation. Gradient Points is an integer specifying the number of additional points (per design variable) that will be evaluated during the gradient calculation. A value of 1 corresponds to the standard forward-difference formulation [ f ( x + h ) f ( x ) ] / h ; a value of 2 corresponds to the slightly more accurate central-difference formulation [ f ( x + h ) f ( x h ) ] / 2 h . The default value is 1 . Possible values are 1 Gradient Points 5 .
    Save Technique Log Most optimization techniques create a log file of information/messages as they run. This information can be useful for determining why an optimizer took the path that it did or why it converged. Some of these log files can get extremely large, so they are not stored with the run results by default. Select this option if you want to store the log with the run results (as a document) for later viewing.
    Maximum Failed Runs The maximum number of failed subflow evaluations that can be tolerated by the optimization technique. If the number of failed runs exceeds this value, the optimization adapter will terminate execution. To disable this feature, set this option to any negative value (for example, –1). When this option is set to a negative value, the optimization will continue execution despite any number of failed subflow runs.
    Failed Run Penalty Value The value of the Penalty parameter that is used for all failed subflow runs. The default value is 1 × 10 30 .
    Failed Run Objective Value The value of the Objective parameter that is used for all failed subflow runs. The default value is 1 × 10 30 .
  5. Click Ok to save your changes and to close the Optimization Editor.