Game Artificial Intelligence

The details
Computer Science and Electronic Engineering (School of)
Colchester Campus
Postgraduate: Level 7
Thursday 03 October 2024
Friday 13 December 2024
17 May 2024


Requisites for this module



Key module for

MSC G400CH Advanced Computer Science,
MSC G411CH Artificial Intelligence,
MSC G61012 Computer Games,
MSC G456N4 Computing

Module description

This module covers a range of Artificial Intelligence techniques employed in games, and teaches how games are and can be used for research in Artificial Intelligence.

The module explores algorithms for creating agents that play classical board games (such as chess or checkers) and real-time games (Mario or PacMan), including applying deep learning and reinforcement learning to play games.

The course also covers Procedural Content Generation, and explores the techniques used to simulate intelligence in the latest videogames.

Students should either be strong programmers or have some previous Python programming experience to take this module.  The module starts assuming students have proficiency in Python programming from the very first week's lab exercise.

Module aims

The aims of this module are:

  • To provide the student with the core knowledge of the techniques behind the most popular algorithms for Artificial Intelligence.

  • To program the agents that play a range of different games, either by themselves or as opponents the player must face.

  • To teach how automatic generation of content (complete games, rules, levels and gameplay elements) can be achieved by means of Artificial Intelligence.

  • To teach the basics of deep learning and reinforcement learning, and how these can be used to create agents which are capable of playing a range of different games.

Module learning outcomes

By the end of this module, students will be expected to be able to:

  1. Understand the techniques behind algorithms that play real-time video games and adversarial board games.

  2. Design and program agents that are able to play any given real-time or adversarial board game.

  3. Design and program algorithms that generate content for games procedurally, according to some predefined goals.

  4. Design and program non-player character behaviours for video games that create the illusion of intelligence.

Module information


  • Basics of Reinforcement Learning: Value Iteration, Policy iteration, Monte Carlo, Temporal Difference Learning, Q-Learning. The Multi-Armed Bandit Problem, Upper Confidence Bound for Trees, Monte Carlo Tree Search.

  • Nature Inspired Intelligence: Neural Networks and Genetic Algorithms Adversarial Games: Minimax, Alpha-Beta Search, Monte Carlo Tree Search.

  • A Case Study: Deep Learning in Game Playing Steering Behaviours for Autonomous Characters.

  • Path-finding: A*, Dijkstra's algorithm, Waypoint-based path-finding, Navigational Meshes.

  • Agent Behaviour: Finite State Machines, Hierarchical FSMs, Behaviour Trees.

  • Simulating Intelligence: Sensory Systems, Animations, Goal-Oriented Action Planning. Procedural Content Generation for Games. Refresher information on Vectors, Probability and Calculus will be provided during this module. The course will be taught via lectures and extensive laboratory exercises, using Python as the main programming language. Note that students should either be strong programmers, or have previous Python programming experience, to take this module, as the Python programming will be fairly demanding as soon as the module starts.

Learning and teaching methods

This module will be delivered via:

  • Eight 2-hour lectures.
  • Ten 2-hour labs.
  • Two 1-hour progress tests (in weeks 6 and 11).
  • Weekly Moodle Quizzes.
  • Additional video lectures.


This module does not appear to have a published bibliography for this year.

Assessment items, weightings and deadlines

Coursework / exam Description Deadline Coursework weighting
Coursework   Progress Test 1 (In person, open book restricted, MCQ)    20% 
Coursework   Progress Test 2 (In person, open book restricted, MCQ)    20% 
Coursework   Moodle Tasks for Lab Sessions    20% 
Coursework   Assignment 1: Programming Game-AI techniques     20% 
Coursework   Assignment 2: Programming intelligent game-playing agents    20% 

Additional coursework information

The course will include the use of open-source game frameworks.

Exam format definitions

  • Remote, open book: Your exam will take place remotely via an online learning platform. You may refer to any physical or electronic materials during the exam.
  • In-person, open book: Your exam will take place on campus under invigilation. You may refer to any physical materials such as paper study notes or a textbook during the exam. Electronic devices may not be used in the exam.
  • In-person, open book (restricted): The exam will take place on campus under invigilation. You may refer only to specific physical materials such as a named textbook during the exam. Permitted materials will be specified by your department. Electronic devices may not be used in the exam.
  • In-person, closed book: The exam will take place on campus under invigilation. You may not refer to any physical materials or electronic devices during the exam. There may be times when a paper dictionary, for example, may be permitted in an otherwise closed book exam. Any exceptions will be specified by your department.

Your department will provide further guidance before your exams.

Overall assessment

Coursework Exam
100% 0%


Coursework Exam
100% 0%
Module supervisor and teaching staff
Dr Michael Fairbank, email: m.fairbank@essex.ac.uk.
Dr Michael Fairbank
School Office, email: csee-schooloffice (non-Essex users should add @essex.ac.uk to create full e-mail address), Telephone 01206 872770



External examiner

Sheffield Hallam University
Senior Lecturer
Available via Moodle
Of 508 hours, 0 (0%) hours available to students:
508 hours not recorded due to service coverage or fault;
0 hours not recorded due to opt-out by lecturer(s).


Further information

* Please note: due to differing publication schedules, items marked with an asterisk (*) base their information upon the previous academic year.

Disclaimer: The University makes every effort to ensure that this information on its Module Directory is accurate and up-to-date. Exceptionally it can be necessary to make changes, for example to programmes, modules, facilities or fees. Examples of such reasons might include a change of law or regulatory requirements, industrial action, lack of demand, departure of key personnel, change in government policy, or withdrawal/reduction of funding. Changes to modules may for example consist of variations to the content and method of delivery or assessment of modules and other services, to discontinue modules and other services and to merge or combine modules. The University will endeavour to keep such changes to a minimum, and will also keep students informed appropriately by updating our programme specifications and module directory.

The full Procedures, Rules and Regulations of the University governing how it operates are set out in the Charter, Statutes and Ordinances and in the University Regulations, Policy and Procedures.