Instructor: Kurt Eiselt
Office: College of Computing 164B
Electronic Mail: eiselt@cc.gatech.edu
URL: http://www.cc.gatech.edu/aimosaic/faculty/eiselt.html
Phone: 894-8386
Office Hours: ???
Teaching assistant: Todd Griffith
Office: College of Computing 117A
Electronic Mail: griffith@cc.gatech.edu
Phone: 894-5612
Office Hours: 1:30-2:30 TTh
Newsgroup: git.cc.class.3361
Course URL: http://www.cc.gatech.edu/computing/classes/cs3361_96_fall/syllabus.html
Course Description: This will be a whirlwind tour of a number of topics in artificial intelligence, with a particular interest in fundamental theoretical issues. Topics will include, but are not necessarily limited to, knowledge representation, search, reasoning, planning, understanding, and learning.
Besides exposing the student to the theoretical aspects of artificial intelligence, this course also gives the student an chance to implement working AI programs from scratch. This helps in gaining better understanding of at least some of the theoretical issues, and gives the student an appreciation of the difficulties in turning what can sometimes be vague theories of artificial intelligence into working AI systems.
Prerequisites: The immediate prerequisite for this course is CS 2360 -- Knowledge Representation and Processing. We'll quickly review some of the material from 2360 (fundamental search and knowledge representation ideas), but we won't be teaching you how to program in LISP in CS 3361, nor will the teaching assistant be debugging your programs. If you haven't taken 2360, you should drop 3361 and take 2360 first.
Required Texts: Artificial Intelligence: A Modern Approach by Stuart Russell and Peter Norvig (Prentice Hall, 1995).
Recommended Texts: Your LISP books from CS 2360. Common LISP: The Language (second edition) by Guy Steele may be especially useful. The contents of this book are available via the World Wide Web. Also, the book ANSI Common LISP by Paul Graham is a good substitute for the book by Steele.
Newsgroup: We will make use of the local newsgroup git.cc.class.3361 for broadcasting announcements, homework assignments, revisions, and other information pertinent to the course. Read it often. You may also use the newsgroup to make comments and suggestions, or ask questions of your classmates, TA, instructor, or anyone else who may be reading the newsgroup. Do NOT expect to find the class notes posted here or on some Web page, however. There would be just way too many pictures for me to generate, and I haven't quite mastered the art of the digital picture. (If you took 2360 with me, you can testify that I haven't quite mastered the art of the analog picture for that matter. That map of the United States comes to mind....)
Course Requirements and Grading: There will be one midterm exam, worth 20% of the final grade, and a final exam, worth 40% of the grade. There will also be four graded programming assignments, one approximately every two weeks, each worth 10% of the grade. Final grades will be assigned on a relative scale. In addition, I reserve the right to assign additional short assignments which will be graded in the following way: if you turn the assignment in, your final grade remains intact. If you fail to turn the assignment in, your final percentage point total will be docked two percentage points.
Programming Assignments: As noted above, we assume that you have significant familiarity with LISP. All programming assignments are to be done in the Common LISP dialect. When it's time to turn in your programming assignment, you'll need to send a copy of the source code to the TA by electronic mail. This source code should be well documented, including a design document and instructions on how to run your program. Documentation standards will be given out with the first programming assignment. You must also turn in a printed copy of the same source code with documentation.
Late Assignments: Assignments are due by the day and time specified in the assignment description. Late assignments will be accepted only in cases of illness or other personal emergency, and only when appropriate supporting documentation (e.g., physician's explanation, coroner's report, etc.) can be provided.
Computing: All programming assignments are to be done in Common LISP. Macintosh Common LISP is available on many of Georgia Tech's Macintoshes; Common LISP is also available on acme. The College of Computing's workstations have Harlequin LISPWorks, which has an X-Windows interface. Macintosh Common LISP is available to Tech students at no cost (talk to Kurt if you're interested), and Harlequin's FreeLISP for IBM-compatible PCs can be downloaded free of charge from Harlequin's Web site. In addition, there are a number of freeware and shareware versions of LISP available via the Internet, but many of these versions do not adhere completely to the Common LISP standard. So beware---any problems of incompatibility between your version of LISP and our version of LISP are in fact your problems, not ours, and your programming assignments will be graded accordingly.
Academic Misconduct: Because you are being graded relative to other students in this course and not on an arbitrary, predetermined scale, any student's attempt to increase his or her grade through dishonest means not only misrepresents that student's ability, but will unfairly decrease the grades of other honest students. The homework assignments in this course are not intended to be collaborative exercises, but on the other hand we don't want to discourage discussion between students about ideas pertaining to artificial intelligence. So here's the compromise: you may discuss the homework assignments with other students, but you may not share homework assignments or exchange code in any way. Do not work on these homework assignments together, do not use someone else's homework as "inspiration" or as a "learning aid", and do not give your homework to someone else to try to help them along. Of course, there is to be no collaboration whatsoever during exams. If you haven't already done so, you should take the time to become familiar with Georgia Tech's definition of academic misconduct and the policies and procedures pertaining to academic misconduct. This information can be found in the 1996-97 general catalog on pages 364-371.
Very Tentative (as in everything is subject to change) Course Schedule:
Last revised: October 10, 1996