| 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:
- Deconstruct basic AI techniques for games.
- Compare various techniques for movement and decision making.
- Describe and compare techniques for implementing learning behavior.
- Compare and contrast artificial life and artificial intelligence.
- 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.