PA217 Artificial Intelligence for Computer Games

Faculty of Informatics
Spring 2024
Extent and Intensity
2/0/0. 2 credit(s) (plus extra credits for completion). Recommended Type of Completion: zk (examination). Other types of completion: k (colloquium).
Taught in person.
Teacher(s)
doc. Mgr. Hana Rudová, Ph.D. (lecturer)
RNDr. Vojtěch Brůža (assistant)
Vladimír Žbánek (assistant)
Guaranteed by
doc. Mgr. Hana Rudová, Ph.D.
Department of Computer Systems and Communications – Faculty of Informatics
Supplier department: Department of Computer Systems and Communications – Faculty of Informatics
Timetable
Mon 10:00–11:50 A318
Prerequisites
PV255 Game Development I || SOUHLAS
For completion as an examination, the base knowledge of Unity is required. If PV255 is 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).
For completion as a colloquium, the prerequisite of PV255 is not required for the course enrollment (agreement is guaranteed).
Course Enrolment Limitations
The course is also offered to the students of the fields other than those the course is directly associated with.
fields of study / plans the course is directly associated with
there are 29 fields of study the course is directly associated with, display
Course objectives
The course provides information about methods of 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 passing the course using the examination will have practical experience with AI programming.
Learning outcomes
The graduate will be able to apply artificial intelligence algorithms and approaches 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 the principles and ideas behind strategic and tactical behaviors for groups of AI characters.
The graduate will learn what the base algorithms behind board games are.
When passing the course using the examination, the graduate will know how to implement artificial intelligence algorithms in the game engine by coding in Unity.
Syllabus
  • 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.
Literature
  • 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.
Teaching methods
Standard lecture, no drills. Three homeworks including AI programming in Unity (when passing the course using the examination). Activity in lectures is encouraged by getting bonus points.
Assessment methods
When passing the course using an examination, the evaluation is given as a sum of points for homeworks, the final exam, and bonus points for activities at lectures: A more than 90, B 89-80, C 79-70, D 69-60, E 59-55.
It is possible to get up to 70 points for the final written exam; it is obligatory to get at least 40 out of 70 points.
There are three homeworks during the semester. Each student is required to obtain 16 points, at least from the total point of 30 points.
Also, each student can get 1 bonus point 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 based on the number of lectures.
When passing the course using a colloquium, it is required to get at least 40 out of 70 points from the final written exam (there are no other requirements).
Language of instruction
English
Further Comments
Study Materials
The course is taught annually.
Teacher's information
https://is.muni.cz/el/fi/jaro2024/PA217/index.qwarp
The course is also listed under the following terms Spring 2020, Spring 2021, Spring 2022, Spring 2023.

PA217 Artificial Intelligence for Computer Games

Faculty of Informatics
Spring 2023
Extent and Intensity
2/0/0. 2 credit(s) (plus extra credits for completion). Recommended Type of Completion: zk (examination). Other types of completion: k (colloquium).
Taught in person.
Teacher(s)
doc. Mgr. Hana Rudová, Ph.D. (lecturer)
RNDr. Vojtěch Brůža (assistant)
RNDr. David Kuťák (assistant)
Guaranteed by
doc. Mgr. Hana Rudová, Ph.D.
Department of Computer Systems and Communications – Faculty of Informatics
Supplier department: Department of Computer Systems and Communications – Faculty of Informatics
Timetable
Fri 17. 2. to Fri 12. 5. Fri 10:00–11:50 A217
Prerequisites
PV255 Game Development I || SOUHLAS
For completion as an examination, the base knowledge of Unity is required. If PV255 is 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).
For completion as a colloquium, the prerequisite of PV255 is not required for the course enrollment (agreement is guaranteed).
Course Enrolment Limitations
The course is also offered to the students of the fields other than those the course is directly associated with.
fields of study / plans the course is directly associated with
there are 29 fields of study the course is directly associated with, display
Course objectives
The course provides information about methods of 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 passing the course using the examination will have practical experience with AI programming.
Learning outcomes
The graduate will be able to apply artificial intelligence algorithms and approaches 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 the principles and ideas behind strategic and tactical behaviors for groups of AI characters.
The graduate will learn what the base algorithms behind board games are.
When passing the course using the examination, the graduate will know how to implement artificial intelligence algorithms in the game engine by coding in Unity.
Syllabus
  • 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.
Literature
  • 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.
Teaching methods
Standard lecture, no drills. Three homeworks including AI programming in Unity (when passing the course using the examination). Activity in lectures is encouraged by getting bonus points.
Assessment methods
When passing the course using an examination, the evaluation is given as a sum of points for homeworks, the final exam, and bonus points for activities at lectures: A more than 90, B 89-80, C 79-70, D 69-60, E 59-55.
It is possible to get up to 70 points for the final written exam; it is obligatory to get at least 40 out of 70 points.
There are three homeworks during the semester. Each student is required to obtain 14 points, at least from the total point of 30 points.
Also, each student can get 1 bonus point 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 based on the number of lectures.
When passing the course using a colloquium, it is required to get at least 40 out of 70 points from the final written exam (there are no other requirements).
Language of instruction
English
Further Comments
Study Materials
The course is taught annually.
Teacher's information
https://is.muni.cz/el/fi/jaro2023/PA217/index.qwarp
The course is also listed under the following terms Spring 2020, Spring 2021, Spring 2022, Spring 2024.

PA217 Artificial Intelligence for Computer Games

Faculty of Informatics
Spring 2022
Extent and Intensity
2/0/0. 2 credit(s) (plus extra credits for completion). Type of Completion: zk (examination).
Taught in person.
Teacher(s)
doc. Mgr. Hana Rudová, Ph.D. (lecturer)
RNDr. David Kuťák (assistant)
Guaranteed by
doc. Mgr. Hana Rudová, Ph.D.
Department of Computer Systems and Communications – Faculty of Informatics
Supplier department: Department of Computer Systems and Communications – Faculty of Informatics
Timetable
Thu 17. 2. to Thu 12. 5. Thu 10:00–11:50 A217
Prerequisites
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).
Course Enrolment Limitations
The course is also offered to the students of the fields other than those the course is directly associated with.
fields of study / plans the course is directly associated with
there are 29 fields of study the course is directly associated with, display
Course objectives
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.
Learning outcomes
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.
Syllabus
  • 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.
Literature
  • 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.
Teaching methods
Standard lecture, no drills, three homeworks including AI programming in Unity. Activity in lectures is encouraged by getting bonus points.
Assessment methods
There is the following expected evaluation given as a sum of points for homework, 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 70 points for the final written exam, it is obligatory to get at least 35 out of 70 points.
There are three homeworks during the semester. Each student is required to obtain 14 points at least from the total point of 30 points.
Also, each student can get 1 bonus point 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 based on the number of lectures.
Language of instruction
English
Further Comments
Study Materials
The course is taught annually.
Teacher's information
https://is.muni.cz/el/fi/jaro2022/PA217/index.qwarp
The course is also listed under the following terms Spring 2020, Spring 2021, Spring 2023, Spring 2024.

PA217 Artificial Intelligence for Computer Games

Faculty of Informatics
Spring 2021
Extent and Intensity
2/0/0. 2 credit(s) (plus extra credits for completion). Type of Completion: zk (examination).
Taught online.
Teacher(s)
doc. Mgr. Hana Rudová, Ph.D. (lecturer)
Mgr. Milan Doležal (assistant)
RNDr. David Kuťák (assistant)
Guaranteed by
doc. Mgr. Hana Rudová, Ph.D.
Department of Computer Systems and Communications – Faculty of Informatics
Supplier department: Department of Computer Systems and Communications – Faculty of Informatics
Timetable
Thu 14:00–15:50 Virtuální místnost
Prerequisites
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).
Course Enrolment Limitations
The course is also offered to the students of the fields other than those the course is directly associated with.
fields of study / plans the course is directly associated with
there are 29 fields of study the course is directly associated with, display
Course objectives
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.
Learning outcomes
The graduate will be able to apply proper algorithms and approaches from artificial intelligence in computer games.
The graduate will be aware of how to implement artificial intelligence algorithms in the game engine by coding in Unity.
Syllabus
  • 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.
Literature
  • 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.
Teaching methods
Standard lecture, no drills, three homeworks including AI programming in Unity. Activity in lectures is encouraged by getting bonus points.
For each lecture, a video is available in advance. A list of questions is also available. During the lecture, we will go together through the list of questions that basically constitute the lecture.
Assessment methods
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 online final exam, it is obligatory to get at least 38 out of 75 points. The regular date of the exam may be oral or written, it will be clarified based on the number of enrolled students. Repair exam dates will be in the form of an oral online exam.
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 2 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; 2 points: larger interaction), i.e., it is possible to about 24 bonus points for activity base on the number of lectures.
Language of instruction
English
Further Comments
The course is taught annually.
Teacher's information
https://is.muni.cz/el/fi/jaro2021/PA217/index.qwarp
The course is also listed under the following terms Spring 2020, Spring 2022, Spring 2023, Spring 2024.

PA217 Artificial Intelligence for Computer Games

Faculty of Informatics
Spring 2020
Extent and Intensity
2/0/0. 2 credit(s) (plus extra credits for completion). Type of Completion: zk (examination).
Teacher(s)
doc. Mgr. Hana Rudová, Ph.D. (lecturer)
Mgr. Milan Doležal (assistant)
RNDr. David Kuťák (assistant)
Guaranteed by
doc. Mgr. Hana Rudová, Ph.D.
Department of Computer Systems and Communications – Faculty of Informatics
Supplier department: Department of Computer Systems and Communications – Faculty of Informatics
Timetable
Fri 10:00–11:50 A318; and Fri 22. 5. 8:00–9:50 A320
Prerequisites
Base knowledge of Unity required (PV255 very helpful but not required)
Course Enrolment Limitations
The course is also offered to the students of the fields other than those the course is directly associated with.
fields of study / plans the course is directly associated with
there are 29 fields of study the course is directly associated with, display
Course objectives
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.
Learning outcomes
The graduate will be able to apply proper algorithms and approaches from artificial intelligence in computer games.
The graduate will be aware of how to implement artificial intelligence algorithms in the game engine.
Syllabus
  • Introduction and history.
  • Movement: kinematic movement algorithms, steering behaviors.
  • Search and pathfinding: the introduction to search algorithms, A* data structures and heuristics, Monte Carlo search, world representation, hierarchical pathfinding.
  • Decision making for a single character: decision trees, state machines, behavior trees.
  • Strategy and Tactics: waypoints, tactical analyses, coordinated action.
  • Implementation platforms, AI programming in Unity.
Literature
  • 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.
Teaching methods
Standard lecture, no drills, two homeworks including AI programming in Unity. Lectures include exercises and programming examples.
Assessment methods
Evaluation is completed based on the distance oral examination (80 points) and two homeworks with practical examples solved during the semester (10 points per each homework). For each class videoconference, 1 point may be given for asking the questions about past classes; up to 2 points may be given for responding to the questions. Successful completion of the course requires getting 40 points for the distance oral examination at least and 8 points for homeworks at least. Evaluation is A more than 90, B 89-80, C 79-70, D 69-60, E 59-50.
Language of instruction
English
Further Comments
Study Materials
The course is taught annually.
Teacher's information
https://www.fi.muni.cz/~hanka/games/
The course is also listed under the following terms Spring 2021, Spring 2022, Spring 2023, Spring 2024.
  • Enrolment Statistics (recent)