Enforcing constraints during grey-box state space identification
6 views (last 30 days)
Show older comments
Hi all,
I would like to ask if there is a specific way to enforce parameter constraints during grey-box state space identification. Initially I am mostly worried about enforcing a positivity constraint (all values within the parameters vector should be >0).
Any ideas?
Thanks.
0 Comments
Answers (2)
Rajiv Singh
on 17 Mar 2012
In R2012a release, idgrey supports specification of parameter constraints. Look at the (new) "Structure" property of the model which contains a field called "Parameters". "Parameters" holds the array of all the model's parameters; for each, you can specify whether it is fixed or not and prescribe min/max bounds. Please see documentation for idgrey and greyest.
In previous releases, you may be able to enforce a constraint by defining the equations that translate the parameters to state-space matrices appropriately. For example, you can choose the square root of a parameter to model the system (so that the equations use the square of supplied values). You may also try rejecting negative values in the ODE file by replacing negative values with zero: par = max(0, par); This may help steer the optimizer away from choosing negative values for coefficients (with the risk that the optimizer may give up too soon). For SearchMethod, you can choose 'lsqnonlin' which is usually better at handling searches with parameter constraints.
0 Comments
See Also
Categories
Find more on Systems of Nonlinear Equations in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!