nlhwOptions
Option set for nlhw
Description
creates
the default option set for opt
= nlhwOptionsnlhw
. Use dot notation
to customize the option set, if needed.
creates
an option set with options specified by one or more opt
= nlhwOptions(Name,Value
)Name,Value
pair
arguments. The options that you do not specify retain their default
value.
Examples
Estimate Hammerstein-Wiener Model Using an Estimation Option Set
Create estimation option set for nlhw
to view estimation progress, use the Levenberg-Marquardt search method, and set the maximum iteration steps to 50
.
opt = nlhwOptions; opt.Display = 'on'; opt.SearchMethod = 'lm'; opt.SearchOptions.MaxIterations = 50;
Load data and estimate the model.
load iddata3
sys = nlhw(z3,[4 2 1],idSigmoidNetwork,idPiecewiseLinear,opt);
Specify an Option Set for Hammerstein-Wiener Model Estimation
Create an options set for nlhw
where:
Initial conditions are estimated from the estimation data.
Subspace Gauss-Newton least squares method is used for estimation.
opt = nlhwOptions('InitialCondition','estimate','SearchMethod','gn');
Input Arguments
Name-Value Arguments
Specify optional pairs of arguments as
Name1=Value1,...,NameN=ValueN
, where Name
is
the argument name and Value
is the corresponding value.
Name-value arguments must appear after other arguments, but the order of the
pairs does not matter.
Before R2021a, use commas to separate each name and value, and enclose
Name
in quotes.
Example: nlhwOptions('InitialCondition','estimate')
InitialCondition
— Handling of initial conditions
'zero'
(default) | 'estimate'
Handling of initial conditions during estimation using nlhw
,
specified as the comma-separated pair consisting of InitialCondition
and
one of the following:
'zero'
— The initial conditions are set to zero.'estimate'
— The initial conditions are treated as independent estimation parameters.
Display
— Estimation progress display setting
'off'
(default) | 'on'
Estimation progress display setting, specified as the comma-separated
pair consisting of 'Display'
and one of the following:
'off'
— No progress or results information is displayed.'on'
— Information on model structure and estimation results are displayed in a progress-viewer window.
Normalize
— Option to normalize estimation data
true
(default) | false
Option to normalize estimation data, specified as
true
or false
. If
Normalize
is true
, then the
algorithm uses the method specified in
NormalizationOptions
to normalize the
data.
Because saturation, deadzone, and piecewise-linear nonlinearities are
physically meaningful, you must use caution to take normalization into
account when specifying initial values. However, even when
Normalize
is true, the software automatically
disables normalization for these nonlinearities when you set the
property NormalizationOptions.NormalizationMethod
to 'auto'
.
NormalizationOptions
— Option set for configuring normalization
option set
Option set for configuring normalization, specified as the options
shown in the following table. The first option,
NormalizationMethod
, determines which method
the algorithm uses. The default option is 'auto'
. In
general, for idnlhw
models, a setting of
'auto'
is equivalent to a setting of
'center'
. However, if your model includes any of
the nonlinearity estimators that have physically meaningful
parameters—idSaturation
,
idDeadzone
, and
idPiecewiseLinear
—a setting of
'auto'
results in the software disabling
normalization for those estimators.
Except for 'medianiqr'
, each specific method in
NormalizationMethod
has an associated
configuration option, such as CenterMethodType
when
you specify the 'center'
method. For more
information about these methods, see the MATLAB® function normalize
.
Method or Method Option | Value | Description | Default |
---|---|---|---|
NormalizationMethod | 'auto' | Set method automatically. |
(equivalent
to
either The
|
'center' | Center data to have mean 0. | ||
'zscore' | z-score with mean 0 and standard deviation 1. | ||
'norm' | 2-norm. | ||
'scale' | Scale by standard deviation. | ||
'range' | Rescale range of data to [min,max]. | ||
'medianiqr' | Center and scale data to have median 0 and interquartile scale of 1. | ||
| 'mean' | Center to have mean 0. | 'mean' |
'median' | Center to have median 0. | ||
| 'std' | Center and scale to have mean 0 and standard deviation 1. | 'std' |
'robust' | Center and scale to have median 0 and median absolute deviation 1. | ||
| 'std' | Scale by standard deviation. | 'std' |
'mad' | Scale by median absolute deviation. | ||
'iqr' | Scale by interquartile range. | ||
'first' | Scale by first element of data. | ||
| Positive real value | p-norm, where p is a positive integer. | 2 |
| 2-element row vector | Rescale range of data to an interval of the form
[a b] , where a
< b . | [0 1] |
OutputWeight
— Weighting of prediction error in multi-output estimations
'noise'
(default) | positive semidefinite matrix
Weighting of prediction error in multi-output model estimations,
specified as the comma-separated pair consisting of 'OutputWeight'
and
one of the following:
'noise'
— Optimal weighting is automatically computed as the inverse of the estimated noise variance. This weighting minimizesdet(E'*E)
, whereE
is the matrix of prediction errors. This option is not available when using'lsqnonlin'
as a'SearchMethod'
.A positive semidefinite matrix,
W
, of size equal to the number of outputs. This weighting minimizestrace(E'*E*W/N)
, whereE
is the matrix of prediction errors andN
is the number of data samples.
Regularization
— Options for regularized estimation of model parameters
structure
Options for regularized estimation of model parameters, specified
as the comma-separated pair consisting of 'Regularization'
and
a structure with fields:
Field Name | Description | Default |
---|---|---|
Lambda | Bias versus variance trade-off constant, specified as a nonnegative scalar. | 0 — Indicates no regularization. |
R | Weighting matrix, specified as a vector of nonnegative scalars
or a square positive semi-definite matrix. The length must be equal
to the number of free parameters in the model, np .
Use the nparams command to determine
the number of model parameters. | 1 — Indicates a value of eye(np) . |
Nominal |
The nominal value towards which the free parameters are pulled during estimation, specified as one of the following:
| 'zero' |
To specify field values in Regularization
,
create a default nlhwOptions
set and modify the
fields using dot notation. Any fields that you do not modify retain
their default values.
opt = nlhwOptions; opt.Regularization.Lambda = 1.2; opt.Regularization.R = 0.5*eye(np);
Regularization is a technique for specifying model flexibility constraints, which reduce uncertainty in the estimated parameter values. For more information, see Regularized Estimates of Model Parameters.
SearchMethod
— Numerical search method used for iterative parameter estimation
'auto'
(default) | 'gn'
| 'gna'
| 'lm'
| 'grad'
| 'lsqnonlin'
| 'fmincon'
Numerical search method used for iterative parameter estimation, specified as the one of the values in the following table.
SearchMethod | Description |
---|---|
'auto' | Automatic method selection A combination of the
line search algorithms, |
'gn' | Subspace Gauss-Newton least-squares search Singular
values of the Jacobian matrix less than
|
'gna' | Adaptive subspace Gauss-Newton search Eigenvalues
less than |
'lm' | Levenberg-Marquardt least squares search Each
parameter value is |
'grad' | Steepest descent least-squares search |
'lsqnonlin' | Trust-region-reflective algorithm of This algorithm requires Optimization Toolbox™ software. |
'fmincon' | Constrained nonlinear solvers You can use the
sequential quadratic programming (SQP) and trust-region-reflective
algorithms of the
|
SearchOptions
— Option set for the search algorithm
search option set
Option set for the search algorithm, specified as the comma-separated
pair consisting of 'SearchOptions'
and a search
option set with fields that depend on the value of
SearchMethod
.
SearchOptions
Structure When SearchMethod
is Specified
as 'gn'
, 'gna'
, 'lm'
,
'grad'
, or 'auto'
Field Name | Description | Default | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Tolerance | Minimum percentage difference between the current value
of the loss function and its expected improvement after the next iteration,
specified as a positive scalar. When the percentage of expected improvement
is less than | 1e-5 | ||||||||||||||||||||||||||||||
MaxIterations | Maximum number of iterations during loss-function minimization, specified as a positive
integer. The iterations stop when Setting
Use
| 20 | ||||||||||||||||||||||||||||||
Advanced | Advanced search settings, specified as a structure with the following fields:
|
SearchOptions
Structure When SearchMethod
Is Specified
as 'lsqnonlin'
Field Name | Description | Default |
---|---|---|
FunctionTolerance | Termination tolerance on the loss function that the software minimizes to determine the estimated parameter values, specified as a positive scalar. The
value of | 1e-5 |
StepTolerance | Termination tolerance on the estimated parameter values, specified as a positive scalar. The value of | 1e-6 |
MaxIterations | Maximum number of iterations during loss-function minimization, specified as a positive
integer. The iterations stop when The value of
| 20 |
SearchOptions
Structure When SearchMethod
Is Specified
as 'fmincon'
Field Name | Description | Default |
---|---|---|
Algorithm |
For more information about the algorithms, see Constrained Nonlinear Optimization Algorithms (Optimization Toolbox) and Choosing the Algorithm (Optimization Toolbox). | 'sqp' |
FunctionTolerance | Termination tolerance on the loss function that the software minimizes to determine the estimated parameter values, specified as a positive scalar. | 1e-6 |
StepTolerance | Termination tolerance on the estimated parameter values, specified as a positive scalar. | 1e-6 |
MaxIterations | Maximum number of iterations during loss function minimization, specified as a positive
integer. The iterations stop when | 100 |
To specify field values in SearchOptions
, create a
default nlhwOptions
set and modify the fields using
dot notation. Any fields that you do not modify retain their default
values.
opt = nlhwOptions; opt.SearchOptions.MaxIterations = 50; opt.SearchOptions.Advanced.RelImprovement = 0.5;
Advanced
— Additional advanced options
structure
Additional advanced options, specified as the comma-separated
pair consisting of 'Advanced'
and a structure with
fields:
Field Name | Description | Default |
---|---|---|
ErrorThreshold | Threshold for when to adjust the weight of large errors from
quadratic to linear, specified as a nonnegative scalar. Errors larger
than ErrorThreshold times the estimated standard
deviation have a linear weight in the loss function. The standard
deviation is estimated robustly as the median of the absolute deviations
from the median of the prediction errors, divided by 0.7. If your
estimation data contains outliers, try setting ErrorThreshold to 1.6 . | 0 — Leads to a purely quadratic loss
function. |
MaxSize | Maximum number of elements in a segment when input-output data is split into segments, specified as a positive integer. | 250000 |
To specify field values in Advanced
, create
a default nlhwOptions
set and modify the fields
using dot notation. Any fields that you do not modify retain their
default values.
opt = nlhwOptions; opt.Advanced.ErrorThreshold = 1.2;
Output Arguments
opt
— Option set for nlhw
nlhwOptions
option set
Option set for nlhw
, returned as an nlhwOptions
option
set.
Version History
Introduced in R2015aR2018a: Renaming of Estimation and Analysis Options
The names of some estimation and analysis options were changed in R2018a. Prior names still work.
See Also
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)