Modern Artificial Intelligence
The goal of the course is to teach the understanding, design, implementation and use of modern artificial intelligence (AI) and computational intelligence (CI) techniques for generating efficient intelligent behaviors in games and other simulation environments. Additional focus will be given to state-of-the-art AI algorithms for improving gameplay experience.
Modern artificial intelligence and computational intelligence have many applications inside and outside computer games. The techniques taught in this course are applicable to games, simulation environments, robotics, and many other areas.
Students learn a broad understanding of the theoretical, practical and implementation side of AI algorithms.
The course will partly cover the following topics (AI techniques and problems):
- Finite-state machines
- Behaviour trees
- Evolutionary algorithms
- Artificial neural networksDeep Learning
- Reinforcement learning
- Hybrid approaches
- Non-player character AI
- Adaptation and learning (off-line and on-line)
- Player behaviour modelling
- Player experience modeling General video game playing
- Dynamic difficulty adjustment
Formal prerequisitesStudents must have completed a course on programming such as "Introductory Programming", or "Object-Oriented Programming". Having completed the "Making Games" course is a plus. Moreover the student must always meet the admission requirements of the IT University.
Intended learning outcomes
After the course, the student should be able to:
- Theorize about and describe the AI algorithms covered in the class.
- Identify tasks that can be tackled through advanced AI techniques and select the appropriate technique for the problem under investigation.
- Compare the performance of different AI techniques and reflect on their suitability for different domains
- Design and implement efficient and robust advanced AI algorithms.
- Work efficiently in groups
6 weeks of intensive lectures + mandatory individual assignment (see below).
8 weeks of group project work with supervision (some lectures are planned during this period). Students are responsible for attending lectures (some of which will likely be by outside guest speakers) and then working on their projects independently (individual mandatory assignment) or in groups.
Besides the hours planned for lectures, tutorial, exercise and supervision sessions are planned which complement the theory covered during the lectures and are necessary for meeting the learning objectives of the course. You will practice presenting your work during the course in order to prepare for the oral exam. Lectures provide theoretical foundations and walk-through examples of relevant AI algorithms while exercises focus on students discussing and implementing the central algorithms themselves.
Mandatory activitiesDuring this course students will be required to hand in an individual mandatory assignment (6 page written report + source code), that needs to be completed/approved before being eligible for the examination. The mandatory assignment deadline is posted in learnIT.
The student will receive the grade NA (not approved) at the ordinary exam, if the mandatory activities are not approved and the student will use an exam attempt.
The course literature is published in the course page in LearnIT.
Ordinary examExam type:
D: Submission of written work with following oral, external (7-trinsskala)
D2G: Submission of written work for groups with following oral exam supplemented by the work submitted.
The total duration of the oral examination is 30 minutes per examinee.
The written work is a group project report (written work + source code + video production). Group size is normally 2-3 people.
Form of group exam: Mixed Exam 2