CMPU-365: Introduction to Artificial Intelligence

CMPU-365: Introduction to Artificial Intelligence

Spring 2013

Lectures Mondays, 3:10 - 6:10 p.m., in OLB 205
Instructor Prof. Luke Hunsberger
Course Web Page http://www.cs.vassar.edu/~cs365


Contents

Description

This course will introduce fundamental concepts and tools from the field of artificial intelligence including search, constraint satisfaction, knowledge representation, reasoning and game playing. Additional topics will be drawn from planning, temporal reasoning and neural networks, as time permits. Some programming assignments will require implementing concepts and tools from scratch; others will involve using existing planning and reasoning systems.

The following topics will be covered:

  • Programming in Lisp
  • Search Algorithms
  • Constraint Satisfaction
  • Game Playing
  • First-order Logic and Automated Inference
  • Planning Formalisms and Algorithms*
  • Temporal Networks*
  • Neural Networks*
The topics with an asterisk will be chosen according to student interest and time remaining in the semester.

Books

The following required texts are available in the bookstore and on-line (e.g., at amazon.com).

Required Text 1: Artificial Intelligence: A Modern Approach , by Russell and Norvig (3rd edition!)
Students intending to continue studying artificial intelligence are strongly encouraged to purchase the 3rd edition of this book; others may choose to purchase the 2nd edition. I will try to point out the differences as much as possible during the semester.
PDF files of Stuart Russell's lecture slides.
Required Text 2: ANSI Common Lisp, by Paul Graham

Grading

There will be three types of graded material in this course: programming assignments, written exams, and a final project.

Programming
Assignments
55% There will be 6-8 programming assignments assigned at regular intervals during the semester. (Some assignments may count less than others.) Each assignment must be submitted electronically, and printouts of assignment files must be turned in, too. Printouts of assignment files may be given to me in class or may be put into the box outside my office door. The code you turn in must run on the version of Lisp installed on the department machines.
Late assignments will be penalized 15% per day late. Assignments will not be accepted more than two days late.
Exams 30% There will be one midterm exam, shortly before spring break, worth 15%.
There will be a regularly scheduled final exam that will primarily emphasize material covered after spring break, also worth 15%.
The midterm and final exams will both be open-book and open-notes.
Final Project 25% The final project will be an implementation based on algorithms or ideas covered in class, or an investigation into algorithms or ideas that we may have mentioned in class but did not address in depth. In either case, there must be a programming part and a written part describing what you have done. To ensure that you get off to a good start, 15% of the grade for your final project will be based on your initial project proposal. An additional 15% of the project grade will be based on a short, in-class presentation of your project. The in-class presentations will be given prior to the due date for the project so that you can receive feedback on your approach, progress, etc. The final project will be due at 5 p.m. on the last day of the study period.

Useful Links

Getting started with Emacs and Lisp!
ACL Documentation
Emacs reference card
Sample .emacs file.
Human-Level AI's Killer Application, AI Magazine, Summer 2001, John E. Laird and Michael van Lent.
Alan Turing's 1950 Paper on Computing Machinery and Intelligence
A Conjecture for a Better Turing Test.

Calendar

Mondays
Jan. 28
Introduction & Course Overview; preview of Emacs and Lisp; differences between Lisp and Scheme/Racket
Read Chapters 1 & 2 of Russell & Norvig; Get started with Emacs and Lisp; introduce yourself to the index of the Graham text; and read through Chapter 3 of Basic Lisp Techniques by David Cooper, Jr. LispWorld handout.
More details on EMACS and LISP.
Asmt. 1 SOLUTIONS!!
Feb. 4
Uninformed search algorithms (sections 3.1-3.4): breadth-first, depth-first, uniform-cost, depth-limited, iterative-deepening. Slides seen in class.
Vacuum World, Missionaries and Cannibals, Tile Puzzle domains
Lisp: structures, keyword arguments, function-values vs. ordinary-values.
Asmt. 2 SOLUTIONS!!
Feb. 11
Informed search algorithms (Section 3.5 in 3rd edition; Chapter 4 in second edition): greedy, best-first, A*, IDA*. Slides seen in class.
Asmt. 3 SOLUTIONS!!
Feb. 18
GUEST LECTURE: Prof. Tom Ellman.
Constraint satisfaction problems (Chapter 6 in 3rd edition; Chapter 5 in 2nd edition). Slides seen in class.
Feb. 25
Continuing with constraint satisfaction problems. Simple Temporal Networks (STNs).
Tutorial on STNs
Asmt. 4 SOLUTIONS!!
March 4
Adversarial two-player games; minimax search with alpha-beta pruning
Paper discussing history of John von Neumann_s Minimax Theorem
 
SPRING BREAK!
 
March 25
Continuing with adversarial two-player games and minimax search with alpha-beta pruning. An implementation of a chess-playing program.
Recalling propositional and first-order logic (Chapters 7 and beyond); and prolog.
Asmt. 5 SOLUTIONS!!
April 1
MIDTERM EXAM!!
To be held in Asprey Lab!!
(Allows access to Kiosk account)
April 8
Projects!
Sample Otter Input Files, A Lisp implementation of neural networks.
Project Proposal: Due April 15 @ 3:10 p.m.
April 15
Continuing Resolution in First-Order Logic & Otter; and Neural Networks
(See Russell_s slides on Chapters 7, 8 and 9.)
Neural Network handout, Old Otter Asmt., Neural Network Examples (OR, XOR).
April 22
Examples of resolution-refutation proofs in First-Order Logic (see Chapters 8 and 9); Linear resolution strategy. Relevant slides Alternate Link to Relevant Slides
More precise definition of Linear Resolution Strategy.
Planning!
Chapter 11 slides; Recent Advances in AI Planning article.