**Lecturer: Lucian Busoniu. Lab TAs: Maria Ceapa, Bilal Yousuf. Project TAs: Mihalis Maer, Tudor Santejudean**

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

The course introduces system identification methods including transient (time-domain) analysis, correlation analysis, prediction error methods, and instrumental variables techniques. Input signals, online recursive variants, closed-loop identification, 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 offline teaching for lectures, labs, and projects, and online platforms for discussions with students (Microsoft Teams) and to take quizzes (ClassMarker). As a unique ID for each student, we will use use an email address that is associated to a ClassMarker account. Microsoft Teams may be associated with a different, Didatec email address (or you can of course use the Didatec email for everything). 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.

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, successfully defended in the interactive project presentation sessions, are all required before being admitted to the exam. More details about each component (labs, lab tests, project evaluation) will be found at the appropriate places in their separate descriptions below.

Lectures are Wednesdays from 8AM, labs and projects on Mondays and Tuesdays. Please look at the schedule below carefully to determine exactly when you should be in class, and see the overall schedule on http://aut.utcluj.ro/ for when your time slots are allocated.

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 changes are performed:

- Since we need lecture 2 for lab 2, and labs come before lectures, we postpone lab 2 to week 3.
- During lab test weeks, we may need to use project slots for the test as well, so that everyone has time to take the test.
- The last lecture slots are backups for activities that may not fit in the usual slots (lecture material that we may not manage to finish, project presentations, lab tests etc.). The last lab slot is for recoveries.

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: Mathematical Background: Linear Regression. Probability Theory and Statistics (PDF).
- Part 3: Transient Analysis of Step and Impulse Responses (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. Structure Selection. Other Practical Issues (PDF).

At a random point during a lecture, a short quiz will be given from the material of that lecture, using the ClassMarker platform. A list of email addresses will be collected beforehand and you will be invited to ClassMarker. The quizzes 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 developed using Matlab. PDF descriptions of the labs are given on this website.

Lab solutions are required starting from lab 2. It is not enough to be present at the lab in order to be marked present; a complete, working, and original solution must be developed during the lab, see below for how we check whether the solution is working and its originality. At most two labs in total can be recovered before the exam; hence, accumulating three or more missing labs means you can no longer become eligibile for the exam. At most one copied lab can be recovered at any time during the year. Copying more than one lab automatically means you forfeit the discipline and retake it next year.

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.

Each lab except the first starts with a 2-minute quiz containing 2 short questions, which tests you on the lecture 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.

The validation that the lab is complete and working, as well as a first test of originality, is performed during a discussion with the TA. We will ask thorough questions to make sure that you were the source of the code (as opposed to some online code generation tool such as ChatGPT). If you fail to answer these questions successfully, the lab may already be declared copied at this step. If you pass this validation step, you are allowed to submit your solution to the dropbox link that will be made available in each lab PDF.

We very much prefer that students validate their lab as working and upload it to dropbox during their nominal 2-hour slot. To promote this, for each lab that satisfies this condition, the submitting student gets 0.1 points bonus in their final grade.

The *final* deadline to validate and submit the lab is the Tuesday of the week after the lab, at midnight. After that, the dropbox link is closed.

Once the upload link closes, the solutions to each lab are run through an automated plagiarism check to defend against copying between students. Each suspicious case is examined by the teachers, and if it becomes clear that the lab is copied, both the source and the destination lab are marked copied.

As pointed out above, we are imposing 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. You may also use the automated Matlab tutorial, with thanks to Tassos Natsakis who developed it.
- Lab 2: Linear Regression for Function Approximation (PDF). The data files are: #1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11, #12, #13, #12, #15, #16.
- Lab 3: 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 4: 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. For students finishing lab 4 with time to spare, there is also a bonus part for a real DC motor system.
- Lab 5: Correlation analysis (PDF). Should very preferably be applied to the real DC motor. As a backup in case of problems with the system, simulation data files are provided: #1, #2, #3, #4, #5, #6, #7, #8.
- Lab 6: ARX Identification (PDF). Should very preferably be applied to the real DC motor. As a backup in case of problems with the system, simulation data files are provided: #1, #2, #3, #4, #5, #6, #7, #8.
- Lab 7: Pseudo-Random Binary Sequences (PDF).
- Lab 8: Identification of an OE models of the DC motor with Gauss-Newton optimization (PDF).
- Lab 9: Instrumental Variable Methods (PDF).
- Lab 10: Recursive ARX Identification (PDF). The new code for interacting online with the DC motor is at dcmotor_online.zip.

- 6 points: code for redoing a (part of a) lab between 2 and 5, i.e., linear regression, transient analysis, or correlation analysis.
- 4 points: one-on-one question(s), both on the code and testing the higher-level insight about the methods in the labs.

**Lab test 2:** The same structure as for test 1, except now from labs 6 to 10.

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

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 lecture 2.

Guidelines for writing a report and developing and giving your presentation are also available. We will not be using reports this year but many of the principles there are also applicable

Comments, suggestions, questions etc. related to this course or website are welcome; please contact either the lecturer or the TAs via Teams or email.