CPSC 390 - Artificial Intelligence

Fall 2003


Instructor: Erik Linstead (linst100 at chapman.edu)
Time: MW 7:00-8:15 pm
Room: Beckman 203

Preliminary Information (subject to change):

I am pleased to announce that for the Fall 2003 semester I will be teaching CPSC 390, Artificial
Intelligence (AI).  Since registration for Fall has started, and since you are no doubt trying to plan
what courses to take, I thought it would be a good idea to put some basic course information on
the web to give you a better idea of what the course will be about.  As we get closer to Fall this
page will be replaced with a (hopefully) nicer one, but for the time being I think it's important
just to let you know what you'll be getting yourself into if you choose to take the course.

CPSC 390 is a beginning AI course designed to introduce students to the basic tools and techniques
of the AI field.  As such, the course is designed to provide a wide coverage of topics in the AI domain,
as opposed to covering any one topic in great detail.  For this semester, some of the topics covered
include search techniques (blind and heuristic), contraint satisfaction, constraint propagation, logic
based systems, planning, game playing, and making decisions under uncertainty.  Time permitting,
we may also cover more advanced (but fun) topics such as knowledge representation, expert systems,
and (the one everybody loves) robotics.  A feature (bug?) of the AI field is that it integrates topics from
a broad spectrum of disciplines, so if you want to take a course with ties to computer science, mathematics,
electrical engineering, mechanical engineering, and philosophy, then this is the course for you.

So now that you know a little more about the course, you're probably wondering who should take it.
The "official" prereqs for the course are CPSC 350 (Data Structures) and MATH 250 (Discrete Math
I).  Data Structures is essential, since we will be writing some non-trivial programs that will require you
to be comfortable building and manipulating your own objects.  MATH 250, while helpful, is not
necessarily needed as I will review much of the required material in class.  So if you haven't taken
discrete math, but you want to take this course, I'm pretty sure you can still do well.  But the prereqs aside,
AI is appropriate for ANY student that wants to learn the basics of the discipline (and have fun doing it),
and especially those students interested in game programming or grad school.  My personal experience with
AI is that it is one of the most interesting (and misunderstood) areas of CS, and I can promise you if you work
hard you'll learn some tricks that will pay dividends for many semesters to come.

The coursework itself will consist of short problem sets, programming assignments, and the usual midterm and
final.  This is an upper-division CS course, so you can expect to be challenged, but you'll learn a lot, and hopefully
have an enjoyable experience at the same time.

If you have any comments, questions, or concerns feel free to email me at the address above.  Also, if you want to
take the course, please register for it ASAP.  CPSC 390 hasn't been offered since Spring 1997, and there is no
guarantee it will be offered again anytime soon, so it would be a shame if the course was cancelled because of lack
of enrollment.

I look forward to seeing you in August for what I hope will be a very cool class!

Erik