Photo: Veikko Somerpuro
Introduction to AI
Welcome to the Introduction to AI! This is the Fall 2024 edition of the course at the Department of Computer Science, University of Helsinki. The course is an intermediate level 5 credit course, organized by the Data Science MSc programme. We also welcome students in the Computer Science BSc programme as well as all other students as a part of your minor subject studies.
The calculated workload of a 5 credit course is 18 hours per week, so please be prepared to spend time and effort in learning. The course will require hard work. You have been warned.
Prerequisites: What you should know before starting
Prerequisites are good programming skills, and basic data structures and algorithms, and some university level mathematics.
Field | Required skills |
---|---|
Data Structures | stack, priority queue, tree traversal, heuristic search, A* algorithm; for example Data Structures and Algorithms (Tietorakenteet ja algoritmit) |
Programming | good programming skills in python |
Mathematics | elements of discrete mathematics and linear algebra (set operations, graphs, vectors), probability calculus – multivariate probability is helpful but not required; for example Probability calculus I (Todennäköisyyslaskenta I) |
Learning objectives
Theme | Objectives (after the course, you ...) |
---|---|
Philosophy and history of AI |
|
Games and search |
|
Reasoning under uncertainty |
|
Machine learning |
|
Natural language processing |
|
Digital Signal Processing and Robotics |
|
Working methods
The course includes lectures (2 x 2h per week) and exercise sessions (2h per week). The exercise sessions are meant for discussing the problems after you have completed them by yourself.
The lectures are not compulsory but they are meant to be useful.
Exercise points are marked in the exercise sessions; see Grading below.
You must register in one of the exercise groups on the registration system. If all the groups are full, please register in the overflow group and contact the lecturer or the TAs for instructions.
In case you have an unexpected constraint and can't make it to your own exercise session, the following options are (prioritized): (a) ask for permission to go to another group; or (b) submit your solutions by email before your own group session AND explain the unexpected situation (NB: being busy at work is not a valid excuse). You can only use the option b two (2) times during the course to gain points.
Course material
There is no course textbook. The course material consists of this material and lecture slides. The lecture slides and other useful information will be posted on the Moodle Page , under section Lecture Slides.
But please continue reading this page first.
Support
Questions and answers are most easily discussed on the course telegram channel. The lecturer and the TAs will do their best to answer questions but other students are also encouraged to engage in the discussion – often the best explanation is provided by a fellow student rather than a professor!
Please maintain a positive and supporting attitude in all discussions. Absolutely no bullying or other inappropriate behavior towards other students. There are no stupid questions, and making a mistake is often an excellent opportunity to learn – also for others.
Grading
Grading on a scale 1–5. Grading depends on the completed exercises (about 33% of the grade) and the course exam (about 67% of the grade). You get full exercise points for completing 80% of the exercises. The minimum requirement to pass is 50% of both the exercise and the exam points.
Your exercise points will be available in the first two separate examinations after the course exam. Please note at registration of separate exams you need to choose the type (tapa) of exam if you are doing a course exam requiring exercises or if you are completing the course only through the separate exam. In the first case, the grade is composed by the exercises and exam (on the above 33%/67% scheme) in the second case only the exam grade.
Exam instructions (on campus vs remote, open book vs closed book, etc.) are subject to change due to various circumstances. Please check the instructions on the course webpage and Moodle before the exam. Important: Please remember to sign up to separate exams at least 10 days before the exam.
Accounts and tools
Creating a user account
You'll need a user account to the Test My Code (TMC) system that will be used to download the programming exercises. You should also log in to the course material with the same account.
You can enter your student number as "Organizational identifier" (found in TMC settings after login) for future purposes, but on this course the exercises points are not collected directly from TMC. If you don't have an account already, you can create one here: https://tmc.mooc.fi/user/new.
Installing the programming environment
We recommend that for the Python exercises you use VSCode with the TMC extension. The plugin makes it easy to download the exercises. These tools are installed in computer labs B221 and BK107.
-
Python: If you want to do the exercises in Python we recommend using Visual Studio with the
TMC-plugin.
Navigate to https://www.mooc.fi/en/installation/vscode
and follow the instructions for your operating system.
Alternatively, you can download project templates
with tmc-cli or straight
from TMC. To run tests locally use the following
command:
python3 -m tmc
Note: TMC tests require Python 3.
Next select the right course in the programming environment.
Selecting the right course in the programming environment
Open the tmc settings and make sure that the server address is: https://tmc.mooc.fi/org/hy
. Then
log in and select hy-intro-to-ai-python
as your course. This is the python version for
this course.
Don't select the hy-intro-to-ai
version as it is discontinued. Please change to
hy-intro-to-ai-python
if you have already selected the old hy-intro-to-ai
java version.
Click 'Part 1' in the navigation bar at the top of this page.