Optimize Model Response
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.
Apps
Response Optimizer | Optimize model response to satisfy design requirements, test model robustness |
Functions
Topics
Optimization Basics
- Design Optimization to Meet Step Response Requirements (GUI)
Optimize controller parameters to meet step response requirements using Response Optimizer. - Design Optimization to Meet Step Response Requirements (Code)
Optimize controller parameters at the command line. - Design Optimization to Track Reference Signal (GUI)
Optimize parameters without adding Signal Constraint blocks to the model. - Discrete-Valued Variables in Response Optimization (GUI)
Use the Response Optimizer app to interactively tune model parameters that are restricted to a discrete, finite set of values. - Discrete-Valued Variables in Response Optimization (Code)
Use response optimization to tune model parameters that are restricted to a discrete, finite set of values. - Design Optimization to Meet Frequency-Domain Requirements (GUI)
This example shows how to tune model parameters to meet frequency-domain requirements using the Response Optimizer app. - Design Optimization to Meet Frequency-Domain Requirements (Code)
This example shows how to tune model parameters to meet frequency-domain requirements, using thesdo.optimize
command. - Design Optimization Using Frequency-Domain Check Blocks (GUI)
Optimize model parameters to meet frequency-domain design requirements using the Response Optimizer. - Design Optimization to Meet Time-Domain and Frequency-Domain Requirements (GUI)
Interactively tune a controller to satisfy time-domain and frequency-domain design requirements using the Response Optimizer app. - Write a Cost Function
Write a cost function for parameter estimation, response optimization, or sensitivity analysis. The cost function evaluates your design requirements using design variable values. - Design Optimization Tuning Parameters in Referenced Models (GUI)
This example shows how to tune parameters in referenced models, using the Response Optimizer. - Design Optimization Tuning Parameters in Referenced Models (Code)
This example shows how to tune parameters in referenced models, using thesdo.optimize
command. - Response Optimization with Simscape Models
This example shows how to tune the value of a resistor and maximize the power transferred from one part of an electric circuit to another by using the Response Optimizer app.
Steady-State Optimization
- Specify Steady-State Operating Point for Response Optimization
An operating point of a dynamic system defines the states and root-level input signals of the model at a specific time.
Custom Objectives
- Design Optimization to Meet a Custom Objective (GUI)
This example shows how to optimize a design to meet a custom objective using the Response Optimizer app. - Design Optimization to Meet a Custom Objective (Code)
This example shows how to optimize a design to meet a custom objective usingsdo.optimize
. - Design Optimization to Meet Custom Signal Requirements (GUI)
Specify a custom requirement on a model signal in the Response Optimizer.
Uncertain Variables
- Optimizing Parameters for Robustness
Incorporate the parameter uncertainty to test the robustness of your design. - Specify Custom Signal Objective with Uncertain Variable (GUI)
This example shows how to specify a custom objective function for a model signal. - Design Optimization with Uncertain Variables (Code)
This example shows how to optimize a design when there are uncertain variables.
Speed Up Optimization
- Skip Model Simulation Based on Parameter Constraint Violation (GUI)
This example shows how to optimize a design and specify parameter-only constraints that prevent the model from being evaluated in an invalid solution space. - Speed Up Response Optimization Using Parallel Computing
Scenarios when you can speed up optimization using parallel computing, and how the speedup happens. - Use Parallel Computing for Response Optimization
Use parallel computing for response optimization in the app, or at the command line. - Optimizing Time-Domain Response of Simulink Models Using Parallel Computing
This example shows how to use parallel computing to optimize the time-domain response of a Simulink® model. - Use Fast Restart Mode During Response Optimization
This topic shows how to speed up response optimization using Simulink fast restart. - Use Accelerator Mode During Simulations
Simulink Design Optimization software supportsNormal
andAccelerator
simulation modes. - Improving Optimization Performance Using Parallel Computing
This example shows how to improve optimization performance using the Parallel Computing Toolbox™.
Response Optimizer Tasks
- Specify Design Variables for Optimization
Specify continuous and discrete variables to tune in the Response Optimizer app, including initial values and allowed ranges or values. - Specify Signals to Log
Specify signals to log in the Response Optimizer. - Create Linearization I/O Sets
Create linearization input/output sets in the Response Optimizer or Sensitivity Analyzer. - Specify Optimization Options
After you configure design variables and design requirements for response optimization in Response Optimizer, you can specify additional options for the optimization process. - Interact with Plots
This topic shows how to interact with plots in the Response Optimizer. - Compare Requirements and Design Variables Using Spider Plot
This example shows how to use a spider plot to compare requirement evaluations before and after optimizing the response. - Save Design Variable Values for Specific Iteration
This example shows how to save the design variable values for specific optimization iterations. - Update Model with Design Variables Set
This example shows how to update a model with a set of design variables. - Save and Load Optimization Sessions
Structure of an optimization session, and saving and loading sessions in the Response Optimizer.
Code Generation
- Generate MATLAB Code for Design Optimization Problems (GUI)
This example shows how to automatically generate a MATLAB® function to solve a design optimization problem.
Troubleshooting
Optimization Does Not Make Progress
What to do if the optimization stalls or no changes are seen in parameters values.
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.
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.