System Identification 2020-2021

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]

About this course

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.

Evaluation rules


The final grade will be a rounded, weighted average of all the evaluations per the percentages above, capped to 10. Note that each student can accumulate up to 110%x10 = 11 points; the extra point means that you can compensate across categories to a certain extent.

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. See the Teams channel for the specific rules on how many labs you can recover.

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 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:

Please look at the schedule below carefully to determine exactly when you should be in class. Update 22 Oct 2020: Monday 26 Oct we have two lectures, to free up the spot next Monday for Control Engineering.

Image with schedule 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.

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:


Logistics and platform

Labs will be taken in Matlab Grader: 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.

Lab quiz

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

Originality check

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 descriptions

Lab tests

Lab test 1: Everyone takes the test (and must therefore be present) in their lab slot. Keep in mind that the lab tests are required for eligibility. You must have a working camera and microphone (if your laptop does not, then login to Teams from the phone, for instance). The lab test requires that both are activated. The test will have three components, described and graded as follows:

  1. 3 points: a ClassMarker quiz with 9 questions, graded linearly (e.g. 6 questions get you 2 points), at the beginning of the lab slot. This part is eliminatory for the remainder, as follows. Anyone not getting at least 4 questions right cannot take any other part of the test. Anyone not getting at least 6 questions right cannot take part 3 of the test. After the quiz, we will start talking to people in order of their quality of the ClassMarker result. Each person gets up to 7 minutes for the remainder of the test. You can turn off your camera and microphone in-between parts 1 and 2, but you have to remain available and turn them back on when you are called.
  2. 5 points: one-on-one code discussions, on the submitted solutions of that student.
  3. 2 points: one-on-one question(s), testing the higher-level insight about the methods in the labs. Bonus points are possible if you demonstrate that you understand the topics significantly above the expected level.
Lab test 2: We are streamlining things a bit for this one, there will be only two components:
  1. 8 points: a ClassMarker quiz with 10 questions, some easier (for 1 subpoint each) and some more difficult (for 3 subpoints each); some of the questions will be free-form. To get the full 8 points in the grade, you need to answer 6 easy questions, and 4 difficult ones (so 18 subpoints = 8 points in the lab test grade). The length of the test will be tuned so that you have just enough time to answer the required set of questions. However, the test contains more questions, and you can continue answering during the time limit if you can manage it. Don't worry if you can't finish all the questions; that's by design. Anyone not getting at least 14 subpoints cannot take the second part of the test. Important: the test takes place for everyone at once, during the lecture slot in week 14 (11th January).
  2. 2 points: one-on-one discussions with each student.

The rest of the procedure is the same as for lab test 1.

The grade at each lab test is added with a 0.15 weight to the final grade, irrespective of its value.


Supervision and discussions with students are done in Teams. You need to participate during your project slot.

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.

The schedule for part 2 presentations is available. A Teams meeting in General will be started for the presentations. Please be in this meeting at least 15 minutes in advance of your slot, and reserve at least 15 minutes after in case of delays with teams before you. Turn on your camera during your group's talk.


The exceptional exam is taken Monday 21st June from 10. Please contact the lecturer if you are eligible, terminal year, and want to join, and you will receive a Teams meeting link.


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).
Image with email addresses