CS 440 Fall 2012: Introduction to Artificial Intelligence

Artificial Intelligence is the subfield of computer science dedicated to constructing programs for situations that cannot be exactly specified in advance. AI is needed for programs that act in unforeseen circumstances, exhibit complex behavior, or must take into account empirical regularities that programmers do not know about. Because we cannot specify the behavior of an AI program, we must instead design it to make good decisions on its own.

This course provides a practical introduction to concepts and programming techniques developed in AI. We look at problems in AI, such as understanding the world (perception), acquiring new knowledge about the world (learning), and applying knowledge in new situations (problem solving). Mastering these techniques involves knowing when a technique applies, what algorithms are involved, what know-how is needed to get the algorithms working with specific real-world data, and how the technique fits into a larger AI system.

Meeting times

Required Work


The textbooks for the course are:

There are a range of ways to have inexpensive access to the books, including a subscription to O'Reilly's Safari digital library.

In addition, there will be a range of supplementary material, which will be linked into the syllabus as needed.