SHE Level 3
SCQF Credit Points 20.00
ECTS Credit Points 10.00
Module Code M3I622941
Module Leader Hamid Homatash
School School of Computing, Engineering and Built Environment
Subject Applied Computer Games
  • A (September start)

Summary of Content

This module aims to equip students with a good understanding of Game Artificial Intelligence. The student will investigate standard Game AI techniques such as Finite-State Machines for AI Agents. The student will also look at the broad area of search techniques including the representations of search spaces for searches such as graphs and tress and how these data structures are populated from the game environment. The module will look at behaviours such as steering and flocking, the students will examine how these techniques can be built upon and combined to create AI Agents which have the appearance of 'intelligence'. Finally the students will be exposed to the area of procedural content generation and how Game AI techniques can be used to generate rich Game Environments.


Overview and history of AI. - Classic AI vs Game AI - Challenges for AI (and AI characters) in games. Search techniques - Depth-first and breadth-first search - Heuristic search - A* algorithms Application of search algorithms - Data Structures and Representations - Population of Data Structures from Game Environment - Pathfinding Finite state machines - Data Structures and Representations - Classic State Machine - Modular State Machine - Hierarchical State Machine - Fuzzy Logic - Overview of other Decision making techniques Steering Behaviours - Types of behaviours - Combining behaviours - Flocking - Locomotion (Direct Movement & Physics Simulation) Procedural Content Generation - Overview & Challenges - Level Design - Visuals - Game Mechanics

Learning Outcomes

On successful completion of this module student should be able to:-1. Implement movement based behaviours such as Steering and Flocking2. Investigate various techniques for representing search spaces in Game Artificial Intelligence such as Node Based, Grid and Navigation Meshes3. Examine and implement search algorithms in a game context4. Design appropriate finite-state machine models for AI characters' behaviours5. Describe how Procedural Content Generation is used in Video Games

Teaching / Learning Strategy

The University 'Strategy for Learning' documentation has informed the learning and teaching strategy for this module. The module material will be introduced through lectures, while practical exercises, based on the lecture material, will be given to students for their laboratory sessions. Tutorials will be used to help explain and elaborate on both the lecture material and the laboratory exercises. Full use will be made of GCU Learn to provide Lecture-based and related study materials, along with sample solutions of Tutorial and Laboratory exercises, thus encouraging the development of independent learning and allowing self-reflective feedback on student performance. Staff-based feedback on student performance for submitted work will be provided in line with the University feedback policy, with summative feedback and grades on the coursework assessment utilising GCU Learn. The additional interactive discussion features of GCU Learn will be utilised, as appropriate to the module, to stimulate independent and flexible student learning outwith scheduled class time.

Indicative Reading

Bukland. M, (2004) Programming Game AI by Example, Wordware Publishing Millington. I, Funge. J, (2009) Artificial Intelligence for Games 2nd Edition, CRC Press Russell, S. J., & Norvig, P. (2010). Artificial intelligence: a modern approach. Prentice Hall. Schwab, B. (2004). AI game engine programming. Charles River Media.

Transferrable Skills

D1 Specialist knowledge and application D2 Critical thinking and problem solving D4 Communication skills, written, oral and listening D5 Numeracy D7 Computer literacy D8 Self confidence, self discipline & self reliance (independent working) D10 Creativity, innovation & independent thinking D15 Ability to prioritise tasks and time management

Module Structure

Activity Total Hours
Independent Learning (FT) 134.00
Lectures (FT) 24.00
Assessment (FT) 18.00
Practicals (FT) 24.00

Assessment Methods

Component Duration Weighting Threshold Description
Exam (School) 2.00 50.00 35% Class Test
Coursework 1 n/a 50.00 35% Practical Based Assignment