AI in Games (5 cr)
Code: HTGP0350-3002
General information
Enrollment
01.11.2022 - 30.04.2023
Timing
22.05.2023 - 02.06.2023
Number of ECTS credits allocated
5 op
Mode of delivery
Face-to-face
Unit
School of Business
Teaching languages
- English
Seats
5 - 30
Degree programmes
- Bachelor's Degree Programme in Business Information Technology
Teachers
- Jani Seppälä
Groups
-
ZJA23KIAvoin AMK, tiko
-
HTG21S1Bachelor's Degree Programme in Business Information Technology
-
HBI19S1Degree Programme in International Business
-
MTM21S1Bachelor's Degree Programme in Tourism Management
-
HBI21S1Degree Programme in International Business
-
ZJK23KIKorkeakoulujen välinen yhteistyö, TIKO
-
HBI20S1Bachelor's Degree Programme in International Business
-
MTM20S1Bachelor's Degree Programme in Tourism Management
Objectives
Object of the course:
Artificial Intelligence is one of the cornerstones of most of the game. Whenever there are enemies or character navigation, the AI plays part of it.
AI is a wide area including things from pathfinding to character behavior both as individuals and groups. In the course, we will have a look at lots of areas in which AI is used and selection of possible ways to implement AI to fulfill needs of different kinds of games.
We will study the basics of pathfinding as well as making bot AIs and different kind of AI behavior basic building blocks such as finite state machines.
Course competences:
Game production competence
Cross-disciplinary competence in games
The learning objectives of the course:
The student who completes the course will have a wide understanding of the variety of the AI functionality that is required in games and what kind of options there are for implementation. The student will also learn to implement some of the most fundamental AI functionalities and logic in practice.
Content
The course will focus on using and implementing artificial intelligence in games development. The wider range of AI scenarios and implementation options are studied in theory level, and focused set of AI scenarios are also implemented in practice.
Time and location
TBD
Learning materials and recommended literature
All material will be provided in the slides.
Textbook: Millington I. et al., Artificial Intelligence for Games, 2nd Edition, 2009
Teaching methods
Hybrid style of teaching and coding
Student workload
Equivalent of 5 ECTS
Content scheduling
o Motion planning
* Mathematics
* Steering behaviors
o Decision making
* Decision trees
* Finite state machines
* Behavior Trees
o Pathfinding
* Dijkstra's algorithm
* A* algorithm
* Waypoints
* Navigation meshes
o Advanced decision making
* Genetic algorithms
* Monte Carlo tree search
Further information for students
Several homeworks and a final project (no exam)
Evaluation scale
0-5
Evaluation criteria, satisfactory (1-2)
Sufficient (1): You can implement simple AI behaviors to existing projects by taking advantage of already provided AI functionality.
Satisfactory (2): You can implement simple AI behaviors to existing projects by taking advantage of already provided AI functionality. You are also capable of extending such AI functionalities to provide more variety for AI behavior.
Evaluation criteria, good (3-4)
Good (3): You can implement simple AI behaviors to existing projects by taking advantage of already provided AI functionality. You are also capable of extending such AI functionalities to provide more variety for AI behavior. You can create AI behavior that takes advantage of FSMs, decision trees or similar state based AIs.
Very Good (4): You can implement advanced AIs for existing projects including things such as state based behavior and separation of individual and group behavior.
Evaluation criteria, excellent (5)
Excellent (5): You can implement advanced AIs for existing projects including things such as state based behavior and separation of individual and group behavior. You are capable to implement some AI techniques in more in-depth detail such as programming your own A* pathfinder or using tools such as influence maps and fuzzy logic to provide more human-like behavior.
Prerequisites
You need to posses advanced skills in game programming and game engines and therefore this course is not for you are not familiar with modern game development.