International Journal of Automation and Computing 12(5), October 2015, 482-489 DOI: 10.1007/s11633-015-0905-y RIM: A Matlab Software Tool for Recursive Identification Methods Aissa Rebai 1 Kamel Guesmi 2 Boualem Hemici 1 1 Process Control Laboratory, National Polytechnic School of Algiers, El Harrach, Algiers 16200, Algeria 2 CReSTIC, IUT of Troyes, 09 Rode of Quebec, Troyes 10026, France Abstract: This paper introduces a recursive identification methods toolbox (called RIM) running under Matlab environment for dynamic system identification from available data. The RIM includes many methods which are generally used. The RIM helps users to validate the theoretical results and to carry out comparison between identifications methods without the need of algorithms programming. Furthermore, the RIM can be used as an education platform to study the identification parameters effect on model validity and results accuracy. To show its performance and capability, the RIM is evaluated through many application examples. Keywords: Matlab graphical user interfaces (GUI), system identification, recursive methods, multi-innovation algorithms, auxiliary model algorithms, model validation. 1 Introduction In dynamic system theory, the forward problem is the system behavior description using mathematical models. These expressions can be established using analytical devel- opment and physical laws, which is difficult in most cases. To deal with this problem, the system behavior can be ap- proximated using the identification theory [1, 2] . In this context, there is several methods of identifica- tion and the most used are those called recursive meth- ods. Indeed, they are frequently used because of their high performance and capability to approximate a large class of systems [3−6] . In order to simplify the use of these techniques, sev- eral toolboxes and graphical user interfaces (GUI) were implemented in Matlab environment and we can men- tion, frequency domain system identification toolbox [7] , the continuous-time system identification (CONTSID) toolbox [8] , recursive identification algorithms library [9] , the mathworks system identification toolbox [10] , the interac- tive tool for system identification education (ITSIE) [11] , the computer aided program for time-series analysis and iden- tification of noisy systems (CAPTAIN) toolbox [12] , and the university of newcastle identification toolbox (UNIT) [13] . However, these tools are, in most cases, not easy to use, commercial and need a minimum of information on Matlab environment manipulations. Furthermore, these tools are relatively limited to specific methods and do not allow the comparison between the main identification techniques. In this paper, we present RIM which is an identification platform that includes the main recursive methods. This platform is developed using Matlab GUI [14] , and is non- Regular paper Manuscript received March 15, 2014; accepted October 23, 2014 Recommended by Associate Editor Sheng Chen c Institute of Automation, Chinese Academy of Science and Springer-Verlag Berlin Heidelberg 2015 commercial and freely available. RIM possesses the advan- tage to be easy to use by beginners and students to validate the theoretical results without any need to learn about Mat- lab programming environment and manipulations. The paper is organized as follows. In Sections 2 and 3, the main recursive identification methods are presented. Description of the RIM GUI is given in Section 4. Applica- tion examples are discussed in Section 5. 2 Recursive identification algorithms The identification problem can take the form as y(t)= θ T ϕ(t)+ e(t) (1) where y(t) is the system output, θ is the parameter vector to be estimated, ϕ is the observations vector, and e(t) is a white noise with zero mean value and constant variance. In this paper, the superscript T denotes the transpose. The dimensions of ϕ and θ depend on the model choice. In this section, we give a survey on the most known al- gorithms used in systems identification. 2.1 Stochastic gradient (SG) algorithm From (1), we define the criterion J1(t) as min ˆ θ(t) J1(t)=E{||y(t) − ˆ θ T (t)ϕ(t)|| 2 }. (2) Minimizing this criterion and using the stochastic gradient search principle, we obtain the stochastic gradient identifi- cation algorithm [15] ˆ θ(t)= ˆ θ(t − 1) + ϕ(t) r(t) y(t) − ˆ θ T (t − 1)ϕ(t) (3) r(t)= r(t − 1) + ||ϕ(t)|| 2 , r(0) = 1 (4) where
8
Embed
RIM: A Matlab Software Tool for Recursive Identification ... · Aissa Rebai1 Kamel Guesmi2 Boualem Hemici1 1 Process Control Laboratory, National Polytechnic School of Algiers, El
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
International Journal of Automation and Computing 12(5), October 2015, 482-489
DOI: 10.1007/s11633-015-0905-y
RIM: A Matlab Software Tool for Recursive
Identification Methods
Aissa Rebai1 Kamel Guesmi2 Boualem Hemici11Process Control Laboratory, National Polytechnic School of Algiers, El Harrach, Algiers 16200, Algeria
2CReSTIC, IUT of Troyes, 09 Rode of Quebec, Troyes 10026, France
Abstract: This paper introduces a recursive identification methods toolbox (called RIM) running under Matlab environment for
dynamic system identification from available data. The RIM includes many methods which are generally used. The RIM helps
users to validate the theoretical results and to carry out comparison between identifications methods without the need of algorithms
programming. Furthermore, the RIM can be used as an education platform to study the identification parameters effect on model
validity and results accuracy. To show its performance and capability, the RIM is evaluated through many application examples.
Keywords: Matlab graphical user interfaces (GUI), system identification, recursive methods, multi-innovation algorithms, auxiliary
model algorithms, model validation.
1 Introduction
In dynamic system theory, the forward problem is the
system behavior description using mathematical models.
These expressions can be established using analytical devel-
opment and physical laws, which is difficult in most cases.
To deal with this problem, the system behavior can be ap-
proximated using the identification theory[1, 2].
In this context, there is several methods of identifica-
tion and the most used are those called recursive meth-
ods. Indeed, they are frequently used because of their high
performance and capability to approximate a large class of
systems[3−6].
In order to simplify the use of these techniques, sev-
eral toolboxes and graphical user interfaces (GUI) were
implemented in Matlab environment and we can men-
tion, frequency domain system identification toolbox[7],
the continuous-time system identification (CONTSID)
toolbox[8], recursive identification algorithms library[9], the
mathworks system identification toolbox[10], the interac-
tive tool for system identification education (ITSIE)[11], the
computer aided program for time-series analysis and iden-
tification of noisy systems (CAPTAIN) toolbox[12], and the
university of newcastle identification toolbox (UNIT)[13].
However, these tools are, in most cases, not easy to use,
commercial and need a minimum of information on Matlab
environment manipulations. Furthermore, these tools are
relatively limited to specific methods and do not allow the
comparison between the main identification techniques.
In this paper, we present RIM which is an identification
platform that includes the main recursive methods. This
platform is developed using Matlab GUI[14], and is non-
For each identification method, one of the previous algo-
rithms described in Section (2) can be used to estimate the
parameter vector.
For validation of the various identified models, the esti-
mations of the normalized autocorrelations RN(i) are cal-
culated. RN(i) is defined for the 1st category of identifica-
tion methods and the whiteness test is
RN(i) =R(i)
R(0), i = 1, 2, · · · , max(nA, nB + d) (28)
with
R(i) =1
N
N∑t=1
ε(t)ε(t − i), R(0) =1
N
N∑t=1
ε2(t). (29)
For the 2nd category, the uncorrelation test is applied and
we have
RN(i) =R(i)√√√√
(1
N
N∑t=1
y2(t)
)(1
N
N∑t=1
ε2(t)
) (30)
with
R(i) =1
N
N∑t=1
ε(t)y(t − i) (31)
where ε(t) is output prediction error, y(t) is system output,
y(t) is model output, and N is data number.
The identified model is valid if |RN(i)| ≤ 2.17√N
. In prac-
tice, the used criterion is |RN(i)| ≤ 0.15[22] .
4 Description of the RIM toolbox
The proposed RIM GUI is developed using tools available
in Matlab/GUI and all algorithms described in Sections 2
and 3 are programmed using Matlab environment in such
way that the user does not need Matlab or any other pro-
gramming language experience.
To start the RIM platform, you have to enter into the
Matlab command line: RIM.
The RIM window appears on the screen as shown in
Fig. 1.
Fig. 1 RIM window
486 International Journal of Automation and Computing 12(5), October 2015
In this platform, the user feels free to use classical menu
or buttons. Indeed, in the menu, we set the links of differ-
ent buttons. Furthermore, RIM allows user to save or print
the identification process results in several formats such as
*.m, *.txt and *.doc using the option “Save as · · · ” and
“Print” in the menu. RIM also allows plotting the vari-
ables (identification error, error autocorrelation, etc.) in
external figures. Furthermore, the RIM shows a message
indicating if the model is valid or not based on the values
of the error autocorrelation.
The user can also jump from the identification category
to the other by pressing the button “Next” or “Previous”.
For each button, we set a shortcut such as CTRL+S for the
option “Save as · · · ” , CTRL+P for “Print”, etc.
The use of RIM can be summarized on 3 steps and they
are the main steps of any identification process as shown in
Fig. 2. The first step is the generation of I/O file or data
file. The second is the choice of the techniques to be used
for system identification. And the last one is the selection
of the identification parameters such as the polynomials or-
ders nA, nB and nC , the initial adaptation gain F (0) and
the forgetting factor λ1(t).
Fig. 2 Identification steps
5 Application examples
5.1 Example 1: Identification of a piezo-electric actuator
In order to illustrate the application and the performance
of the RIM GUI, this section discusses the identification of
a piezoelectric actuator (PEA) which is a nonlinear system.
The experimental data used for the identification cor-
responds to the piezoelectric actuator APA-120ML. The
excitation signal is a sinusoidal signal of frequency 50 Hz:
u(t) = 68.5 sin(2π × 50t + 0.44) + 61.5(V).
5.1.1 Identification of ARX model
The piezoelectric actuators are generally modeled by a
second-order system. Therefore, the polynomials orders of
the model are selected as follows: nA = 2, nB = 2, nC = 1
and d = 0. The identification parameters used in this paper
are summarized in Table 2.
Table 2 Identification parameters
Parameter Value
nA 2
nB 2
nC 1
d 0
F (0) 1 × 105
A0 [1 0.3]
λ0 0.97
λ1 0.97
N 2 × 104
The identification results using the traditional RLS
method are shown in Fig. 3. From Fig. 3, the values of
|RN(i)| are all less than 0.15, which means that this model
is valid and the system can be represented by the ARX
model as
y(t) = − a1y(t − 1) − a2y(t − 2) + b1u(t − 1)+
b2u(t − 2) + e(t)
with a1 = −1.0577, a2 = 0.0575, b1 = −17.49 × 10−5 and
b2 = 17.43 × 10−5.
Fig. 3 Identification results using the RLS method
Based on RIM, more information can be illustrated (see
Figs. 4–6) to conclude about the model validity. Fig. 4 rep-
resents a comparison between the physical system response
and the model. It can be seen that the model describes
accurately the real system behavior.
From Fig. 5, the input-output feature indicates that the
hysteresis phenomenon, which is the main property of piezo-
electric actuators and can be described accurately by the
proposed ARX model. From Fig. 6, the maximum relative
error is 5%, which is in the accepted rang.
A. Rebai et al. / RIM: A Matlab Software Tool for Recursive Identification Methods 487
Fig. 4 Outputs curves
Fig. 5 Input-output feature
Fig. 6 Identification error
5.1.2 Comparative study
As mentioned before, one of the advantages of RIM is its
capability to carry out a comparison between the various
identification methods based on the normalized autocorre-
lation values. The quantification of results are shown in
Table 3.
The comparison can be carried out by two criteria,
the first one is the autocorrelation boundaries (|RN |max,
|RN |min) for each category. The second one is based on the
choice of the model structure. We compare the values of
|RN |max and |RN |min for both models ARX and ARMAX.
From Table 3, it can be seen that the ELS and the IVAM
methods are more valid than the others and the PEA can
be identified by these two techniques.
Table 3 Comparison between different identification methods
Method |RN |max |RN |min
RLS 3.8665 × 10−4 1.7747 × 10−6
ELS 3.8299 × 10−4 4.5152 × 10−7
GLS 3.8386 × 10−4 4.3394 × 10−6
OEEPM 3.8793 × 10−4 2.0307 × 10−6
IVAM 4.8068 × 10−5 4.7702 × 10−6
OEFC 6.0198 × 10−5 5.1257 × 10−4
OEFO 5.4387 × 10−4 5.1106 × 10−4
OEAFO 0.1160 0.1153
For the second criterion, the |RN |max and |RN |min of the
ELS method are the smallest for the methods based on AR-
MAX structure. For the methods based on ARX structure,
the IVAM has the smallest values of |RN |max and |RN |min.
5.1.3 Effect of identification parameters
RIM also allows user to study the influence of identifi-
cation parameters on the result. For example, in the case
of decreasing gain, the model is valid. But with a constant
gain, the model is not valid. A summary result between the
different cases, presented in Table 1 using the parameters
identification of Table 2, is illustrated in Table 4.
Table 4 Influence of adaptation gain on model validity
Adaptation gain Model validity
Decreasing gain Valid
Constant forgetting factor Not valid
Variable forgetting factor Valid
Constant gain Not valid
5.2 Example 2
Let′s consider the following system
A(q−1)y(t) = B(q−1)u(t) + e(t)
A(q−1) = 1 + a1q−1 + a2q
−2 = 1 − 1.70q−1 + 0.85q−2
B(q−1) = b1q−1 + b2q
−2 = 0.32q−1 + 0.60q−2.
This example can be rewritten as
y(t) = θTϕ(t) + e(t).
The input u(t) is an uncorrelated persistent excitation sig-
nal sequence with zero mean and unit variance, and e(t)
is a white noise sequence with zero mean and variance 0.5.
The data number is chosen as N = 500. Using RIM, the
model parameters are estimated applying traditional RLS
algorithm, MILS algorithm and MISG algorithm. The iden-
tification results for the MILS algorithm with p = 3 are
shown in Fig. 7. The complete results are summarized in
Table 5.
488 International Journal of Automation and Computing 12(5), October 2015
Fig. 7 Identification results using the MILS method (p = 3)
Table 5 Identification results of an ARX system
Method a1 a2 b1 b2
RLS (MILS p = 1) −1.6992 0.8491 0.3214 0.6019
MILS p = 3 −1.7008 0.8507 0.3201 0.6002
MISG p = 8 −1.7125 0.8312 0.3291 0.5715
From Table 5, It can be seen that the MILS algorithm
presents better results than the traditional RLS and MISG
algorithms.
5.3 Example 3
This example considers an OEMA system to evaluate the
multi-innovation auxiliary model algorithm performance in
parameters estimation.
The system is given by
y(t) =B(q−1)
A(q−1)u(t) + D(q−1)e(t)
A(q−1) = 1 + a1q−1 + a2q
−2 = 1 − 1.60q−1 + 0.80q−2
B(q−1) = b1q−1 + b2q
−2 = 0.23q−1 + 0.70q−2
D(q−1) = 1 + d1q−1 = 1 − 0.40q−1.
Simulation parameters are the same as those used in
the previous example. Using RIM, the estimated param-
eters with auxiliary model extended least squares (AM-
ELS) and multi-innovation auxiliary model extended least
squares (MI-AM-ELS) (p = 3, p = 5) algorithms are given
in Table 6.
From Table 6, the MI-AM-ELS algorithm presents bet-
ter computational efficiency compared with the AM-ELS
algorithm. These results can be improved by increasing the
innovation length p.
6 Conclusions
In this paper, we presented a Matlab GUI platform for
systems identification. The proposed toolbox deals with the
recursive identification methods and contains the necessary
tools to validate many theoretical aspects in the domain of
system identification.
The RIM toolbox allows users to make simulations with-
out the need to program the identification techniques or to
have programming experience in Matlab environment. RIM
gives to users the possibility to study the effects of different
identification parameters and makes users more insight into
the system identification theory.
Table 6 Identification results of an OEMA system
Method a1 a2 b1 b2 d1
AM-ELS (MI-AM-ELS p = 1) −1.6128 0.8126 0.2365 0.6922 0.3456
MI-AM-ELS p = 3 −1.5987 0.8054 0.2312 0.6970 0.3825
MI-AM-ELS p = 5 −1.6010 0.8026 0.2311 0.7012 0.3957
References
[1] J. P. Corriou. Process Control: Theory and Applications,London, UK: Springer-Verlag, pp. 371–380, 2004.
[2] C. Heij, A. Ran, F. Van Schagen. Introduction to Mathe-matical System Theory: Linear Systems, Identification andControl, Basel, Switzerland: Birkhauser-Verlag, pp. 115–120, 2007.
[3] X. F. Wu, Z. Q. Lang, S. A. Billings. An orthogonal leastsquares based approach to FIR designs. International Jour-nal of Automation and Computing, vol. 2, no. 2, pp. 163–170, 2005.
[4] O. M. Mohamed Vall, R. M′hiri. An approach to polyno-mial NARX/NARMAX systems identification in a closed-loop with variable structure control. International Journalof Automation and Computing, vol. 5, no. 3, pp. 313–318,2008.
[5] S. Bedoui, M. Ltaief, K. Abderrahim. New results ondiscrete-time delay systems identification. International
Journal of Automation and Computing, vol. 9, no. 6,pp. 570–577, 2012.
[6] B. C. Xu, X. L. Liu. Identification algorithm based onthe approximate least absolute deviation criteria. Interna-tional Journal of Automation and Computing, vol. 9, no. 5,pp. 501–505, 2012.
[7] I. Kollar, R. Pintelon, J. Schoukens. Frequency domainsystem identification toolbox for MATLAB: Characterizingnonlinear errors of linear models. In Proceedings of the 14thIFAC Symposium on System Identification, IFAC, Newcas-tle, Australia, pp. 726–731, 2006.
[8] H. Garnier, M. Gilson, V. Laurain. The CONTSID tool-box for MATLAB: Extensions and latest developments. InProceedings of the 15th IFAC Symposium on System Iden-tification, IFAC, Saint-Malo, France, pp. 735–740, 2009.
[9] P. Navratil, J. Ivanka. Recursive identification algorithmslibrary in MATLAB & Simulink. In Proceedings of the22nd International DAAAM Symposium, Vienna, Austria,vol. 22, no. 1, pp. 1317–1318, 2011.
A. Rebai et al. / RIM: A Matlab Software Tool for Recursive Identification Methods 489
[10] L. Ljung. MATLAB system identification toolbox usersguide, [Online], Available: http://www.mathworks.com,The Mathworks, 2012.
[11] J. L. Guzmam, D. E. Rivera, S. Dormido, M. Berenguel.An interactive software tool for system identification. Ad-vances in Engineering Software, vol. 45, no. 1, pp. 115–123,2012.
[12] P. C. Young, C. J. Taylor. Recent developments in the CAP-TAIN toolbox for Matlab. In Proceedings of the 15th IFACSymposium on System Identification, IFAC, Brussels, Bel-gium, pp. 1838–1843, 2012.
[13] B. Ninness, A. Wills, A. Mills. UNIT: A freely available sys-tem identification toolbox. Control Engineering Practice,vol. 21, no. 5, pp. 631–644, 2013.
[14] Mathworks, MATLAB users guide, [Online], Available:http://www.mathworks.com, The Mathworks, 2012.
[15] L. Ljung. System Identification: Theory for the User, 2nded., Prentice Hall, USA, pp. 361–370, 1999.
[16] M. S. Mahmoud, Y. Q. Xia. Applied Control Systems De-sign, London, UK: Springer-Verlag, pp. 35–54, 2012.
[17] F. Ding, P. X. Liu, G. Liu. Auxiliary model based multi-innovation extended stochastic gradient parameter estima-tion with colored measurement noises. Signal Processing,vol. 89, no. 10, pp. 1883–1890, 2009.
[18] F. Ding, T. Chen. Performance analysis of multi-innovationgradient type identification methods. Automatica, vol. 43,no. 1, pp. 1–14, 2007.
[19] F. Ding. Several multi-innovation identification methods.Digital Signal Processing, vol. 20, no. 4, pp. 1027–1039,2010.
[20] F. Ding, P. X. Liu, G. Liu. Multiinnovation least-squaresidentification for system modeling. IEEE Transactions onSystems, Man, and Cybernetics—Part B: Cybernetics,vol. 40, no. 3, pp. 767–778, 2010.
[21] I. D. Landau, G. Zito. Digital Control Systems: Design,Identification and Implementation, London, UK: Springer-Verlag, pp. 247–276, 2006.
[22] I. D. Landau, R. Lozano, M. M′Saad, A. Karimi. AdaptiveControl: Algorithms, Analysis and Applications, London,UK: Springer-Verlag, pp. 153–191, 2011.
[23] F. Ding, T. Chen. Combined parameter and output estima-tion of dual-rate systems using an auxiliary model. Auto-matica, vol. 40, no. 10, pp. 1739–1748, 2004.
Aissa Rebai received the B.Eng. andM. Sc. degrees in control engineering fromNational Polytechnic School of Algiers, Al-geria in 2012. He is currently a Ph. D. de-gree candidate at the Department of Con-trol, National Polytechnic School of Algiers,Algeria.
His research interests include systemidentification, intelligent control of mecha-
tronic systems and optimization algorithms.E-mail: [email protected] iD: 0000-0001-5935-731X
Kamel Guesmi received the B.Eng. de-gree in electrical engineering from the Uni-versity of Djelfa, Algeria in 2000, the M. Sc.and Ph.D. degrees in electrical engineeringfrom Reims University, France in 2003 and2006, respectively. Currently, he is an asso-ciate professor in the Department of Elec-trical Engineering, Djelfa University, Alge-ria.
His research interests include intelligent control, robust con-trol, power electronics and nonlinear dynamics.
Boualem Hemici graduated from theNational Polytechnic School (ENP) of Al-giers, Algeria in 1983. He received thePh. D. degree from National PolytechnicSchool of Algiers, Algeria in 2007. Cur-rently, he is an associate professor in theDepartment of Control, National Polytech-nic School of Algiers, Algeria.
His research interests include power elec-tronics, electrical machinery drives and process control.