An Introduction to Artificial Intelligence with AI Game Development

Spring 2015


Dr. Lutz Hamel
Tyler, Rm 251
Office Hours: Tues/Thurs 11am - noon


Gabriel De Pace
Tyler Hall Room 137
Office Hours: Wednesday 10:30-11:30


Research papers are due Monday 5/4/15 @ noon in my office/mailbox

For programming projects please sign up for a time slot below:

In order to sign up for a time slot, please email me: (it has to be email, no other signup is valid). Only one email per team. First come, first serve. Plan on arriving 10mins before your presentation time. Have your computer up and running in order to show your project. 15mins go by fast!
Tuesday 5/5:
2:00 - Sean D.
2:15 - Tyson D.
2:30 - Joseph E.
2:45 - Chris G.
3:00 - Vishakh G.
3:15 - Dan R.
3:30 - Daniel T.
3:45 - 

Wednesday 5/6:
2:00 - Mason F.
2:15 - Jeremy A.
2:30 - Greg B.
2:45 - Alex B.
3:00 - Gerard G-M.
3:15 - Shawn V.
3:30 - Kaighen F.
3:45 - Leandro C.
4/23/15] ANN lab - lab sheet, Tiberius tutorial
[4/20/15] posted assignment #6
[4/16/15] Machine learning lab - lab sheet, data sets
[4/8/15] yes - assignment #5 is due on Wednesday April 15th!
[4/7/15] Posted assignment #5
[4/7/15] In the lab on Thursday I would like you to work through the two Prolog worksheets: worksheet 1 and worksheet 2
[4/2/15] ** no class today ** - but you are encouraged to meet and work through the Prolog worksheet in the lab
[3/30/15] posted assignment #4
[3/5/15] Here is a nice overview of the quagent world including how the radius/rays command is linked to wisdom.
[3/5/15] posted a new quagent interface library 'quagentv4.jar' in the resources area - this new library implements a stand command that allows you to tell a quagent to stop walking and stand in one spot.
[3/5/15] sakai now open for assignment #3
[3/4/15] posted the midterm, due 3/23/15 @ 11:30pm
[2/25/15] posted assignment #3
[2/19/15] ** no class today 2/19 **
[2/16/15] Tuesday 2/17 we will be meeting in Washburn 309
[2/16/15] posted assignment #2
[2/10/15] NOTE: starting Thursday 2/10 we will be in the CS Lab Tyler Hall Rm 55. This is only for Thursdays -- Tuesdays we still will be in the Washburn 309 unless otherwise stated.
[2/9/15] ** please bring your laptops for Tuesday 2/10 **
[2/9/15] I have posted a new version of the Quake II engine that fixes the access problem. Please follow these instructions: [2/5/15] posted assignment #1
[2/4/15] posted a MSDOS commandline tutorial -- see below
[1/22/15] Welcome!


Advanced graphics hardware and novel rendering algorithms have revolutionized the look and feel of interactive computer games. With the ever-increasing computational power of desk- and laptop computers, not to mention game consoles, we are about to witness another revolution in games: the very smart NPC (non-player character). The increase in computing power of today s machines allows game designers to implement sophisticated AI techniques for their synthetic creatures that are beginning to blur the difference in the experience between a multi-player game and a single player game populated with smart synthetic creatures. In this course we will examine AI techniques which are beginning to be routinely deployed in games including the A* path finding algorithm, rule based reasoning, neural networks, and genetic algorithms. We will also be concerned with knowledge representation and problem formalization. To make the theory accessible (and fun!) we will be using a mod of the Quake II game engine that allows us to replace the brains of the Q2 monsters with AI routines of our own choosing and design. We will design synthetic creatures that will have special roaming abilities, that will be able learn to pick up loot, and make tactical decisions based on learned behavior.
The goal is that you take two things away from this course:
  1. A solid understanding of popular AI techniques that can help solve problems in artificial (and real) worlds.
  2. A better understanding of how some of the complex behavior in today's interactive games is generated and managed.

Documents of Interest: