CSE 327 AI Theory and Practice, Spring 2009

Professor Jeff Heflin

MWF 10:10am-11:00am, Maginnes 111

Course News

Check here for updates regarding the course.

Course Description

This course will provide a general introduction to Artificial Intelligence(AI). We will discuss what AI is, survey some of the major results in the field, and look at a few promising directions. In particular, we will seek answers to questions such as:

Our examination of these problems will focus on various data structures and algorithms that have been proposed as solutions.

For details about course content, grading, and assignments, see the class syllabus.


Russell, Stuart and Peter Norvig, Artificial Intelligence: A Modern Approach (second edition). Prentice-Hall, New Jersey, 2003. ISBN 0-13-790395-2

Office Hours

Mon.11:10am-12pmPL 330Prof. Jeff Heflin
Tue.4-5:30pmPL 6th FloorYingjie Li (TA)
Thr.2-4pmPL 330Prof. Jeff Heflin

Homework Assignments

Each of the homeworks will be made available here after they are handed out in class. The online versions of the homework are in PDF format.


Your readings will be listed below as they are assigned. Unless otherwise specified, all readings are from our textbook, Artificial Intelligence: A Modern Approach.
Read Ch. 1 (pp. 1-29)1/14
Read Sect. 2.1-2.3 (pp. 32-44)1/16
Read Sect. 2.4-2.5 (pp. 44-54)1/19
Read Sect. 3.1-3.3 (pp. 59-73)1/21
Read Sect. 3.4-3.5 (pp. 73-83)1/23
Read Sect. 4.1 (pp. 94-105)1/26
Read Sect. 4.2 (pp. 105-110)1/28
Read Sect. 6.1-6.2 (pp. 161-167)1/30
Read Sect. 6.4, 6.6-6.8 (pp. 171-175, 180-186)2/2
Read Sect. 7.1-7.3 (pp. 194-204)2/4
Read Sect. 7.4 (pp. 204-211)2/6
Read Sect. 7.7 (pp. 225-227), 8.1 (pp. 240-244)2/9
Read Sect. 8.2 (pp. 245-253)2/13
Read Sect. 8.3-8.5 (pp. 253-266)2/16
Read An Introduction to Prolog Programming by Ulle Endriss, Chapter 1 (pp. 1-12)2/18
Read Sect. 9.1-9.2 (pp. 272-280)2/20
Read Sect. 9.4 (pp. 287-298)2/23
Read Sect. 10.1-10.2, 10.5-10.6 (pp. 320-328, 344-354)2/27
Read Sect. 11.1-11.2 (pp. 375-387)3/11
Read Sect. 11.3 (pp. 387-395)3/15
Read Sect. 12.3, 12.6 (pp. 430-432, 445-449))3/20
Read Sect. 13.1-13.2 (pp. 462-471)3/23
Read Sect. 13.3-13.8 (pp. 471-486)3/25
Read Sect. 14.1-14.2 (pp. 492-499)3/30
Read Sect. 14.4 (pp. 504-510)4/1
Read Sect. 15.1-15.2, 15.6 (pp. 537-549,568-577)4/3
Read Sect. 16.1-16.3 (pp. 584-593)4/6
Read Sect. 18.1-18.2 (pp. 649-653)4/8
Read Sect. 19.1 (pp. 678-682 only)4/10
Read Sect. 19.1 (pp. 683-686 only)4/13
Read Sect. 20.5 (pp. 736-743 only)4/15
Read Sect. 20.5 (pp. 744-748 only)4/17
Read Sect. 22.1 - 22.2 (pp. 790-798)4/20
Read Sect. 24.1 - 24.3 (pp. 863-873)4/22
Skim Ch. 26 (pp. 947-964)4/24

Additional Class Materials

Contains information on course content, grading, assignments, and office hours
Supplemental Slides
This directory contains the slides that I use in class. Note, these slides only cover part of the lecture, and should not be used as a substitute for it.
An Introduction to Prolog Programming by Ulle Endriss
Gives a light weight introduction to Prolog syntax, queries, and style.
SWI-Prolog is free software. If you are using a personal machine, you can download SWI-Prolog from the web page listed below. If you are in a Lehigh computer lab, you should install it via the Lehigh Software page. A link to the online reference manual is also provided.
Midterm Study Guide
This document briefly discusses the format of the test, and provides a partial list of topics you need to know for the test. It also explicitly lists topics you do not need to know.
Sample Prolog programs
These are the examples that were shown in class
Final Study Guide
This document briefly discusses the format of the final, and provides a partial list of topics you need to know for the test. It also explicitly lists topics you do not need to know.