Imitation Learning Through Games:
Theory, Implementation and Evaluation


Dr. Bernard Gorman, PhD, BSc.

My PhD research was in the field of Artificial Intelligence; more specifically, that of imitation learning. In my thesis, I argue in favour of using modern, commercial computer games to study, model and reproduce humanlike behaviour. We provide an overview of the biological and robotic imitation literature as well as the current status of game AI, highlighting techniques which may be adapted for the purposes of game-based imitation. We then proceed to describe our contributions to the field of imitation learning itself, which encompass three distinct categories: theory, implementation and evaluation. We first describe the development of a fully-featured Java API - the Quake2 Agent Simulation Environment (QASE) - designed to facilitate both research and education in imitation and general machine-learning, using the game Quake 2 as a testbed. We describe the various imitative mechanisms which we have developed using QASE and its MatLab integration facilities, following a well-known model of human behaviour which decomposes actions into strategic, tactical and reactive categories. Finally, we propose a generalised approach to quantifying the "humanness" of an artificial agent; the Bot-Oriented Turing Test (BOTT). To both validate the BOTT and to determine the efficacy of our imitative models, we present a series of experiments which use the believability test to evaluate our own imitation agents against both human players and traditional artificial bots. We demonstrate that our imitation agents perform substantially better than even a highly-regarded rule-based agent, and indeed approach the believability of actual human players.

My research was conducted at Dublin City University, under the supervision of Dr. Mark Humphrys.

All downloads include both the compiled program and the source code.
Comments and contributions are welcome (and encouraged!)


[special thanks to Gavin and Caroline for their help in designing the title banner]

e-mail : bernard.gorman@computing.dcu.ie





link : QASE API

As part of my research, I developed the Quake Agent Simulation Environment, a Java-based API designed to facilitate both AI research and tuition through games. It has proven quite successful, having already been adopted by several institutes of higher learning. All our work, as detailed in the publications list below, utilises QASE to both train and deploy game agents.



Publications : 22/11/09

PhD Thesis

Conference Proceedings Journal Papers




visit : Java3D Network Tennis Project Page

A 3D tennis game for network or single-computer play, written in pure Java. Originally created as a final-year project for my undergraduate course in Computer Applications at Dublin City University, it was intended to demonstrate that Java3D is both suitable and practical for full-scale games. The project page contains installation and gameplay instructions, as well as full technical details of how the application was written.


preview : See Screenshot 1
preview : See Screenshot 2