PA217 Artificial Intelligence for Computer Games

Fakulta informatiky
jaro 2022
Rozsah
2/0/0. 2 kr. (plus ukončení). Ukončení: zk.
Vyučováno online.
Vyučující
doc. Mgr. Hana Rudová, Ph.D. (přednášející)
Mgr. Milan Doležal (pomocník)
Mgr. David Kuťák (pomocník)
Garance
doc. Mgr. Hana Rudová, Ph.D.
Katedra počítačových systémů a komunikací - Fakulta informatiky
Dodavatelské pracoviště: Katedra počítačových systémů a komunikací - Fakulta informatiky
Předpoklady
PV255 Game Development I || SOUHLAS
Base knowledge of Unity is required. If PV255 not successfully passed, the student must demonstrate a representative set of projects solved in Unity. Based on that, course enrollment is confirmed or not. The projects should be sent to the teacher by the beginning of the semester (or in the first week of the semester).
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
předmět má 29 mateřských oborů, zobrazit
Cíle předmětu
The course provides information about methods from artificial intelligence used for the development of computer games. Students will learn about data structures and algorithms from artificial intelligence needed for movement, pathfinding, decision making for a single character, strategy and tactics. Students will have practical experience with AI programming.
Výstupy z učení
The graduate will be able to apply proper algorithms and approaches from artificial intelligence in computer games.
The graduate will learn how to propose and implement the movement of AI characters in games.
The graduate will learn the basics of search algorithms, how to represent worlds in games, and how to process and implement path planning in games.
The graduate will understand principles and approaches for the decision making of a single AI character and will be aware of principles and ideas behind strategic and tactical behaviors for groups of AI characters.
The graduate will learn what are the base algorithms behind board games.
The graduate will be aware of how to implement artificial intelligence algorithms in the game engine by coding in Unity.
Osnova
  • Introduction and history.
  • Movement: kinematic movement, steering behaviors, combining steering behaviors.
  • Search and pathfinding: introduction to search algorithms, A* data structures and heuristics, world representation, hierarchical pathfinding.
  • Decision making for a single character: decision trees, state machines, behavior trees, fuzzy logic, Markov systems, goal-oriented behavior, rule-based systems, blackboard architectures, action execution.
  • Strategy and tactics: tactical waypoints, tactical analyses, tactical pathfinding, coordinated action.
  • Board games: minimaxing, transposition tables, Monte Carlo search.
  • Implementation of AI algorithms in Unity.
Literatura
  • Millington, I. Artificial intelligence for games. CRC Press, 3rd edition, 2019.
  • Aversa, D., Kyaw, A. S., Peters, C., Unity Artificial Intelligence Programming. Packt Publishing, 4th edition, 2018.
  • Yannakakis, G. N., Togelius, J., Artificial Intelligence and Games. Springer, 2018.
  • Buckland, M., Programming Game AI by Example, Jones & Bartlett Learning, 2004.
Výukové metody
Standard lecture, no drills, three homeworks including AI programming in Unity. Activity in lectures is encouraged by getting bonus points.
Metody hodnocení
There is the following expected evaluation given as a sum of points for homeworks, online final exam, and bonus points for activities at lectures: A more than 90, B 89-80, C 79-70, D 69-60, E 59-50.
It is possible to get up to 75 points for the final written exam, it is obligatory to get at least 38 out of 75 points.
There are three homeworks during the semester. Each student is required to obtain 12 points at least from the total point of 25 points.
Also, each student can get 1 bonus points for activity in each lecture (1 point: student response to several easy questions and/or student questions to clarify some part of the lecture, student response to one harder question), i.e., it is possible to about 12 bonus points for activity base on the number of lectures.
Vyučovací jazyk
Angličtina
Informace učitele
https://is.muni.cz/el/fi/jaro2021/PA217/index.qwarp
Další komentáře
Předmět je vyučován každoročně.
Výuka probíhá každý týden.
Předmět je zařazen také v obdobích jaro 2020, jaro 2021.