An Introduction to
Artificial Intelligence with
AI Game Development
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: firstname.lastname@example.org (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!
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.
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
- download the new version of the quake II engine from the course resources page, you need to do that from within your AI appliance
- copy the zip file to the "My Documents" folder
- unzip the file: rightmouse click -- command click for mac users -- on the zip file and
select extract all, leave all defaults in tact unless you know what you are doing
- delete the shortcut from the desktop (or edit it if you know how to do this)
- from now on only start the engine from within your My Documents folder
[2/4/15] posted a MSDOS commandline tutorial -- see below
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:
- A solid understanding of popular AI techniques
that can help solve problems in artificial (and real) worlds.
- A better understanding of how some of the complex
behavior in today's interactive games is generated and managed.
Documents of Interest:
- Programming Assignment #1, due Wednesday, February 11th @11:55pm
- Programming Assignment #2, due Monday, February 23rd @11:30pm
- Programming Assignment #3, due Monday, March 9th @11:30pm, here is
the line that you will need to add to your config file:
data 288 288 128
- Programming Assignment #4, due Tuesday, April 7th @11:30pm
- Programming Assignment #5, due Wednesday, April 15th @11:30pm
- Assignment #6, due Monday, April 27th @11:30pm