findstatesOptions
Option set for findstates
Description
creates
the default option set for opt
= findstatesOptionsfindstates
. Use dot
notation to customize the option set, if needed.
creates
an option set with options specified by one or more opt
= findstatesOptions(Name,Value
)Name,Value
pair
arguments. The options that you do not specify retain their default
value.
Examples
Identify Initial States Using Option Set
Create an option set for findstates
by configuring a specification object for the initial states.
Identify a fourth-order state-space model from data.
load iddata8 z8; sys = ssest(z8,4);
z8
is an iddata
object containing time-domain system response data. sys
is a fourth-order idss
model that is identified from the data.
Configure a specification object for the initial states of the model.
x0obj = idpar([1;nan(3,1)]); x0obj.Free(1) = false; x0obj.Minimum(2) = 0; x0obj.Maximum(2) = 1;
x0obj
specifies estimation constraints on the initial conditions. The value of the first state is specified as 1 when x0obj
is created. x0obj.Free(1) = false
specifies the first initial state as a fixed estimation parameter. The second state is unknown. But, x0obj.Minimum(2) = 0
and x0obj.Maximum(2) = 1
specify the lower and upper bounds of the second state as 0
and 1
, respectively.
Create an option set for findstates
to identify the initial states of the model.
opt = findstatesOptions; opt.InitialState = x0obj;
Identify the initial states of the model.
x0_estimated = findstates(sys,z8,Inf,opt);
Specify Option Set for Initial States Estimation
Create an option set for findstates
where:
Initial states are estimated such that the norm of prediction error is minimized. The initial values of the states corresponding to nonzero delays are also estimated.
Adaptive subspace Gauss-Newton search is used for estimation.
opt = findstatesOptions('InitialState','d','SearchMethod','gna');
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: findstatesOptions('InitialState','d')
InitialState
— Estimation of initial states
'e'
(default) | 'd'
| vector or matrix | idpar
object x0Obj
Estimation of initial states, specified as the comma-separated
pair consisting of 'InitialState'
and one of the
following:
'e'
— The initial states are estimated such that the norm of prediction error is minimized.For nonlinear grey-box models, only those initial states
i
that are designated as free in the model (sys.InitialStates(i).Fixed = false
) are estimated. To estimate all the states of the model, first specify all theNx
states of theidnlgrey
modelsys
as free.for i = 1:Nx sys.InitialStates(i).Fixed = false; end
Similarly, to fix all the initial states to values specified in
sys.InitialStates
, first specify all the states as fixed in thesys.InitialStates
property of the nonlinear grey-box model.'d'
— Similar to'e'
, but absorbs nonzero delays into the model coefficients. The delays are first converted to explicit model states, and the initial values of those states are also estimated and returned.Use this option for discrete-time linear models only.
Vector or Matrix
— Initial guess for state values, when using nonlinear models. Specify a column vector of length equal to the number of states. For multi-experiment data, use a matrix withNe
columns, whereNe
is the number of experiments.Use this option for nonlinear models only.
x0obj
— Specification object created usingidpar
. Usex0obj
to impose constraints on the initial states by fixing their value or specifying minimum or maximum bounds.Use
x0obj
only for nonlinear grey-box models and linear state-space models (idss
oridgrey
). This option is applicable only for prediction horizon equal to1
orInf
. Seefindstates
for more details about the prediction horizon.
InputOffset
— Removal of offset from time-domain input data during estimation
[]
(default) | vector of positive integers | matrix
Removal of offset from time-domain input data during estimation, specified as one of the following:
A column vector of positive integers of length Nu, where Nu is the number of inputs.
[]
— Indicates no offset.Nu-by-Ne matrix — For multi-experiment data, specify
InputOffset
as an Nu-by-Ne matrix. Nu is the number of inputs and Ne is the number of experiments.
Each entry specified by InputOffset
is
subtracted from the corresponding input data.
OutputOffset
— Removal of offset from time-domain output data during estimation
[]
(default) | vector | matrix
Removal of offset from time-domain output data during estimation, specified as one of the following:
A column vector of length Ny, where Ny is the number of outputs.
[]
— Indicates no offset.Ny-by-Ne matrix — For multi-experiment data, specify
OutputOffset
as a Ny-by-Ne matrix. Ny is the number of outputs, and Ne is the number of experiments.
Each entry specified by OutputOffset
is
subtracted from the corresponding output data.
OutputWeight
— Weighting of prediction errors when using multi-output data
[]
(default) | 'noise'
| matrix
Weighting of prediction errors when using multi-output data,
specified as the comma-separated pair consisting of 'OutputWeight'
and
one of the following:
[]
— No weighting is used. Specifying as[]
is the same aseye(Ny)
, where Ny is the number of outputs.'noise'
— Inverse of the noise variance stored with the model is used for weighting during estimation of initial states.Positive semidefinite matrix,
W
, of size Ny-by-Ny — This weighting minimizestrace(E'*E*W)
for estimation of initial states, whereE
is the matrix of prediction errors.
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 | 0.01 | ||||||||||||||||||||||||||||||
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 findstatesOptions
set and modify the fields
using dot notation. Any fields that you do not modify retain their
default values.
opt = findstatesOptions; opt.SearchOptions.Tolerance = 0.02; opt.SearchOptions.Advanced.MaxBisections = 30;
Output Arguments
opt
— Option set for findstates
findstatesOptions
option set
Option set for findstates
, returned as
an findstatesOptions
option set.
Version History
Introduced in R2012aR2018a: 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)
Asia Pacific
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本Japanese (日本語)
- 한국Korean (한국어)