**Lecturer: Lucian Busoniu, TAs: Zoltan Nagy, Matthias Rosynski**

Navigation: [Versiunea romana|Evaluation rules|Schedule|Lectures|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. 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 *System Identification* by Soderstrom and Stoica.

This year, we will use a mix of online platforms to teach the course: Microsoft Teams for interacting with students, Matlab Grader for the labs, and ClassMarker to take the quizzes. As a unique ID for each student, please use an email address that is associated to a Mathworks and ClassMarker account. Microsoft Teams can be associated with the different, Didatec email address. Details on how we are using these platforms can be found under the specific type of activity below.

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. Zoltan Nagy and Matthias Rosynski teach the lab classes for the English line. Zoltan teaches the project classes.

Grading:

- 30%=2x15% two lab tests, see their section below for details.
- 10% lab quizzes: a short quiz with two questions, at the start of each lab except the first, from the material relevant to that lab.
- 30% final exam.
- 30% project (15% part 1 + 15% part 2), see below for details.
- 10% lecture quizzes: short quizzes during each lecture, from the material discussed during that particular lecture.

Eligibility conditions: Solutions to all labs except the first one; the two lab tests; and solutions to both parts of the project are all required before being admitted to the exam.

Note that while the lab solutions are not explicitly graded, they are required starting from lab 2; they are validated automatically by Matlab Grader. It is therefore not enough to be present at the lab in order to validate it; a complete, working, and original solution must be developed during the lab. At most two labs can be recovered at the end of the semester; hence, accumulating three or more missing labs means you can no longer become eligibile for the exam during the current year.

You can check your current status in the Google sheet table here, updated in near-real-time.

Lectures are Mondays from 12PM, labs and projects on Tuesdays and Thursdays. See the overall schedule on http://www.aut.utcluj.ro/ for details.

Due to interdependencies between lectures, labs, and project classes; as well as lab tests and project deadlines, the actual schedule is slightly different from the official one. The following main changes are performed:

- During lab test weeks, we will need to use project slots for the test as well, so that everyone has time to take the test.
- For project session 4, odd and even halfgroups are swapped, to avoid having a too long interval between two project sessions. The labels "odd" and "even" in the table refer to the official halfgroups, so "odd" includes 2.1 (group 2 halfgroup 1), 2.2, and 3.2, while "even" includes 1.1, 1.2, and 3.1. You should come to the project class when you see your label in the table. This should be feasible given your overall schedule; if incompatible changes occur, we will revisit the planning.
- Since the week of 30 Nov has two national holidays, we will simply skip the entire week, as recovering from 2 missing days in a coherent way is nearly impossible.
- One week of project and lecture slots are reserved for presenting part 2 of the project.

Please look at the schedule below carefully to determine exactly when you should be in class.

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).

Lectures are taught online, using Microsoft Teams. Please make sure you have a valid Teams account, as you will be unable to access the course activities without it.

Throughout each lecture, short quizzes will be given at random intervals, from the material of that lecture, using the ClassMarker platform. These are graded! So, you should pay attention during the lectures. If you answer all the questions in every lecture correctly, you get 1 point in your grade; lower scores scale linearly to between 0 and 1 points in the grade.

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. An advanced graduate-level textbook.

Labs will be taken in Matlab Grader: https://grader.mathworks.com/. Brief instructions follow. PDF descriptions of the labs are given on this website. You will write your solution as a Matlab function in a browser window. For each lab except a few, you will get a datafile index, which must be set inside your function. Your function must produce certain outputs, which will automatically be validated by Grader. You can **pretest** these outputs, and once you are sure everything works correctly, you will **submit** your solution. Pretesting can be done as many times as you need, but each solution can only be submitted once. See also the full Grader documentation.

Half-group boundaries are strict, for example you cannot access the quiz to the lab unless you are present during the lab slot of your halfgroup; and you cannot submit your solution at the deadline of other half-groups.

Supervision, discussions with students, quiz handling etc. are done in Teams. You need to participate during your lab slot! Each half-group gets its own channel in Teams.

You need an email address associated to a Mathworks account to participate in Grader. A list of email addresses will be collected beforehand and you will be invited to Grader. You do NOT need to have a Matlab license to participate in Grader (only if you want to run your solution offline).

Very preferably, do not edit the "Code to call your function". It should be identical to the first, locked line of the function that you are supposed to create. Editing it runs the risk of breaking the solution tests.

Each lab except the first starts with a 2-minute quiz containing 2 short questions, which tests you on the material relevant to that particular lab. If you answer everything correctly for all the labs, you get 1 point in your grade; lower scores scale linearly, as for the lecture quizzes. So, you should arrive prepared. Quizzes are taken in ClassMarker, for which you also need an account; please use the same email address as for the Mathworks account.

The deadline for submission is at the end of the second day following the day in which you took the lab. So, for instance, if your lab was on Tuesday, you must submit at the latest on Thursday at a quarter to midnight - 23:45 (not 23:59! due to limitations of the Grader platform).

The solutions to each lab are run through an automated plagiarism check. Each suspicious case is examined by the TA, and if it becomes clear that the lab is copied, both the source and the destination lab are invalidated. In addition, we are also imposing this year a "two strikes - you're out" rule. Namely, the first lab copied is only invalidated, and you can recover it at the end. The second lab copied invalidates the full set of solutions, you forfeit the discipline and have to take it next year.

- 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) ST_Lab1.pdf.
- Lab 2: Transient Analysis of Step Responses (PDF). In case you want to solve the assignment in regular Matlab as well (not just in Grader), 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). The data files are: #1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11, #12, #13, #14, #15, #16.

See the project description (PDF) for the topic, rules, and deadlines. Please read it carefully. A detailed description of the linear regression method needed in the first part of the project can be found in last year's lecture; we will talk about it in lecture 4.

Guidelines for writing your report and developing and giving your presentation are also available.

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).