Setting Up Nonlinear Programming by Quadratic Lagrangian (Gradient) Optimizer

Follow this procedure to set up an optimization analysis using the Nonlinear Programming by Quadratic Lagrangian (Gradient) Optimizer. Once you have created a setup, you can Copy and Paste it, then make changes to the copy, rather than redoing the whole process for minor changes.

The NLPQL (Nonlinear Programming by Quadratic Lagrangian) method can be used for Direct Optimization systems. It lets you generate a new sample set to provide a more refined approach than the Screening method. Available for continuous input parameters only, NLPQL can handle only one output parameter goal. Other output parameters can be defined as constraints. For more information, see Convergence Rate % and Initial Finite Difference Delta % in NLPQL and MISQP and Nonlinear Programming by Quadratic Lagrangian (NLPQL).

To generate samples and perform an NLPQL optimization:

  1. Set up the variables you want to optimize in the Design Properties dialog box. The variables must be swept in a Parametric setup.
  2. Click HFSS or Q3D Extractor or 2D Extractor > Optimetrics Analysis > Add Screening & Optimization . The Setup Optimization dialog box appears.
  1. Under the Goals tab, select the optimizer by selecting Nonlinear Programming by Quadratic Lagrangian (Gradient) from the Optimizer drop-down list.
  2. Optionally, click Setup to open the Optimizer Options dialog box.

  1. Add a cost function - Click Setup Calculations to open the Add/Edit Calculation dialog box.

When you have created the calculation, click Add Calculation to add it to the Optimization setup, and Done to close the Add/EditCalculation dialog box.

  1. In the Optimization setup, in the drop-down list for the Goal column, select Edit as Expression or Edit as Numeric Value.
  2. This reopens the Add/Edit Calculation dialog box. If you are satisfied with the expression or value displayed, click Done to close the dialog box. This enters the expression/value to the Goal column.
  3. In the Optimization setup, if you want to select a Cost Function Norm Type:

A norm is a function that assigns a positive value to the cost function.

For L1 norm the actual cost function uses the sum of absolute weighted values of the individual goal errors. For L2 norm (the default) the actual cost function uses the weighted sum of squared values of the individual goal error. For the Maximum norm the cost function uses the maximum among all the weighted goal errors, which means that it is always less than zero. (For further details, see Explanation of the L1, L2, and Max Norms in Optimization.)

The norm type doesn't impact goal setting that use as condition the "minimize" or "maximize" scenarios.

  1. Optionally, set the Acceptable Cost and Cost Function Noise.
  2. Optionally, click HPC and Analysis Options to select or create an analysis configuration.
  3. In the Variables tab, specify the Min/Max values for variables included in the optimization.
  1. In the General tab, specify whether Optimetrics should use the results of a previous Parametric analysis or perform one as part of the optimization process.

    Select the Update design parameters' value after optimization check box to cause Optimetrics to modify the variable values in the nominal design to match the final values from the optimization analysis.

  1. Under the Options tab, if you want to save the field solution data for every solved design variations in the optimization analysis, select Save Fields And Mesh.
    Note:

    Do not select this option when requesting a large number of iterations as the data generated will be very large and the system may become slow due to the large I/O requirements.

You may also select Copy geometrically equivalent meshes to reuse the mesh when geometry changes are not required, for example when optimizing on a material property or source excitation. This will provide some speed improvement in the optimization process.

Related Topics 

Convergence Rate % and Initial Finite Difference Delta % in NLPQ and MISQP