www.gusucode.com > ident 案例代码 matlab源码程序 > ident/EstimateOverparameterizedProcessModelUsingRegularizationExample.m

    %% Estimate Over-parameterized Process Model Using Regularization  
% Use regularization to estimate parameters of an over-parameterized process
% model. 
%
% Assume that gain is known with a higher degree of confidence than other
% model parameters.   

% Copyright 2015 The MathWorks, Inc.


%% 
% Load data. 
load iddata1 z1;  

%% 
% Estimate an unregularized process model. 
m = idproc('P3UZ','K',7.5,'Tw',0.25,'Zeta',0.3,'Tp3',20,'Tz',0.02);
m1 = procest(z1,m);  

%% 
% Estimate a regularized process model. 
opt = procestOptions;
opt.Regularization.Nominal = 'model';
opt.Regularization.R = [100;1;1;1;1];
opt.Regularization.Lambda = 0.1;
m2 = procest(z1,m,opt);  

%% 
% Compare the model outputs with data. 
compare(z1,m1,m2);   

%%
% Regularization helps steer the estimation process towards the correct
% parameter values.