Main Content

Optimize Model Response

Specify design variables, progress plots and methods, speed up optimization using parallel computing and fast restart, incorporate parameter uncertainty for robustness testing

Simulink® Design Optimization™ software provides both command-line tools and a graphical Response Optimizer app for optimizing the response of a Simulink model to meet the specified design requirements. You can tune the model parameters to meet multiple design requirements simultaneously. You can also impose custom constraints on parameter values, use parallel computing to speed up optimization, and generate code for deployment.


Response OptimizerOptimize model response to satisfy design requirements, test model robustness


expand all

sdo.SimulationTestSimulation scenario description
setupConfigure simulation scenario and model for optimization and evaluation (Since R2024a)
restoreRestore simulation scenario and model to their previous state (Since R2024a)
sdo.setValueInModelSet design variable value in model
sdo.getValueFromModelGet design variable value from model
sdo.getParameterFromModelGet design variables for optimization
param.ContinuousContinuous tunable parameter
param.DiscreteDiscrete tunable parameter (Since R2022b)
sdo.optimizeSolve design optimization problem
sdo.OptimizeOptionsOptimization option set for sdo.optimize function
sdo.OperatingPointSetupSet up steady-state operating point computation
sdo.getModelDependenciesList of model file and path dependencies


Optimization Basics

Steady-State Optimization

Custom Objectives

Uncertain Variables

Speed Up Optimization

Response Optimizer Tasks

Code Generation


Optimization Does Not Make Progress

What to do if the optimization stalls or no changes are seen in parameters values.

Optimization Convergence

What to do if the optimization does not satisfy design requirements or takes a long time to converge near a solution, or if the system response becomes unstable.

Optimization Speed and Parallel Computing

What to do if no speedup is seen with parallel computing, if the results are different, or if the optimization stalls.

Undesirable Parameter Values

What to do if optimization gives undesirable parameter values or violates bounds on values.

Reverting to Initial Parameter Values

How to quit optimizing and revert to original values.