CS 227
Reasoning Methods in Artificial Intelligence
Handout #1: Course Information

Meeting Times and Locations

Lecture

Tue/Thu 9:30 - 10:45am. Gates B12

Teaching Staff

Instructor

Neil Yorke-Smith
SRI International
Office hours: by arrangement before class
Email: nysmith at stanford.edu

Teaching Assistant

Paul Baumstarck
Office: Gates 108  
Office hours: Tuesday 11-12:30, and Friday 14-16
E-mail: pbaumstarck at stanford.edu

Staff mailing address: cs227-help at lists.stanford.edu.

Communication with the teaching staff

We encourage students to come to office hours. We also strongly encourage the use of the newsgroup (su.class.cs227) for discussing questions with other students and forming groups for the assignments. Major changes (e.g., bugs in an assignment) will also be posted to the class mailing list.

In addition, questions about the class, including questions about assignments, can also be addressed to the course staff list, cs227-help at lists.stanford.edu. This will ensure a speedy response. Please do not mail questions to the course staff. By having questions available to all of the staff, you will get answers much more quickly. Of course, more personal questions can still be sent directly to instructor or the TA.

Do not email assignments to the cs227-help address. Follow the submission instructions.

Course Information

Description

CS227 is a second class in Artificial Intelligence (AI), covering methods for (largely) non-probabilistic reasoning in propositional satisfiability, constraint satisfaction, temporal reasoning, and planning. It is complementary to CS228: Probabilistic Models in Artificial Intelligence. Assessment is by group programming projects.

The course is appropriate for graduate students (both Masters and PhD students), and for advanced undergraduates with a special interest in AI. Students are assumed to have taken basic courses in AI, algorithms, data structures, and programming, or to have equivalent background in these areas. CS221 is an ideal but not necessary prerequisite. Those considering the class for credit but unsure of their background, and those wishing to audit it, are invited to contact the instructor.

The topics of the course are:

Additional topics will be covered as time permits: preferences, complexity results. Execution: plan execution and recognition, model-based diagnosis and control.

Course Materials

There are no required texts. Optional textbooks are given in the course reading list.

Course handouts and other materials may be downloaded from cs227.stanford.edu/handouts.html

Online Resources

Coursework

The course will be assessed by four programming assignments. Each assignment will involve implementing an algorithm, running a set of experiments to evaluate the algorithm, and writing up a report on the experiments. We encourage assignments to be done in groups of 2-3 students, although you make work alone. Each group may choose any programming language for implementation purposes, though bear in mind that efficiency is the central point of many of the algorithms we are going to study.

Assignments will be graded solely on what is contained in the report. The methodological approach, description and analysis of the algorithms, and the insights drawn in the conclusion will be the major criteria for credit. Code will be submitted with the report, and will be examined and executed, but not graded. While competent implementation will be necessary in order to produce the report, the focus is on understanding and applying the methods rather than coding prowess.

The final class will consist of short group presentations reporting on the most interesting discovery or experience over the course of the assignments.

Submission

Assignment submissions should be sent to cs227-submit at lists.stanford.edu.

Submit your report to this address, and give information of where the accomanying code may be obtained, if not submitted to this address. Do not use this email address for any other purpose, and do not submit reports to the cs227-help address or to any of the course staff individually.

Grading

Late assignments: Recognizing that students may face unusual circumstances and require some flexibility in the course of the quarter, each student will have a total of seven free late (calendar) days to use as s/he sees fit. Once these late days are exhausted, any assignment turned in late will be penalized one third of a grade per late day (i.e., an A becomes an A-, an A- becomes a B+, etc.). However, no assignment will be accepted more than seven days after its due date. Each 24 hours or part thereof that an assignment is late uses up one full late day. For assignments performed as a group, late days apply individually to all of the group members.

The final assignment will not be accepted more than TBA days after the final class, in order to leave time for grading before the end of the quarter.

Course grades will be based 95% on assignments (weighted 20%, 30%, 20%, 30% respectively), and 5% on the group presentations.

Extra credit may be given to some reports that go substantially above and beyond the requirements. In addition, we will use class participation as a factor in determining the final grade in borderline cases, so we encourage you to attend class and participate actively. Note that extra credit is always added to the grade after the grading curve is set.