skip navigation links JCCC Home
Future Students Current Students Faculty & Staff Continuing Education Friends & Visitors Tracks
GAME 180 - Artificial Intelligence/Games
Divider

JOHNSON COUNTY COMMUNITY COLLEGE
TECHNOLOGY DIVISION
GAME DEVELOPMENT
COURSE OUTLINE

 

Title: Artificial Intelligence for Games Effective Term: Spring 2009
Number: GAME 180 Credit Hours: 3 Contact Hours: 3
Course Type: Career Lecture Hours: 3 Lab Hours: 0

Description:

Upon successful completion of this course, students should be able to deconstruct simple computer programs illustrating introductory concepts in artificial intelligence as applied to computer games. They will define terms and application areas in the field, and describe game representation and implementation techniques used in artificial intelligence for games. 3 hrs lecture/wk.

Associated Costs: These are additional (out-of-pocket) expense considerations that students should expect in addition to the course tuition, fees, and textbooks. $20 to $50.

Supplies: Refer to the instructor’s course syllabus for details about any supplies that may be required.

Prerequisite: CS 200 Concepts of Programming Algorithms Using C++

Textbook(s): NONE

Course Fees: NONE

Course Objectives:

Upon successful completion of this course the student should be able to:

  1. Deconstruct basic AI techniques for games.
  2. Compare various techniques for movement and decision making.
  3. Describe and compare techniques for implementing learning behavior.
  4. Compare and contrast artificial life and artificial intelligence.
  5. Explain simple scripting systems.

Content Outline & Competencies:

I. The Nature of Artificial Intelligence

II. Game AI 
   A. Describe established game AI
   B. Predict future game AI 

III. Chasing and Evading
   A. Discuss basic chasing and evading 
   B. Explore Line-of-sight methods 
      1. Evaluate continuous environments 
      2. Analyze tiled environments 
   C. Explore intercepting 

IV. Pattern Movement
   A. Summarize the standard algorithm 
   B. Explore pattern movement 
      1. Explain continuous environments 
      2. Analyze tiled environments 
      3. Evaluate physically simulated environments 

V. Flocking
   A. Summarize classic flocking 
   B. Analyze obstacle avoidance 
   C. Define follow the leader behavior 

VI. Potential Function-based Movement
   A. Discuss how to use potential functions in game AI 
      1. Evaluate chasing and evading 
      2. Explain obstacle avoidance 
      3. Analyze swarming 
   B. Summarize optimization methods 

VII. Basic Pathfinding and Waypoints
   A. Discuss pathfinding 
      1. Define the basic method 
      2. Evaluate breadcrumb pathfinding 
      3. Analyze path following 
      4. Explain wall tracing 
   B. Summarize waypoint navigation 

VIII. A* Pathfinding
   A. Summarize the components of A* 
      1. Define the search area 
      2. Examine how to start the search 
      3. Create a scoring system 
      4. Analyze how to deal with dead ends 
      5. Define a terrain cost 
   B. Examine influence mapping 

IX. Scripted AI and Scripting Engines
   A. Examine scripting techniques 
   B. Develop opponent attributes 
   C. Analyze basic script parsing 
   D. Develop opponent behaviors 
   E. Create scripted events 

X. Finite State Machines (FSM)
   A. Define the basic FSM model 
   B. Design an FSM 
   C. Analyze an ant example 

XI. Fuzzy Logic
   A. Define fuzzy logic basics 
   B. Describe how to use fuzzy logic in games
   C. Examine a fuzzy logic example 

XII. Rule-based AI
   A. Describe rule-based basics 
   B. Examine a rule-based example 

XIII. Basic Probability 
   A. Define probability 
   B. Describe how to use probability in games

XIV. Bayesian Techniques 
   A. Define a Bayesian Network 
   B. Examine various examples 

XV. Neural Networks
   A. Analyze neural network techniques 
   B. Dissect a neural network 
   C. Train a neural network 

XVI. Genetic Algorithms
   A. Examine the evolutionary process 
   B. Examine evolving plant life 
   C. Describe how to use genetics in game development 

Methods of Evaluation of Competencies:

Evaluation of student mastery of course competencies will be accomplished using the following methods:

4 Examinations		90 % of grade
1 Class Paper		10 % of grade
     	               100 %
Grade Criteria:
A =  	90% - 100%
B = 	80% - 89%	
C = 	70% - 79%	
D = 	60% - 69%	
F = 	Below 60%	  

Caveats: NONE

Disabilities:

If you are a student with a disability, and if you will be requesting accommodations, it is your responsibility to contact Access Services. Access Services will recommend any appropriate accommodations to your professor and his/her director. The professor and director will identify for you which accommodations will be arranged.

JCCC provides a range of services to allow persons with disabilities to participate in educational programs and activities. If you desire support services, contact the office of Access Services for Students With Disabilities (913) 469-8500, ext. 3521 or TDD (913) 469-3885. The Access Services office is located in the Success Center on the second floor of the Student Center.