System Identification

In many applications, the only available information about a system might be in the form of frequency response measurements Hi at certain frequencies si.

System identification is concerned with finding a state-space model G(s) = C*(s*E-A)\B that matches the given measurements, i.e., Hi-G(si) ~ 0.

Below, we show how to identify a state-space model G(s) from frequency response measurements by using the Loewner matrix framework for rational interpolation.


Example: a system with 4 inputs and 4 outputs

Suppose we have measured the frequency response of a system with 4 inputs and 4 outputs at 500 frequencies si on the imaginary axis, i.e., si = j*wi. Then, the 500 frequency response measurements Hi are 4-by-4 matrices.

The measurements Hi correspond to an RLC circuit (MNA_4) from the NICONET benchmark collection; and they are the so-called Y-parameters of this system.

To visualize a subset of the 4-by-4 matrix measurements Hi, we plot the frequency response from input 1 to output 1, i.e., we plot Hi(1,1):

To visualize all 4-by-4 matrix measurements Hi, we plot their 4 singular values for each frequency si, i.e., their sigma plot:

Notice that the sigma plot exhibits many peaks. This is an early indication that we will need a model G(s) of high order (state-space matrices E, A, B, C of large dimension) to accurately match the given frequency response measurements Hi.

From these measurements, we assemble the associated Loewner matrix L of dimension 500-by-500. We then plot the singular values of this matrix.

Notice that the first 100 singular values decay quite fast, thus, we truncate the singular value decomposition of the Loewner matrix L to k = 100.

The resulting state-space model G(s) = C*(s*E-A)\has order k = 100, namely, E and A are 100-by-100 matrices, C is a 4-by-100 matrix, and B is an 100-by-4 matrix. (See the attached Matlab files and the references for more details on how to get k, E, A, B, C.)

Next, we plot the extracted state-space model G(s) (red line) and compare with Hi. 

The Loewner model G(s) matches the given measurements Hi for all 4 inputs and 4 outputs, as it can be seen in the following sigma plot of the frequency response G(si) and sigma plot of the approximation error Hi-G(si):

Furthermore, we also check the Bode plot for a subset of the response, for example, for the response from input 1 to output 1:

Indeed, the Loewner model G(s) provides a good match for the given measurements Hi.

Finally, we also plot the poles of the Loewner model G(s), i.e., the eigenvalues of the (A,E) matrix pencil. Notice that the magnitude of their imaginary part falls inside the frequency range si where we were given the frequency response measurements Hi.

Matlab code

This example can be run in Matlab using the following files:

Feel free to modify these files to suit your own frequency response measurements. Enjoy!

Model Reduction

To obtain even lower order models, we can now apply standard model reduction algorithms to the above Loewner model (E, A, B, C) of order k = 100.

Terminology and extensions

System identification, as described here, is also known as generalized realization, or macromodeling from frequency-domain data. Furthermore, the same Loewner matrix algorithm can be applied to frequency-response measurements of discrete-time systems, i.e., measurements Hi at frequencies si on the unit circle.

Depending on the application, the frequency-response measurements Hi can represent S-parameters, Y-parameters (as in this example), or other types of parameters relevant for the system we want to model.


References

  • A. J. Mayo, A. C. Antoulas, A framework for the solution of the generalized realization problem, Linear Algebra and its Applications 425, pp. 634–662 (2007). (DOI:10.1016/j.laa.2007.03.008)
  • S. Lefteriu, A. C. Antoulas, A New Approach to Modeling Multiport Systems From Frequency-Domain Data, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, Vol. 29, No. 1, pp. 14–27 (2010). (DOI: 10.1109/TCAD.2009.2034500)
  • S. Lefteriu, A. C. Ionita, A. C. Antoulas, Modeling Systems Based on Noisy Frequency and Time Domain Measurements, Lecture Notes in Control and Information Sciences, vol. 398/2010, 365-368, 2010. (DOI: 10.1007/978-3-540-93918-4_33)