4005-750-01: Introduction to Artificial Intelligence (RIT CS, 20083)

Department of Computer Science
Introduction to Artificial Intelligence (Spring 2009)

4005-750-01 (Calendar Description)
Home --- Notes & Readings --- Assignments --- Resources --- Syllabus


Lectures: 10-11:50am Tuesdays and Thursdays, Room 70-3445 (Golisano College)
Instructor: Richard Zanibbi
Office hours: 2-3:50pm Tuesdays and Thursdays, Room 70-3551 (Golisano College)

Syllabus


Calendar Description

An introduction to the field of artificial intelligence, including both theory and applications. A programming language that allows effective symbolic manipulation is used to demonstrate the capabilities and limitations of the material presented in class. Topics include search strategies and their implementation, logic, networks, frames and scripts, production rules, symbolic manipulation and list processing, problem-solving methods, expert systems, natural language understanding, and selections from vision, robotics, planning and learning. Programming assignments are an integral part of the course. Class hours: 4, Credit: 4

Prerequisites

Programming Language Concepts (4003-709) or equivalent.

In particular, experience with functional programming in Lisp or Scheme is helpful. The course will also involve some PROLOG programming, but no prior knowlege of PROLOG is assumed.

Course Outcomes

At the end of this course, students will be able to:

Course Text and Other Sources

Course Web Page: http://www.cs.rit.edu/~rlaz/ai20083/
Required Text: Russell, Stuart, and Norvig, Peter. Artificial Intelligence: A Modern Approach, Second Edition, Prentice-Hall, 2003. [ Text Web Page ]

A list of additional sources is provided within the course web pages at: http://www.cs.rit.edu/~rlaz/ai20083/Resources.html. Sources provided include materials on writing research papers for Computer Science, which students are strongly encouraged to consult.


Grading Scheme

Students will be evaluated as in the following.

30% Assignments (Best 3 of 4)
25% Research Paper
15% Midterm Examination (1 hr)
30% Final Examination (2 hrs)

Assignments have written and programming components; the written portions are completed individually, and the programming portions are completed in teams of two. Provided all four assignments are submitted, the lowest assignment will be dropped. Research papers are completed individually. The paper is broken up into an outline/proposal (5%), rough draft (5%), and final version and presentation (15%).

Tentative Schedule

Please note that this schedule may change over the course of the quarter.

Week Topics Notes
1 Overview: History and Implications, Intelligent Agents, Lisp Review
2 Uninformed and Informed Search (Lisp exercises)
3 Constraint Satisfaction, Game Search (minimax, alpha-beta pruning) Thurs: Assignment 1 due
4 Propositional and First Order Logic, Logic Programming (PROLOG) (PROLOG exercises)
Thurs: Paper Proposal due
5 Logic (continued) and Planning (including partial-order planning) Thurs: Assignment 2 due
6 Decision Tree Induction Thurs: Midterm (1 hr)
7 Probability Review, Bayesian Networks Thurs: Assignment 3 due
8 Statistical Learning (incl. neural nets), Hidden Markov Models Thurs: Paper draft due
9 Sequential Decision Problems (Markov Chains) Thurs: Assignment 4 due
10 Student Research Paper Presentations and Review Thurs: Final paper due


Disability Services Office

If you have special needs for seating, tests, note-taking services or other matters due to a disability, please contact the Disability Services Office (www.rit.edu/dso). If you receive approval for accomodation within the course, please contact me as soon as possible so that we can make the necessary arrangements.

Late Policy and Examination Rescheduling

Assignments and research paper deliverables may be submitted up to one day late, for a penalty of 10%. Later assignments will not be accepted.

Exams will only be rescheduled in the case of difficult situations for which there is formal documentation (e.g. a doctor's note). See the instructor as soon as possible if you encounter scheduling or other issues regarding the exams.

Academic Dishonesty

Students may discuss assignments and projects with others, but submitted work (papers and code) must be created independently by each student/group, and not copied from another student/group, or other source.