IT-Universitetet i København
 
  Tilbage Kursusoversigt
Kursusbeskrivelse
Kursusnavn (dansk):AI i spilprogrammering 
Kursusnavn (engelsk):AI in Game Programming 
Semester:Forår 2006 
Udbydes under:cand.it., medieteknologi og spil (mtg) 
Omfang i ECTS:7,50 
Kursussprog:Engelsk 
Kursushjemmeside:http://www.itu.dk/courses/MAIS/F2006/index.html 
Min. antal deltagere:
Forventet antal deltagere:30 
Maks. antal deltagere:100 
Formelle forudsætninger:You must have passed both the Game Programming course, or equivalent, and the Basic Programming course, or equivalent. Essentially, this implies that prior to the AI in Game Programming course, you should

_ be able to write programs in C++ [or any comparable language]
_ know how basic AI is used in games

In addition, a very rudimentary knowledge of statistics and vector calculus would be beneficial, but is not necessarily a prerequisite. 
Læringsmål:"It would appear that we have reached the limits of what it is possible to achieve with computer technology, although one should be careful with such statements, as they tend to sound pretty silly in 5 years"
--- John von Neumann

The objective of the course is to introduce the students to a variety of artificial intelligence concepts, methods, and algorithms related to and applicable in games. The main focus will be on the emerging field of [statistical] learning in games. This aims, for example, at enabling the computer to adapt its skills to the player's based on experience.

After the course the student is skilled in one or more of the following topics:

_ providing a general overview of the major fields within learning in games
_ applying machine learning in games
_ applying genetic algorithms
_ using and implementing neural networks
_ predicting the future
_ building a finite state machine
_ lunar landings
_ developing its own intelligent game
_ applying reinforcement learning 
Fagligt indhold:Besides the appropriate motivation to the theory and practice of artificial intelligence for games, the course covers subjects which range from deterministic to stochastic methods and their possible application. More specifically, topics included are neural networks, finite state machine, statistical decision theory, genetic algorithms, reinforcement learning, and evolutionary programming.

During the exercises, the aim is to implement [i.e. apply] one or more of the topics introduced, possibly in an actual game. This will be done based on programming languages and methods that support these theories.  
Læringsaktiviteter:12 forelæsninger + frivillige øvelsestimer

One or two guest lectures will probably be given by people working for the game company Io Interactive [see www.ioi.dk]. They work professionally with AI in game programming and their lectures will provide more insight in the actual applicability of such methods within game programming, making some of the concepts discussed during the course more tangible for the student.

NB! In the introductory week, meaning from 30 January to 3 February 2006, the course runs from 4PM to 7PM, where the first lecture will take place. This means, that exercises are cancelled in the introductory week. 

Eksamensform og -beskrivelse:X. experimental examination form (7-scale; external exam), 13-skala, Ekstern censur

 

Litteratur udover forskningsartikler:A.J. Champandard, AI Game Development, New Riders Publishing, 2004 
 
Afholdelse (tid og sted)
Kurset afholdes på følgende tid og sted:
UgedagTidspunktForelæsning/ØvelserStedLokale
Fredag 09.00-12.00 Forelæsning ITU 2A20
Fredag 13.00-16.00 Øvelser ITU 2A52

Eksamen afholdes på følgende tid og sted:
EksamensdatoTidspunktEksamenstypeStedLokale
2006-06-07 See time table on course homepage Mundtlig eksamen ITU See examination plan in Study Guide on the Intranet
2006-06-08 See time table on course homepage Mundtlig eksamen ITU See examination plan in Study Guide on the Intranet
2006-06-09 See time table on course homepage Mundtlig eksamen ITU See examination plan in the Study Guide on the Intranet