Prospectus

nl en

Modern Game AI Algorithms

Course
2024-2025

Admission requirements

Not applicable.

Description

In the last years, Game AI has left the nerd interest area and is now known as incubator for many of the most important AI algorithms of our time. Almost the same methods are employed for beating the world champion in Go as well as solving very complex Chemistry problems for the first time in an automated fashion. We have recently witnessed programs beating human professionals in StarCraft and MOBA games and it is one part of the course to learn what kind of algorithms were used to do it.
Providing AIs that play games well is one pillar of modern Game AI, the others are procedurally generating content (PCG) and modelling players, and of course all these 3 can be combined in various ways. Of course, these methods have ties also to other fields (e.g., behavior trees originated in robotics) and are not constrained to game uses. This renders the course a good introduction also to general AI.
Modelling players is connected to analysing game data, which can have different goals, e.g. to balance, to modify difficulty, to adapt content, or simply understand how the set of players is composed or what they like.

Course objectives

At the end of the course, students are able to:

  • Have an overview and a fundamental understanding of the algorithms that drive Game AI and thus also AI progress, e.g. Monte Carlo Tree Search, Deep (Reinforcement) Learning, generative AI tools, and behavior trees;

  • Apply these methods in a practical computer games context;

  • Understand how modern algorithm and solution development fundamentally depends on performing and analyzing experiments - be warned: the new methods as e.g. DQN are very powerful, but they require a lot of experience to be applied successfully.

  • Analyze human behavior in games and use it to evaluate computer games or parts of games as utilized AI methods;

  • Create game-related artifacts as specific AIs, game content, or full games.

Timetable

The most recent timetable can be found at the Computer Science (MSc) student website.

In MyTimetable, you can find all course and programme schedules, allowing you to create your personal timetable. Activities for which you have enrolled via MyStudyMap will automatically appear in your timetable.

Additionally, you can easily link MyTimetable to a calendar app on your phone, and schedule changes will be automatically updated in your calendar. You can also choose to receive email notifications about schedule changes. You can enable notifications in Settings after logging in.

Questions? Watch the video, read the instructions, or contact the ISSC helpdesk.

Note: Joint Degree students from Leiden/Delft need to combine information from both the Leiden and Delft MyTimetables to see a complete schedule. This video explains how to do it.

Mode of instruction

Lectures and practical sessions. The practicals (labs) are for starting work on the assignments and getting feedback, I highly recommend to use that in this way, if you defer everything and try to find out on your own later, you will need much more time.

Course load

Total hours of study: 168 hrs. (= 6 EC)
Lectures: 26:00 hrs.
Practicals: 26:00 hrs.
Assignments: 116:00 hrs.

Assessment method

  • Individual assignment 20% of final grade

  • 2 group work assignments: smaller group work (2-3 people, 30%), larger and longer free group project (around 5 people, 50% of final grade).

  • No exam

The grade will be based solely on the assignment performance, we have around 3 assignments of increasing complexity, at least one of these is individual. For passing, students have to achieve a 5.5 minimum in each of these three assignments. The final grade is the weighted average.

Reading list

Registration

As a student, you are responsible for enrolling on time through MyStudyMap.

In this short video, you can see step-by-step how to enrol for courses in MyStudyMap.
Extensive information about the operation of MyStudyMap can be found here.

There are two enrolment periods per year:

  • Enrolment for the fall opens in July

  • Enrolment for the spring opens in December

See this page for more information about deadlines and enrolling for courses and exams.

Note:

  • It is mandatory to enrol for all activities of a course that you are going to follow.

  • Your enrolment is only complete when you submit your course planning in the ‘Ready for enrolment’ tab by clicking ‘Send’.

  • Not being enrolled for an exam/resit means that you are not allowed to participate in the exam/resit.

Contact

Lecturer: dr. M. Preuss

Remarks

While the course touches on many algorithms, it is rather practically oriented. The most important questions are a) how does it work, and b) how can it be used in practice. Due to the availability of suitable software, group assignments shall mostly use Java or Python. Have a look at [IEEE CoG 2024 Competitions] (https://2024.ieee-cog.org/competitions/) to get an idea of what we deal with.

Software
Starting from the 2024/2025 academic year, the Faculty of Science will use the software distribution platform Academic Software. Through this platform, you can access the software needed for specific courses in your studies. For some software, your laptop must meet certain system requirements, which will be specified with the software. It is important to install the software before the start of the course. More information about the laptop requirements can be found on the student website.