Main Content

Solve design optimization problem

Solve an optimization problem to find the values of design variables that satisfy the design requirements.

Use `sdo.optimize`

to solve a design optimization problem of the
following form:

$$\underset{p}{\text{min}}F(p)\text{subjectto}\{\begin{array}{l}{C}_{leq}(p)\le 0\hfill \\ {C}_{eq}(p)=0\hfill \\ A\times p\le B\hfill \\ {A}_{eq}\times p={B}_{eq}\hfill \\ lb\le p\le ub\hfill \end{array}$$

Here:

*F*is the cost (objective).*p*is a scalar or vector of design variables.*C*and_{leq}*C*are the nonlinear inequality and equality constraints, respectively._{eq}*A*and*B*are the linear inequality constraints.*A*and_{eq}*B*are the linear equality constraints._{eq}*lb*and*ub*are the lower and upper bounds on*p*, respectively.

`[`

uses `optimParam`

,`optimInfo`

] = sdo.optimize(`optimFcn`

,`param`

)`fmincon`

, the default optimization method, to find
the parameter values `optimParam`

that satisfy the requirements specified
in `optimFcn`

.

`[`

solves the optimization problem with the optimization options specified in
`optimParam`

,`optimInfo`

] = sdo.optimize(`optimFcn`

,`param`

,`options`

)`options`

. Use `sdo.OptimizeOptions`

to set these
options.

`[`

solves the optimization problem specified in a structure `optimParam`

,`optimInfo`

] = sdo.optimize(`prob`

)`prob`

that
contains the function to be minimized, design variables, and optimization options.

By default, the software displays the optimization information for each iteration in the MATLAB command window. To learn more about the information displayed, see:

Iterative Display when the optimization method is specified as

`'fmincon'`

(default),`'fminsearch'`

, or`'lsqnonlin'`

Display to Command Window Options (Global Optimization Toolbox) when the optimization method is specified as

`'patternsearch'`

You can configure the level of this display using the
`MethodOptions.Display`

property of an optimization option set.

The **Response Optimizer** app provides a graphical interface to specify design
requirements and optimize model parameters. For more information, see Design Optimization to Meet a Custom Objective (GUI) and
Design Optimization to Track Reference Signal (GUI).

The **Parameter Estimator** app provides a graphical interface to specify experiments and
tune model parameters so that the model output matches the experiment data. For more
information, see Estimate Model Parameter Values (GUI).