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.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.Avoid common mistakes on your manuscript.
1 Introduction
In dynamic system theory, the forward problem is the system behavior description using mathematical models. These expressions can be established using analytical development and physical laws, which is difficult in most cases. To deal with this problem, the system behavior can be approximated using the identification theory[1,2].
In this context, there is several methods of identification and the most used are those called recursive methods. 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, several toolboxes and graphical user interfaces (GUI) were implemented in Matlab environment and we can mention, 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 interactive tool for system identification education (ITSIE)[11], the computer aided program for time-series analysis and identification 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-commercial and freely available. RIM possesses the advantage to be easy to use by beginners and students to validate the theoretical results without any need to learn about Matlab 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. Application examples are discussed in Section 5.
2 Recursive identification algorithms
The identification problem can take the form as
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 algorithms used in systems identification.
2.1 Stochastic gradient (SG) algorithm
From (1), we define the criterion J1(t) as
Minimizing this criterion and using the stochastic gradient search principle, we obtain the stochastic gradient identification algorithm[15]
where
2.2 Recursive least squares (RLS) algorithm
For this algorithm, the criterion J2(t) is used:
Minimizing this criterion, we obtain
with
and
where F(t) is the adaptation gain and ε(t) is the prediction error.
The formula of the adaptation gain is generalized by introducing factors λ1(t), λ2(t)[16] and it is given by
with
The effects of λ1(t) and λ2(t) on the adaptation gain are summarized in Table 1.
2.3 Multi-innovation stochastic gradient (MISG) algorithm
The multi-innovation stochastic gradient (MISG) was proposed in [17], in order to achieve fast convergence rates and improve the parameter estimation accuracy[18,19]. The basic idea of this algorithm is to use not only the current data {y(t), ϕ(t)} but also the past data {y(t − i), ϕ(t − i), i = 1, 2, ⋯, p − 1}, where p is a positive integer denoting the innovation length.
Define the stacked output vector Y(p, t) and stacked information matrix φ(p, t) as
Minimize the quadratic criterion defined by
Finally, the multi-innovation stochastic gradient is obtained as
When p = 1, the MISG algorithm reduces to the SG algorithm.
2.4 Multi-innovation least squares (MILS) algorithm
The minimized criterion for this algorithm is given by
Then, the multi-innovation recursive identification algorithm is obtained[19,20] as
When p = 1, the MILS algorithm reduces to the RLS algorithm.
3 Recursive identification techniques
The recursive identification techniques are divided into two categories. The first one is based on the whitening of the prediction error. The second is based on the uncorrelation of observation vector and prediction error[21, 22]. In this section, we give a survey on the most known techniques of these two categories.
For the first category, the four well known methods are the RLS, extended least squares (ELS), generalized least squares (GLS) and output error with extended prediction model (OEEPM).
3.1 Recursive least squares
The selected model of this technique is autoregressive with external input (ARX) given by
with
Hence, the model of (20) can be written as
where
3.2 Extended least squares
In this method, the model is autoregressive moving average with external input (ARMAX) given by
where
From (22), we have
We replace e(t) by ε(t) in the observation vector because e(t) is not observable. Finally, we obtain
3.3 Generalized least squares
This method is adapted to ARARX models as
Then, we have
The estimated value of α(t) is given by
3.4 Output error with extended prediction model
The algorithm of this one is the same as the ELS with
For the second category, the 4 main methods are the instrumental variable with auxiliary to model (IVAM), output error with fixed compensator (OEFC), output error with filtered observations (OEFO) and output error with adaptive filtered observations (OEAFO).
3.5 Instrumental variable with auxiliary model
For this technique, we have
where the prediction auxiliary model is defined by
3.6 Output error with fixed compensator
The disturbed output y(t) is replaced by the prediction \(\hat y(t)\) in the RLS predictor and we obtain
3.7 Output error with filtered observations
This method is based on the same principle of the previous one with a filtered observation vector obtained by a stable filter A0(q−1). Thus,
with
3.8 Output error with adaptive filtered observations
In this method, the observation vector is filtered by an estimated filter \(\hat A({q^{- 1}})\). Hence,
where
3.9 Auxiliary model identification algorithm
This technique was proposed in [20, 23] for output error moving average (OEMA) system given by
From (26), we have
with
Define the parameter vector
and the observations vector
We choose B a (q−1)/A a (q−1) as the transfer function of the auxiliary model and x a (t) as its output. The unknown inner variables x(t − i) are replaced by x a (t − i), and unmeasurable noise terms e(t − i) are replaced by their estimated residuals ε(t − i).
Finally, we obtain
For each identification method, one of the previous algorithms described in Section (2) can be used to estimate the parameter vector.
For validation of the various identified models, the estimations of the normalized autocorrelations RN(i) are calculated. RN(i) is defined for the 1st category of identification methods and the whiteness test is
with
For the 2nd category, the uncorrelation test is applied and we have
with
where ε(t) is output prediction error, y(t) is system output, \(\hat y(t)\) is model output, and N is data number.
The identified model is valid if \(\vert RN(i)\vert \leq {{2.17} \over {\sqrt N}}\). In practice, the used criterion is |RN(i)| ≤ 0.15[22].
4 Description of the RIM toolbox
p ]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 programming 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.
In this platform, the user feels free to use classical menu or buttons. Indeed, in the menu, we set the links of different 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 variables (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 orders n A , n B and n C , the initial adaptation gain F(0) and the forgetting factor λ1 (t).
5 Application examples
5.1 Example 1: Identification of a piezoelectric 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 corresponds to the piezoelectric actuator APA-120ML. The excitation signal is a sinusoidal signal of frequency 50 Hz: u(t) = 68.5 sin(27π × 50t + 0.44) + 61.5(V).
5.1.1 Identification of ARX model
The pezoelectric actuators are generally modeled by a second-order system. Therefore, the polynomials orders of the model are selected as follows: n A = 2,n B = 2, n C = 1 and d = 0. The identification parameters used in this paper are summarized in Table 2.
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
with a1 = −1.0577, a2 = 0.0575, b1 = −17.49 × 10−5 and b2 = 17.43 × 10−5.
Based on RIM, more information can be illustrated (see Figs. 4–6) to conclude about the model validity. Fig. 4 represents 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 piezoelectric 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.
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 autocorrelation 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. 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 identification 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.
5.2 Example 2
Let’s consider the following system
This example can be rewritten as
The input u(t) is an uncorrelated persistent excitation signal 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 identification results for the MILS algorithm with p = 3 are shown in Fig. 7. The complete results are summarized in Table 5.
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
Simulation parameters are the same as those used in the previous example. Using RIM, the estimated parameters 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 better 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 without 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.
References
J. P. Corriou. Process Control: Theory and Applications, London, UK: Springer-Verlag, pp. 371–380, 2004.
C. Heij, A. Ran, F. Van Schagen. Introduction to Mathematical System Theory: Linear Systems, Identification and Control, Basel, Switzerland: Birkhäuser-Verlag, pp. 115–120, 2007.
X. F. Wu, Z. Q. Lang, S. A. Billings. An orthogonal least squares based approach to FIR designs. International Journal of Automation and Computing, vol. 2, no. 2, pp. 163–170, 2005.
O. M. Mohamed Vall, R. M’hiri. An approach to polynomial NARX/NARMAX systems identification in a closedloop with variable structure control. International Journal of Automation and Computing, vol. 5, no. 3, pp. 313–318, 2008.
S. Bedoui, M. Ltaief, K. Abderrahim. New results on discrete-time delay systems identification. International Journal of Automation and Computing, vol. 9, no. 6, pp. 570–577, 2012.
B. C. Xu, X. L. Liu. Identification algorithm based on the approximate least absolute deviation criteria. International Journal of Automation and Computing, vol. 9, no. 5, pp. 501–505, 2012.
I. Kollar, R. Pintelon, J. Schoukens. Frequency domain system identification toolbox for MATLAB: Characterizing nonlinear errors of linear models. In Proceedings of the 14th IFAC Symposium on System Identification, IFAC, Newcastle, Australia, pp. 726–731, 2006.
H. Garnier, M. Gilson, V. Laurain. The CONTSID toolbox for MATLAB: Extensions and latest developments. In Proceedings of the 15th IFAC Symposium on System Identification, IFAC, Saint-Malo, France, pp. 735–740, 2009.
P. Navratil, J. Ivanka. Recursive identification algorithms library in MATLAB & Simulink. In Proceedings of the 22nd International DAAAM Symposium, Vienna, Austria, vol. 22, no. 1, pp. 1317–1318, 2011.
L. Ljung. MATLAB system identification toolbox users guide, [Online], Available: http://www.mathworks.com, The Mathworks, 2012.
J. L. Guzmám, D. E. Rivera, S. Dormido, M. Berenguel. An interactive software tool for system identification. Advances in Engineering Software, vol. 45, no. 1, pp. 115–123, 2012.
P. C. Young, C. J. Taylor. Recent developments in the CAPTAIN toolbox for Matlab. In Proceedings of the 15th IFAC Symposium on System Identification, IFAC, Brussels, Belgium, pp. 1838–1843, 2012.
B. Ninness, A. Wills, A. Mills. UNIT: A freely available system identification toolbox. Control Engineering Practice, vol. 21, no. 5, pp. 631–644, 2013.
Mathworks, MATLAB users guide, [Online], Available: http://www.mathworks.com, The Mathworks, 2012.
L. Ljung. System Identification: Theory for the User, 2nd ed., Prentice Hall, USA, pp. 361–370, 1999.
M. S. Mahmoud, Y. Q. Xia. Applied Control Systems Design, London, UK: Springer-Verlag, pp. 35–54, 2012.
F. Ding, P. X. Liu, G. Liu. Auxiliary model based multiinnovation extended stochastic gradient parameter estimation with colored measurement noises. Signal Processing, vol. 89, no. 10, pp. 1883–1890, 2009.
F. Ding, T. Chen. Performance analysis of multi-innovation gradient type identification methods. Automatica, vol. 43, no. 1, pp. 1–14, 2007.
F. Ding. Several multi-innovation identification methods. Digital Signal Processing, vol. 20, no. 4, pp. 1027–1039, 2010.
F. Ding, P. X. Liu, G. Liu. Multiinnovation least-squares identification for system modeling. IEEE Transactions on Systems, Man, and Cybernetics—Part B: Cybernetics, vol. 40, no. 3, pp. 767–778, 2010.
I. D. Landau, G. Zito. Digital Control Systems: Design, Identification and Implementation, London, UK: Springer-Verlag, pp. 247–276, 2006.
I. D. Landau, R. Lozano, M. M’Saad, A. Karimi. Adaptive Control: Algorithms, Analysis and Applications, London, UK: Springer-Verlag, pp. 153–191, 2011.
F. Ding, T. Chen. Combined parameter and output estimation of dual-rate systems using an auxiliary model. Automatica, vol. 40, no. 10, pp. 1739–1748, 2004.
Author information
Authors and Affiliations
Corresponding author
Additional information
Recommended by Associate Editor Sheng Chen
Rights and permissions
About this article
Cite this article
Rebai, A., Guesmi, K. & Hemici, B. RIM: A Matlab software tool for recursive identification methods. Int. J. Autom. Comput. 12, 482–489 (2015). https://doi.org/10.1007/s11633-015-0905-y
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11633-015-0905-y