Science topic

System Identification - Science topic

Explore the latest questions and answers in System Identification, and find System Identification experts.
Questions related to System Identification
  • asked a question related to System Identification
Question
4 answers
dear experts
i have estimated state space model form input output data using system identification, now plz guide how to design LQR controller
Relevant answer
Answer
This is generally a topic taught to M1 students in robotics & control engineering with emphasis on research.
There are a lot of courses, tutorials, videos on how to design LQR controllers. Just google it and you will find a lot of results.
Here, for example, is a link to a Stanford University Lecture:
  • asked a question related to System Identification
Question
3 answers
A question about Matlab implementation of estimation technique
  • asked a question related to System Identification
Question
3 answers
I am working of super twisting sliding mode control design for electric dynamic load simulator
i have used ode45 for that, now how i can import data for system identification. plz guide
[t1 x1]=ode45(@STSMC_ELS, [0 2], [0 0 0]);
Relevant answer
Answer
The result for ode45 in your case is x1, and also I think you have another output which is x2. these two variables are changing over time, so they are called time-domain data. Then, you should open the system identification toolbox in MatLab. It is a really simple and user-friendly toolbox. Then you must import these to variables in the toolbox, and estimate your model.
Best
  • asked a question related to System Identification
Question
28 answers
Hello friends,
I estimated the dynamical model of my system using arx model and nonlinear arx model by Matlab system identification toolbox which the nonlinear arx model is more than 99% similar to the actual data. Now, for designing the controller, I need to have the state-space model. The question is how can I convert these models to obtain state-space matrices.
I have to mention that, I convert these models using idss(sys) command, but is there another way to do this?
Best
Hamid
  • asked a question related to System Identification
Question
4 answers
When running AVL, the program outputs derivative values, however I have not been able to find documentation on whether the derivatives are dimensional, or dimensionless based on the *.AVL input file.
Relevant answer
Answer
Pavel Zikmund yep - controls in degrees instead of radians for some reason! Interesting when CRRCsim uses AVL derivatives, the controls derivatives need to be back in [1/rad]
  • asked a question related to System Identification
Question
3 answers
Currently, I am looking for a passionate teammate to do collaborative research in System Identification. We will try to combine an optimization technique to get the most optimal model. bachelor students, master students, no problem. You may also ask your friends to join this group. Sure, I will be the last author, no worries. My target is SCI Journal.
Best regards,
Yeza
Relevant answer
Answer
hi, your Q sounds very close to my work. But more detail is needed for further consideration. like for what do you want to identify a model? what kind of SI method will you use? grey box modeling? black box modeling? white box modeling? ...
regards, Man
  • asked a question related to System Identification
Question
5 answers
I am trying to use the advanced PID controller(auto-tuning) to control the speed of induction motor drive with FOC. I would like to ask how to get the transfer function for the induction motor and inverter by system identification method. anyone can give me useful information.
Relevant answer
Answer
1. Instead of calculating transfer function or transfer function matrix better is to go with the state-space model........
With this type of modeling, then you can use the Kalman filter for identification purposes....
2. If you want to stick with the transfer function model...... it is better to first add a decoupling block to decouple the d-axis and q-axis circuits.....
Then depending on the type of control i.e FOC in your case.....you can easily relate rotor speed with q-xis voltage......for simplification you can make TL=0.....Also, as FOC is implemented so id=constat, meaning d-axis dynamics (or d-axis circuit dynamics) are totally ignored.....meaning as if there is no d-axis circuit.......but mind, it is valid only while decoupling block is used.......
Thus, you will finally have a plant with q-axis voltage as input and q-axis current as output with a cascade block whose input is q-axis current and output is torque developed with cascade block whose input is torque developed and output is rotor speed.....Finally, you can easily close two loops q-axis current and speed loops with two PI controllers to tune......here identification can easily be done by a Neural Network block......
  • asked a question related to System Identification
Question
4 answers
Currently, I am working on System Identification using MATLAB.
My problem is although I got a very small error. But, the model does not represent well the original data. Does anyone know where the problem is?
Relevant answer
Answer
Estimate output-error polynomial model using time-domain or frequency-domain data
Regards,
Shafagat
  • asked a question related to System Identification
Question
1 answer
According to this example, validation using time domain data will have a higher fitness score. Does anyone know how it works? and why?
Relevant answer
Answer
Fitness scaling converts the raw fitness scores that are returned by the fitness function to values in a range that is suitable for the selection function. The selection function uses the scaled fitness values to select the parents of the next generation. The selection function assigns a higher probability of selection to individuals with higher scaled values.
Regards,
Shafagat
  • asked a question related to System Identification
Question
2 answers
I am working on the real data of the physical property. I have gotten the bode plot data (I am working on frequency domain data). I have tried to identify the data and get the model. But the fitness is very low (40%).
When I checked using state space identification with 10 state, I got a better result around 80%. But the requirement is I have to use second order system.
My question is, how to increase the fitness score of my model with the limitation I have to use second order system?
  • asked a question related to System Identification
Question
6 answers
It is appreciated if you recommend a benchmark study with the available dataset for video processing.
Relevant answer
Answer
Very interested in the topic
  • asked a question related to System Identification
Question
4 answers
I'm approaching for the first time to the Systems Identification.
Specifically, I need to identify a multi-inputs single-output real system with (unknow) finite delay from the measurement sets.
Can someone suggest me some useful books about these arguments?
Thanks
The identification results are needed to tune the PID Controller that controls the real system. Unfortunately, I can't operate directly on the real system and I have no information about it (transfer function, state space model, etc.). So I can't tune the PID manually, whit some method like Ziegler-Nichols nor excite the system with some particular input.
I only have the measures caught by sensors during three different work cycles and so I think that the only way is to apply the System Identification approach.
Relevant answer
Answer
A step signal is applied to the original system and with the I / O data collected in a file, the Identification Tool from Matlab can be used to approximate the transfer function. Then the PID Regulator can be granted.
  • asked a question related to System Identification
Question
10 answers
Does anyone know how to use Sparse mass stiffness and damping matrices which are extracted from Ansys to represent it State-space model identification using System Identification Toolbox™ ?
Relevant answer
Answer
Dear Murana Awad,
Use mechss to represent second-order sparse models using matrices obtained from your finite element analysis (FEA) package. Such sparse models arise from finite element analysis (FEA) and are useful in fields like structural analysis, fluid flow, heat transfer, and electromagnetics.
Also i suggest you to see links on topic.
Best regards
  • asked a question related to System Identification
Question
5 answers
I'm working on Greenhouse Climate control Using the Fuzzy Logic Controller, so I'm searching for the mathematic model of Greenhouse structure, and the heater, cooler, and humifier transfer functions .
Relevant answer
Answer
I hope that the following 5 papers are interesting
1-SE—Structures and Environment: A Strategy for Greenhouse Climate Control, Part I: Model Development
M. Trigui, S. Barrington, L. Gauthier
Journal:
Journal of Agricultural Engineering Research
Year:
2001
2-Review of Structural and Functional Characteristics of Greenhouses in European Union Countries: Part I, Design Requirements
B. von Elsner, D. Briassoulis, D. Waaijenberg, A. Mistriotis, Chr. von Zabeltitz, J. Gratraud, G. Russo, R. Suay-Cortes
Journal:
Journal of Agricultural Engineering Research
Year:
2000
3-Assessment of the greenhouse climate with a new packed-bed solar air heater at night, in Tunisia
Bouadila, Salwa, Lazaar, Mariem, Skouri, Safa, Kooli, Sami, Farhat, Abdelhamid
Journal:
Renewable and Sustainable Energy Reviews
Year:
2014
4-Mass-Heater Supplemented Greenhouse Dryer for Post-Harvest Preservation in Developing Countries
P. Akinjiola, Olutoye, Balachandran, Uthamalingam (Balu)
Journal:
Journal of Sustainable Development
Year:
2012
5-Greenhouse heating by solar air heaters on the roof
Joudi, Khalid A., Farhan, Ammar A.
Journal:
Renewable Energy
Year:
2014
  • asked a question related to System Identification
Question
2 answers
System Identification
ERA/OKID algorithm
ERA (Eigensystem Realization Algorithm)
OKID(Observer Kalman Filter IDentification)
Extract mass,Stiffness and Damping matrices of structures
Relevant answer
Answer
Dear Dr. Lafifti
Hi
Thanks for your attention an your supporting ...
  • asked a question related to System Identification
Question
2 answers
I have a real stable system. However, when I try to reconstruct the state-space matrices of my system by using the subspace identification, it resulted in an unstable A matrix where its eigenvalues are located outside the unit circle.
I know that there are some ways to forced the A matrix to be stable. But it tends to give us a biased result since the stability is forced, not naturally identify as a stable system.
Relevant answer
Answer
During the modeling process, it may be important to consider the relations of (input and output variables) , the governing differential modeling principles (including simplifications and linearity assumptions, steady-state conditions…), and after the model is obtained, see the properties of the eigenvalues of the system martrix (sign of roots, complex roots, if roots are bounded or not…), and or the poles of the transfer function T may be seen.
Given some system with matrix A find the characteristics polynomial of A.
Apply the “ Routh-Hurwitz” stability criterion on the polynomial.
(1) Negative eigenvalues lead to stable system
(2) Positive eigenvalues lead to unstable ones.
(3) Complex eigenvalues (may) tell us oscillatory conditions….
There may be other cases of considerations...
Thanks
  • asked a question related to System Identification
Question
3 answers
I have torques and angular positions data (p) to model a second-order linear model T=Is2p+Bsp+kp(s=j*2*pi*f). So first I converted my data( torque, angular position ) from the time domain into the frequency domain. next, frequency domain derivative is done from angular positions to obtain velocity and acceleration data. finally, a least square command lsqminnorm(MATLAB) used to predict its coefficients, I expect to have a linear relation but the results showed very low R2 (<30%), and my coefficient not positive always!
filtering data :
angular displacements: moving average
torques: low pass Butterworth cutoff frequency(4 HZ) sampling (130 Hz )
velocities and accelerations: only pass frequency between [-5 5] to decrease noise
Could anyone help me out with this?
what Can I do to get a better estimation?
here is part of my codes
%%
angle_Data_p = movmean(angle_Data,5);
%% derivative
N=2^nextpow2(length(angle_Data_p ));
df = 1/(N*dt); %Fs/K
Nyq = 1/(2*dt); %Fs/2
A = fft(angle_Data_p );
A = fftshift(A);
f=-Nyq : df : Nyq-df;
A(f>5)=0+0i;
A(f<-5)=0+0i;
iomega_array = 1i*2*pi*(-Nyq : df : Nyq-df); %-FS/2:Fs/N:FS/2
iomega_exp =1 % 1 for velocity and 2 for acceleration
for j = 1 : N
if iomega_array(j) ~= 0
A(j) = A(j) * (iomega_array(j) ^ iomega_exp); % *iw or *-w2
else
A(j) = complex(0.0,0.0);
end
end
A = ifftshift(A);
velocity_freq_p=A; %% including both part (real + imaginary ) in least square
Velocity_time=real( ifft(A));
%%
[b2,a2] = butter(4,fc/(Fs/2));
torque=filter(b2,a2,S(5).data.torque);
T = fft(torque);
T = fftshift(T);
f=-Nyq : df : Nyq-df;
A(f>7)=0+0i;
A(f<-7)=0+0i;
torque_freq=ifftshift(T);
% same procedure for fft of angular frequency data --> angle_freqData_p
phi_P=[accele_freq_p(1:end) velocity_freq_p(1:end) angle_freqData_p(1:end)];
TorqueP_freqData=(torque_freq(1:end));
Theta = lsqminnorm((phi_P),(TorqueP_freqData))
stimatedT2=phi_P*Theta ;
Rsq2_S = 1 - sum((TorqueP_freqData - stimatedT2).^2)/sum((TorqueP_freqData - mean(TorqueP_freqData)).^2)
  • asked a question related to System Identification
Question
2 answers
System Identification self-taught textbook
Relevant answer
Answer
Maybe you can consider the recursive least squares algorithm (RLS) which allows for (real-time) dynamical application of least squares (LS) regression to a time series of time-stamped continuously acquired data points. As with LS, there may be several correlation equations and a set of dependent (observed) variables. RLS is the recursive application of the well-known LS regression algorithm, so that each new data point is taken in account to modify (correct) a previous estimate of the parameters from some linear (or linearized) correlation thought to model the observed system. For RLS with forgetting factor (RLS-FF), adquired data is weighted according to its age, with increased weight given to the most recent data. This is often convenient for adaptive control and/or real-time optimization purposes. A particularly clear introduction to RLS/RLS-FF is found at:
Karl J. Åström, Björn Wittenmark, "Computer-Controlled Systems: Theory and Design", Prentice-Hall, 3rd ed., 1997.
Application example ― While investigating adaptive control and energetic optimization of aerobic fermenters, I have applied the RLS-FF algorithm to estimate the parameters from the KLa correlation correlation. Estimates were improved by imposing sinusoidal disturbance to air flow and agitation speed (manipulated variables). This investigation was reported at (MSc Thesis):
  • asked a question related to System Identification
Question
5 answers
My observation is that for testing the performance of LMS algorithms always Gaussian white noise with zero mean is used as input signal (for both, the unknown and the adaptive system). Sometimes a cosine function of a certain frequency is added. In practice, however, the input signal is given by the application. The power density at f=0 could be much higher than at other frequencies. Standard adaptation algorithms seem to have difficulties to find the correct filter coefficients in such cases. Is there any special adaptation algorithm know for this problem?
Relevant answer
Answer
Maybe you can consider the recursive least squares algorithm (RLS) which allows for (real-time) dynamical application of least squares (LS) regression to a time series of time-stamped continuously acquired data points. As with LS, there may be several correlation equations and a set of dependent (observed) variables. RLS is the recursive application of the well-known LS regression algorithm, so that each new data point is taken in account to modify (correct) a previous estimate of the parameters from some linear (or linearized) correlation thought to model the observed system. For RLS with forgetting factor (RLS-FF), adquired data is weighted according to its age, with increased weight given to the most recent data. This is often convenient for adaptive control and/or real-time optimization purposes. A particularly clear introduction to RLS/RLS-FF is found at: Karl J. Åström, Björn Wittenmark, "Computer-Controlled Systems: Theory and Design", Prentice-Hall, 3rd ed., 1997.
Application example for a similar linearized correlation ― the KLa correlation, used to predict the O2 gas-liquid mass-transfer ― While investigating adaptive control and energetic optimization of aerobic fermenters, I have applied the RLS-FF algorithm to estimate the parameters from that correlation. Estimates were improved by imposing sinusoidal disturbance to air flow and agitation speed (manipulated variables). The power dissipated by agitation was accessed by a torque meter. The proposed (adaptive) control algorithm compared favourably with PID. This investigation was reported at (MSc Thesis):
  • asked a question related to System Identification
Question
2 answers
I am facing problems to applying these methods algorithmically in languages like python and MATLAB . I was wondering if there is any routine or dedicated toolbox for time varying system identification.
Relevant answer
Answer
Dear Dileep Maroju,
I suggest you to see links and attached file on topic.
Best regards
  • asked a question related to System Identification
Question
6 answers
I am looking for Python packages which represent a good alternative to Matlab's System Identification Toolbox (or at least for parts of it). It would be great if you could recommend Python packages for linear and nonlinear system identification where you have already gained extensive experience. What are your experiences with e.g. SIPPY or SysIdentPy? Are there better and more comprehensive Python packages?
I especially plan to use the identified models for MPC and NMPC. Thanks in advance!
Best regards,
Günther
Relevant answer
Answer
  • asked a question related to System Identification
Question
20 answers
Does anyone know public datasets with data collected from accelerometer sensors preferably wireless sensors used in structural health monitoring projects?
Relevant answer
Answer
  • asked a question related to System Identification
Question
2 answers
Hello,
I'm performing system identification of the lateral closed-loop dynamics of a quadrotor.
My model receives a setpoint and should return position and acceleration.
I've proposed a second order model of the type, see pictures, and solved it with MATLAB's greyest():
The model performs very well for the position, 97% on a cross-validation dataset, but the performance is very low for acceleration 43%.
Note the acceleration dataset comes out from an accelerometer so it's noisy, I've already tried low pass filtering the noise to improve performance with no positive results.
Any ideas on how to improve this?
Thanks!
Relevant answer
Answer
Dear Ben, just a naive comment. I think that obtaining a better performance on position is completely natural, given that acceleration is integrated twice, and therefore the noise is smoothed by the two integrations. If I understand well, this might suggest that the identification is good, and the low performance is only due to the noisy measure.
  • asked a question related to System Identification
Question
3 answers
Hello,
I have a reference input and measured output, r and y in the figure. (Data has been acquired in closed loop)
I'm interested in identifying the whole closed loop dynamics (not just the plant), the reference is excited with a PRBS and y is the lateral acceleration of a UAV.
Any ideas on how to do this?
Thank you
Relevant answer
Answer
Mohamed-Mourad Lafifi Michael Short Thank you for your answers I edited the question since it was not clear what I was trying to do
  • asked a question related to System Identification
Question
9 answers
I am dealing with vibration signals which were acquired from different systems. They are mostly non-stationary and in some cases cyclostationary. What are the less expensive methods for removing noise from the signals? It can be parametric or non-parametric.
Relevant answer
Answer
Ijaz Durrani
Thank you so much for providing me with useful information.
  • asked a question related to System Identification
Question
13 answers
I am trying to model a system which consists of a second order linear part (for example a set of mass spring damper with variable parameters for spring and damper) and a non-linear part which is a cascade of a derivative, a time delay, a static non-linearity (e.g. half-wave rectifier) and a low-pass system. I want to use neural networks for this purpose. I have tried time delay neural networks which were not successful. I am now trying to use RNNs (Recurrent Neural Networks). Since I am relatively new to this subject, I was wondering which network architecture are suitable for this purpose? (I have to use a limited number of parameters)
Relevant answer
Answer
The multi-layer perceptron, the radial basis function network and the functional-link network
For more information:
Neural networks for nonlinear dynamic system modelling and identification
S. CHEN &S. A. BILLINGS
  • asked a question related to System Identification
Question
5 answers
Dear All
There is 1-DOF Series Elastic Actuator(the scheme and state equation is given in the image). A=[0 1; -K/m 0] B= [0 -1/m]*F
where K is the stifness constant of the spring, m is the mass of joint, x is the distance, done by spring.
Could you give me the suggestions on how to write the controller, which gives proper value of spring constant(K) according to the desired(reference) distance, which must be passed by spring. It is necessary to highlight that the control input force is constant and distance can be controlled only by modifying the value of spring constant.
My previous idea was to apply adaptive MPC controller(with Kalman Filter or System Identification).
But the problem is that the value of stiffness constant, is located in "A" matrix, and it must be treated as "INPUT" variable, and not as variable with disturbance or nonlinear one.
P.S. It also didn't work with Linear Function.
Thank You in advance.
Relevant answer
Answer
I agree with Mohamed-Mourad Lafifi
  • asked a question related to System Identification
Question
7 answers
Dear all,
I have a set of I/O data.
I estimated a transfer function based ( command: tfest) on this data in MATLAB. (I removed the trend from the data before it: command: detrend).
Can I design the PID-controller based on this (command: pidtune) and use it in the process (As the data is without trend)?
If no, how to adjust the PID controller settings for the real process?
Thanks
Relevant answer
Answer
Many modern thermal processing systems involve temperature control of heated plates. Typically, these plates are heated by infrared radiation from hot filaments (including tungsten halogen lamps) and the temperature is measured using pyrometers. In many cases the temperature of the system is controlled using a Proportional-Integral-Derivative (PID) controller. However, there are applications where the temperature must be ramped up (or ramped down) rapidly while maintaining good temperature uniformity and with tight performance limits. In these cases, it may be difficult, or even impossible, to achieve the desired performance using PID controllers. In addition, the dynamic response of these systems typically changes considerably with operating conditions such as temperature, process gas composition, wafer emissivity, or wall emissivity (e.g., in systems where walls become coated during the deposition process). These changing operating conditions can make it difficult to tune a PID controller to achieve the desired performance over a broad range of operating conditions.
Regards,
Shafagat
  • asked a question related to System Identification
Question
9 answers
Dear colleagues,
I've been researching on the application of machine learning techniques to improve the performance of complex communications systems. The main reason of using machine learning in those systems is because it is difficult to find a closed-form function that models their behavior and, therefore, optimize them.
However, in the past days I've been thinking about whether there would be a way to learn the transfer function of a system (even if it is non-linear) from the data of its inputs and outputs. Any thoughts regarding this idea?
Thanks in advance for your interesting and helpful comments.
  • asked a question related to System Identification
Question
12 answers
I am working on system identification for general dynamic systems.
The idea is that I think it can be well-presented using regression using the input and output data.
Do you know anyone who worked on this before, or maybe, you can direct me to published work of something similar?
Thank you very much
Relevant answer
Answer
In addition to the mentioned references, I suggest reading the first chapter of a famous book "System Identification; Theory for the user" (Written by Ljung 1999) on pages 1-12, where you find a brief mathematical introduction to the regression method.
  • asked a question related to System Identification
Question
5 answers
the Root least square method with forgetting factor for implementation in MATLAB i have an ARX model for parameter estimation. How to calculate the P(0) for this method ?
  • asked a question related to System Identification
Question
2 answers
Hello, I want to stimulate brain using electricity. Therefore, I need system identification. For example, if the min and max value of amplitude of my electricity is 2 mA and 6 mA. And, the min and max value of frequency value is 50 Hz and 100 Hz. In this case, when I do system identification, can I do system identification with min and max value of electrical stimulation? For example, 2 mA with 50 Hz, 6 mA with 100 Hz, 2 mA with 100 Hz, and 6 mA with 50 Hz using the four signals, can I do system identification?
Or should I include mid range values, for example, 3 mA with 75 Hz, and 4 mA with 80 Hz including many cases. How can I make good input signals for system identification?
Relevant answer
Answer
I suggest reading a bit about system identification. A good place to start is
System Identification: A Frequency Domain Approach / Rik Pintelon, Johan Schoukens
Or,
System Identification: Theory for the User / Lennart Ljung
They cover basic topics on system identification, including how to generate good excitation signals.
  • asked a question related to System Identification
Question
6 answers
Can anyone suggest a reliable source in which the modal parameters of one or more real arch concrete dams have been well obtained through field tests? In fact, I need these values to validate a damage detection method proposed for these types of structures.
Relevant answer
Answer
Dear Dr Jalili
You can find that in the new book of professor chopra : earthquake engineering for concrete dams 2020.
Best regards
  • asked a question related to System Identification
Question
5 answers
My system has multiple inputs i.e, voltage, phase shifts, etc. my final aim is to develop a transfer function of my system and then work on its controllability, but I am unable to proceed as the system identification app is considering only one input. Please anyone having knowledge of the above content or having idea about where I may be doing a mistake, may come forward with suggestions. Will be deeply obliged.
Relevant answer
Answer
A good example of explaining electrical system modeling.
  • asked a question related to System Identification
Question
4 answers
I am looking for Matlab code for EM algorithm for system identification models (i.e ARX or ARMAX)
Relevant answer
Answer
Matlab System Identification toolbox and Matlab Statistics and Machine learning toolbox.
  • asked a question related to System Identification
Question
3 answers
Does the accuracy of system identification affect performance of controlling an object in control engineering?
For example, I did system identification and obtained matrix A, B, C, D using method A and the cross correlation with the actually measured data is 0.6.
And we did the same thing with method B and we have got the cross correction 0.8.
In this case, we can say that for system identification, method B is better than method A.
Usually in this case, can we get a better control performance result using the A, B, C, D matrix from method B compared with A?
Relevant answer
Answer
The accuracy of the model has a direct impact to the performance of the controller. However, you want to void over-fitting your model to your training data. Avoid choosing a high order model to exactly match your data.
  • asked a question related to System Identification
Question
5 answers
I found the process of detection of model structure in reduced models very trial and error based. I think we always prefer to have linear models like ARX(Autoregressive Exogenous) model instead of nonlinear models like NARX( Nonlinear Autoregressive Exogenous) model whether our main model is no-linear.
I need some help and guidance in the procedure of detection of the model structure. Is there any MATLAB toolbox or software for this purpose?
Relevant answer
Answer
no such tool
  • asked a question related to System Identification
Question
4 answers
I am currently working on a model from a circuit that includes diodes and time varying terms. I have the experimental data and I want to find the best parameters to fit the data with my model obtained from physical laws.
Thank you!
Relevant answer
Answer
Dear A.-J. Guel-Cortez,
One of the effective ways to parameters' identification is the Tikhonov regularization method. This method can be successfully applied for identification of nonlinear system parameters. If by some reasons you have not possibility to apply this method yourself, I hope that I can help you if you send me your parametrized nonlinear system.
Best regards,
Sharif Guseynov
  • asked a question related to System Identification
Question
4 answers
I'm still new with the system identification subject but I have a gist of it. I had obtained the experiment data and are using MATLAB's ARMAX function to build ARIMAX model structure. I'm trying the black box approach and I was wondering the combinations of order I should choose. I tried using MATLAB's AIC and tried to find the lowest AIC. However, when I choose the model with the lowest AIC and compared it, it turns out bad and return with a huger error based on the graph.
Relevant answer
Answer
Hi, thank you for all the replies.
Reza Dariani, I'm actually trying a black box approach, that's why I can't really decide on a model order.
Michael Short , I have seen the help page for AIC and I followed the right procedures in using the AIC. The experiment data actually was preprocessed before I use the ARIMAX. But, the result is still the same, the minimum AIC didn't produce a good model when I tried to compare it with the original data.
Camilo Vicente Gonzalez Pozo, I don't think the toolbox uses AIC, and it automatically chooses the best model. My MATLAB doesn't seem to have ARMAX or ARIMAX in the toolbox, so I use the code instead.
  • asked a question related to System Identification
Question
1 answer
Hi guys !
I have a fundamental question regarding the fitness criterion when performing a model estimation for system identification. This far, I have obtained a good model for a driving simulator identification task. In this post, I want to discuss the SISO vertical model. The training data has been obtained by an acceleration sensor which delivers the vertical acceleration signal. Measurements have been performed in a frequency range of 0.2-20Hz. It is obvious that for small frequencies the sensor noise is considerable.
After estimating the (nonlinear) system models, I have calculated the goodnessOfFit using the NRMSE and NMSE focus. I have found that the NMSE yields significantly better fit results compared to the NRMSE. I have understood that the NRMSE is the better choice for describing a 1:1 fit, either the model fits perfectly or it doesn't. However, the NMSE seems to punish outliners less harsh than the NRMSE does.
Thus, I want to argument that my model is good based upon a NMSE measure. The reason being is that for the lower frequency parts the identified model is robust against noise and does not model it. Therefore, it is obvious that the model will not represent the noise in the training signal and is better described by a NMSE criterion than a NRMSE one.
The bigger plot (lolimot_noise_training.jpg) shows what i mean. Training was done using a local linear model approach with a concatenation of single sines as training data. The model was cross-validated using sweep and noise test signals.
The original training signal (unzoomed) can be found in the second plot (copy.jpg).
To put the plot in numbers:
Fit using NRMSE for the training signal : 87%
Fit using NMSE for the training signal : 98%
Similar values for the test/cross-validation signals.
So my final question is: What do you think of this argumentation. From the plot it is clear that the obtained model is sufficient and good enough to fully represent the system dynamics. I would like to pursue my argumentation using the NMSE as a measure of fit instead using the NRMSE. Though, I have found that in most literature the NRMSE was used most often, however being performed on more 'clinical' training data without too much of a noise.
Thank you very much !
Relevant answer
Answer
Hi I am Professor Soheil Sayed Hosseini See my post on satellite control article nmce is availebel
  • asked a question related to System Identification
Question
4 answers
Hi guys,
Reading my question title surely has given at least some of you a flashback on their experiences during the estimation of a nonlinear system model. I hope to get some tips, tricks and useful critic on my proceedings with the model estimation. The project I’m working on is part of my bachelor’s thesis. I am thankful for every useful input form you!
What am I identifying?
My task is to identify a fully-fledged driving simulator capable of movements in nine degrees of freedom in total. The main goal is to obtain a good system model which fits the estimation and validation data and can be used for further investigation (if needed). Most importantly, as I’m conducting the thesis with an automotive OEM, not only the identification per se but also the whole process from generating measurement data, selecting a suitable model and optimizing the parameters shall be worked out in order to have a reference for future research purposes.
The driving simulator has been shown to by nonlinear and dynamic and shall be investigated as a MIMO system.
What has been done so far?
Measurement: All nine degrees of freedom have been excited with suitable position signals (Sine sweeps, discrete sine excitations, white and pink noise, Amplitude modulated pseudo binary signals) and the output has been measured as acceleration. Not only have the individual degrees of freedom (longitudinal, lateral, …) been excited (which would be a SISO case) but also a multidimensional excitation (by exciting all degrees of freedom) has been performed to identify the MIMO system.
Model selection: I am working with Matlab’s built-in toolbox from Prof. Ljung as well as a Lolimot identification toolbox from Prof. Nelles. So far, I have gained deep insight in both toolboxes and examined the different approaches in more or less full detail. In the beginning, I have played around with the GUI to get a feeling for the system models. Now, I’m exclusively working with the toolbox functions in Matlab scripts to change the model and estimation parameters arbitrarily. I want to concentrate my thesis on the estimation of a Lolimot, Narx, Hammerstein-Wiener and a linear model. This way, I want to compare the different models and I want to show that a linear model for example is not sufficient for the underlying driving simulator. In conclusion, I want to find the model that performs best for my system.
What am I planning to do next?
In the next steps of my bachelor’s thesis, I want to examine the above mentioned system models and thus have to perform a parameter optimization. The models rely on a different set of parameters (e.g. time delays, nonlinearity estimator parameters, …). As testing out all parameter combinations does not seem to be a viable option w.r.t. computing time, I have defined a DoE and want to perform a subset selection which will be representative of all parameter combinations. Using this subset (which is noticeably smaller than the huge amount of parameter possibilities of the DoE) the models shall be estimated and compared using their respective loss function values. This allows me to assign a unique value to every parameter set of the obtained subset which reflects whether the model is better or worse. Next, I want to build a response surface model and find its global minimum to find the best parameter combination of the whole subset and consequently of all parameter variations.
What questions do I have?
Before I work on the above mentioned parameter optimization, I want to make sure that I have understood everything this far and that my data is suitable for an identification. I have gained quite some understanding reading various system identification publications, however I still am not sure on two things.
Excitation signals:
The above mentioned excitations have been measured with a set of acceleration sensors all around the vehicle mockup. The measurement output has shown some pretty good results, which I used to identify other system properties like latency, phase lag, etc. I am sure that the measured signals themselves are pretty good and show minor noise in the relevant frequencies and obviously a bit more noise for lower frequencies where the noise characteristics of the sensor itself takes over. However, I am not sure whether the type of excitation is right. For dynamic systems sine sweeps and APRBS signals have yielded good results in the literature. However, an APRBS signal (step excitations with different amplitudes) shows steep peaks in the measured output of the simulator. The vehicle moves (for vertical signals) up, idles a few seconds and moves down again. The peaks result in the steep movement up and back down again. Between that is just dead time. Thus, I am not sure, whether the system dynamic has been excited strong enough. A sine sweep seems to be better and the system models estimated with both toolboxes seem to confirm that or at least manage to obtain a fit to the estimation sweep data, whereas the APRBS data is very hard to fit.
So the question here is: Is such an excitation with dead time between measurement output peaks even suitable for an identification?
Another question is: The discrete sinusoidal excitations have been designed to excite the system with one sinusoidal signal which is faded in and out, then there is 2 seconds of dead time and then the next sinusoid follows. The measured output follows suit and shows excitation with dead time between the sinusoids. Is this critical as well?
The final question here is: I have also conducted measurements with white and pink noise inputs. The statistical character makes this kind of input especially useful. Though, the signals had to be manipulated in amplitude and smoothened to not overexcite the simulator dynamics (and eventually to crash the simulator). This means, that the frequency band is not as wide as a ‘normal’ white noise, but should be in the relevant are of the simulator. Is an identification with that kind of estimation signal suitable?
Estimation and validation data:
When estimating the system models, estimation, validation and test data can be assigned. The system is being estimated based on the estimation data (training data) and can be validated by plotting the system output for the validation data. What I fundamentally do not seem to understand, or have not read yet, is whether the estimation and validation data can be fundamentally different. In most examples I have seen that the system has been trained with e.g. step inputs and validated with a different independent set of step inputs. It was then tested again with a third independent step input. What I am trying to do however, is to estimate the system based on e.g. the Sweep data, to and to validate it on the white noise signals. The question thus is: Is that even a good approach? The signals are fundamentally different.
As far as I understand or want to understand is that a successful identification of a system should be capable to represent all input-output combinations possible for the system. It is very clear to me that this will never be the case. But the underlying system in my case is able to perform sine and step excitations and many more. Should I have measured an input-output combination that contained all kinds of excitations?
In other words: What is the best way to estimate and validate the model in my case? Ljung’s toolbox does not even take validation data in consideration during estimation, it much rather relies on the user to evaluate the fit to the validation data. This is very understandable, since in most cases the evaluation is a mere decision of the user.
I am thanking all of you for input to my problems!
Relevant answer
Answer
Hi Ziad. I recommand you read this book
"The Volterra And Wiener Theories of Nonlinear Systems" by Dr. MARTIN SCHETZEN. This book, like all his other books, is very easy to understand .
I believe Dr. Schetzen's was Norbert Wiener's student at MIT and is among the best experts of this subject. I strongly recommend this book to anyone interested in the subject
  • asked a question related to System Identification
Question
2 answers
Hi guys,
Reading my question title surely has given at least some of you a flashback on their experiences during the estimation of a nonlinear system model. I hope to get some tips, tricks and useful critic on my proceedings with the model estimation. The project I’m working on is part of my bachelor’s thesis. I am thankful for every useful input form you !
What am I identifying?
My task is to identify a fully-fledged driving simulator capable of movements in nine degrees of freedom in total. The main goal is to obtain a good system model which fits the estimation and validation data and can be used for further investigation (if needed). Most importantly, as I’m conducting the thesis with an automotive OEM, not only the identification per se but also the whole process from generating measurement data, selecting a suitable model and optimizing the parameters shall be worked out in order to have a reference for future research purposes.
The driving simulator has been shown to by nonlinear and dynamic and shall be investigated as a MIMO system.
What has been done so far?
Measurement: All nine degrees of freedom have been excited with suitable position signals (Sine sweeps, discrete sine excitations, white and pink noise, Amplitude modulated pseudo binary signals) and the output has been measured as acceleration. Not only have the individual degrees of freedom (longitudinal, lateral, …) been excited (which would be a SISO case) but also a multidimensional excitation (by exciting all degrees of freedom) has been performed to identify the MIMO system.
Model selection: I am working with Matlab’s built-in toolbox from Prof. Ljung as well as a Lolimot identification toolbox from Prof. Nelles. So far, I have gained deep insight in both toolboxes and examined the different approaches in more or less full detail. In the beginning, I have played around with the GUI to get a feeling for the system models. Now, I’m exclusively working with the toolbox functions in Matlab scripts to change the model and estimation parameters arbitrarily. I want to concentrate my thesis on the estimation of a Lolimot, Narx, Hammerstein-Wiener and a linear model. This way, I want to compare the different models and I want to show that a linear model for example is not sufficient for the underlying driving simulator. In conclusion, I want to find the model that performs best for my system.
What am I planning to do next?
In the next steps of my bachelor’s thesis, I want to examine the above mentioned system models and thus have to perform a parameter optimization. The models rely on a different set of parameters (e.g. time delays, nonlinearity estimator parameters, …). As testing out all parameter combinations does not seem to be a viable option w.r.t. computing time, I have defined a DoE and want to perform a subset selection which will be representative of all parameter combinations. Using this subset (which is noticeably smaller than the huge amount of parameter possibilities of the DoE) the models shall be estimated and compared using their respective loss function values. This allows me to assign a unique value to every parameter set of the obtained subset which reflects whether the model is better or worse. Next, I want to build a response surface model and find its global minimum to find the best parameter combination of the whole subset and consequently of all parameter variations.
What questions do I have?
Before I work on the above mentioned parameter optimization, I want to make sure that I have understood everything this far and that my data is suitable for an identification. I have gained quite some understanding reading various system identification publications, however I still am not sure on two things.
Excitation signals:
The above mentioned excitations have been measured with a set of acceleration sensors all around the vehicle mockup. The measurement output has shown some pretty good results, which I used to identify other system properties like latency, phase lag, etc. I am sure that the measured signals themselves are pretty good and show minor noise in the relevant frequencies and obviously a bit more noise for lower frequencies where the noise characteristics of the sensor itself takes over. However, I am not sure whether the type of excitation is right. For dynamic systems sine sweeps and APRBS signals have yielded good results in the literature. However, an APRBS signal (step excitations with different amplitudes) shows steep peaks in the measured output of the simulator. The vehicle moves (for vertical signals) up, idles a few seconds and moves down again. The peaks result in the steep movement up and back down again. Between that is just dead time. Thus, I am not sure, whether the system dynamic has been excited strong enough. A sine sweep seems to be better and the system models estimated with both toolboxes seem to confirm that or at least manage to obtain a fit to the estimation sweep data, whereas the APRBS data is very hard to fit.
So the question here is: Is such an excitation with dead time between measurement output peaks even suitable for an identification?
Another question is: The discrete sinusoidal excitations have been designed to excite the system with one sinusoidal signal which is faded in and out, then there is 2 seconds of dead time and then the next sinusoid follows. The measured output follows suit and shows excitation with dead time between the sinusoids. Is this critical as well?
The final question here is: I have also conducted measurements with white and pink noise inputs. The statistical character makes this kind of input especially useful. Though, the signals had to be manipulated in amplitude and smoothened to not overexcite the simulator dynamics (and eventually to crash the simulator). This means, that the frequency band is not as wide as a ‘normal’ white noise, but should be in the relevant are of the simulator. Is an identification with that kind of estimation signal suitable?
Estimation and validation data:
When estimating the system models, estimation, validation and test data can be assigned. The system is being estimated based on the estimation data (training data) and can be validated by plotting the system output for the validation data. What I fundamentally do not seem to understand, or have not read yet, is whether the estimation and validation data can be fundamentally different. In most examples I have seen that the system has been trained with e.g. step inputs and validated with a different independent set of step inputs. It was then tested again with a third independent step input. What I am trying to do however, is to estimate the system based on e.g. the Sweep data, to and to validate it on the white noise signals. The question thus is: Is that even a good approach? The signals are fundamentally different.
As far as I understand or want to understand is that a successful identification of a system should be capable to represent all input-output combinations possible for the system. It is very clear to me that this will never be the case. But the underlying system in my case is able to perform sine and step excitations and many more. Should I have measured an input-output combination that contained all kinds of excitations?
In other words: What is the best way to estimate and validate the model in my case? Ljung’s toolbox does not even take validation data in consideration during estimation, it much rather relies on the user to evaluate the fit to the validation data. This is very understandable, since in most cases the evaluation is a mere decision of the user.
I am thanking all of you for input to my problems!
Relevant answer
Answer
That's a very nicely formulated and detailed question. However, the classification of dynamic systems into 'linear' and 'nonlinear' systems is like classification of animal kingdom into 'elephants' and 'non-elephants'. There is no one best way of identifying and validating a nonlinear model. There is no clear way of characterising all input-output pairs either (as one would by using a graph space for linear systems).
If the model has separable nonlinearities, one can 'mock validate' the linear part only using standard statistical techniques, assuming the nonlinear part to be exact. In general, in my limited experience, assuming exactness on SOME part of the model would normally be required for any statistical validation of nonlinear model.
I don't know if this helps your specific case, though!
  • asked a question related to System Identification
Question
8 answers
Hi, I have a quad-rotor in x configuration attached to a test bench system with 3 degrees of freedom which is stabilized by PID controllers.
In order to run system identification, I've tried to use logged experimental data: 2 inputs (outputs of two PID controllers) and 2 IMU outputs (roll, pitch ).
The issue is that the identified state model using MATLAB n4sid function isn't responding as expected, even though the goodness of fit is more than 80 %.
Relevant answer
Answer
You can refer to " Introduction to Multicopter Design and Control " Chapter 12
  • asked a question related to System Identification
Question
1 answer
how to choose regularisation parameter for PAPA (Proportionate affine projection )algorithm so that i can get smooth learning curve .
Relevant answer
Answer
Dear Senthil,
I suggest you to see links and attached files on topic.
On Improvement of Proportionate Adaptive Algorithms ... - 高知工科大学
Affine-Projection-Like Adaptive-Filtering Algorithms Using Gradient ...
Best regards
  • asked a question related to System Identification
Question
4 answers
I need to apply a Kalman Filter for System Identification. The function can be of the forme.g. A*cos(omega*t-phi)1. I was not able to fit the data by a Kalman Filter while something like A*((t-tau)/T)^alpha*exp(-(t-tau)/T) seems to be managable (it just requires sometimes lots of iterations). Is there a criterion/rule of thumb/etc. that states for these kind of nonlinear functions it works/likely works, ...
Thanks in advance.
Relevant answer
Answer
Hi Oliver. I may explain what I would do for solving the problem you have mentioned (under assumption that I got it right) having Kalman filter in mind, but not only it.
You have some data, you suppose that they are generated by the black box in the form A*cos(omega*t-phi) and need to identify A, omega, phi.
First I would apply Fourier transform and check that the spectrum is localized in some small area plus inevitable noise. If it is not the case, it seems that approximating the data by a simple harmonic wave is not a good idea.
If it is indeed the case let take the middle of spectrum as an approximation for omega`.
Next we need to find A and phi and Kalman filter may be used for that.
Namely A *cos(omega *t- phi) is a solution of the second order linear system d/dt(X) = A*X with A= ( 0 1; -omega ^2 0) or
dot( x_1 ) =x_2 dot(x_2) = - omega^2 x_1
with observation y= x_1 ( in matrix form y= C*X =(1 0 ) * (x_1 x2)’ )
You need to add some noise and set its statistical characteristics than use standard Kalman filter As a result, you will get a smooth function that can be easily approximated by a*cos(omega*t) + b*sin (omega*t) ( using least square – for example) , and finally A and phi - can be easily computed from a,b.
Hope it may help.
  • asked a question related to System Identification
Question
3 answers
I would like to know the mathematical background behind MATLAB'S linear grey-box system identification (idgrey and greyest).
Relevant answer
Answer
  • asked a question related to System Identification
Question
2 answers
its easy to build block hankel matrix for 1xN(N=1000) vector. but how would we buid block hankel matrix for MxN(M=3,N=1000) matrix.?
Relevant answer
Answer
Thank you very much sir Mohamed-Mourad Lafifi
  • asked a question related to System Identification
Question
3 answers
Hello, I have a 1-D signal and I want to estimate damping for each mode. Is there any toolbox available using wavelet?
Thanks
Relevant answer
Answer
  • asked a question related to System Identification
Question
4 answers
Hye all,
Previously, i have developed MPC using linear ARX model (from system identification toolbox). <-- here, I do not use MPC toolbox available in Matlab, I have designed the MPC based on this book: MPC using Matlab, by Liuping Wang.
My question is, how do I use NARX equation (from system identification toolbox) into the MPC? 
Any opinions, references from all very much appreciated.
Relevant answer
Answer
Hi,
Here is a complete workshop on how to implement MPC and MHE in MATALB.
The workshop shows a complete explanation of the implementation with coding examples. the codes are also provided.
I thought of sharing it here as it might be helpful.
  • asked a question related to System Identification
Question
2 answers
I am working on shunt active power filtering. I am devising a model on simulink that can suggest compensation currents for real world non linear loads (e.g. microwave, energy savers etc). So I have measured the 3phase voltage and currents for these loads and have converted in csv file to import in matlab. now I want to generate a non linear model that can relate with these voltages and currents. Can anyone suggest a mechanism to do that?
Relevant answer
Answer
You can use the command
ident
and select time domain data then import your data and continue with system identification procedure.
  • asked a question related to System Identification
Question
5 answers
Hi All,
I used System identification Toolbox to identify a discrete time state space model with 2 inputs 1 output and 1e-09 sample time. Data fitting is 100% as shown in Toolbox, but i get very high values with a step response or given input values..what kind of problem could this be? I uploaded data, iddata and ss-model
thanks
Relevant answer
Answer
Hello Amor,
Yes you definitely have to split your dataset into training and validation sets, for example you could use 70% of your data as training set and the remaining 30% as validation set and try to minimize the error on the validation set. Try to take a look also to K-fold crossvalidation to avoid overfitting. Your data should be "equivalent" meaning that the training and validation data should carry the same amount of information, you shouldn't have a training set representing the system in a stationary or almost unexcited condition since the estimation procedure won't be able to recognize the system dynamics. On the other hand if your data are too noisy it will be difficult to estimate a proper system gain. Remember that having a fitting of 100% is ALWAYS not recommendable.
Good luck!
  • asked a question related to System Identification
Question
1 answer
Hi All,
How to decide the number of poles and zeros in the system identification toolbox in the determination of the transfer function for any particular system, given the input and output time series?
Relevant answer
Answer
Dear Amor,
In fact we do not begin the processes of identification from zero, we must have some basic information about system. We start generaly the expérimentation with a maximum of poles and zeros (for exemple 4, 5, 6 for ordinary system and more for the complex system) and decrease the number if there indices of performence are not altered. In other word we search a model with minimum degree and a allowable dynamic evolution.
For more information about this subject i suggest you to see links on topic.
-System Identification Toolbox Getting Started Guide
-System Identification Toolbox
-Transfer function estimation - MATLAB tfest - MathWorks 中国
https://ww2.mathworks.cn › ... › Transfer Function Models
-System Identification Toolbox User's Guide - CiteSeerX
-a manual for system identification - Automatic Control
Best regards
  • asked a question related to System Identification
Question
5 answers
I have to identify a transfer function from input and output data, but each time i do it with System Identification Toolbox, i dont get the right value for the output..do the sample time value have a role in this ? which value to put if input and output data contain only the variable values and not the sampling time in the experiment ? Basically if the output depends on the input value and not on time, how to get the transfer function from the data ?
Relevant answer
Answer
hi,
Sample time also matters.
But after identification of your Transfer function model,
you need to give a deviation input to transfer function for the validation, and you need to add the initial condition at output.
deviation input is (original input - operating point input)
Initial condition of output value should be added at the output of transfer function.
  • asked a question related to System Identification
Question
6 answers
is it possible to transfer the data from fuzzy logic designer to system identification? if possible, can I know the detailed step to follow.
Relevant answer
Answer
Well its possible ,save your fuzzy logic design data to the matlab workspace and it should to be in form of matrix or data object in order to be use in the system identification .
  • asked a question related to System Identification
Question
8 answers
Hello, I am working on a model:
dx/dt = Ax + Bu
y = Cx + e
It is equivalent to an output-error model where noise is not modeled. I have trained it using real data through maximum likelihood estimation (MLE) and parameters in A, B, C are estimated.
This problem is that the residual is not white. Will this violate the assumption of MLE that y is a sequence of independent variables?
Relevant answer
Answer
interested
  • asked a question related to System Identification
Question
3 answers
I work on Vitek 2 Compact System for identification of bacterial isolates and PCR technique using 16S rRNA gene ... but the results are mismatched... can any one tell me why
Relevant answer
Answer
It makes sense if you see the differences in results. 16s is not always an excellent technique for the identification at species level. And the results can differ a lot on the basis of sample prep and sequence data processing. There are been several studies which compared both methods and found vitek outperforms 16s sequencing. Find attachment
  • asked a question related to System Identification
Question
8 answers
I intend to conduct a modal testing on a clamped-clamped steel beam in ABAQUS.
-The input is random signal with normal distribution, zero mean, and maximum amplitude of 5 (N).
-Duration of loading is 30 seconds.
-The length of the beam is 2 meters which is monitored by 5 sensors attached on top surface of the I-shape beam.
-Sampling rate is 100 so the cut-off frequency is 50 (Hz).
-The beam's natural frequencies are in range of 4 to 35 (Hz).
Have I set the right parameter to perform modal analysis?
I am recording the acceleration data of the sensors for a structural system identification method, unfortunately the identified frequencies from the Stochastic System Identification (SSI) method are not satisfying and do not match with real frequencies, I believe the above parameters should change to achieve my desired results.
I would be appreciated if anyone help me out with the right numbers for duration of the analysis, sampling rate, number of sensors, and the type of excitation applied to the beam.
Thank you.
  • asked a question related to System Identification
Question
5 answers
There are many different kinds of soft computing methods used for identification of complex system including robotic manipulators and mechatronic systems. But for making an intelligent choice to extract the best dynamic of under study systems, we will not be successful to model them very well.
Relevant answer
Answer
Nonlinear system modeling has attracted great attention in engineering sciences as well in many other fields such as meteorology, economics, biology, etc. This is simply due to two main reasons. First, the presence of nonlinear phenomena in most physical systems is rather the rule than the exception. Second, nonlinear system analysis and control can only be achieved if the mathematical model of the system is known . This model can be constructed using the physical modeling approach which leads to the white box models. This approach consists in decomposing the considered system in different parts (electrical part, mechanical part, heat conduction part, etc.) and then applying the appropriate first principles that govern each part. This approach can clearly be very complex since it requires detailed specialist knowledge in many different domains of science. In addition, the first principle models are often non linear and non stationary and consequently the obtained models are too complex for most practical purposes. System identification represents an interesting solution of constructing models, known as black box models, since it allows to overcome most of these problems. Furthermore, it can be applied to all physical systems. This approach consists in constructing mathematical models from observed input and output data based on five main steps : data collection, model class selection, model structure estimation , model. parameter estimation and model validation. The model class selection represents the corner stone toward the objective of nonlinear system identification because the model accuracy depends on the used model class. Numerous classes have been proposed in the literature for nonlinear black-box models such as Volterra models, NARMAX (Nonlinear AutoRegressive Moving Average model with eXogenous inputs models), nonlinear state space, block-oriented models structures, etc. All of these models are able to approximate any nonlinear system with arbitrary accuracy. The choice of the best class depends on the model purposes : emulation, prediction, simulation, controller design, fault detection, etc. For control purpose for example, a mathematical model must ensure a compromise between accuracy, model extraction cost and parametric simplicity of model in order to ensure the implementation of the controller.
  • asked a question related to System Identification
Question
4 answers
Hello All,
I was doing some behavioural modelling of the torque transfer characteristics of a belt drive system from the driver pulley to the driven pulley. While doing the same, i have tried to see how the angular velocity is getting transferred as well. I would explain my point with the following equations.
G_omega= (Omega_driven)/(Omega_driver )
G_Torque= (Torque_driven)/(Torque_driver )
G_Torque= (I∗alpha_driven)/(I∗alpha_driver ) where I is the Moment of inertia and alpha is the angular acceleration
G_Torque= (I∗(d(omega_driven))/dt)/(I∗(d(omega_driver))/dt)
where omega is the angular velocity
In Laplace domain, with zero initial conditions, G_Torque= (I∗s∗omega_driven)/(I∗s∗omega_driver )
After cancelling I and s terms, G_Torque=G_omega.
So does this really mean that the angular velocity transfer from the driver to the driven pulley has the same behaviour as the torque transfer and the step response of both of them will look the same ?
I feel like cancelling the moment of inertia terms is valid only if there is no slip or flex in the belt (could anybody confirm?). But even if there is a slip in the belt (then different moment of inertias felt by the driver and driven pulleys), doesn't it mean that this is already captured by the omega differences at both sides and this model will again work for torque even in the case of torque ?
The reason for this is obviously due to the fact that anglular velocity can be measured easily unlike torque. Much appreciated if somebody could point me in the right direction.
Thank you, Alex
Relevant answer
Answer
Dear Alex Paul,
You are right, input-output relation is the same for both torque and angular velocity, G_Torque=G_omega. Unfortunately it do not imply that you can directly measure torque by measuring angular velocity. As you mentioned it is essential to avoid slip or flex in the belt, otherwise the mathematical model will increase in complexity.
Regards, Alfonso Gómez
  • asked a question related to System Identification
Question
26 answers
Taxonomists,
What do you think about alternative systems of identification of species? Is DNA barcoding going to replace Linnaean binomial nomenclature? What are the advantages of a numeric system? Nomenclature is the topic of my dissertation and subject of my further research so I am interested in your opinions.
Tanya Kelley
Relevant answer
Answer
Dear Kelly
Even if we get universal marker one day, DNA barcoding will still remain a tool to aid Linnaean binomial nomenclature or Alpha Taxonomy. Dont get offended if I say, DNA barcode is just like the commercial barcode on the back of a toothpaste packet or tube, but it can't replace the name of the toothpaste on the front of the packet or tube.
  • asked a question related to System Identification
Question
5 answers
I intend to determine the Transfer matrix of a TRMS by system identification. In this context, which input would be better and why, chirp or PRBS ??
Relevant answer
Answer
The excitation signal choice represents a fundamental problem of system identification. Most of the existing methods for identifying these models assume that the input signal is of the white noise type. This signal is very interesting from the theoretical point of view because of its statistical properties. But, its practical use is not recommended. To overcome this problem, we can apply the pseudo-random binary sequence (PRBS) which is widely used for the identification of linear systems. The parameters are set taking into account only the dynamics of the system to be identified. Therefore, it can not be applied in the case of non-linear systems because they also require a judicious choice of excitation amplitudes to cover the entire operating range of the system to identify. Consequently, the chirp signal can be used in the case of non linear system.
  • asked a question related to System Identification
Question
4 answers
The discrete-time identified transfer function fits well with the data (Fit to estimation data: 97.9% , see also y_ym.jpg produced by System identification Apps). However, when I tried to test it with lsim as follows, I found y and yd are quite different (see y_yd.jpg), and yd is near zeros, why??
-------------- MATLAB code ------------------
data=iddata(y, u, Ts)
np = 5;
nz = 6;
sysd= tfest(data,np,nz,'Ts', data.Ts) % H(Z^-1)
[yd, ~]= lsim(sysd, u, t);
plot(t, y, t yd) % see y_yd.jpg
--------------outputs for sysd------------------
sysd =
0.05867 z^-1 - 0.07004 z^-2 - 0.3296 z^-3 + 0.8198 z^-4 - 0.664 z^-5 + 0.1851 z^-6
----------------------------------------------------------------------------------
1 - 4.302 z^-1 + 7.507 z^-2 - 6.645 z^-3 + 2.984 z^-4 - 0.5435 z^-5
Fit to estimation data: 97.9% (simulation focus)
FPE: 0.0001175, MSE: 0.0001155
Relevant answer
Answer
This example has several problems in terms of identification:
- the input signal is a step which is not recommended to carry out an identification.
- the choice of np and nz is arbitrary
In fact, you have to change the data and redo the simulations
  • asked a question related to System Identification
Question
5 answers
I am trying to identify the transfer matrix of a TRMS and I have a set of estimation and validation data. However, I have two types of validation data, one set has been derived by applying the same type of input (as that of estimation data) to the system but at a different time and another one which includes an entirely different form of input. Which one would be a better choice as a validation data ?
Relevant answer
Answer
I'm inclined to say a direct 'yes'. But in reality one should be look at the intent of the identification itself. Some questions should be asked:
  • Is the 'different' input affecting the system in question in the same region of interest as estimation input (e.g frequency range)? If so, it should have been included in the first place (through doing collinearity between dependent and independant variables).
  • Is the 'different' input have a different signal-to-noise ratio as the validation input. If so, it would be prudent to analyze the estimated system from a robustness to external disturbances point of view.
If ultimately, it's not a question of which one is a 'better choice', but rather how much confidence do I have in my estimated model irrespective of the dataset used (besides the one used for estimation of course).
  • asked a question related to System Identification
Question
5 answers
I am about to perform an analysis on effects of temperature gradients on natural frequencies of an I-shape steel beam with ABAQUS, would anyone give me clues on how long I should presume for analysis duration and how much temperature gradient is common in bridges?
Relevant answer
Answer
I suggest you to use a conservative gradient( bigger range), because steel bridges are very sensitive to temperature change. You'd better also consider temperature gradient in 3 directions: longitudinal, transverse, and vertical.
Temperature has no direct effect on vibrational properties of the structure, but it may cause damage to it. Therefore it can change the physical parameters and then it may affect the natural frequency.
  • asked a question related to System Identification
Question
2 answers
The system is unstable so feedback is necessary to perform the manauvers to collect data. However, the feedback correlates the inputs, which makes classical methods breakdown. Does anyone have experience using the "Joint input-output" method (to generate frequency responses for system identification)?
Relevant answer
Answer
There's a great technical note by Tom Berger that will be published soon! Covers how to implement the Joint Input-Output method and provides validation with flight data.
  • asked a question related to System Identification
Question
5 answers
I am interested in the application of derivative-free methods, in particular pattern search algorithms, to the identification of nonlinear systems. I have found many application papers that use this kind of methods to identify the parameters of the plant, but I have not found too much information about the advantages of using those algorithms with respect to gradient-based methods. Obviously the results will depend on your model structure, but is there any paper comparing both alternatives in general?
Relevant answer
Answer
Dear Edgar,
I suggest you to see links and attached files in topic.
-Direct filter tuning and optimization in multivariable identification ...
-System Identification (SYSID '03): A Proceedings Volume from the ...
-Simulation optimization: A review of algorithms and applications
-Identification of Dynamic Systems: An Introduction with Applications
Best regards
  • asked a question related to System Identification
Question
4 answers
Hi all,
I am doing system Identification for a space truss. Mode shapes from my experimental data are matching with that of analytical model but natural frequencies are not matching...I have tried to adjust the model parameters e.g stiffness and mass but i could match only Ist frequency at maximum...any suggestions for that?
Relevant answer
Answer
Dear Muhammad Mazhar Saleem,
Look the link, maybe useful.
file:///C:/Documents%20and%20Settings/user/%D0%9C%D0%BE%D0%B8%20%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D1%8B/Downloads/9789400761124-c2.pdf
Regards, Shafagat
  • asked a question related to System Identification
Question
3 answers
Suppose we have the FRF data (vector of frequencies, and vector of complex responses), how to build up a state-space model with predefined structures? I know MATLAB function "ssest" can do the job in principle.
I did it for 2 by 2 matrices via fixing some variables, seems good, though got the feeling that initial guess of free variables is tricky to set. The main concern is that for large-dimension matrices, this is cumbersome to perform the "Structured Estimation". Anyone can provide some codes for achieving this? Or provide another way to get the same thing here.
Cheers
Relevant answer
Answer
Search in MATLAB system identification toolbox . It helps
  • asked a question related to System Identification