Skip to Main Content Skip to Search
Product Documentation

Speedup Using Parallel Computing

When to Use Parallel Computing for Parameter Estimation

You can use Simulink Design Optimization software with Parallel Computing Toolbox™ software to speed up parameter estimation of Simulink models. Using parallel computing may reduce the estimation time in the following cases:

When you use parallel computing, Simulink Design Optimization software distributes independent simulations to run them in parallel on multiple MATLAB sessions, also known as workers. The time required to simulate the model dominates the total estimation time. Therefore, distributing the simulations significantly reduces the estimation time. For more information on the expected speedup, see How Parallel Computing Speeds Up Estimation.

The following sections describe how to configure your system, and use parallel computing:

How Parallel Computing Speeds Up Estimation

You can enable parallel computing with the Nonlinear least squares, Gradient descent and Pattern search estimation methods in the Simulink Design Optimization software. The following sections describe how parallel computing speeds up the estimation:

Parallel Computing with Nonlinear least squares and Gradient descent Methods

When you select Gradient descent as the estimation method, the model is simulated during the following computations:

The total time, , taken per iteration to perform these simulations is given by the following equation:

where is the time taken to simulate the model and is assumed to be equal for all simulations, is the number of parameters to estimate, and is the number of line searches.

When you use parallel computing, Simulink Design Optimization software distributes the simulations required for objective gradient computations. The simulation time taken per iteration when the gradient computations are performed in parallel, , is approximately given by the following equation:

where is the number of MATLAB workers.

The expected reduction of the total estimation time is given by the following equation:

For example, for a model with Np=3, Nw=4, and Nls=3, the expected reduction of the total estimation time equals .

Parallel Computing with the Pattern search Method

The Pattern search method uses search and poll sets to create and compute a set of candidate solutions at each estimation iteration.

The total time, , taken per iteration to perform these simulations, is given by the following equation:

where is the time taken to simulate the model and is assumed to be equal for all simulations, is the number of parameters to estimate, is a factor for the search set size, and is a factor for the poll set size.

When you use parallel computing, Simulink Design Optimization software distributes the simulations required for the search and poll set computations, which are evaluated in separate parfor loops. The simulation time taken per iteration when the search and poll sets are computed in parallel, , is given by the following equation:

where is the number of MATLAB workers.

The expected speed up for the total estimation time is given by the following equation:

For example, for a model with Np=3, Nw=4, Nss=15, and Nps=2, the expected speedup equals .

Using the Pattern search method with parallel computing may not speed up the estimation time. When you do not use parallel computing, the method stops searching for a candidate solution at each iteration as soon as it finds a solution better than the current solution. When you use parallel computing, the candidate solution search is more comprehensive. Although the number of iterations may be larger, the estimation without using parallel computing may be faster.

  


Free Control Systems Interactive Kit

Learn more about resources for designing, testing, and implementing control systems.

Get free kit

Trials Available

Try the latest control systems products.

Get trial software
 © 1984-2012- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS