CACSDglasg02
Transcript of CACSDglasg02
-
8/8/2019 CACSDglasg02
1/20
SLICOT system identification
software and applicationsVasile Sima
National Institute for Research & Development in Informatics,Bucharest (Romania)
Diana Maria Sima, Sabine Van HuffelDepartment of Electrical Engineering (ESAT), KU Leuven (Belgium)
diana.sima,sabine. [email protected] leuven.ac.be
AcknowledgmentsWork supported by the European Community BRITE-EURAM III
Thematic Networks Programme NICONET (project BRRT-CT97-5040).
-
8/8/2019 CACSDglasg02
2/20
OVERVIEW1. Introduction2. SLICOT Identification Algorithms
3. Performance investigation of SLICOTsystem identification toolbox4. Conclusions
-
8/8/2019 CACSDglasg02
3/20
System identification : Finding mathematical models of dynamic systems from measured data.
Increasing complexity of CACSD problems need forvery reliable and efficient algorithms and software for systemidentification.
SLIDENT : new, multivariable system identification toolbox,incorporated in the Fortran 77 S ubroutine Library in Co ntrolTheory ( SLICOT ).
1. Introduction
SLIDENT objectives:reliability,efficiency,ability to solve industrial
identification problems.
SLIDENT provides:drivers,computational routines,Matlab or Scilab
interfaces.
-
8/8/2019 CACSDglasg02
4/20
SLIDENT Outline: Linear Systems
Wiener Systems (linear part + static nonlinearity)Linear systems: identified with subspace-based techniques:
state-space models are directly estimated;
no parameterizations are needed;
robust linear algebra tools (QR decomposition and SVD);
only one parameter has to be chosen.
Approaches:
MOESP (Multivariable Output Error state SPace)
N4SID (Numerical algorithm for Subspace State Space SystemIDentification)
-
8/8/2019 CACSDglasg02
5/20
SLIDENT Outline: Linear Systems
Wiener Systems (linear part + static nonlinearity)
Wiener Systems:
linear part parameterized with output normal form (ONF);
nonlinearity modeled by a neural network with one hiddenlayer.
Parameters are estimated by a tailored Levenberg-Marquardt(LM) algorithm.
Implementations for LM:
widentc - using Cholesky factorization or CG algorithm;
wident - MINPACK-like, LAPACK-based, structureexploiting implementation, using QR factorization with
block-column pivoting.
-
8/8/2019 CACSDglasg02
6/20
SLIDENT features
flexibility of usage: various options, e.g., MOESP and N4SIDapproaches + their combination;
standard or fast techniques for data compression (includingabilities to exploit the block-Hankel structure);
multiple (possibly connected) data batches processing;
availability of fully documented drivers and computationalroutines;
structure exploiting algorithms and dedicated linear algebratools;
optional assessment of the intermediate results byinspecting the associated condition numbers.
-
8/8/2019 CACSDglasg02
7/20
2. SLICOT Identification Algorithms
Mathematical problem descriptionWiener system state space representation:
If f () is the identity function, the system reduces to a
standard linear model .Identification problem for the linear model:
Find order n and system matrices A , B , C , D using
s>n and I/O data sequences {u ( k)} and {y( k)}, k = 1:t .
-
8/8/2019 CACSDglasg02
8/20
1. Build I/O data matrix H as two concatenated
block Hankel matrices;
2. Factorize H = QR for data compression (Q not needed) ;3. Use matrix R and an SVD to compute the system
order n and the system matrices;
4. Covariance matrices residuals LS problem;5. Kalman gain matrix solving a DARE.
Linear Subspace-based System Identification
Implemented steps:
-
8/8/2019 CACSDglasg02
9/20
Linear Subspace-based System Identification
Implemented options:
Data processing: non-sequential or sequential;
Fast algorithms for getting the factor R :
structure-exploiting Cholesky factorization of H T H ;
fast QR algorithm, based on the generalized Schuralgorithm.
when fast algorithms fail, QR factorization isautomatically used.
-
8/8/2019 CACSDglasg02
10/20
Wiener System IdentificationApproach
state space representation for linear part;
single layer neural network (NN) for nonlinear part.
Steps :
1. Estimating linear part : fast subspace identificationalgorithm based on available I/O data.
2. Estimating nonlinear part : Levenberg-Marquardt(LM) algorithm.
3. Estimating whole system : structure-exploitingLAPACK-based LM algorithm.
-
8/8/2019 CACSDglasg02
11/20
Wiener System Identification
- Done as if there are no nonlinearities.
- Obtain n , ( A , B , C , D ) and x(1).
Step 1. Estimating linear part
-
8/8/2019 CACSDglasg02
12/20
Wiener System Identification
Step 2. Estimating nonlinear part
- Compute estimated linear output, .
- Compute initial estimate, nonlinear model,
Parameter vector nl built by stacking
Solve NLS, .))((
min2
1nl
N
k k k z f y
)()1,(),()(),,(),(
:)())((
))((
1 1
k sbisbk z jisis
k k z f k z f
si
l
j j
sss
).1,(and),(),,,(),,( sbisb jisis
-
8/8/2019 CACSDglasg02
13/20
Wiener System Identification
Step 3. Estimating whole system
1. Use nl for nonlinear part, and l for linear part,where l obtained from ONF parameterization of
( A , C ) , B , D and x (1). := [ nlT
lT]
T.
2. Estimate the whole model, solving NLS
.)(
min2
1
N
k k k y y
Options :CG;
structured Cholesky;
structured QR.
-
8/8/2019 CACSDglasg02
14/20
3. Performance investigation of SLICOT system identification toolbox
I/O data sets from the free DAISY collectionwww.esat.kuleuven.ac.be/sis
22 applications from simulated or real industrialsettings
Results obtained on an IBM PC at 500 MHz, 128Mb memory, Compaq Visual Fortran V5.1, non-optimized BLAS, and Matlab 6.1 (R12)
Many data sets of DAISY collection are wellmodelled by linear systems, but using Wienermodels usually gave significant improvement.
http://www.esat.kuleuven.ac.be/sista/daisy -
8/8/2019 CACSDglasg02
15/20
Performance investigation of SLIDENT
Linear system identification results
Timing comparison : SLICOT slmoen4 with fast QR factorization
versus Matlab 6.1 n4sid with QR factorization (default options).
Speed-upfactors up
to 240!
-
8/8/2019 CACSDglasg02
16/20
Wiener system identification results
MINPACK-like SLIDENT implementation;
Wiener model much better + smoothing effect.
Mean values of prediction errors for Application 1(Ethane-ethylene distillation column):
Linear model
Wiener model
n = 3
5 inputs
3 outputs
4 sets of 90 I/Osamples, all used,after detrending;
-
8/8/2019 CACSDglasg02
17/20
Wiener system identification results (ctnd.)Error norm trajectory during the optimization
calculations for Application 1:
first three parts correspondto solution of NLS problemsfor the 3 outputs;
the last part correspondsto the optimization of wholeWiener system.
-
8/8/2019 CACSDglasg02
18/20
Wiener system identification results (ctnd.)Mean values of prediction errors for
Application 2 (Glass furnace):
The second half of data set not very well modeled.
Reason: the size of estimation set smaller than the number of unknown parameters (670).
n = 7
3 inputs
6 outputs
1247 I/O samples;
first 623 samplesused for estimation;
all samples used
for validation.
Linear model
Wiener model
-
8/8/2019 CACSDglasg02
19/20
Wiener system identification results (ctnd.)Mean values of prediction errors for
Application 2 (Glass furnace):
Execution times:
n = 7
3 inputs
6 outputs
1247 I/O samples;
all samples usedfor estimation;
Cholesky
factorization-basedimplementation
Linear model
Wiener model
1352.10 sec. (MINPACK-like);
2580.39 sec. (Cholesky-based);
19374.70 sec. (CG-based).
-
8/8/2019 CACSDglasg02
20/20
4. Conclusions
Algorithmic and numerical issues concerningnumerical techniques for linear and Wienermultivariable system identification were described.
These techniques are implemented in the newsystem identification toolbox, SLIDENT, for SLICOTLibrary.
Numerical results show that SLIDENT is reliable,efficient, and powerful enough to solve largeidentification problems.