System Identification (227-0689)



Prof. Roy Smith
Automatic Control Laboratory
Dept. of Information Technology and Electrical Engineering
ETH Zürich

Online teaching platform

All organisational matters will be dealt through the online platform Moodle, where you will find the lecture notes, the exercises with their solutions and the information about the office hours and the teaching assistants.

Using the Moodle platform you will be able to ask questions about the exercises or the lectures which can be answered by the assistants, the professor or even by your fellow classmates. We strongly encourage your participation in the discussions and forums in order to improve your understanding of the material. Unfortunately use of Moodle is restricted to those registered for the class.


Familiarity with the following concepts is assumed:

Course Material


The slides may be revised as errors are found or I think that I have a better way of presenting the material. The date of the latest revision is shown. Those dating from last year may differ from the current lectures, so check for updates just before the lecture.

If you find errors or typographical mistakes in the slides please let Prof. Smith know so that corrections can be made and posted here.

Lecture Lecture slides Extra material Last revised
01 Introduction 14.09.2022
02 Data fitting and statistics Supplementary notes 26.09.2022
03 Least-squares estimation 04.10.2022
04 Sampled data models, parametrisations, and frequency domain analysis Supplementary notes 11.10.2022
05 Frequency-domain identification Supplementary notes 18.10.2022
06 Frequency-domain identification and input signals Supplementary notes 07.11.2022
07 Pulse response estimation and persistency of excitation Supplementary notes 01.11.2022
08 Time- & Frequency-domain methods, Prediction 13.10.2022
09 Prediction error methods & ARX models 15.11.2022
10 Transfer function models 21.11.2022
11 Instrumental variables, validation 29.11.2022
12 Closed-loop identification 30.11.2022
13 Subspace Identification Supplementary notes 13.12.2022

Supporting materials

Unfortunately there are several commonly used, but different, formulae for equivalent concepts. This can lead to confusion and these notation notes discuss some of the pitfalls for beginning readers of the literature.

Matlab functions

The following functions are provided to save you the time and trouble of coding them yourself. They are not optimized and so will not work well for very large data sets.

Matlab function Description
fdsubspaceid.m Calculate a full rank basis for the extended observability subspace and the singular values associated with each of the basis vectors.
fdsubspaceft.m Generate a state-space representation of specified rank from the extended observability subspace basis.
WfHann.m Generate a frequency domain Hann window of a specified length and width parameter.
WtHann.m Generate a time domain Hann window of a specified length and width parameter.

Related papers

Material from the following papers are discussed in the lectures. The papers are here so that you can read the details.

Primary reference

Secondary references

There are many texts that cover the required background in digital signals. The following are good but be aware that the notation varies a lot between texts so read carefully.