Computational Intelligence in Games
Information regarding the Exam
The CIG final exam will take place on 15th July from 12:00 to 14:00 in Hörsaal 1 (G26-H1). For the exam, you are only allowed to take one DIN A4 sheet with annotations with you ( hand-written, not printed and not copied), which we will collect at the end along with the exam. Additional tools like calculators are neither required nor allowed. Please bring your student id card and be there on time (exam takes place exactly at 12:00, we will open the entance starting from 11:00. If you are coming there close to 12:00 you may lose some time for writing the exam because of the additional time necessary to adhere to the new hygenic rules). For the new hygienic rules regarding the Covid19 situation, you should have received an email from the examination office. If not, please contact them to be briefed on the new regulations.
This course addresses the basic and advanced topics in the area of computational intelligence and games. This course has three parts:
Part one addresses the basics in Evolutionary Game Theory (EGT). In this part you will learn about simple games such as scissors/rock/paper and the main focus on the strategies for playing games.
Part two is about learning agents and we focus on reinforcement learning mechanisms. There are three questions for games:
Part three contains the advanced topics in games and artificial intelligence such as how can we program an agent who can pass a Turing test? how can we consider physical constraints of a spaceship while moving in an unknown terrain? etc.
This course will be held in English and is for Bachelor (5CP) and Master (6CP: including extra programming assignment) students.
Lectures and Tutorials
- Sanaz Mostaghim (Lectures)
- Christoph Steup (Tutorials and Organization) - Please contact Dr. Steup for tutorials
- Lars Wagner (Tutorials)
- Christian Wustrau (Tutorials)
The lectures will start in an online format (due to the current situation). We will provide you the recorded lectures which you can access from home at anytime.
In case that the situation changes, the lectures will take place Thursdays 9:15-10:45 in G29 307. We will inform you, when we officially start with live lectures.
You can access the viedo recordings of the lectures click here or http://mediasite.ovgu.de/Mediasite/Catalog/catalogs/iks-cig.
Please note that you need to use your URZ account to access the videos.
In order to plan the lectures in a structured way, we provide you the following lecture plan. You should learn the material for the corresponding specified week by referring to the online videos and slides:
Video click here (Password: URZ account)
|6 to 10 April||Chapter 0||Uploaded|
|14 to 17 April||Chapter 1||Uploaded|
|20 to 24 April||Chapter 2: Part 1, 2||Uploaded|
|27 April to 1 May||Chapter 2: Part 3, 4, 5||Uploaded|
|4 to 8 May||Chapter 2: Part 6, 7||Uploaded|
|11 to 15 May||Chapter 3: Part 1, 2||Uploaded|
|18 to 22 May||Chapter 3: Part 3 and MasterMind||Uploaded|
|25 to 29 May||Chapter 4: Part 1, 2||Uploaded|
|2 to 5 June||Chapter 5||Uploaded|
|8 to 12 June||Chapter 6||Uploaded|
|15 to 19 June||Chapter 7: Part 1, 2||Uploaded|
|Slides about EA and videos from the course EMO|
|22 to 26 June||Chapter 8: Part 1, 2, 3||Uploaded|
|29 June to 3 July||Chapter 9||Uploaded|
To open the slides, you need to use a password which is specified in the recorded lecture "Organization for SS2020" (access information above).
We compiled a List of Equations and Algorithm containing important symbols, equations and algorithms. We hope this overview helps you during your study of the course topics. Please feel free to send pull requests and help us to incorporate changes and additions throughout the semester.
Tutorials will be done online as video conferences. See Moodle for futher details.
|1||Christian Wustrau||Mo||09:15 - 10:firstname.lastname@example.org||starts on 04.05.2020|
|2||Lars Wagner||Mi||13:00 - 15:email@example.com||starts on 06.05.2020|
|3||Christian Wustrau||Fr||13:00 - 15:firstname.lastname@example.org||starts on 08.05.2020|
|4||Lars Wagner||Fr||11:00 - 13:email@example.com||starts on 08.05.2020|
Videos and simulations related to lectures
Conditions for Certificates (Scheine) and Exams
Certificate (Übungsschein): There are assignment sheets published about every two weeks. You need to hand in your solutions to the assignments before the next excercise using moodle. If you handed in a solution you may be asked to present your solution in the excercise (using video conferencing). The solutions need not necessarily be completely correct, however, it should become obvious that you treated the assignment thoroughly. You are granted the certificate (Schein), if (and only if) you
- handed in at least two thirds of the assignments,
- solve the programming assignment and write a 2-4 pages report about your solution (this task can be solved alone or in pairs of two), and
- pass the exam
Programming Assignment Bachelor:
Conceptualize and implement a Hearthstone AI, which is able to play the game and win against an easy bots provided by the lecturers. You can choose your own deck and your bot will always use this deck in the competition and in the fights against the test bot. To pass the task you need win 51% of the matches against the test bots.
Programming Assignment Master:
Conceptualize and implement a Hearthstone AI, which is able to play the game and win against a hard bot provided by the lecturers. You will be provided with six known decks, but during the competition and in the fights against the test bot you may encounter three additional unknown decks. To pass the task you need to win 51% of the matches against the test bot.
Both programming assignments will be handled through Moodle. You also will find additional info there.
Exam: If you intend to finish the course with an exam, your are required to meet the certificate conditions. There will be a written exam after the curse.
Exercise Sheets Assignments:
There will be bi-weekly tutorials. In order to write the exam at the end of the lecture, you must attend and actively participate in one of the tutorial groups and take part in Programming assignments. New assignments will be published here every two week. To attend, you must first apply for a spot in one of the groups (see below).
Participation in the tutorials will be over a streaming portal to-be-defined-here.
You must prepare answers to the written assignments at home and upload them by the given deadline in Moodle course of this lecture.
At the beginning of each tutorial, we will ask you to volunteer to present one of the assignments that you prepared. You pass the tutorial (and are allowed to write the exam) only if you handed in at least 2/3 of all assignments and solved the programming assignment.
You find the Assignment Sheets and the respective Assignment, where you cacn upload your solution in the Moodle Course.
- Interactive animation of evolutionary agents: https://ncase.me/trust/
- Free book on Game AI: http://gameaibook.org/
- Free book on Reinforcement Learning: http://www.incompleteideas.net/book/the-book.html
- Nash Equilibrium Paradoxon: https://en.wikipedia.org/wiki/Braess%27s_paradox
The programming asssignment is based on the Hearthstone AI Competition organized by Queen-Mary University London and OvGU. Pleas visit this link to find information on the installation and usage of the basic framework and how to create your own bot. More info will be provided using the associated Moodle course.
- Yannakakis, Georgios N., and Julian Togelius. Artificial Intelligence and Games. Springer, 2018. --> Link
- Richard S. Sutton and Andrew G. Barto, Reinforcement Learning: An Introduction, MIT Press, Cambridge, MA, 1998 --> Link
- Nowak, Martin, Evolutionary dynamics : exploring the equations of life, Cambridge, Mass. [u.a.] : Belknap Press of Harvard Univ. Press , 2006 --> Link to OvGU Library
- Ian Millington and John Funge, Artificial Intelligence for Games, CRC Press, 2009
- T. L. Vincent and J. L. Brown, Evolutionary Game Theory, Natural Selection and Darwinian Dynamics, Cambridge University Press, 2012
- Jorgen W. Weibull, Evolutionary Game Theory, MIT Press, 1997
- Thomas Vincent, Evolutionary Game Theory, Natural Selection, and Darwinian Dynamics, Cambridge University Press, 2005
- Josef Hofbauer, Karl Sigmund, Evolutionary Games and Population Dynamics, Cambridge University Press, 1998
- Kalyanmoy Deb, Multi-Objective Optimization using Evolutionary Algorithms, Wiley, 2001
- Literature about PCG: Paper1, Paper2, Paper3, Paper4
- Kruse, Borgelt, Klawonn, Moewes, Ruß, Steinbrecher, Computational Intelligence, Vieweg+Teubner, Wiesbaden, 2011
- Ines Gerdes, Frank Klawonn, Rudolf Kruse, Evolutionäre Algorithmen, Vieweg, Wiesbaden, 2004
- Zbigniew Michalewicz, Genetic Algorithms + Data Structures = Evolution Programs. Springer, Berlin, 1998