CSE 327 AI Theory and Practice, Spring 2014
Professor Jeff Heflin
TTh 9:20-10:35am, Packard 208
- 3/22/14 - I have decided to extend the due date for Homework #4 to Thursday, 3/27.
- 3/18/14 - I forgot to give you hardcopies of Homework #4 (due 3/25) in class today. You can find a PDF here.
- 02/25/14 - I have just posted the solutions to HW #1 and HW #2.
- 02/25/14 - I have posted a study guide for the midterm.
- 02/07/14 - In Problem #4 of Homework #2, board1 in the assignment erroneously has a situation where it would be O's turn to play. Please fix the problem by placing an O in the bottom left corner of board1 as shown by the highlighted area in this revision. Note, this is different from the fix I announced in Tuesday's class; this fix will save you time by allowing you to create a tree that is 25% of the size of the tree that will result if you treat O as the maximizing player.
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.
- How do you represent and reason with general-purpose knowledge?
- How can a robot or artificial agent formulate a plan to achieve a task?
- How can an agent make good decisions given uncertainty about its environment?
- How can an agent learn in order to improve its behavior or cope with unanticipated situations?
For details about course content, grading, and assignments, see the class syllabus.
Mon. 2:30-4pm, Thr. 1:30-3pm and by appointment in Packard Lab 330
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-2.3 (pp. 1-46)||1/16|
|Read Sect. 2.4-2.5 (pp. 46-59)||1/21|
|Read Sect. 3.1-3.4 (pp. 64-91)||1/23|
|Read Sect. 3.5-3.7 (pp. 92-109)||1/28|
|Read Sect. 5.1-5.2 (pp. 161-167)||1/30|
|Read Sect. 5.4, 5.7-5.9 (pp. 171-176,180-186)||2/4|
|Read Sect. 7.1-7.4 (pp. 234-249)||2/6|
|Read Sect. 7.5.3-7.5.4, 7.7-7.8 (pp. 256-259, 265-275)||2/11|
|Read Sect. 8.1-8.2 (pp. 285-300)||2/13|
|Read Sect. 8.3-8.5 (pp. 300-313)||2/20|
|Read An Introduction to Prolog Programming by Ulle Endriss, Chapter 1 (pp. 1-12) and Sect. 6.1 (pp. 49-51)|
Read Sect. 9.1-9.2 (pp. 322-329)
|Read Sect. 9.4 (pp. 337-345)||3/11|
|Read Sect. 12.1-12.2, 12.5, 12.7-12.8 (pp. 437-445, 453-458, 462-468)||3/13|
|Read Sect. 10.1-10.2.1 (pp. 366-374)||3/18|
|Read Sect. 10.2.2-10.2.3 (pp. 374-379)||3/20|
|Read Sect. 10.3 (pp. 379-387)||3/25|
|Read Sect. 13.1-13.2 (pp. 480-490)||3/27|
|Read Sect. 13.3-13.7 (pp. 490-503)||4/1|
|Read Sect. 14.1-14.2 (pp. 510-518)||4/3|
|Read Sect. 14.4 (pp. 522-530)||4/8|
|Read Sect. 15.1-15.3, 16.1-16.3 (pp. 566-583,610-621)||4/10|
|Read Sect. 18.1-18.3 (pp. 693-707)||4/15|
|Read Sect. 18.4, 18.7.1-18.7.2 (pp. 708-713,727-731)||4/17|
Additional Class Materials
- Contains information on course content, grading, assignments, and office
- 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.
- Search Strategy Code
- A ZIP file containing Java classes that implement three different best-first search strategies. The code is designed to be extended with definitions of specific search problems, so that it can then be used to solve those problems. This code should be used when performing the Extra Credit exercise of HW #2. This code is intended only for use in conjunction with CSE 327 at Lehigh, and is not authorized for any other purpose.
- An Introduction to Prolog Programming by Ulle Endriss
- Gives a light weight introduction to Prolog syntax, queries, and style.
- 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.
- 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.
- Sample Prolog programs
- These are the examples that were shown in class