Project Postmortem

Game AI Pro book chapter 45: Introduction to GPGPU for AI - 2013

Authors: Conan Bourke & Tomasz Bednarz

Editor: Steve Rabin

Publisher: CRC Press

Project Description

Co-authored a chapter for the Game AI Pro book that covered the use of GPGPU techniques using OpenCL to implement artificial intelligence techniques, notably implementing a parallel GPU-based boids / flocking simulation for thousands of moving agents at acceptable real-time framerates.

Game AI Pro is a book series containing articles written by many different authors on topics relating to artificial intelligence, aimed primarily at game development and A.I. techniques common to the industry.

My Role

In collaboration with Tomasz we wrote the article in a very free-form introductory way, to encourage people to explore the use of GPUs and Compute for A.I. techniques within games. This was written before Deep Learning / Machine Learning became common place.

I wrote the initial Boids / Flocking behaviour in C++ using OpenGL. Tomasz took my example project and wrote an OpenCL kernel that would implement the same flocking behaviours. I then modified the program to make the OpenCL example run visually identical to the C++/OpenGL example, then set up the application so that we could compare the C++ and OpenCL implementations for performance.

I then wrote the general A.I. and structure of the book chapter, with Tomasz writing the OpenCL sections and descriptions.