Contents
This course is oriented at creation of artificial players of computer games. We will focus especially on games, for which a forward model can be created and thus a search-based methods of artificial intelligence could be used. We will be dealing neither with navigation and path-finding (that is covered by NAIL068) nor neural networks and evolution algorithms (as they are taught elsewhere). Instead, we will be connecting on Artificial Intelligence I (NAIL069) with search-based methods suitable for games, e.g., Monte Carlo Tree Search, and with various suboptimal heuristic approaches for modeling game trees in video games.
News
Follow the appropriate channel at Gamedev Discord!
https://discord.gg/c49DHBJ
Dates
Lectures + Labs: Thursdays, 8:10, SW1 (we start 5.10.2023)
Course Exam
There will be an oral examination done during the examination period. Find the list of topics for the oral examination in this document. (Might get updated…)
Exam dates:
To be decided, but all three dates will most likely be in January.
Schedule
No. | Date | Topic | Lecturer | Content | Materials |
1. | 5.10.2023 | AI for StarCraft: Brood War Lecture |
Jakub Gemrot | Introduction lecture about the complexity of creating artificial player for StarCraft: Brood War (non-DNN way). |
|
2. | 12.10.2023 | Basics of AI player modeling, Forward model, A*-based agent Lecture |
David Šosvald | AI player and its position in the code architecture. Common intelligent agents models (reflex and goal based) and their correspondence to the game’s architecture. Game models for lookahead, their types. Forward model and game simulation. Example of an A*-based agent construction using Super Mario AI framework and agents developed at MFF. Game space pruning tricks. Details on A* algorithm: Artificial Intelligence I (MFF), Wikipedia |
|
3. | 19.10.2023 | A* Pong Agent Lab |
David Šosvald | PONG homework Forward model implementation and AI player abstraction (during the lab); A*-based agent for the game (HW). Homework resources: Pong v1, Pong v2 Delivery deadline: 17.12.2023 23:59 CEST Deliver to: David Šosvald |
HW instructions |
4. | 26.10.2023 | F.E.A.R. AI Lecture |
Jakub Gemrot | Let’s dive deep into the way how AI for the game F.E.A.R. was made and is still deemed to be awesome even in contemporary days (some even says it’s the best FPS AI ever). |
TBD |
2.11.2023 | Sport’s day | Cancelled | |||
5. | 9.11.2023 | MetaCentrum I Lab |
David Šosvald | Introduction to grid computing and hyperparameter testing. We will use a simple problem to demostrate hyperparameter optimization using the computing infrastructure of MetaCentrum. Jobs submission and tracking, logging, results visualisation. Code from lecture: A* maze on MetaCentrum |
|
6. | 16.11.2023 | MetaCentrum II Lab |
David Šosvald | MetaCentrum Homework Try your own MetaCentrum experiments with Super Mario! Delivery deadline: 14.1.2024 23:59 CEST Deliver to: David Šosvald |
HW instructions |
7. | 23.11.2023 | MCTS – Introduction Lecture |
Jakub Gemrot | In this lecture, we introduce the Monte Carlo Tree Search algorithm and look at some of its theoretical foundations, namely the Monte Carlo method and the Multi-armed Bandit problem.
Chess Homework – Part I – MCTS Node |
Presentations:
Notes: |
8. | 30.11.2023 | MCTS Enhancements – Part I Lecture |
Jakub Gemrot | We will be going through various MCTS modifications / improvements.
Chess Homework – Part II – MCTS Selection |
Presentations:
Notes: |
9. | 7.12.2023 | MCTS Enhancements – Part II Lecture |
Jakub Gemrot | We will be going through some more MCTS modifications / improvements.
Chess Homework – Part III – MCTS Expansion |
Presentations:
Notes: |
10. | 14.12.2022 | Game Theory Introuction Lecture |
Jakub Gemrot | We will do a quick intro to Game Theory in order to be able to talk about RTS combat which falls to the category of simultaneous games.
Chess Homework – Part IV – MCTS Simulation |
Presentations:
Notes: |
11. | 21.12.2022 | RTS Combat Lecture |
Jakub Gemrot | We will pinpoint the problem of simultaneous moves and propose way how to address that while still be able to you “regular recursive iterative deepening” min-max / alpha-beta. We will review basic terms from game theory along the way to ground the problem theoretically.Chess Homework – Part V – MCTS Backpropagation Delivery deadline: 3.1.2024 23:59 CEST Deliver to: Peter Guba |
Presentations:
Notes: |
12. | 4.1.2024 | Total War: Attile Lecture |
Jakub Gemrot | We finish with videos and talks on AI in Total War series.
Chess Homework – Final Part – MCTS Player |
Presentations:
Notes: |
The Credit
In order to gain the Credit you will be required to finish all the assignments handed out during the semester. There are no strict deadlines, however, you need to have the Credit before attending the exam.
Extra Links
Computational Complexity of Games and Puzzles