Computational Intelligence in Games

Description of the course

This course addresses the basic and advanced topics in computational intelligence and games. This course has three parts:

Part one addresses the basics of 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

 

Lectures take place on Wednesday 9:15 - 10:45 in Room G22A-013 

Slides

 

Chapter  Slide
0 Organisation
1 Introduction
2 Evolutionary Game Theory
3 Introduction to Reinforcement Learning
4 Dynamic Programming and Monte Carlo Method in RL
5 Temporal Difference Learning
6 Monte Carlo Tree Search
7 Rolling Horizon Evolutionary Algorithms
  Evolutionary Algorithms (Detailed slides from the course Evolutionary Multi-Objective Optimization(EMO)
8 Multi-Objective Decision Making and Learning in Games
9 Procedural Content Generation (PCG)

Recorded lectures are on Mediasite:          /OVGU/Fakultäten/Informatik (FIN)/Institut für Intelligente Kooperierende Systeme (IKS)/AG Computational Intelligence/Computational Intelligence in Games

Please note that you need to use your URZ account to get access to the recordings.

Tutorials

 Tutorials are weekly, starting on the 25th April 2023. The tutorials will be done on the following dates:

  • Tuesday 17:00 - 18:30 even weeks starting from 25.04.2023 in G29-307 (Note that we start at exactly 17:00 not 17:15).
  • Please register for the lecture via LSF. We will give access to the course on the elearning platform for all students that are registered for the CiG lecture in LSF.
  • Solve the exercise sheet linked below and submit your solution to the elearning platform.

 

Date Tasks and Materials Solution
April 25  Sheet 1 + Code  Slides Solution
May 2  Introduction to MicroRTS  Slides
May 9  Sheet 2 + Code  Solution
May 16  Questions and Answers, Game Evaluations  
May 23  Sheet 3 + Code  Solution
May 30  Questions and Answers -- Cancelled  
June 6  Sheet4 + Code (updated)  Solution Programming Solution
June 13  Questions and Answers, Game Evaluations  
June 19  MicroRTS Competition  
June 26  Cancelled  
July 4  Sheet 5 + Code  Solution
July 11  Sheet 6  Solution

 

 


 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 tutorial using Moodle. If you handed in a solution you may be asked to present your solution in the tutorials. 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 (this task can be solved alone or in pairs of two), and
  • pass the exam

Programming Assignment Bachelor: 

Conceptualize and implement an AI for a provided game.  The AI needs to be able to play the game and win against an easy bot provided by the lecturers.

Programming Assignment Master: 

Conceptualize and implement an AI for a provided game. The AI needs to be able to play the game and win against an easy and a medium bot provided by the lecturers.

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 course.

 


Exercise Sheets Assignments:

For every tutorial a new Exercise Sheet will be uploaded, which is to be solved by the students before their next tutorial. To acquire the Exercise Sheets, upload your solutions and get access to your tutorial group visit the Moodle page of this course.

Interesting Links and further Material

 


Programming Assignment:

The framework and rules of the programming assignment will be discussed in the first tutorial.

  • You will program an agent for the MicroRTS game
  • Submission of your Agent is due on June 19

 Past Exams:

 


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: 14.07.2023 - Contact Person: Webmaster