Artificial Intelligence: Syllabus

Prerequisites: Fundamental Algorithms.

Requirements: Biweekly problem sets (50%), Final exam (50%).


There are many cognitive tasks that people can do easily and almost unconsciously but that have proven extremely difficult to program on a computer. Artificial intelligence is the problem of developing computer systems that can carry out these tasks. This course is the first half of a two semester sequence surveying AI problems and techniques. This semester, we will cover problem solving, automated reasoning, learning, and planning. Advanced AI next fall will cover natural language processing, vision, robotics, and knowledge representation.

There have been two major paradigms for artificial intelligence. Traditional AI has followed the knowledge-based approach, based around handcrafting large symbolic representations of knowledge of the relevant domain. Many of the recent successes of AI, however, have come from the statistical approach, in which simple patterns are automatically extracted from data corpora, and applied to the problem. We will study how both of these paradigms apply to the various AI tasks, the relative strengths and weaknesses of each approach, and possible methods for combining the approaches together.

Course topics:

Submitting homework:

Programming assignments must be submitted by email. The format should be the ASCII source file for the code. Be sure to include your name as a comment at the beginning of the code.

Problem sets may be submitted either by email or in hard-copy. Acceptable formats for email are ASCII text, HTML, or Postscript. NO OTHER FORMATS WILL BE ACCEPTED.

Homeworks must be submitted at or before the beginning of class on the day due. Assignments will be accepted up to a week late, with a penalty of one point out of ten. No assignments will be accepted more than a week late.

Back to course home page