**Lecturer: Lucian Busoniu, TAs: Zoltan Nagy, Marius Costandin**

Navigation: [Versiunea romana|Schedule|Course material|Labs|Lab tests|Project|Contact] [Back to Lucian Busoniu's webpage]

The course introduces nonparametric methods for system identification, as well as parametric methods including prediction error and instrumental variables techniques. Completing the control engineer's identification toolbox, input signals, online recursive methods, and model validation are also discussed. The material is described at an appropriate BSc level, and builds in a self-contained manner the required mathematical background. The course is based on the book by Soderstrom and Stoica.

This course is part of the Bachelor program of the Automation Department, UTCluj (3rd year 1st semester). Prerequisites: linear dynamical systems and linear algebra. The lecturer is Lucian Busoniu, while Zoltan Nagy and Marius Costandin teach lab classes.

Grading:

- 40%=2x20% two lab tests, see their section below for details.
- 30% final exam.
- 20% project, see below.
- 15% lab questions: a short written assignment at the start of each lab except the first, consisting of a couple of questions from the lecture material relevant to that day's lab.

Dates and locations:

- Lectures: Tuesdays 10AM-12PM in C01 (Dorobantilor street 71-73). There are 13 lectures in total.
- Labs & project: group 1 Tuesday afternoons; group 2 Friday afternoons, in C01 (labs for group 1 and group 2 halfgroup 2), C12 (group 2 halfgroup 1), and C13 (all the projects). All these rooms are on Dorobantilor street 71-73. Everyone will have 11 labs, 2 lab tests, and 5 project sessions.

Due to interdependencies between lectures, labs, and project classes, the actual schedule is slightly different from the official one. Please look at it carefully to determine exactly when you should be in class:

Everything takes place in the room and time slot indicated in the official schedule, so you don't need to worry about changes there. However, some things are skipped in particular weeks, and the projects are done by everyone in the same week. In the table, "odd" and "even" means that originally you would have come in the odd or even weeks respectively; you should instead come when indicated in the table.

The lecture slides are mandatory reading; they will be written down in detail to give a self-contained, complete picture of the topics. They are made available here in time for each lecture.

- Part 1: Introduction to System Identification (PDF).
- Part 2: Transient Analysis of Step and Impulse Responses (PDF).
- Part 3: Mathematical Background: Linear Regression and Statistics (PDF).
- Part 4: Correlation Analysis (PDF).
- Part 5: ARX Identification. (PDF).
- Part 6: Input Signals (PDF).
- Part 7: General Prediction Error, ARMAX, and OE Methods (PDF).
- Part 8: Instrumental Variable Methods. Closed-Loop Identification (PDF).
- Part 9: Recursive Identification (PDF).
- Part 10: Model Validation and Practical Issues (PDF).

In addition to the slides, followers may optionally consult the following books:

- T. Soderstrom and P. Stoica.
*System Identification*. Prentice Hall, 1989. The full text of this book is available at: http://user.it.uu.se/~ts/bookinfo.html. This book forms the basis of the course. - L. Ljung,
*System Identification: Theory for the User*, 2nd ed., Prentice Hall, 1999.

- Lab 1: (Re)Introduction to Matlab (PDF) -- two short exercises in order to get re-acquainted with Matlab. For a brief intro to Matlab, have a look at the following document (with thanks to Paula Raica for allowing us to use it) http://rocon.utcluj.ro/st/Files/ST_Lab1.pdf.
- Lab 2: Transient Analysis of Step Responses (PDF). The data files are: for first-order systems, #1, #2, #3, #4, #5, #6, #7, #8 (where # stands for index). For second-order systems, #1, #2, #3, #4, #5, #6, #7, #8.
- Lab 3: Transient Analysis of Impulse Responses (PDF). The data files are: for first-order systems, #1, #2, #3, #4, #5, #6, #7, #8. For second-order systems, #1, #2, #3, #4, #5, #6, #7, #8.
- Lab 4: Linear Regression for Function Approximation (PDF). Download the rbfapprox function, as well as the lab4_template script. The data files are: #1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11, #12, #13, #14, #15.
- Lab 5: Correlation analysis (PDF). The data files are: #1, #2, #3, #4, #5, #6, #7, #8.
- Lab 6: ARX Identification. (PDF). The data files are: #1, #2, #3, #4, #5, #6, #7, #8.
- Lab 7: Pseudo-Random Binary Sequences (PDF). Download the system simulator as well: system_simulator.p.
- Lab 8: General prediction error methods (PDF). The data files are: #1, #2, #3, #4, #5, #6, #7, #8. Download the OE identification function as well: oeidentify.m.
- Lab 9: Instrumental Variable Methods (PDF). The data files are: #1, #2, #3, #4, #5, #6, #7, #8.
- Lab 10: Recursive Identification (PDF). The data files are: #1, #2, #3, #4, #5, #6, #7, #8.
- Lab 11: Closed-Loop Identification. Model Validation. The data files for part 1 are: #1, #2, #3, #4, #5, #6, #7, #8; and for part 2: #1, #2, #3, #4, #5, #6, #7, #8.

Each student is assigned a randomly chosen technique studied in the labs, and a randomly chosen dataset; the student must then apply the technique to the dataset. The solution consists of Matlab code, which must be submitted at the end of the test, and will be run and verified by the lecturer. The test is 1 hour long, and the solution must be developed in the first 50 minutes; the last 10 minutes are reserved for discussing the solution with the lecturer. To ensure the test is solvable in the time slot allowed, some techniques can be applied in a simplified manner. These simplifications will be explicitly indicated in the test material.

You are free to use the course material, including lecture slides, lab descriptions and data, and the startup example code which was made available for some labs. All this will be available offline on the computer on which you will take the test. The complete Matlab documentation is of course also available. However, the internet connection is disabled on the computer and you are not allowed to use internet-connected devices, or to reuse the solutions you developed for the labs.

For the first test, the slots are assigned as follows: Lab test 1 schedule (PDF), where the format is: day in the week of Nov 13-17 / hour. The test is during the normal lab slot. Please be on time; the one-hour interval cannot be exceeded since your colleagues are starting the test immediately after that. If for well-founded reasons you cannot make it on the assigned slot, please contact the lecturer as soon as possible with a request to change the slot. Reassignments cannot be made if they result in more than 8 students taking the test in the same time slot. Note that before test 1, everyone should have labs 2-6 submitted; if not please correct this ASAP.

For the second test, the slots are assigned as follows: Lab test 2 schedule (PDF), where the format is: day in the week of Jan 15-19 / hour. The rules are exactly the same as for the first test, but now the subjects are from labs 7-11.

The project aims to move beyond the linear-system case treated in the lectures. Nonlinearities characterize virtually every real system, and in certain circumstances they cannot be sufficienty approximated by linear dynamics, making nonlinear models necessary. This project deals with a nonlinear variant of the ARX method. More details, including the **deadlines** for the solutions, can be found in the project description (PDF). Please read it carefully.

Comments, suggestions, questions etc. related to this course or website are welcome; please contact either the lecturer or the TA at the addresses below (given as images for spambot protection).