Skip to documentation content
On this page
  1. Where to find it
  2. How to use it
  3. Settings and initial values
  4. Result
  5. Troubleshooting

GCMMA/MMA

Improve a design using objective and constraint derivatives with GCMMA or MMA.

Improve a design using objective and constraint derivatives with GCMMA or MMA.

Where to find it

System Solver → Optimization

How to use it

Define an objective, select the design controls and their bounds, and add constraints before running the optimization study. Choose GCMMA/MMA and select Use GCMMA as appropriate. Set a move limit to control the size of each design update.

Settings and initial values

SettingInitial value
Use move limitManual
Maximum number of outer iterations100
Optimality tolerance0.001
Constraint tolerance0.001
Step tolerance0.001
Use GCMMAtrue
Move limit0.1
Internal tolerance factor0.1
Constraint penalty1000.0
Penalty increase factor2.0
Maximum constraint penalty1000000000000.0
Maximum inner iterations per outer10
Line-search contraction factor0.5
Asymptote contraction factor0.7
Asymptote expansion factor1.15
Minimum asymptote fraction0.05
Stalled-iteration limit5
Maximum wall-clock timenull
Maximum number of model evaluations1000
Dual tolerance1e-10
Dual maximum iterations500

Result

Compare the final objective, constraint values, design and termination reason together.

Troubleshooting

Limits on iterations or evaluations can end a search before an optimum is reached. Inspect feasibility and termination reason, then verify the final design with a solve. This method requires compatible exact derivatives; an arbitrary Python objective cannot be assumed differentiable.

GCMMA/MMA — Telion 0.1.0-alpha | Telion