Computational Intelligence in Games

Announcements

--- Results of the CIG exam ---

The results of the final exam will be online in early August. You can see your grade in the LSF system. The exam review is scheduled for the 1st and 2nd of August. Please send an e-mail to Alexander with the time you want to see the exam. If this date is not possible for you we will arrange another meeting in September.

 

Description

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:

How can we use the information from a search mechanism to learn? 
How can we use reinforcement learning to find a better strategy?
How can we use reinforcement learning as a search mechanism? 

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

 

 Lecture:  Thursdays 9:15-10:45 in G29 307

 Exercise Class 1: Monday 9am-11am in G22A-211

 Exercise Class 2: Wednesday 1pm - 3pm in G22A-208

 Exercise Class 3: Friday 1pm - 3pm in G22A-110

 


Conditions for Certificates (Scheine) and Exams

 

Certificate (Übungsschein): There are assignment sheets published about every two weeks. Assignments the solutions of which you want to present in the next exercise class have to be ticked beforehand on a votation sheet that is handed our prior to every exercise lecture. If ticked, you may be asked to present your solution in front of class. 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

  • ticked at least two thirds of the assignments,
  • presented at least one time a solution during the exercise,
  • 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: consistently beat the GreedyAgent in 1 out of 3 decks listed below (average winrate in mirror-matchups above 55%)
    - MidRangeJadeShaman
    - RenoKazakusMage
    - AggroPirate Warrior

Programming Assignment Master: consistently beat the GreedyAgent in 3 out of 6 decks (average winrate in mirror-matchups above 55%)
    - 3 decks are known (see the list for the bachelor students)
    - and 3 decks will remain unknown before the submission

All submitted agents will be entering a tournament at the end of the semester.

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.

 


Slides

 

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.

0 Organisation   Slides  
1 Introduction Slides
2 Evolutionary Game Theory Slides (updated on 15th April)
2.5 Applications of Game Theory Slides
3 Introduction to Reinforcement Learning Slides
4 Dynamic Programming and Monte Carlo Method in RL Slides
5 Temporal Difference Learning Slides
6 Monte Carlo Tree Search Slides
6.5 Monte Carlo Tree Search in AlphaGo Slides
7 Rolling Horizon Evolutionary Algorithms Slides
8 Multi-Objective Decision Making and Learning in Games Slides
9 Procedural Content Generation (PCG) Slides
10 General Game AI Slides
11 CIG in the Industry Slides

 


 Videos and simulations related to lectures

 

 


 Recorded Lectures

 


Exercise Sheets Assignments:

Due to the many holidays in the beginning of the semester we will announce all exercise class appointments in the table below. Please make sure to mark the dates in your calendars.
 
We decided to do the programming assignment introduction during the regular exercise classes. Please see the dates below.


ID Topic Due Date per Group Exercise Sheet Additional Files
     Monday   Wednesday   Friday      
     G22A-211 G22A-208  G22A-110    
  Programming Assignment Introduction 15.04. 17.04. 12.04.
1 (Evolutionary) Game Theory 29.04. 24.04. 26.04. PDF ZIP
2 ESS, Game Policy, MDP, RL 06.05. 08.05. 03.05. PDF Git, Colab
3 Monte Carlo, Temporal Difference Learning 20.05.  22.05. 17.05. PDF Git, Colab
4 Action Selection, Monte Carlo Tree Search 03.06.  05.06. 31.05. PDF Git, Colab
5 Evolutionary Algorithms 17.06. 19.06. 14.06. PDF Git, Colab
6 Multi-Objective Optimization 24.06. 26.06. 21.06. PDF

---

  Submission Programming Assignment

final deadline 21.06.

send your bot files or a download link

via e-mail to Alex

PDF

Example for the

Evaluation

Interesting Links and further Material

 


 Programming Assignment:

 You can find information on the programming assignment under: http://www.is.ovgu.de/Research/HearthstoneAI.html

Final deadline: 21.06.

 


 Past Exam:

 Exam WS 2015/2016

 


Literature

 

  • 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: Paper1Paper2Paper3Paper4
  • 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

Last Modification: 17.01.2024 - Contact Person: Webmaster