Organization
Events & Dates
The lecture will be organized in lectures, tutorials, and office hours. The lectures present the content. There will be weekly tutorials in which you discuss the exercise sheets of the course and in which you can also talk to your tutor if you have trouble with the lecture content. We offer office hours, where you can ask questions about the lecture content or seek assistance with programming projects. To this end, the Forum serves a similar purpose (please keep questions in English). Prior to the first programming project, there will be a brief introduction to these projects. It is not mandatory to participate in any of these offers, it is your responsibility to decide how much help you require.
All dates and events can be looked up in the CMS Timetable. In general, all events will be held in person, without recordings. However, course material like lecture slides will of course be uploaded to the CMS Materials section. Lectures take place in HS002 E1 3 (Tue 14-16, Thu 10-12). Office hours will be held in building E1 1, seminar room 3.06. For the tutorials, please refer to your personal status page in the CMS to find out when and where they are held once you have been assigned to one.
Exercise Sheets
Every week, we will give out exercise sheets with which you can test your understanding of the lecture topics. These exercise sheets are not mandatory, i.e., it is not required to complete them in order to achieve the exam admission and do not influence your final grade for the lecture. However, we strongly recommend you to examine them.
We do not hand out digital solutions. The solutions of each exercise sheet will be covered in the tutorial two weeks after the sheet is released.
Programming Projects
There will be five programming projects, including an introductory project. The general topics of these projects are:
- Implementation of heuristics for heuristic search algorithms
- Learning a strategy (policy) for a sequential decision making problem using supervised learning
- Implementation of basic machine learning algorithms
The programming projects are written in C++ and Python. For students not familiar with these languages, we will offer additional lecture-like demonstration sessions to help you get accustomed to the language. Nevertheless, you should at least have basic familiarity with C in order to profit from these demonstrations.
Grading
The programming projects are mandatory and must be worked on alone. All programming projects amount to 100 points in total. You must achieve at least 40 out of 100 points in the programming projects in order to be allowed to write the exam. The programming projects do not have an influence on the final grade.
Programming projects will mostly be graded based on correctness of your implementation. To this end, we provide both public tests which you can inspect and test your implementation with at any time, as well as daily tests which are anonymous and executed once a day on our test servers. Passing the public tests for a specific project task is required to be eligible for any points in this task. The daily tests are used to grade the task. There are no secret tests for tasks graded based on correctness. In particular, if you manage to pass all daily tests for a project task, you are done with this task and are guaranteed to receive full points for it.
In some projects, you may be asked to learn and submit machine learning models, which we will grade by comparing their performance in specific tasks against a baseline model. For these projects, there are no public tests, but there are daily tests which will report to you the relative performance of your model against the baseline on a chosen set of daily tasks. For these projects only, we may use additional secret tests that also assess the performance of your models on a chosen set of secret tasks. If used, the secret tests will not be run until after the project deadline. The final score is a weighted average of daily test and secret test performance.
For exact information on how specific project tasks are graded, please refer to the corresponding project description once it is published.
Examination Regulations
To qualify for the main exam and the re-exam, students must achieve at least 40 out of 100 points in the programming projects and pass the mid-term exam. The mid-term exam is not an examination in the sense of the study regulations, but only an examination prerequisite. It has no influence on your grade.
To pass the course, you need to pass either the main exam or the re-exam. The final course grade is the best of both exam grades. Both exams will be closed book. You may bring one hand-written A4 sheet with notes.
The passing threshold for all exams (including the mid-term) is usually set to 50% of the available points. However, we may change the threshold (for any exam) to adjust for exam difficulty.
Further information will be provided in due course.
