CACSDglasg02

download CACSDglasg02

of 20

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)

    [email protected]

    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.